This is motion planner for a step This is a sequence ChppGikZMPshiftElement-ChppGikFootDisplaceElement-ChppGIkZMPshiftElement that plans motion for the feet and for the ZMP as follows:
First, ZMP is moved under the support foot.
More...
#include <hpp/gik/motionplanner/element/step-element.hh>
Public Member Functions | |
ChppGikStepElement (ChppGikStandingRobot *inSRobot, double inStartTime, const ChppGikFootprint *inFootprint, bool isRightFoot, double inSamplingPeriod, double inFinalZMPCoefficient=0.75, double inEndShiftTime=0.8, double inStartZMPShiftTime=0.6, double inFootMotionDuration=0.8, double inStepHeight=0.05) | |
Constructor. More... | |
ChppGikStepElement (ChppGikStandingRobot *inSRobot, const ChppGikFootprint *inFootprint, double inStartTime, bool isRightFoot, double rightfoot2TargetZMPX, double rightfoot2TargetZMPY, double inSamplingPeriod, double inEndShiftTime=0.8, double inStartZMPShiftTime=0.6, double inFootMotionDuration=0.8, double inStepHeight=0.05) | |
Constructor. More... | |
virtual CjrlGikMotionConstraint * | clone () const |
Clone constructor. More... | |
virtual CjrlGikStateConstraint * | stateConstraintAtTime (double inTime) |
Get state constraint at a given time. More... | |
ChppGikTransformationConstraint * | footConstraintAtTime (double inTime) |
Get foot transformation constraint at given time. More... | |
virtual CjrlFoot * | supportFootAtTime (double inTime) |
Get the support foot joint at time inTime. More... | |
virtual bool | plan (ChppGikSupportPolygon &supportPolygon, vector3d &ZMP) |
Plan stability-consistent ZMP and update given arguments in case of success. More... | |
virtual void | preProlongate (double inPreProlongation) |
Mmake this motion constraint return the last planned constraint, from time endTime() to time endTime()+inProlongation. More... | |
virtual void | postProlongate (double inPostProlongation) |
Make this motion constraint return the first planned constraint from time current startTime()-inProlongation to current startTime(). More... | |
bool | isRight () |
~ChppGikStepElement () | |
Destructor. More... | |
![]() | |
ChppGikLocomotionElement (ChppGikStandingRobot *inSRobot, double inStartTime, double inDuration, double inSamplingPeriod) | |
constructor More... | |
CjrlDynamicRobot * | robot () |
Get a pointer to associated robot. More... | |
virtual void | startTime (double) |
Disactivated. More... | |
virtual double | startTime () |
Get the start time for this jrlGikMotionConstraint. More... | |
virtual double | endTime () |
Get the end time for this jrlGikMotionConstraint. More... | |
virtual double | duration () |
Get the duration of the original motion. More... | |
virtual CjrlGikMotionConstraint * | motionConstraint () |
Get a pointer to the motion constraint. More... | |
virtual matrixNxP & | ZMPmotion () |
Get the support foot joint at time inTime. More... | |
virtual | ~ChppGikLocomotionElement () |
Destructor. More... | |
![]() | |
virtual | ~CjrlGikMotionConstraint () |
![]() | |
ChppGikPrioritizedMotion (CjrlDynamicRobot *inRobot, unsigned int inPriority, CjrlGikMotionConstraint *inMotionConstraint, double inDampingFactor) | |
Constructor. More... | |
void | workingJoints (const vectorN &inJointsMask) |
Set the joint mask put to work. More... | |
const vectorN & | workingJoints () const |
Get the joint mask put to work. More... | |
unsigned int | priority () const |
Get the priority. More... | |
double | dampingFactor () const |
Get the damping factor. More... | |
CjrlDynamicRobot * | robot () |
Get the robot for this motion. More... | |
virtual | ~ChppGikPrioritizedMotion () |
Destructor. More... | |
Additional Inherited Members | |
![]() | |
double | attPreProlongation |
double | attPostProlongation |
double | attStartTime |
double | attEndTime |
double | attSamplingPeriod |
double | attEps |
double | attDuration |
double | attModifiedStart |
double | attModifiedEnd |
CjrlFoot * | attSupportFoot |
CjrlFoot * | attConstrainedFoot |
bool | attPlanSuccess |
matrixNxP | attZMPmotion |
CjrlHumanoidDynamicRobot * | attHumanoidRobot |
ChppGikStandingRobot * | attStandingRobot |
![]() | |
CjrlGikMotionConstraint * | attMotionConstraint |
vectorN | attWorkingJoints |
unsigned int | attPriority |
CjrlDynamicRobot * | attRobot |
double | attDampingFactor |
This is motion planner for a step This is a sequence ChppGikZMPshiftElement-ChppGikFootDisplaceElement-ChppGIkZMPshiftElement that plans motion for the feet and for the ZMP as follows:
First, ZMP is moved under the support foot.
Second, the non-support foot is displaced
Third, the ZMP is moved at a given point between the two feet.
ChppGikStepElement::ChppGikStepElement | ( | ChppGikStandingRobot * | inSRobot, |
double | inStartTime, | ||
const ChppGikFootprint * | inFootprint, | ||
bool | isRightFoot, | ||
double | inSamplingPeriod, | ||
double | inFinalZMPCoefficient = 0.75 , |
||
double | inEndShiftTime = 0.8 , |
||
double | inStartZMPShiftTime = 0.6 , |
||
double | inFootMotionDuration = 0.8 , |
||
double | inStepHeight = 0.05 |
||
) |
Constructor.
The minimum time for the step motion (i.e parameter inFlightTime) is 0.5. So if the user constructs a step with anything below, it gets automatically thresholded.
ChppGikStepElement::ChppGikStepElement | ( | ChppGikStandingRobot * | inSRobot, |
const ChppGikFootprint * | inFootprint, | ||
double | inStartTime, | ||
bool | isRightFoot, | ||
double | rightfoot2TargetZMPX, | ||
double | rightfoot2TargetZMPY, | ||
double | inSamplingPeriod, | ||
double | inEndShiftTime = 0.8 , |
||
double | inStartZMPShiftTime = 0.6 , |
||
double | inFootMotionDuration = 0.8 , |
||
double | inStepHeight = 0.05 |
||
) |
Constructor.
The minimum time for the step motion (i.e parameter inFlightTime) is 0.5. So if the user constructs a step with anything below, it gets automatically thresholded.
ChppGikStepElement::~ChppGikStepElement | ( | ) |
Destructor.
|
virtual |
Clone constructor.
Implements CjrlGikMotionConstraint.
|
virtual |
Get foot transformation constraint at given time.
Implements ChppGikLocomotionElement.
bool ChppGikStepElement::isRight | ( | ) |
|
virtual |
Plan stability-consistent ZMP and update given arguments in case of success.
supportPolygon | used and modified by this element according to purpose |
ZMP | used and modified by this element according to purpose |
Implements ChppGikLocomotionElement.
|
virtual |
Make this motion constraint return the first planned constraint from time current startTime()-inProlongation to current startTime().
Reimplemented from ChppGikLocomotionElement.
|
virtual |
Mmake this motion constraint return the last planned constraint, from time endTime() to time endTime()+inProlongation.
Reimplemented from ChppGikLocomotionElement.
|
virtual |
Get state constraint at a given time.
Implements CjrlGikMotionConstraint.
|
virtual |
Get the support foot joint at time inTime.
Implements ChppGikLocomotionElement.