Size: ≤ 12” (length) x 36” (width) x 24” (height)
Weight: ≤ 10 lb.
Cost: ≤ $800 (reimbursable)
must be robustly constructed; no kits or toys
When the robot is initialized, it moves towards the stairs, using its array of sensors to detect the distances towards the edges of the staircase (it does not matter where the robot begins cleaning from). Eventually, the robot will detect the ledge or edge of the first stair in its path and align itself to begin the stair cleaning task. The robot will detect if it is at the top or bottom of a staircase using the measurements from its sensors. The robot will then follow one of two similar routines. If the robot is at the top of a staircase, it will move horizontally along the width of the stair to vacuum any debris, repeat this process, and then use its sensors to detect if there is a next step. If there is, then it will deploy its climbing mechanism to descend a step. Once there, it will repeat the clean-sense-descend process until it reaches the last step. Once it no longer detects a following step, the robot will exit the stair area and cease operation. If the robot is at the bottom of the stairs, it will go through the same process, except that the climbing mechanism is deployed to ascend the next steps rather than descend them.
The side limit switches and the forward ultrasonic sensors identify the robot’s position relative to the current step. Additionally, the IMU measures the robot’s orientation and acceleration to further aid in determining if the robot is no longer orthogonal to the stairs. The relative distances, orientation, and acceleration are passed to the Arduino Mega, which then controls which DC motors to run and how fast. The front stair and rear stair ascension motors work in series (e.g. after the front stair ascension is lowered onto the next step, the rear stair ascension will raise the robot up). Each of the 4 drive motors are connected to a mecanum wheel, which enables a wide range of ground motion without turning. This design allows us to reduce the number of sensors and accurate odometry needed to move the robot while still requiring only 4 motors. The vacuum fan motor runs when the robot is moving laterally along a step.
The sensors, actuators, and Arduino Mega are powered by two 7.2V NiMH hobby batteries connected in series. The components on this robot require three different voltages, necessitating three buck converters to step down the 14.4V from the batteries to 12V, 7V, and 5V. The vacuum motor is connected in parallel with one of the batteries, as it is limited to 12V and we wanted to have better control over the vacuum motor current draw. There is a power switch that completes the battery circuit, and a secondary switch to power on the vacuum motor loop. All components are automatically powered while the on switch is clicked, but the operation will only run once the user presses a secondary activation button to signal the beginning of the run. When the operation is complete, the system remains on (even while the robot is static) until the user presses the button again to power off the system.
System integration (version 1)
Isometric view of our first design. It is a robust and heavy design which emphasizes cheap parts for budget optimization.
System integration (version 2)
Isometric view of our second system. it emphasizes the use of new and reliable parts comprising both the front and rear lift mechanisms.
Final System integration (version 3)
Isometric view of our final design. It is a robust design that accurately portrays everything necessary for completing our assigned task
Frame
Frame (version 1)
Our first frame design, comprised of 80/20 aluminum extrusion and aluminum tubes as rais.
Frame (version 2)
Our current frame design, comprised of less 80/20 extrusion, optimizing weight. it has as well new rails, providing less parts and more reliability. We Did not change the frame for our final design.
Drive Train
Drivetrain (version 1)
The first iteration of our drivetrain, comprised of four mecanum wheels and four DC motors, with a caster providing a fifth point of contact
Final Drivetrain (version 2)
The final drivetrain has specialized mounts for all of the motors to achieve a specific ride height. It also has a large hole in the center to provide easy access to the vacuums debris chamber for emptying refuse.
Lift Mechanism
Visual simulation of the functionality of our lift mechanism.
Front Lift
Front Lift mechanism (version 1)
First version of our front lift mechanism, comprised of two sliders attached to two rails.
Front Lift mechanism (version 2)
Second version of the front lift mechanism, comprised of one slider attached to one rail.
Final Front Lift mechanism (version 2)
This is an accurate depiction of the lift mechanism that is physically installed in our final system. The differences from the previous iteration are the 3D printed PLA motor mount and removing one redundant piece of 80/20 extrusion. This version is lighter without compromising structural integrity.
Front mounting plate
Diagram of the front mount plate, that attaches the slider onto the aluminum extrusion.
Rear Lift
Rear lift mechanism (version 1)
First version of the rear mechanism, comprised of two sliders connected to two rails.
Rear lift mechanism (version 2)
Second version of the lift mechanism comprised of one slider attached to one rail.
Final Rear lift mechanism (version 3)
Final mechanism depicts lift motors and actual mounting hardware for the drive motors. The 3D printed PLA brackets displayed were designed to maximize rigidity while minimizing weight.
Rear mounting plate drawing
Diagram of the rear mounting plate that attaches the slider to the central aluminum extrusion of the rear lift.
`Cleaning System
Cyclone Separator V1 (3/16/22)
Initial design of a cyclone separator for debris filtration. The use of a cyclone separator allows the robot to forego the inclusion of a filter to catch debris.
Cleaning Assembly V1 (3/16/22)
A basic visualization of what the assembled components of the cleaning system looked like (excluding the fan, and motor to drive the fan).
Cyclone Separator Cone v2
The main body of the new cyclone separator. It is designed to be mounted to the top of a jar lid as well as provide easy access to the inside of the cone for any adjustments
Fan Housing
The fan housing is designed to go on top of the Cone and house the fan for the system. the top was separated from the cone unlike the version 1 design to allow for the part to be easily 3d printed.
Motor Mount/ Housing top
This part is a lid to the fan housing and will also be the mount for the fans motor, half of the holes in the top are for air to escape while the others are to mount the motor.
Centrifugal Suction Fan Design
A new addition to the assembly, this centrifugal fan is the heart of our cleaning system and it's efficiency is crucial for good suction .
Suction Nozzle
This is the debris intake for the system and there will be two in total, one on the left and right of the robot.
Suction Tubing
The tubing used to connect the Cyclone Separator to the Suction nozzle is not depicted in CAD due to the fact that it will be a stock part and it is hard to design a flexible tubing within software
Partial Cleaning Assembly V1
A detailed rework of the majority of the version 1 assembly. This Design uses separate components unlike version 1 of the cleaning assembly, to allow for 3D printing of each of the components. Also much smaller in size than version 1. The container on the bottom will not be 3D printed and is a place holder for Jar that will be modified to hold debris
Final Cleaning system design
A complete overhauls of the cleaning system with a built in debris chamber ( actual chamber has a larger diameter, reference the drivetrain above), and mounting holes for our baseplate. Includes an updated fan and Suction nozzles for each side of our robot. Tubing to connect to the nozzles is not depicted here but is the same tubing depicted in previous version of this system..
Sensing
Ultrasonic Sensor + Mount (Front)
Ultrasonic Sensor + Mount (Back)
Final Assembled System
The figure above shows the final completed system after all subsystems and components were fully integrated into the robot. It comes to a final weight of 4200 g (9.26 lb). Unfortunately, many of the subsystems failed basic tasks, as described in the System Performance page.