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 simple GUI for viewing and controlling the state of an actuator array. The joint names to be controlled are read from the parameter server. Joint limits are extracted from the "robot_description."

Overview

This package provides a simple GUI for viewing and controlling the state of a node compliant with the actuator_array_driver. The joint names to be controlled are read from the parameter server. The same yaml formats used by the Actuator Array Driver are also acceptable here, so the same configuration file may be used for both nodes. If available, this node also parses the robot description urdf for joint limits and other information.

The GUI provides the user with two sets of information for each joint: (1) the command and (2) the current state of each joint. The user may adjust the command position slider and change the values of the velocity and effort fields. Clicking on the Send button causes the GUI to publish a single sensor_msgs/JointState message on the command topic. Toggling the Auto Send button causes the GUI to continuously send command messages at a rate of 10Hz. The Home and Stop buttons produce the corresponding service calls.

actuator_array_gui.png

ROS Nodes

actuator_array_gui

Subscribed Topics

joint_states (sensor_msgs/JointState)

  • The current state of each joint

Published Topics

command (sensor_msgs/JointState)

  • A message containing the desired position/velocity/effort of all joints

Called Services

stop (std_srvs/Empty)

  • Instruct the driver to stop all actuators immediately.

home (std_srvs/Empty)

  • Instruct each actuator to return to its home position.

Parameters

robot_description_parameter (string, default: robot_description)

  • This is the name of a parameter on the parameter server that holds the robot description urdf, not the robot description itself. If no robot description is available, this parameter should be set to an empty string and the GUI will use default values for the actuatoir parameters.

joints (string)

  • This is an array of joint names to be controlled by this GUI. This is expected to be in yaml format, probably loaded from a file using rosparam. This array can be in two different formats. Either it is an array of strings, in which case each string is assumed to be a joint name. Or it can be an array of structures containing user-defined information. If the structure approach is used, one element of each structure must be name, the name of the joint. All other information contained within the structure will be ignored by this GUI. Example Format #1

     joints:
    
      - joint1
      - joint2
      - joint3
      - joint4
    Example Format #2
     joints:
    
      - name: joint1
        channel: 0      
        home: 0.0
    
      - name: joint2
        channel: 3      
        home: -1.57
    
      - name: joint3
        channel: 1      
        home: 1.57
    
      - name: joint4
        channel: 2      
        home: 0.785

Wiki: actuator_array_gui (last edited 2012-02-19 22:39:50 by StephenWilliams)