Implements Phase 3 ride-once-replay-forever route system. saltybot_routes package: - route_recorder_node: samples GPS+odom+heading at 1Hz during follow-me rides; 2m waypoint spacing; JSON-Lines .jsonl on NVMe /data/routes/; services start_recording/stop_recording/save/discard - route_replayer_node: loads .jsonl, GPS->ENU flat-earth conversion, heading->quaternion, 3m subsampling for Nav2 navigate_through_poses; 2m GPS tolerance (SIM7600X +-2.5m); pause/resume/stop services - route_manager_node: list/info/delete services for saved routes - route_system.launch.py: all three nodes with shared params - route_params.yaml: waypoint_spacing_m=2.0, replay_spacing_m=3.0 GPS: /gps/fix from SIM7600X (PR #65) UWB: /uwb/target from follow-me (PR #66) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
32 lines
1004 B
XML
32 lines
1004 B
XML
<?xml version="1.0"?>
|
|
<?xml-model href="http://download.ros.org/schema/package_format3.xsd" schematypens="http://www.w3.org/2001/XMLSchema"?>
|
|
<package format="3">
|
|
<name>saltybot_routes</name>
|
|
<version>0.1.0</version>
|
|
<description>Route recording and autonomous replay for SaltyBot — "Ride once, replay forever."</description>
|
|
<maintainer email="seb@saltylab.io">seb</maintainer>
|
|
<license>MIT</license>
|
|
|
|
<buildtool_depend>ament_python</buildtool_depend>
|
|
|
|
<depend>rclpy</depend>
|
|
<depend>sensor_msgs</depend>
|
|
<depend>geometry_msgs</depend>
|
|
<depend>nav_msgs</depend>
|
|
<depend>std_msgs</depend>
|
|
<depend>std_srvs</depend>
|
|
<depend>nav2_msgs</depend>
|
|
|
|
<exec_depend>robot_localization</exec_depend>
|
|
<exec_depend>nav2_bringup</exec_depend>
|
|
|
|
<test_depend>ament_copyright</test_depend>
|
|
<test_depend>ament_flake8</test_depend>
|
|
<test_depend>ament_pep257</test_depend>
|
|
<test_depend>pytest</test_depend>
|
|
|
|
<export>
|
|
<build_type>ament_python</build_type>
|
|
</export>
|
|
</package>
|