Friday, July 27, 2018

Hello World ROS (Robotic Operating System)

Everybody can do programming in ROS, as much as they are interested to explore the importance of this software to simplify application of Robotics. These blog will literally  explain the application of ROS hence if the reader already understand this simple tutorial. I would suggest to take the next steps/ experiments here .

Software: Ubunto 16.04 ,ROS (commands: roscore, rosrun,rostopicdriver: rosserial_arduino)
Hardware: Arduino UNO/Mega 2560, RPi or Laptop/Desktop

To learn the first stage of ROS through learning by doing
To use ROS to communicate an Arduino to PC
To test a simple publishing and displaying of data that uses ROS environment


Simple hardware setup

Install ROS library for Arduino either by:
robook# sudo  apt-get install ros-[PACKAGE-RELEASE-rosserial-arduino
robook# sudo  apt-get install ros-[PACKAGE-RELEASE-rosserial

Or  install if from  the source
Download ros library from its repository in the source folder of catkin workspace directory
robook# cd catkin/src/
robook# gitclone git
robook # cd  rosserial/arduino_rosserial/roslib    PATH/Arduino/libraries
Then rename the original "ros_lib" to the ros_lib.bak
robook# mv   rosserial/arduino_rosserial/roslib rosserial/arduino_rosserial/roslib.bak

Select  ros_lib from rosserial driver
robook# cd rosserial
Copy "ros_lib" in the Arduino library folder
robook#  cp  ros_lib  PATH/arduino/library

Check  "ros_lib" in  Arduino IDE "Built-in/Examples"

Cut & paste the code modify it according to your own test and checking

Open the first  terminal  to run ros core environment "roscore"

Open the second terminal  to run the serial interface betwen ROS system and Arduino link its port
robook# rosrun rosserial_pythoon /dev/ttyACMO

Open the third terminal to display messages in the "chatter" topic
robook#  rostopic echo chatter

Trouble: "Unable to communicate with master with roscore running"
Shooting:  Check the ROS_MASTER_URI    or ROS_HOSTNAME
                  in  /etc/hosts  or in ./bashrc

Trouble: "No rosserial_arduino
Shooting:    Install or check the new files in repostitories or github
sudo apt-get install ros-[package version]-rosserial-arduino
sudo apt-get install ros-[package version]-rosserial
We wanted to actualize first a simple program to run ROS environment , install rosserial_arduino  , a publisher for a data message and echoing/displaying ROS topic.

First stage of learning by doing ROS.

No comments:

Post a Comment