- numpy (v1.26)
 - dynamixel_sdk
 - ROS2 (rclpy)
 
Internal Dependencies:
Manipulator Control is a lightweight node for controlling a 3DOF arm using Dynamixel actuators with Quintic Trajectories. It also contains a setpoint queue for processing multi-step commands, such as pre-written stow + unstow procedures.
TrajectoryModes.JOINT_SPACE- Joint space quintic trajectoryTrajectoryModes.TASK_SPACE- Task space quintic trajectoryTrajectoryModes.LIVE_TRACK- Skips quintic trajectory, queues arm motion instantly for live tracking incoming positions
| Topic | Type | Description | 
|---|---|---|
/arm_status | 
ArmStatus (see CustomMessages) | A recurring message (100Hz) with information about the Arm's position, velocity, and current motion plans | 
/ee_pos | 
geometry_msgs/PointStamped | A recurring message (100 Hz) with the 3D Position of the End Effector | 
| Topic | Type | Description | 
|---|---|---|
/move_arm_command | 
ArmCommand (see CustomMessages) | An incomming arm motion command. Interrupts any previous motion plans | 
/force_grasp | 
std_msgs/Bool | A command to open/close the gripper directly | 
| Topic | Parameters | Description | 
|---|---|---|
/stow_arm | 
None | Queues the stow routine | 
/unstow_arm | 
None | Queues the unstow routine | 
| Argument | Type | Description | 
|---|---|---|
| None |