katana_driver: katana | katana_arm_gazebo | katana_description | katana_gazebo_plugins | katana_joint_movement_adapter | katana_msgs | katana_teleop | katana_trajectory_filter | katana_tutorials | kni

Stack Summary

This stack contains hardware drivers, Gazebo plugins and other basic functionalities for the Neuronics Katana family of robot arms. Specifically, it provides:

  • JointTrajectory and FollowJointTrajectory execution on the physical arm (packages katana, kni, katana_trajectory_filter, katana_msgs),
  • simulation of the Katana arm in Gazebo (packages katana_gazebo_plugins, katana_arm_gazebo),
  • URDF descriptions (package katana_description),
  • simple teleoperation (packages katana_teleop, katana_joint_movement_adapter), and
  • some demo programs (package katana_tutorials).

Installation

For installation instructions, see uos-ros-pkg.

Running the Katana stack

You should set your Katana type as an environment variable, for example in your .bashrc/.zshrc. At the moment, only the Katana 450 6M90A and the Katana 300 6M180 (experimental) are supported. Include one of the following lines:

export KATANA_TYPE="katana_300_6m180"
export KATANA_TYPE="katana_450_6m90a"

To start the Katana node for a real robot arm, run:

roslaunch katana katana.launch

If you want to run the Gazebo simulation, run:

roslaunch katana_arm_gazebo katana_arm.launch

While one of those launch files is running, you can move the arm around using the keyboard:

roslaunch katana_teleop katana_teleop_key.launch

For the complete arm navigation pipeline, including motion planning, inverse kinematics, collision environment etc., run one of the following launch files instead of katana.launch/katana_arm.launch:

roslaunch katana_arm_navigation katana_arm_navigation.launch
roslaunch katana_arm_navigation katana_arm_navigation_gazebo.launch

To test if following joint trajectories work, use the following file:

rosrun katana_openrave_test move_arm_joint_goal

To test the inverse kinematics, run this file:

rosrun katana_openrave_test move_arm_simple_pose_goal

This will generate random goal poses, try to calculate an inverse kinematics solution for those and move the arm there. Don't be alarmed by the following error messages:

[ERROR] [1316517655.045068713, 62.304000000]: Incorrect number of elements in IK output.

This just means that an inverse kinematics solution for this pose could not be found. You will get a lot of those, but after a while the arm should move to a correct pose.

Documentation

This whole stack is being actively developed. One major feature that we are going to add is a grasp planner, so that the grasping pipeline can be used. If you use these packages and have any comments/bug reports/patches, or would like to contribute, don't hesitate to contact us!

katana.png

Wiki: katana_driver (last edited 2011-09-20 11:24:48 by MartinGuenther)