0
$\begingroup$

Rosanswers logo

I have a Roomba 550, an IRobot SCI cable, a laptop running Ubuntu and installed ROS and went through most of the tutorials. I've done some coding, have worked in IT for 2 decades, built a 12 servo music bot with pedals, swtiches and shift registers leveraging a Basic Stamp... but I'm a novice and not a developer or Engineer by trade. I'm finding it difficult to put the pieces together to get some basic navigation in place for the Roomba (without the Kinect for now). Can someone help me get started with some basic instruction with installing the Roomba 550 code, getting web-based control of the roomba in place. I have a platform on the Roomba for the laptop and I currently have Windows installed with Roborealm. Telepresence works great and I can control the bot remotely using skype and Roborealm.... but once the trial runs out, I don't want to buy it. I'm really interested in learning ROS and getting the Roomba &/or turtlebot code working with it.... and once I'm comfortable, add a kinect and maybe a manipulator someday. I really need someone to take me under their wing. I know I can get this with the right help. For now, some instruction on getting the roomba to move around the room with remote operation... would be a a good start.


Originally posted by kleekru on ROS Answers with karma: 71 on 2011-08-23

Post score: 0

$\endgroup$

4 Answers 4

0
$\begingroup$

Rosanswers logo

The turtlebot drivers are not out-of-the-box compatible with a Roomba, take a look at the roomba_500_series pkg.


Originally posted by Gonçalo Cabrita with karma: 591 on 2011-09-21

This answer was ACCEPTED on the original site

Post score: 1

$\endgroup$
0
$\begingroup$

Rosanswers logo

You should have no issue following the turtlebot tutorials: http://www.ros.org/wiki/Robots/TurtleBot?action=show&redirect=TurtleBot#Tutorials without the Kinect.

Doing telepresence should work "out of the box" with ROs, the Turtlebot stacks, and a compatible Roomba.

From there, you could easily add a Kinect and IMU to the design.


Originally posted by mjcarroll with karma: 6414 on 2011-08-24

This answer was NOT ACCEPTED on the original site

Post score: 2


Original comments

Comment by kleekru on 2011-09-17:
Thank you, that seemed to partially work... but now I have a different but maybe related problem. I'm getting the following failure when launching the turtlebot: process[turtlebot_node-3]: started with pid [7040] [INFO] [WallTime: 1316330254.072326] serial port: /dev/ttyS0 [INFO] [WallTime: 1316330254.072595] update_rate: 30.0 [INFO] [WallTime: 1316330254.072796] drive mode: twist [INFO] [WallTime: 1316330254.072993] has gyro: True shutdown request: new node registered with same name Failed to contact device with error: [Error reading from SCI port. No data.]. Please check that the Create is powered on and that the connector is plugged into the Create.[turtlebot_node-3] process has finished cleanly. Any ideas?

Comment by mmwise on 2011-09-07:
Do you have permission to access ttyS0? try doing a sudo chmod a+rw /dev/ttyS0 then rerun the software. The default turtlebot software adds /dev/ttyUSB0 to the default permissions but not /dev/ttyS0

