Documentation Status

Cannot load information on name: smart_arm_controller, distro: electric, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index.
Cannot load information on name: smart_arm_controller, distro: fuerte, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index.
Cannot load information on name: smart_arm_controller, distro: groovy, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index.
Cannot load information on name: smart_arm_controller, distro: hydro, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index.
Cannot load information on name: smart_arm_controller, distro: indigo, which means that it is not yet in our index. Please see this page for information on how to submit your repository to our index.

Supported Hardware

This controller will only work with the Crust Crawler Smart Arm with Dual Gripper Claw.
AX-12 Smart Arm
AX-18 Smart Arm
AX-12/AX-18 Dual Gripper.

This controller also requires a USB2Dynamixel adapter and a power supply. We recommend the SMPS2Dynamixel adapter with the Bioloid Kit power supply.
USB2Dynamixel
SMPS2Dynamixel
CM-5 Power Supply

ROS API

smart_arm.yaml

The smart_arm.yaml configuration file contains all the parameters needed by dynamixel_controllers package's controller_manager node. The launch files provided will place the yaml file on the param server and load a smart_arm_controller by sending a list of joint controllers to the controller_spawner script. The smart_arm will run in the controller_manager node and you can specify angle positions for each joint on the smart arm. Depending on the value in the update_rate parameter, the smart_arm node will publish each joint's current state as well. Each controller type from the yaml file will create Publisher/Subscriber topics with the controller name (see dynamixel_controllers package documentation for description of available parameters).

Subscribed Topics

shoulder_pan_controller/command (std_msgs/Float64)
  • Subscribes to this topic for new commands. A command tells the shoulder_pan_joint to go to the specified angle in radians.
shoulder_pitch_controller/command (std_msgs/Float64)
  • Subscribes to this topic for new commands. A command tells the shoulder_pitch_joint to go to the specified angle in radians.
elbow_flex_controller/command (std_msgs/Float64)
  • Subscribes to this topic for new commands. A command tells the elbow_flex_joint to go to the specified angle in radians.
wrist_roll_controller/command (std_msgs/Float64)
  • Subscribes to this topic for new commands. A command tells the wrist_roll_joint to go to the specified angle in radians.
right_finger_controller/command (std_msgs/Float64)
  • Subscribes to this topic for new commands. A command tells the right_finger_joint to go to the specified angle in radians.
left_finger_controller/command (std_msgs/Float64)
  • Subscribes to this topic for new commands. A command tells the left_finger_joint to go to the specified angle in radians.
motor_states (dynamixel_msgs/MotorStateList)
  • Subscribes to this topic to get the raw servo feedback from the low-level driver. Uses this information to create the joint states that get published to the arm_controller/joint_move topic.

Published Topics

shoulder_pan_controller/state (dynamixel_msgs/JointState)
  • Joint state data from shoulder_pan joint servo.
shoulder_pitch_controller/state (dynamixel_msgs/JointState)
  • Joint state data from shoulder_pitch joint servos.
elbow_flex_controller/state (dynamixel_msgs/JointState)
  • Joint state data from elbow_flex joint servos.
wrist_roll_controller/state (dynamixel_msgs/JointState)
  • Joint state data from wrist_roll joint servo.
right_finger_controller/state (dynamixel_msgs/JointState)
  • Joint state data from right_finger joint servo.
left_finger_controller/state (dynamixel_msgs/JointState)
  • Joint state data from left_finger joint servo.

Wiki: smart_arm_controller (last edited 2011-09-10 14:16:32 by AntonsRebguns)