Difference between revisions of "ROS (Robot Operating System)"

From GICL Wiki
Jump to: navigation, search
(ROS (Robot Operating System))
(rviz)
 
(23 intermediate revisions by 3 users not shown)
Line 1: Line 1:
http://www.ros.org/wiki/
+
We used [http://www.ros.org ROS] so we could take advantage of the large amount of packages it provides. This is so we don't have to reinvent the wheel.
 
+
 
== p2os ==
 
== p2os ==
The ROS stack for hooking up to the pioneer.
+
p2os is the ROS stack for communicating with the pioneer robot.
 +
An example of the pioneer robot using ROS and the navigation system: http://youtu.be/f3Iu2t0d3xo.
 +
 
 +
=== Installing ===
 +
Open up a terminal.
 +
Clone the git repository into your home directory:
 +
<pre>git clone <USER>@tux.cs.drexel.edu:~taw38/repos/robotlab.git</pre>
 +
 
 +
Enter the repository:
 +
<pre>cd ~/robotlab</pre>
  
=== Installing ====
+
Then run the ros setup script.
http://www.ros.org/wiki/p2os/Tutorials/Getting%20Started%20with%20p2os
+
<pre>./ros/bin/setup-ros.bash</pre>
After following the directions above, we have to set the p2os/port to our cable's device name:
+
<pre>$ rosparam set p2os/port /dev/ttyUSB0</pre>
+
  
=== Running ===
+
Wait for passwords, until you get the done prompt.
Run on the base:
+
<pre>$ rosrun p2os_driver p2os</pre>
+
Run on the computer controlling the base:
+
<pre>$ rosrun p2os_dashboard p2os_dashboard</pre>
+
If you get an error like:
+
<blockquote>P2OS connection opening serial port /dev/ttyS0...</blockquote>
+
This command should fix it:
+
<pre>$ rosparam set p2os/port /dev/ttyUSB0</pre>
+
  
=== Localization Links ===
+
=== Control with Keyboard ===
!! - Updated April 19th
+
After starting the p2os driver and everything, you can control the robot via keyboard with:
 +
<pre>$ roslaunch p2os_launch teleop_keyboard.launch</pre>
  
* http://ros.org/wiki/ROS/Higher-Level%20Concepts
+
=== rviz ===
* http://ros.org/wiki/tf
+
Just launch the robot's rviz launch with (robot lab is the git repository root):
* http://www.ros.org/wiki/stage
+
<pre>$ cd robotlab/ros/stacks/unicorn
* http://www.ros.org/wiki/base_local_planner
+
$ roslaunch unicorn.launch</pre>
* http://ros.org/wiki/navigation
+
* http://ros.org/wiki/robot_pose_ekf/Tutorials/AddingGpsSensor
+
* http://ros.org/wiki/robot_pose_ekf
+
* http://ros.org/wiki/amcl
+
* http://ros.org/wiki/tf/Tutorials/Introduction%20to%20tf
+
* http://www.ros.org/doc/api/nav_msgs/html/msg/Odometry.html
+
* http://www.ros.org/doc/api/sensor_msgs/html/msg/Imu.html
+
* http://www.ros.org/wiki/navigation/Tutorials/RobotSetup
+

Latest revision as of 22:15, 18 June 2012

We used ROS so we could take advantage of the large amount of packages it provides. This is so we don't have to reinvent the wheel.

Contents

p2os

p2os is the ROS stack for communicating with the pioneer robot. An example of the pioneer robot using ROS and the navigation system: http://youtu.be/f3Iu2t0d3xo.

Installing

Open up a terminal. Clone the git repository into your home directory:

git clone <USER>@tux.cs.drexel.edu:~taw38/repos/robotlab.git

Enter the repository:

cd ~/robotlab

Then run the ros setup script.

./ros/bin/setup-ros.bash

Wait for passwords, until you get the done prompt.

Control with Keyboard

After starting the p2os driver and everything, you can control the robot via keyboard with:

$ roslaunch p2os_launch teleop_keyboard.launch

rviz

Just launch the robot's rviz launch with (robot lab is the git repository root):

$ cd robotlab/ros/stacks/unicorn
$ roslaunch unicorn.launch