
Robotic Software Architecture (COMP3431)
Autonomous navigation stack for TurtleBot3 using SLAM, sensor fusion, and custom control nodes.
Robotics Engineer
2023
Private
Overview
For my Robotic Software Architecture course at UNSW, I built an autonomous navigation system for the TurtleBot3 platform using ROS2. The project involved SLAM, wall-following behaviour, custom control nodes, sensor fusion, and real-time computer vision. The system was deployed in both simulation and physical robot environments.

ROS2-Based Navigation Stack
I designed the full ROS2 architecture, including custom nodes for control, perception, and mapping. The robot used SLAM to build dynamic maps of indoor environments, while a wall-following node allowed it to navigate safely through corridors and tight spaces.

Sensor Fusion: Camera + LiDAR
I implemented a real-time object detection pipeline by combining LiDAR range data with camera-based vision. Using OpenCV, the robot annotated detected objects on the map and reacted to them in real time, enhancing environmental awareness and navigation accuracy.
Custom ROS2 Nodes
I developed dedicated ROS2 nodes for: - Motion control (velocity commands, turning logic) - SLAM + map building - Vision processing and object detection - State-driven behaviour switching Each node was built for modularity, allowing the system to scale and interact cleanly via ROS2 topics and services.
Project Infrastructure
I managed the GitHub repository structure, launch files, package setups, and simulation configurations. The final system was demonstrated live in both Gazebo simulation and on a real TurtleBot3 platform.
“This project deepened my understanding of robotics architecture, ROS2 communication patterns, and sensor-driven autonomy.”