# gazebo-ackermann-ROS2
**Repository Path**: phenixcode/gazebo-ackermann-ROS2
## Basic Information
- **Project Name**: gazebo-ackermann-ROS2
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-11-09
- **Last Updated**: 2025-11-09
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# AUTONOMOUS VEHICLE: CONTROL AND BEHAVIOUR
AutoCarROS has migrated to ROS 2 Foxy Fitzroy
## Abstract
This project contains the ROS 2 variant of the [AutoCarROS](https://github.com/winstxnhdw/AutoCarROS) repository. It is a template for the development of a robust non-holonomic autonomous vehicle platform in a simulated environment using ROS 2 and Gazebo 11.
> The following GIF demonstrates a simulation built on top of AutoCarROS 2.
## Installation
Create a workspace
```bash
$ mkdir -p PATH/TO/WORKSPACE/src
$ cd src
```
Clone the repository.
```bash
$ git clone https://github.com/winstxnhdw/AutoCarROS2.git
$ cd PATH/TO/WORKSPACE/src/AutoCarROS2
```
Install ROS 2 **and** the required dependencies.
```bash
sh ros-foxy-desktop-full-install.sh
```
If you only need to install the required dependencies, run the following. Otherwise, skip this step.
```bash
sh requirements.sh
```
Build the packages.
```bash
$ cd PATH/TO/WORKSPACE/
$ colcon build
```
Append the workspace to .bashrc.
```bash
$ echo "source PATH/TO/WORKSPACE/install/setup.bash" >> ~/.bashrc
$ source ~/.bashrc
```
## Usage
When using this project for the first time, it is necessary that the user builds the packages before attempting to run the launch files.
```bash
# Change directory to your desired workspace
cd PATH/TO/WORKSPACE/
# Build packages
$ colcon build
```
There are two launch files the user can use. More details in the [Launch Files](#Launch-Files) section.
```bash
# Launch the default launch file
$ ros2 launch launches default_launch.py
# OR
# Launch the interactive launch file
$ ros2 launch launches click_launch.py
```
## Launch Files
|Launch File|Purpose|
|-----------|-------|
|`default_launch.py`|Complete pipeline with preset waypoints|
|`click_launch.py`|Interactive pipeline for testing and fun|
## Packages
|Package|Purpose|
|-----------|-------|
|`launches`|Contains the main launch files for quick launching|
|`autocar_description`|Contains the model's URDF and RViz configuration files|
|`autocar_gazebo`|Contains the world files and model's SDF|
|`autocar_map`|Contains the Bayesian Occupancy Filter stack|
|`autocar_msgs`|Contains all custom messages used throughout every package|
|`autocar_nav`|Contains the navigation stack|
## Troubleshoot
There are occasions where `colcon build` does not properly rebuild the 'build' and 'install' folders, especially when one has made changes to the `CMakeLists.txt`. In the following, a simple quick fix can be performed.
```bash
# Remove build and install files
$ cd PATH/TO/WORKSPACE/
$ rm -rf build install
```
## Renders
"Because the layman doesn't care unless it looks cool."