58 ,
const double &CurrentVelocity
59 ,
const double &TargetPosition
60 ,
const double &TargetVelocity
61 ,
const double &MaxVelocity
62 ,
const double &MaxAcceleration
64 ,
const double &MinimumExecutionTime
67 bool Inverted =
false;
69 double CurrentTime = 0.0
70 , ThisCurrentPosition = CurrentPosition
71 , ThisCurrentVelocity = CurrentVelocity
72 , ThisTargetPosition = TargetPosition
73 , ThisTargetVelocity = TargetVelocity ;
78 , &ThisCurrentVelocity
88 , &ThisCurrentPosition
89 , &ThisCurrentVelocity
92 , &(*PolynomialsInternal)
102 , &ThisCurrentPosition
103 , &ThisCurrentVelocity
105 , &(*PolynomialsInternal)
109 , &ThisCurrentVelocity
110 , &ThisTargetPosition
111 , &ThisTargetVelocity
121 , MinimumExecutionTime
122 , ThisCurrentPosition
123 , ThisCurrentVelocity
127 , &(*PolynomialsInternal)
133 , MinimumExecutionTime
134 , ThisCurrentPosition
135 , ThisCurrentVelocity
139 , &(*PolynomialsInternal)
void ProfileStep2PosTrapNegLin(const double &CurrentTime, const double &SynchronizationTime, const double &CurrentPosition, const double &CurrentVelocity, const double &TargetPosition, const double &TargetVelocity, const double &MaxAcceleration, MotionPolynomials *PolynomialsLocal, const bool &Inverted)
Parameterization of the Step 2 velocity profile PosTrapNegLin (leaf of the Step 2 decision tree) ...
void VToVMaxStep2(double *ThisCurrentTime, double *ThisCurrentPosition, double *ThisCurrentVelocity, const double &MaxVelocity, const double &MaxAcceleration, MotionPolynomials *PolynomialsLocal, const bool &Inverted)
One intermediate Step 2 trajectory segment: v -> vmax (NegLin)
Header file file for the declaration of the function TypeIIRMLMath::Step2WithoutSynchronization().
void NegateStep2(double *ThisCurrentPosition, double *ThisCurrentVelocity, double *ThisTargetPosition, double *ThisTargetVelocity, bool *Inverted)
Negate input values.
The profile is NegLinHldPosLin.
Header file for the Step 2 motion profiles.
bool Decision_2___002(const double &CurrentVelocity, const double &MaxVelocity)
Is (vi <= +vmax)?
The profile is NegLinPosLin.
Header file for decisions of the two decision trees of the Type II On-Line Trajectory Generation algo...
Three arrays of TypeIIRMLMath::TypeIIRMLPolynomial.
void ProfileStep2PosLinHldNegLin(const double &CurrentTime, const double &SynchronizationTime, const double &CurrentPosition, const double &CurrentVelocity, const double &TargetPosition, const double &TargetVelocity, const double &MaxAcceleration, MotionPolynomials *PolynomialsLocal, const bool &Inverted)
Parameterization of the Step 2 velocity profile PosLinHldNegLin (leaf of the Step 2 decision tree) ...
Header file for functions and definitions of constant values and macros.
The profile is PosLinNegLin.
Header file for the Step 2 decision tree of the Type II On-Line Trajectory Generation algorithm (time...
bool Decision_2___001(const double &CurrentVelocity)
Is (vi >= 0)?
void VToZeroStep2(double *ThisCurrentTime, double *ThisCurrentPosition, double *ThisCurrentVelocity, const double &MaxAcceleration, MotionPolynomials *PolynomialsLocal, const bool &Inverted)
One intermediate Step 2 trajectory segment: v -> 0 (NegLin)
void Step2WithoutSynchronization(const double &CurrentPosition, const double &CurrentVelocity, const double &TargetPosition, const double &TargetVelocity, const double &MaxVelocity, const double &MaxAcceleration, const TypeIIRMLMath::Step1_Profile &UsedProfile, const double &MinimumExecutionTime, MotionPolynomials *PolynomialsInternal)
This function contains sets of trajectory parameters (i.e., all polynomial coefficients) in the case ...
The profile is NegTriPosLin.
The profile is PosLinHldNegLin.
The profile is NegTrapPosLin.
Header file for the Step 1 motion profiles.
Step1_Profile
Enumeration of all possible profiles of Step 1 (A, B, and C).