[ros-users] using ROS with a new 7-DOF arm hardware

Patrick Beeson beeson.p at gmail.com
Mon Jun 13 18:36:56 UTC 2011

I'm attempting to try and utilize novel, custom-made 7-DOF modular arm
hardware with ROS, and I'd like any help people are willing to provide
in starting from scratch with getting a new arm working in ROS.  I
have lots of familiarity with ROS, writing ROS drivers for perception
and navigation hardware, but, I'm not a manipulation or kinematics
expert, and I'm having difficulties understanding exactly what I do
and do not need to implement on my end to use the move_arm high level

Having previously used the navigation stack, and other such stacks,  I
assumed that I would need some sort of driver that would subscribe to
some topic that would send joint positions or velocities based on
higher level kinematics planning given URDF models of the joints.
Instead, what I found was this tutorial:
which seems to imply the need for writing my own kinematics plugin in
addition to my own joint trajectory execution node.  I can certainly
do this given some time; however, previous emails implied a
generic_kinematics package in unstable that would be useful, but after
searching through the Subversion repository, a generic_kinematics
package does not exist anywhere.

So, I'm going to start my creating a joint_trajectory_execution node
that has a a joint_trajectory_action interface and does soft-realtime
control of my joints behind the scenes.  What I need help determining
is if/where any generic kinematics packages exist or if I need to
write my own for my arm.  If I need to write my own, more details on
how to get this working with the other relevant modules would be
useful.  If a generic package exists, where is it?  How do I feed it
the model of my arm?  Also (tutorial step 5) there are lots of other
bits and pieces lying around that need to get tied together that
aren't well documented.  All in all, what I need is a better tutorial
that gives a much more simplified explanation as to what pieces are
needed, how they fit together (from move_arm down to hardware
interface), what parameters are definitely needed and which can be
ignored, etc.

Any help on this would be appreciated.  I'm sure I could figure all of
this out given enough time, but these days, time is not a great luxury
that I have, and part of the reason I use ROS is that it has been easy
to create, use, swap nodes, messages, topics with relative ease.  the
ARM documentation however is quite lacking and the large number of
motion planning, kinematics, controller, and action modules are not
well documented as to what is deprecated, how things fit together,

Thanks in advance,


More information about the ros-users mailing list