#include <CscSequencePositionStrategy.h>
Public Member Functions | |
| CscSequencePositionStrategy (CscSequence *globalSequence, const string &worldEntityId, CscEnvironmentSimulator *simulator) | |
| ~CscSequencePositionStrategy () override | |
| void | process () override |
| bool | isProcessed () override |
| void | lastProcess () override |
| int | getSequenceIndex () override |
| void | breakSequence () override |
| void | terminateSequence () override |
Public Member Functions inherited from conscience_core::sequences_processor::CscAbstractSequenceProcessingStrategy | |
| CscAbstractSequenceProcessingStrategy (CscSequence *globalSequence, const string &worldEntityId, CscEnvironmentSimulator *simulator) | |
| virtual | ~CscAbstractSequenceProcessingStrategy () |
| virtual void | setSequenceIndex (int index) |
| virtual void | resumeSequence () |
| CscSequence * | getGlobalSequence () const |
Protected Member Functions | |
| void | computeWheelPower () |
| void | updateCurrentEntityInformations () |
| void | computeSpeedPowerFromTwoPositionAndDelta (CscPoint3d *currentPosition, CscPoint3d *firstPosition, CscPoint3d *secondPosition, double delta) |
| compute power off wheel with the current position and two other position. use the enslavement parameter distanceDividerForComputeSpeed,coefficientForComputeSpeed and exponentForComputeSpeed for compute the power with the distance between the current position and the first and second position. Use the parameter degreesDeltaForSpeedTurnPercentage for lower the speed with the delta of orientation More... | |
| double | computeDistanceBetweenTwoPoint (CscPoint3d *firstPoint, CscPoint3d *secondPoint) |
| compute the distance between two position More... | |
| void | setReferenceStartForComputeSpeed (CscPoint3d *position) |
| return a state with the power on all wheels More... | |
| bool | entityArrivedToTarget (CscPoint3d *currentPosition, CscPoint3d *projectedPosition, CscPoint3d *lastTarget, CscPoint3d *target, double distance) |
| void | entityForwardOrBackward (double speed, double delta) |
| update the power left and right wheel , and applicate a correction with the orientation delta More... | |
| void | entityTurn (double delta, double val, bool backward=false) |
| update the power left and right wheel , and applicate a correction with the orientation delta More... | |
| CscState * | getNewStateWithWheelPower (double leftPower, double rightPower) |
| return a state with the good value for the wheel with the power left and right give More... | |
| double | positionErrorOnLine (CscPoint3d *currentPos, CscPoint3d *linePoint1, CscPoint3d *linePoint2) |
| return the small distance between the current positon and the ligne More... | |
| void | enslavementWheelPower (double speed, double error) |
| this method actualise the power left and right of wheels, she use a PID for compute correction for wheels in function of error. NOTE : information for PID / enslavement at https://intranet.conscience.live/utilisation-de-lasservissement-du-sequence-processor-pour-la-navigation More... | |
| double | computeEnslavementError (CscPoint3d *position, double heading, CscPoint3d *linePoint1, CscPoint3d *linePoint2) |
| this method calculates the error according to the position and the orientation of the robot, as well as the point of departure and arrival. the error is in degrees More... | |
| CscPoint3d | getProjectedPositionOnLine (CscPoint3d *position, CscPoint3d *linePoint1, CscPoint3d *linePoint2) |
| the method returns a position projected on the line. This means the position closest to the position provided and which is on the line formed by point 1 and point 2 More... | |
| double | getYawInDegreesFromSimulatorPositionAndRotation (CscPoint3dOriented *positionAndRotation) |
| void | updateDeltaAndPositionError () |
Protected Member Functions inherited from conscience_core::sequences_processor::CscAbstractSequenceProcessingStrategy | |
| uint64_t | getNextTimeWithDuration (uint64_t duration=0) |
information for enslavement at https://intranet.conscience.live/utilisation-de-lasservissement-du-sequence-processor-pour-la-navigation
| conscience_core::sequences_processor::CscSequencePositionStrategy::CscSequencePositionStrategy | ( | CscSequence * | globalSequence, |
| const string & | worldEntityId, | ||
| CscEnvironmentSimulator * | simulator | ||
| ) |
|
override |
|
overridevirtual |
Reimplemented from conscience_core::sequences_processor::CscAbstractSequenceProcessingStrategy.
|
protected |
compute the distance between two position
|
protected |
this method calculates the error according to the position and the orientation of the robot, as well as the point of departure and arrival. the error is in degrees
|
protected |
compute power off wheel with the current position and two other position. use the enslavement parameter distanceDividerForComputeSpeed,coefficientForComputeSpeed and exponentForComputeSpeed for compute the power with the distance between the current position and the first and second position. Use the parameter degreesDeltaForSpeedTurnPercentage for lower the speed with the delta of orientation
|
protected |
|
protected |
this method actualise the power left and right of wheels, she use a PID for compute correction for wheels in function of error. NOTE : information for PID / enslavement at https://intranet.conscience.live/utilisation-de-lasservissement-du-sequence-processor-pour-la-navigation
|
protected |
|
protected |
update the power left and right wheel , and applicate a correction with the orientation delta
|
protected |
update the power left and right wheel , and applicate a correction with the orientation delta
|
protected |
return a state with the good value for the wheel with the power left and right give
|
protected |
the method returns a position projected on the line. This means the position closest to the position provided and which is on the line formed by point 1 and point 2
|
overridevirtual |
Reimplemented from conscience_core::sequences_processor::CscAbstractSequenceProcessingStrategy.
|
protected |
|
overridevirtual |
Reimplemented from conscience_core::sequences_processor::CscAbstractSequenceProcessingStrategy.
|
overridevirtual |
|
protected |
return the small distance between the current positon and the ligne
|
overridevirtual |
|
protected |
return a state with the power on all wheels
|
overridevirtual |
Reimplemented from conscience_core::sequences_processor::CscAbstractSequenceProcessingStrategy.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |