Repository Summary
| Description | Autonomous Navigation Framework |
| Checkout URI | https://github.com/harunteper/auna.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2025-10-30 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Tags | No category tags. |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Packages
| Name | Version |
|---|---|
| auna_cacc | 1.0.0 |
| auna_comm | 1.0.0 |
| auna_control | 1.0.0 |
| auna_ekf | 1.0.0 |
| auna_f110 | 1.0.0 |
| auna_gazebo | 1.0.0 |
| auna_ground_truth | 1.0.0 |
| auna_its_msgs | 1.0.0 |
| auna_msgs | 1.0.0 |
| auna_nav2 | 1.0.0 |
| auna_omnet | 1.0.0 |
| auna_teleoperation | 1.0.0 |
| auna_template | 1.0.0 |
| auna_tf | 1.0.0 |
| auna_wallfollowing | 1.0.0 |
| auna_waypoints | 1.0.0 |
README
AuNa: Autonomous Navigation System Simulator
A comprehensive ROS2-based framework for autonomous vehicle simulation, featuring cooperative driving scenarios, multi-robot coordination, and advanced navigation algorithms. The system uses Docker Compose for easy deployment and provides Gazebo simulation with RViz visualization.

🚀 Key Features
- Multi-Robot Simulation: Support for multiple autonomous vehicles in coordinated scenarios
- CACC Implementation: Cooperative Adaptive Cruise Control for platooning scenarios
- Advanced Navigation: Integration with ROS2 Navigation2 stack for path planning and obstacle avoidance
- Wall Following: Robust wall-following algorithms using LIDAR data
- Docker-based Deployment: Simple containerized deployment - no manual installation required
- Real-time Visualization: Gazebo 3D simulation with RViz integration
🛠️ Installation
Prerequisites: Docker with docker compose support
- Clone the repository:
git clone https://github.com/HarunTeper/AuNa.git
cd AuNa
🚀 Usage
Running Simulations
The only supported method is through Docker Compose.
Important: Before running a scenario, configure the world in the .env file:
-
Edit the
.envfile in the project root:
# For racing scenario
WORLD_NAME=racetrack_decorated
# For platooning scenario
WORLD_NAME=arena
- Launch the scenario:
Racing Scenario (1 robot)
Set WORLD_NAME=racetrack_decorated in .env, then run:
docker compose --profile racing up
Platooning Scenario (3 robots)
Set WORLD_NAME=arena in .env, then run:
docker compose --profile platooning up
Available Worlds
-
racetrack_decorated- Racing track environment (default for racing) -
arena- Open arena environment (default for platooning)
After launching, Gazebo and RViz windows will start automatically.
🎮 RViz Configuration
Once the simulation starts, you’ll see both Gazebo (simulation) and RViz (visualization) windows.
Setting Up Robot Namespace in RViz
-
Enter the namespace in RViz for each robot you want to control:
- Format:
robot+ index (starting from 1) - Examples:
robot1,robot2,robot3
- Format:
-
Select input source after entering the namespace:
-
Default:
off(no autonomous control) -
Available sources:
-
wallfollowing- Follow walls using LIDAR -
teleop- Manual keyboard control -
nav2- Navigation2 path planning -
cacc- Cooperative Adaptive Cruise Control
-
-
Default:
Robot Role Configuration
Leader Robot (robot1)
For racetrack_decorated world:
- Use
wallfollowingfor autonomous wall following - Use
nav2for goal-based navigation
For arena world:
- Use
nav2for goal-based navigation - Use
caccfor coordinated movement
Follower Robots (robot2, robot3, …)
For all worlds:
- Use
caccfor following the leader robot in formation
Example Usage Flow
File truncated at 100 lines see the full file
CONTRIBUTING
Any contribution that you make to this repository will be under the MIT license, as dictated by that license.