Comment by kleekru on 2011-09-04:
I found a post here (http://profmason.com/?p=1565) that includes the following instructions to fix.... roscd turtlebot_node. cd to the node directory. gedit the file “turtlebot_node.py” and change the default_port to ‘/dev/ttyS0′ ... HOWEVER, this didn't work. I still get a message when I launch turtlebot_bringup that says: "[ERROR] [WallTime: 1315203720.702371] Failed to open port /dev/ttyS0. Please make sure the Create cable is plugged into the computer."

Comment by kleekru on 2011-09-04:
OK, I'm much further now... I have an OSX Lion workstation with an Ubuntu VM and nearly complete with the ros install. I now have the laptop installed with the turtlebot image and was able to start the turtlebot service... but I'm noticing (probably because the software is expecting a Create with a USB cable...) that the SCI cable connected to the Roomba is not allowing connectivity to it through the service. Any additional suggestions on easy updates to allow communication across the Serial cable (iRobot SCI)?

Comment by mjcarroll on 2011-08-31:
So if you try to "roscd" to any of the turtlebot directories and it won't work? If you have a computer that you can reformat or dual-boot, I would strongly recommend using the Turtlebot ISO image to get started with the Turtlebot platform.

Comment by kleekru on 2011-08-30:
Thanks, I've been through the turtlebot tutorial... and I can't seem to get ROS to recognize turtlebot packages... it recognizes it as a stack which I think is a reasonable start. Pardon my ignorance here but I thought I would need to perform a rosmake on turtlebot to compile the packages. Help

$\endgroup$
0
$\begingroup$

Rosanswers logo

Plug the Create on laptop, ssh, and use "$ dmesg | grep tty". It will show in which port the Create is plugged.

Now edit the file "turtlebot_node.py".


Originally posted by lucascoelho with karma: 497 on 2011-09-06

This answer was NOT ACCEPTED on the original site

Post score: 2


Original comments

Comment by kleekru on 2011-09-18:
I noticed the dashboard power indicator for the Roomba updates only when it is connected to the home base dock/charger. Odd.

Comment by kleekru on 2011-09-18:
Actually, somehow overnight (the dashboard was not showing the Roomba about 8 hours ago), the Roomba battery status. When I try to put it in "Full mode", I get the following error: "Failed to put the turtlebot in full mode: service call failed with error: service [/turtlebot_node/set_operation_mode] unavailable" and all of the sensors, etc. are stale. There seems to be an ongoing permissions issues... I tried to run turtlebot_node.py directly through Python and received an error that it could not recognize rospy... in another case, I tried to install Roomba_500_series stack and I am receiving errors that the cereal_port package could not be created. I can't see a pattern here... hopefully someone else (with much more experience) can. Thank you!

Comment by kleekru on 2011-09-18:
I'm using the iRobot SCI cable which has the RS232 on te laptop side (no USB) and the mini DIN connected directly to the port on the Roomba. There is a unit on the iRobot cable which has LEDs that seem to indicate there is something flowing to the Roomba... at one point it was on the tb dashboard

Comment by lucascoelho on 2011-09-18:
Are you using a rs232 connector, and after a serial-usb converter to plug on the laptop? Or are you connecting on the laptop directly through a serial port?

Comment by kleekru on 2011-09-16:
Thank you for the reply! I receive the following but I cannot tell if this means I'm actually communicating with the roomba or not: turtlebot@kevin-laptop:~/ros_workspace$ dmesg |grep tty [ 0.000000] console [tty0] enabled [ 0.639839] serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A [ 0.640245] 00:09: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A

Comment by mjcarroll on 2011-09-07:
Here is an example udev rules file: https://github.com/wjwwood/au-automow/blob/master/au_automow_common/automow_etc/etc/udev/rules.d/42-mowbot-ftdi.rules to be placed in /etc/udev/rules.d/file.rules. You can find matching attributes using the command at the top of the file.

Comment by mjcarroll on 2011-09-07:
It may also be useful to create a symbolic link (aka. /dev/create_serial) and set up your ROS node's configuration to reflect that. You can then be sure that the create will always come up as the same hardware device (to ROS), no matter what /dev/ttyS* it shows up to as Ubuntu.

$\endgroup$
0
$\begingroup$

Rosanswers logo

I eventually got a real working telepresence bot going... And operated it around my home in California from a hotel room in Tokyo. Here is a link: Roomba ROS telepresence bot

I hope to get more details posted about the entire project. Let me know if you are interested. Kevin


Originally posted by kleekru with karma: 71 on 2012-05-04

This answer was NOT ACCEPTED on the original site

Post score: 2


Original comments

Comment by Alex Bravo on 2012-06-10:
Congratulations! I also applaud your persistence. It's easy to give up, but you didn't. We are definitely interested to get more details about your project.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.