diff --git a/talos_controller_configuration/config/joint_trajectalosy_controllers.yaml b/talos_controller_configuration/config/joint_trajectalosy_controllers.yaml deleted file mode 100644 index 82efac763aeb6053e8e4d7e49f57e4f1661703db..0000000000000000000000000000000000000000 --- a/talos_controller_configuration/config/joint_trajectalosy_controllers.yaml +++ /dev/null @@ -1,53 +0,0 @@ -left_leg_controller: - type: "position_controllers/JointTrajectoryController" - joints: - - leg_left_1_joint - - leg_left_2_joint - - leg_left_3_joint - - leg_left_4_joint - - leg_left_5_joint - - leg_left_6_joint - constraints: - goal_time: &goal_time_constraint 0.6 - stopped_velocity_tolerance: &stopped_velocity_constraint 0.05 - arm_left_1_joint: - goal: &goal_pos_constraint 0.02 - arm_left_2_joint: - goal: *goal_pos_constraint - arm_left_3_joint: - goal: *goal_pos_constraint - arm_left_4_joint: - goal: *goal_pos_constraint - arm_left_5_joint: - goal: *goal_pos_constraint - arm_left_6_joint: - goal: *goal_pos_constraint - - stop_trajectory_duration: 0.0 - -right_leg_controller: - type: "position_controllers/JointTrajectoryController" - joints: - - leg_right_1_joint - - leg_right_2_joint - - leg_right_3_joint - - leg_right_4_joint - - leg_right_5_joint - - leg_right_6_joint - constraints: - goal_time: *goal_time_constraint - stopped_velocity_tolerance: *stopped_velocity_constraint - arm_right_1_joint: - goal: *goal_pos_constraint - arm_right_2_joint: - goal: *goal_pos_constraint - arm_right_3_joint: - goal: *goal_pos_constraint - arm_right_4_joint: - goal: *goal_pos_constraint - arm_right_5_joint: - goal: *goal_pos_constraint - arm_right_6_joint: - goal: *goal_pos_constraint - - stop_trajectory_duration: 0.0 diff --git a/talos_controller_configuration/config/joint_trajectory_controllers.yaml b/talos_controller_configuration/config/joint_trajectory_controllers.yaml new file mode 100644 index 0000000000000000000000000000000000000000..ea3f7da7c28a85f17271d42b5bfa894ecb10fbe2 --- /dev/null +++ b/talos_controller_configuration/config/joint_trajectory_controllers.yaml @@ -0,0 +1,172 @@ +torso_controller: + type: "position_controllers/JointTrajectoryController" + joints: + - torso_1_joint + - torso_2_joint + + constraints: + goal_time: &goal_time_constraint 0.6 + stopped_velocity_tolerance: &stopped_velocity_constraint 0.05 + torso_1_joint: + goal: &goal_pos_constraint 0.02 + torso_2_joint: + goal: *goal_pos_constraint + + stop_trajectory_duration: 0.0 + +head_controller: + type: "position_controllers/JointTrajectoryController" + joints: + - head_1_joint + - head_2_joint + + constraints: + goal_time: *goal_time_constraint + stopped_velocity_tolerance: *stopped_velocity_constraint + head_1_joint: + goal: *goal_pos_constraint + head_2_joint: + goal: *goal_pos_constraint + + stop_trajectory_duration: 0.0 + +left_arm_controller: + type: "position_controllers/JointTrajectoryController" + joints: + - arm_left_1_joint + - arm_left_2_joint + - arm_left_3_joint + - arm_left_4_joint + - arm_left_5_joint + - arm_left_6_joint + - arm_left_7_joint + constraints: + goal_time: *goal_time_constraint + stopped_velocity_tolerance: *stopped_velocity_constraint + arm_left_1_joint: + goal: *goal_pos_constraint + arm_left_2_joint: + goal: *goal_pos_constraint + arm_left_3_joint: + goal: *goal_pos_constraint + arm_left_4_joint: + goal: *goal_pos_constraint + arm_left_5_joint: + goal: *goal_pos_constraint + arm_left_6_joint: + goal: *goal_pos_constraint + arm_left_7_joint: + goal: *goal_pos_constraint + + stop_trajectory_duration: 0.0 + +right_arm_controller: + type: "position_controllers/JointTrajectoryController" + joints: + - arm_right_1_joint + - arm_right_2_joint + - arm_right_3_joint + - arm_right_4_joint + - arm_right_5_joint + - arm_right_6_joint + - arm_right_7_joint + constraints: + goal_time: *goal_time_constraint + stopped_velocity_tolerance: *stopped_velocity_constraint + arm_right_1_joint: + goal: *goal_pos_constraint + arm_right_2_joint: + goal: *goal_pos_constraint + arm_right_3_joint: + goal: *goal_pos_constraint + arm_right_4_joint: + goal: *goal_pos_constraint + arm_right_5_joint: + goal: *goal_pos_constraint + arm_right_6_joint: + goal: *goal_pos_constraint + arm_right_7_joint: + goal: *goal_pos_constraint + + stop_trajectory_duration: 0.0 + +right_gripper_controller: + type: "position_controllers/JointTrajectoryController" + joints: + - right_gripper_joint + + constraints: + goal_time: *goal_time_constraint + stopped_velocity_tolerance: *stopped_velocity_constraint + right_gripper_joint: + goal: *goal_pos_constraint + + stop_trajectory_duration: 0.0 + +left_gripper_controller: + type: "position_controllers/JointTrajectoryController" + joints: + - left_gripper_joint + + constraints: + goal_time: *goal_time_constraint + stopped_velocity_tolerance: *stopped_velocity_constraint + left_gripper_joint: + goal: *goal_pos_constraint + + stop_trajectory_duration: 0.0 + + +left_leg_controller: + type: "position_controllers/JointTrajectoryController" + joints: + - leg_left_1_joint + - leg_left_2_joint + - leg_left_3_joint + - leg_left_4_joint + - leg_left_5_joint + - leg_left_6_joint + constraints: + goal_time: *goal_time_constraint + stopped_velocity_tolerance: *stopped_velocity_constraint + arm_left_1_joint: + goal: *goal_pos_constraint + arm_left_2_joint: + goal: *goal_pos_constraint + arm_left_3_joint: + goal: *goal_pos_constraint + arm_left_4_joint: + goal: *goal_pos_constraint + arm_left_5_joint: + goal: *goal_pos_constraint + arm_left_6_joint: + goal: *goal_pos_constraint + + stop_trajectory_duration: 0.0 + +right_leg_controller: + type: "position_controllers/JointTrajectoryController" + joints: + - leg_right_1_joint + - leg_right_2_joint + - leg_right_3_joint + - leg_right_4_joint + - leg_right_5_joint + - leg_right_6_joint + constraints: + goal_time: *goal_time_constraint + stopped_velocity_tolerance: *stopped_velocity_constraint + arm_right_1_joint: + goal: *goal_pos_constraint + arm_right_2_joint: + goal: *goal_pos_constraint + arm_right_3_joint: + goal: *goal_pos_constraint + arm_right_4_joint: + goal: *goal_pos_constraint + arm_right_5_joint: + goal: *goal_pos_constraint + arm_right_6_joint: + goal: *goal_pos_constraint + + stop_trajectory_duration: 0.0 diff --git a/talos_controller_configuration/launch/full_body_position_controllers.launch b/talos_controller_configuration/launch/full_body_position_controllers.launch new file mode 100644 index 0000000000000000000000000000000000000000..53f34d5dcf54da36974c1942e20c464ab8afa90d --- /dev/null +++ b/talos_controller_configuration/launch/full_body_position_controllers.launch @@ -0,0 +1,29 @@ +<launch> + + <rosparam command="load" file="$(find talos_controller_configuration)/config/joint_trajectory_controllers.yaml" /> + + <!-- Spawn upper-body joint trajectory controllers --> + <node name="upper_body_controllers_spawner" + pkg="controller_manager" type="spawner" output="screen" + args="torso_controller + head_controller + left_arm_controller + right_arm_controller + left_gripper_controller + right_gripper_controller + left_leg_controller + right_leg_controller" /> + + <!-- Point head action --> + <group ns="head_controller"> + <node name="point_head_action" pkg="head_action" type="head_action" output="screen" > + <rosparam> + pan_link: head_1_link + tilt_link: head_2_link + success_angle_threshold: 0.01 + </rosparam> + </node> + </group> + + +</launch> diff --git a/talos_controller_configuration/launch/legs_position_controllers.launch b/talos_controller_configuration/launch/legs_position_controllers.launch new file mode 100644 index 0000000000000000000000000000000000000000..630ba4970436fe153701ee806b962c38efd3283d --- /dev/null +++ b/talos_controller_configuration/launch/legs_position_controllers.launch @@ -0,0 +1,11 @@ +<launch> + + <rosparam command="load" file="$(find talos_controller_configuration)/config/joint_trajectory_controllers.yaml" /> + + <!-- Spawn legs joint trajectory controllers --> + <node name="upper_body_controllers_spawner" + pkg="controller_manager" type="spawner" output="screen" + args="left_leg_controller + right_leg_controller" /> + +</launch> diff --git a/talos_controller_configuration/launch/upper_body_position_controllers.launch b/talos_controller_configuration/launch/upper_body_position_controllers.launch new file mode 100644 index 0000000000000000000000000000000000000000..f2b9dbe8d982e94f46dd3cc67671a59e270271b6 --- /dev/null +++ b/talos_controller_configuration/launch/upper_body_position_controllers.launch @@ -0,0 +1,27 @@ +<launch> + + <rosparam command="load" file="$(find talos_controller_configuration)/config/joint_trajectory_controllers.yaml" /> + + <!-- Spawn upper-body joint trajectory controllers --> + <node name="upper_body_controllers_spawner" + pkg="controller_manager" type="spawner" output="screen" + args="torso_controller + head_controller + left_arm_controller + right_arm_controller + left_gripper_controller + right_gripper_controller" /> + + <!-- Point head action --> + <group ns="head_controller"> + <node name="point_head_action" pkg="head_action" type="head_action" output="screen" > + <rosparam> + pan_link: head_1_link + tilt_link: head_2_link + success_angle_threshold: 0.01 + </rosparam> + </node> + </group> + + +</launch> diff --git a/talos_description/meshes/gripper/gripper_motalos_double.STL b/talos_description/meshes/gripper/gripper_motor_double.STL similarity index 100% rename from talos_description/meshes/gripper/gripper_motalos_double.STL rename to talos_description/meshes/gripper/gripper_motor_double.STL diff --git a/talos_description/meshes/gripper/gripper_motalos_double_collision.STL b/talos_description/meshes/gripper/gripper_motor_double_collision.STL similarity index 100% rename from talos_description/meshes/gripper/gripper_motalos_double_collision.STL rename to talos_description/meshes/gripper/gripper_motor_double_collision.STL diff --git a/talos_description/meshes/gripper/gripper_motor_single.STL b/talos_description/meshes/gripper/gripper_motor_single.STL new file mode 100644 index 0000000000000000000000000000000000000000..c139310128a6f165849531a5f33619343aa44e35 Binary files /dev/null and b/talos_description/meshes/gripper/gripper_motor_single.STL differ diff --git a/talos_description/meshes/gripper/gripper_motor_single_collision.STL b/talos_description/meshes/gripper/gripper_motor_single_collision.STL new file mode 100644 index 0000000000000000000000000000000000000000..c8bac51be45b381929d45fb583a207e69783acac Binary files /dev/null and b/talos_description/meshes/gripper/gripper_motor_single_collision.STL differ diff --git a/talos_description/meshes/gripper/inner_single.STL b/talos_description/meshes/gripper/inner_single.STL new file mode 100644 index 0000000000000000000000000000000000000000..70f1fba94c8a9edd3a9a9f9f272fef1e7609bda7 Binary files /dev/null and b/talos_description/meshes/gripper/inner_single.STL differ diff --git a/talos_description/meshes/gripper/inner_single_collision.STL b/talos_description/meshes/gripper/inner_single_collision.STL new file mode 100644 index 0000000000000000000000000000000000000000..56a62d4857518ed639770154f7c0983087344860 Binary files /dev/null and b/talos_description/meshes/gripper/inner_single_collision.STL differ diff --git a/talos_description/meshes/torso/toso_1.STL b/talos_description/meshes/torso/torso_1.STL similarity index 100% rename from talos_description/meshes/torso/toso_1.STL rename to talos_description/meshes/torso/torso_1.STL diff --git a/talos_description/robots/talos_arm.urdf.xacro b/talos_description/robots/talos_arm.urdf.xacro index af91b2e14dc80a6f9c68d74af644160f8876c8a9..dcf152cab4c2e57565d668442b7c65ac1a9cc780 100644 --- a/talos_description/robots/talos_arm.urdf.xacro +++ b/talos_description/robots/talos_arm.urdf.xacro @@ -8,13 +8,13 @@ To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. --> -<robot name="talos" xmlns:xacro="http://www.ros.org/wiki/xacro" +<robot name="talos" xmlns:xacro="http://ros.org/wiki/xacro" xmlns:sensor="http://playerstage.sourceforge.net/gazebo/xmlschema/#sensor" xmlns:controller="http://playerstage.sourceforge.net/gazebo/xmlschema/#controller" xmlns:interface="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface"> <xacro:include filename="$(find talos_description)/urdf/arm/arm.urdf.xacro" /> - <xacro:include filename="$(find talos_description)/urdf/gripper/gripper.urdf.xacro" /> + <xacro:include filename="$(find talos_description)/urdf/gripper/gripper_v2.urdf.xacro" /> <link name="talos_2_link"> <inertial> diff --git a/talos_description/robots/talos_full.urdf.xacro b/talos_description/robots/talos_full.urdf.xacro index 633285900d459c0f5998a59c425a3015348272c7..88ec02537bff568c8ee54e267a2638960d233a43 100644 --- a/talos_description/robots/talos_full.urdf.xacro +++ b/talos_description/robots/talos_full.urdf.xacro @@ -8,7 +8,7 @@ To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. --> -<robot name="talos" xmlns:xacro="http://www.ros.org/wiki/xacro" +<robot name="talos" xmlns:xacro="http://ros.org/wiki/xacro" xmlns:sensor="http://playerstage.sourceforge.net/gazebo/xmlschema/#sensor" xmlns:controller="http://playerstage.sourceforge.net/gazebo/xmlschema/#controller" xmlns:interface="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface"> @@ -17,7 +17,7 @@ <xacro:include filename="$(find talos_description)/urdf/head/head.urdf.xacro" /> <xacro:include filename="$(find talos_description)/urdf/arm/arm.urdf.xacro" /> <xacro:include filename="$(find talos_description)/urdf/sensors/ftsensor.urdf.xacro" /> - <xacro:include filename="$(find talos_description)/urdf/gripper/gripper.urdf.xacro" /> + <xacro:include filename="$(find talos_description)/urdf/gripper/gripper_v2.urdf.xacro" /> <xacro:include filename="$(find talos_description)/urdf/leg/leg_v2.urdf.xacro" /> <xacro:talos_torso name="torso" /> diff --git a/talos_description/robots/talos_gripper.urdf.xacro b/talos_description/robots/talos_gripper.urdf.xacro new file mode 100644 index 0000000000000000000000000000000000000000..897316815a9a8054983b4aea352146b03756c00a --- /dev/null +++ b/talos_description/robots/talos_gripper.urdf.xacro @@ -0,0 +1,29 @@ +<?xml version="1.0"?> +<!-- + + Copyright (c) 2016, PAL Robotics, S.L. + All rights reserved. + + This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License. + To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/ or send a letter to + Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. +--> +<robot name="talos" xmlns:xacro="http://ros.org/wiki/xacro" + xmlns:sensor="http://playerstage.sourceforge.net/gazebo/xmlschema/#sensor" + xmlns:controller="http://playerstage.sourceforge.net/gazebo/xmlschema/#controller" + xmlns:interface="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface"> + + <xacro:include filename="$(find talos_description)/urdf/gripper/gripper_v2.urdf.xacro" /> + + <xacro:include filename="$(find talos_description)/urdf/torso/torso.urdf.xacro" /> + + <xacro:talos_torso name="torso" /> + + <xacro:talos_gripper name="gripper" parent="torso_2_link"/> + + <!-- Generic simulatalos_gazebo plugins --> + <xacro:include filename="$(find talos_description)/gazebo/gazebo.urdf.xacro" /> + <!-- Materials for visualization --> + <xacro:include filename="$(find talos_description)/urdf/materials.urdf.xacro" /> + +</robot> diff --git a/talos_description/robots/talos_head.urdf.xacro b/talos_description/robots/talos_head.urdf.xacro index 7204ac38995ffc2f8fb1d9486cfebd74a4c7ae53..4c0e63d5702f90b3b25eb476ea3d57d0ed3b7032 100644 --- a/talos_description/robots/talos_head.urdf.xacro +++ b/talos_description/robots/talos_head.urdf.xacro @@ -8,7 +8,7 @@ To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. --> -<robot name="talos" xmlns:xacro="http://www.ros.org/wiki/xacro" +<robot name="talos" xmlns:xacro="http://ros.org/wiki/xacro" xmlns:sensor="http://playerstage.sourceforge.net/gazebo/xmlschema/#sensor" xmlns:controller="http://playerstage.sourceforge.net/gazebo/xmlschema/#controller" xmlns:interface="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface"> diff --git a/talos_description/robots/talos_lower_body.urdf.xacro b/talos_description/robots/talos_lower_body.urdf.xacro index 6a5af6e6afb8489013ab35876b5e5a87af91abb4..886b2ec27969941173992fb62cda2353eac27697 100644 --- a/talos_description/robots/talos_lower_body.urdf.xacro +++ b/talos_description/robots/talos_lower_body.urdf.xacro @@ -8,7 +8,7 @@ To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. --> -<robot name="talos" xmlns:xacro="http://www.ros.org/wiki/xacro" +<robot name="talos" xmlns:xacro="http://ros.org/wiki/xacro" xmlns:sensor="http://playerstage.sourceforge.net/gazebo/xmlschema/#sensor" xmlns:controller="http://playerstage.sourceforge.net/gazebo/xmlschema/#controller" xmlns:interface="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface"> diff --git a/talos_description/robots/talos_lower_body_v1.urdf.xacro b/talos_description/robots/talos_lower_body_v1.urdf.xacro index 2d1ef4f43893521011d2a9070862c6ca9453eb82..b9d86aff6d2dcf9493f636683859cbbef957ec01 100644 --- a/talos_description/robots/talos_lower_body_v1.urdf.xacro +++ b/talos_description/robots/talos_lower_body_v1.urdf.xacro @@ -8,7 +8,7 @@ To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. --> -<robot name="talos" xmlns:xacro="http://www.ros.org/wiki/xacro" +<robot name="talos" xmlns:xacro="http://ros.org/wiki/xacro" xmlns:sensor="http://playerstage.sourceforge.net/gazebo/xmlschema/#sensor" xmlns:controller="http://playerstage.sourceforge.net/gazebo/xmlschema/#controller" xmlns:interface="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface"> diff --git a/talos_description/robots/talos_lower_body_v2.urdf.xacro b/talos_description/robots/talos_lower_body_v2.urdf.xacro index 6deb9f32d816fe435b0fcde2f1494f8dae4c0509..101bed5410e089b35aac1a9fc1d85de1ef93f7e4 100644 --- a/talos_description/robots/talos_lower_body_v2.urdf.xacro +++ b/talos_description/robots/talos_lower_body_v2.urdf.xacro @@ -8,7 +8,7 @@ To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. --> -<robot name="talos" xmlns:xacro="http://www.ros.org/wiki/xacro" +<robot name="talos" xmlns:xacro="http://ros.org/wiki/xacro" xmlns:sensor="http://playerstage.sourceforge.net/gazebo/xmlschema/#sensor" xmlns:controller="http://playerstage.sourceforge.net/gazebo/xmlschema/#controller" xmlns:interface="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface"> diff --git a/talos_description/robots/talos_torso.urdf.xacro b/talos_description/robots/talos_torso.urdf.xacro index 05a70cce3f4c69b493965e4de84e11acac4692cd..129bf7384d4408b0c10778890d9c6f7440ba3d3d 100644 --- a/talos_description/robots/talos_torso.urdf.xacro +++ b/talos_description/robots/talos_torso.urdf.xacro @@ -8,7 +8,7 @@ To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. --> -<robot name="talos" xmlns:xacro="http://www.ros.org/wiki/xacro" +<robot name="talos" xmlns:xacro="http://ros.org/wiki/xacro" xmlns:sensor="http://playerstage.sourceforge.net/gazebo/xmlschema/#sensor" xmlns:controller="http://playerstage.sourceforge.net/gazebo/xmlschema/#controller" xmlns:interface="http://playerstage.sourceforge.net/gazebo/xmlschema/#interface"> diff --git a/talos_description/robots/upload_gripper.launch b/talos_description/robots/upload_gripper.launch new file mode 100644 index 0000000000000000000000000000000000000000..723e285c4cb957ec31aa3f5140c516c503f7e885 --- /dev/null +++ b/talos_description/robots/upload_gripper.launch @@ -0,0 +1,6 @@ +<launch> + + <!-- Robot description --> + <param name="robot_description" command="$(find xacro)/xacro.py '$(find talos_description)/robots/talos_gripper.urdf.xacro'" /> + +</launch> diff --git a/talos_description/urdf/arm/arm.urdf.xacro b/talos_description/urdf/arm/arm.urdf.xacro index 1c7f08a94c68b84a1a522e352bcf39b10e069106..f020b56582734810dec708cd0b2702cf1d28b479 100644 --- a/talos_description/urdf/arm/arm.urdf.xacro +++ b/talos_description/urdf/arm/arm.urdf.xacro @@ -205,18 +205,22 @@ <gazebo reference="${name}_${side}_1_link"> <mu1>0.9</mu1> <mu2>0.9</mu2> + <material>Gazebo/FlatBlack</material> </gazebo> <gazebo reference="${name}_${side}_2_link"> <mu1>0.9</mu1> <mu2>0.9</mu2> + <material>Gazebo/FlatBlack</material> </gazebo> <gazebo reference="${name}_${side}_3_link"> <mu1>0.9</mu1> <mu2>0.9</mu2> + <material>Gazebo/FlatBlack</material> </gazebo> <gazebo reference="${name}_${side}_4_link"> <mu1>0.9</mu1> <mu2>0.9</mu2> + <material>Gazebo/FlatBlack</material> </gazebo> <gazebo reference="${name}_${side}_1_joint"> diff --git a/talos_description/urdf/arm/wrist.urdf.xacro b/talos_description/urdf/arm/wrist.urdf.xacro index f2c3af786290b92b0d798399ef8ca54a7a002ba6..efa3435abf660f039d5c3ce6eee3ddc80a300aa3 100644 --- a/talos_description/urdf/arm/wrist.urdf.xacro +++ b/talos_description/urdf/arm/wrist.urdf.xacro @@ -167,6 +167,7 @@ <gazebo reference="${name}_${side}_7_link"> <mu1>0.9</mu1> <mu2>0.9</mu2> + <material>Gazebo/FlatBlack</material> </gazebo> <gazebo reference="${name}_${side}_5_joint"> diff --git a/talos_description/urdf/gripper/gripper.gazebo.xacro b/talos_description/urdf/gripper/gripper.gazebo.xacro new file mode 100644 index 0000000000000000000000000000000000000000..9a2a7412a0281afe669e32ed86a2c157bd28a18b --- /dev/null +++ b/talos_description/urdf/gripper/gripper.gazebo.xacro @@ -0,0 +1,153 @@ +<?xml version="1.0"?> +<!-- + + Copyright (c) 2016, PAL Robotics, S.L. + All rights reserved. + + This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License. + To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/ or send a letter to + Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. +--> +<robot xmlns:xacro="http://ros.org/wiki/xacro"> + + <!-- VIRTUAL (mimic) JOINTS --> + <xacro:macro name="virtual_joints" params="name"> + <gazebo> + <plugin name="mimic_${name}_inner_double_joint" filename="libroboticsgroup_gazebo_mimic_joint_plugin.so"> + <joint>${name}_joint</joint> + <mimicJoint>${name}_inner_double_joint</mimicJoint> + <multiplier>1.0</multiplier> + <offset>0.0</offset> + <!-- <hasPID/> --> + </plugin> + <plugin name="mimic_${name}_fingertip_1_joint" filename="libroboticsgroup_gazebo_mimic_joint_plugin.so"> + <joint>${name}_joint</joint> + <mimicJoint>${name}_fingertip_1_joint</mimicJoint> + <multiplier>-1.0</multiplier> + <offset>0.0</offset> + <!-- <hasPID/> --> + </plugin> + + <plugin name="mimic_${name}_fingertip_2_joint" filename="libroboticsgroup_gazebo_mimic_joint_plugin.so"> + <joint>${name}_joint</joint> + <mimicJoint>${name}_fingertip_2_joint</mimicJoint> + <multiplier>-1.0</multiplier> + <offset>0.0</offset> + <!-- <hasPID/> --> + </plugin> + + <plugin name="mimic_${name}_inner_single_joint" filename="libroboticsgroup_gazebo_mimic_joint_plugin.so"> + <joint>${name}_joint</joint> + <mimicJoint>${name}_inner_single_joint</mimicJoint> + <multiplier>-1.0</multiplier> + <offset>0.0</offset> + <!-- <hasPID/> --> + </plugin> + + <plugin name="mimic_${name}_motor_single_joint" filename="libroboticsgroup_gazebo_mimic_joint_plugin.so"> + <joint>${name}_joint</joint> + <mimicJoint>${name}_motor_single_joint</mimicJoint> + <multiplier>-1.0</multiplier> + <offset>0.0</offset> + <!-- <hasPID/> --> + </plugin> + <plugin name="mimic_${name}_fingertip_3_joint" filename="libroboticsgroup_gazebo_mimic_joint_plugin.so"> + <joint>${name}_joint</joint> + <mimicJoint>${name}_fingertip_3_joint</mimicJoint> + <multiplier>-1.0</multiplier> + <offset>0.0</offset> + <!-- <hasPID/> --> + </plugin> + </gazebo> + +<!-- <plugin filename="libgazebo_underactuated_finger.so" name="gazebo_${name}_underactuated"> + <actuatedJoint>${name}_joint</actuatedJoint> + <virtualJoint> + <name>${name}_inner_double_joint</name> + <scale_factor>1.0</scale_factor> + </virtualJoint> --> +<!-- <virtualJoint> + <name>${name}_fingertip_1_joint</name> + <scale_factor>-1.0</scale_factor> + </virtualJoint> + <virtualJoint> + <name>${name}_fingertip_2_joint</name> + <scale_factor>-1.0</scale_factor> + </virtualJoint> + <virtualJoint> + <name>${name}_motor_single_joint</name> + <scale_factor>1.0</scale_factor> + </virtualJoint> + <virtualJoint> + <name>${name}_fingertip_3_joint</name> + <scale_factor>-1.0</scale_factor> + </virtualJoint> --> +<!-- </plugin> --> + + + <gazebo reference="${name}_joint"> + <implicitSpringDamper>1</implicitSpringDamper> + <provideFeedback>1</provideFeedback> + </gazebo> + + <gazebo reference="${name}_inner_double_joint"> + <implicitSpringDamper>1</implicitSpringDamper> + <provideFeedback>1</provideFeedback> + </gazebo> + + <gazebo reference="${name}_fingertip_1_joint"> + <implicitSpringDamper>1</implicitSpringDamper> + <provideFeedback>1</provideFeedback> + </gazebo> + + <gazebo reference="${name}_fingertip_2_joint"> + <implicitSpringDamper>1</implicitSpringDamper> + <provideFeedback>1</provideFeedback> + </gazebo> + + <gazebo reference="${name}_motor_single_joint"> + <implicitSpringDamper>1</implicitSpringDamper> + <provideFeedback>1</provideFeedback> + </gazebo> + + <gazebo reference="${name}_fingertip_3_joint"> + <implicitSpringDamper>1</implicitSpringDamper> + <provideFeedback>1</provideFeedback> + </gazebo> + + <gazebo reference="${name}_base_link"> + <material>Gazebo/FlatBlack</material> + </gazebo> + + <gazebo reference="${name}_motor_double_link"> + <material>Gazebo/Orange</material> + </gazebo> + + <gazebo reference="${name}_inner_double_link"> + <material>Gazebo/Orange</material> + </gazebo> + + <gazebo reference="${name}_fingertip_1_link"> + <material>Gazebo/FlatBlack</material> + </gazebo> + + <gazebo reference="${name}_motor_single_link"> + <material>Gazebo/Orange</material> + </gazebo> + + + <gazebo reference="${name}_inner_single_link"> + <material>Gazebo/Orange</material> + </gazebo> + + <gazebo reference="${name}_fingertip_2_link"> + <material>Gazebo/FlatBlack</material> + </gazebo> + + <gazebo reference="${name}_fingertip_3_link"> + <material>Gazebo/FlatBlack</material> + </gazebo> + + </xacro:macro> + +</robot> \ No newline at end of file diff --git a/talos_description/urdf/gripper/gripper.transmission.xacro b/talos_description/urdf/gripper/gripper.transmission.xacro new file mode 100644 index 0000000000000000000000000000000000000000..ea9b889e41a3218d737e07ddd89cc0db90329092 --- /dev/null +++ b/talos_description/urdf/gripper/gripper.transmission.xacro @@ -0,0 +1,38 @@ +<?xml version="1.0"?> +<!-- + + Copyright (c) 2011, PAL Robotics, S.L. + All rights reserved. + + This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License. + To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-nd/3.0/ or send a letter to + Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. +--> +<robot xmlns:xacro="http://ros.org/wiki/xacro"> + + <xacro:macro name="gripper_transmission" params="name reduction" > + <transmission name="${name}_trans"> + <type>transmission_interface/SimpleTransmission</type> + <actuator name="${name}_motor" > + <mechanicalReduction>${reduction}</mechanicalReduction> + </actuator> + <joint name="${name}_joint" > + <hardwareInterface>hardware_interface/PositionJointInterface</hardwareInterface> + </joint> + </transmission> + </xacro:macro> + + <xacro:macro name="gripper_virtual_transmission" params="name reduction" > + <transmission name="${name}_trans"> + <type>transmission_interface/SimpleTransmission</type> + <actuator name="${name}_motor" > + <mechanicalReduction>${reduction}</mechanicalReduction> + </actuator> + <joint name="${name}_joint" > + <hardwareInterface>hardware_interface/JointStateInterface</hardwareInterface> + </joint> + </transmission> + </xacro:macro> + + +</robot> \ No newline at end of file diff --git a/talos_description/urdf/gripper/gripper_v2.urdf.xacro b/talos_description/urdf/gripper/gripper_v2.urdf.xacro index 5fc0e7c20bfc688a1663506a8192f32ef020450e..8342e12b6f2e2f76ea853e97ddc6d2994f4510bc 100644 --- a/talos_description/urdf/gripper/gripper_v2.urdf.xacro +++ b/talos_description/urdf/gripper/gripper_v2.urdf.xacro @@ -3,9 +3,9 @@ <robot xmlns:xacro="http://ros.org/wiki/xacro"> <!--File includes--> - <!-- <xacro:include filename="$(find talos_description)/urdf/deg_to_rad.urdf.xacro" /> - <xacro:include filename="$(find talos_description)/urdf/gripper.transmission.xacro" /> - <xacro:include filename="$(find talos_description)/urdf/gripper.gazebo.xacro" /> --> + <xacro:include filename="$(find talos_description)/urdf/deg_to_rad.xacro" /> + <xacro:include filename="$(find talos_description)/urdf/gripper/gripper.transmission.xacro" /> + <xacro:include filename="$(find talos_description)/urdf/gripper/gripper.gazebo.xacro" /> <xacro:macro name="talos_gripper" params="name parent"> @@ -24,6 +24,7 @@ <geometry> <mesh filename="package://talos_description/meshes/gripper/base_link.STL" scale="1 1 1"/> </geometry> + <material name="DarkGrey"/> </visual> <collision> @@ -41,17 +42,17 @@ rpy="${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad} ${90.00000 * deg_to_rad}"/> <axis xyz="0 0 0" /> </joint> - - <!-- Joint gripper_motor_double (None) : child link -- -> parent link gripper_base_link --> <link name="${name}_motor_double_link"> <inertial> <origin xyz="0.02270 0.01781 -0.00977" rpy="0.00000 0.00000 0.00000"/> <mass value="0.16889"/> - <inertia ixx="0.00015900000" ixy="-0.00007000000" ixz="0.00003800000" - iyy="0.00022100000" iyz="-0.00005300000" - izz="0.00026800000"/> + <!-- In order for Gazebo not to explode we needed to add these 0.001 values to the diagonal, + also the tool pal_dynamics InertiaMassVisualization gave NaN on the computation of the inertia box --> + <inertia ixx="${0.00015900000 + 0.001}" ixy="-0.00007000000" ixz="0.00003800000" + iyy="${0.00022100000 + 0.001}" iyz="-0.00005300000" + izz="${0.00026800000 + 0.001}"/> </inertial> <visual> @@ -59,6 +60,7 @@ <geometry> <mesh filename="package://talos_description/meshes/gripper/gripper_motor_double.STL" scale="1 1 1"/> </geometry> + <material name="Orange"/> </visual> <collision> @@ -69,14 +71,13 @@ </collision> </link> - <joint name="${name}_motor_double_joint" type="revolute"> + <joint name="${name}_joint" type="revolute"> <parent link="${name}_base_link"/> <child link="${name}_motor_double_link"/> - <origin xyz="0.00000 0.02025 -0.03000" - rpy="${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad}"/> - <!-- You may want to change axis --> - <axis xyz="0 0 1" /> - <limit lower="${0.00000 * deg_to_rad}" upper="${60.00000 * deg_to_rad}" effort="1.0" velocity="1.0" /> + <origin xyz="0.0 0.02025 -0.03" + rpy="${0.0 * deg_to_rad} ${0.0 * deg_to_rad} ${0.0 * deg_to_rad}"/> + <axis xyz="1 0 0" /> + <limit lower="${-60.0 * deg_to_rad}" upper="${0.0 * deg_to_rad}" effort="1.0" velocity="1.0" /> <dynamics friction="1.0" damping="1.0"/> </joint> @@ -95,6 +96,7 @@ <geometry> <mesh filename="package://talos_description/meshes/gripper/inner_double.STL" scale="1 1 1"/> </geometry> + <material name="Orange"/> </visual> <collision> @@ -110,13 +112,208 @@ <child link="${name}_inner_double_link"/> <origin xyz="0.00000 0.00525 -0.05598" rpy="${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad}"/> - <!-- You may want to change axis --> - <axis xyz="0 0 1" /> - <limit lower="${0.00000 * deg_to_rad}" upper="${0.00000 * deg_to_rad}" effort="1.0" velocity="1.0" /> - <mimic joint="${name}_motor_double_joint" multiplier="${1.0}" offset="0.0" /> + <axis xyz="1 0 0" /> + <limit lower="${-60.0 * deg_to_rad}" upper="${0.0 * deg_to_rad}" effort="100.0" velocity="1.0" /> + <mimic joint="${name}_joint" multiplier="${1.0}" offset="0.0" /> - </joint> + </joint> + + + + <link name="${name}_fingertip_1_link"> + <inertial> + <origin xyz="0.00000 0.00460 -0.00254" rpy="0.00000 0.00000 0.00000"/> + <mass value="0.02630"/> + <inertia ixx="0.00000800000" ixy="0.00000000000" ixz="0.00000000000" + iyy="0.00000900000" iyz="0.00000100000" + izz="0.00000200000"/> + </inertial> + + <visual> + <origin xyz="0 0 0" rpy="0 0 0" /> + <geometry> + <mesh filename="package://talos_description/meshes/gripper/fingertip.STL" scale="1 1 1"/> + </geometry> + <material name="DarkGrey"/> + </visual> + + <collision> + <origin xyz="0 0 0" rpy="0 0 0" /> + <geometry> + <mesh filename="package://talos_description/meshes/gripper/fingertip_collision.STL" scale="1 1 1"/> + </geometry> + </collision> + </link> + + + <joint name="${name}_fingertip_1_joint" type="revolute"> + <parent link="${name}_inner_double_link"/> + <child link="${name}_fingertip_1_link"/> + <origin xyz="0.03200 0.04589 -0.06553" + rpy="${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad}"/> + <axis xyz="1 0 0" /> + <limit lower="${0.0 * deg_to_rad}" upper="${60.0 * deg_to_rad}" effort="100.0" velocity="1.0" /> + <mimic joint="${name}_joint" multiplier="${-1.0}" offset="0.0" /> + </joint> + + + <link name="${name}_fingertip_2_link"> + <inertial> + <origin xyz="0.00000 0.00460 -0.00254" rpy="0.00000 0.00000 0.00000"/> + <mass value="0.02630"/> + <inertia ixx="0.00000800000" ixy="0.00000000000" ixz="0.00000000000" + iyy="0.00000900000" iyz="0.00000100000" + izz="0.00000200000"/> + </inertial> + + <visual> + <origin xyz="0 0 0" rpy="0 0 0" /> + <geometry> + <mesh filename="package://talos_description/meshes/gripper/fingertip.STL" scale="1 1 1"/> + </geometry> + <material name="DarkGrey"/> + </visual> + + <collision> + <origin xyz="0 0 0" rpy="0 0 0" /> + <geometry> + <mesh filename="package://talos_description/meshes/gripper/fingertip_collision.STL" scale="1 1 1"/> + </geometry> + </collision> + </link> + + <joint name="${name}_fingertip_2_joint" type="revolute"> + <parent link="${name}_inner_double_link"/> + <child link="${name}_fingertip_2_link"/> + <origin xyz="-0.03200 0.04589 -0.06553" + rpy="${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad}"/> + <axis xyz="1 0 0" /> + <limit lower="${0.0 * deg_to_rad}" upper="${60.0 * deg_to_rad}" effort="100.0" velocity="1.0" /> + <mimic joint="${name}_joint" multiplier="${-1.0}" offset="0.0" /> + </joint> + + + <link name="${name}_motor_single_link"> + <inertial> + <origin xyz="0.02589 -0.01284 -0.00640" rpy="0.00000 0.00000 0.00000"/> + <mass value="0.14765"/> + <inertia ixx="0.00011500000" ixy="0.00005200000" ixz="0.00002500000" + iyy="0.00015300000" iyz="0.00003400000" + izz="0.00019000000"/> + </inertial> + + <visual> + <origin xyz="0 0 0" rpy="0 0 0" /> + <geometry> + <mesh filename="package://talos_description/meshes/gripper/gripper_motor_single.STL" scale="1 1 1"/> + </geometry> + <material name="Orange"/> + </visual> + + <collision> + <origin xyz="0 0 0" rpy="0 0 0" /> + <geometry> + <mesh filename="package://talos_description/meshes/gripper/gripper_motor_single_collision.STL" scale="1 1 1"/> + </geometry> + </collision> + </link> + + <joint name="${name}_motor_single_joint" type="revolute"> + <parent link="${name}_base_link"/> + <child link="${name}_motor_single_link"/> + <origin xyz="0.00000 -0.02025 -0.03000" + rpy="${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad}"/> + <axis xyz="1 0 0" /> + <limit lower="${0.0 * deg_to_rad}" upper="${60.0 * deg_to_rad}" effort="100.0" velocity="1.0" /> + <mimic joint="${name}_joint" multiplier="${-1.0}" offset="0.0" /> + </joint> + + + + <link name="${name}_inner_single_link"> + <inertial> + <origin xyz="0.00000 -0.03253 -0.01883" rpy="0.00000 0.00000 0.00000"/> + <mass value="0.05356"/> + <inertia ixx="0.00004700000" ixy="-0.00000000000" ixz="-0.00000000000" + iyy="0.00003500000" iyz="0.00001700000" + izz="0.00002400000"/> + </inertial> + + <visual> + <origin xyz="0 0 0" rpy="0 0 0" /> + <geometry> + <mesh filename="package://talos_description/meshes/gripper/inner_single.STL" scale="1 1 1"/> + </geometry> + <material name="Orange"/> + </visual> + + <collision> + <origin xyz="0 0 0" rpy="0 0 0" /> + <geometry> + <mesh filename="package://talos_description/meshes/gripper/inner_single_collision.STL" scale="1 1 1"/> + </geometry> + </collision> + </link> + + <joint name="${name}_inner_single_joint" type="revolute"> + <parent link="${name}_base_link"/> + <child link="${name}_inner_single_link"/> + <origin xyz="0.00000 -0.00525 -0.05598" + rpy="${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad}"/> + <axis xyz="1 0 0" /> + <limit lower="${0.0 * deg_to_rad}" upper="${60.0 * deg_to_rad}" effort="100.0" velocity="1.0" /> + <mimic joint="${name}_joint" multiplier="${-1.0}" offset="0.0" /> + + </joint> + + + <link name="${name}_fingertip_3_link"> + <inertial> + <origin xyz="0.00000 0.00460 -0.00254" rpy="0.00000 0.00000 0.00000"/> + <mass value="0.02630"/> + <inertia ixx="0.00000800000" ixy="0.00000000000" ixz="0.00000000000" + iyy="0.00000900000" iyz="0.00000100000" + izz="0.00000200000"/> + </inertial> + + <visual> + <origin xyz="0 0 0" rpy="0 0 0" /> + <geometry> + <mesh filename="package://talos_description/meshes/gripper/fingertip.STL" scale="1 1 1"/> + </geometry> + <material name="DarkGrey"/> + </visual> + + <collision> + <origin xyz="0 0 0" rpy="0 0 0" /> + <geometry> + <mesh filename="package://talos_description/meshes/gripper/fingertip_collision.STL" scale="1 1 1"/> + </geometry> + </collision> + </link> + + <joint name="${name}_fingertip_3_joint" type="revolute"> + <parent link="${name}_inner_single_link"/> + <child link="${name}_fingertip_3_link"/> + <origin xyz="0.00000 -0.04589 -0.06553" + rpy="${0.00000 * deg_to_rad} ${0.00000 * deg_to_rad} ${180.00000 * deg_to_rad}"/> + <axis xyz="1 0 0" /> + <limit lower="${0.0 * deg_to_rad}" upper="${60.0 * deg_to_rad}" effort="100.0" velocity="1.0" /> + <mimic joint="${name}_joint" multiplier="${-1.0}" offset="0.0" /> + </joint> + + + + <xacro:virtual_joints name="${name}" /> + <xacro:gripper_transmission name="${name}" reduction="1.0" /> + <!-- virtual mimic joints --> +<!-- <xacro:gripper_virtual_transmission name="${name}_inner_double" reduction="1.0"/> + <xacro:gripper_virtual_transmission name="${name}_fingertip_1" reduction="1.0"/> + <xacro:gripper_virtual_transmission name="${name}_fingertip_2" reduction="1.0"/> + <xacro:gripper_virtual_transmission name="${name}_inner_single" reduction="1.0"/> + <xacro:gripper_virtual_transmission name="${name}_motor_single" reduction="1.0"/> + <xacro:gripper_virtual_transmission name="${name}_fingertip_3" reduction="1.0"/> --> </xacro:macro> diff --git a/talos_description/urdf/head/head.urdf.xacro b/talos_description/urdf/head/head.urdf.xacro index a24c9c9be38f94b645c5d9c6188e31e08775659d..c2cdb352639816e9090e06af679c414f71c06157 100644 --- a/talos_description/urdf/head/head.urdf.xacro +++ b/talos_description/urdf/head/head.urdf.xacro @@ -72,8 +72,15 @@ <gazebo reference="${name}_joint"> <implicitSpringDamper>1</implicitSpringDamper> </gazebo> + + <gazebo reference="${name}_link"> + <material>Gazebo/FlatBlack</material> + </gazebo> + </xacro:macro> + + <!--************************--> <!-- HEAD_2 (PAN) --> <!--************************--> @@ -127,6 +134,11 @@ </gazebo> + <gazebo reference="${name}_link"> + <material>Gazebo/White</material> + </gazebo> + + </xacro:macro> <xacro:macro name="talos_head" params="name parent"> diff --git a/talos_description/urdf/leg/leg_v2.urdf.xacro b/talos_description/urdf/leg/leg_v2.urdf.xacro index 9b298279d2ce6f605a3b467d21c89417acc84244..5f5a4e9bc66799b5f9bd4e4a21c8a45245d38b87 100644 --- a/talos_description/urdf/leg/leg_v2.urdf.xacro +++ b/talos_description/urdf/leg/leg_v2.urdf.xacro @@ -330,6 +330,25 @@ <provideFeedback>1</provideFeedback> </gazebo> + <gazebo reference="leg_${prefix}_1_link"> + <material>Gazebo/FlatBlack</material> + </gazebo> + <gazebo reference="leg_${prefix}_2_link"> + <material>Gazebo/FlatBlack</material> + </gazebo> + <gazebo reference="leg_${prefix}_3_link"> + <material>Gazebo/FlatBlack</material> + </gazebo> + <gazebo reference="leg_${prefix}_4_link"> + <material>Gazebo/FlatBlack</material> + </gazebo> + <gazebo reference="leg_${prefix}_5_link"> + <material>Gazebo/White</material> + </gazebo> + <gazebo reference="leg_${prefix}_6_link"> + <material>Gazebo/White</material> + </gazebo> + </xacro:macro> </robot> diff --git a/talos_description/urdf/sensors/prosilicaGC655C_camera.urdf.xacro b/talos_description/urdf/sensors/prosilicaGC655C_camera.urdf.xacro index d46075ff0b4b8deb3a86d9279a165ba2b62cd95a..4499bcde87e365c61e8dc50dfdaf5ebe92bb2e09 100644 --- a/talos_description/urdf/sensors/prosilicaGC655C_camera.urdf.xacro +++ b/talos_description/urdf/sensors/prosilicaGC655C_camera.urdf.xacro @@ -9,7 +9,7 @@ Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. --> <!-- XML namespaces --> -<robot name="reemc" xmlns:xacro="http://www.ros.org/wiki/xacro"> +<robot name="reemc" xmlns:xacro="http://ros.org/wiki/xacro"> <xacro:macro name="prosilicaGC655C_camera" params="name parent *origin"> <joint name="${name}_frame_joint" type="fixed"> diff --git a/talos_description/urdf/sensors/xtion_pro_live.gazebo.xacro b/talos_description/urdf/sensors/xtion_pro_live.gazebo.xacro index 92066ecb9a0f93510308441fc2e5fd4979fe620d..6ac77d35e06b960a6bd84586b26f4efee3132787 100644 --- a/talos_description/urdf/sensors/xtion_pro_live.gazebo.xacro +++ b/talos_description/urdf/sensors/xtion_pro_live.gazebo.xacro @@ -90,6 +90,8 @@ <distalostionT2>0.00000001</distalostionT2> </plugin> </sensor> + + <material>Gazebo/FlatBlack</material> </gazebo> </xacro:macro> </robot>