HowToInstallRoombaPackage
Mode 1
Get packages
Step 1: Create a rosinstall file: (e.g turtlebot_roomba.install)
- hg:
uri: http://code.google.com/p/parsec/
local-name: RoCKIn/parsec
- svn:
uri: http://code.in.tum.de/svn/turtlebot-roomba
local-name: RoCKIn/turtlebot_roomba
- svn:
uri: http://isr-uc-ros-pkg.googlecode.com/svn/stacks/lse_communication/trunk
local-name: RoCKIn/lse_communication
- svn:
uri: http://isr-uc-ros-pkg.googlecode.com/svn/stacks/serial_communication/trunk/cereal_port/
local-name: RoCKIn/cereal_port
Step 2: In your ROS workspace you can launch
rosinstall . turtlebot_roomba.install
Step 3: Some packages have deprecated methods (they are from ROS electric), so we can remove them in the compilation. The turtlebot_roomba package doesn't need all of them.
ToDo: We should fix them but I haven't got time. Also the dependencies of turtlebot_roomba should be checked
- Parsec
We can move outside folder parsec:
cmd_vel_safety_filter gmapping_offline parsec_arduino parsec_arduino_tests tf_odometry_relay
We need to fix the dependencies in some stacks:
<syntaxhighlight lang=CMake>
diff -r f47a20bb44a5 parsec_bringup/manifest.xml --- a/parsec_bringup/manifest.xml Fri Mar 30 09:32:23 2012 -0700 +++ b/parsec_bringup/manifest.xml Fri Oct 18 14:04:22 2013 +0200 @@ -15,7 +15,7 @@
<depend package="rospy" /> <depend package="geometry_msgs" /> <depend package="priority_mux" />
- <depend package="cmd_vel_safety_filter" /> +
<depend package="compressed_visualization_transport" /> </package>
diff -r f47a20bb44a5 parsec_navigation/manifest.xml --- a/parsec_navigation/manifest.xml Fri Mar 30 09:32:23 2012 -0700 +++ b/parsec_navigation/manifest.xml Fri Oct 18 14:04:22 2013 +0200 @@ -16,6 +16,8 @@
<depend package="move_base" /> <depend package="navfn" /> <depend package="parsec_perception" />
- <depend package="point_cloud_converter" /> + + <depend package="pointcloud_to_laserscan" /> +<depend package="sensor_msgs"/>
<depend package="rcconsole" /> </package>
diff -r f47a20bb44a5 parsec_odometry/manifest.xml --- a/parsec_odometry/manifest.xml Fri Mar 30 09:32:23 2012 -0700 +++ b/parsec_odometry/manifest.xml Fri Oct 18 14:04:22 2013 +0200 @@ -16,6 +16,6 @@
<depend package="parsec_msgs" /> <depend package="nav_msgs" /> <depend package="sensor_msgs" />
- <depend package="eigen" /> +
</package>
diff -r f47a20bb44a5 rcconsole/include/rcconsole/log_filter.h --- a/rcconsole/include/rcconsole/log_filter.h Fri Mar 30 09:32:23 2012 -0700 +++ b/rcconsole/include/rcconsole/log_filter.h Fri Oct 18 14:04:22 2013 +0200 @@ -21,6 +21,9 @@
#include <rosgraph_msgs/Log.h>
+#include "ros/ros.h" +#include "std_msgs/String.h" +
namespace rcconsole {
class LogFilter : public nodelet::Nodelet {
</syntaxhighlight>
- rurtlebot_roomba
we need to fix a problem with a deprecated method
<syntaxhighlight lang=python>
Index: turtlebot_node/src/turtlebot_node/create_sensor_handler.py
=======================================================
--- turtlebot_node/src/turtlebot_node/create_sensor_handler.py (revisión: 29) +++ turtlebot_node/src/turtlebot_node/create_sensor_handler.py (copia de trabajo) @@ -35,12 +35,14 @@
import logging import time import rospy
+import genpy
from math import radians from turtlebot_driver import SENSOR_GROUP_PACKET_LENGTHS
-_struct_I = roslib.message.struct_I +_struct_I = genpy.message.struct_I
_struct_BI = struct.Struct(">BI")
_struct_12B2hBHhb7HBH5B4h = struct.Struct(">12B2hBHhb7HBH5B4h")
@@ -75,7 +77,7 @@
return msg
except struct.error, e:
- raise roslib.message.DeserializationError(e) + raise genpy.message.DeserializationError(e)
class CreateSensorHandler(object):
</syntaxhighlight>
Mode 2
Step 1: Create a rosinstall file: (e.g turtlebot_roomba.install)
- svn:
uri: http://isr-uc-ros-pkg.googlecode.com/svn/stacks/lse_communication/trunk local-name: RoCKIn/lse_communication
- svn:
uri: http://isr-uc-ros-pkg.googlecode.com/svn/stacks/serial_communication/trunk/cereal_port/ local-name: RoCKIn/cereal_port
- svn:
uri: http://isr-uc-ros-pkg.googlecode.com/svn/stacks/roomba_robot/trunk/roomba_500_series/ local-name: RoCKIn/roomba_500_series/
Step 2: In your ROS workspace you can launch
rosinstall . turtlebot_roomba.install