24 lines
1.1 KiB
YAML
24 lines
1.1 KiB
YAML
# Rotary cartpole (Furuta pendulum) — real hardware config.
|
||
# Describes the physical device for the SerialRunner.
|
||
# Robot-specific constants that don't belong in the runner config
|
||
# (which is machine-specific: port, baud) or the env config
|
||
# (which is task-specific: rewards, max_steps).
|
||
|
||
encoder:
|
||
ppr: 11 # pulses per revolution (before quadrature)
|
||
gear_ratio: 30.0 # gearbox ratio
|
||
# counts_per_rev = ppr × gear_ratio × 4 (quadrature) = 1320
|
||
|
||
safety:
|
||
max_motor_angle_deg: 90.0 # hard termination limit (physical endstop ~70-80°)
|
||
soft_limit_deg: 40.0 # progressive penalty ramp starts here
|
||
|
||
reset:
|
||
drive_speed: 80 # PWM magnitude for bang-bang drive-to-center
|
||
deadband: 15 # encoder count threshold to consider "centered"
|
||
drive_timeout: 3.0 # seconds before giving up on drive-to-center
|
||
settle_angle_deg: 2.0 # pendulum angle threshold for "still" (degrees)
|
||
settle_vel_dps: 5.0 # pendulum velocity threshold (deg/s)
|
||
settle_duration: 0.5 # how long pendulum must stay still (seconds)
|
||
settle_timeout: 30.0 # give up waiting after this (seconds)
|