Inspiration

The most common accidents in a workplace/lab setting come from cuts, burns, and contamination. That's a safety problem. To solve this, we created Cleanfinity, 3-axis gantry and gripper system designed to hold, organize, or dispose anything on your desk. That way, any researcher, builder, or hobbyist can continue working on their craft without worrying about their safety.

What it does

Cleanfinity is a 3-axis gantry and gripper system which identifies, sorts, and disposes of objects on a desk or lab bench, without humans contacting any substances. A webcam on the gripper feeds live video into a computer vision pipeline powered by YOLOv8, which classifies it by name. Then it assigns it to one of three categories: hazardous, trash, or organize.

Based on that classification, the gantry moves to the object's coordinates, lowers the gripper to pick it up, and moves it to the correct destination, which could be anything from a biohazard bin to a sorted storage rack.

How we built it

We have 5 different parts all working together:

  • A Logitech webcam streams to an AMD-provided machine running the YOLOv8 classifier model. Each detected object outputs a class label, hazard category and bounding-box coordinates.
  • These bounding box pixels are converted into physical gantry coordinates, and tells the system which X and Y positions to move exactly to pic up the object.
  • Three stepper motors bring the gripper to the exact position in 3d-space, and the gripper's servo motor grab the object on the table. Then it moves it to the correct bin/rack, and then safely releases the object.
  • Every object writes a record into an SQLite database with the timestamp, object category, and count of how many items of that type have been processed. We also have a live dashboard showing the inventory in real time. Anything can also be semantically searched, so item in a database of millions can be found in a single query.

Challenges we ran into

Each object has a different center of mass, surface texture, and rigidity, so having an all-purpose gripper that can grab as many object geometries as possible is important. To do this, we physically added grip tape to our claw, increased the servo power, and maintained a constant speed for our gantry system. The CV pipeline was also difficult to set up, because of the various noise that is possible in a busy environment. We ended up focusing on calibration of the gripper and making sure it would detect every object. We also used as much contrast as possible by using a black background for these objects.

Accomplishments that we're proud of

We built a fully autonomous pick-and-place pipeline, from raw video to physical object placement, all within 36 hours. We also were able to pick up a variety of objects without any major problems, while also accurately logging it within an SQLite database.

What we learned

There is a lot that goes into robotics and computer vision in projects like this. We had to align the camera data to the gripper properly to get the right alignment. That took a lot of calibration and hardware modification. This meant we had to do a lot of different changes, from hacking the 3d-prints to adding slight constants for alignment in the code. We also had to continuously adapt to the hardware shortage and difficulty gaining supplies, modifying our project to stay successful. That meant a lot of CAD for parts we didn't have, and making replacements for 3d-printed stuff in case anything went wrong. Building something for safety also means we have to keep the product safe, so we kept the project as safe as possible by not letting the system go too fast, and implementing fallback systems - in both hardware and software.

What's next forCleanfinity

  • A better system for detecting objects, improving the classifier, and cataloging arbitrary objects, and increasing the dataset itself.
  • Improving the hardware to have motors and 3d-prints that remain reliable through wear and tear.
  • Multiple arms that can operate in parallel for high-volume environments.
  • Integrating our database system to work with any generic management systems by sending over real-time information.

Built With

Share this project:

Updates