Embedded Motion Control 2017 Group 1
Group Members
| Name: | Student id: |
| Karel van de Plassche | 0653197 |
| Joey Hendriks | 0773023 |
| Ioannis-Dionysios Bratis | 0978560 |
| Jad Haj Mustafa | 0979428 |
| Jip Reinders | 0853301 |
| Juliana Langen | 0617062 |
| Yanick Douven | Tutor |
Initial Design
Link to file: PDF
Requirements
Functions
| Function | Description | |
|---|---|---|
| Low-level | initialize | Initialize actuators |
| readSensors | Read the odometer and laser data | |
| turnLeft | Turn 90° left | |
| turnRight | Turn 90° right | |
| turnAround | Turn 180° | |
| stopMovement | Stop omniwheels | |
| driveForward | Accelerate or decelerate | |
| driveBackward | Drive backward | |
| driveLeft | Move left | |
| driveRight | Move right | |
| ringBell | Ring the bell of the door. | |
| Mid-level | detectWall | Detect a wall (~30cm) |
| detectCorner | Detect a corner (crossing of two walls) | |
| detectDeadEnd | Detect a dead end | |
| detectFinish | Detect the finish line | |
| detectOpenSpace | Detect an open space | |
| detectOpenWorld | Detect if in the open world (like the maxe exit) | |
| detectTJunction | Detect a T-junction (where three corridors meet) | |
| detectCrossing | Detect a crossing (where the four corridors meet) | |
| shutDown | Terminate robot, if required | |
| checkDoor | Send a signal and wait x seconds | |
| chooseCorridor | Choose which corridor to take | |
| High-level | stayBetweenWalls | Stay in the center of two walls |
| createMap | Build map of surroundings | |
| trackPath | track the path through the map | |
| detectLoop | Detect a loop in the maze | |
| detectStack | Detect if stuck | |
| optimalDecision | Decide next move based on given algorithm |
