ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

where do I need to start

asked 2012-12-13 13:20:07 -0600

packrat gravatar image

updated 2012-12-14 07:16:22 -0600

Eric Perko gravatar image

I am very new to ros and i am building a robot from an old powered wheelchair containing a full PC, two USB high power motor controllers, USB camera on a RC pan and tilt, high power WiFi radio. my goal for this robot for now is remote control over the WiFi. I have installed ros and have run through most of the beginner tutorials. my question is, where do i start. what are the steps that i need to follow to make it remote controlled. i have no software written for this robot.

edit retag flag offensive close merge delete


the motor controllers that i am using are simple motor controllers 24v23 from pololu. They do have drivers for linux.

packrat gravatar image packrat  ( 2012-12-14 09:45:13 -0600 )edit

Ok, I maybe missing something very simple, how do i install gscam and gstreamer?

packrat gravatar image packrat  ( 2012-12-16 10:46:16 -0600 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2012-12-13 13:38:13 -0600

Thomas D gravatar image

For simple remote control you only need to be able to make your motors move from within a ROS node by sending commands to your motor controllers. I don't know what type of motor controllers you have, but you can ask around to see if a node already exists to talk to them. If no node exists, then you will have to write that yourself.

You can use the turtlebot_teleop package to send commands from a joystick or keyboard to your motor controller node. Install that with

sudo apt-get install ros-fuerte-turtlebot-apps

since turtlebot_teleop is a package in the turtlebot_apps stack. Modify that install command to replace fuerte if you are using a different version of ROS.

So the order of your nodes will look like the following (with the topics that connect your nodes inside the arrows):

turtlebot_teleop_joy (computer 1) --cmd_vel--> motor_controller_node (computer 2) --motor_controller_outputs--> motors

Note that you will have to set up your environment variables so that nodes running on two different computers can talk to each other.

To do teleoperation (remote control with cameras) you will have to try out the different camera driver packages (probably gscam since it is USB) to get images out and use RViz to view the image stream.

The pan/tilt mechanism would have to be another node, probably one that you write.

edit flag offensive delete link more

Question Tools


Asked: 2012-12-13 13:20:07 -0600

Seen: 307 times

Last updated: Dec 13 '12