This project is the final project in the subject "Team-based collaboration". The subject is a first semester subject and aims to teach about team theory, project theory and generally how to work in a team as an engineer. This idea has been developed by us, and it aims to reduce the amount of waste thrown into the nature. The way this project will reduce waste in nature is by creating a robot that will pick up waste, and put it in a designated area. The robot is then programmed to create a heatmap of the area it has picked up waste in. By doing this we are able to visualize which areas have a problem with waste in the nature. This data can then be used to place waste bins in the areas that have the biggest problems with waste. The robot can then be run again, to see if the waste in nature is reduced. The project is currently just a prototype, but has the potential for further research. The whole project is done by a group that consists of four people, including myself.
This project was done as a final project in IDATG1004. The idea behind the project was to make a concept robot that would pick up empty bottles. The idea was to make the robot as a data mapping tool. When the robot does drive around and pick up, it will execute a program that does create a heatmap of the area it has driven around in. This heatmap can be used to place trash bins in the areas with the highest amount of picked waste. By doing this, we hope that the amount of trash thrown into the nature will be greatly reduced.
When it comes to the technical side, we have solved the problem by defining an array in the program. The array does represent the area the robot will drive around in. The idea is that when the robot picks up a bottle at a certain coordinate, it should increment the value of the array in that position. The array will then represent a grid where the values represent amount of bottles picked up. The array can then be transferred into a heatmap.
During the process we have used a variety of different tools. Some of the key tools we have used when working on the project is GitLab to track the project with issue board, Overleaf to write LaTeX documents, VsCode to write code for the robot, Miro Board for brainstorming and Discord for communication when off-campus.
I have learned a lot about how to be creative and brainstorm ideas. This has led to me becoming more creative, and idea-seeking. I have also learned a lot about how to bring an something from an idea, to life. Team work is also a key aspect that has been learned during this project. Especially what roles I can fill in a group, and how I contribute to a group in different ways. Realizing that I have strengths and weaknesses when it comes to working in a group has also been very useful to learn more about. When it comes to the technical side of things I have learned more about basic robotic concepts and programming. The mapping aspect is something we came up with by ourselves, and this is an area I dived a lot into. Learning something by yourself that is not directly teached is also a cool aspect of this project.
This is the code that was used to demonstrate how the heat map will function. The code is written Object Oriented in Python. We have utilized the libraries numpy, matplotlib and random in this project.
This is the code that we made for the robot. We have mainly used the pybricks library, as well as csv and time. This program is written with an object oriented approach in the Python language.