How yagnadatta25/multi-goal-logistics-amr-with-hybrid-predictive-dwa-and-directional-safety-reflex-loops. works
This ROS 2 warehouse AMR simulates a TurtleBot3 navigating a multi-goal warehouse with moving obstacles. The principal workflow sends waypoint goals through the dispatcher to Nav2; Nav2 proposes motion, and the Simulation Master uses LiDAR, odometry and obstacle predictions to supervise velocity commands before they reach the robot. Gazebo, localization, optional collision monitoring, visualization and recorded-run analysis are supporting capabilities. Some internal stages and integrations are documented in the README but their source was not sampled, so those links cite the README.
Main entry points: simulation_master.py Simulation Master · analyze_run.py Run Analysis · dispatcher_node.py Waypoint Dispatcher · warehouse_map.yaml Warehouse Map
Components 15
Mission and Navigation
- Waypoint Dispatcher
src/autonomous_logistics_sim/scripts/dispatcher_node.py - Nav2 Stack
- AMCL Localization
- Warehouse Map
src/autonomous_logistics_sim/maps/warehouse_map.yaml
Predictive Safety Control
- Simulation Master
src/autonomous_logistics_sim/scripts/simulation_master.py - LiDAR Tracking
src/autonomous_logistics_sim/scripts/simulation_master.py - Predictive DWA
src/autonomous_logistics_sim/scripts/simulation_master.py - Collision Monitor
Simulation Environment
- TurtleBot3 Robot
- Gazebo Simulation
- Warehouse World
src/autonomous_logistics_sim/worlds/warehouse.world - Moving Obstacles
src/autonomous_logistics_sim/scripts/obstacle_pacer.py
Visualization and Results
- Telemetry Viewer
src/autonomous_logistics_sim/scripts/telemetry_viewer.py - Run Analysis
demo_results/analyze_run.py
Other components
- Mission Goals
Connections 19
- Mission Goals → Waypoint Dispatcher: sets goals
src/autonomous_logistics_sim/scripts/dispatcher_node.py - Waypoint Dispatcher → Nav2 Stack: sends waypoints
src/autonomous_logistics_sim/scripts/dispatcher_node.py - Warehouse Map → Nav2 Stack: configures map
- AMCL Localization → Nav2 Stack: provides pose
README.md - Nav2 Stack → Simulation Master: proposes velocity
README.md - Simulation Master → LiDAR Tracking: tracks detections
README.md - Simulation Master → Predictive DWA: evaluates motion
README.md - LiDAR Tracking → Predictive DWA: supplies obstacle estimates
README.md - Simulation Master → Collision Monitor: publishes supervised velocity
README.md - Collision Monitor → TurtleBot3 Robot: filters commands
README.md - Simulation Master → TurtleBot3 Robot: publishes velocity
README.md - Gazebo Simulation → TurtleBot3 Robot: simulates robot
- Warehouse World → Gazebo Simulation: defines environment
- Moving Obstacles → Gazebo Simulation: commands obstacle
src/autonomous_logistics_sim/scripts/obstacle_pacer.py - TurtleBot3 Robot → Simulation Master: feeds sensors
README.md - TurtleBot3 Robot → Nav2 Stack: feeds sensors
README.md - Telemetry Viewer → Simulation Master: reads shared telemetry
src/autonomous_logistics_sim/scripts/telemetry_viewer.py - Run Analysis → TurtleBot3 Robot: analyzes recorded odometry
demo_results/analyze_run.py - Run Analysis → Simulation Master: analyzes run logs
demo_results/analyze_run.py