Parasol Planning Library (PPL)
Control Struct Referencefinal

#include <Control.h>

Collaboration diagram for Control:
Collaboration graph
[legend]

Public Types

Local Types
typedef std::vector< double > Signal
 

Public Member Functions

Construction
 Control ()
 
 Control (Actuator *const _actuator, const Signal &_signal=Signal())
 
 Control (const Control &)=default
 
 Control (Control &&)=default
 
Assignment
Controloperator= (const Control &)=default
 
Controloperator= (Control &&)=default
 
Planning Interface
std::vector< double > GetOutput () const
 
Ordering and Equality
bool operator< (const Control &_rhs) const noexcept
 Define a weak ordering over controls to allow sorting/sequencing. More...
 
bool operator== (const Control &_rhs) const noexcept
 Define equality operators to check against identical controls. More...
 
bool operator!= (const Control &_rhs) const noexcept
 

Data Fields

Public Data
Actuatoractuator {nullptr}
 The actuator for this control. More...
 
Signal signal
 The signal for this control. More...
 

Detailed Description

Models the instructions that a robot sends to its actuators.

A control is modeled as a 'relative power' signal for each of the robot's DOFs. Controls are sent to a specific actuator. A strength in the range [-1:1] describes how to drive the actuator's mechanism for that DOF, with -1 representing full reverse and 1 representing full forward.

Member Typedef Documentation

◆ Signal

typedef std::vector<double> Control::Signal

Constructor & Destructor Documentation

◆ Control() [1/4]

Control::Control ( )
default

◆ Control() [2/4]

Control::Control ( Actuator *const  _actuator,
const Signal _signal = Signal() 
)

Construct control

Parameters
_actuatorThe actuator for this control.
_signalThe signal for this control.

◆ Control() [3/4]

Control::Control ( const Control )
default

◆ Control() [4/4]

Control::Control ( Control &&  )
default

Member Function Documentation

◆ GetOutput()

std::vector< double > Control::GetOutput ( ) const

Ask the actuator to compute the generalized force for this control. If not actuator, returns a 0 force vector

◆ operator!=()

bool Control::operator!= ( const Control _rhs) const
noexcept

◆ operator<()

bool Control::operator< ( const Control _rhs) const
noexcept

Define a weak ordering over controls to allow sorting/sequencing.

◆ operator=() [1/2]

Control& Control::operator= ( const Control )
default

◆ operator=() [2/2]

Control& Control::operator= ( Control &&  )
default

◆ operator==()

bool Control::operator== ( const Control _rhs) const
noexcept

Define equality operators to check against identical controls.

Field Documentation

◆ actuator

Actuator* Control::actuator {nullptr}

The actuator for this control.

◆ signal

Signal Control::signal

The signal for this control.


The documentation for this struct was generated from the following files: