Only released in EOL distros:
Package Summary
This package provides a Gazebo Plugin to control an array of position-controlled actuators, such as RC Servos. In addition to the standard parameters for update rate and robot namespace, a series of "joint" elements are provided. Each "joint" element must provide a "name" and, optionally, a "home" position and a set of PID parameters that control the joint stiffness inside Gazebo. Joint limits, max velocities, etc. are read from the "robot_description" parameter.
- Author: Stephen Williams
- License: BSD
- Source: git https://code.google.com/p/gt-ros-pkg.humans/ (branch: master)
Contents
Overview
A plugin module for the Gazebo simulation that enables control of a set of actuators. A simulated robot can be generated from the existing robot description URDF by simply adding a Gazebo Actuator Array Controller.
Example Usage
The following XML block inside of robot description urdf creates an Actuator Array Driver interface with four joints. The <joint> block may be repeated as often as needed. Inside each <joint> block, the <name> tag must reference the name of a joint specified in the urdf. The <home> tag is used to specify the home position of each joint. Internally, each joint is controlled by a PID loop. The tuning parameters for the PID are specified for each joint. This allows the simulated performance to be tuned to match the real system.
1 <!-- Add a Gazebo plugin controller -->
2 <gazebo>
3 <controller:gazebo_ros_actuator_array
4 name="actuator_array_controller"
5 plugin="libgazebo_ros_actuator_array.so">
6 <alwaysOn>true</alwaysOn>
7 <updateRate>50.0</updateRate>
8 <robotParam>robot_description</robotParam>
9 <joint>
10 <name>joint1</name>
11 <home>0.0</home>
12 <p>10.0</p>
13 <i>0.0</i>
14 <d>0.0</d>
15 <iClamp>0.0</iClamp>
16 </joint>
17 <joint>
18 <name>joint2</name>
19 <home>2.094395102</home>
20 <p>10.0</p>
21 <i>0.0</i>
22 <d>0.0</d>
23 <iClamp>0.0</iClamp>
24 </joint>
25 <joint>
26 <name>joint3</name>
27 <home>1.483529864</home>
28 <p>10.0</p>
29 <i>0.0</i>
30 <d>0.0</d>
31 <iClamp>0.0</iClamp>
32 </joint>
33 <joint>
34 <name>joint4</name>
35 <home>0.0</home>
36 <p>10.0</p>
37 <i>0.0</i>
38 <d>0.0</d>
39 <iClamp>0.0</iClamp>
40 </joint>
41 </controller:gazebo_ros_actuator_array>
42 </gazebo>