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