## title = transmission ## description = Transmissions link actuators to joints and represents their mechanical coupling ## XMLCategory <> == URDF Transmissions == The transmission element is an extension to the [[urdf/XML|URDF]] robot description model that is used to describe the relationship between an actuator and a joint. This allows one to model concepts such as gear ratios and parallel linkages. A transmission transforms efforts/flow variables such that their product - power - remains constant. Multiple actuators may be linked to multiple joints through complex transmission. Here is an example of a transmission element: {{{#!xml transmission_interface/SimpleTransmission EffortJointInterface 50 EffortJointInterface }}} === Attributes === The transmission element has one attribute: . '''name''' (required) . Specifies the unique name of a transmission === Elements === The transmission has the following elements: . '''''' (one occurrence) . Specifies the transmission type. . '''''' (one or more occurrences) . A joint the transmission is connected to. The joint is specified by its '''name''' attribute, and the following sub-elements: . '''''' (one or more occurrences) . Specifies a supported joint-space [[ros_control#Hardware_Interfaces|hardware interface]]. Note that the value of this tag should be '''EffortJointInterface''' when this transmission is loaded in Gazebo and '''hardware_interface/EffortJointInterface''' when this transmission is loaded in RobotHW. . '''''' (one or more occurrences) . An actuator the transmission is connected to. The actuator is specified by its '''name''' attribute, and the following sub-elements: . '''''' (optional) . Specifies a mechanical reduction at the joint/actuator transmission. This tag may not be needed for all transmissions. . '''''' (optional) (one or more occurrences) . Specifies a supported joint-space [[ros_control#Hardware_Interfaces|hardware interface]]. Note that '''''' tag should only be specified here for ROS releases prior to Indigo. The correct place to specify this tag is in '''''' tag. More details about this can be found [[https://github.com/ros-controls/ros_control/issues/164|here]]. === Development Notes === Currently, only the [[ros_control]] project uses this transmission elements. Developing an updated transmission format that is extensible to all use cases was complicated endeavor that can be reviewed [[https://github.com/ros-simulation/gazebo_ros_pkgs/issues/52|here]].