RobAIR2013-RICM4-Groupe2-Suivi

From air
Jump to navigation Jump to search

The Team

This team is composed of two 4th year Polytech Grenoble students, in System & Networks specialty.

The members of this team are Nicolas Afonso and Simon Planès.

You can contact us via our mailing list: link.

Project objectives

Our project is a part of the RobAIR2013 project.

The shared project

RobAIR is a shared project with two others schools:

  • ENSIMAG
  • Superior Pole Design of Villefontaine

The project consists of the development of a telepresence robot used for museum tours. It is a low cost robot (well below the maket price). The platform and software used for this robot are extensible and follow the OSOHOD2 main lines: open software, open hardware, open design, open data.

Our subproject objectives

We are responsible for the implementation of the ROS environnement in this project. We had to:

  • learn the ROS principles
  • learn the Python language
  • implement ROS nodes in the lego NXT in order to control it
  • implement ROS architecture for RobAir (node for the Lidar, the Kinect ... and the topics between these sensors)
  • make sufficent documentation for the next RobAir's students (solid fondations to start quickly without loosing time searching the same information as we did)

Technologies used

Material

For the full material list, follow this link (Bonus: photo gallery)

Progress of the project

We have nearly 3 months to complete this project, starting the 14th of January and presented to our professor the 11th of January. Because we have normal courses during this period, only 5 hours per week are free in our Schedule to do this project.

WEEK 1: from January 14th to January 20th

  • We discovered the global project,the different teams and objectives.
  • We underlined the difficult points
    • The communication between the differents teams (synchronisation between different schedules, places to work: IMAG or Polytech')
    • What our tutors expects really from us: the project seems to be huge, with a lot of expectations and work to do
  • Installation of ROS and first steps with tutorials.

WEEK 2: from January 21st to January 27th

  • We organized a meeting with the 3I4 and RICM4 students. During this meeting, we talked about what everyone understood of this project and what everyone's objectives are.
  • We met with the three students from Pole Design de Villefontaine and they told us what they have been working on for the last month. Their presentation slides are available here
  • A meeting minute is available here.
  • Meeting with Rémi Barraquand (thanks !) at INRIA to talk about ROS
    • introduction to the ROS principles and architecture
    • useful ROS commands and Tools
    • demonstation: how to make a package and a virtual robot (with Rviz tool), controlled by keyboard or autonomous depending on its driver mode, generating a map during its navigation

WEEK 3: from January 28th to February 3rd

  • Writing of the Software Requirements Specification (first draft)
  • Talk with Thomas Calmant and Joao Claudio Américo who worked on RobAIR before with Didier Donsez on another robotic subject
    • They warn us about the difficulty to use ROS, they abandoned this robotics development architecture during their project
  • We continued to follow the ROS tutorials

WEEK 4: from January 4th to February 10th

  • First meeting with the RICM5 working on this project
    • They presented to us their first architecture for the project
    • They divided up into different groups, each one on charge of a RICM4 team
      • Elisabeth Paz and Arthur Alexandre were our tutors
  • We finish the basical ROS tutorial and make our firsts practical tests

WEEK 5: from February 11th to February 17th

  • Meeting with the RICM5 working on this project
    • In the updated architecture, ROS is used everywhere ! In fact all the communication go through these technology.
  • We start the intermediate level ROS tutorials
    • a first interactive ROS node: hosted on our git
  • Final SRS version

WEEK 6: from February 18th to February 22nd

  • We had the idea (finally!) to set up mailing lists to improve communication between the different groups of the project
  • Before testing on the final robot, we decided to make in practise the different ROS principles we learned the weeks before
    • We will try to take the control of the Lego Mindstorm NXT robot using ROS and Python scripts
      • Searching for documentation and driver
  • Writing the UML of the project

WEEKS 7 and 8: from March 4th to March 15th

  • HOLYDAYS ;)
  • Searching for a nxt ROS node in order to give us the ability to communicate with this robot
    • nxt-ros is not working on our ROS environments (Ubuntu 12.10 / ROS Groovy). After some researches and tries, nxt-ros is only compatible with old configurations: ROS electric (v5) / Ubuntu 11.10 and lower.
    • nxt-python is working on our ROS environments. We will wrote Python scripts to control the nxt.

WEEK 9: from March 18th to March 22nd

  • We assisted at the RICM5 final presentation
  • Thanks to the help of a great python programmer (Salem Harrache) we are now able to control the nxt over a ROS architecture :)
  • We wrote a simple python script which plays with the ultrasound sensor: available here. It plays a different sound, depending on the distance between an object and the ultrasound sensors.

WEEK 10: from February 25th to February 29nd

  • One of the Ensimag group needed the Lidar
    Testing the Lidar ROS node, and monitoring the data into rviz
    • We download the lidar node, accessible from our environment sudo apt-get install ros-groovy-laser-drivers
    • The next is simple, we just have to follow the specific tutorial on ros website.
    • We played with the lidar, using the data its node published on the /scan topic
  • We met a student from this group. We speaks about their part of the project and give him the Lidar and a Exo PC Slate, with a ROS environment installed (but incompatibilities with the Kinect, see the ROS page)

WEEK 11: from April 1st to April 5th

  • easter: brake !
  • eat ROS chocolates
  • See the RobAir Configuration 2 construction by Didier Donsez
  • Writing the ROS tutorial

WEEK 12: from April 8th to April 11th

  • Programming a ROS node and Python scripts in order to control the RobAir Configuration 2
    • Learning how we can send bytes through a serial port in Python: [ http://pyserial.sourceforge.net/ PySerial]
    • Learning how the Devantech card works, what are the data it need to move the robot
    • Implementing the solution
      • test and DEBUG ! (definitely don't use USB extentions, a lot of bytes are lost during communication !)
    • Preparing the RobAir configuration for the presentation
  • Merge the RICM4 multimedia project part
    • Integrating their IHM for publishing data into the RobAir control nodes
  • Completing the Hokuyo Lidar Page with our previous experiment.


  • Final presentation: April, 11th 2:15pm to 15:40pm for all the RobAir's RICM4 groups
    • Writing the requested documents
    • Preparing the presentation
    • For the documents, please refer you to the document section (below)

Related documents

  • The RobAir Website: here!