-
Notifications
You must be signed in to change notification settings - Fork 78
Description
Hi everyone,
I am trying to set up the transmission mechanism to work with my dynamixel-based manipulator. Of course I am using this plugin for the hardware. I am using humble on Ubuntu 22.04.
I have a 3 Dof manipulator with forward position controller and joint trajectory controller. Both using a position interface. I want to add a transmission element on the tibia joint (a SimpleTrasmission now for simplicity). The only modification that I have made is in the ros2_control tag in the urdf, in which I have added the following block:
<transmission name="tibia_transmission">
<plugin>transmission_interface/SimpleTransmission</plugin>
<actuator name="tibia_actuator" role="tibia_actuator">
</actuator>
<joint name="tibia_joint" role="tibia_joint">
<hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface>
<mechanicalReduction>40.0</mechanicalReduction>
</joint>
</transmission>
I have tried different modifications of this snippet ( instead of , hardware_interface instead of hardwareInterface, mechanical_reduction instead of mechanical_reduction, EffortJointInterface instead of PositionJointInterface). Everything loads smoothly, but the system is simply ignoring the mechanical reduction. My question is, should I modify the dynamixel_hardware plugin?
I am also reporting the yaml file of control.
controller_manager:
ros__parameters:
update_rate: 30
#use_sim_time: true
joint_state_broadcaster:
type: joint_state_broadcaster/JointStateBroadcaster
forward_position_controller:
type: forward_command_controller/ForwardCommandController
joint_trajectory_position_controller:
type: joint_trajectory_controller/JointTrajectoryController
forward_position_controller:
ros__parameters:
joints:
- coxa_joint
- femur_joint
- tibia_joint
interface_name: position
joint_trajectory_position_controller:
ros__parameters:
joints:
- coxa_joint
- femur_joint
- tibia_joint
command_interfaces:
- position
state_interfaces:
- position
#- velocity
#- effort
action_monitor_rate: 20.0 # Defaults to 20
allow_partial_joints_goal: false # Defaults to false
open_loop_control: true
allow_integration_in_goal_trajectories: true
constraints:
stopped_velocity_tolerance: 0.01 # Defaults to 0.01
goal_time: 0.0 # Defaults to 0.0 (start immediately)