Embedded Motion Control 2013 Group 7: Difference between revisions
Line 72: | Line 72: | ||
====The Competition(25/09)==== | ====The Competition(25/09)==== | ||
Today is the day. We used our "safety" code: not the fastest, but we were nearly sure that PICO will find the exit. In fact, he managed to within 38 seconds. This gave us the 4th place. We still have a lot of work to do, but this is really encouraging. Here is a little view of the competition: https://vimeo.com/75465839 | Today is the day. We used our "safety" code: not the fastest, but we were nearly sure that PICO will find the exit. In fact, he managed to within 38 seconds. This gave us the 4th place. We still have a lot of work to do, but this is really encouraging. Here is a little view of the competition: https://vimeo.com/75465839 | ||
=== Maze solving === | |||
In order to solve the maze, two different approaches can be used: a complex one, involving real time map building, localization and path planning, and a simple one, involving wall following and easy decision making. | |||
== Planning & Work division== | == Planning & Work division== |
Revision as of 10:08, 30 September 2013
Group members
Jordy Senden, 0716539, j.p.f.senden@student.tue.nl, Mechanical Engineering, NL
Erik van Broekhoven, 0637413, e.c.v.broekhoven@student.tue.nl, Mechanical Engineering, NL
Luigi Corvino, 138588, l.corvino@student.tue.nl, Mechatronics Engineering, IT
Martin Huberland, 131492, m.huberland@student.tue.nl, Mechanical Engineering, BE
Marcello Di Giandomenico, 138554, m.digiandomenico@student.tue.nl, Mechatronics Engineering, IT
Tutor: Jos Elfring
Meeting #1 - 9/9/2013
Topic:
- Introducing with group members (Background, C-knowledge)
- Installed required software / solved software issues
- Refreshing C language knowledge
- Started to work on the tutorials
- Set-up a meeting with our tutor
- Set standard meeting days on monday and thursday afternoon
Meeting #2 - 12/9/2013
- Meeting with our tutor
- Installed gazebo software
- Solved remaining software issues
To do before next meeting: read the ROS concepts on the EMC website.
Meeting #3 - 16/9/2013
- Thinking about strategies for the corridor competition
Meeting #4 - 18/9/2013
- Concluded the work on the strategy
- Started implementing some basic functionalities
- RECAP 18/9/2013
Software architecture
Strategies
Corridor competition
For the corridor we decided to develop a simple code, possibly recyclable for the maze navigation. This deadline is a required step in order to really get our hands dirty and acquire some familiarity with C++ programming and ROS.
The robot has to stay approximately in the middle of the corridor, which has been divided into a safe zone and a dangerous zone. PICO compares two distances measured from the laser scans and based on their difference it will correct its orientation by rotating to the left or to the right. During this this rotation a small forward velocity is fed to the base in order to get a smooth movement. When he detects the exit, he starts the turning maneuver.
First test (19/9)
Experiments are performed on PICO, however the testing did not go as planned. PICO had to be resetted sometimes and did not respond to our commands as expected. The data shown in the terminal however, did show the proper values while running.
Second test (20/19)
We experienced again some connection issues. We were able to move the robot, and again some delay seemed to occur. The discharged batteries have put a premature end to our tests.
The Competition(25/09)
Today is the day. We used our "safety" code: not the fastest, but we were nearly sure that PICO will find the exit. In fact, he managed to within 38 seconds. This gave us the 4th place. We still have a lot of work to do, but this is really encouraging. Here is a little view of the competition: https://vimeo.com/75465839
Maze solving
In order to solve the maze, two different approaches can be used: a complex one, involving real time map building, localization and path planning, and a simple one, involving wall following and easy decision making.
Planning & Work division
- How to use the PICO robot (19/9)
- Work on the core functions that will allow the robot to fullfill the corridor task (23/9)
- wall_following
- exit_detection
- take_exit
- motion
- Choose modules, nodes, inputs and outputs to split the work (30/9)
Think about a initialization function that corrects PICO's orientation. Think about a function that restores the motion after an avoided collision from the safety measures.
Think about a strategy to solve the maze. Choose between the simplest approach, i.e. right wall following, and the most complex one, SLAM.