-
Notifications
You must be signed in to change notification settings - Fork 6
Puppet Example
Use puppet as an example of controlling Baxter using joint velocity control.
Start the puppet example from an RSDK terminal session, specifying the left
or right
arm as the "puppet", ex:
$ rosrun joint_velocity puppet.py right
Grab the other arm (e.g. the left in this case) at the cuff and move it around using '0 G' mode to puppet the arm specified on the command line.
There are two modes of control for Baxter's arms, joint position and joint velocity control. This example will mirror any movement (joint velocities) on one arm to the other in 0 G mode.
For more information on Baxter's arms, see Using the Arms.
See the usage on the command line by passing puppet.py the -h
, help argument:
$ rosrun joint_velocity puppet.py -h
Usage:
puppet.py [-h] [-a AMPLIFICATION] limb
Positional Arguments
limb
- Specify the limb to puppet: left or right
Optional Arguments
-h, --help
- Show this help message and exit
-a AMPLIFICATION, --amplification AMPLIFICATION
- Amplification to apply to the puppeted arm
See the API Reference page for details.
- Control Joint Velocity:
/robot/limb/<limb>/command_joint_velocities
Publications:
- /robot/limb/right/command_joint_angles [baxter_msgs/JointPositions]
- /robot/limb/right/joint_command_mode [baxter_msgs/JointCommandMode]
- /robot/limb/left/joint_command_mode [baxter_msgs/JointCommandMode]
- /rosout [rosgraph_msgs/Log]
- /robot/limb/left/command_joint_angles [baxter_msgs/JointPositions]
- /robot/limb/left/command_joint_velocities [baxter_msgs/JointVelocities]
- /robot/set_super_enable [std_msgs/Bool]
- /robot/limb/right/command_joint_velocities [baxter_msgs/JointVelocities]
Subscriptions:
- /robot/limb/right/joint_states [sensor_msgs/JointState]
- /robot/limb/left/joint_states [sensor_msgs/JointState]
- /sdk/robot/state [baxter_msgs/AssemblyState]
- Limb class:
limb.py
For common issues specific to using wobbler with Baxter, check out the Troubleshooting page.