final presentation emc03cstwiki.wtb.tue.nl/images/emc03_finalpres.pdffinal presentation emc03 max...
TRANSCRIPT
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
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
3
Behavior Design: Context connections
4
Behavior Design: Implementation
5
Behavior design
6
Decision Maker Composition Pattern
7
Decision Maker Composition Pattern
● 'Brains' of the robot
● Fixed updating frequency (30 Hz)
● Event-depended choices
8
Behavior Design
9
Scan Composition Pattern
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'
11
Localization
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
13
Behavior Design
14
Mapping and Solving Composition Pattern
15
Mapping and Solving Composition Pattern
● Tremaux's maze solving algorithm
● Mapping a mix of:
● Higher level: Graph
● Lower level: Node position
/ 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
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
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