Stand Pose
set_stand_pose()
Python
set_stand_pose(delta_z: float, delta_pitch: float, delta_yaw: float)
Adjusts the robot's stand pose offset. Only effective in PdStand state (2) and RL Locomotion state (3); calls in other states have no effect.
| Parameter | Type | Description |
|---|---|---|
delta_z | float | Height offset (m), negative lowers the center of gravity |
delta_pitch | float | Pitch angle offset (rad), positive leans forward |
delta_yaw | float | Yaw angle offset (rad), positive turns left |
GR-3 pose range (PdStand): delta_z ∈ [-0.20, 0.01], delta_pitch ∈ [-0.3, 0.6], delta_yaw ∈ [-0.3, 0.3]
Example
Python
client.set_fsm_state(2)
time.sleep(1.0)
client.set_stand_pose(-0.1, 0.0, 0.0) # crouch 0.1 m
time.sleep(2.0)
client.set_stand_pose(0.0, 0.0, 0.0) # return to default
get_stand_pose()
Python
get_stand_pose() -> list[float]
Returns the current stand pose data as [delta_z, delta_pitch, delta_yaw, stable_level].
| Index | Description |
|---|---|
[0] | Current height offset delta_z (m) |
[1] | Current pitch offset delta_pitch (rad) |
[2] | Current yaw offset delta_yaw (rad) |
[3] | Stability level (see get_stable_level()) |
get_stable_level()
Python
get_stable_level() -> int
Reads the robot's current stability level. The PdStand controller uses this value to determine whether it is in the hanging phase or standing phase.
- Stability level ≥ 100 (simulation ≥ 10): standing phase — pose control and upper-body joint control available
- Stability level < 100 (simulation < 10): hanging phase — joints slowly return to default positions