EE192: Mechatronics Design Lab, Spring 2017
Discussion / lab lectures:
/The scheduling information here supersedes the information on the schedule site. http://classes.berkeley.edu/content/2017-spring-eleng-192-001-lec-001
Professor: Ron Fearing
Teaching Assistant: Chen-yu Chan
Piazza is a better way to get your questions answered than email!
The Mechatronics Design Lab is a design project course focusing on application of theoretical principles in electrical engineering and computer science to control of mechatronic systems incorporating sensors, actuators, and intelligence. This course gives you a chance to use your knowledge of (or learn about) power electronics, filtering and signal processing, control, electromechanics, microcontrollers, and real-time embedded software in designing a racing robot.
The class project is to design a racing robot which can follow a curving and self-crossing racetrack at speeds greater than 3 meters per second using an optical sensor. Each team starts with a standard 1/10th-scale RC car platform and a pre-built CPU board, determines an optimal strategy, and designs sensors, electronics, and control algorithms. Vehicles individually follow a 100 meter course, staying on track and avoiding obstacles.
The course project requires students to consider real-world constraints such as limited volume, payload, electrical power, processing power, and time. Oral and written reports will be required justifying design choices. Grading will be based upon design checkpoints, the reports and a final exam. A portion of the grade will be determined by vehicle performance and robustness.
CS61C, EE16AB/EE40, EECS120 or equivalent (2 out of 3 is okay if teamed up with other students who have those classes).
There is no required text for this course. Students may benefit from the following recommended texts, which are on reserve in the Engineering Library.
How to Build a Robot in 5 Easy Steps
Building a basically functioning racing car robot in EECS192 typically takes 5 weeks of the course. Students use the remainder of the course to improve sensors, system integration, and algorithms. Debugging the whole system of course takes time, and the more complicated the system is, the longer the debugging takes. Students work in teams of 2 or 3 students, to divide the work. Experience shows that simple designs take less time to build, and work better!
The design process is broken down into manageable steps through design checkpoints. Each design step is preceded by a lecture covering the main ideas and principles. Here is an outline of the design checkpoints for the first weeks:
Thus after 5 weeks, the vehicle hardware is mostly done. The remaining hardware to add is a line sensor so the robot can stay on the race track. Algorithm and control strategy development take up the next 9 weeks. Again, there are well-defined design check points to ensure timely progress and keep the project scope bounded.
Each robot race car will be individually timed as it follows a line laid out on a 100 meter path in a large arena. The path is not known until the time of the race, and has many curves and self-crossings. Every team is using the same motor and batteries, so competitive advantage comes from using smarter algorithms that are better at keeping the car on the race track. A time penalty is used for vehicles that stray too far from the line and knock over traffic cones, so simply using maximum acceleration will not be a good strategy.
Interested in how the site and course materials were built? We're open-source on GitHub here!