Embedded Motion Control 2014 Group 1: Difference between revisions
Line 82: | Line 82: | ||
The components with their respective functions and in and outputs are listed here + who wil work on it: | The components with their respective functions and in and outputs are listed here + who wil work on it: | ||
{| border="1" cellpadding="5" cellspacing="0" style="border-collapse:collapse;" | |||
| style="background: #D3D3D3;" | '''node''' | |||
| style="background: #D3D3D3;" | '''subscibes topic:''' | |||
| style="background: #D3D3D3;" | '''input''' | |||
| style="background: #D3D3D3;" | '''publishes on topic:''' | |||
| style="background: #D3D3D3;" | '''output''' | |||
| style="background: #D3D3D3;" | '''Description''' | |||
|- | |||
|Line detection - Sander | |||
| - | |||
|laser scan | |||
| | |||
|lines consisting out of start and end point (x_1,y_1),(x_2,y_2) etc. | |||
|transformation of raw data to lines by use of hough-transform | |||
|- | |||
|Position - Richard | |||
| | |||
|line coordinates | |||
| | |||
|(X_left, X_right, Y, theta) also named 'relative position' | |||
|Determine distance to wall to left, right and front wall. Also determines angle theta with respect to the corridor. | |||
|- | |||
|Arrow detection | |||
| | |||
|camera | |||
| | |||
|Arrow left of right | |||
|determine if pico sees an arrow and in what direction. | |||
|- | |||
|state recognition - Joep | |||
| | |||
|lines, vision, relative position | |||
| | |||
|For the corridor challenge the following states are defined: <br> | |||
1. initialization <br> | |||
2. exit left <br> | |||
3. exit right <br> | |||
4. straight driving <br> | |||
5. collision <br> | |||
6. exit (stop with the program). <br> | |||
|recognize situation and transform this to one of the states. | |||
|- | |||
|setpoint generator - Wouter | |||
| | |||
|state, relative position | |||
| | |||
|speed and position | |||
|Create setpoint for position of pico by use of state. (determine wanted position and speed). | |||
|- | |||
|Drive - Marc | |||
| | |||
|setpoint, relative position | |||
| | |||
|x,y,thata (Moving pico) | |||
|make sure that pico is positioned centered if this is needed and turn when needed. | |||
|} | |||
'''Line detection - Sander''' <br> | '''Line detection - Sander''' <br> |
Revision as of 14:33, 14 May 2014
Group Info
Name: | Student id: | Email: |
Groupmembers (email all) | ||
Sander Hoen | 0609581 | s.j.l.hoen@student.tue.nl |
Marc Meijs | 0761519 | m.j.meijs@student.tue.nl |
Wouter van Buul | 0675642 | w.b.v.buul@student.tue.nl |
Richard Treuren | 0714998 | h.a.treuren@student.tue.nl |
Joep van Putten | 0588616 | b.j.c.v.putten@student.tue.nl |
Tutor | ||
Sjoerd van den Dries | n/a | s.v.d.dries@tue.nl |
Meetings
Time Table
Fill in the time you spend on this course on Dropbox "Time survey 4k450.xlsx"
Planning
Week 1 (2014-04-25 - 2014-05-02)
- Installing Ubuntu 12.04
- Installing ROS
- Following tutorials on C++ and ROS.
- Setup SVN
- Plan a strategy for the corridor challenge
Week 2 (2014-05-03 - 2014-05-09)
- Finishing tutorials
- Interpret laser sensor
- Positioning of PICO
Week 3 (2014-05-10 - 2014-05-16)
- File:Presentatie week 3.pdf
- Starting on software components
- Writing dedicated corridor challenge software
Software architecture
We decided to use a architecture as seen as the following figure:
The components with their respective functions and in and outputs are listed here + who wil work on it:
node | subscibes topic: | input | publishes on topic: | output | Description |
Line detection - Sander | - | laser scan | lines consisting out of start and end point (x_1,y_1),(x_2,y_2) etc. | transformation of raw data to lines by use of hough-transform | |
Position - Richard | line coordinates | (X_left, X_right, Y, theta) also named 'relative position' | Determine distance to wall to left, right and front wall. Also determines angle theta with respect to the corridor. | ||
Arrow detection | camera | Arrow left of right | determine if pico sees an arrow and in what direction. | ||
state recognition - Joep | lines, vision, relative position | For the corridor challenge the following states are defined: 1. initialization |
recognize situation and transform this to one of the states. | ||
setpoint generator - Wouter | state, relative position | speed and position | Create setpoint for position of pico by use of state. (determine wanted position and speed). | ||
Drive - Marc | setpoint, relative position | x,y,thata (Moving pico) | make sure that pico is positioned centered if this is needed and turn when needed.
|
Line detection - Sander
inputs: --
function: transformation of raw data to lines by use of hough-transform
output: lines consisting out of start and end point (x_1,y_1),(x_2,y_2) etc.
Position - Richard
inputs: line coordinates
function: Determine distance to wall to left, right and front wall. Also determines angle theta with respect to the corridor.
output: (X_left, X_right, Y, theta) also named 'relative position'
Drive - Marc
inputs: setpoint, relative position
function: make sure that pico is positioned centered if this is needed and turn when needed.
outputs: (Moving pico)
state recognition - Joep
inputs: lines, vision, relative position
function: recognize situation and transform this to one of the states.
For the corridor challenge the following states are defined:
1. initialization
2. exit left
3. exit right
4. straight driving
5. collision
6. exit (stop with the program).
setpoint generator - Wouter
input: state, relative position
function: Create setpoint for position of pico by use of state. (determine wanted position and speed).
output: speed and position
PICO states corridor challenge
For the robot, the internal states can be visualized as in the following figure: