Autonomous Logistics UGV
Overview
Our team built an autonomous mail delivery robot for the UCSD ECE/MAE 148 course. The goal was to navigate a simulated city environment, following lanes, obeying traffic signals (stop signs), and delivering packages to designated addresses marked by AprilTags.

Key Features
- Lane Following: Robust PID control loop using computer vision to stay centered in lanes.
- Object Detection: Custom-trained YOLOv8 Nano model running on an OAK-D camera to detect stop signs and pedestrians.
- AprilTag Localization: Precise pose estimation to identify delivery targets.
- Mission Control: State machine architecture (ROS2) handling navigation, waiting, and delivery logic.
System Architecture
The robot is built on a 1/10th scale chassis powered by an NVIDIA Jetson Orin Nano. We used a distributed node architecture in ROS2.
Hardware Setup
- Compute: NVIDIA Jetson Orin Nano
- Camera: Luxonis OAK-D (Wide Angle)
- Chassis: Traxxas / Custom 3D Printed mounts
- Actuation: VESC Motor Controller + Servo Steering
Neural Network: YOLOv8
We trained a custom YOLOv8 Nano model on a dataset of our specific delivery boxes and course elements. This model was compiled into a .blob file to run natively on the OAK-Dβs Myriad X VPU, essentially offloading the heavy inference work from the main CPU.
The model detecting a delivery target in low-light conditions.
Development Process
1. Data Collection & Training
We collected over 500 images of the course environment and labeled them using Roboflow. The dataset helped our model generalize well to different lighting conditions.

2. ROS2 Implementation
We developed several custom nodes:
lane_follower_node: Processes camera feed to find lane centroids.object_detector_node: Wrapper for the OAK-D AI pipeline.mission_controller: The βbrainβ that switches between following lanes and executing delivery stops.
Results
Our robot successfully navigated the final course, stopping correctly at all stop signs and delivering the payload to the correct address 80% of the time during the final demo.
