Embedded Motion Control 2013 Group 2

From Control Systems Technology Group
Jump to navigation Jump to search

Group Members

Name: Student id: Email:
Joep Alleleijn 0760626 j.h.h.m.alleleijn@student.tue.nl
E. Romero Sahagun 0827538 e.romero.sahagun@student.tue.nl
L. Galindez Olascoaga 0867854 l.i.galindez.olascoaga@student.tue.nl
Koen Meeusen 0657087 k.a.meeusen@student.tue.nl
Onur Albert Aslan 0865471 o.a.aslan@student.tue.nl

Planning

Week: Activities:
Sep 2 - Sep 8
Start ROS & C++ tutorials
Prepare software (Ubuntu, ROS, Gazebo, etc..)
Project planning & brainstorming
Sep 9 - Sep 15
Conclude software troubleshoot.
Start simulations in Gazebo for sensors and actuators identification.
Sep 16 - Sep 22
Code implementation for Corridor Competition, tests on simulation.
First real robot trial (Sep 19, 11.00 - 12:00 hrs)
Sep 23 - Sep 29
Last minute preparations for Corridor Competition
Second real robot trial (to schedule..)
Corridor Competition (Sep 25)
Sep 30 - Oct 6
...
Oct 7 - Oct 13
...
Oct 14 - Oct 20
...
Oct 21 - Oct 27
Maze Competition (Oct 23)

Progress

Week 1: September 2 - September 8

The other required software installed well except Qt. By a few persons Qt did not install. Therefore the choise has been made to use eclipse to type the c++ code. The disadvantage is that in eclipse you will have to rebuild your “cmake” and project files every time you change something in the script. This requires a restart of eclipse. Qt does not have this problem. An advantage of eclipse over Qt is that eclipse can handle vector programming easier then Qt.
Software installation
The goal of the first week was to install all necessary software. The installation of Ubuntu went well in general. In one case (on the 2013 TU/e laptop) Ubuntu would install correctly (it said) but when Ubuntu was started the desktop screen of Ubuntu was not loaded. Instead a command prompt like screen was displayed and reports where shown that there were missing files. The problem was eventually solved as follows:

In case the laptop has been fitted with a small ssd parallel to the main harddisk (like the 2013 TU/e laptop), Ubuntu will not install properly. Because the ssd-drive and the harddisk are placed parallel the laptop will start faster since the ssd provides a fast start-up. When Ubuntu starts it requires files which are not present on the ssd, which causes Ubuntu to fail. The solution is to disable the raid configuration of the laptop. This disables the ssd-drive and its advantages but Ubuntu will start now since all the required files are received from the harddisk. In some cases the Raid is called Intel RST (rapid storage technology). Switching of the raid system in BIOS might result in losing your windows and all your data on the disk. So it is not recommended ( I have never tried it too). Login in windows and open the Intel Rapid Storage Technology program and disable raid support in a less brutal way to avoid such risks.

Problem investigation
In order to solve the maze problem some important questions had to be answered, namely:

Week 2: September 9 - September 15

Questions for tutor session on September 10
Simulated laser data (Laura and Joep)
Output of the laser simulation with Rviz

Structure message from laser: frame_id: /pico/laser angle_min = -2.35738992691rad (approx 134 degrees) angle_max = 2.35738992691rad (approx 134 degrees) angle_increment = 0.00436553684995 time_incremetn

Header header # timestamp in the header is the acquisition time of

                        # the first ray in the scan.
                        #
                        # in frame frame_id, angles are measured around 
                        # the positive Z axis (counterclockwise, if Z is up)
                        # with zero angle being forward along the x axis
                        

float32 angle_min # start angle of the scan [rad] float32 angle_max # end angle of the scan [rad] float32 angle_increment # angular distance between measurements [rad]

float32 time_increment # time between measurements [seconds] - if your scanner

                        # is moving, this will be used in interpolating position
                        # of 3d points

float32 scan_time # time between scans [seconds]

float32 range_min # minimum range value [m] float32 range_max # maximum range value [m]

float32[] ranges # range data [m] (Note: values < range_min or > range_max should be discarded) float32[] intensities # intensity data [device-specific units]. If your

                        # device does not provide intensities, please leave
                        # the array empty.


Questions: sample frequency system/laser?

Week 3: September 16 - September 22

...

Week 4: September 23 - September 29

...

Week 5: September 30 - October 6

...

Week 6: October 7 - October 13

...

FAQ & Doubts