Toppra::DriveParams Struct Reference

Everything the python side needs that does not change between paths. More...

#include <armarx/navigation/algorithms/parametrization/Toppra.h>

Public Attributes

std::string configuration
 
DriveType driveType {DriveType::OmniWheel}
 Selects which of the two geometries below is used.
 
float gearboxEfficiency {1.F}
 
float gearRatio {1.F}
 
bool limitAngularAcceleration {false}
 Whether maxAngularAcceleration bounds the plan's yaw acceleration.
 
float maxAcceleration {std::numeric_limits<float>::infinity()}
 Device command ramp. Infinite leaves the profile bounded by torque alone.
 
float maxAngularAcceleration {std::numeric_limits<float>::infinity()}
 
float maxDeceleration {std::numeric_limits<float>::infinity()}
 
float maxWheelVelocity {std::numeric_limits<float>::infinity()}
 Motor/gearbox speed rating referred to the wheel [rad/s], always in rad/s regardless of the drive's own unit convention – or, where the config gives one, the measured maxWheelVelocity of its drive block, which supersedes the rating.
 
MecanumGeometry mecanum
 
float motorMaxTorque {0.F}
 Drive train.
 
std::string nodeSet
 
int numSamples {500}
 Waypoints the result should have. 0 keeps the input count.
 
OmniWheelGeometry omniWheel
 
std::string robotFile
 Robot model the inverse dynamics is built from.
 
float torqueFraction {1.F}
 

Detailed Description

Everything the python side needs that does not change between paths.

Member Data Documentation

◆ configuration

std::string configuration

◆ driveType

Selects which of the two geometries below is used.

◆ gearboxEfficiency

float gearboxEfficiency {1.F}

◆ gearRatio

float gearRatio {1.F}

◆ limitAngularAcceleration

bool limitAngularAcceleration {false}

Whether maxAngularAcceleration bounds the plan's yaw acceleration.

Off unless the platform's config asks for it (commandRateLimit.limitAngularAcceleration): it only pays off with a controller that feeds the planned yaw rate forward.

◆ maxAcceleration

float maxAcceleration {std::numeric_limits<float>::infinity()}

Device command ramp. Infinite leaves the profile bounded by torque alone.

◆ maxAngularAcceleration

float maxAngularAcceleration {std::numeric_limits<float>::infinity()}

◆ maxDeceleration

float maxDeceleration {std::numeric_limits<float>::infinity()}

◆ maxWheelVelocity

float maxWheelVelocity {std::numeric_limits<float>::infinity()}

Motor/gearbox speed rating referred to the wheel [rad/s], always in rad/s regardless of the drive's own unit convention – or, where the config gives one, the measured maxWheelVelocity of its drive block, which supersedes the rating.

Bounds each wheel individually, which the Cartesian cap does not imply: wheel rate depends on the direction of travel, so a mecanum diagonal needs up to sqrt(2) times a straight run's.

◆ mecanum

MecanumGeometry mecanum

◆ motorMaxTorque

float motorMaxTorque {0.F}

Drive train.

◆ nodeSet

std::string nodeSet

◆ numSamples

int numSamples {500}

Waypoints the result should have. 0 keeps the input count.

◆ omniWheel

OmniWheelGeometry omniWheel

◆ robotFile

std::string robotFile

Robot model the inverse dynamics is built from.

◆ torqueFraction

float torqueFraction {1.F}

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