On the Turtlebot:
1- update via apt-get
sudo apt-get update
sudo apt-get upgrade
2- fix ip address
ip: 10.1.161.xx
gateway: 10.1.1.1
netmask: 255.255.0.0
Proxy: 10.1.1.3:8080
3- update ros
sudo apt-get install python-rosdep
rosdep update
4- install ros-turtlebot:
sudo apt-get install ros-groovy-turtlebot ros-groovy-turtlebot-apps ros-groovy-turtlebot-viz
5- Install Chrony
sudo apt-get install chrony
6- manually sync NTP
sudo ntpdate 10.1.1.2
7- modify the file
/etc/chrony/chrony.conf with the correct ntp: add the line "server 10.1.1.2"
you can comment the other servers.
On the workstation
1- Install Chrony
sudo apt-get install chrony
2- manually sync NTP
sudo ntpdate 10.1.1.2
3- fix ip address
ip: 10.1.161.xx
gateway: 10.1.1.1
netmask: 255.255.0.0
Proxy: 10.1.1.3:8080
4- install:
sudo apt-get install ros-groovy-turtlebot ros-groovy-turtlebot-apps ros-groovy-turtlebot-viz
. /opt/ros/groovy/setup.bash
rosrun kobuki_ftdi create_udev_rules
echo "source /opt/ros/groovy/setup.bash" >> ~/.bashrc
Then on robot computer:
echo export ROS_MASTER_URI=http://IP_OF_TURTLEBOT:11311 >> .bashrc
echo export ROS_HOSTNAME=IP_OF_TURTLEBOT >> .bashrc
source .bashrc
Then on workstation:
echo export ROS_MASTER_URI=http://IP_OF_TURTLEBOT:11311 >> .bashrc
echo export ROS_HOSTNAME=IP_OF_WORKSTATION >> .bashrc
source .bashrc
Verification:
on turtlebot:
1- the topics:
rostopic list
>>I had an error, so I did:
sudo apt-get upgrade
sudo apt-get install ros-groovy-actionlib
sudo apt-get install ros-groovy-rosgraph
roslaunch turtlebot_bringup minimal.launch
>>Then, reexecute the line, it should work:
rostopic list
2- the environment:
echo $ROS_MASTER_URI
rostopic echo /diagnostics
echo $ROS_HOSTNAME
on workstation:
rostopic list
rostopic echo /diagnostics
Last verification:
on workstation:
rostopic pub -r10 /hello std_msgs/String "hello"
on turtlebot:
rostopic echo /hello
The message “hello” begin printed about 10 times a second.
Finally
All works now, you can run this line on the robot (I desactivated the automatic launch of the turtlebot nodes)
roslaunch turtlebot_bringup turtlebot.launch
Sometimes, this does not work. Just finish the process (Ctrl-C) and rerun it. Sometimes, I do that 3 or 4 times before it works.
To run the camera and 3d sensors, run this line:
roslaunch turtlebot_bringup 3dsensor.launch
On the workstation, you can open the diagnostic panel:
rqt -s kobuki_dashboard
Now, you can play with Turtlebot tutorials:
- http://www.ros.org/wiki/turtlebot_bringup/Tutorials/groovy/3D%20Visualisation
- http://www.ros.org/wiki/turtlebot_teleop/Tutorials/Keyboard%20Teleop
- http://www.ros.org/wiki/turtlebot_navigation/Tutorials/Autonomously%20navigate%20in%20a%20known%20map
Some other tips:
VMWare:
I installed ROS on a VMWare 5, Ubuntu 12.04.
Due to the generic drivers, RViz does not work well. You have to add this line in your .bashrc:
export LIBGL_ALWAYS_SOFTWARE=1
I also change the file /etc/ld.so.conf.d/GL.conf (not sure it has an impact): I removed the term “mesa” in the file (not the line, only the word).
Building the map:
To build the map, do not launch 3dsensor before.