Skip to content

Commit ab69f74

Browse files
cleWu03texhnolyze
authored andcommitted
fix for falling after stop state, is now integrated later in hcm and in bodybehaviour too
1 parent 4fa09bb commit ab69f74

3 files changed

Lines changed: 43 additions & 34 deletions

File tree

src/bitbots_behavior/bitbots_body_behavior/bitbots_body_behavior/behavior_dsd/decisions/game_state_decider.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,12 @@ def perform(self, reevaluate=False):
1616
:return:
1717
"""
1818

19-
game_state_number = self.blackboard.gamestate.get_gamestate()
19+
game_state_number = self.blackboard.gamestate.get_game_state()
20+
is_stopped = self.blackboard.gamestate.is_stopped()
2021
# todo this is a temporary hack to make GUI work
21-
if game_state_number == GameState.STATE_INITIAL:
22+
if is_stopped:
23+
return "STOPPED"
24+
elif game_state_number == GameState.STATE_INITIAL:
2225
return "INITIAL"
2326
elif game_state_number == GameState.STATE_READY:
2427
return "READY"

src/bitbots_behavior/bitbots_body_behavior/bitbots_body_behavior/behavior_dsd/main.dsd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,4 +162,4 @@ $IsPenalized
162162
NORMAL --> #NormalBehavior
163163
OVERTIME --> #NormalBehavior
164164
STANDBY --> #StandAndLook
165-
165+
STOPPED --> #DoNothing

src/bitbots_motion/bitbots_hcm/bitbots_hcm/hcm_dsd/hcm.dsd

Lines changed: 37 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -21,35 +21,41 @@ $StartHCM
2121
TEACH --> @RobotStateRecord, @SetTorque + stiff:false, @Wait
2222
HOLD --> @SetTorque + stiff:true, @Wait
2323
FINISHED --> @SetTorque + stiff:true + r:false, @RobotStateControllable, @PlayAnimationDynup + direction:walkready + r:false
24-
OFF --> $GameControllerStop
24+
OFF --> $Stop
2525
STOPPED --> @RobotStatePenalty, @CancelGoals, @StopWalking, @PlayAnimationDynup + direction:walkready + r:false, @Wait
26-
FREE --> $Stop
27-
STOPPED --> @RobotStatePenalty, @CancelGoals, @StopWalking, @PlayAnimationDynup + direction:walkready + r:false, @Wait
28-
FREE -->$CheckIMU
29-
IMU_NOT_STARTED --> @RobotStateStartup, @WaitForIMUStartup
30-
PROBLEM --> @RobotStateHardwareProblem, @WaitForIMU
31-
OKAY --> $CheckPressureSensor
32-
PRESSURE_NOT_STARTED --> @RobotStateStartup, @WaitForPressureStartup
33-
PROBLEM --> @RobotStateHardwareProblem, @WaitForPressure
34-
OKAY --> $PickedUp
35-
PICKED_UP --> @RobotStatePickedUp, @PlayAnimationDynup + direction:walkready + r:false, @Wait
36-
ON_GROUND --> $Fallen
37-
FALLEN_FRONT --> @RobotStateFallen, @CancelGoals, @StopWalking, @RobotStateGettingUp, @PlayAnimationStandupFront, @SetSquat + squat:true
38-
FALLEN_BACK --> @RobotStateFallen, @CancelGoals, @StopWalking, @RobotStateGettingUp, @SetFootZero, @PlayAnimationFallingBack, @PlayAnimationStandupBack, @SetSquat + squat:true
39-
FALLEN_RIGHT --> @RobotStateFallen, @CancelGoals, @StopWalking, @PlayAnimationTurningFrontRight
40-
FALLEN_LEFT --> @RobotStateFallen, @CancelGoals, @StopWalking, @PlayAnimationTurningFrontLeft
41-
NOT_FALLEN --> $Falling
42-
FALLING_LEFT --> @RobotStateFalling, @CancelGoals, @StopWalking, @PlayAnimationFallingLeft, @Wait
43-
FALLING_RIGHT --> @RobotStateFalling, @CancelGoals, @StopWalking, @PlayAnimationFallingRight, @Wait
44-
FALLING_FRONT --> @RobotStateFalling, @CancelGoals, @StopWalking, @PlayAnimationFallingFront, @Wait
45-
FALLING_BACK --> @RobotStateFalling, @CancelGoals, @StopWalking, @PlayAnimationFallingBack, @Wait
46-
NOT_FALLING --> $InSquat
47-
YES --> @RobotStateGettingUp, @Complain, @PlayAnimationDynup + direction:rise, @SetSquat + squat:false
48-
NO --> $PlayingExternalAnimation
49-
ANIMATION_RUNNING --> @StopWalking, @RobotStateAnimationRunning, @Wait
50-
ANIMATION_SERVER_TIMEOUT --> @CancelAnimation
51-
FREE --> $RecentWalkingGoals
52-
STAY_WALKING --> @RobotStateWalking, @Wait
53-
NOT_WALKING --> $RecentKickGoals
54-
KICKING --> @RobotStateKicking, @Wait
55-
NOT_KICKING --> @RobotStateControllable, @Wait
26+
FREE -->$CheckIMU
27+
IMU_NOT_STARTED --> @RobotStateStartup, @WaitForIMUStartup
28+
PROBLEM --> @RobotStateHardwareProblem, @WaitForIMU
29+
OKAY --> $CheckPressureSensor
30+
PRESSURE_NOT_STARTED --> @RobotStateStartup, @WaitForPressureStartup
31+
PROBLEM --> @RobotStateHardwareProblem, @WaitForPressure
32+
OKAY --> $PickedUp
33+
PICKED_UP --> @RobotStatePickedUp, @PlayAnimationDynup + direction:walkready + r:false, @Wait
34+
ON_GROUND --> $Fallen
35+
FALLEN_FRONT --> $GameControllerStop
36+
STOPPED --> @RobotStateFallen, @CancelGoals, @StopWalking, @Wait
37+
FREE --> @RobotStateFallen, @CancelGoals, @StopWalking, @RobotStateGettingUp, @PlayAnimationStandupFront, @SetSquat + squat:true
38+
FALLEN_BACK --> $GameControllerStop
39+
STOPPED --> @RobotStateFallen, @CancelGoals, @StopWalking, @Wait
40+
FREE --> @RobotStateFallen, @CancelGoals, @StopWalking, @RobotStateGettingUp, @SetFootZero, @PlayAnimationFallingBack, @PlayAnimationStandupBack, @SetSquat + squat:true
41+
FALLEN_RIGHT --> $GameControllerStop
42+
STOPPED --> @RobotStateFallen, @CancelGoals, @StopWalking, @Wait
43+
FREE --> @RobotStateFallen, @CancelGoals, @StopWalking, @PlayAnimationTurningFrontRight
44+
FALLEN_LEFT --> $GameControllerStop
45+
STOPPED --> @RobotStateFallen, @CancelGoals, @StopWalking, @Wait
46+
FREE --> @RobotStateFallen, @CancelGoals, @StopWalking, @PlayAnimationTurningFrontLeft
47+
NOT_FALLEN --> $Falling
48+
FALLING_LEFT --> @RobotStateFalling, @CancelGoals, @StopWalking, @PlayAnimationFallingLeft, @Wait
49+
FALLING_RIGHT --> @RobotStateFalling, @CancelGoals, @StopWalking, @PlayAnimationFallingRight, @Wait
50+
FALLING_FRONT --> @RobotStateFalling, @CancelGoals, @StopWalking, @PlayAnimationFallingFront, @Wait
51+
FALLING_BACK --> @RobotStateFalling, @CancelGoals, @StopWalking, @PlayAnimationFallingBack, @Wait
52+
NOT_FALLING --> $InSquat
53+
YES --> @RobotStateGettingUp, @Complain, @PlayAnimationDynup + direction:rise, @SetSquat + squat:false
54+
NO --> $PlayingExternalAnimation
55+
ANIMATION_RUNNING --> @StopWalking, @RobotStateAnimationRunning, @Wait
56+
ANIMATION_SERVER_TIMEOUT --> @CancelAnimation
57+
FREE --> $RecentWalkingGoals
58+
STAY_WALKING --> @RobotStateWalking, @Wait
59+
NOT_WALKING --> $RecentKickGoals
60+
KICKING --> @RobotStateKicking, @Wait
61+
NOT_KICKING --> @RobotStateControllable, @Wait

0 commit comments

Comments
 (0)