Move integration test harness from tests/integration/ to src/harness/ as a feature-gated library module, enabling use by examples and tools. - Add pub mod harness (behind integration-tests feature) - Reorganize data files into data/maps/ and data/scenarios/ - Convert integration test to exploration example - Remove test-only boilerplate (mod.rs, yaml_tests.rs)
58 lines
1.5 KiB
YAML
58 lines
1.5 KiB
YAML
# Long Path Drift Test
|
|
#
|
|
# Tests cumulative drift over extended motion (20m total path).
|
|
# In a large room, the robot makes a zigzag pattern to cover distance
|
|
# while staying within bounds.
|
|
#
|
|
# Expected behavior:
|
|
# - Position error should grow slowly (< 0.75% of distance traveled)
|
|
# - After 20m, error should be < 15cm
|
|
# - ICP should maintain convergence throughout
|
|
#
|
|
# Map: 12m x 12m large empty room
|
|
# Path: Zigzag covering ~20m total distance
|
|
|
|
name: "drift_long_path"
|
|
map: "../maps/large_room.yaml"
|
|
|
|
start_pose:
|
|
x: 2.0
|
|
y: 6.0
|
|
theta: 0.0 # Facing +X
|
|
|
|
path:
|
|
# Leg 1: 4m forward (now at x=6, y=6)
|
|
- {left: 4.0, right: 4.0, speed: 0.5}
|
|
|
|
# Turn 90 degrees CCW (now facing +Y)
|
|
- {left: -0.183, right: 0.183, speed: 0.4}
|
|
|
|
# Leg 2: 4m forward (now at x=6, y=10)
|
|
- {left: 4.0, right: 4.0, speed: 0.5}
|
|
|
|
# Turn 90 degrees CW (now facing +X)
|
|
- {left: 0.183, right: -0.183, speed: 0.4}
|
|
|
|
# Leg 3: 4m forward (now at x=10, y=10)
|
|
- {left: 4.0, right: 4.0, speed: 0.5}
|
|
|
|
# Turn 90 degrees CW (now facing -Y)
|
|
- {left: 0.183, right: -0.183, speed: 0.4}
|
|
|
|
# Leg 4: 2m forward (now at x=10, y=8)
|
|
- {left: 2.0, right: 2.0, speed: 0.5}
|
|
|
|
# Turn 90 degrees CW (now facing -X)
|
|
- {left: 0.183, right: -0.183, speed: 0.4}
|
|
|
|
# Leg 5: 4m forward (now at x=6, y=8)
|
|
- {left: 4.0, right: 4.0, speed: 0.5}
|
|
|
|
# Turn 90 degrees CCW (now facing -Y)
|
|
- {left: -0.183, right: 0.183, speed: 0.4}
|
|
|
|
# Leg 6: 2m forward (final position at x=6, y=6)
|
|
- {left: 2.0, right: 2.0, speed: 0.5}
|
|
|
|
# Total: 4+4+4+2+4+2 = 20m of travel
|