ME CS 133 2018-19
This is a homepage for ME/CS 133(a) (Introduction to Robotics) for Fall/Winter 2018-19. We will also use the Caltech Moodle" system for submitting homeworks, lab assignments, and final project reports.
Course Staff, Hours, Location
Position | Name | Office | Office Hours (changing weekly) | Phone | |
Instructor | Joel Burdick | 245 Gates-Thomas | send mail for an appointment | jwb at robotics dot caltech dot edu | 626-395-4139 |
Teach Asst. | Amanda Bouman | 205 Gates-Thomas | TBD | me133tas at robotics dot caltech dot edu | 626-395-4470 |
Teach Asst. | Anushri Dixit | 205 Gates-Thomas | TBD | me133tas at robotics dot caltech dot edu | 626-395-4470 |
Teach Asst. | Andrew Singletary | Gates-Thomas | TBD | me133tas at robotics dot caltech dot edu | 626-395-???? |
Administrative | Sonya Lincoln | 250 Gates-Thomas | 7:30am-noon; 1:00pm-4:30pm | lincolns at caltech dot edu | 626-395-3385 |
Lecture Schedule:
- Days: Monday, Wednesday, Friday
- Time: 3:00-3:55 pm
- Location: 135 Gates-Thomas
Announcements For ME/CS 133(a,b)
Course Text and References
The main course text for ME/CS 133(a) is:
- R.M. Murray, Z. Li, and S. Sastry, A Mathematical Introduction to Robotic Manipulation, CR Press, 1994.
- The 1st edition of this book is available freely on-line at the link above, and is perfectly adequate for the course
We will refer to this text as MLS (the initials of the authors' last names). While the course topics will follow the text, additional material will often be presented in class. Additional course handouts covering this material will be posted on this website
A main text for the ME/CS 133(b) is: Planning Algorithms by Steve LaValle (UIUC).
- You can buy this book on-line at Amazon. A preprint of the text is available freely on-line, and is adequate for all course activities.
The following book is recommended (but not required) for ME/CS 133(b):
- Principles of Robot Motion: Theory, Algorithms, and Implementations, by Howie Choset, Kevin Lynch, Seth Hutchinson, George Kantor, Wolfram Burgard, Lydia Kavraki, and Sebastian Thrun.
This text is available at Amazon in both new and used versions.
Grading
The final grade will be based on homework sets, and a final exam or final project:
- Homework (35%): Homework sets are due at 5 pm on the due date (which will always coincide with a class meeting). Homeworks can be dropped off in class, or deposited in the box outside of 245 Gates-Thomas. Some homeworks will require computation. MATLAB or Mathematica should be sufficient to solve every homework posed in ME/CS 133(a), though students can choose their favorite programming language. Code is considered part of your solution and should be included in with the problem set when appropriate.
- Laboratory (30%): Lab reports are due at 5 pm on the due date (which will usually coincide with a class meeting). Labs can be dropped off in class, or deposited in the box outside of 245 Gates-Thomas. The first labs will familiarize students with the class robots. Subsequent labs will focus on how to translate the lecture material to the lab robots, and will often involve the use of software systems such as ROS and OOMPL.
- Final project (35%): The final project must incorporate some aspect of the course, and the topic and scope my be approved by the course instructor. The final exam will due at 5:00 pm the last day of finals. The final project is similarly due at 5:00 pm on the last day of finals.
- Late Homework Policy: Students may automatically take a 2-day extension on two homeworks or labs during each quarter.
Collaboration Policy
Collaboration on homework assignments is encouraged. You may consult outside reference materials, other students, the TA, or the instructor, but you must cite any use of material from outside references. All solutions that are handed in should be written up individually and should reflect your own understanding of the subject matter. Computer code and graphical plots are considered part of your homework solution, and therefore should be done individually (you can share ideas, but not code).
Laboratory assignments will be performed in small teams. Collaboration on laboratory assignments is different. Each team need only submit one laboratory report.
Course Lecture Schedule for ME/CS 133(a)
Week | Date | Topic | Reading | Optional Reading | Homework |
1 |
Introduction and Review of Rigid Body Kinematics | ||||
1 Oct. (Mon.) | Class Overview | Course Overview, Chapter 1 of MLS |
History of Kinematics Through 1900 (Introductory chapter from Kinematic Synthesis of Linkages) | -No Homework- | |
3 Oct. (W) | Planar Rigid Body Kinematics, Planar displacements |
MLS Ch 2.1, Pages 19-23 | Wikepedia Page on the Peaucellier Mechanism | ||
5 Oct. (F) | Planar Rigid Body Displacements (continued), Displacement groups |
MLS Ch 2.1, Change of Reference in Planar Displacements (PowerPoint) |
-N/A- | ||
2 |
From Planar Rigid Body Kinematics to Spherical Kinematics | ||||
08 Oct. (M) | poles, Centrodes, elliptic Trammel |
Notes on the Elliptical Trammel | Archemides Trammel (Wikipedia) Trammel, V 1, V 2, compliation, Linkages Synthesized Using Cardan Motion Along Radial Lines |
Homework 1, (Due Oct. 14) | |
10 Oct. (W) | Intro to Spherical Kinematics | MLS Pages 22-26, Notes on the Classical Matrix Groups |
-N/A- | ||
12 Oct. (F) | Spherical Kinematics (continued), Classical Matrix Groups |
MLS Ch 2.2, 2.3, Notes on Rotations |
Herman Weyl's book on the classical groups | ||
3 |
Spherical Kinematics | ||||
15 Oct. (M) | Cayley's Theorem, Euler's Theorem | MLS 27-31 | Wikipedia Page on Cayley Transform | Homework 2 (Due Oct. 24) | |
17 Oct. (W) | Angle-Axis Representation, Rodriguez Formula, Matrix Exponential, | -N/A- | |||
19 Oct. (F) | Euler Angles | MLS 31-34 | -N/A- | ||
4 |
Spherical Kinematics | ||||
22 Oct. (M) | Quaternions | MLS 33-34 | Notes On Algebras | -N/A- | |
24 Oct. (W) | Quaternion Wrap-Up, Intro to Spatial Kinematics, Homogeneous Coordinates, |
MLS 34-39 | -N/A- | ||
26 Oct. (F) | Spatial Exponential Coordinates, Intro to screws |
MLS 39-45 MLS 45-50 |
-N/A-
| ||
5 |
Spatial Kinematics and Velocities | ||||
29 Oct. (M) | Motion Capture via Rodriguez Equation Intro to Rigid Body Velocities |
Using Rodriguez' Displacement Equation, MLS 51-56 |
Homework 3 Instructions on Acquiring Virtual Machine ROS Tutorial | ||
31 Oct. (W) | Rigid Body Velocities Continued Intro to Wrenches |
MLS 57-64 | -N/A- | ||
2 Nov. (F) | Rigid Body Velocities and Coordinate Transformations | Using Rodriguez' Displacement Equation, MLS 51-56 |
-N/A- | ||
6 |
Spatial Kinematics and Velocities | ||||
5 Nov. (M) | ROS Tutorial | ROS Tutorial | Python script for ROS Tutorial | ||
7 Nov. (W) | Intro to multirotors | -N/A- | |||
10 NOV. (F) | Multirotor Equations of Motion | -N/A- |