B.O.B’s dimensions are 0.6 by 0.6 by 1.74 meters.
This robot’s main objective is to use ultraviolet light to disinfect any room, sanitize the surfaces with a proper dosage of UVC irradiation which is provided by a high-powered amalgam type quartz-crystal light bulb.
The mechanical aspects of the robot is the ability to rotate in place 360 degrees, provided by the clever placement and usage of dual independent motors and drive wheels. As the base and lamp batteries are separate, B.O.B.’s base is able to function continuously for up to 5 hours while the bulb is independently functional for up to 11.4 hours without recharging. The batteries employed in B.O.B. allow for up to 2500 lifecycles before interchange and retain at least 80% of the original charge. Coupled with this is a bulb that is rated to last for up to 13,000 hours which would allow B.O.B. to operate for a substantial amount of time before needing replacement parts. The choice of parts also lends to the minimal need for intensive maintenance.
The intent for the robot is to eventually create a modularized system allowing for customization by the client. To accomplish this, B.O.B. is compartmentalized where each section within the robot is designed to house different components vital to the operation of the robot. In the current model, the bottom layer includes the motors, wheels, and theLidar system. The layer above the bottom chassis is meant for the battery/energy storage compartment, holding a battery case along with the batteries. Above that is the electrical compartment housing the wiring, circuit boards, processors, and associated circuitry. The modularized design and relatively large base allows for a large degree of customization including but not limited to: increased energy storage, greater mobility, in house storage for spare parts, or different user interface devices. The UVC component of B.O.B. includes a reflector at the top in order to increase horizontal coverage and conserve vertical coverage to necessary areas for exposure.
B.O.B. functions autonomously in regards to navigating a room, and throughout the disinfection process. In order to achieve this and map new environments, the robot utilizes a LIDAR sensor to detect the surrounding obstacles and room dimensions. The data is integrated through ROS packages provided by RoboPeak Public Repos (rplidar ros) and Stefan Fabian et. al. (Hector SLAM). These packages are licensed under the BSD 2-Clause "Simplified" License and the Creative Commons License 3 respectively. The robot free roams and avoids obstacles using proximity sensors and gpiozero module. Using the saved coordinates of obstacles, the robot can transition to the path planning and movement phases to irradiate the room.
Path planning is done in two steps. It takes the input of free space and obstacles within a grid system from the mapping system. The code attempts to find a list of points that provide the optimal Euclidean coverage based on the input. After a list of points is compiled, the robot uses the Python Robotics package built by Atsushi Sakai et al. to find a path through a Probabilistic Roadmap Planner and a Pure Pursuit Controller to control the motors in order to complete its path. These packages are under the MIT license which allows for “Commercial use, Modification, Distribution, Private use”.
With the planned path, the motor is controlled via a PID controller package. The PID controller modifies the motor strength output and steering to follow the path as close as possible. Once a destination is reached, the robot will stop and turn on it’s UV light for 5 minutes utilizing an integrated algorithm. This code also implements a motion sensor, such that the UV lamp will stop if someone were to be nearby the robot in a range of up to 7 meters. Thus, the robot can safely iterate through waypoints mapped across the room, and irradiate the room completely.