Project-01 for the course ENPM662: Introduction to Robot Modeling (Fall 2021).
The aim of this project was to model a robot car in SolidWorks from scratch and export it to the Unified Robot Description Format (URDF) with links, joints and transmission blocks along with a LiDAR sensor mounted on the car. Controllers were added to the joints of the car such that the front wheels can be turned and the rear wheels make it move forward, as visualized in ROS's Gazebo and RViz environments.
The robot car was physically modeled with inspiration from Dominos' autonomous delivery car (Nuro R2, see below picture 1), with modified lengths and wheel diameter. The original design credits belong to the mentioned company, and no copyrights infringements were intended as the car was used as reference for educational purposes only.
All the SolidWorks CAD parts and assembly of the car are in the /CAD
directory.
-
ROS Publisher-Subscriber to move the car in straight-line and circular trajectories.
-
Visualizing the mounted LiDAR data in RViz.
Place the delivery_car
ROS package in the /src
directory of your catkin workspace and build it using cd ~/catkin_ws && catkin_make
1. For the teleop-demo:
In a terminal window, run the follwoing to launch the car in given Gazebo world:
roslaunch delivery_car template_launch.launch
In another terminal window, run:
rosrun delivery_car delivery_car_teleop.py
2. For the publisher-subscriber demo:
In a terminal window, run the follwoing to launch the car in the given Gazebo world:
roslaunch delivery_car template_launch.launch
In another terminal window, run the following for the publisher:
rosrun delivery_car move_bot_pub.py
In a third terminal window, run the following for the subscriber:
rosrun delivery_car move_bot_sub.py