It seems like you're using Internet Explorer. This might negatively affect the user experience on this site. For the best experience, use Google Chrome or Mozilla Firefox instead.
No javascript detected. Please enable javascript or use a compatible browser.
For the best experience use the latest version of Google Chrome or Mozilla Firefox.
Robotics, school project
2014 - 2015
200 hours
Engineer
Programmer
LEGO Mindstorms
Java
Robotica was the title of the profile assignment (PA) I did at the end of secondary school (in Dutch it’s called ‘profielwerkstuk’ or ‘PWS’). Because I followed the course of Technasium during my entire secondary school (6 years), my PA was slightly different and with a greater workload than the usual. There was the possibility to team up with others, so I did this project with two other classmates. The assignment was very broad in the sense that you could choose your own assignment, as long as you find a legitimate client that could give you such an assignment. And it should fit in the scope of Technasium, which is basically everything related to research and design.
My team quite quickly chose a subject we wanted to do something with, which is robotics. It took quite a long time to get in contact with a client who was willing to help us, but in the end we found a Phd-student at … the University of Twente! He was part of the robotics team and challenged us to make a robot that could transport a drink while avoiding obstacles along its path.
For this robot we decided to use Lego Mindstorms, since the school already had such a kit and it was good excuse to play with Legos again! We made a plan of what the robot should be capable of and eventually came up with a marsrover design. It consisted of six wheels, where the two in the middle were independently driven by a motor, and the four outer wheels where all able to turn. We did this is in such a way that the front wheel would always steer in the opposite direction of the rear wheel. The left and right side could independently steer which made it possible for the robot to be able to turn around its own axis besides steering in a conventional way. Several redesigns had to be made due to a weak power transmission and the huge weight of the thing, which also resulted in independent suspension for all wheels. The definitive version had a total of 4 actuators, 3 ultrasonic sensors, a touch sensor and 2 NXT bricks (microcontrollers) that connected to each other via Bluetooth. On top of the robot was a cup holder.
For programming, we decided not to use the default Mindstorms software, but Java. There was library called LeJos that offered all the functions we needed to interact with the Mindstorms sensors and actuators. We took some basic intro tutorials for Java after we made a function diagram which precisely described what the robot had to do. In summary: it used ultrasonic sensors to detect any obstacles on the front and on the sides. When detected, it would adjust its path and steer in a new direction. The rotated distance of the wheels was used to estimate its current location.
The robot did work as long as when the density of obstacle was low, and with a minor deviation of about half a meter from the destination. It was pretty slow though as it took a very long time to steer.


