Klamp't  0.8.1
Public Member Functions | Public Attributes | List of all members
TorqueTimeScaling Class Reference

A time scaling with torque constraints |t| <= tmax. Assuming fixed base manipulator. More...

#include <ContactTimeScaling.h>

Inheritance diagram for TorqueTimeScaling:

Public Member Functions

 TorqueTimeScaling (Robot &robot)
void SetParams (const MultiPath &path, const vector< Real > &colocationParams)
- Public Member Functions inherited from CustomTimeScaling
 CustomTimeScaling (Robot &robot)
void SetPath (const GeneralizedCubicBezierSpline &path, const vector< Real > &colocationParams)
 Sets up the path.
void SetPath (const MultiPath &path, const vector< Real > &colocationParams)
 Sets up the path – multipath version.
void SetStartStop ()
 Sets up the path to start and stop at zero velocity.
void SetDefaultBounds ()
 Sets up velocity and acceleration bounds.
bool Optimize ()
 Runs the optimizer with the custom constraints.
bool IsFeasible (const vector< Real > &ds) const
 Returns true if the time scaling derivatives are feasible under the current constraints.
void PrintActiveConstraints (ostream &out)
 After running Optimize, prints out all the active constraints.

Public Attributes

Real torqueLimitShift
 offsets the torque limits by a fixed amount (default 0)
Real torqueLimitScale
 from 0 to 1, scales the torque limits (default 1)
- Public Attributes inherited from CustomTimeScaling
RobotCSpace cspace
TimeScaledBezierCurve traj
 Output trajectory.
vector< Real > paramDivs
 colocation grid
vector< int > paramSections
 index from grid to section of multipath, if multipath is given
vector< Vector > xs
 colocation points
vector< Vector > dxs
vector< Vector > ddxs
vector< Real > dsmax
 time scaling maxima. Defaults to Inf
vector< vector< Vector2 > > ds2ddsConstraintNormals
vector< vector< Real > > ds2ddsConstraintOffsets
bool saveConstraintNames
 Names of each constraint plane.
vector< vector< string > > ds2ddsConstraintNames
bool computeLagrangeMultipliers
 Whether the lagrange multipliers of a solution are requested.
vector< Real > variableLagrangeMultipliers
vector< vector< Real > > constraintLagrangeMultipliers

Detailed Description

A time scaling with torque constraints |t| <= tmax. Assuming fixed base manipulator.

t = B(q)q'' + C(q,q') + G(q) if v is the tangent, a is the curvature, then q' = ds*v, q'' = v*dds + a*ds^2 t = ds^2 (B(q)a+C(q,v)) + dds B(q)v + G(q)

The torqueLimitShift and torqueLimitScale terms let you adjust the robot's torque limits to account for errors during execution.

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