Skip to content

Instantly share code, notes, and snippets.

<launch>
<rosparam command="load"
file="$(find urdf_sim_tutorial)/config/joints.yaml"
ns="my_hand_joint_state_controller" />
<rosparam command="load"
file="$(find rrbot_control)/config/finger5_0.yaml"
ns="finger5_0_controller" />
<!-- for finger5 --> <!-- change to continuous -->
<joint name="hand_base_to_finger5" type="continuous">
<parent link="hand_base"/>
<child link="finger5"/>
<origin xyz="-0.02861 0.11081 0.00842 " rpy="0 ${2*PI/360*7} ${2*PI/360*6}"/>
<axis xyz="1 0 0"/> <!-- origin 1 0 0 -->
<limit effort="30" velocity="1"/>
</joint>
<launch>
<!-- these are the arguments you can pass this launch file, for example paused:=true -->
<arg name="paused" default="false"/>
<arg name="use_sim_time" default="true"/>
<arg name="gui" default="true"/>
<arg name="headless" default="false"/>
<arg name="debug" default="false"/>
<!-- We resume the logic in empty_world.launch, changing only the name of the world to be launched -->
<!-- my try to solve pid. if no use, delete it -->
<rosparam command="load"
file="$(find rrbot_control)/config/gazebo_ros_control_params.yaml"/>
# gazebo_ros_control_params.yaml
gazebo_ros_control/pid_gains:
hand_base_to_finger5: {p: 100, i: 0.01, d: 10}
# more joint need to add
# gazebo_ros_control_params.yaml
gazebo_ros_control/pid_gains:
hand_base_to_finger5: {p: 100, i: 0.01, d: 10}
finger5_to_finger5_1: {p: 100, i: 0.01, d: 10}
hand_base_to_finger4: {p: 100, i: 0.01, d: 10}
finger4_to_finger4_1: {p: 100, i: 0.01, d: 10}
hand_base_to_finger3: {p: 100, i: 0.01, d: 10}
finger3_to_finger3_1: {p: 100, i: 0.01, d: 10}
hand_base_to_finger2: {p: 100, i: 0.01, d: 10}
finger2_to_finger2_1: {p: 100, i: 0.01, d: 10}
<launch>
<rosparam command="load"
file="$(find urdf_sim_tutorial)/config/joints.yaml"
ns="my_hand_joint_state_controller" />
<rosparam command="load"
file="$(find rrbot_control)/config/finger5_0.yaml"
ns="finger5_0_controller" />
<launch>
<rosparam command="load"
file="$(find urdf_sim_tutorial)/config/joints.yaml"
ns="my_hand_joint_state_controller" />
<node name="r2d2_controller_spawner" pkg="controller_manager" type="spawner"
args="my_hand_joint_state_controller"/>
</launch>
# The joint state controller handles publishing transforms for any moving joints
type: "joint_state_controller/JointStateController"
publish_rate: 50
<!-- ros_control plugin --> <!-- original name rrbot -->
<gazebo>
<plugin name="gazebo_ros_control" filename="libgazebo_ros_control.so">
<robotNamespace>/</robotNamespace>
<robotSimType>gazebo_ros_control/DefaultRobotHWSim</robotSimType>
<legacyModeNS>true</legacyModeNS>
</plugin>
</gazebo>