final presentation emc03cstwiki.wtb.tue.nl/images/emc03_finalpres.pdffinal presentation emc03 max...

18
Final presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966 Ricardo Shousha 0772504 Sjors Kamps 0793422 Stephan van Nispen 0764290 Luuk Zwaans 0743596 Sander Hermanussen 0774293 Bart van Dongen 0777752

Upload: others

Post on 23-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

Final presentation EMC03Max van Lith 0767328

Shengling Shi 0925030

Michel Lammers 0824359

Jasper Verhoeven 0780966

Ricardo Shousha 0772504

Sjors Kamps 0793422

Stephan van Nispen 0764290

Luuk Zwaans 0743596

Sander Hermanussen 0774293

Bart van Dongen 0777752

Page 2: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

2

Contents

• Behavior Design

• Decision Maker Composition Pattern

• Localization and Scanning Composition Pattern

• Mapping and Solving Composition Pattern

• Software Summary

• Stuff that we expected from EMC

• Stuff that we've learned from EMC

Page 3: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

3

Behavior Design: Context connections

Page 4: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

4

Behavior Design: Implementation

Page 5: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

5

Behavior design

Page 6: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

6

Decision Maker Composition Pattern

Page 7: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

7

Decision Maker Composition Pattern

● 'Brains' of the robot

● Fixed updating frequency (30 Hz)

● Event-depended choices

Page 8: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

8

Behavior Design

Page 9: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

9

Scan Composition Pattern

Page 10: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

10

Scan Composition Pattern

● Interprets LRF data

● Low level → High level

● Implementation of potential fields

● Cornering with virtual walls

● Configurator for 'drive.cpp'

● Dependent on 'Decision Maker'

Page 11: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

11

Localization

Page 12: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

12

Localization

● Combining sensor data

● Returns global coordinates

● X

● Y

● Theta

● Dynamic switching of 'R'-matrix

● Odometry possibly unreliable

● LRF might loose track of a wall

Page 13: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

13

Behavior Design

Page 14: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

14

Mapping and Solving Composition Pattern

Page 15: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

15

Mapping and Solving Composition Pattern

● Tremaux's maze solving algorithm

● Mapping a mix of:

● Higher level: Graph

● Lower level: Node position

Page 16: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

/ name of department PAGE 16

Summary

● Behavior design as backbone for entire project

● Behavior implementation as guideline for

classes/separate *.CPP-files

● Separate 'brain' controlling all other functionalities

● Implementation of :

● Tremaux's maze-solving algorithm

● Kalman filtering for global coordinates

● Potential field method for basic driving

Page 17: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

17

Stuff that we expected from EMC

• Frequency domain motion control in C++

• z-domain or s-domain

• State-space motion control in C++

• More low-level lectures, more elaborate examples

Page 18: Final presentation EMC03cstwiki.wtb.tue.nl/images/EMC03_finalpres.pdfFinal presentation EMC03 Max van Lith 0767328 Shengling Shi 0925030 Michel Lammers 0824359 Jasper Verhoeven 0780966

18

Stuff that we've learned

• Top down software design using diagrams• Composition patterns vs behavior diagrams

• Bottom up implementation• Easier to get working code from scratch

• Difficulties in integration of the entire software package

• Valuable information from 'dirty fixes', but should be re-written for the final product

• “Shoot first, ask questions later”-approach

• Coordinating team work with a group of 10 people• Decoupling problems, mostly trial and error