McMaster ENGINEER 1P13, Jan 2022 – Mar 2022.
Sensor equipped robot that identifies waste by material type and autonomously sorts it into designated bins along a fixed track, using a custom designed rod and pin mechanism to tip the hopper and release its contents.
Python Autodesk Inventor 3D Printing Quanser Interactive Labs Robotics

Full CAD-Modelled Mechanism Attached to the Hopper and Linear Actuator.
- Overview
- Hardware & Software
- System Workflow
- How It Works
- CAD & Physical Mechanism
- Results
- Full Report
This project addresses Canada's low recycling rate, where sensor limitations in identifying material type and contamination make large scale sorting difficult, resulting in most plastic waste ending up in landfills. The finished system is a small scale robot that identifies waste dispensed onto a rotary table, loads it onto a hopper, navigates a fixed track, and deposits it into the correct designated bin. The system combines a Quanser Q-bot equipped with ultraviolet, IR (infrared), colour, and LDR (Light Dependent Resistor) sensors, a Quanser Q-arm robotic arm, and a Python program built in Quanser Interactive Labs to identify, load, and navigate, with a custom designed rod and pin mechanism, modelled in Autodesk Inventor and 3D printed, that connects the linear actuator to the hopper to release its contents at each bin.
| Component | Purpose |
|---|---|
| Rod, Slider, and Pins | Custom designed mechanism connecting the linear actuator to the hopper, converting linear actuation into hopper rotation |
| Linear Actuator | Mounted to the system's baseplate, drives the rod and pin mechanism to tip the hopper and release waste into the correct bin |
| Quanser Q-bot | Mobile robot base that carries the hopper, follows the fixed track, and positions itself in front of each bin |
| Quanser Q-arm | Robotic arm that loads containers from the rotary table onto the hopper |
| Rotary Table | Dispenses waste containers at random for the robot to identify and load |
| Ultraviolet Sensor | Assists in identifying material type of each dispensed container |
| IR (Infrared) Sensor | Keeps the robot following its fixed line track |
| Colour Sensor | Detects the colour of each container to help classify material type |
| LDR (Light Dependent Resistor) Sensor | Detects light levels to assist material identification |
| Ultrasonic Sensor | Measures distance to position the robot accurately in front of each bin before disposal |
| Tool / Library | Purpose |
|---|---|
| Autodesk Inventor | CAD modelling of the rod and pin mechanism and its individual components |
| Quanser Interactive Labs (Q-Labs) | Virtual environment simulating the Q-bot, Q-arm, sensors, and recycling facility layout |
| Python | Program controlling detection, loading, navigation, dumping, and return to home position |
| Stage | Component | Output |
|---|---|---|
| Dispensing | Rotary Table | Container placed at random with an assigned material ID and weight |
| Detection | Quanser Q-bot Sensors | Material type identified for each container |
| Loading | Quanser Q-arm | Up to 3 containers loaded onto the hopper, combined weight max 90 grams |
| Navigation | IR Sensor, Fixed Line Track | Robot follows the track toward the identified bin |
| Positioning | Ultrasonic Sensor | Robot stops at the correct distance from the bin |
| Dumping | Linear Actuator, Rod and Pin Mechanism | Hopper rotates and releases containers into the bin |
| Return | Python Program | Robot navigates back to its home position to begin the next cycle |
- Containers are dispensed at random onto the rotary table, each assigned a material ID used by the program to determine the correct bin.
- The ultraviolet, colour, and LDR (light dependent resistor) sensors work together to identify the material type of each container before it is loaded.
- The program compares each new container's material ID against the previous one to decide whether it can be grouped with containers already loaded on the hopper.
- The Quanser Q-arm loads up to three containers from the rotary table onto the hopper per cycle.
- Containers are only added to the same load if their combined weight stays at or below 90 grams.
- If a container's destination bin differs from what is already loaded, or the weight limit would be exceeded, the current load is dumped before the new container is picked up.
- An onboard IR (infrared) sensor keeps the Q-bot following its fixed line track by adjusting left and right wheel speeds whenever the sensors lose the line.
- Bin locations are defined using coordinate values within the Quanser Interactive Labs environment, which the program references to navigate the robot toward the correct bin.
- Once close to the target, an ultrasonic sensor measures distance and stops the robot at the correct position in front of the bin before dumping.
-
The linear actuator is mounted to the system's baseplate, positioned below and connected to the hopper by a rod, slider, and pin assembly designed for this project.
-
As the actuator extends, the rod pushes against the hopper, rotating it on its hinge and releasing its contents into the bin below.
-
Pins secure both ends of the rod, with small cylindrical pieces holding each pin in place within the slider to keep the mechanism stable during repeated actuation.
-
After dumping, the actuator retracts, resetting the hopper to its closed position before the robot returns home.
Project.Demonstration.mp4
Demonstration of the CAD-Designed Rod and Pin Mechanism Extending and Tipping the Hopper to Release its Contents.
Physical Model of the Rod and Pin Mechanism, showing each component along with the Hopper and Linear Actuator.
CAD Model of the Rod and Pin Mechanism, showing each component along with the Hopper and Linear Actuator.
CAD Model of the Rod (Left) and Slider (Right) Components of the Mechanism.
CAD Model of the Cylindrical Pin Actuator Piece (Left) and Cylindrical Pin (Right) that hold the Rod in place.
CAD Model of the Pin Securing Piece.
Engineering Drawings of Rod (left) and Sliders (right), in mm.
Engineering Drawings of Cylindrical Pin Actuator Piece (left) and Cylindrical Pin (right), in mm.
Engineering Drawing of Pin Securing Pieces, in mm.
- The system functioned as a fully automated small scale sorting robot, correctly identifying waste by material type before directing it to the appropriate bin.
- The rod and pin mechanism reliably rotated the hopper and released its load once the robot reached its target, confirmed through repeated actuation testing.
- The Quanser Q-arm and hopper successfully loaded, transported, and released waste into its designated bin within the 90 gram weight limit.
- The project illustrated a viable small scale model for automated sorting, supporting the broader goal of increasing recycling efficiency at facilities limited by manual sorting capacity.













