Add gripper control for simulation.
This commit is contained in:
@@ -8,21 +8,26 @@
|
|||||||
Per-wheel mecanum friction is emitted by the wheel macro when
|
Per-wheel mecanum friction is emitted by the wheel macro when
|
||||||
gazebo_ignition (sim) is true, so it is NOT repeated here.
|
gazebo_ignition (sim) is true, so it is NOT repeated here.
|
||||||
|
|
||||||
controllers_file : primary controller params (the AGV base controllers).
|
controllers_file : primary controller params (the AGV base controllers).
|
||||||
controllers_file_extra : OPTIONAL second params file, loaded into the SAME
|
controllers_file_arm : OPTIONAL per-function params files, each loaded into
|
||||||
controller_manager. Used when the AGV is composed
|
controllers_file_gripper the SAME controller_manager. Used when the AGV is
|
||||||
into a larger robot (e.g. a mobile manipulator) so
|
composed into a larger robot (e.g. a mobile
|
||||||
the additional controllers (e.g. an arm_controller)
|
manipulator) so the additional controllers (e.g. an
|
||||||
share the single gz_ros2_control controller_manager.
|
arm_controller / gripper_action_controller) share the
|
||||||
Empty by default -> standalone AGV unaffected.
|
single gz_ros2_control controller_manager. Named by
|
||||||
|
function for clarity; empty by default -> standalone
|
||||||
|
AGV unaffected.
|
||||||
-->
|
-->
|
||||||
<xacro:macro name="agv_pro_gazebo" params="prefix controllers_file controllers_file_extra:=''">
|
<xacro:macro name="agv_pro_gazebo" params="prefix controllers_file controllers_file_arm:='' controllers_file_gripper:=''">
|
||||||
<gazebo>
|
<gazebo>
|
||||||
<plugin filename="gz_ros2_control-system"
|
<plugin filename="gz_ros2_control-system"
|
||||||
name="gz_ros2_control::GazeboSimROS2ControlPlugin">
|
name="gz_ros2_control::GazeboSimROS2ControlPlugin">
|
||||||
<parameters>${controllers_file}</parameters>
|
<parameters>${controllers_file}</parameters>
|
||||||
<xacro:if value="${controllers_file_extra != ''}">
|
<xacro:if value="${controllers_file_arm != ''}">
|
||||||
<parameters>${controllers_file_extra}</parameters>
|
<parameters>${controllers_file_arm}</parameters>
|
||||||
|
</xacro:if>
|
||||||
|
<xacro:if value="${controllers_file_gripper != ''}">
|
||||||
|
<parameters>${controllers_file_gripper}</parameters>
|
||||||
</xacro:if>
|
</xacro:if>
|
||||||
</plugin>
|
</plugin>
|
||||||
</gazebo>
|
</gazebo>
|
||||||
|
|||||||
@@ -18,12 +18,16 @@
|
|||||||
<xacro:arg name="controllers_file" default="" />
|
<xacro:arg name="controllers_file" default="" />
|
||||||
<xacro:property name="controllers_file" value="$(arg controllers_file)" />
|
<xacro:property name="controllers_file" value="$(arg controllers_file)" />
|
||||||
|
|
||||||
<!-- Optional second controller params file, loaded into the SAME
|
<!-- Optional per-function controller params files, each loaded into the
|
||||||
gz_ros2_control controller_manager. Used when composing the AGV into a
|
SAME gz_ros2_control controller_manager. Used when composing the AGV
|
||||||
larger robot (e.g. a mobile manipulator) so extra controllers share the
|
into a larger robot (e.g. a mobile manipulator) so its controllers
|
||||||
single controller_manager. Empty -> standalone behaviour unchanged. -->
|
share the single controller_manager. Named by function for clarity;
|
||||||
<xacro:arg name="controllers_file_extra" default="" />
|
empty -> standalone behaviour unchanged. -->
|
||||||
<xacro:property name="controllers_file_extra" value="$(arg controllers_file_extra)" />
|
<xacro:arg name="controllers_file_arm" default="" />
|
||||||
|
<xacro:property name="controllers_file_arm" value="$(arg controllers_file_arm)" />
|
||||||
|
|
||||||
|
<xacro:arg name="controllers_file_gripper" default="" />
|
||||||
|
<xacro:property name="controllers_file_gripper" value="$(arg controllers_file_gripper)" />
|
||||||
|
|
||||||
<link name="${prefix}base_footprint" />
|
<link name="${prefix}base_footprint" />
|
||||||
|
|
||||||
@@ -154,7 +158,8 @@
|
|||||||
<xacro:if value="${sim}">
|
<xacro:if value="${sim}">
|
||||||
<xacro:include filename="$(find agv_pro_description)/urdf/agv_pro.gazebo.xacro" />
|
<xacro:include filename="$(find agv_pro_description)/urdf/agv_pro.gazebo.xacro" />
|
||||||
<xacro:agv_pro_gazebo prefix="${prefix}" controllers_file="${controllers_file}"
|
<xacro:agv_pro_gazebo prefix="${prefix}" controllers_file="${controllers_file}"
|
||||||
controllers_file_extra="${controllers_file_extra}" />
|
controllers_file_arm="${controllers_file_arm}"
|
||||||
|
controllers_file_gripper="${controllers_file_gripper}" />
|
||||||
</xacro:if>
|
</xacro:if>
|
||||||
|
|
||||||
</robot>
|
</robot>
|
||||||
Reference in New Issue
Block a user