Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

visualization tutorial is now kinetic compatible #92

Merged
merged 5 commits into from
Aug 10, 2017
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

This repo is automatically built by the ROS build farm and its output is hosted here: http://docs.ros.org/kinetic/api/moveit_tutorials/html/

The tutorials use the [reStructuredText](http://www.sphinx-doc.org/en/stable/rest.html) format commonly used in the Sphinx "Python Documentation Generator". This unfortuantly differs from the common Markdown format.
The tutorials use the [reStructuredText](http://www.sphinx-doc.org/en/stable/rest.html) format commonly used in the Sphinx "Python Documentation Generator". This unfortunately differs from the common Markdown format.

## Travis Continuous Integration

Expand Down
42 changes: 28 additions & 14 deletions doc/ros_visualization/visualization_tutorial.rst
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,23 @@ and you should now have a MoveIt! configuration for the PR2 that you
can use. This tutorial assumes the generated MoveIt! configuration
package is called "pr2_moveit_config".

Alternately, you can just install the pre-made MoveIt! configuration
for the PR2 in the pr2_moveit_config ROS package. To install it,
run::
Alternately, you can source the MoveIt! configuration
for the PR2 in the pr2_moveit_config ROS package. If you don't yet
have a workspace for this tutorial create one below. Otherwise continue
to sourcing::

sudo apt-get install ros-indigo-moveit-pr2
mkdir moveit_ws
cd moveit_ws
mkdir src
cd ..
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you change this to the same two-liner used in the source install instructions?

mkdir -p ~/ws_moveit/src
cd ~/ws_moveit/src

catkin_make

Source and Build the moveit_config package

cd src
git clone https://github.com/davetcoleman/pr2_moveit_config.git
cd ..
catkin_make
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be catkin build, not catkin_make, because the rest of the tutorials use catkin tools.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

okay, what exactly is the difference? I'm quite new to ROS and would appreciate an explanation to the new guy

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here is some documentation on catkin build and catkin_make's history. I'm not very familiar with catkin tools myself, but build is used throughout the other tutorials so it would be more consistent to continue its usage.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please see moveit's main source install instructions for how to use catkin build - its much better! http://moveit.ros.org/install/source/


This tutorial does **not** require you to actually have a PR2 robot,
it just needs a set of working robot model files.
Expand All @@ -43,7 +55,7 @@ Step 1: Launch the demo and Configure the Plugin
* In the "Global Options" tab of the "Displays" subwindow, set the **Fixed Frame** field to "/odom_combined"

* Now, you can start configuring the Plugin for your robot (the PR2 in
this case). Click on "MotionPlanning" in "Displays".
this case). Click on "MotionPlanning" within "Displays".

* Make sure the **Robot Description** field is set to "robot_description"

Expand Down Expand Up @@ -86,8 +98,10 @@ The display states for each of these visualizations can be toggled on and off us
Step 3: Interact with the PR2
-----------------------------

* Press **Interact** in the top menu of rviz. You should see a
couple of interactive markers appear for the right arm of the PR2.
* Press **Interact** in the top menu of rviz (Note: some tools may be
hidden, press **+** in the top menu to add the **Interact** tool.
You should see a couple of interactive markers appear for the
right arm of the PR2.

* One marker (corresponding to the orange colored right arm) will
be used to set the "Goal State" for motion planning. Another
Expand All @@ -111,13 +125,13 @@ with the other. The two links that are in collision will turn red.
.. image:: rviz_plugin_collision.png
:width: 300px

The "Use Collision-Aware IK" checkbox allows you to toggle the
behavior of the IK solver. When the checkbox is ticked, the solver
will keep attempting to find a collision-free solution for the desired
end-effector pose. When it is unticked, the solver will allow
collisions to happen in the solution. The links in collision will
always still be visualized in red, regardless of the state of the
checkbox.
The "Use Collision-Aware IK" checkbox found within the MotionPlanning
plugin allows you to toggle the behavior of the IK solver. When the
checkbox is ticked, the solver will keep attempting to find a
collision-free solution for the desired end-effector pose. When it is
unticked, the solver will allow collisions to happen in the solution.
The links in collision will always still be visualized in red,
regardless of the state of the checkbox.

.. image:: rviz_plugin_collision_aware_ik_checkbox.png
:width: 300px
Expand Down
40 changes: 26 additions & 14 deletions doc/setup_assistant/setup_assistant_tutorial.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,12 @@ MoveIt! and ROS
* Follow the instructions for :moveit_website:`installing MoveIt!<install>`
first if you have not already done that.

* If you haven't already done so, make sure you have the `pr2_common
package <https://github.com/PR2/pr2_common>`_
for kinetic.

sudo apt-get install ros-kinetic-pr2-common

Step 1: Start
---------------

Expand All @@ -37,10 +43,10 @@ Step 1: Start
.. image:: setup_assistant_start.png

* Click on the browse button and navigate to the *pr2.urdf.xacro* file
installed when you installed ros-indigo-moveit-full-pr2. (This file
installed when you installed the pr2 package above. (This file
gets installed in
/opt/ros/indigo/share/pr2_description/robots/pr2.urdf.xacro on Ubuntu
with ROS Indigo.) Choose that file and then click *Load Files*. The
/opt/ros/kinetic/share/pr2_description/robots/pr2.urdf.xacro on Ubuntu
with ROS Kinetic.) Choose that file and then click *Load Files*. The
Setup Assistant will load the files (this might take a few seconds)
and present you with this screen:

Expand All @@ -63,7 +69,7 @@ be disabled. The default value is 10,000 collision checks. Collision
checking is done in parallel to decrease processing time.

* Click on the *Self-Collisions* pane selector on the left-hand side
and click on the *Regenerate Default Collision Matrix* button. The
and click on the *Generate Collision Matrix* button. The
Setup Assistant will work for a few second before presenting you the
results of its computation in the main table.

Expand Down Expand Up @@ -127,7 +133,7 @@ Add the right arm
.. image:: setup_assistant_pr2_right_arm.png
:width: 700px

* Now, click on the *Save and Add Joints* button. You will see a
* Now, click on the *Add Joints* button. You will see a
list of joints on the left hand side. You need to choose all the
joints that belong to the right arm and add them to the right hand
side. The joints are arranged in the order that they are stored in
Expand All @@ -143,8 +149,9 @@ Add the right arm
:width: 700px

* Click *Save* to save the selected group. Note that each arm of the
PR2 has only 7 joints and yet we added 9 joints here. Some of the
joints (r_upper_arm_joint and r_forearm_joint) are **Fixed** joints
PR2 has only 7 joints and yet we added 11 joints here. Some of the
joints (r_upper_arm_joint, r_forearm_joint, r_forearm_cam_frame_joint,
r_forearm_cam_optical_frame_joint) are **Fixed** joints
and will not be used for planning or kinematics.

.. image:: setup_assistant_pr2_right_arm_joints_saved.png
Expand Down Expand Up @@ -214,7 +221,7 @@ some special operations to happen on them internally.

* Click on the *End Effectors* pane.

* Click *Add End-Effectors*.
* Click *Add End-Effector*.

* Choose **right_eef** as the *End Effector Name* for the right gripper.

Expand All @@ -227,19 +234,23 @@ some special operations to happen on them internally.
.. image:: setup_assistant_pr2_end_effectors_add.png
:width: 700px

* Click *Save*.

* Add the **left_eef** in a similar manner.

Step 7: Add Passive Joints
--------------------------

The passive joints tab is meant to allow specification of any passive
joints that might exist in a robot. This tells the planners that they
cannot (kinematically) plan for these joints. Examples of passive
joints include passive casters. The PR2 does not have any passive
joints that might exist in a robot. These are joints that are unactuated
on a robot (e.g. passive casters.) This tells the planners that they
cannot (kinematically) plan for these joints because they can't be
directly controlled. The PR2 does not have any passive
joints so we will skip this step.

Step 8: Add Author Information

* catkin requires author information for publishing purposes. You can
enter your name and email address in the *Author Information* pane.

Step 8: Generate Configuration Files
------------------------------------

Expand All @@ -249,7 +260,7 @@ files that you will need to start using MoveIt!
* Click on the *Configuration Files* pane. Choose a location and
name for the ROS package that will be generated containing your new
set of configuration files. Click browse, select a good
location (for example, your home dir), click **Create New Folder**, enter
location (for example, your home dir), click **Create New Folder**, call it
"pr2_moveit_config", and click **Choose**.
"pr2_moveit_config" is the location used in the rest of the
documentation on this wiki. This package does not have to be within your
Expand Down Expand Up @@ -299,3 +310,4 @@ URDF
properties of your robot. Read through the `URDF specific
documentation <http://picknik.io/moveit_wiki/index.php?title=URDF>`_ to see how the
URDF is used with MoveIt!