Files
Cognitive_Agent/platforms/t2g_seat_bench/calibration/seat.yaml
T

112 lines
3.7 KiB
YAML
Executable File

version: 2.0.0
status: hil_verified
domain: seat
source:
firmware_store_format: SMV8
verified_on: 2026-07-30
test_status: ../../../firmware/t2g/Seat_Controller_demo/Docs/HIL_TEST_STATUS_2026-07-30.md
protocol:
version: 1
bitrate: 500000
frame_format: classic_can_11_bit
payload_bytes: 8
absolute_position_opcode: 1
timed_duty_opcode: 3
stop_all_opcode: 9
start_dynamic_mode_opcode: 14
stop_dynamic_mode_opcode: 15
dynamic_status_frame_id: 774
stop_all_motor_selector: 0
home_known_range_opcode: 11
home_known_range_key: 19282
home_known_range_timeout_s: 120
normalized_position_max: 10000
# A full M0 stroke takes more than the firmware's legacy 12 s default.
# Always send this override with Opcode 1 so every calibrated axis has
# enough time to reach either endpoint on the physical bench.
absolute_position_timeout_ms: 30000
# The currently deployed SMV8 image commits Work Flash as soon as an axis
# stops. Give that blocking persistence step time to finish before the next
# axis command; the updated image additionally batches the four-axis save.
inter_axis_settle_ms: 2000
default_duty_percent: 90
timed_duty_level_scale: 10
timed_duty_min_duration_ms: 300
# User-specified duration commands are bounded per axis below. A long
# request is clamped, but reaching a proven endpoint before the timer ends
# is a successful completion rather than a motion error.
timed_duty_max_duration_ms: 30000
increase_direction: 1
decrease_direction: 2
dynamic_modes:
max_runtime_ms: 600000
arrival_grace_ms: 30000
rocking_horse:
mode_id: 1
phases:
- {id: rock_forward, completion: all_targets_reached, timeout_ms: 15000}
- {id: rock_backward, completion: all_targets_reached, timeout_ms: 15000}
cradle:
mode_id: 2
phases:
- {id: forward, completion: all_targets_reached, timeout_ms: 30000}
- {id: return, completion: all_targets_reached, timeout_ms: 30000}
axes:
seat.set_longitudinal_position:
motor_selector: 0
physical_mode: 0
physical_name: horizontal_fore_aft
physical_unit: mm
physical_full_scale_x100: 21500
default_max_hall_count: 480
default_timeout_ms: 12000
timed_duty_ms_per_pct: 120
timed_duty_percent: 90
max_user_timed_duration_ms: 30000
max_uncalibrated_relative_pct: 15
hardware_verified: true
seat.set_cushion_tilt:
motor_selector: 1
physical_mode: 1
physical_name: seat_pan_oblique_height
physical_unit: percent
physical_full_scale_x100: 10000
horizontal_full_scale_x100: 5100
vertical_full_scale_x100: 5600
default_max_hall_count: 374
default_timeout_ms: 8000
timed_duty_ms_per_pct: 80
timed_duty_percent: 90
max_user_timed_duration_ms: 20000
max_uncalibrated_relative_pct: 15
hardware_verified: true
seat.set_backrest_recline:
motor_selector: 2
physical_mode: 2
physical_name: backrest_recline
physical_unit: degree
physical_full_scale_x100: 6800
display_zero_degree_x100: 9500
default_max_hall_count: 917
default_timeout_ms: 12000
timed_duty_ms_per_pct: 120
timed_duty_percent: 90
max_user_timed_duration_ms: 30000
max_uncalibrated_relative_pct: 15
hardware_verified: true
seat.set_legrest_height:
motor_selector: 3
physical_mode: 3
physical_name: legrest_lift
physical_unit: degree
physical_full_scale_x100: 7200
display_zero_degree_x100: 9500
default_max_hall_count: 647
default_timeout_ms: 10000
timed_duty_ms_per_pct: 100
# The physical M3 actuator enters protection at 90% on this bench.
timed_duty_percent: 50
max_user_timed_duration_ms: 25000
max_uncalibrated_relative_pct: 15
hardware_verified: true