Difference between revisions of "ME 449 Robotic Manipulation"

From Mech
Jump to navigationJump to search
Line 1: Line 1:
'''Fall Quarter 2022'''
'''Fall Quarter 2023'''


[[image:ME449-instructors-2022.jpg|1000px]]
<!-- [[image:ME449-instructors-2022.jpg|1000px]] -->


* Instructor: Prof. Kevin Lynch
* Instructor: Prof. Kevin Lynch
* Course assistants:
* Course assistants: Lin Liu, Daniel Lynch (no relation to the instructor!), Andrew Thompson (lin.liu (at) u.northwestern.edu, daniellynch2021 (at) u.northwestern.edu, andrewthompson2019 (at) u.northwestern.edu)
* Office hours:
* Office hours: 3-4 PM Monday Tech A211, Lynch; 4:30-5:30 PM Thursdays via Zoom (see Canvas for the link), TAs. '''SPECIAL TA OFFICE HOURS:''' Tuesday Dec 6, 10:30-12, Tech B211
<!--4-5 PM Tuesday (TAs) and 2-3 PM Thursday (Lynch) by Zoom invitation in Canvas. '''Finals week only:''' TA office hours will be 4-5 PM Tuesday, as usual, and Lynch's office hours will be 1:30-2:30 Wednesday Dec 8 (office hours Thursday canceled)
<!--4-5 PM Tuesday (TAs) and 2-3 PM Thursday (Lynch) by Zoom invitation in Canvas. '''Finals week only:''' TA office hours will be 4-5 PM Tuesday, as usual, and Lynch's office hours will be 1:30-2:30 Wednesday Dec 8 (office hours Thursday canceled)
-->
-->
* Meeting: 2:00-2:50, MWF, '''Tech LR5''' (first meeting: Sept 21)
* Meeting: 2:00-2:50, MWF, '''Tech LR5''' (first meeting: Sept 20)
* Course website: [http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation]
* Course website: [http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation]
* Book website: [http://modernrobotics.org http://modernrobotics.org]
* Book website: [http://modernrobotics.org http://modernrobotics.org]
* '''[https://docs.google.com/forms/d/e/1FAIpQLSej7E9AaYomOEi5ToiNVum-_H7XdaJZ95Va__AIBPnB0xXZyg/viewform?usp=sf_link Click here to enter any questions you have on the lectures or reading that you would like to discuss in class.]'''
* '''[https://docs.google.com/forms/d/e/1FAIpQLSej7E9AaYomOEi5ToiNVum-_H7XdaJZ95Va__AIBPnB0xXZyg/viewform?usp=sf_link Click here to enter any questions you have on the lectures or reading that you would like to discuss in class.]'''

<!--
[[image:ME449-staff-2021.jpg|700px]]
-->


'''Supportive Class Environment'''
'''Supportive Class Environment'''
Line 31: Line 27:
'''Other Syllabus Statements'''
'''Other Syllabus Statements'''


[https://www.registrar.northwestern.edu/faculty-staff/syllabi.html Here you can find other syllabus statements] regarding academic integrity (do not submit work that is not your own), accessibility, COVID-19 classroom expectations (wear a mask), COVID-19 testing for unvaccinated students, class modality, class recordings, prohibition of recordings of class sessions by students, and wellness and mental health. By university policy, any student not vaccinated against COVID-19 must be tested for COVID-19 twice per week.
[https://www.registrar.northwestern.edu/faculty-staff/syllabi.html Here you can find other syllabus statements] regarding academic integrity (do not submit work that is not your own), accessibility, COVID-19 classroom expectations (wear a mask), COVID-19 testing for unvaccinated students, class modality, class recordings, prohibition of recordings of class sessions by students, and wellness and mental health.


Other information:
Other information:
Line 66: Line 62:


50% of your final grade will be from your Coursera grades (which I expect will be close to perfect) and 50% from the midterm and assignments outside of Coursera, including 15% midterm, 5% for asst 1, 5% for asst 2, 10% for asst 3, and 15% for asst 4 (the capstone project).
50% of your final grade will be from your Coursera grades (which I expect will be close to perfect) and 50% from the midterm and assignments outside of Coursera, including 15% midterm, 5% for asst 1, 5% for asst 2, 10% for asst 3, and 15% for asst 4 (the capstone project).
<!--
There will be four assignments outside of Coursera, with the following weights:
* Assignment 1: 5% of your total grade
* Assignment 2: 10% of your total grade
* Assignment 3: 10% of your total grade
* Capstone: 25% of your total grade (5% milestone 2, 20% final submission)
-->


==Course Text and Software==
==Course Text and Software==
Line 96: Line 85:


'''Chapter 2, Configuration Space'''
'''Chapter 2, Configuration Space'''
* Wed Sept 21: welcome to the course and syllabus review; intro to Coursera. '''The schedule for completing Coursera items is set by this wiki!'''
* Wed Sept 20: welcome to the course and syllabus review; intro to Coursera. '''The schedule for completing Coursera items is set by this wiki!'''
* Fri Sept 23: office hours; check for working CoppeliaSim implementation and summarize installation process for each OS; make sure Coursera invitation is accepted; material through Chapter 2.2 (3 videos and 2 LCs on dof of a robot) '''[[Media:MRslides-ch02a.pdf|CLASS SLIDES]]'''
* Fri Sept 22: office hours; check for working CoppeliaSim implementation and summarize installation process for each OS; make sure Coursera invitation is accepted; material through Chapter 2.2 (3 videos and 2 LCs on dof of a robot) '''[[Media:MRslides-ch02a.pdf|CLASS SLIDES]]'''
* Mon Sept 26: course staff and office hours; meet the class; and material through Chapter 2.3 (quiz, Chapter 2 through 2.2; 2 videos and 2 LCs on C-space topology and representation) '''[[Media:MRslides-ch02b.pdf|CLASS SLIDES]]'''
* Mon Sept 25: course staff and office hours; meet the class; and material through Chapter 2.3 (quiz, Chapter 2 through 2.2; 2 videos and 2 LCs on C-space topology and representation) '''[[Media:MRslides-ch02b.pdf|CLASS SLIDES]]'''
* Wed Sept 28: finish Chapter 2 (2 videos and 2 LCs on configuration and velocity constraints, task space and workspace) '''[[Media:MRslides-ch02c.pdf|CLASS SLIDES]]'''
* Wed Sept 27: finish Chapter 2 (2 videos and 2 LCs on configuration and velocity constraints, task space and workspace) '''[[Media:MRslides-ch02c.pdf|CLASS SLIDES]]'''
'''Chapter 3, Rigid-Body Motions'''
'''Chapter 3, Rigid-Body Motions'''
* Fri Sept 30: through Chapter 3.2.1 (quiz, Chapter 2.3 through 2.5; 3 videos and 3 LCs on rotation matrices SO(3)) '''[[Media:MRslides-ch03a.pdf|CLASS SLIDES]]'''
* Fri Sept 29: through Chapter 3.2.1 (quiz, Chapter 2.3 through 2.5; 3 videos and 3 LCs on rotation matrices SO(3)) '''[[Media:MRslides-ch03a.pdf|CLASS SLIDES]]'''
* Mon Oct 3: finish Chapter 3.2 (3 videos and 3 LCs on angular velocities, so(3), exponential coordinates) '''[[Media:MRslides-ch03b.pdf|CLASS SLIDES]]'''
* Mon Oct 2: finish Chapter 3.2 (3 videos and 3 LCs on angular velocities, so(3), exponential coordinates) '''[[Media:MRslides-ch03b.pdf|CLASS SLIDES]]'''
* Wed Oct 5: asst 1 will be due Oct 14. New material: through Chapter 3.3.2 (quiz, Chapter 3 through 3.2; 3 videos and 3 LCs on transform matrices SE(3) and twists) '''[[Media:MRslides-ch03c.pdf|CLASS SLIDES]]'''
* Wed Oct 4: asst 1 will be due Oct 14. New material: through Chapter 3.3.2 (quiz, Chapter 3 through 3.2; 3 videos and 3 LCs on transform matrices SE(3) and twists) '''[[Media:MRslides-ch03c.pdf|CLASS SLIDES]]'''
* Fri Oct 7: finish Chapter 3 (2 videos and 2 LCs on se(3), exponential coordinates, and wrenches) '''[[Media:MRslides-ch03d.pdf|CLASS SLIDES]]'''
* Fri Oct 6: finish Chapter 3 (2 videos and 2 LCs on se(3), exponential coordinates, and wrenches) '''[[Media:MRslides-ch03d.pdf|CLASS SLIDES]]'''
'''Chapter 4, Forward Kinematics (skip section 4.2 on URDF)'''
'''Chapter 4, Forward Kinematics (skip section 4.2 on URDF)'''
* Mon Oct 10: finish Chapter 4 (quiz, Chapters 3.3 and 3.4; 3 videos and 3 LCs on product of exponentials formula, space and e-e frame) '''[[Media:MRslides-ch04a.pdf|CLASS SLIDES]]'''
* Mon Oct 9: finish Chapter 4 (quiz, Chapters 3.3 and 3.4; 3 videos and 3 LCs on product of exponentials formula, space and e-e frame) '''[[Media:MRslides-ch04a.pdf|CLASS SLIDES]]'''
'''Chapter 5, Velocity Kinematics and Statics'''
'''Chapter 5, Velocity Kinematics and Statics'''
* Wed Oct 12: through Chapter 5.1 (quiz, Chapter 4; 3 videos and 3 LCs on space Jacobian, body Jacobian) '''[[Media:MRslides-ch05a.pdf|CLASS SLIDES]]'''
* Wed Oct 11: through Chapter 5.1 (quiz, Chapter 4; 3 videos and 3 LCs on space Jacobian, body Jacobian) '''[[Media:MRslides-ch05a.pdf|CLASS SLIDES]]'''
* Fri Oct 14: '''ASST 1, DUE 1:30 PM'''. New material: through Chapter 5.2 1 video and 1 LC on statics of open chains) '''[[Media:MRslides-ch05b.pdf|CLASS SLIDES]]'''
* Fri Oct 13: '''ASST 1, DUE 1:30 PM'''. New material: through Chapter 5.2 1 video and 1 LC on statics of open chains) '''[[Media:MRslides-ch05b.pdf|CLASS SLIDES]]'''
* Mon Oct 17: through Chapter 5.4 (2 videos and 2 LCs on singularity analysis, manipulability) '''[[Media:MRslides-ch05c.pdf|CLASS SLIDES]]'''
* Mon Oct 17: through Chapter 5.4 (2 videos and 2 LCs on singularity analysis, manipulability) '''[[Media:MRslides-ch05c.pdf|CLASS SLIDES]]'''
'''Chapter 6, Inverse Kinematics (focus on section 6.2)'''
'''Chapter 6, Inverse Kinematics (focus on section 6.2)'''
* Wed Oct 19: Chapter 6 (quiz, Chapter 5; 3 videos and 3 LCs on numerical inverse kinematics) '''[[Media:MRslides-ch06a.pdf|CLASS SLIDES]]'''
* Wed Oct 18: Chapter 6 (quiz, Chapter 5; 3 videos and 3 LCs on numerical inverse kinematics) '''[[Media:MRslides-ch06a.pdf|CLASS SLIDES]]'''
'''Chapter 8, Dynamics of Open Chains (skip sections 8.4, 8.7, 8.8, and 8.9)'''
'''Chapter 8, Dynamics of Open Chains (skip sections 8.4, 8.7, 8.8, and 8.9)'''
* Fri Oct 21: through Chapter 8.1.2 (quiz, Chapter 6; 2 videos and 2 LCs on Lagrangian dynamics) '''[[Media:MRslides-ch08a.pdf|CLASS SLIDES]]''' Guest lecturer: Andrew Thompson.
* Fri Oct 20: through Chapter 8.1.2 (quiz, Chapter 6; 2 videos and 2 LCs on Lagrangian dynamics) '''[[Media:MRslides-ch08a.pdf|CLASS SLIDES]]'''
* Mon Oct 24: New material: Chapter 8.1.3 (1 video and 1 LC on understanding the mass matrix) '''[[Media:MRslides-ch08b.pdf|CLASS SLIDES]]''' Guest lecturer: Lin Liu.
* Mon Oct 23: New material: Chapter 8.1.3 (1 video and 1 LC on understanding the mass matrix) '''[[Media:MRslides-ch08b.pdf|CLASS SLIDES]]'''
* Wed Oct 26: '''MIDTERM''', chapters 2-5 (no electronic devices allowed [calculator, laptop, tablet, etc.]; study sheets and book allowed) '''[[Media:ME449-midterm-solutions-2022.pdf|2022 midterm and solutions]]''' (average score 22.9/32)
* Wed Oct 25: '''MIDTERM''', chapters 2-5 (no electronic devices allowed [calculator, laptop, tablet, etc.]; study sheets and book allowed) '''[[Media:ME449-midterm-solutions-2022.pdf|2022 midterm and solutions]]''' (average score 22.9/32)
* Fri Oct 28: Chapter 8.2 (2 videos and 2 LCs on dynamics of a single rigid body) '''[[Media:MRslides-ch08c.pdf|CLASS SLIDES]]''' Guest lecturer: Dan Lynch.
* Fri Oct 27: Chapter 8.2 (2 videos and 2 LCs on dynamics of a single rigid body) '''[[Media:MRslides-ch08c.pdf|CLASS SLIDES]]'''
* Mon Oct 31: '''ASST 2, DUE 1:30 PM'''. Chapter 8.3 and 8.5 (2 videos and 2 LCs on Newton-Euler inverse dynamics, forward dynamics) '''[[Media:MRslides-ch08d.pdf|CLASS SLIDES]]'''
* Mon Oct 30: '''ASST 2, DUE 1:30 PM'''. Chapter 8.3 and 8.5 (2 videos and 2 LCs on Newton-Euler inverse dynamics, forward dynamics) '''[[Media:MRslides-ch08d.pdf|CLASS SLIDES]]'''
'''Chapter 9, Trajectory Generation'''
'''Chapter 9, Trajectory Generation'''
* Wed Nov 2: through Chapter 9.3 (quiz, Chapter 8 through 8.3; 3 videos and 3 LCs on point-to-point trajectories, polynomial via point trajectories) '''[[Media:MRslides-ch09a.pdf|CLASS SLIDES]]'''
* Wed Nov 1: through Chapter 9.3 (quiz, Chapter 8 through 8.3; 3 videos and 3 LCs on point-to-point trajectories, polynomial via point trajectories) '''[[Media:MRslides-ch09a.pdf|CLASS SLIDES]]'''
* Fri Nov 4: Chapter 9.4 (quiz, Chapter 9 through 9.3; 3 videos and 3 LCs on time-optimal time scaling) '''[[Media:MRslides-ch09b.pdf|CLASS SLIDES]]'''
* Fri Nov 3: Chapter 9.4 (quiz, Chapter 9 through 9.3; 3 videos and 3 LCs on time-optimal time scaling) '''[[Media:MRslides-ch09b.pdf|CLASS SLIDES]]'''
* Mon Nov 7: Chapter 9.4 recap.
* Mon Nov 6: Chapter 9.4 recap.
* Wed Nov 9: '''ASST 3, DUE 1:30 PM'''; final project discussion
* Wed Nov 8: '''ASST 3, DUE 1:30 PM'''; final project discussion
'''Chapter 11, Robot Control (focus on sections 11.1 through 11.4)'''
'''Chapter 11, Robot Control (focus on sections 11.1 through 11.4)'''
* Fri Nov 11: up to (not including) Chapter 11.2.2.1 (quiz, Chapter 9.4; 3 videos and 3 LCs on linear error dynamics) '''[[Media:MRslides-ch11a.pdf|CLASS SLIDES]]'''
* Fri Nov 10: up to (not including) Chapter 11.2.2.1 (quiz, Chapter 9.4; 3 videos and 3 LCs on linear error dynamics) '''[[Media:MRslides-ch11a.pdf|CLASS SLIDES]]'''
* Mon Nov 14: finish Chapter 11.2.2 (2 videos and 2 LCs on first- and second-order error dynamics) '''[[Media:MRslides-ch11b.pdf|CLASS SLIDES]]'''
* Mon Nov 13: finish Chapter 11.2.2 (2 videos and 2 LCs on first- and second-order error dynamics) '''[[Media:MRslides-ch11b.pdf|CLASS SLIDES]]'''
* Wed Nov 16: through Chapter 11.3 (3 videos and 3 LCs on motion control with velocity inputs) '''[[Media:MRslides-ch11c.pdf|CLASS SLIDES]]'''
* Wed Nov 15: through Chapter 11.3 (3 videos and 3 LCs on motion control with velocity inputs) '''[[Media:MRslides-ch11c.pdf|CLASS SLIDES]]'''
* Fri Nov 18: Chapter 11.4 (quiz, Chapter 11 through 11.3; 3 videos and 3 LCs on motion control with torque or force inputs) '''[[Media:MRslides-ch11d.pdf|CLASS SLIDES]]'''
* Fri Nov 17: Chapter 11.4 (quiz, Chapter 11 through 11.3; 3 videos and 3 LCs on motion control with torque or force inputs) '''[[Media:MRslides-ch11d.pdf|CLASS SLIDES]]'''
'''Chapter 13, Wheeled Mobile Robots (skip section 13.3)'''
'''Chapter 13, Wheeled Mobile Robots (skip section 13.3)'''
* Mon Nov 21: '''FINAL PROJECT MILESTONE 2, DUE 1:30 PM'''; new material through Chapter 13.2 (quiz, Chapter 11.4; 3 videos and 3 LCs on omnidirectional wheeled mobile robots) '''[[Media:MRslides-ch13a.pdf|CLASS SLIDES]]'''
* Mon Nov 20: '''FINAL PROJECT MILESTONE 2, DUE 1:30 PM'''; new material through Chapter 13.2 (quiz, Chapter 11.4; 3 videos and 3 LCs on omnidirectional wheeled mobile robots) '''[[Media:MRslides-ch13a.pdf|CLASS SLIDES]]'''
* Wed Nov 23: CLASS CANCELED
* Wed Nov 22: CLASS CANCELED
* Mon Nov 28: Chapter 13.4 (quiz, Chapter 13 through 13.2; 1 video and 1 LC on odometry) '''[[Media:MRslides-ch13b.pdf|CLASS SLIDES]]'''
* Mon Nov 27: Chapter 13.4 (quiz, Chapter 13 through 13.2; 1 video and 1 LC on odometry) '''[[Media:MRslides-ch13b.pdf|CLASS SLIDES]]'''
* Wed Nov 30: Chapter 13.5 (1 video and 1 LC on mobile manipulation) '''[[Media:MRslides-ch13c.pdf|CLASS SLIDES]]'''
* Wed Nov 29: Chapter 13.5 (1 video and 1 LC on mobile manipulation) '''[[Media:MRslides-ch13c.pdf|CLASS SLIDES]]'''
* Fri Dec 2: wrap-up
* Fri Dec 1: wrap-up
* Thurs Dec 8, noon: final project due
* Thurs Dec 7, noon: final project due


==Practice Exercises==
==Practice Exercises==
Line 141: Line 130:


== Practice Tests ==
== Practice Tests ==
* [[Media:ME449-midterm-2022.pdf|2022 midterm]] and [[Media:ME449-midterm-2022-solutions.pdf|2022 midterm solutions]]

* [[Media:ME449-quiz1-solutions-2019.pdf|Quiz 1, 2019]]
* Quiz 2, 2018: Exercises 4.2, 5.3, 6.1, 8.6, and 8.7 from [[Modern_Robotics#Useful_Supplemental_Documents|the practice exercises document]].
* [[Media:ME449-quiz1-2018.pdf|Quiz 1, 2018]]
* [[Media:ME449-quiz1-2018.pdf|Quiz 1, 2018]]
* Quiz 2, 2018: Exercises 4.2, 5.3, 6.1, 8.6, and 8.7 from [[Modern_Robotics#Useful_Supplemental_Documents|the practice exercises document]].
* [[Media:ME449-quiz1-solutions-2019.pdf|Quiz 1, 2019]]


<!--
<!--

Revision as of 09:15, 17 September 2023

Fall Quarter 2023


Supportive Class Environment

All members of this class (instructors, TAs, students) are expected to contribute to a respectful, inclusive, and supportive environment for every other member of the class.

We are partners in your education; help us help you get the most out of this class. Please engage as much as possible during our class meetings!

Honor Code

You are encouraged to discuss the material with the instructor, course assistants, and your classmates, but you are not allowed to share your answers or code with others. Anyone asking for answers or code, or providing answers or code, or becoming aware of others doing so without reporting to the instructor, is in violation of the honor code.


Getting Started

Do the following things as soon as possible:

Course Summary

Representations of the configuration and spatial motion of rigid bodies and robots based on modern screw theory. Forward, inverse, and differential kinematics. Robot dynamics, trajectory planning, and motion control. Wheeled mobile robots and mobile manipulation.

Prerequisites

Linear algebra, first-order linear ODEs, freshman-level physics/mechanics, a bit of programming background.

Grading

50% of your final grade will be from your Coursera grades (which I expect will be close to perfect) and 50% from the midterm and assignments outside of Coursera, including 15% midterm, 5% for asst 1, 5% for asst 2, 10% for asst 3, and 15% for asst 4 (the capstone project).

Course Text and Software

This course uses the textbook Modern Robotics: Mechanics, Planning, and Control, Kevin M. Lynch and Frank C. Park, Cambridge University Press 2017. If you find an error or typo in the book, please report it here.

Get the book, install and test the Modern Robotics code library, and install and test the CoppeliaSim robot simulator. You will program in Python, Mathematica, or MATLAB in this course.

Here is a linear algebra refresher appendix to accompany the book.

Approximate Syllabus and Schedule

Here is a summary of the structure of the course. All items are due 30 minutes before the associated class time (1:30 PM Central). The deadlines are controlled by Coursera, so do not be late! You may work ahead if you wish, but then you won't get as much out of the classes.

  • Before some classes, you should complete a quiz on earlier material.
  • Before most classes, you will watch the associated videos on Coursera and answer the "lecture comprehension" (LC) questions. (Designed to be relatively quick, to solidify your understanding.)
  • You are encouraged to read the corresponding portions of the textbook after watching the videos. I suggest you watch first, then read, then possibly re-watch, but you can determine what works best for your learning style.
  • During the class period after you watch those videos, I will typically summarize what we learned, work a problem, take any questions you have about the material, and possibly assign you a problem to work on.
  • There are two kinds of assessments on Coursera (Coursera refers to both of them as "quizzes"): "lecture comprehension" questions (LCs), which are short and immediately follow lectures, and summative quizzes, which are usually longer assessments/assignments occurring at the middle or end of a chapter.
  • Within Coursera there are also "discussion prompts," open-ended group questions that you should reply to (responses can be simple) and forums where you can post questions and reply to other students' questions.
  • Assignments outside Coursera will be submitted through Canvas.

Below is the approximate syllabus and schedule. Next to each date is the Coursera material that should have been covered at least 30 minutes before that class. "LC" refers to brief lecture comprehension questions that should be completed before that class, and "quiz" is a longer summative quiz on earlier material.

Chapter 2, Configuration Space

  • Wed Sept 20: welcome to the course and syllabus review; intro to Coursera. The schedule for completing Coursera items is set by this wiki!
  • Fri Sept 22: office hours; check for working CoppeliaSim implementation and summarize installation process for each OS; make sure Coursera invitation is accepted; material through Chapter 2.2 (3 videos and 2 LCs on dof of a robot) CLASS SLIDES
  • Mon Sept 25: course staff and office hours; meet the class; and material through Chapter 2.3 (quiz, Chapter 2 through 2.2; 2 videos and 2 LCs on C-space topology and representation) CLASS SLIDES
  • Wed Sept 27: finish Chapter 2 (2 videos and 2 LCs on configuration and velocity constraints, task space and workspace) CLASS SLIDES

Chapter 3, Rigid-Body Motions

  • Fri Sept 29: through Chapter 3.2.1 (quiz, Chapter 2.3 through 2.5; 3 videos and 3 LCs on rotation matrices SO(3)) CLASS SLIDES
  • Mon Oct 2: finish Chapter 3.2 (3 videos and 3 LCs on angular velocities, so(3), exponential coordinates) CLASS SLIDES
  • Wed Oct 4: asst 1 will be due Oct 14. New material: through Chapter 3.3.2 (quiz, Chapter 3 through 3.2; 3 videos and 3 LCs on transform matrices SE(3) and twists) CLASS SLIDES
  • Fri Oct 6: finish Chapter 3 (2 videos and 2 LCs on se(3), exponential coordinates, and wrenches) CLASS SLIDES

Chapter 4, Forward Kinematics (skip section 4.2 on URDF)

  • Mon Oct 9: finish Chapter 4 (quiz, Chapters 3.3 and 3.4; 3 videos and 3 LCs on product of exponentials formula, space and e-e frame) CLASS SLIDES

Chapter 5, Velocity Kinematics and Statics

  • Wed Oct 11: through Chapter 5.1 (quiz, Chapter 4; 3 videos and 3 LCs on space Jacobian, body Jacobian) CLASS SLIDES
  • Fri Oct 13: ASST 1, DUE 1:30 PM. New material: through Chapter 5.2 1 video and 1 LC on statics of open chains) CLASS SLIDES
  • Mon Oct 17: through Chapter 5.4 (2 videos and 2 LCs on singularity analysis, manipulability) CLASS SLIDES

Chapter 6, Inverse Kinematics (focus on section 6.2)

  • Wed Oct 18: Chapter 6 (quiz, Chapter 5; 3 videos and 3 LCs on numerical inverse kinematics) CLASS SLIDES

Chapter 8, Dynamics of Open Chains (skip sections 8.4, 8.7, 8.8, and 8.9)

  • Fri Oct 20: through Chapter 8.1.2 (quiz, Chapter 6; 2 videos and 2 LCs on Lagrangian dynamics) CLASS SLIDES
  • Mon Oct 23: New material: Chapter 8.1.3 (1 video and 1 LC on understanding the mass matrix) CLASS SLIDES
  • Wed Oct 25: MIDTERM, chapters 2-5 (no electronic devices allowed [calculator, laptop, tablet, etc.]; study sheets and book allowed) 2022 midterm and solutions (average score 22.9/32)
  • Fri Oct 27: Chapter 8.2 (2 videos and 2 LCs on dynamics of a single rigid body) CLASS SLIDES
  • Mon Oct 30: ASST 2, DUE 1:30 PM. Chapter 8.3 and 8.5 (2 videos and 2 LCs on Newton-Euler inverse dynamics, forward dynamics) CLASS SLIDES

Chapter 9, Trajectory Generation

  • Wed Nov 1: through Chapter 9.3 (quiz, Chapter 8 through 8.3; 3 videos and 3 LCs on point-to-point trajectories, polynomial via point trajectories) CLASS SLIDES
  • Fri Nov 3: Chapter 9.4 (quiz, Chapter 9 through 9.3; 3 videos and 3 LCs on time-optimal time scaling) CLASS SLIDES
  • Mon Nov 6: Chapter 9.4 recap.
  • Wed Nov 8: ASST 3, DUE 1:30 PM; final project discussion

Chapter 11, Robot Control (focus on sections 11.1 through 11.4)

  • Fri Nov 10: up to (not including) Chapter 11.2.2.1 (quiz, Chapter 9.4; 3 videos and 3 LCs on linear error dynamics) CLASS SLIDES
  • Mon Nov 13: finish Chapter 11.2.2 (2 videos and 2 LCs on first- and second-order error dynamics) CLASS SLIDES
  • Wed Nov 15: through Chapter 11.3 (3 videos and 3 LCs on motion control with velocity inputs) CLASS SLIDES
  • Fri Nov 17: Chapter 11.4 (quiz, Chapter 11 through 11.3; 3 videos and 3 LCs on motion control with torque or force inputs) CLASS SLIDES

Chapter 13, Wheeled Mobile Robots (skip section 13.3)

  • Mon Nov 20: FINAL PROJECT MILESTONE 2, DUE 1:30 PM; new material through Chapter 13.2 (quiz, Chapter 11.4; 3 videos and 3 LCs on omnidirectional wheeled mobile robots) CLASS SLIDES
  • Wed Nov 22: CLASS CANCELED
  • Mon Nov 27: Chapter 13.4 (quiz, Chapter 13 through 13.2; 1 video and 1 LC on odometry) CLASS SLIDES
  • Wed Nov 29: Chapter 13.5 (1 video and 1 LC on mobile manipulation) CLASS SLIDES
  • Fri Dec 1: wrap-up
  • Thurs Dec 7, noon: final project due

Practice Exercises

Sample exercises and their solutions, useful for practicing your understanding of the material.

Practice Tests


Assignments

As mentioned above, in the Honor Code: You are encouraged to discuss the material with the instructor, course assistants, and your classmates, but you are not allowed to share your answers or code with others. Anyone asking for answers or code, or providing answers or code, or becoming aware of others doing so without reporting to the instructor, is considered in violation of the honor code.

Assignments are graded based on correctness, how well you organize your homework (it should be easy to understand your thinking and easy to find your responses), and how well you follow the submission instructions below. You will lose points if you don't follow these instructions. If more detailed submission instructions are given with a particular assignment, make sure to follow those, too.

You will not receive credit if you just give an answer. Your solution must demonstrate how you got the answer. It must be easy to follow.

If you ever think a problem is stated incorrectly, not enough information is given, or it is impossible to solve, don't panic! Simply make a reasonable assumption that will allow you to solve the problem (but clearly state what this assumption is), or indicate why it is not possible to solve the problem.

Instructions for uploading assignments to Canvas:

  • Upload on time! Late submissions are not accepted.
  • For every assignment, you should upload exactly one pdf file, named FamilyName_GivenName_asst#.pdf. This pdf file should have answers to all the questions, including screen shots, text logs of code running, etc. Always include output of your code running on the exercises, so the grader can see what you got when you ran your code. You may scan handwritten solutions (provided they are neat!), but in any case, all answers should be in a single pdf file. DO NOT UPLOAD SCANS AS JPGS! THEY MUST ALL BE COMPILED INTO A SINGLE PDF FILE.
  • If required by the assignment, in addition you may be asked to provide a zip file including all source code in their original forms, such as .m, .py, or .nb. This zip file should be named FamilyName_GivenName_asst#.zip. Always create a script that the grader can easily invoke to run your code for a particular exercise. Don't expect the grader to search through your code to find sample code to cut-and-paste. Make it as easy as possible for the grader (you can include a "README.txt" file in your zip file, for example, to tell the grader how everything works). Your code should be commented well enough that it is easy for someone else to pick it up and understand more or less how it works.

Assignment 1, due 1:30 PM CT Friday October 14 on Canvas.

Assignment 2, due 1:30 PM CT Monday October 31 on Canvas.

Assignment 3, due 1:30 PM CT Wednesday November 9 on Canvas.


Final Project: Mobile Manipulation

The final project is described on this page. It is due in Canvas on Thursday December 8 at noon.

  • Due Monday November 21 at 1:30 PM on Canvas: Milestone 2. (You will do milestone 2 first! Milestone 1 will come next.) You will turn in a single zip file named FamilyName_GivenName_milestone2.zip with your solution to milestone 2. The zip file should include a README.pdf file with a brief summary of your solution and how to use it, and if your code is not working properly, it should correctly point out the problems. The zip file should also include a directory with the commented code you wrote, including a cut-and-pastable comment at the beginning showing how to execute the code to generate the csv file included in the submission; a CoppeliaSim video showing your reference trajectory of the end-effector (similar to this video); and the csv file that your code generated to create the video.
  • Due Thursday December 8 at 12:00 PM (noon) on Canvas: The entire final writeup, as described at this page, in a single zip file named FamilyName_GivenName_capstone.zip. You may earn up to 10% extra credit on the capstone project by implementing self-collision avoidance. See the description of the final project writeup.