9 #include <walk_and_kick/wak_common.h>
10 #include <config_server/parameter.h>
13 namespace walk_and_kick
29 , sKickoffType(
CONFIG_SETTINGS_PATH +
"general/kickoffType", KT_UNKNOWN + 1, 1, KT_COUNT - 1, KT_DEFAULT)
40 , sGameRole(
CONFIG_SETTINGS_PATH +
"robot/gameRole", ROLE_UNKNOWN + 1, 1, ROLE_COUNT - 1, ROLE_DEFAULT)
42 , robotNumber(
"/game_controller/robotNumber", 0, 1, 5, 0)
55 , reqBallOffsetX(
CONFIG_PARAM_PATH +
"general/reqBallOffset/x", 0.0, 0.01, 0.5, 0.3)
56 , reqBallOffsetXDribble(
CONFIG_PARAM_PATH +
"general/reqBallOffset/xDribble", 0.0, 0.01, 0.5, 0.3)
58 , reqBallOffsetYLeft(
CONFIG_PARAM_PATH +
"general/reqBallOffset/yLeft", -0.1, 0.01, 0.4, 0.12)
59 , reqBallOffsetYRight(
CONFIG_PARAM_PATH +
"general/reqBallOffset/yRight", -0.4, 0.01, 0.1, -0.12)
63 , minBallToTargetDist(
CONFIG_PARAM_PATH +
"general/ballTarget/minBallToTargetDist", 0.02, 0.02, 2.0, 0.6)
70 , targetPoseReevalTime(
CONFIG_PARAM_PATH +
"general/targetPoseReevalTime", 0.1, 0.1, 5.0, 2.0)
72 , ballStableMaxDist(
CONFIG_PARAM_PATH +
"sensors/ballStableMaxDist", 1.0, 0.1, 10.0, 4.0)
73 , ballStableTime(
CONFIG_PARAM_PATH +
"sensors/ballStableTime", 1.0, 0.5, 15.0, 5.0)
75 , confDecayTime(
CONFIG_PARAM_PATH +
"sensors/confDecay/timeToDecay", 0.1, 0.05, 5.0, 1.0)
76 , confDecayHalfLifeBall(
CONFIG_PARAM_PATH +
"sensors/confDecay/halfLifeBall", 0.1, 0.05, 5.0, 1.0)
77 , confDecayHalfLifeGoal(
CONFIG_PARAM_PATH +
"sensors/confDecay/halfLifeGoal", 0.1, 0.05, 5.0, 1.0)
78 , confDecayHalfLifePose(
CONFIG_PARAM_PATH +
"sensors/confDecay/halfLifeRobotPose", 0.1, 0.05, 5.0, 1.0)
79 , confDecayHalfLifeObst(
CONFIG_PARAM_PATH +
"sensors/confDecay/halfLifeObstacle", 0.1, 0.05, 5.0, 1.0)
80 , confLimitBall(
CONFIG_PARAM_PATH +
"sensors/confLimit/ball", 0.0, 0.01, 1.0, 0.2)
81 , confLimitBallTarget(
CONFIG_PARAM_PATH +
"sensors/confLimit/ballTarget", 0.0, 0.01, 1.0, 0.2)
82 , confLimitRobotPose(
CONFIG_PARAM_PATH +
"sensors/confLimit/robotPose", 0.0, 0.01, 1.0, 0.2)
84 , ballHasMovedMaxRobotDist(
CONFIG_PARAM_PATH +
"sensors/ballHasMoved/maxRobotDist", 0.5, 0.05, 4.0, 2.0)
85 , ballHasMovedCentreRadius(
CONFIG_PARAM_PATH +
"sensors/ballHasMoved/centreRadius", 0.1, 0.01, 1.0, 0.4)
86 , ballHasMovedWormTime(
CONFIG_PARAM_PATH +
"sensors/ballHasMoved/wormTime", 0.1, 0.02, 4.0, 1.5)
87 , locHintTimeout(
CONFIG_PARAM_PATH +
"sensors/localisation/locHintTimeout", 1.0, 0.2, 20.0, 5.0)
88 , locSetToGoalsEnable(
CONFIG_PARAM_PATH +
"sensors/localisation/setToGoalsEnable", true)
89 , locSetToGoalsHeadingTol(
CONFIG_PARAM_PATH +
"sensors/localisation/setToGoalsHeadingTol", 0.0, 0.01, 0.5, 0.3)
90 , locSetToSideEnable(
CONFIG_PARAM_PATH +
"sensors/localisation/setToSideEnable", true)
91 , locSetToSideHeadingTol(
CONFIG_PARAM_PATH +
"sensors/localisation/setToSideHeadingTol", 0.0, 0.01, 0.5, 0.2)
92 , locSetToSideOffsetX(
CONFIG_PARAM_PATH +
"sensors/localisation/setToSideOffsetX", 0.0, 0.01, 1.0, 0.4)
93 , waitTimeReduction(
CONFIG_PARAM_PATH +
"sensors/waitTimeReduction", 0.0, 0.1, 8.0, 0.0)
94 , timeoutBallInPlay(
CONFIG_PARAM_PATH +
"sensors/timeoutBallInPlay", 1.0, 0.2, 20.0, 10.0)
95 , timeoutDirectGoal(
CONFIG_PARAM_PATH +
"sensors/timeoutDirectGoal", 1.0, 0.5, 50.0, 20.0)
98 , gcSmoothingTime(
CONFIG_PARAM_PATH +
"gameController/smoothingTime", 0.0, 0.02, 2.0, 0.75)
99 , gcFreshTime(
CONFIG_PARAM_PATH +
"gameController/gcFreshTime", 0.1, 0.1, 10.0, 5.0)
100 , gcIgnoreSetIfIllegalPose(
CONFIG_PARAM_PATH +
"gameController/ignoreSetIfIllegalPose", true)
101 , gcTimeoutKickoffType(
CONFIG_PARAM_PATH +
"gameController/timeoutKickoffType", 1.0, 0.5, 20.0, 12.0)
102 , gcTimeoutReadyFirst(
CONFIG_PARAM_PATH +
"gameController/timeoutReadyFirst", 5.0, 1.0, 50.0, 30.0)
103 , gcTimeoutSetFirstNormal(
CONFIG_PARAM_PATH +
"gameController/timeoutSetFirstNormal", 1.0, 0.5, 20.0, 10.0)
104 , gcTimeoutSetFirstPenalty(
CONFIG_PARAM_PATH +
"gameController/timeoutSetFirstPenalty", 1.0, 0.5, 20.0, 10.0)
105 , gcTimeoutSetLast(
CONFIG_PARAM_PATH +
"gameController/timeoutSetLast", 1.0, 0.5, 20.0, 5.0)
106 , gcTimeoutTimeoutLast(
CONFIG_PARAM_PATH +
"gameController/timeoutTimeoutLast", 1.0, 0.5, 20.0, 5.0)
114 , gazePitchNeutral(
CONFIG_PARAM_PATH +
"gazeLimits/pitchNeutral", -0.5, 0.01, 1.0, 0.0)
117 , obhEnableObstBallHandling(
CONFIG_PARAM_PATH +
"gameFSM/obstacleBallHandling/enableObstacleBallHandling", true)
118 , obhObstBeforeBallBuf(
CONFIG_PARAM_PATH +
"gameFSM/obstacleBallHandling/obstBeforeBallBuf", 0.0, 0.01, 1.0, 0.5)
119 , obhObstBeyondTargetBuf(
CONFIG_PARAM_PATH +
"gameFSM/obstacleBallHandling/obstBeyondTargetBuf", 0.0, 0.01, 1.0, 0.6)
120 , obhObstClearanceLow(
CONFIG_PARAM_PATH +
"gameFSM/obstacleBallHandling/obstClearanceLow", 0.0, 0.01, 0.8, 0.2)
121 , obhObstClearanceHigh(
CONFIG_PARAM_PATH +
"gameFSM/obstacleBallHandling/obstClearanceHigh", 0.0, 0.01, 0.8, 0.4)
122 , obhClearanceAngleLowMax(
CONFIG_PARAM_PATH +
"gameFSM/obstacleBallHandling/clearanceAngleLowMax", 0.0, 0.01, 1.0, 0.3)
123 , obhClearanceAngleHighMax(
CONFIG_PARAM_PATH +
"gameFSM/obstacleBallHandling/clearanceAngleHighMax", 0.5, 0.01, 1.5, 1.2)
124 , obhAngleAdjustForFootSel(
CONFIG_PARAM_PATH +
"gameFSM/obstacleBallHandling/angleAdjustForFootSel", 0.0, 0.01, 1.0, 0.3)
125 , obhAngleAdjustWedgeRatio(
CONFIG_PARAM_PATH +
"gameFSM/obstacleBallHandling/angleAdjustWedgeRatio", 0.0, 0.01, 1.0, 0.6)
126 , obhFootSelObstBallDistMax(
CONFIG_PARAM_PATH +
"gameFSM/obstacleBallHandling/footSelObstBallDistMax", 0.0, 0.02, 2.0, 1.0)
128 , posCommonTargetEnable(
CONFIG_PARAM_PATH +
"gameFSM/positioning/commonTarget/enable", false)
142 , posPoseLegalityBuffer(
CONFIG_PARAM_PATH +
"gameFSM/positioning/poseLegalityBuffer", 0.0, 0.01, 1.0, 0.2)
163 , dgChaseBallIfClose(
CONFIG_PARAM_PATH +
"gameFSM/defaultGoalie/chaseBallIfClose", true)
164 , dgArrivedCostMax(
CONFIG_PARAM_PATH +
"gameFSM/defaultGoalie/arrivedCostMax", 0.0, 0.02, 2.0, 0.5)
165 , dgScoringDistLow(
CONFIG_PARAM_PATH +
"gameFSM/defaultGoalie/scoringDistLow", 0.5, 0.05, 5.0, 2.0)
166 , dgScoringDistHigh(
CONFIG_PARAM_PATH +
"gameFSM/defaultGoalie/scoringDistHigh", 0.5, 0.05, 5.0, 3.5)
167 , dgScoringDistChaseBall(
CONFIG_PARAM_PATH +
"gameFSM/defaultGoalie/scoringDistChaseBall", 0.5, 0.05, 5.0, 2.2)
168 , dgBallDistChaseBall(
CONFIG_PARAM_PATH +
"gameFSM/defaultGoalie/ballDistChaseBall", 0.1, 0.05, 5.0, 1.8)
169 , dgTargetRadiusLow(
CONFIG_PARAM_PATH +
"gameFSM/defaultGoalie/targetRadiusLow", 0.0, 0.01, 1.0, 0.2)
170 , dgTargetRadiusHigh(
CONFIG_PARAM_PATH +
"gameFSM/defaultGoalie/targetRadiusHigh", 0.0, 0.02, 2.0, 1.0)
171 , dgLookForBallRadius(
CONFIG_PARAM_PATH +
"gameFSM/defaultGoalie/lookForBallRadius", 0.0, 0.02, 2.0, 0.6)
172 , dgDistBufFromPosts(
CONFIG_PARAM_PATH +
"gameFSM/defaultGoalie/distBufFromPosts", 0.0, 0.02, 2.0, 0.6)
173 , dgTargetTimeAgoTimeout(
CONFIG_PARAM_PATH +
"gameFSM/defaultGoalie/targetTimeAgoTimeout", 5.0, 0.5, 60.0, 30.0)
174 , dgChaseBallWormTime(
CONFIG_PARAM_PATH +
"gameFSM/defaultGoalie/chaseBallWormTime", 1.0, 0.1, 10.0, 3.0)
176 , gazeBallDistNear(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/distNear", 0.0, 0.05, 2.0, 0.5)
177 , gazeBallDistFar(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/distFar", 1.0, 0.05, 4.0, 1.5)
178 , gazeBallDistHorizon(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/distHorizon", 1.0, 0.05, 6.0, 3.0)
179 , gazeBallPitchFar(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/pitchFar", -0.5, 0.01, 1.0, 0.5)
180 , gazeBallPitchHorizon(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/pitchHorizon", -0.5, 0.01, 1.0, 0.0)
181 , gazeBallTsNear(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/TsNear", 0.1, 0.05, 5.0, 1.5)
182 , gazeBallTsFar(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/TsFar", 0.1, 0.05, 5.0, 0.5)
183 , gazeBallTsMin(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/TsMin", 0.1, 0.05, 5.0, 0.1)
184 , gazeBallTsMax(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/TsMax", 0.1, 0.05, 5.0, 3.0)
185 , gazeBallBoxXMin(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/boxXMin", -0.1, 0.01, 0.5, 0.0)
186 , gazeBallBoxXMax(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/boxXMax", -0.1, 0.01, 0.5, 0.1)
187 , gazeBallBoxYMin(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/boxYMin", -0.4, 0.01, 0.1, -0.1)
188 , gazeBallBoxYMax(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/boxYMax", -0.1, 0.01, 0.4, 0.1)
189 , gazeBallYawDeadband(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/yawDeadband", 0.0, 0.05, 3.0, 1.0)
190 , gazeBallYawFreeLook(
CONFIG_PARAM_PATH +
"behFSM/gazeAtBall/yawFreeLook", 0.0, 0.05, 3.0, 2.0)
192 , oaEnableObstacleAvoidance(
CONFIG_PARAM_PATH +
"behFSM/obstacleAvoidance/enableObstacleAvoidance", true)
193 , oaAngleAtObstacleHigh(
CONFIG_PARAM_PATH +
"behFSM/obstacleAvoidance/angleAtObstacleHigh", 0.2, 0.01, 1.4, 0.8)
194 , oaMaxRadialGcvLow(
CONFIG_PARAM_PATH +
"behFSM/obstacleAvoidance/maxRadialGcvLow", -1.0, 0.01, 0.0, -1.0)
195 , oaMaxRadialGcvHigh(
CONFIG_PARAM_PATH +
"behFSM/obstacleAvoidance/maxRadialGcvHigh", 0.0, 0.01, 1.0, 1.0)
196 , oaObstacleRadiusLow(
CONFIG_PARAM_PATH +
"behFSM/obstacleAvoidance/radiusLow", 0.0, 0.01, 0.5, 0.0)
197 , oaObstacleRadiusMid(
CONFIG_PARAM_PATH +
"behFSM/obstacleAvoidance/radiusMid", 0.2, 0.01, 1.0, 0.5)
198 , oaObstacleRadiusHigh(
CONFIG_PARAM_PATH +
"behFSM/obstacleAvoidance/radiusHigh", 0.2, 0.01, 1.0, 0.7)
199 , oaAdjustAngleXYHigh(
CONFIG_PARAM_PATH +
"behFSM/obstacleAvoidance/adjustAngleXYHigh", 0.1, 0.02, 1.5, 1.0)
200 , oaAdjustGcvZHigh(
CONFIG_PARAM_PATH +
"behFSM/obstacleAvoidance/adjustGcvZHigh", 0.0, 0.01, 1.0, 0.7)
203 , wtgpAngleLimitNear(
CONFIG_PARAM_PATH +
"behFSM/walkToGlobalPose/angleLimitNear", 0.0, 0.01, 1.5, 0.5)
204 , wtgpAngleLimitFar(
CONFIG_PARAM_PATH +
"behFSM/walkToGlobalPose/angleLimitFar", 0.0, 0.01, 1.5, 0.8)
205 , wtgpDistNear(
CONFIG_PARAM_PATH +
"behFSM/walkToGlobalPose/distNear", 0.1, 0.01, 1.0, 0.3)
206 , wtgpDistFar(
CONFIG_PARAM_PATH +
"behFSM/walkToGlobalPose/distFar", 0.5, 0.02, 3.0, 0.8)
207 , wtgpSpeedNearXY(
CONFIG_PARAM_PATH +
"behFSM/walkToGlobalPose/speedNearXY", 0.0, 0.01, 1.0, 0.7)
208 , wtgpSpeedNearZ(
CONFIG_PARAM_PATH +
"behFSM/walkToGlobalPose/speedNearZ", 0.0, 0.01, 1.0, 0.7)
209 , wtgpSpeedFarX(
CONFIG_PARAM_PATH +
"behFSM/walkToGlobalPose/speedFarX", 0.0, 0.01, 1.0, 0.7)
210 , wtgpSpeedFarZ(
CONFIG_PARAM_PATH +
"behFSM/walkToGlobalPose/speedFarZ", 0.0, 0.01, 1.0, 0.7)
212 , wtpArrivedCostMaxDefault(
CONFIG_PARAM_PATH +
"behFSM/walkToPose/arrivedCostMaxDefault", 0.0, 0.02, 2.0, 0.5)
213 , wtpArrivedWormTime(
CONFIG_PARAM_PATH +
"behFSM/walkToPose/arrivedWormTime", 0.1, 0.1, 10.0, 3.0)
215 , paTimeout(
CONFIG_PARAM_PATH +
"behFSM/panicAttack/timeout", 0.0, 0.5, 30.0, 10.0)
217 , llrGazeFreqScaler(
CONFIG_PARAM_PATH +
"behFSM/lookLeftRight/gazeFreqScaler", 0.1, 0.02, 2.0, 0.5)
220 , laGazeDownFirstFactor(
CONFIG_PARAM_PATH +
"behFSM/lookAround/gazeDownFirstFactor", 0.0, 0.01, 1.0, 0.5)
221 , laGazeMagInitial(
CONFIG_PARAM_PATH +
"behFSM/lookAround/magInitial", 0.0, 0.02, 2.0, 0.3)
222 , laGazeMagInc(
CONFIG_PARAM_PATH +
"behFSM/lookAround/magInc", 0.0, 0.02, 2.0, 0.3)
223 , laGazePitchLookUp(
CONFIG_PARAM_PATH +
"behFSM/lookAround/pitchLookUp", -0.5, 0.01, 1.0, 0.0)
224 , laGazePitchLookDown(
CONFIG_PARAM_PATH +
"behFSM/lookAround/pitchLookDown", -0.5, 0.01, 1.0, 0.5)
225 , laGazeSplineAccMax(
CONFIG_PARAM_PATH +
"behFSM/lookAround/splineAccMax", 1.0, 0.1, 10.0, 4.0)
226 , laGazeSplineVelMax(
CONFIG_PARAM_PATH +
"behFSM/lookAround/splineVelMax", 0.2, 0.02, 3.0, 1.0)
228 , sfbTCBallPoseEnable(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/tcBallPose/enable", true)
229 , sfbTCBallPoseDebounce(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/tcBallPose/debounce", 0.0, 0.05, 5.0, 1.5)
230 , sfbStateRequestTimeout(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/stateRequestTimeout", 1.0, 0.2, 20.0, 5.0)
231 , sfbResumeCycleTime(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/resumeCycleTime", 0.1, 0.1, 10.0, 5.0)
232 , sfbStayCoolTime(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/stayCoolTime", 0.1, 0.1, 10.0, 5.0)
233 , sfbBackupEnabled(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/backup/enabled", true)
234 , sfbBackupMargin(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/backup/margin", 0.2, 0.02, 2.0, 0.6)
235 , sfbBackupWalkGcvX(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/backup/walkGcvX", -1.0, 0.01, 0.0, -0.5)
236 , sfbBackupWalkTime(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/backup/walkTime", 0.1, 0.1, 10.0, 3.0)
237 , sfbBackupWaitTime(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/backup/waitTime", 0.1, 0.1, 10.0, 1.5)
238 , sfbLBPFreshTime(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/lastBallPose/ballPoseFreshTime", 0.5, 0.5, 10.0, 3.0)
239 , sfbLBPRadiusNear(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/lastBallPose/radiusNear", 0.0, 0.05, 2.5, 1.5)
240 , sfbLBPRadiusFar(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/lastBallPose/radiusFar", 3.0, 0.05, 8.0, 6.0)
241 , sfbLBPMinBallPoseDurNear(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/lastBallPose/minBallPoseDurNear", 0.0, 0.1, 5.0, 2.0)
242 , sfbLBPMinBallPoseDurFar(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/lastBallPose/minBallPoseDurFar", 0.0, 0.1, 5.0, 0.3)
243 , sfbLBPMaxBallPoseDurNear(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/lastBallPose/maxBallPoseDurNear", 0.0, 0.1, 10.0, 10.0)
244 , sfbLBPMaxBallPoseDurFar(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/lastBallPose/maxBallPoseDurFar", 0.0, 0.1, 10.0, 1.0)
245 , sfbLBPMinTimeToWalkNear(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/lastBallPose/minTimeToWalkNear", 1.0, 0.5, 15.0, 2.0)
246 , sfbLBPMinTimeToWalkFar(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/lastBallPose/minTimeToWalkFar", 1.0, 0.5, 15.0, 8.0)
247 , sfbSpinInsteadRadiusBwd(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/spinInsteadRadiusBwd", 0.0, 0.05, 4.0, 2.0)
248 , sfbSpinInsteadRadiusFwd(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/spinInsteadRadiusFwd", 0.0, 0.05, 4.0, 1.5)
249 , sfbWtgpDoneRadius(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/walkToGlobalPose/doneRadius", 0.0, 0.02, 2.0, 0.4)
250 , sfbWtgpDoneTime(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/walkToGlobalPose/doneTime", 0.1, 0.1, 6.0, 2.0)
251 , sfbWtgpFailTime(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/walkToGlobalPose/failTime", 0.1, 0.1, 6.0, 2.0)
252 , sfbWtgpDistanceLow(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/walkToGlobalPose/distanceLow", 0.0, 0.05, 5.0, 1.0)
253 , sfbWtgpDistanceHigh(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/walkToGlobalPose/distanceHigh", 3.0, 0.05, 10.0, 7.0)
254 , sfbWtgpTimeoutLow(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/walkToGlobalPose/timeoutLow", 3.0, 0.5, 50.0, 10.0)
255 , sfbWtgpTimeoutHigh(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/walkToGlobalPose/timeoutHigh", 3.0, 1.0, 100.0, 50.0)
256 , sfbSpinGcvZ(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/spinGcvZ", 0.0, 0.01, 1.0, 0.7)
257 , sfbSpinGcvZSlow(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/spinGcvZSlow", 0.0, 0.01, 1.0, 0.35)
258 , sfbSpinTime(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/spinTime", 0.1, 0.1, 15.0, 8.0)
259 , sfbSpinDebounceTime(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/spinDebounceTime", 0.0, 0.5, 20.0, 8.0)
260 , sfbWalkFwdGcvX(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/walkFwdGcvX", 0.0, 0.01, 1.0, 0.7)
261 , sfbWalkFwdTime(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/walkFwdTime", 0.1, 0.1, 15.0, 6.0)
262 , sfbWalkFwdWaitTime(
CONFIG_PARAM_PATH +
"behFSM/searchForBall/walkFwdWaitTime", 0.1, 0.1, 10.0, 1.0)
264 , gbbAbsBetaHigh(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/absBetaHigh", 0.0, 0.02, 2.0, 1.5)
265 , gbbAbsBetaLow(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/absBetaLow", 0.0, 0.02, 2.0, 0.5)
266 , gbbAngleLimitFar(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/angleLimitFar", 0.1, 0.01, 1.5, 0.8)
267 , gbbAngleLimitNear(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/angleLimitNear", 0.1, 0.01, 1.5, 1.0)
268 , gbbFootChangeMinConf(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/footSel/changeFootMinConf", 0.0, 0.01, 1.0, 0.5)
269 , gbbFootChangeWormTime(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/footSel/changeFootWormTime", 0.1, 0.1, 10.0, 2.0)
274 , gbbUnforceFootTime(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/footSel/unforceFootTime", 0.1, 0.05, 5.0, 2.0)
275 , gbbFullPathLen(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/fullPathLen", 0.5, 0.02, 2.0, 0.9)
276 , gbbMinBallDistLeft(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/minBallDistLeft", 0.1, 0.01, 1.0, 0.5)
277 , gbbMinBallDistRight(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/minBallDistRight", 0.1, 0.01, 1.0, 0.5)
278 , gbbProximityBetaDistTol(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/proximity/betaDistTol", 0.01, 0.002, 0.2, 0.08)
279 , gbbProximityRadiusTol(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/proximity/radiusTol", 0.01, 0.002, 0.2, 0.08)
280 , gbbProximityValueMax(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/proximity/valueMax", 0.1, 0.01, 1.0, 0.7)
281 , gbbPsiAwayFromBallBuf(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/psiAwayFromBallBuf", 0.01, 0.01, 0.5, 0.15)
282 , gbbPsiAwayFromBallMax(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/psiAwayFromBallMax", 0.5, 0.01, 1.5, 1.0)
283 , gbbRadiusFar(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/radiusFar", 1.3, 0.01, 2.5, 1.5)
284 , gbbRadiusNear(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/radiusNear", 0.5, 0.01, 1.2, 1.0)
285 , gbbReqBallOffFadingAngle(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/reqBallOffsetFadingAngle", 0.0, 0.01, 1.0, 0.6)
286 , gbbSpeedLimitXYZ(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/speed/speedLimitXYZ", 0.0, 0.01, 1.0, 1.0)
287 , gbbSpeedFarX(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/speed/speedFarX", 0.0, 0.01, 1.0, 1.0)
288 , gbbSpeedFarZ(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/speed/speedFarZ", 0.0, 0.01, 1.0, 1.0)
289 , gbbSpeedNearXY(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/speed/speedNearXY", 0.0, 0.01, 1.0, 1.0)
290 , gbbSpeedNearXYMin(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/speed/speedNearXYMin", 0.0, 0.01, 0.6, 0.05)
291 , gbbSpeedNearZ(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/speed/speedNearZ", 0.0, 0.01, 1.0, 1.0)
292 , gbbSpeedNearZMin(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/speed/speedNearZMin", 0.0, 0.01, 0.4, 0.05)
293 , gbbStuckMaxBallDist(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/stuck/maxBallDist", 0.0, 0.02, 2.0, 1.0)
294 , gbbStuckMaxGcv(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/stuck/maxGcv", 0.0, 0.01, 1.0, 0.4)
295 , gbbStuckTime(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/stuck/time", 3.0, 0.5, 30.0, 10.0)
296 , gbbVisRobotHalo(
CONFIG_PARAM_PATH +
"behFSM/goBehindBall/vis/showRobotHalo", false)
299 , dbAppFootChangeWormTime(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/changeFootWormTime", 0.1, 0.1, 5.0, 1.0)
300 , dbAppAdjustPathAngleHigh(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/adjustPathAngleHigh", 0.1, 0.02, 1.5, 0.6)
301 , dbAppAdjustWalkAngleMax(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/adjustWalkAngleMax", 0.0, 0.01, 1.0, 0.0)
302 , dbAppAngleErrLimit(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/angleErrLimit", 0.2, 0.01, 1.2, 0.8)
303 , dbAppFunnelCurveRadius(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/funnelCurveRadius", 0.2, 0.01, 1.2, 0.5)
304 , dbAppFunnelNeckMag(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/funnelNeckMag", 0.0, 0.005, 0.3, 0.1)
305 , dbAppFunnelEdgeExtra(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/funnelEdgeExtra", 0.1, 0.01, 0.8, 0.2)
306 , dbAppMinPathTargetX(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/minPathTargetX", 0.1, 0.01, 1.0, 0.5)
307 , dbAppMaxPathTargetSlope(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/maxPathTargetSlope", 0.3, 0.01, 1.3, 0.6)
308 , dbAppPathTargetLineOffsetX(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/pathTargetLineOffsetX", 0.0, 0.005, 0.5, 0.2)
309 , dbAppPathOverdriveY(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/pathOverdriveY", 1.0, 0.01, 2.0, 1.0)
310 , dbAppGcvSpeedX(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/gcvSpeedX", 0.0, 0.01, 1.0, 1.0)
311 , dbAppGcvSpeedY(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/gcvSpeedY", 0.0, 0.01, 1.0, 1.0)
312 , dbAppGcvSpeedZ(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/gcvSpeedZ", 0.0, 0.01, 1.0, 1.0)
313 , dbAppGcvSpeedLimit(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/approach/gcvSpeedLimit", 0.0, 0.01, 1.0, 1.0)
314 , dbBallMaxX(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/conditions/ballMaxX", 0.5, 0.05, 3.0, 2.0)
315 , dbBallMaxYMag(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/conditions/ballMaxYMag", 0.0, 0.01, 0.4, 0.15)
316 , dbBallMaxYMagExtra(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/conditions/ballMaxYMagExtra", 0.0, 0.01, 0.2, 0.05)
317 , dbBallSpreadSlope(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/conditions/ballSpreadSlope", 0.0, 0.01, 0.6, 0.15)
318 , dbBallSpreadSlopeExtra(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/conditions/ballSpreadSlopeExtra", 0.0, 0.01, 0.3, 0.05)
319 , dbBallSpreadAcc(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/conditions/ballSpreadAcc", 0.0, 0.02, 2.0, 0.0)
320 , dbBallSpreadAccExtra(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/conditions/ballSpreadAccExtra", 0.0, 0.02, 2.0, 0.0)
321 , dbTargetMinWedgeHigh(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/conditions/targetMinWedgeHigh", 0.4, 0.01, 1.2, 0.8)
322 , dbTargetDistForMinWedge(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/conditions/targetDistForMinWedge", 0.5, 0.01, 1.5, 1.0)
323 , dbTargetDistForMinWedgeHigh(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/conditions/targetDistForMinWedgeHigh", 1.6, 0.05, 5.0, 3.0)
324 , dbTargetWedgeForFarBall(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/conditions/targetWedgeForFarBall", 0.5, 0.05, 3.0, 2.0)
326 , dbOkToDribbleWormTime(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/conditions/okToDribbleWormTime", 0.1, 0.02, 2.0, 0.4)
327 , dbStillOkToDribbleWormTime(
CONFIG_PARAM_PATH +
"behFSM/dribbleBall/conditions/stillOkToDribbleWormTime", 0.1, 0.02, 2.0, 0.4)
329 , kbBallErrorXFwd(
CONFIG_PARAM_PATH +
"behFSM/kickBall/conditions/ballErrorXFwd", 0.0, 0.01, 0.2, 0.1)
330 , kbBallErrorXFwdExtra(
CONFIG_PARAM_PATH +
"behFSM/kickBall/conditions/ballErrorXFwdExtra", 0.0, 0.01, 0.2, 0.05)
331 , kbBallErrorYIwd(
CONFIG_PARAM_PATH +
"behFSM/kickBall/conditions/ballErrorYIwd", 0.0, 0.01, 0.2, 0.05)
332 , kbBallErrorYIwdExtra(
CONFIG_PARAM_PATH +
"behFSM/kickBall/conditions/ballErrorYIwdExtra", 0.0, 0.01, 0.2, 0.02)
333 , kbBallErrorYOwd(
CONFIG_PARAM_PATH +
"behFSM/kickBall/conditions/ballErrorYOwd", 0.0, 0.01, 0.2, 0.05)
334 , kbBallErrorYOwdExtra(
CONFIG_PARAM_PATH +
"behFSM/kickBall/conditions/ballErrorYOwdExtra", 0.0, 0.01, 0.2, 0.02)
335 , kbOkToKickWormTime(
CONFIG_PARAM_PATH +
"behFSM/kickBall/conditions/okToKickWormTime", 0.1, 0.02, 2.0, 0.4)
337 , visFootLength(
CONFIG_PARAM_PATH +
"visualisation/footLength", 0.01, 0.005, 0.4, 0.2)
338 , visFootWidth(
CONFIG_PARAM_PATH +
"visualisation/footWidth", 0.01, 0.005, 0.2, 0.1)
339 , visFootOffsetX(
CONFIG_PARAM_PATH +
"visualisation/footOffsetX", -0.2, 0.005, 0.2, 0.0)
340 , visFootOffsetY(
CONFIG_PARAM_PATH +
"visualisation/footOffsetY", 0.0, 0.005, 0.4, 0.15)
358 , forceKickLeftFoot(false)
359 , forceKickRightFoot(false)
360 , confDecayFactorBall(0.0)
361 , confDecayFactorGoal(0.0)
362 , confDecayFactorPose(0.0)
363 , confDecayFactorObst(0.0)
384 sForceKickFoot.setCallback(boost::bind(&WAKConfig::handleForceKickFoot,
this),
true);
385 confDecayHalfLifeBall.setCallback(boost::bind(&WAKConfig::handleHalfLife,
this, &confDecayHalfLifeBall, &confDecayFactorBall),
true);
386 confDecayHalfLifeGoal.setCallback(boost::bind(&WAKConfig::handleHalfLife,
this, &confDecayHalfLifeGoal, &confDecayFactorGoal),
true);
387 confDecayHalfLifePose.setCallback(boost::bind(&WAKConfig::handleHalfLife,
this, &confDecayHalfLifePose, &confDecayFactorPose),
true);
388 confDecayHalfLifeObst.setCallback(boost::bind(&WAKConfig::handleHalfLife,
this, &confDecayHalfLifeObst, &confDecayFactorObst),
true);
389 forceKickIfChoice.setCallback(boost::bind(&WAKConfig::handleForceKickIfChoice,
this),
false);
390 forceDribbleIfChoice.setCallback(boost::bind(&WAKConfig::handleForceDribbleIfChoice,
this),
true);
401 config_server::Parameter<bool> sIsPenaltyShoot;
402 config_server::Parameter<int> sKickoffType;
403 config_server::Parameter<bool> sListenToGC;
404 config_server::Parameter<bool> sListenToTC;
405 config_server::Parameter<bool> sUseAutoPositioning;
406 config_server::Parameter<bool> sPlayAsCyan;
407 config_server::Parameter<bool> sPlayOnYellow;
408 config_server::Parameter<int> sWaitTime;
409 config_server::Parameter<bool> sEnableDribble;
410 config_server::Parameter<bool> sEnableKick;
411 config_server::Parameter<bool> sEnableObstacles;
412 config_server::Parameter<int> sForceKickFoot;
413 config_server::Parameter<int> sGameRole;
418 config_server::Parameter<int> robotNumber;
423 config_server::Parameter<bool> enableWAK;
424 config_server::Parameter<bool> pauseWAK;
425 config_server::Parameter<bool> plotData;
426 config_server::Parameter<bool> publishTF;
427 config_server::Parameter<bool> publishVis;
428 config_server::Parameter<bool> simpleModeButton;
432 config_server::Parameter<bool> forceKickIfChoice;
433 config_server::Parameter<bool> forceDribbleIfChoice;
434 config_server::Parameter<float> reqBallOffsetX;
435 config_server::Parameter<float> reqBallOffsetXDribble;
437 config_server::Parameter<float> reqBallOffsetYLeft;
438 config_server::Parameter<float> reqBallOffsetYRight;
442 config_server::Parameter<float> minBallToTargetDist;
449 config_server::Parameter<float> targetPoseReevalTime;
454 config_server::Parameter<float> ballStableMaxDist;
455 config_server::Parameter<float> ballStableTime;
457 config_server::Parameter<float> confDecayTime;
458 config_server::Parameter<float> confDecayHalfLifeBall;
459 config_server::Parameter<float> confDecayHalfLifeGoal;
460 config_server::Parameter<float> confDecayHalfLifePose;
461 config_server::Parameter<float> confDecayHalfLifeObst;
462 config_server::Parameter<float> confLimitBall;
463 config_server::Parameter<float> confLimitBallTarget;
464 config_server::Parameter<float> confLimitRobotPose;
465 config_server::Parameter<bool> ballHasMovedDisable;
466 config_server::Parameter<float> ballHasMovedMaxRobotDist;
467 config_server::Parameter<float> ballHasMovedCentreRadius;
468 config_server::Parameter<float> ballHasMovedWormTime;
469 config_server::Parameter<float> locHintTimeout;
470 config_server::Parameter<bool> locSetToGoalsEnable;
471 config_server::Parameter<float> locSetToGoalsHeadingTol;
472 config_server::Parameter<bool> locSetToSideEnable;
473 config_server::Parameter<float> locSetToSideHeadingTol;
474 config_server::Parameter<float> locSetToSideOffsetX;
475 config_server::Parameter<float> waitTimeReduction;
476 config_server::Parameter<float> timeoutBallInPlay;
477 config_server::Parameter<float> timeoutDirectGoal;
482 config_server::Parameter<bool> gcEnable;
483 config_server::Parameter<float> gcSmoothingTime;
484 config_server::Parameter<float> gcFreshTime;
485 config_server::Parameter<bool> gcIgnoreSetIfIllegalPose;
486 config_server::Parameter<float> gcTimeoutKickoffType;
487 config_server::Parameter<float> gcTimeoutReadyFirst;
488 config_server::Parameter<float> gcTimeoutSetFirstNormal;
489 config_server::Parameter<float> gcTimeoutSetFirstPenalty;
490 config_server::Parameter<float> gcTimeoutSetLast;
491 config_server::Parameter<float> gcTimeoutTimeoutLast;
496 config_server::Parameter<bool> tcEnable;
497 config_server::Parameter<float> tcFreshTime;
502 config_server::Parameter<float> gazeYawAbsMax;
503 config_server::Parameter<float> gazePitchMin;
504 config_server::Parameter<float> gazePitchMax;
505 config_server::Parameter<float> gazePitchNeutral;
506 config_server::Parameter<float> gazeVelLimit;
511 config_server::Parameter<bool> obhEnableObstBallHandling;
512 config_server::Parameter<float> obhObstBeforeBallBuf;
513 config_server::Parameter<float> obhObstBeyondTargetBuf;
514 config_server::Parameter<float> obhObstClearanceLow;
515 config_server::Parameter<float> obhObstClearanceHigh;
516 config_server::Parameter<float> obhClearanceAngleLowMax;
517 config_server::Parameter<float> obhClearanceAngleHighMax;
518 config_server::Parameter<float> obhAngleAdjustForFootSel;
519 config_server::Parameter<float> obhAngleAdjustWedgeRatio;
520 config_server::Parameter<float> obhFootSelObstBallDistMax;
525 config_server::Parameter<bool> posCommonTargetEnable;
539 config_server::Parameter<float> posPoseLegalityBuffer;
566 config_server::Parameter<bool> dgChaseBallIfClose;
567 config_server::Parameter<float> dgArrivedCostMax;
568 config_server::Parameter<float> dgScoringDistLow;
569 config_server::Parameter<float> dgScoringDistHigh;
570 config_server::Parameter<float> dgScoringDistChaseBall;
571 config_server::Parameter<float> dgBallDistChaseBall;
572 config_server::Parameter<float> dgTargetRadiusLow;
573 config_server::Parameter<float> dgTargetRadiusHigh;
574 config_server::Parameter<float> dgLookForBallRadius;
575 config_server::Parameter<float> dgDistBufFromPosts;
576 config_server::Parameter<float> dgTargetTimeAgoTimeout;
577 config_server::Parameter<float> dgChaseBallWormTime;
582 config_server::Parameter<float> gazeBallDistNear;
583 config_server::Parameter<float> gazeBallDistFar;
584 config_server::Parameter<float> gazeBallDistHorizon;
585 config_server::Parameter<float> gazeBallPitchFar;
586 config_server::Parameter<float> gazeBallPitchHorizon;
587 config_server::Parameter<float> gazeBallTsNear;
588 config_server::Parameter<float> gazeBallTsFar;
589 config_server::Parameter<float> gazeBallTsMin;
590 config_server::Parameter<float> gazeBallTsMax;
591 config_server::Parameter<float> gazeBallBoxXMin;
592 config_server::Parameter<float> gazeBallBoxXMax;
593 config_server::Parameter<float> gazeBallBoxYMin;
594 config_server::Parameter<float> gazeBallBoxYMax;
595 config_server::Parameter<float> gazeBallYawDeadband;
596 config_server::Parameter<float> gazeBallYawFreeLook;
601 config_server::Parameter<bool> oaEnableObstacleAvoidance;
602 config_server::Parameter<float> oaAngleAtObstacleHigh;
603 config_server::Parameter<float> oaMaxRadialGcvLow;
604 config_server::Parameter<float> oaMaxRadialGcvHigh;
605 config_server::Parameter<float> oaObstacleRadiusLow;
606 config_server::Parameter<float> oaObstacleRadiusMid;
607 config_server::Parameter<float> oaObstacleRadiusHigh;
608 config_server::Parameter<float> oaAdjustAngleXYHigh;
609 config_server::Parameter<float> oaAdjustGcvZHigh;
615 config_server::Parameter<float> wtgpAngleLimitNear;
616 config_server::Parameter<float> wtgpAngleLimitFar;
617 config_server::Parameter<float> wtgpDistNear;
618 config_server::Parameter<float> wtgpDistFar;
619 config_server::Parameter<float> wtgpSpeedNearXY;
620 config_server::Parameter<float> wtgpSpeedNearZ;
621 config_server::Parameter<float> wtgpSpeedFarX;
622 config_server::Parameter<float> wtgpSpeedFarZ;
627 config_server::Parameter<float> wtpArrivedCostMaxDefault;
628 config_server::Parameter<float> wtpArrivedWormTime;
633 config_server::Parameter<float> paTimeout;
638 config_server::Parameter<float> llrGazeFreqScaler;
644 config_server::Parameter<float> laGazeDownFirstFactor;
645 config_server::Parameter<float> laGazeMagInitial;
646 config_server::Parameter<float> laGazeMagInc;
647 config_server::Parameter<float> laGazePitchLookUp;
648 config_server::Parameter<float> laGazePitchLookDown;
649 config_server::Parameter<float> laGazeSplineAccMax;
650 config_server::Parameter<float> laGazeSplineVelMax;
655 config_server::Parameter<bool> sfbTCBallPoseEnable;
656 config_server::Parameter<float> sfbTCBallPoseDebounce;
657 config_server::Parameter<float> sfbStateRequestTimeout;
658 config_server::Parameter<float> sfbResumeCycleTime;
659 config_server::Parameter<float> sfbStayCoolTime;
660 config_server::Parameter<bool> sfbBackupEnabled;
661 config_server::Parameter<float> sfbBackupMargin;
662 config_server::Parameter<float> sfbBackupWalkGcvX;
663 config_server::Parameter<float> sfbBackupWalkTime;
664 config_server::Parameter<float> sfbBackupWaitTime;
665 config_server::Parameter<float> sfbLBPFreshTime;
666 config_server::Parameter<float> sfbLBPRadiusNear;
667 config_server::Parameter<float> sfbLBPRadiusFar;
668 config_server::Parameter<float> sfbLBPMinBallPoseDurNear;
669 config_server::Parameter<float> sfbLBPMinBallPoseDurFar;
670 config_server::Parameter<float> sfbLBPMaxBallPoseDurNear;
671 config_server::Parameter<float> sfbLBPMaxBallPoseDurFar;
672 config_server::Parameter<float> sfbLBPMinTimeToWalkNear;
673 config_server::Parameter<float> sfbLBPMinTimeToWalkFar;
674 config_server::Parameter<float> sfbSpinInsteadRadiusBwd;
675 config_server::Parameter<float> sfbSpinInsteadRadiusFwd;
676 config_server::Parameter<float> sfbWtgpDoneRadius;
677 config_server::Parameter<float> sfbWtgpDoneTime;
678 config_server::Parameter<float> sfbWtgpFailTime;
679 config_server::Parameter<float> sfbWtgpDistanceLow;
680 config_server::Parameter<float> sfbWtgpDistanceHigh;
681 config_server::Parameter<float> sfbWtgpTimeoutLow;
682 config_server::Parameter<float> sfbWtgpTimeoutHigh;
683 config_server::Parameter<float> sfbSpinGcvZ;
684 config_server::Parameter<float> sfbSpinGcvZSlow;
685 config_server::Parameter<float> sfbSpinTime;
686 config_server::Parameter<float> sfbSpinDebounceTime;
687 config_server::Parameter<float> sfbWalkFwdGcvX;
688 config_server::Parameter<float> sfbWalkFwdTime;
689 config_server::Parameter<float> sfbWalkFwdWaitTime;
694 config_server::Parameter<float> gbbAbsBetaHigh;
695 config_server::Parameter<float> gbbAbsBetaLow;
696 config_server::Parameter<float> gbbAngleLimitFar;
697 config_server::Parameter<float> gbbAngleLimitNear;
698 config_server::Parameter<float> gbbFootChangeMinConf;
699 config_server::Parameter<float> gbbFootChangeWormTime;
704 config_server::Parameter<float> gbbUnforceFootTime;
705 config_server::Parameter<float> gbbFullPathLen;
706 config_server::Parameter<float> gbbMinBallDistLeft;
707 config_server::Parameter<float> gbbMinBallDistRight;
708 config_server::Parameter<float> gbbProximityBetaDistTol;
709 config_server::Parameter<float> gbbProximityRadiusTol;
710 config_server::Parameter<float> gbbProximityValueMax;
711 config_server::Parameter<float> gbbPsiAwayFromBallBuf;
712 config_server::Parameter<float> gbbPsiAwayFromBallMax;
713 config_server::Parameter<float> gbbRadiusFar;
714 config_server::Parameter<float> gbbRadiusNear;
715 config_server::Parameter<float> gbbReqBallOffFadingAngle;
716 config_server::Parameter<float> gbbSpeedLimitXYZ;
717 config_server::Parameter<float> gbbSpeedFarX;
718 config_server::Parameter<float> gbbSpeedFarZ;
719 config_server::Parameter<float> gbbSpeedNearXY;
720 config_server::Parameter<float> gbbSpeedNearXYMin;
721 config_server::Parameter<float> gbbSpeedNearZ;
722 config_server::Parameter<float> gbbSpeedNearZMin;
723 config_server::Parameter<float> gbbStuckMaxBallDist;
724 config_server::Parameter<float> gbbStuckMaxGcv;
725 config_server::Parameter<float> gbbStuckTime;
726 config_server::Parameter<bool> gbbVisRobotHalo;
727 config_server::Parameter<bool> gbbVisSimple;
732 config_server::Parameter<float> dbAppFootChangeWormTime;
733 config_server::Parameter<float> dbAppAdjustPathAngleHigh;
734 config_server::Parameter<float> dbAppAdjustWalkAngleMax;
735 config_server::Parameter<float> dbAppAngleErrLimit;
736 config_server::Parameter<float> dbAppFunnelCurveRadius;
737 config_server::Parameter<float> dbAppFunnelNeckMag;
738 config_server::Parameter<float> dbAppFunnelEdgeExtra;
739 config_server::Parameter<float> dbAppMinPathTargetX;
740 config_server::Parameter<float> dbAppMaxPathTargetSlope;
741 config_server::Parameter<float> dbAppPathTargetLineOffsetX;
742 config_server::Parameter<float> dbAppPathOverdriveY;
743 config_server::Parameter<float> dbAppGcvSpeedX;
744 config_server::Parameter<float> dbAppGcvSpeedY;
745 config_server::Parameter<float> dbAppGcvSpeedZ;
746 config_server::Parameter<float> dbAppGcvSpeedLimit;
747 config_server::Parameter<float> dbBallMaxX;
748 config_server::Parameter<float> dbBallMaxYMag;
749 config_server::Parameter<float> dbBallMaxYMagExtra;
750 config_server::Parameter<float> dbBallSpreadSlope;
751 config_server::Parameter<float> dbBallSpreadSlopeExtra;
752 config_server::Parameter<float> dbBallSpreadAcc;
753 config_server::Parameter<float> dbBallSpreadAccExtra;
754 config_server::Parameter<float> dbTargetMinWedgeHigh;
755 config_server::Parameter<float> dbTargetDistForMinWedge;
756 config_server::Parameter<float> dbTargetDistForMinWedgeHigh;
757 config_server::Parameter<float> dbTargetWedgeForFarBall;
759 config_server::Parameter<float> dbOkToDribbleWormTime;
760 config_server::Parameter<float> dbStillOkToDribbleWormTime;
765 config_server::Parameter<float> kbBallErrorXFwd;
766 config_server::Parameter<float> kbBallErrorXFwdExtra;
767 config_server::Parameter<float> kbBallErrorYIwd;
768 config_server::Parameter<float> kbBallErrorYIwdExtra;
769 config_server::Parameter<float> kbBallErrorYOwd;
770 config_server::Parameter<float> kbBallErrorYOwdExtra;
771 config_server::Parameter<float> kbOkToKickWormTime;
776 config_server::Parameter<float> visFootLength;
777 config_server::Parameter<float> visFootWidth;
778 config_server::Parameter<float> visFootOffsetX;
779 config_server::Parameter<float> visFootOffsetY;
784 config_server::Parameter<bool> debugBlockGCPackets;
785 config_server::Parameter<bool> debugForceHalt;
786 config_server::Parameter<bool> debugForceNoBall;
787 config_server::Parameter<bool> debugForceNoPose;
788 config_server::Parameter<bool> debugForceNoKick;
789 config_server::Parameter<bool> debugForceNoDive;
790 config_server::Parameter<bool> debugMsgSensors;
791 config_server::Parameter<bool> debugMsgSFB;
792 config_server::Parameter<bool> debugMsgGBB;
793 config_server::Parameter<bool> debugMsgKB;
794 config_server::Parameter<bool> debugMsgDB;
795 config_server::Parameter<bool> debugMsgWTP;
796 config_server::Parameter<bool> debugMsgWTGP;
797 config_server::Parameter<bool> debugMsgROSTopics;
798 config_server::Parameter<bool> debugNoStoppedGcv;
802 bool forceKickLeftFoot;
803 bool forceKickRightFoot;
804 float confDecayFactorBall;
805 float confDecayFactorGoal;
806 float confDecayFactorPose;
807 float confDecayFactorObst;
810 void handleForceKickFoot() { forceKickLeftFoot = (sForceKickFoot() < 0); forceKickRightFoot = (sForceKickFoot() > 0); }
811 void handleHalfLife(
const config_server::Parameter<float>* configParam,
float* factor) {
float cycles = configParam->get()/TINC; *factor = (cycles <= 1e-6f ? 0.0 : std::pow(0.5, 1.0/cycles)); }
812 void handleForceKickIfChoice() {
if(forceKickIfChoice() && forceDribbleIfChoice()) forceDribbleIfChoice.set(
false); }
813 void handleForceDribbleIfChoice() {
if(forceKickIfChoice() && forceDribbleIfChoice()) forceKickIfChoice.set(
false); }
Configuration struct for the walk and kick node.
Definition: wak_config.h:20
config_server::Parameter< float > posPoseAttackingX
The common target rotation to be used as the destination of positioning (multiplied by 45 degrees...
Definition: wak_config.h:529
config_server::Parameter< bool > dbhDbZoneDisableCentreZone
Boolean flag to disable the circular dribble zone in the centre of the field.
Definition: wak_config.h:560
config_server::Parameter< float > llrGazePitch
Multiplicative scaler for the frequency of the head scan relative to a nominal frequency calculated f...
Definition: wak_config.h:639
config_server::Parameter< float > dbhDbZoneNearOwnGoalDepth
The distance from the own goal line (the one we are defending) closer than which there is a dribble z...
Definition: wak_config.h:558
config_server::Parameter< float > globalGcvShearXY
The desired multiplicative scaling of y over x walking velocities to ensure that the robot walks in t...
Definition: wak_config.h:431
config_server::Parameter< float > kickAngleDriftLeftKick
The average angle that the ball drifts CCW from straight ahead when being kicked by the left foot...
Definition: wak_config.h:446
config_server::Parameter< float > minBallTargetWedgeExtra
The minimum extra allowed ball target wedge size for "still ok" checks.
Definition: wak_config.h:441
config_server::Parameter< float > maxBallDist
Maximum believable reported distance to the ball.
Definition: wak_config.h:456
config_server::Parameter< float > gbbFootSelBallPoseYRatio
Lateral distance of the ball from the centre of the field (expressed as a ratio of the half field wid...
Definition: wak_config.h:700
config_server::Parameter< float > posPoseDefendingY
The global x offset from the behind-circle position for defending the kickoff if playing on the yello...
Definition: wak_config.h:533
config_server::Parameter< float > dbhCornerFootSelInsideX
The maximum x offset of the corner foot selection area from the goal line towards the centre line at ...
Definition: wak_config.h:552
config_server::Parameter< float > globalGcvBwdLimit
The global limit to the allowed backwards walking speed, the whole GCV is rescaled if necessary to sa...
Definition: wak_config.h:429
config_server::Parameter< float > posPoseDefendingT
The global y offset from the behind-circle position for defending the kickoff if playing on the yello...
Definition: wak_config.h:534
config_server::Parameter< int > posCommonTargetX
Flag whether to force the use of a common target as the destination of positioning.
Definition: wak_config.h:526
config_server::Parameter< bool > dbhDbZoneDisableAnnulusZone
Boolean flag to disable the annulus-shaped dribble zone that is defined by the kick distance paramete...
Definition: wak_config.h:559
config_server::Parameter< float > dbhDbZoneNearOppGoalDepth
The distance from the opponent's goal line (the one we score in) closer than which there is a dribble...
Definition: wak_config.h:557
WAKConfig()
Constructor.
Definition: wak_config.h:24
config_server::Parameter< int > posCommonTargetRot
The common target y value to be used as the destination of positioning (-2 = Neg side line...
Definition: wak_config.h:528
config_server::Parameter< float > kickAngleDriftRightKick
The average angle that the ball drifts CCW from straight ahead when being kicked by the right foot...
Definition: wak_config.h:447
config_server::Parameter< float > maxBallTargetWedge
The maximum allowed ball target wedge size.
Definition: wak_config.h:439
config_server::Parameter< float > wtgpAngleErrorCost
Scale factor to convert the cost of angular deviations in the final pose to equivalent distance devia...
Definition: wak_config.h:614
config_server::Parameter< float > dbhCornerTangentAngleLow
The tangent angle at which the maximum nominal ball target corner adjustment should be dbhCornerAdjus...
Definition: wak_config.h:548
config_server::Parameter< float > dbhCornerFootSelOutsideX
The maximum x offset of the corner foot selection area from the goal line towards the centre line at ...
Definition: wak_config.h:553
config_server::Parameter< float > posPoseLegalWormTime
The safety distance that the robot should be away from an illegal pose to ensure that it is not posit...
Definition: wak_config.h:540
config_server::Parameter< float > posPoseAttackingY
The global x offset from the centre for taking the kickoff if playing on the yellow goal (centre x is...
Definition: wak_config.h:530
config_server::Parameter< float > dbhNearPostTargetWedge
The fixed target wedge that should be used near the goal posts and nets to ensure that the robot just...
Definition: wak_config.h:555
config_server::Parameter< float > dbBallDistForFarBall
The ball distance, in addition to the required ball distance for dribble, for which a ball is conside...
Definition: wak_config.h:758
config_server::Parameter< float > dbhCornerFootSelPostOffY
The minimum y offset of the corner foot selection area from the outer goal post.
Definition: wak_config.h:554
config_server::Parameter< float > dribbleAccuracyWedge
The angular accuracy of normal dribbling, expressed as a wedge angle.
Definition: wak_config.h:448
const std::string CONFIG_PARAM_PATH
Path for the walk and kick configuration parameters on the config server.
Definition: wak_config.h:395
config_server::Parameter< float > kickMinDist
The minimum distance that the robot can normally kick.
Definition: wak_config.h:445
config_server::Parameter< float > posPoseGoalieX
The global for defending the kickoff if playing on the yellow goal.
Definition: wak_config.h:535
config_server::Parameter< float > posPoseGoalieT
The global y offset from the goal centre for the goalie if playing on the yellow goal (goal centre y ...
Definition: wak_config.h:537
config_server::Parameter< float > posArrivedCostMax
The global for the goalie if playing on the yellow goal.
Definition: wak_config.h:538
config_server::Parameter< float > dbhCornerAdjustmentAngle
The maximum angle by which to adjust the ball target to get the ball out of the corner quicker...
Definition: wak_config.h:547
config_server::Parameter< bool > dbhCornerFootSelDisable
Boolean flag whether to disable corner foot selection.
Definition: wak_config.h:551
config_server::Parameter< float > dbhGoalPostRadiusExtra
An additive value to the goal post radius, to provide extra buffer distance around the goal post for ...
Definition: wak_config.h:546
config_server::Parameter< float > gbbFootSelWeightLessDist
The higher this weight, the more the robot chooses the foot with the shorter distance to the behind b...
Definition: wak_config.h:702
config_server::Parameter< float > dbhGoalPostRadius
The radius from the centre of a goal post at which the ball can roll past the goal post (plus a littl...
Definition: wak_config.h:545
config_server::Parameter< float > gbbFootSelWeightBallPose
The higher this weight, the more the robot chooses a foot that tends to put the robot in a position b...
Definition: wak_config.h:701
config_server::Parameter< float > posPoseDefendingX
The global for taking the kickoff if playing on the yellow goal.
Definition: wak_config.h:532
config_server::Parameter< float > reqBallOffsetYDribbleMag
The required dribble y ball offsets are calculated as the mean of the normal y left/right ball offset...
Definition: wak_config.h:436
config_server::Parameter< int > posCommonTargetY
The common target x value to be used as the destination of positioning (-3 = Neg goal line...
Definition: wak_config.h:527
config_server::Parameter< float > posPoseGoalieY
The global x offset from the goal centre for the goalie if playing on the yellow goal (goal centre x ...
Definition: wak_config.h:536
config_server::Parameter< float > gbbFootSelMinLRDist
Minimum distance between the required left and right foot poses that is used for the normalisation of...
Definition: wak_config.h:703
config_server::Parameter< float > posPoseAttackingT
The global y offset from the centre for taking the kickoff if playing on the yellow goal (centre y is...
Definition: wak_config.h:531
config_server::Parameter< float > dbhDbZoneCentreRadius
The radius of the dribble zone at the centre of the field.
Definition: wak_config.h:556
config_server::Parameter< float > globalGcvSpeedLimit
The master commanded GCV norm limit, effectively globally capping the speed that can be commanded by ...
Definition: wak_config.h:430
config_server::Parameter< float > kickAccuracyWedge
The angular accuracy of a normal kick, expressed as a wedge angle.
Definition: wak_config.h:443
config_server::Parameter< float > dbhCornerTangentWedgeLow
The tangent wedge at which the tanget wedge should start possibly limiting the ball target corner adj...
Definition: wak_config.h:550
config_server::Parameter< float > kickMaxDist
The maximum distance the robot can normally ever kick.
Definition: wak_config.h:444
const std::string CONFIG_SETTINGS_PATH
Path for the robot settings on the config server.
Definition: wak_config.h:396
config_server::Parameter< float > dbhCornerTangentAngleHigh
The tangent angle at which the maximum nominal ball target corner adjustment should be zero (coerced ...
Definition: wak_config.h:549
config_server::Parameter< float > minBallTargetWedge
The minimum allowed ball target wedge size.
Definition: wak_config.h:440
config_server::Parameter< bool > dbhDbZoneDisableGoalZones
Boolean flag to disable the two goal-strip dribble zones.
Definition: wak_config.h:561