Skip to content

HeadControl

Zichong Li edited this page Feb 15, 2023 · 1 revision

Besides the motion request, we feed in parallel a head motion request. These are handled in the option HeadControl, by setting HeadControl::Mode from the currently executing state machine. These are the modes available:

initial_state(none) {}
state(off) { action SetHeadPanTilt(JointData::off, JointData::off, 0.f); }
state(lookForward) { action LookForward(); }
state(lookDown) { action LookDown(); }
state(lookHalfDown) { action LookHalfDown(); }
state(readyAndLocate) { action ReadyAndLocate(); }
state(lookAtTarget) { action LookAtTarget(lookTargetAngle); }
state(lookAtBall) { action LookAtBall(); }
state(lookBallGoal) { action LookBallGoal(); }
state(lookForwardZeroTilt) { action LookForwardZeroTilt(); }
state(lookLeftZeroTilt) { action LookLeftZeroTilt(); }
state(lookRightZeroTilt) { action LookRightZeroTilt(); }
state(scanLeftRight) { action ScanLeftRight(); }
state(scanLeftRightKeeper) { action ScanLeftRightKeeper(); }
state(lookForFeatures) { action LookForFeatures(); }
state(walkScan) { action WalkScan(); }
Clone this wiki locally