Desinfecto — Autonomous UV-C Disinfection Robot
Engineering project carried out over my three-year Robotics & Instrumentation program at Polytech Dijon: an autonomous mobile robot that disinfects hospital rooms by combining UV-C irradiation with conventional spraying. It started as a TurtleBot2 prototype and has grown into a dedicated robot designed with industrialization in mind, developed and tested in simulation under ROS 2 Jazzy and Gazebo Harmonic.
Dedicated robot (current version)
- Complete CAD design (650 × 620 × 1,960 mm, about 94.5 kg estimated with a full tank) exported to the URDF/Xacro model; automated tests keep the CAD and the simulation geometry consistent.
- Disinfection payload: 8 low-pressure UV-C lamps (720 W electrical) sized for at least 25 mJ/cm² at 2 m, and a 4-nozzle spraying system with a 15 L tank.
- Sensors and computing: Livox Mid-360 3D lidar on top of the mast, SICK safety laser scanner, two RGB-D cameras and an IMU, with an x86 main computer and an NVIDIA Jetson Orin Nano.
- Simulated hospital ward in Gazebo Harmonic (8 rooms, corridor, nursing station, charging station): 360° scan built from the Livox point cloud, SLAM with slam_toolbox, Nav2 navigation and autonomous exploration.
- Engineering file: specifications, bill of materials, power budget and battery autonomy (3 h target), stability study, electrical schematics, initial risk analysis, EU compliance file and verification & validation plan.
Operator web interface
- Robot-agnostic web interface (one YAML profile per robot) shared by the prototype, its simulation and the final robot.
- Real-time 2D and 3D map with lidar scans and point cloud, camera feed, manual driving and emergency stop.
- Programs (mapping, disinfection of a zone or of the whole map, rounds, docking), scheduling, history, reports and a supervision screen; commands protected by an operator token.
TurtleBot2 prototype (first iteration)
- Kobuki base, LDS-01 lidar and Orbbec Astra camera: SLAM (Cartographer, RTAB-Map), Nav2, frontier exploration, battery-triggered docking and a first UV-C coverage map.
- Ported from Gazebo Classic to Gazebo Harmonic, and run on the physical robot on a Jetson with ROS 2 Jazzy Docker images.
- Stopped because the required payload (UV-C mast, 15 L tank, batteries) exceeded what the TurtleBot2 chassis can carry; its lessons shaped the dedicated robot.
Technologies: ROS 2 Jazzy · Gazebo Harmonic · Nav2 · slam_toolbox · RTAB-Map · C++ · Python · URDF/Xacro · CAD · Docker · NVIDIA Jetson