[Documentation] [TitleIndex] [WordIndex

Only released in EOL distros:  

actuator_array: actuator_array_driver | actuator_array_example | actuator_array_gazebo_plugin | actuator_array_gui

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.

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.

actuator_array_gazebo.png

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>


2022-05-28 12:26