Welcome to ROSMASTER A1 PRO repository
1.Introduction To Road Network Planning
🗺️ Road Network Planning and Navigation
🗺️ Road Network Planning and Navigation1. Course Content2. What is Road Network Planning?2.1 Plain English: From "Free Off-roading" to "Disciplined Driving"3. System Technical Architecture and Working Principles4. Learning Path for This Course Series
1. Course Content
In the field of mobile robot navigation, traditional SLAM navigation (such as Nav2's global costmap A*/NavFn planning) typically allows robots to freely find the shortest path anywhere in the free space of the entire map. However, in actual industrial manufacturing workshops, smart warehouses, or restricted park environments, letting robots roam freely may result in occupying sidewalks, driving against traffic and colliding with other vehicles, or frequently getting lost in narrow obstacle areas.
The functionality implemented in this lesson can be understood as: laying down invisible "virtual tracks" and a "digital road network" for the robot. Just like a car driving in city lanes, the robot must strictly follow the preset road topology, lane direction (one-way/two-way), and key stations. The robot can only enter or exit the road network at specific starting and ending points.
2. What is Road Network Planning?
2.1 Plain English: From "Free Off-roading" to "Disciplined Driving"
| Comparison Dimension | Traditional Nav2 Free Space Navigation | Road Network Navigation |
|---|---|---|
| Driving Logic | As long as there is no physical obstacle, any straight-line crossing is allowed | Can only travel along manually annotated "roads (edges)" and "stations (nodes)" |
| Path Determinism | High path randomness, each plan may be different | Highly deterministic paths, routes are predictable and auditable |
| Traffic Rule Support | Difficult to restrict vehicle direction (prone to reverse driving and deadlocks) | Naturally supports one-way roads, two-way roads, dedicated lanes and other traffic controls |
| Narrow Passage Pass Rate | Easily encounters expansion errors and gets lost near walls or narrow doors | Plans along centerline topology, stably passes through narrow corridors |
| Applicable Scenarios | Home vacuum robots, open exhibition halls | Automated factory AGVs, warehouse shelf logistics, park automated patrol tourist vehicles |
3. System Technical Architecture and Working Principles
This system runs on the A1PRO mobile robot and ROS 2 architecture. The core functionality is accomplished through the self-developed road_net_route navigation bridging module in coordination with the Nav2 system:
Map and Localization Layer (Base & Localization):
Uses LiDAR and chassis sensors, through the Cartographer algorithm, to pre-build high-precision grid maps (
map.yaml/map.pgm) and pose graphs (map.pbstream).At runtime, Cartographer's fast relocalization algorithm achieves extremely high-precision real-time global positioning, eliminating the drift jitter of traditional AMCL.
Topological Data Layer (GeoJSON Road Network):
Uses the internationally通用 GeoJSON geospatial data format to store road networks. Points (Point) represent stations or turning/branching intersections, and LineStrings represent drivable physical lanes.
Road Network Routing and Orchestration Layer (
road_net_route/route_bridge.py):Based on Dijkstra / A* topology graph search algorithms, resolves global shortest traversable topological paths between nodes and edges at millisecond level;
Has "nearby automatic road network entry (Bridging)" and "end pose fine-tuning alignment" capabilities;
Real-time combines with global costmap for forward-looking sampling obstacle detection. Once blocked, automatically triggers rollback and replanning mechanism.
Low-level Control Tracking Layer (Nav2 Controller):
After topological LineStrings are interpolated and discretized into smooth continuous paths, they are handed to Nav2's Regulated Pure Pursuit Controller to drive the chassis movement, ensuring active deceleration on curves and uniform speed on straightaways.
4. Learning Path for This Course Series
To help everyone master this industrial-grade road network navigation system from shallow to deep and systematically, this tutorial series is divided into the following five stages:
[01-Road Network Planning Introduction]: Understand the core value, concepts, and software architecture of topological road network navigation;
[02-Road Network Annotation]: Hands-on practice building Cartographer grid maps and pose maps, using
Route Toolto interactively draw road network nodes and edges, exporting.geojsondescription files;[03-Planning Navigation Between Waypoints]: Load the road network, specify start and goal point IDs via commands, master the robot's autonomous topological cruise along preset roads and core source code implementation;
[04-Arbitrary Pose Road Network Navigation]: Master the algorithm mechanism where when the goal position and orientation are not on a road network node, the robot first cruises via the road network at high speed, then automatically exits and accurately parks at the specified pose;
[05-Path Replanning]: Combat testing the advanced scheduling logic where when the road ahead encounters immovable obstacle blockages, the robot automatically identifies, rolls back to a safe topological node, and replans an alternate route.