Skip to content

Commit

Permalink
Added the ClamArm MoveIt config package
Browse files Browse the repository at this point in the history
  • Loading branch information
davetcoleman committed Feb 21, 2013
1 parent fcd3398 commit e74d63f
Show file tree
Hide file tree
Showing 23 changed files with 670 additions and 0 deletions.
9 changes: 9 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,12 @@ moveit_robots
=============

This repository contains configuration packages for different robots using MoveIt!

GUIDELINES
---------

Add your robot's MoveIt configuration package to the root of this repository.

Name the package YOURROBOT_moveit_config... for example 'pr2_moveit_config'

Add a README.md file inside your robot's config package that explains where and how to get your robot's URDF file - i.e. where to download the corresponding YOURROBOT_description package that contains your robot's URDF file.
6 changes: 6 additions & 0 deletions clam_moveit_config/.setup_assistant
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
moveit_setup_assistant_config:
URDF:
package: clam_description
relative_path: urdf/clam.urdf
SRDF:
relative_path: config/clam.srdf
9 changes: 9 additions & 0 deletions clam_moveit_config/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
cmake_minimum_required(VERSION 2.8.3)
project(clam_moveit_config)

find_package(catkin REQUIRED)

catkin_package()

install(DIRECTORY launch DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})
install(DIRECTORY config DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION})
24 changes: 24 additions & 0 deletions clam_moveit_config/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
ClamArm Manipulator
==========
* Author: Dave Coleman <davetcoleman.com>
* Website: [correll.cs.colorado.edu/clam](http://correll.cs.colorado.edu/clam)
* License: GNU General Public License, version 3 (GPL-3.0)
* Inception Date: 12/27/2011
* Version: 2.0.0

MoveIt configuration package for the 7-dof robotic arm in the Correll Lab at the University of Colorado Boulder.


PACKAGE DEPENDENCIES
---------
To use the clam_moveit_config package you need the clam_description package that contains the robot's URDF. To download that package use the following repo:

git clone [email protected]:davetcoleman/clam_catkin.git


DOCUMENTATION
---------

See [Documentation](http://correll.cs.colorado.edu/clam/?page_id=28)


80 changes: 80 additions & 0 deletions clam_moveit_config/config/clam.srdf
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
<?xml version="1.0" ?>
<!--This does not replace URDF, and is not an extension of URDF.
This is a format for representing semantic information about the robot structure.
A URDF file must exist for this robot as well, where the joints and the links that are referenced are defined
-->
<robot name="clam">
<!--GROUPS: Representation of a set of joints and links. This can be useful for specifying DOF to plan for, defining arms, end effectors, etc-->
<!--LINKS: When a link is specified, the parent joint of that link (if it exists) is automatically included-->
<!--JOINTS: When a joint is specified, the child link of that joint (which will always exist) is automatically included-->
<!--CHAINS: When a chain is specified, all the links along the chain (including endpoints) are included in the group. Additionally, all the joints that are parents to included links are also included. This means that joints along the chain and the parent joint of the base link are included in the group-->
<!--SUBGROUPS: Groups can also be formed by referencing to already defined group names-->
<group name="arm">
<chain base_link="base_link" tip_link="gripper_roll_link" />
</group>
<group name="gripper">
<joint name="gripper_fixed_finger_joint" />
<joint name="gripper_finger_joint" />
<joint name="gripper_roll_joint" />
</group>
<!--END EFFECTOR: Purpose: Represent information about an end effector.-->
<end_effector name="gripper_ee" parent_link="gripper_roll_link" group="gripper" parent_group="arm" />
<!--VIRTUAL JOINT: Purpose: this element defines a virtual joint between a robot link and an external frame of reference (considered fixed with respect to the robot)-->
<virtual_joint name="vjoint1" type="fixed" parent_frame="vframe1" child_link="base_link" />
<!--DISABLE COLLISIONS: By default it is assumed that any link of the robot could potentially come into collision with any other link in the robot. This tag disables collision checking between a specified pair of links. -->
<disable_collisions link1="base_link" link2="elbow_pitch_link" reason="Never" />
<disable_collisions link1="base_link" link2="elbow_roll_link" reason="Never" />
<disable_collisions link1="base_link" link2="gripper_fake_tip_link" reason="Never" />
<disable_collisions link1="base_link" link2="gripper_finger_link" reason="Never" />
<disable_collisions link1="base_link" link2="gripper_roll_link" reason="Never" />
<disable_collisions link1="base_link" link2="shoulder_pan_link" reason="Adjacent" />
<disable_collisions link1="base_link" link2="tabletop_link" reason="Adjacent" />
<disable_collisions link1="base_link" link2="wrist_pitch_link" reason="Never" />
<disable_collisions link1="base_link" link2="wrist_roll_link" reason="Never" />
<disable_collisions link1="elbow_pitch_link" link2="elbow_roll_link" reason="Adjacent" />
<disable_collisions link1="elbow_pitch_link" link2="gripper_fake_tip_link" reason="Never" />
<disable_collisions link1="elbow_pitch_link" link2="gripper_finger_link" reason="Never" />
<disable_collisions link1="elbow_pitch_link" link2="gripper_fixed_finger_link" reason="Never" />
<disable_collisions link1="elbow_pitch_link" link2="gripper_roll_link" reason="Never" />
<disable_collisions link1="elbow_pitch_link" link2="shoulder_pan_link" reason="Never" />
<disable_collisions link1="elbow_pitch_link" link2="wrist_roll_link" reason="Adjacent" />
<disable_collisions link1="elbow_roll_link" link2="gripper_fake_tip_link" reason="Never" />
<disable_collisions link1="elbow_roll_link" link2="gripper_finger_link" reason="Never" />
<disable_collisions link1="elbow_roll_link" link2="gripper_fixed_finger_link" reason="Never" />
<disable_collisions link1="elbow_roll_link" link2="gripper_roll_link" reason="Never" />
<disable_collisions link1="elbow_roll_link" link2="shoulder_pan_link" reason="Never" />
<disable_collisions link1="elbow_roll_link" link2="shoulder_pitch_link" reason="Adjacent" />
<disable_collisions link1="elbow_roll_link" link2="tabletop_link" reason="Never" />
<disable_collisions link1="elbow_roll_link" link2="wrist_pitch_link" reason="Never" />
<disable_collisions link1="elbow_roll_link" link2="wrist_roll_link" reason="Never" />
<disable_collisions link1="gripper_fake_tip_link" link2="gripper_finger_link" reason="Never" />
<disable_collisions link1="gripper_fake_tip_link" link2="gripper_fixed_finger_link" reason="Never" />
<disable_collisions link1="gripper_fake_tip_link" link2="gripper_roll_link" reason="Adjacent" />
<disable_collisions link1="gripper_fake_tip_link" link2="shoulder_pan_link" reason="Never" />
<disable_collisions link1="gripper_fake_tip_link" link2="shoulder_pitch_link" reason="Never" />
<disable_collisions link1="gripper_fake_tip_link" link2="wrist_pitch_link" reason="Never" />
<disable_collisions link1="gripper_fake_tip_link" link2="wrist_roll_link" reason="Never" />
<disable_collisions link1="gripper_finger_link" link2="gripper_fixed_finger_link" reason="Never" />
<disable_collisions link1="gripper_finger_link" link2="gripper_roll_link" reason="Adjacent" />
<disable_collisions link1="gripper_finger_link" link2="shoulder_pan_link" reason="Never" />
<disable_collisions link1="gripper_finger_link" link2="shoulder_pitch_link" reason="Never" />
<disable_collisions link1="gripper_finger_link" link2="wrist_pitch_link" reason="Never" />
<disable_collisions link1="gripper_finger_link" link2="wrist_roll_link" reason="Never" />
<disable_collisions link1="gripper_fixed_finger_link" link2="gripper_roll_link" reason="Adjacent" />
<disable_collisions link1="gripper_fixed_finger_link" link2="shoulder_pan_link" reason="Never" />
<disable_collisions link1="gripper_fixed_finger_link" link2="shoulder_pitch_link" reason="Never" />
<disable_collisions link1="gripper_fixed_finger_link" link2="wrist_pitch_link" reason="Never" />
<disable_collisions link1="gripper_fixed_finger_link" link2="wrist_roll_link" reason="Never" />
<disable_collisions link1="gripper_roll_link" link2="shoulder_pan_link" reason="Never" />
<disable_collisions link1="gripper_roll_link" link2="shoulder_pitch_link" reason="Never" />
<disable_collisions link1="gripper_roll_link" link2="wrist_pitch_link" reason="Adjacent" />
<disable_collisions link1="gripper_roll_link" link2="wrist_roll_link" reason="Never" />
<disable_collisions link1="shoulder_pan_link" link2="shoulder_pitch_link" reason="Adjacent" />
<disable_collisions link1="shoulder_pan_link" link2="tabletop_link" reason="Never" />
<disable_collisions link1="shoulder_pan_link" link2="wrist_pitch_link" reason="Never" />
<disable_collisions link1="shoulder_pan_link" link2="wrist_roll_link" reason="Never" />
<disable_collisions link1="shoulder_pitch_link" link2="tabletop_link" reason="Never" />
<disable_collisions link1="shoulder_pitch_link" link2="wrist_pitch_link" reason="Never" />
<disable_collisions link1="shoulder_pitch_link" link2="wrist_roll_link" reason="Never" />
<disable_collisions link1="wrist_pitch_link" link2="wrist_roll_link" reason="Adjacent" />
</robot>
36 changes: 36 additions & 0 deletions clam_moveit_config/config/joint_limits.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
joint_limits:
elbow_pitch_joint:
has_velocity_limits: true
max_velocity: 1.0
has_acceleration_limits: true
max_acceleration: 1.0
elbow_roll_joint:
has_velocity_limits: true
max_velocity: 1.0
has_acceleration_limits: true
max_acceleration: 1.0
gripper_roll_joint:
has_velocity_limits: true
max_velocity: 1.0
has_acceleration_limits: true
max_acceleration: 1.0
shoulder_pan_joint:
has_velocity_limits: true
max_velocity: 1.0
has_acceleration_limits: true
max_acceleration: 1.0
shoulder_pitch_joint:
has_velocity_limits: true
max_velocity: 1.0
has_acceleration_limits: true
max_acceleration: 1.0
wrist_pitch_joint:
has_velocity_limits: true
max_velocity: 1.0
has_acceleration_limits: true
max_acceleration: 1.0
wrist_roll_joint:
has_velocity_limits: true
max_velocity: 1.0
has_acceleration_limits: true
max_acceleration: 1.0
4 changes: 4 additions & 0 deletions clam_moveit_config/config/kinematics.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
arm:
kinematics_solver: kdl_kinematics_plugin/KDLKinematicsPlugin
kinematics_solver_search_resolution: 0.005
kinematics_solver_timeout: 0.05
39 changes: 39 additions & 0 deletions clam_moveit_config/config/ompl_planning.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
planner_configs:
SBLkConfigDefault:
type: geometric::SBL
LBKPIECEkConfigDefault:
type: geometric::LBKPIECE
RRTkConfigDefault:
type: geometric::RRT
RRTConnectkConfigDefault:
type: geometric::RRTConnect
LazyRRTkConfigDefault:
type: geometric::LazyRRT
ESTkConfigDefault:
type: geometric::EST
KPIECEkConfigDefault:
type: geometric::KPIECE
RRTStarkConfigDefault:
type: geometric::RRTstar
BKPIECEkConfigDefault:
type: geometric::BKPIECE
arm:
planner_configs:
- SBLkConfigDefault
- LBKPIECEkConfigDefault
- RRTkConfigDefault
- RRTConnectkConfigDefault
- ESTkConfigDefault
- KPIECEkConfigDefault
- BKPIECEkConfigDefault
- RRTStarkConfigDefault
gripper:
planner_configs:
- SBLkConfigDefault
- LBKPIECEkConfigDefault
- RRTkConfigDefault
- RRTConnectkConfigDefault
- ESTkConfigDefault
- KPIECEkConfigDefault
- BKPIECEkConfigDefault
- RRTStarkConfigDefault
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<launch>

</launch>
3 changes: 3 additions & 0 deletions clam_moveit_config/launch/clam_moveit_sensor_manager.launch
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<launch>

</launch>
40 changes: 40 additions & 0 deletions clam_moveit_config/launch/move_group.launch
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
<launch>

<include file="$(find clam_moveit_config)/launch/planning_context.launch" />

<arg name="debug" default="false" />
<arg unless="$(arg debug)" name="launch_prefix" value="" />
<arg if="$(arg debug)" name="launch_prefix" value="gdb --ex run --args" />

<arg unless="$(arg debug)" name="command_args" value="" />
<arg if="$(arg debug)" name="command_args" value="--debug" />

<arg name="allow_trajectory_execution" default="false"/>
<arg name="max_safe_path_cost" default="1"/>
<arg name="publish_monitored_planning_scene" default="false"/>

<include ns="move_group" file="$(find clam_moveit_config)/launch/planning_pipeline.launch">
<arg name="pipeline" value="ompl" />
</include>

<include ns="move_group" file="$(find clam_moveit_config)/launch/trajectory_execution.launch">
<arg name="moveit_controller_manager" value="clam" />
<arg name="moveit_manage_controllers" value="false" />
</include>

<include ns="move_group" file="$(find clam_moveit_config)/launch/sensor_manager.launch">
<arg name="moveit_sensor_manager" value="clam" />
</include>

<node name="move_group" launch-prefix="$(arg launch_prefix)" pkg="moveit_ros_move_group" type="move_group_action_server" respawn="false" output="screen" args="$(arg command_args)">
<param name="allow_trajectory_execution" value="$(arg allow_trajectory_execution)"/>
<param name="max_safe_path_cost" value="$(arg max_safe_path_cost)"/>

<!-- Publish the planning scene of the physical robot so that rviz plugin can know actual robot -->
<param name="planning_scene_monitor/publish_planning_scene" value="$(arg publish_monitored_planning_scene)" />
<param name="planning_scene_monitor/publish_geometry_updates" value="$(arg publish_monitored_planning_scene)" />
<param name="planning_scene_monitor/publish_state_updates" value="$(arg publish_monitored_planning_scene)" />
<param name="planning_scene_monitor/publish_transforms_updates" value="$(arg publish_monitored_planning_scene)" />
</node>

</launch>
Loading

0 comments on commit e74d63f

Please sign in to comment.