Deadline of this assignment is set to: 2020-05-08 20:00:00
1. Task: Flywheel
Everybody has played with a flywheel car model before. When the flywheel gets its spin, large amount of rotational kinetic energy is accumulated, and thus the toy model of a car can drive straight for even several meters.
Take a look at the flywheel model from LEGO Education: Flywheeler.
Task: build a flywheel which is not going to propel a car model, but it will keep rotating as long as possible. The flywheel will be put into circular motion using a LEGO motor, not using a hand. After the program starts, the motor will put the flywheel into rotation and then possibly automatically disconnects from it. Use some sensors to measure the time until the flywheel stops. Only the solution in which the flywheel will keep rotating for the longest time will receive 3 points. Use LEGO parts only. Restriction: special flywheel parts, such as 11125c01 - flywheel plate, are not allowed.
2. Task: Mapping
Mapping of an unknown environment is one of the fundamental tasks in robotics. Robot that is working in a factory to assemble cars knows its surrounding environment very well and knows exactly what to do. However, a robot that is navigating through a real-world environment where it is supposed to fulfill its tasks - such as deliver the goods, explore a damaged building after a quake, or suggest placing of a furniture in a new office - such robot needs to map its environment.
Task: a robot is located in a room where all walls are either parallel or perpendicular to each other, i.e. there are only right-angle corners in the room. The robot will explore the room and finally show the map of the room contours as seen from above. The measurements will also be saved to a file. Upload this file to a PC and display the map on the PC screen. You can use any programming language - Python, Java, Logo, C#, but the map on the PC will also be drawn by a computer program, simply copying a screenshot from the robot screen will not be satisfactory. Except of walls, the room is completely empty. The room dimensions are at least 60x60 cm, ideally larger. Demonstrate the functionality on different rooms. Example of the wall contours (top view):