This document defines a set of standard application layer interfaces called JAUS Manipulator Services. JAUS Services provide the means for software entities in an unmanned system or system of unmanned systems to communicate and coordinate their activities. The Manipulator Services represent platform-independent capabilities commonly found across domains and types of unmanned systems. At present, twenty-five (25) services are defined in this document. These services are categorized as: Low Level Manipulator Control Services – The one service in this category allows for low-level command of the manipulator joint actuation efforts. This is an open-loop command that could be used in a simple tele-operation scenario. The service in this category is listed as follows:
- Primitive Manipulator Service
- Manipulator Sensor Services – These services, when queried, return instantaneous sensor data. Three services are defined that return respectively joint positions, joint velocities, and joint torques or forces. Two additional services return the end effector pose and velocity with respect to the manipulator base coordinate frame. The services in this category are listed as follows:
- Manipulator Joint Position Sensor Service
- Manipulator Joint Velocity Sensor Service
- Manipulator Joint Force/Torque Sensor Service
- Manipulator End Effector Pose Sensor Service
- Manipulator End Effector Velocity State Sensor Service
- Mid Level Position and Velocity Driver Services – These services take as inputs the desired joint positions, the desired joint velocities, the desired end effector pose, or the desired end effector velocity state. Closed-loop control is implied. The services in this category are listed as follows:
- Manipulator Joint Position Driver Service
- Manipulator Joint Position List Driver Service
- Manipulator End Effector Pose Driver Service
- Manipulator End Effector Pose List Driver Service
- Manipulator Joint Velocity Driver Service
- Manipulator End Effector Velocity State Driver Service
- Manipulator Actuator Force/Torque Driver Service
- Pan Tilt Driver Services –These services provide an interface to a specific pan tilt mechanism. The pan tilt mechanism is a two degree of freedom serial manipulator. It is comprised of two revolute joints whose axes intersect and are perpendicular. The services in this category are listed as follows:
- Primitive Pan Tilt Service
- Pan Tilt Joint Position Sensor Service
- Pan Tilt Joint Position Driver Service
- Pan Tilt Joint Velocity Sensor Service
- Pan Tilt Joint Velocity Driver Service
- End Effector Driver Services – This service provides an interface to a specific end effector. The end effector is a one-degree of freedom serial manipulator, usually mounted on the end of a n-degree of freedom serial manipulator. Examples include grippers, screw drivers, or other tools. The services in this category are listed as follows:
- Primitive End Effector Service
- Each service is described by a JAUS Service Definition (JSD) which specifies the message set and protocol required for compliance. Each JSD is fully compliant with the JAUS Service Interface Definition Language [JSIDL].