Lego's Colour
During my second year in industrial IT, I had a course called "multidisciplinary project 2", which grouped together several courses such as "English", "web development 2", "embedded systems" and "databases".
To succeed in all these courses, we had to complete a project that lasted three weeks, which consisted of identifying different parts of a Lego brick. The project should consist of at least two parts: an embedded system and a website that included a database.
My teammate and I, working together on this project, came up with the theme "Lego colours".
We had to develop a system that would recognize the different colours of the Lego bricks as they moved along a conveyor belt, send them to a database and display them on our website.
We started the project by making a mind map to properly understand what the system needed to work on, after which we split the project in 2 parts. Theo was in charge of the website part, and I was in charge of the embedded system part.
The embedded system used an Arduino mega 2560, a HUSKYLENS camera, an lcd screen, a button and a conveyor belt.
The conveyor belt moved Lego bricks so the camera could recognize the colour, the camera sent the colour to the Arduino, which displayed it on the lcd screen and sent it to a database via node-red. To end with the button was used to erase the data on the lcd screen.
The website and database used a raspberry PI running node-red and a docker containing our entire project.
Our website was made in NodeJS, which contained several frameworks such as express and twig, as ORM we used Prisma and for our database MYSQL.
Concerning the communication between the embedded system and the website, we used node-red, a tool for interconnecting several pieces of hardware. the Arduino sent the coloUrs to node-red, which in turn sent them to the database. Finally, the site fetched the latest additions to the database and displayed them.
As show on the pictures, we used Maker Beam for the physical part,.
During this experience, I have perfected my skills in embedded systems and real-time data processing. Working with Theo strengthened my ability to collaborate effectively in a team environment, solve complex problems and oversee a project from conception to completion. Practical challenges included the integration of sensors seamlessly and the creating of user-friendly interface.
Overall, this project strengthened my adaptability and problem-solving skills.
To succeed this project we used HTML, Bootstrap, JavaScript, NodeJS, Twig, Node-Red, MySQL, Docker and SQL
Here is the code we developed for this project: WEB & Arduino