List of all members
qb_device_joint_limits_interface::PositionJointSaturationInterface Class Reference

A handle used to enforce position and velocity limits of a position-controlled joint. More...

#include <qb_device_joint_limits_interface.h>

Inheritance diagram for qb_device_joint_limits_interface::PositionJointSaturationInterface:
Inheritance graph
[legend]

Public Member Functions

Real-Time Safe Functions
void reset ()
 Reset all managed handles. More...
 
- Public Member Functions inherited from joint_limits_interface::JointLimitsInterface< HandleType >
void enforceLimits (const ros::Duration &period)
 
void enforceLimits (const ros::Duration &period)
 
HandleType getHandle (const std::string &name)
 

Detailed Description

A handle used to enforce position and velocity limits of a position-controlled joint.

Note
: The only difference from joint_limits_interface::PositionJointSoftLimitsHandle is that this exploit a dynamical management of the joint limits, i.e. the limits can be modified at runtime by others.

This class implements a very simple position and velocity limits enforcing policy, and tries to impose the least amount of requisites on the underlying hardware platform. This lowers considerably the entry barrier to use it, but also implies some limitations.

Requisites

Open loop nature

Joint position and velocity limits are enforced in an open-loop fashion, that is, the command is checked for validity without relying on the actual position/velocity values.

The downside of the open loop behavior is that velocity limits will not be enforced when recovering from large position tracking errors. Only the command is guaranteed to comply with the limits specification.

Note
: This handle type is stateful, ie. it stores the previous position command to estimate the command velocity. Construct the saturation handle with dynamic joint limits.
Parameters
joint_handleThe joint handle of interest.
limitsThe pointer to the joint limits structure of the joint. Enforce position and velocity limits for a joint that is subject to soft limits.
Note
: Be aware of dynamic joint limits.
Parameters
periodThe control period.
Returns
The joint name. Reset the interface state. Interface for enforcing limits on a position-controlled joint through saturation. The only difference from joint_limits_interface::PositionJointSaturationInterface is that this exploit a dynamical management of the joint limits, i.e. the limits can be modified at runtime by others.

Definition at line 201 of file qb_device_joint_limits_interface.h.

Member Function Documentation

void qb_device_joint_limits_interface::PositionJointSaturationInterface::reset ( )
inline

Reset all managed handles.

Definition at line 207 of file qb_device_joint_limits_interface.h.


The documentation for this class was generated from the following file:


qb_device_hardware_interface
Author(s): qbroboticsĀ®
autogenerated on Wed Oct 9 2019 03:45:36