No version for distro humble. Known supported distros are highlighted in the buttons above.
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
No version for distro rolling. Known supported distros are highlighted in the buttons above.
Repository Summary
Description | New version of my fake_car simulator targeting ROS 2 |
Checkout URI | https://github.com/berickson/sim_car.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2023-12-10 |
Dev Status | UNKNOWN |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
sim_car | 0.0.0 |
car_gazebo_plugin | 0.1.0 |
README
sim_car
New version of my http:/berickson/fake_car simulator targeting ROS 2. This is currently in early development and targeting Humble. It currently also works with Galactic.
My goal is to make a series of Gazebo models, worlds, and plugins to simulate my robots for test.
Getting Started
- install ROS2 Humble desktop full, see https://docs.ros.org/en/humble/Installation.html
- make a workspace, see https://docs.ros.org/en/humble/Tutorials/Beginner-Client-Libraries/Creating-A-Workspace/Creating-A-Workspace.html
- clone this repo into your workspaces src folder
- clone the repo https://github.com/berickson/nav2_line_following_controller into your src folder
- cd workspace folder
- install dependencies
pip3 install transforms3d
rosdep init
rosdep update
rosdep install -i --from-path src --rosdistro humble -y
- Then:
colcon build --symlink-install
source install/setup.bash
ros2 launch sim_car bringup.launch.py
- verify it works by driving with keyboard in another terminal:
source install/setup.bash
ros2 run teleop_twist_keyboard teleop_twist_keyboard
- Nav2 with SLAM will be running, navigatee using the 2D Goal Pose button in RViz
Models
car
- Simulate a Traxxas Slash robot like blue-crash (https://github.com/berickson/car).
- Ackermann steering
- Top mounted lidar
- Odometers on front wheels
- Independent shocks on all wheels
- Rear wheel drive
ROS 2 Integration
Topic | |
---|---|
/car/cmd_ackermann | Publish messages here to control the car |
/joy | Car listens to joystick and turns it into Ackermman commands |
/car/odo_fl | Odometer tick count for front left wheel |
/car/odo_fr | Odometer tick count for front right wheel |
/car/pose | Ground truth pose from Simulator |
/scan | Lidar scan output |
/joint_states | joint positions from Gazebo |
Launch Files
File | |
---|---|
all.launch.py | Run latest test setup in Gazebo, currently an Ackermann drive car in a simple world with joystick control |
bringup.launch.py | Launch full simulation with Ackermann model, Nav2 and SLAM |
spawn_car.launch.py | Spawn an Ackermann drive car in Gazebo |
spawn_world.launch.py | Launch Gazebo with an empty world |
Todo List
I keep the todo for this on in a Google Doc (https://docs.google.com/document/d/1eDoU0HPi217dMZmRpME3X8Uc7ZKnQc10sKgLSsA3TdY/edit?usp=sharing)
CONTRIBUTING
No CONTRIBUTING.md found.
No version for distro noetic. Known supported distros are highlighted in the buttons above.
No version for distro ardent. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.
No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro eloquent. Known supported distros are highlighted in the buttons above.
No version for distro dashing. Known supported distros are highlighted in the buttons above.
No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro foxy. Known supported distros are highlighted in the buttons above.
No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro lunar. Known supported distros are highlighted in the buttons above.
No version for distro jade. Known supported distros are highlighted in the buttons above.
No version for distro indigo. Known supported distros are highlighted in the buttons above.
No version for distro hydro. Known supported distros are highlighted in the buttons above.
No version for distro kinetic. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.