I recently just completed a Tools for Data Analysis course, which was taught in Python, which I found interesting. Signing up to this hackathon made me feel excited to practice and learn more. This project draws inspiration from experience during my stay in Finland. At times I had found myself recycling bottles - i.e 5 500ml plastic bottles are worth 1 Euro = 1 Cheese Burger at McDonald's. Stores like Aldi have set up a big machine that allows users to recycle bottles for a cash incentive or reduction towards the cost of goods for the next purchase. In Finland, Zambia ( my home country ), and in other parts of the world that I have lived in, I have noticed that a huge number of plastic bottles or broken glass bottles not disposed of properly in walking trails, bus stops and almost anywhere.

The problem is that the cost of the bottles is often passed on to the consumer by businesses with oftentimes no incentive or way to recover the cost and save the environment. Machines that recycle such those at the Aldi store and many others have huge costs that don't favor small businesses and startups nor do these facilities operate 24/7.

What it does

RecycleMateBot is a smartbin that classifies bottles meant to be disposed off, rewards consumers for recycling and provides businesses with analytics. i.e how many glass bottles are recycled in the city of Freemantle ? A fitted camera and motion sensor to take pictures after motion has been dected. An LED to signal to the user that it was now a good time to place the bottle in the bin.

How I built it

I started of by building a trigger and a fun way to interact with it. I setup the raspberry-pi , camera and motion sensors. I setup a script that takes a photo delays and takes another one. Another script I had written was one that sent photos an AWS S3 Bucket. I used AWS-PythonSDK in part of the upload script. I later then setup a chatbot on AWS Lex, this bot will help walk any user through recycling mission. If the user responds "Yes" to the question "do you want to recycle your bottle ?" an AWS Lambda function is triggered and it sends MQTT message to a specific topic called "start/light". The Arduino 1500 plays as the client listening for an MQTT message as soon as it recives one, its LED shines brightly and the user is now aware that it is time to recycle the bottle.

The model was pretrained and Alexnet rather than Densenet was used.

Challenges I ran into

I realized that the 8MP Raspberry-Pi Camera wasn't going to provide as much as it could. - So it was time to turn to facebook, to collect pictures and send them to S3 which is a challenge I am trying to figure out. I found it challening to get acesss to a 3D printer for the device enclosure. Not having enough access to resouces like 3D printers.

Accomplishments that I'm proud of

I am proud to have started with the project and made a submission. I am proud to have built a notebook file that extracts key data for the problem I am trying to solve.

What I learned

I have learned a lot about image datasets and how the number of layers can determine the expected outcomes. I learned about how to use Docker & CloudFormation to deploy stacks to AWS. YAY

What's next for RecycleMate Bot

Hopefully you can see a RecycleMateBot at a park near you soon Add cash / micro payments using uRaiden network 3D print an enclosure post-covid-19 pandemic.

Share this project: