Design a System for Sorting and Recycling Containers


📚Skills

🗣️ Soft Skills

<aside> 📢 Problem Solving

</aside>

<aside> 📢 Communication

</aside>

<aside> 📢 Time Management

</aside>

🛠️ Technical Skills

<aside> ⚙ VNC Viewer

</aside>

<aside> ⚙ Quanser

</aside>

<aside> ⚙ Python

</aside>

<aside> ⚙ Sensor Knowledge

</aside>

<aside> ⚙ Microsoft Word

</aside>

Overview

<aside> 💡 Because food and drink residue can remain inside plastic containers and because some materials and plastics are not detectable by the existing sensor technology used in recycling stations, Canada recycles just 9% of its recyclable plastics. The goal of "Project 3 - Revenge of the Recycling System" is to create a dependable and efficient system that will sort materials into the proper bins and maximize the recycling of various containers. By building a little prototype, this project seeks to automate the sorting and deposit procedure in a recycling facility, thereby resolving the recycling problem.

</aside>

To achieve our goal, the team was split into two sub-teams: a modelling sub-team and a computing sub-team. I was part of the computing sub-team.

Design Objectives

The modelling sub-team was tasked with computing a code that gives the q-bot certain instructions to be able to carry out the recycling task. We were responsible in making a code that analyzes the containers being dumped in the transfer container to see where it goes. Which then we were responsible in making sure the container is delivered to its desired bin and dumping it in the respective bin. This dumping mechanism was made possible by the modelling sub-team which I was not a part of. The q bot would then come back to home position restart the whole process again.

Constraints

📝Design Process


📐Pseudocode

My teammate and I planned out what each function will be responsible for in the form of pseudocode prior to designing the actual code:

Dispense Container

Untitled

[2] Pseudocode for Dispense Container

Load Container

Untitled

[5] Pseudocode for Load Container

Load Container

Untitled

[3] Pseudocode for Load Container

Deposit Container

Untitled

[4] Pseudocode for Deposit Container

Return Home

Untitled

[6] Pseudocode for Return Home

Virtual Environment