Robotics 311: How to Build Robots and Make Them Move
ROB 311 is an undergraduate robotics course at the University of Michigan that introduces the fundamentals of mechanical design, control, fabrication, actuation, instrumentation, and computer interfaces required to realize robotic systems. Students will learn to analyze/simulate rigid body kinematics, kinetics, and dynamics, as well as assess the impedance properties of their designs.
This first iteration was offered in Fall 2022. The course is based around building a ballbot, which balances on a basketball to move around.
Lectures
All lecture videos are available on YouTube: ROB 311 Fall 2022 Playlist
If a lecture features additional files, those are located in lecture files.
Labs and hardware
Labs are based around the design and build of the ballbot, requiring certain hardware and access to machines, including 3D printer, laser cutter, and water jet.
The parts list:
- Raspberry Pi Pico
- BlinkM led
- 3 Pololu 37D gearmotors
- 3 motor couplers
- acrylic sheets
- velcro strips
- 6 omni wheel halves
- 2 wired mouse
- basketball
Note lab 1, a primer on soldering, is not included in this repository, and lab 5 is skipped.
Course Plan
Lecture | Topic | YouTube | Assignments Due |
---|---|---|---|
1 | Introduction to robot development | Video | |
L1 | Lab: Soldering | ||
2 | Motors, transmissions, & drivers I | Video | |
3 | Motors, transmissions, & drivers II | Video | |
L2 | Lab: Raspberry Pi's | ||
4 | Mechanical modeling | Video | |
5 | Modeling & design | Video | HW 1 |
L3 | Lab: Solidworks | ||
6 | Thermal modeling | Video | |
7 | Manufacturing | Video | |
L4 | Lab: Lasercutting | ||
8 | Additive manufacturing | Video | |
9 | Subtractive manufacturing | Video | |
L6 | Lab: Ballbot assembly | Ballbot assembled | |
10 | Manufacturing best practices | Video | |
11 | Gears, screws & linkages | Video | |
L7 | Lab: Python | ||
12 | Full planar model | Video | HW 2 |
13 | Torque conversion | Video | |
L8 | Lab: Closed loop control | ||
14 | Kinematic conversions | Video | |
L9 | Lab: Kinematics | ||
15 | Sensors | Video | HW 3 |
16 | Digital communications | Video | |
L10 | Lab: Stability control | ||
17 | Omni wheels | Video | |
18 | Ballbot work session | No lecture | |
L11 | Lab: Outer velocity loop control | ||
19 | Review | Video | Midterm (not publicly available) |
L12 | Lab: Virtual environments | ||
20 | Control | Video | HW 4 |
21 | Control loop structure | Video | |
L13 | Lab: Filtering data | ||
22 | Ballbot work session | No lecture | |
23 | Filtering data | Video | |
L14 | Lab: Ballbot work session | HW 5 | |
24 | Steering control | Video | |
25 | Final competition |
Credits
- Elliott Rouse, Associate Professor, U-M
- Yves Nazon
- Senthur Ayyappan