<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://hades.mech.northwestern.edu//api.php?action=feedcontributions&amp;feedformat=atom&amp;user=ZackWoodruff</id>
	<title>Mech - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://hades.mech.northwestern.edu//api.php?action=feedcontributions&amp;feedformat=atom&amp;user=ZackWoodruff"/>
	<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php/Special:Contributions/ZackWoodruff"/>
	<updated>2026-04-20T20:44:29Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.9</generator>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=25319</id>
		<title>ME 449 Robotic Manipulation</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=25319"/>
		<updated>2018-10-09T02:43:18Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Fall Quarter 2018&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* Instructor:  Prof. Kevin Lynch&lt;br /&gt;
* Meeting:  2:00-2:50, MWF, Frances Searle Building 1-441&lt;br /&gt;
* TAs:  Huan Weng, Tito Fernandez, and Zack Woodruff&lt;br /&gt;
* Kevin Office hours:  Tech B222, Mon Oct 8 5:00-6:00&lt;br /&gt;
* TA Office hours: Tech B241 (through the ME office by the freight elevator), Tuesday 3:30-4:30 &lt;br /&gt;
* course website:  [http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation]&lt;br /&gt;
* book website:  [http://modernrobotics.org http://modernrobotics.org]&lt;br /&gt;
&lt;br /&gt;
==Course Summary==&lt;br /&gt;
&lt;br /&gt;
Mechanics of robotic manipulation, computer representations and algorithms for manipulation planning, and applications to industrial automation, parts feeding, grasping, fixturing, and assembly.&lt;br /&gt;
&lt;br /&gt;
Monday Oct 1:  Tito Fernandez.  Wednesday Oct 3:  Huan Weng.  Friday Oct 5:  Zack Woodruff.&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
&lt;br /&gt;
Linear algebra, first-order linear ODEs, freshman-level physics/mechanics, a bit of programming background.&lt;br /&gt;
&lt;br /&gt;
==Grading==&lt;br /&gt;
* 50% quizzes (quizzes will be open book, open notes, any cheat sheets you would like, but no electronics)&lt;br /&gt;
* 20% assignments (lowest grade will be dropped)&lt;br /&gt;
* 15% final project (due Wed Dec 12, during finals week)&lt;br /&gt;
* 10% practice exercise for other students&lt;br /&gt;
* 5% engagement:  answering questions in class, participation in in-class exercises, and helping other students in class&lt;br /&gt;
&lt;br /&gt;
==Course Text and Software==&lt;br /&gt;
&lt;br /&gt;
This course uses the textbook &amp;#039;&amp;#039;Modern Robotics:  Mechanics, Planning, and Control&amp;#039;&amp;#039;, Kevin M. Lynch and Frank C. Park, Cambridge University Press 2017.&lt;br /&gt;
&lt;br /&gt;
[[Coursera_Resources#Things_you_should_complete_before_taking_any_course|Get the book, install and test the Modern Robotics code library, and install and test the V-REP simulator.]]  You will program in Python, Mathematica, or MATLAB in this course.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Modern Robotics Linear Algebra Review|Here is a linear algebra refresher appendix to accompany the book.]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
==Video Lectures and the Flipped Classroom==&lt;br /&gt;
&lt;br /&gt;
This course will take advantage of video lectures and lecture comprehension quizzes on Coursera.  (You can also see the video lectures, but not the lecture comprehension quizzes, outside Coursera at the video browser [http://modernrobotics.northwestern.edu &amp;#039;&amp;#039;&amp;#039;http://modernrobotics.northwestern.edu&amp;#039;&amp;#039;&amp;#039;] or using [[Modern_Robotics_Videos|&amp;#039;&amp;#039;&amp;#039;direct links to the videos on YouTube&amp;#039;&amp;#039;&amp;#039;]].)&lt;br /&gt;
&lt;br /&gt;
You should sign up to audit the following courses on Coursera in advance of our study of them in class.  Don&amp;#039;t pay; you should start by choosing the 7-day free trial, but then click &amp;quot;audit the course.&amp;quot;  Auditing the course gives you access to everything except graded assignments and peer-reviewed projects.&lt;br /&gt;
&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course1 Course 1:  Foundations of Robot Motion (Chapters 2 and 3)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course2 Course 2:  Robot Kinematics (Chapters 4, 5, 6, and 7)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course3 Course 3:  Robot Dynamics (Chapters 8 and 9)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course4 Course 4:  Robot Motion Planning and Control (Chapters 10 and 11)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course5 Course 5:  Robot Manipulation and Wheeled Mobile Robots (Chapters 12 and 13)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course6 Course 6:  Capstone Project, Mobile Manipulation]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Coursera Resources|This page collects together useful supplemental material to the Coursera courses]]&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
The general flow of the class will be the following:  &lt;br /&gt;
&lt;br /&gt;
* Before class, watch the videos, do the lecture comprehension quizzes associated with each video, do the associated reading, and participate in any &amp;quot;discussion prompts&amp;quot; on Coursera.  You should plan to bring any questions or confusion to class.  In general, I recommend that you first watch the videos to get a quick understanding of the material of the chapter, then follow up by reading the appropriate sections of the book.  The videos are short and dense, so don&amp;#039;t expect to get by only watching the videos.  You will need to read the book, then do the exercises, to gain mastery of the material.  &lt;br /&gt;
* In class, I will briefly review the lecture comprehension quizzes and the material that was covered, get a little discussion going and take any questions, and then ask you to work on a practice exercise either individually or in small groups.  If time remains, you may work on homework together.  I will be available to help.&lt;br /&gt;
* On days when a homework is turned in, I will leave time for any questions about it.  On days before a quiz, I will spend as much time reviewing the material covered by the quiz as you would like.&lt;br /&gt;
&lt;br /&gt;
==Student-Created Exercises==&lt;br /&gt;
&lt;br /&gt;
All students will be responsible for creating a practice exercise, consisting of the exercise and the solution.  A good exercise should test an important concept in the context of a real robotics application (e.g., motion planning for a quadrotor, robot localization, computer vision, grasping, etc.), require the learner to understand and apply equations in the book or use the book&amp;#039;s software, and require a bit of thought (i.e., not just &amp;quot;plug and chug&amp;quot; questions).  For many exercises, a good figure or two is helpful.  You could use a figure of a real robot and add your own annotations to it (e.g., frames or objects in its environment), or you could hand-draw something, or you could use V-REP or other software to help create the figure.  You should not confine your question to an application discussed in the textbook.  Make your exercise interesting and motivating!  Exercises that require synthesizing two or more concepts or equations are more interesting and useful.&lt;br /&gt;
&lt;br /&gt;
You will create your exercise using [https://en.wikipedia.org/wiki/LaTeX LaTeX] (pronounced &amp;quot;lay teck&amp;quot; or &amp;quot;lah teck&amp;quot;), the standard for scientific document preparation.  [https://www.overleaf.com/ Overleaf] is a free online implementation of LaTeX.  To get started on your exercise,&lt;br /&gt;
&lt;br /&gt;
# Download [[Media:ME449-exercise.zip|&amp;#039;&amp;#039;&amp;#039;this .zip file&amp;#039;&amp;#039;&amp;#039;]] and uncompress it.  There are four files:  main.tex, prelims.tex, screw.pdf, and happy-face.jpg.&lt;br /&gt;
# Create an account on [https://www.overleaf.com/ Overleaf].&lt;br /&gt;
# Create a new (blank) project on Overleaf called &amp;quot;exercise.&amp;quot;&lt;br /&gt;
# Upload the four files main.tex, prelims.tex, screw.pdf, and happy-face.jpg to this project.  (You may get a warning that your default main.tex file is being overwritten; don&amp;#039;t worry about it.)&lt;br /&gt;
# Click on main.tex to see your main LaTeX document.&lt;br /&gt;
# Press the &amp;quot;Recompile&amp;quot; button to see the pdf document that is compiled from the four files.  You can download the pdf file, or all the &amp;quot;source&amp;quot; files, by clicking on &amp;quot;Menu&amp;quot; and choosing which to download.  &amp;#039;&amp;#039;&amp;#039;[[Media:ME449-exercise-output.pdf|This is the .pdf file you should have created.]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
main.tex is the main file of the project, and the only one that you will edit, so you should understand what is going on in that file.  prelims.tex tells LaTeX what packages to use and defines some macros, e.g., \twist creates &amp;lt;math&amp;gt;\mathcal{V}&amp;lt;/math&amp;gt; and \wrench creates &amp;lt;math&amp;gt;\mathcal{F}&amp;lt;/math&amp;gt;.  screw.pdf and happy-face.jpg are image files that get included in the document.  You will create different image files depending on your exercise.&lt;br /&gt;
&lt;br /&gt;
To learn more about typesetting in LaTeX, google is your friend!  Try googling &amp;quot;latex math&amp;quot; or &amp;quot;latex math symbols,&amp;quot; for example.&lt;br /&gt;
&lt;br /&gt;
You will turn in the source for your exercise as well as the final pdf file.&lt;br /&gt;
&lt;br /&gt;
==Approximate Syllabus and Reading==&lt;br /&gt;
&lt;br /&gt;
* Chapter 2, Configuration Space (weeks 1-2)&lt;br /&gt;
* Chapter 3, Rigid-Body Motions (weeks 2-3)&lt;br /&gt;
* Chapter 4, Forward Kinematics (week 4); section 4.2 is optional&lt;br /&gt;
* Chapter 5, Velocity Kinematics and Statics (week 5)&lt;br /&gt;
* Chapter 6, Inverse Kinematics (week 6); focus on section 6.2&lt;br /&gt;
* Chapter 8, Dynamics of Open Chains (weeks 6-7); skip sections 8.4, 8.8, and 8.9&lt;br /&gt;
* Chapter 9, Trajectory Generation (week 8); focus on sections 9.1 and 9.4&lt;br /&gt;
* Chapter 11, Robot Control (week 9); focus on sections 11.1 through 11.4&lt;br /&gt;
* Chapter 13, Wheeled Mobile Robots (week 10); skip section 13.3&lt;br /&gt;
&lt;br /&gt;
==Assignments==&lt;br /&gt;
&lt;br /&gt;
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&amp;#039;t follow these instructions.&lt;br /&gt;
&lt;br /&gt;
If you ever think a problem is stated incorrectly, not enough information is given, or it is impossible to solve, don&amp;#039;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.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Instructions for uploading assignments to Canvas:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
0.  &amp;#039;&amp;#039;&amp;#039;Upload on time! Late submissions are not accepted.&amp;#039;&amp;#039;&amp;#039;  The cutoff time is 30 minutes before class the day the assignment is due.&lt;br /&gt;
&lt;br /&gt;
1.  Only upload one zip file or rar file for each assignment;&lt;br /&gt;
&lt;br /&gt;
2.  In your zip file or rar file, include all source codes in their original form, such as .cpp, .m, .py, .nb.&lt;br /&gt;
&lt;br /&gt;
3.  If there is a demo, combine the screen shots into one SEPARATE pdf file, OR, show the results in one SEPARATE .txt file (DON&amp;#039;T show them in your source code file format, e.g. .nb file), and include it in the zip file (or rar file).&lt;br /&gt;
&lt;br /&gt;
4.  Always include output of your code running on the exercises, particularly in case the grader has problems running your code.  Also, always create a script (for example, titled ex6-9 or something) that the grader can easily invoke for each exercise.  Don&amp;#039;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 &amp;quot;README&amp;quot; file in your solutions, for example).&lt;br /&gt;
&lt;br /&gt;
5.  Please name the upload file in the following format: LastName_FirstName.zip.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Assignment 1, due 30 minutes before class on Canvas, Wed Oct 10.&amp;#039;&amp;#039;&amp;#039; Exercises 2.1, 2.4, 2.9 for mechanisms (a) and (b) from Fig 2.18, 2.22, 2.29, and 3.1.&lt;br /&gt;
&lt;br /&gt;
==Detailed Syllabus==&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1UrBFai-1Z98Ry48bW50OMqxvvqZ3Jo8pHgZmljOgPpo/edit?usp=sharing &amp;#039;&amp;#039;&amp;#039;The course calendar&amp;#039;&amp;#039;&amp;#039;], including video lecture and reading assignments due before each class.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1jWd_POLlQYxQLv1Igv-eVmORdtEcLi0mU_rVLkNguYI/edit?usp=sharing &amp;#039;&amp;#039;&amp;#039;Click here for a graphical view of the class schedule, including student lectures.&amp;#039;&amp;#039;&amp;#039;]&lt;br /&gt;
&lt;br /&gt;
Homeworks are due at the beginning of class every Wednesday, unless otherwise noted.  You will watch the videos and do the reading in advance of class using the material, as noted in the syllabus below.  A typical weekly schedule will consist of:  &lt;br /&gt;
: M:  Video/reading comprehension quick quiz and help with homework.  &lt;br /&gt;
: W:  Video/reading comprehension quick quiz, homework solutions, plus &amp;#039;&amp;#039;&amp;#039;EITHER&amp;#039;&amp;#039;&amp;#039; student lecture &amp;#039;&amp;#039;&amp;#039;OR&amp;#039;&amp;#039;&amp;#039; quiz preparation.  &lt;br /&gt;
: F:  Video/reading comprehension quick quiz plus &amp;#039;&amp;#039;&amp;#039;EITHER&amp;#039;&amp;#039;&amp;#039; student lecture &amp;#039;&amp;#039;&amp;#039;OR&amp;#039;&amp;#039;&amp;#039; quiz.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (W 9/20)&lt;br /&gt;
: Welcome to the course and course website.  Structure of the course (HW due Wed, student-generated lectures and learning materials, in-class assignments, feedback on student lectures, occasional Friday quizzes).  Book, software, (lack of) D-H parameters, syllabus, V-REP simulator, office hours.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos: first 3 videos of Chapter 2, through Chapter 2.2&lt;br /&gt;
: Reading:  Chapters 2.1 and 2.2&lt;br /&gt;
: Software:  download github software with book, install V-REP and verify that you can use Scenes 1 and 2 (the UR5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW1, due 1:30 PM 9/27&amp;#039;&amp;#039;&amp;#039;:  Exercises 2.3, 2.9, 2.20, 2.29.  Also, create your own example system with closed loops, something not in the book, and solve for the degrees of freedom using Grubler&amp;#039;s formula.  Make it something that exists or occurs in common experience, not necessarily a robot.  Imagine using it to teach someone about Grubler&amp;#039;s formula.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (F 9/22)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Sample student lecture&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  2 videos on Chapter 2.3&lt;br /&gt;
: Reading:  Chapter 2.3&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (M 9/25)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Bring your laptop, demo V-REP UR5 scenes&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  2 videos, Chapter 2.4 and 2.5&lt;br /&gt;
: Reading:  Chapters 2.4 and 2.5&lt;br /&gt;
: Turn in HW1&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 4&amp;#039;&amp;#039;&amp;#039; (W 9/27)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Solutions to HW1; student examples of Grubler&amp;#039;s formula&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  first 3 videos of Chapter 3, through Chapter 3.2.1&lt;br /&gt;
: Reading:  through Chapter 3.2.1&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW2, due 1:30 PM 10/4&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
:: 1) Exercise 3.1, except the y_a axis points in the direction (1,0,0).&lt;br /&gt;
:: 2) Exercise 3.2, except p = (1,2,3).&lt;br /&gt;
:: 3) Exercise 3.5.&lt;br /&gt;
:: 4) Exercise 3.9.  &lt;br /&gt;
:: 5) In Figure 1.1(a) of the book is an image of a UR5 robot, with a frame at its base and a frame at its end-effector.  Eyeballing the end-effector frame, approximately write the rotation matrix that represents the end-effector frame orientation relative to the base frame.  Your rotation matrix should satisfy the properties of a rotation matrix (R^T R = I, det(R) = 1).  The x-axes are in red, the y-axes are in green, and the z-axes are in blue.&lt;br /&gt;
:: 6) Write a program that takes a set of exponential coordinates for rotation from the user as input.  It then prints out the following: (a) the corresponding unit rotation axis and the angle of rotation about that axis; (b) the so(3) 3x3 matrix representation of the exponential coordinates; (c) the 3x3 SO(3) rotation matrix corresponding to the exponential coordinates; (d) the inverse of the rotation matrix from (c); (e) the 3x3 so(3) matrix log of the matrix from (d); and (f) the corresponding exponential coordinates for the so(3) matrix (e).  Use the code from the book and write your program in Mathematica, MATLAB, or Python.  Turn in your code and the output of an example run using (0.5, 1, 0) as the input to part (a).&lt;br /&gt;
:: 7) Write a function that returns &amp;quot;true&amp;quot; if a given 3x3 matrix is with a distance epsilon of being a rotation matrix and &amp;quot;false&amp;quot; otherwise.  It is up to you to define the &amp;quot;distance&amp;quot; between a random 3x3 real matrix and members of SO(3). Test the function on two matrices, neither of which is exactly in SO(3), but one of which is close (so the result is &amp;quot;true&amp;quot;) and one of which is not.  Turn in your code and provide the test run output, which also outputs the distance to SO(3) that you defined.&lt;br /&gt;
:: 8) Following up on the previous exercise:  describe (don&amp;#039;t implement, unless you want to) a function that takes a &amp;quot;close by&amp;quot; 3x3 matrix and returns the closest rotation matrix.  How would you use the fact that R^T R - I must be equal to zero to modify the initial 3x3 matrix to make it a &amp;quot;close by&amp;quot; rotation matrix?  Would the function be iterative?  You are free to do some research online, but as always, &amp;#039;&amp;#039;&amp;#039;cite your sources&amp;#039;&amp;#039;&amp;#039;!&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (F 9/29)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Lecture&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-6 of Chapter 3, through Chapter 3.2.3&lt;br /&gt;
: Reading:  through Chapter 3.2.3&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (M 10/2)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 7-9 of Chapter 3, Chapters 3.3.1 and 3.3.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (W 10/4)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 10-11, Chapter 3.3.3 and 3.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW3, due 1:30 PM 10/11&amp;#039;&amp;#039;&amp;#039;: Exercises 3.16, 3.17, 3.27, 3.31, and 3.48 (as always, for programming assignments, turn in your code and sample output demonstrating it).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (F 10/6)&lt;br /&gt;
: EXAM 1&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 4, through Chapter 4.1.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (M 10/9)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 2-3 of Chapter 4, Chapter 4.1.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (W 10/11)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 1 (Pawar, Subramanian, Goyal, Cai)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 5, up to (not including) Chapter 5.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW4, due 1:30 PM 10/18&amp;#039;&amp;#039;&amp;#039;: Exercises 4.2, 4.8, 4.14, and 5.7(a).  Question 5:  In Chapter 3.5 (Summary), there is a list of analogies between rotations and rigid-body motions.  Read it carefully and report anything that is either unclear or incorrect.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (F 10/13)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 2 (Wang, Wu, Xia, Zheng)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 2 of Chapter 5, Chapter 5.1.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (M 10/16)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 3 and 4 of Chapter 5, Chapter 5.1.2 through 5.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (W 10/18)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 3 (Wiznitzers, Hutson, Spies)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 5 and 6 of Chapter 5, Chapter 5.3 and 5.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW5, due 1:30 PM 10/25&amp;#039;&amp;#039;&amp;#039;: Exercises 5.2, 5.3, 5.23, 5.25, 6.7, and 6.8.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (F 10/20)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 4 (Don, Chien, Husain, Sulaiman)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1 and 2 of Chapter 6,&lt;br /&gt;
: Reading:  intro of Chapter 6 and Chapter 6.2&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (M 10/23)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 3 of Chapter 6&lt;br /&gt;
: Reading:  Chapter 6.2&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (W 10/25)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 8, through 8.1.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: [[Media:ME449-HW6-2017.pdf|HW6, due 1:30 PM 11/1]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17 &amp;#039;&amp;#039;&amp;#039; (F 10/27)&lt;br /&gt;
: EXAM 2&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 2 of Chapter 8, through 8.1.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (M 10/30)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 3 of Chapter 8, through 8.1.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (W 11/1)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 5 (Zhang, Zhu, Meng, Luo)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-5 of Chapter 8, through 8.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW7, due 1:30 PM 11/8&amp;#039;&amp;#039;&amp;#039;: Exercises 8.2, 8.3, 8.11 (you should build on the MR code), and 8.15(a).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (F 11/3)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 6 (Lyu, Yi, Wang, Swissler)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 6 of Chapter 8, up to (not including) 8.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 21&amp;#039;&amp;#039;&amp;#039; (M 11/6)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 7 of Chapter 8, Chapter 8.5 (skip 8.4)&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 22&amp;#039;&amp;#039;&amp;#039; (W 11/8)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 7 (Warren, Kilaru, Wang, Mandana)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-2 of Chapter 9, through Chapter 9.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW8, due 1:30 PM 11/15&amp;#039;&amp;#039;&amp;#039;: Exercises 8.15(b) (use your previous results from 8.15(a), and turn in any code you write as well as a V-REP movie of your simulation), 8.14 (turn in your testable code and evidence your code returns similar results), 9.14, and 9.26.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 23&amp;#039;&amp;#039;&amp;#039; (F 11/10)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 8 (Wang, Dai, Ma, Peng)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 4 of Chapter 9, Chapter 9.4 - 9.4.1 (skip 9.3)&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 24&amp;#039;&amp;#039;&amp;#039; (M 11/13)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 5-6 of Chapter 9, up to (not including) Chapter 9.5&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 25&amp;#039;&amp;#039;&amp;#039; (W 11/15)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-3 of Chapter 11, up to (not including) Chapter 11.2.2.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Final project.  This project is part of the assignment grade, cannot be dropped, and has the weight of 2 normal assignments.&amp;#039;&amp;#039;&amp;#039;  The assignment is split into two parts:  a relatively simple Part I, due after 1 week, followed by the programming-heavy Part II, due during finals week.  You will receive a single grade for the entire assignment, after Part II has been submitted.&lt;br /&gt;
:: &amp;#039;&amp;#039;&amp;#039;Part I, due 1:30 PM 11/22&amp;#039;&amp;#039;&amp;#039;:  Exercise 13.33 (a) and (b).  Turn in your solutions (handwritten or typed) and any code you wrote.&lt;br /&gt;
:: &amp;#039;&amp;#039;&amp;#039;Part II, due 11:59 PM 12/6&amp;#039;&amp;#039;&amp;#039;:  Exercise 13.33 (c), (d), and (e).  Turn in 1) any solutions (handwritten or typed), 2) your code, 3) any plots you created with your code, 4) your short V-REP videos (made using the youbot csv animation scene), and 5) the .csv files corresponding to the videos.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 26&amp;#039;&amp;#039;&amp;#039; (F 11/17)&lt;br /&gt;
: EXAM 3&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-5 of Chapter 11, Chapter 11.2.2.1 and 11.2.2.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 27&amp;#039;&amp;#039;&amp;#039; (M 11/20)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 6-8 of Chapter 11, Chapter 11.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Turn in Part I of your final project on Canvas.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 28&amp;#039;&amp;#039;&amp;#039; (W 11/22)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 9 (Abiney, Aubrun, Anthony, Alston)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-3 of Chapter 13, through Chapter 13.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 29&amp;#039;&amp;#039;&amp;#039; (M 11/27)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Reading:  odometry and mobile manipulation, Chapter 13.4 and 13.5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 30&amp;#039;&amp;#039;&amp;#039; (W 11/29)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 10 (Miller, Berrueta, Davis, Tobia)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Final assignment work&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 31&amp;#039;&amp;#039;&amp;#039; (F 12/1)&lt;br /&gt;
: Student lecture 11 (Fernandez, Lutzen, SaLoutos, Iwankiw)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Your final project is due on Canvas by 11:59 PM on Wednesday Dec 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
==Archive==&lt;br /&gt;
&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive 2012)|ME 449 Spring 2012]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Spring 2014)|ME 449 Spring 2014]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2014)|ME 449 Fall 2014]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2015)|ME 449 Fall 2015]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2016)|ME 449 Fall 2016]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2017)|ME 449 Fall 2017]]&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=25318</id>
		<title>ME 449 Robotic Manipulation</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=25318"/>
		<updated>2018-10-09T02:42:32Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Fall Quarter 2018&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* Instructor:  Prof. Kevin Lynch&lt;br /&gt;
* Meeting:  2:00-2:50, MWF, Frances Searle Building 1-441&lt;br /&gt;
* TAs:  Huan Weng, Tito Fernandez, and Zack Woodruff&lt;br /&gt;
* Kevin Office hours:  Tech B222, Mon Oct 8 5:00-6:00&lt;br /&gt;
* TA Office hours: 3:30-4:30 Tech B241 (through the ME office by the freight elevator)&lt;br /&gt;
* course website:  [http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation]&lt;br /&gt;
* book website:  [http://modernrobotics.org http://modernrobotics.org]&lt;br /&gt;
&lt;br /&gt;
==Course Summary==&lt;br /&gt;
&lt;br /&gt;
Mechanics of robotic manipulation, computer representations and algorithms for manipulation planning, and applications to industrial automation, parts feeding, grasping, fixturing, and assembly.&lt;br /&gt;
&lt;br /&gt;
Monday Oct 1:  Tito Fernandez.  Wednesday Oct 3:  Huan Weng.  Friday Oct 5:  Zack Woodruff.&lt;br /&gt;
&lt;br /&gt;
==Prerequisites==&lt;br /&gt;
&lt;br /&gt;
Linear algebra, first-order linear ODEs, freshman-level physics/mechanics, a bit of programming background.&lt;br /&gt;
&lt;br /&gt;
==Grading==&lt;br /&gt;
* 50% quizzes (quizzes will be open book, open notes, any cheat sheets you would like, but no electronics)&lt;br /&gt;
* 20% assignments (lowest grade will be dropped)&lt;br /&gt;
* 15% final project (due Wed Dec 12, during finals week)&lt;br /&gt;
* 10% practice exercise for other students&lt;br /&gt;
* 5% engagement:  answering questions in class, participation in in-class exercises, and helping other students in class&lt;br /&gt;
&lt;br /&gt;
==Course Text and Software==&lt;br /&gt;
&lt;br /&gt;
This course uses the textbook &amp;#039;&amp;#039;Modern Robotics:  Mechanics, Planning, and Control&amp;#039;&amp;#039;, Kevin M. Lynch and Frank C. Park, Cambridge University Press 2017.&lt;br /&gt;
&lt;br /&gt;
[[Coursera_Resources#Things_you_should_complete_before_taking_any_course|Get the book, install and test the Modern Robotics code library, and install and test the V-REP simulator.]]  You will program in Python, Mathematica, or MATLAB in this course.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Modern Robotics Linear Algebra Review|Here is a linear algebra refresher appendix to accompany the book.]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
==Video Lectures and the Flipped Classroom==&lt;br /&gt;
&lt;br /&gt;
This course will take advantage of video lectures and lecture comprehension quizzes on Coursera.  (You can also see the video lectures, but not the lecture comprehension quizzes, outside Coursera at the video browser [http://modernrobotics.northwestern.edu &amp;#039;&amp;#039;&amp;#039;http://modernrobotics.northwestern.edu&amp;#039;&amp;#039;&amp;#039;] or using [[Modern_Robotics_Videos|&amp;#039;&amp;#039;&amp;#039;direct links to the videos on YouTube&amp;#039;&amp;#039;&amp;#039;]].)&lt;br /&gt;
&lt;br /&gt;
You should sign up to audit the following courses on Coursera in advance of our study of them in class.  Don&amp;#039;t pay; you should start by choosing the 7-day free trial, but then click &amp;quot;audit the course.&amp;quot;  Auditing the course gives you access to everything except graded assignments and peer-reviewed projects.&lt;br /&gt;
&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course1 Course 1:  Foundations of Robot Motion (Chapters 2 and 3)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course2 Course 2:  Robot Kinematics (Chapters 4, 5, 6, and 7)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course3 Course 3:  Robot Dynamics (Chapters 8 and 9)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course4 Course 4:  Robot Motion Planning and Control (Chapters 10 and 11)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course5 Course 5:  Robot Manipulation and Wheeled Mobile Robots (Chapters 12 and 13)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course6 Course 6:  Capstone Project, Mobile Manipulation]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Coursera Resources|This page collects together useful supplemental material to the Coursera courses]]&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
The general flow of the class will be the following:  &lt;br /&gt;
&lt;br /&gt;
* Before class, watch the videos, do the lecture comprehension quizzes associated with each video, do the associated reading, and participate in any &amp;quot;discussion prompts&amp;quot; on Coursera.  You should plan to bring any questions or confusion to class.  In general, I recommend that you first watch the videos to get a quick understanding of the material of the chapter, then follow up by reading the appropriate sections of the book.  The videos are short and dense, so don&amp;#039;t expect to get by only watching the videos.  You will need to read the book, then do the exercises, to gain mastery of the material.  &lt;br /&gt;
* In class, I will briefly review the lecture comprehension quizzes and the material that was covered, get a little discussion going and take any questions, and then ask you to work on a practice exercise either individually or in small groups.  If time remains, you may work on homework together.  I will be available to help.&lt;br /&gt;
* On days when a homework is turned in, I will leave time for any questions about it.  On days before a quiz, I will spend as much time reviewing the material covered by the quiz as you would like.&lt;br /&gt;
&lt;br /&gt;
==Student-Created Exercises==&lt;br /&gt;
&lt;br /&gt;
All students will be responsible for creating a practice exercise, consisting of the exercise and the solution.  A good exercise should test an important concept in the context of a real robotics application (e.g., motion planning for a quadrotor, robot localization, computer vision, grasping, etc.), require the learner to understand and apply equations in the book or use the book&amp;#039;s software, and require a bit of thought (i.e., not just &amp;quot;plug and chug&amp;quot; questions).  For many exercises, a good figure or two is helpful.  You could use a figure of a real robot and add your own annotations to it (e.g., frames or objects in its environment), or you could hand-draw something, or you could use V-REP or other software to help create the figure.  You should not confine your question to an application discussed in the textbook.  Make your exercise interesting and motivating!  Exercises that require synthesizing two or more concepts or equations are more interesting and useful.&lt;br /&gt;
&lt;br /&gt;
You will create your exercise using [https://en.wikipedia.org/wiki/LaTeX LaTeX] (pronounced &amp;quot;lay teck&amp;quot; or &amp;quot;lah teck&amp;quot;), the standard for scientific document preparation.  [https://www.overleaf.com/ Overleaf] is a free online implementation of LaTeX.  To get started on your exercise,&lt;br /&gt;
&lt;br /&gt;
# Download [[Media:ME449-exercise.zip|&amp;#039;&amp;#039;&amp;#039;this .zip file&amp;#039;&amp;#039;&amp;#039;]] and uncompress it.  There are four files:  main.tex, prelims.tex, screw.pdf, and happy-face.jpg.&lt;br /&gt;
# Create an account on [https://www.overleaf.com/ Overleaf].&lt;br /&gt;
# Create a new (blank) project on Overleaf called &amp;quot;exercise.&amp;quot;&lt;br /&gt;
# Upload the four files main.tex, prelims.tex, screw.pdf, and happy-face.jpg to this project.  (You may get a warning that your default main.tex file is being overwritten; don&amp;#039;t worry about it.)&lt;br /&gt;
# Click on main.tex to see your main LaTeX document.&lt;br /&gt;
# Press the &amp;quot;Recompile&amp;quot; button to see the pdf document that is compiled from the four files.  You can download the pdf file, or all the &amp;quot;source&amp;quot; files, by clicking on &amp;quot;Menu&amp;quot; and choosing which to download.  &amp;#039;&amp;#039;&amp;#039;[[Media:ME449-exercise-output.pdf|This is the .pdf file you should have created.]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
main.tex is the main file of the project, and the only one that you will edit, so you should understand what is going on in that file.  prelims.tex tells LaTeX what packages to use and defines some macros, e.g., \twist creates &amp;lt;math&amp;gt;\mathcal{V}&amp;lt;/math&amp;gt; and \wrench creates &amp;lt;math&amp;gt;\mathcal{F}&amp;lt;/math&amp;gt;.  screw.pdf and happy-face.jpg are image files that get included in the document.  You will create different image files depending on your exercise.&lt;br /&gt;
&lt;br /&gt;
To learn more about typesetting in LaTeX, google is your friend!  Try googling &amp;quot;latex math&amp;quot; or &amp;quot;latex math symbols,&amp;quot; for example.&lt;br /&gt;
&lt;br /&gt;
You will turn in the source for your exercise as well as the final pdf file.&lt;br /&gt;
&lt;br /&gt;
==Approximate Syllabus and Reading==&lt;br /&gt;
&lt;br /&gt;
* Chapter 2, Configuration Space (weeks 1-2)&lt;br /&gt;
* Chapter 3, Rigid-Body Motions (weeks 2-3)&lt;br /&gt;
* Chapter 4, Forward Kinematics (week 4); section 4.2 is optional&lt;br /&gt;
* Chapter 5, Velocity Kinematics and Statics (week 5)&lt;br /&gt;
* Chapter 6, Inverse Kinematics (week 6); focus on section 6.2&lt;br /&gt;
* Chapter 8, Dynamics of Open Chains (weeks 6-7); skip sections 8.4, 8.8, and 8.9&lt;br /&gt;
* Chapter 9, Trajectory Generation (week 8); focus on sections 9.1 and 9.4&lt;br /&gt;
* Chapter 11, Robot Control (week 9); focus on sections 11.1 through 11.4&lt;br /&gt;
* Chapter 13, Wheeled Mobile Robots (week 10); skip section 13.3&lt;br /&gt;
&lt;br /&gt;
==Assignments==&lt;br /&gt;
&lt;br /&gt;
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&amp;#039;t follow these instructions.&lt;br /&gt;
&lt;br /&gt;
If you ever think a problem is stated incorrectly, not enough information is given, or it is impossible to solve, don&amp;#039;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.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Instructions for uploading assignments to Canvas:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
0.  &amp;#039;&amp;#039;&amp;#039;Upload on time! Late submissions are not accepted.&amp;#039;&amp;#039;&amp;#039;  The cutoff time is 30 minutes before class the day the assignment is due.&lt;br /&gt;
&lt;br /&gt;
1.  Only upload one zip file or rar file for each assignment;&lt;br /&gt;
&lt;br /&gt;
2.  In your zip file or rar file, include all source codes in their original form, such as .cpp, .m, .py, .nb.&lt;br /&gt;
&lt;br /&gt;
3.  If there is a demo, combine the screen shots into one SEPARATE pdf file, OR, show the results in one SEPARATE .txt file (DON&amp;#039;T show them in your source code file format, e.g. .nb file), and include it in the zip file (or rar file).&lt;br /&gt;
&lt;br /&gt;
4.  Always include output of your code running on the exercises, particularly in case the grader has problems running your code.  Also, always create a script (for example, titled ex6-9 or something) that the grader can easily invoke for each exercise.  Don&amp;#039;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 &amp;quot;README&amp;quot; file in your solutions, for example).&lt;br /&gt;
&lt;br /&gt;
5.  Please name the upload file in the following format: LastName_FirstName.zip.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Assignment 1, due 30 minutes before class on Canvas, Wed Oct 10.&amp;#039;&amp;#039;&amp;#039; Exercises 2.1, 2.4, 2.9 for mechanisms (a) and (b) from Fig 2.18, 2.22, 2.29, and 3.1.&lt;br /&gt;
&lt;br /&gt;
==Detailed Syllabus==&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1UrBFai-1Z98Ry48bW50OMqxvvqZ3Jo8pHgZmljOgPpo/edit?usp=sharing &amp;#039;&amp;#039;&amp;#039;The course calendar&amp;#039;&amp;#039;&amp;#039;], including video lecture and reading assignments due before each class.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1jWd_POLlQYxQLv1Igv-eVmORdtEcLi0mU_rVLkNguYI/edit?usp=sharing &amp;#039;&amp;#039;&amp;#039;Click here for a graphical view of the class schedule, including student lectures.&amp;#039;&amp;#039;&amp;#039;]&lt;br /&gt;
&lt;br /&gt;
Homeworks are due at the beginning of class every Wednesday, unless otherwise noted.  You will watch the videos and do the reading in advance of class using the material, as noted in the syllabus below.  A typical weekly schedule will consist of:  &lt;br /&gt;
: M:  Video/reading comprehension quick quiz and help with homework.  &lt;br /&gt;
: W:  Video/reading comprehension quick quiz, homework solutions, plus &amp;#039;&amp;#039;&amp;#039;EITHER&amp;#039;&amp;#039;&amp;#039; student lecture &amp;#039;&amp;#039;&amp;#039;OR&amp;#039;&amp;#039;&amp;#039; quiz preparation.  &lt;br /&gt;
: F:  Video/reading comprehension quick quiz plus &amp;#039;&amp;#039;&amp;#039;EITHER&amp;#039;&amp;#039;&amp;#039; student lecture &amp;#039;&amp;#039;&amp;#039;OR&amp;#039;&amp;#039;&amp;#039; quiz.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (W 9/20)&lt;br /&gt;
: Welcome to the course and course website.  Structure of the course (HW due Wed, student-generated lectures and learning materials, in-class assignments, feedback on student lectures, occasional Friday quizzes).  Book, software, (lack of) D-H parameters, syllabus, V-REP simulator, office hours.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos: first 3 videos of Chapter 2, through Chapter 2.2&lt;br /&gt;
: Reading:  Chapters 2.1 and 2.2&lt;br /&gt;
: Software:  download github software with book, install V-REP and verify that you can use Scenes 1 and 2 (the UR5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW1, due 1:30 PM 9/27&amp;#039;&amp;#039;&amp;#039;:  Exercises 2.3, 2.9, 2.20, 2.29.  Also, create your own example system with closed loops, something not in the book, and solve for the degrees of freedom using Grubler&amp;#039;s formula.  Make it something that exists or occurs in common experience, not necessarily a robot.  Imagine using it to teach someone about Grubler&amp;#039;s formula.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (F 9/22)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Sample student lecture&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  2 videos on Chapter 2.3&lt;br /&gt;
: Reading:  Chapter 2.3&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (M 9/25)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Bring your laptop, demo V-REP UR5 scenes&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  2 videos, Chapter 2.4 and 2.5&lt;br /&gt;
: Reading:  Chapters 2.4 and 2.5&lt;br /&gt;
: Turn in HW1&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 4&amp;#039;&amp;#039;&amp;#039; (W 9/27)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Solutions to HW1; student examples of Grubler&amp;#039;s formula&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  first 3 videos of Chapter 3, through Chapter 3.2.1&lt;br /&gt;
: Reading:  through Chapter 3.2.1&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW2, due 1:30 PM 10/4&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
:: 1) Exercise 3.1, except the y_a axis points in the direction (1,0,0).&lt;br /&gt;
:: 2) Exercise 3.2, except p = (1,2,3).&lt;br /&gt;
:: 3) Exercise 3.5.&lt;br /&gt;
:: 4) Exercise 3.9.  &lt;br /&gt;
:: 5) In Figure 1.1(a) of the book is an image of a UR5 robot, with a frame at its base and a frame at its end-effector.  Eyeballing the end-effector frame, approximately write the rotation matrix that represents the end-effector frame orientation relative to the base frame.  Your rotation matrix should satisfy the properties of a rotation matrix (R^T R = I, det(R) = 1).  The x-axes are in red, the y-axes are in green, and the z-axes are in blue.&lt;br /&gt;
:: 6) Write a program that takes a set of exponential coordinates for rotation from the user as input.  It then prints out the following: (a) the corresponding unit rotation axis and the angle of rotation about that axis; (b) the so(3) 3x3 matrix representation of the exponential coordinates; (c) the 3x3 SO(3) rotation matrix corresponding to the exponential coordinates; (d) the inverse of the rotation matrix from (c); (e) the 3x3 so(3) matrix log of the matrix from (d); and (f) the corresponding exponential coordinates for the so(3) matrix (e).  Use the code from the book and write your program in Mathematica, MATLAB, or Python.  Turn in your code and the output of an example run using (0.5, 1, 0) as the input to part (a).&lt;br /&gt;
:: 7) Write a function that returns &amp;quot;true&amp;quot; if a given 3x3 matrix is with a distance epsilon of being a rotation matrix and &amp;quot;false&amp;quot; otherwise.  It is up to you to define the &amp;quot;distance&amp;quot; between a random 3x3 real matrix and members of SO(3). Test the function on two matrices, neither of which is exactly in SO(3), but one of which is close (so the result is &amp;quot;true&amp;quot;) and one of which is not.  Turn in your code and provide the test run output, which also outputs the distance to SO(3) that you defined.&lt;br /&gt;
:: 8) Following up on the previous exercise:  describe (don&amp;#039;t implement, unless you want to) a function that takes a &amp;quot;close by&amp;quot; 3x3 matrix and returns the closest rotation matrix.  How would you use the fact that R^T R - I must be equal to zero to modify the initial 3x3 matrix to make it a &amp;quot;close by&amp;quot; rotation matrix?  Would the function be iterative?  You are free to do some research online, but as always, &amp;#039;&amp;#039;&amp;#039;cite your sources&amp;#039;&amp;#039;&amp;#039;!&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (F 9/29)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Lecture&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-6 of Chapter 3, through Chapter 3.2.3&lt;br /&gt;
: Reading:  through Chapter 3.2.3&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (M 10/2)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 7-9 of Chapter 3, Chapters 3.3.1 and 3.3.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (W 10/4)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 10-11, Chapter 3.3.3 and 3.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW3, due 1:30 PM 10/11&amp;#039;&amp;#039;&amp;#039;: Exercises 3.16, 3.17, 3.27, 3.31, and 3.48 (as always, for programming assignments, turn in your code and sample output demonstrating it).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (F 10/6)&lt;br /&gt;
: EXAM 1&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 4, through Chapter 4.1.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (M 10/9)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 2-3 of Chapter 4, Chapter 4.1.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (W 10/11)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 1 (Pawar, Subramanian, Goyal, Cai)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 5, up to (not including) Chapter 5.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW4, due 1:30 PM 10/18&amp;#039;&amp;#039;&amp;#039;: Exercises 4.2, 4.8, 4.14, and 5.7(a).  Question 5:  In Chapter 3.5 (Summary), there is a list of analogies between rotations and rigid-body motions.  Read it carefully and report anything that is either unclear or incorrect.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (F 10/13)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 2 (Wang, Wu, Xia, Zheng)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 2 of Chapter 5, Chapter 5.1.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (M 10/16)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 3 and 4 of Chapter 5, Chapter 5.1.2 through 5.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (W 10/18)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 3 (Wiznitzers, Hutson, Spies)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 5 and 6 of Chapter 5, Chapter 5.3 and 5.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW5, due 1:30 PM 10/25&amp;#039;&amp;#039;&amp;#039;: Exercises 5.2, 5.3, 5.23, 5.25, 6.7, and 6.8.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (F 10/20)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 4 (Don, Chien, Husain, Sulaiman)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1 and 2 of Chapter 6,&lt;br /&gt;
: Reading:  intro of Chapter 6 and Chapter 6.2&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (M 10/23)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 3 of Chapter 6&lt;br /&gt;
: Reading:  Chapter 6.2&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (W 10/25)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 8, through 8.1.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: [[Media:ME449-HW6-2017.pdf|HW6, due 1:30 PM 11/1]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17 &amp;#039;&amp;#039;&amp;#039; (F 10/27)&lt;br /&gt;
: EXAM 2&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 2 of Chapter 8, through 8.1.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (M 10/30)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 3 of Chapter 8, through 8.1.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (W 11/1)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 5 (Zhang, Zhu, Meng, Luo)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-5 of Chapter 8, through 8.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW7, due 1:30 PM 11/8&amp;#039;&amp;#039;&amp;#039;: Exercises 8.2, 8.3, 8.11 (you should build on the MR code), and 8.15(a).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (F 11/3)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 6 (Lyu, Yi, Wang, Swissler)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 6 of Chapter 8, up to (not including) 8.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 21&amp;#039;&amp;#039;&amp;#039; (M 11/6)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 7 of Chapter 8, Chapter 8.5 (skip 8.4)&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 22&amp;#039;&amp;#039;&amp;#039; (W 11/8)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 7 (Warren, Kilaru, Wang, Mandana)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-2 of Chapter 9, through Chapter 9.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW8, due 1:30 PM 11/15&amp;#039;&amp;#039;&amp;#039;: Exercises 8.15(b) (use your previous results from 8.15(a), and turn in any code you write as well as a V-REP movie of your simulation), 8.14 (turn in your testable code and evidence your code returns similar results), 9.14, and 9.26.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 23&amp;#039;&amp;#039;&amp;#039; (F 11/10)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 8 (Wang, Dai, Ma, Peng)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 4 of Chapter 9, Chapter 9.4 - 9.4.1 (skip 9.3)&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 24&amp;#039;&amp;#039;&amp;#039; (M 11/13)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 5-6 of Chapter 9, up to (not including) Chapter 9.5&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 25&amp;#039;&amp;#039;&amp;#039; (W 11/15)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-3 of Chapter 11, up to (not including) Chapter 11.2.2.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Final project.  This project is part of the assignment grade, cannot be dropped, and has the weight of 2 normal assignments.&amp;#039;&amp;#039;&amp;#039;  The assignment is split into two parts:  a relatively simple Part I, due after 1 week, followed by the programming-heavy Part II, due during finals week.  You will receive a single grade for the entire assignment, after Part II has been submitted.&lt;br /&gt;
:: &amp;#039;&amp;#039;&amp;#039;Part I, due 1:30 PM 11/22&amp;#039;&amp;#039;&amp;#039;:  Exercise 13.33 (a) and (b).  Turn in your solutions (handwritten or typed) and any code you wrote.&lt;br /&gt;
:: &amp;#039;&amp;#039;&amp;#039;Part II, due 11:59 PM 12/6&amp;#039;&amp;#039;&amp;#039;:  Exercise 13.33 (c), (d), and (e).  Turn in 1) any solutions (handwritten or typed), 2) your code, 3) any plots you created with your code, 4) your short V-REP videos (made using the youbot csv animation scene), and 5) the .csv files corresponding to the videos.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 26&amp;#039;&amp;#039;&amp;#039; (F 11/17)&lt;br /&gt;
: EXAM 3&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-5 of Chapter 11, Chapter 11.2.2.1 and 11.2.2.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 27&amp;#039;&amp;#039;&amp;#039; (M 11/20)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 6-8 of Chapter 11, Chapter 11.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Turn in Part I of your final project on Canvas.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 28&amp;#039;&amp;#039;&amp;#039; (W 11/22)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 9 (Abiney, Aubrun, Anthony, Alston)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-3 of Chapter 13, through Chapter 13.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 29&amp;#039;&amp;#039;&amp;#039; (M 11/27)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Reading:  odometry and mobile manipulation, Chapter 13.4 and 13.5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 30&amp;#039;&amp;#039;&amp;#039; (W 11/29)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 10 (Miller, Berrueta, Davis, Tobia)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Final assignment work&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 31&amp;#039;&amp;#039;&amp;#039; (F 12/1)&lt;br /&gt;
: Student lecture 11 (Fernandez, Lutzen, SaLoutos, Iwankiw)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Your final project is due on Canvas by 11:59 PM on Wednesday Dec 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
==Archive==&lt;br /&gt;
&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive 2012)|ME 449 Spring 2012]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Spring 2014)|ME 449 Spring 2014]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2014)|ME 449 Fall 2014]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2015)|ME 449 Fall 2015]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2016)|ME 449 Fall 2016]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2017)|ME 449 Fall 2017]]&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=25307</id>
		<title>ME 449 Robotic Manipulation</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=25307"/>
		<updated>2018-10-03T20:38:22Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Assignments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Fall Quarter 2018&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* Instructor:  Prof. Kevin Lynch&lt;br /&gt;
* Meeting:  2:00-2:50, MWF, Frances Searle Building 1-441&lt;br /&gt;
* TAs:  Huan Weng, Tito Fernandez, and Zack Woodruff&lt;br /&gt;
* Office hours:  Tech B222 (TBA)&lt;br /&gt;
* course website:  [http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation]&lt;br /&gt;
* book website:  [http://modernrobotics.org http://modernrobotics.org]&lt;br /&gt;
&lt;br /&gt;
==Course Summary==&lt;br /&gt;
&lt;br /&gt;
Mechanics of robotic manipulation, computer representations and algorithms for manipulation planning, and applications to industrial automation, parts feeding, grasping, fixturing, and assembly.&lt;br /&gt;
&lt;br /&gt;
Monday Oct 1:  Tito Fernandez.  Wednesday Oct 3:  Huan Weng.  Friday Oct 5:  Zack Woodruff.&lt;br /&gt;
&lt;br /&gt;
==Grading==&lt;br /&gt;
* 50% quizzes (quizzes will be open book, open notes, any cheat sheets you would like, but no electronics)&lt;br /&gt;
* 20% assignments (lowest grade will be dropped)&lt;br /&gt;
* 15% final project (due Wed Dec 12, during finals week)&lt;br /&gt;
* 10% practice exercise for other students&lt;br /&gt;
* 5% engagement:  answering questions in class, participation in in-class exercises, and helping other students in class&lt;br /&gt;
&lt;br /&gt;
==Course Text and Software==&lt;br /&gt;
&lt;br /&gt;
This course uses the textbook &amp;#039;&amp;#039;Modern Robotics:  Mechanics, Planning, and Control&amp;#039;&amp;#039;, Kevin M. Lynch and Frank C. Park, Cambridge University Press 2017.&lt;br /&gt;
&lt;br /&gt;
[[Coursera_Resources#Things_you_should_complete_before_taking_any_course|Get the book, install and test the Modern Robotics code library, and install and test the V-REP simulator.]]  You will program in Python, Mathematica, or MATLAB in this course.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Modern Robotics Linear Algebra Review|Here is a linear algebra refresher appendix to accompany the book.]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
==Video Lectures and the Flipped Classroom==&lt;br /&gt;
&lt;br /&gt;
This course will take advantage of video lectures and lecture comprehension quizzes on Coursera.  (You can also see the video lectures, but not the lecture comprehension quizzes, outside Coursera at the video browser [http://modernrobotics.northwestern.edu &amp;#039;&amp;#039;&amp;#039;http://modernrobotics.northwestern.edu&amp;#039;&amp;#039;&amp;#039;] or using [[Modern_Robotics_Videos|&amp;#039;&amp;#039;&amp;#039;direct links to the videos on YouTube&amp;#039;&amp;#039;&amp;#039;]].)&lt;br /&gt;
&lt;br /&gt;
You should sign up to audit the following courses on Coursera in advance of our study of them in class.  Don&amp;#039;t pay; you should start by choosing the 7-day free trial, but then click &amp;quot;audit the course.&amp;quot;  Auditing the course gives you access to everything except graded assignments and peer-reviewed projects.&lt;br /&gt;
&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course1 Course 1:  Foundations of Robot Motion (Chapters 2 and 3)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course2 Course 2:  Robot Kinematics (Chapters 4, 5, 6, and 7)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course3 Course 3:  Robot Dynamics (Chapters 8 and 9)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course4 Course 4:  Robot Motion Planning and Control (Chapters 10 and 11)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course5 Course 5:  Robot Manipulation and Wheeled Mobile Robots (Chapters 12 and 13)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course6 Course 6:  Capstone Project, Mobile Manipulation]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Coursera Resources|This page collects together useful supplemental material to the Coursera courses]]&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
The general flow of the class will be the following:  &lt;br /&gt;
&lt;br /&gt;
* Before class, watch the videos, do the lecture comprehension quizzes associated with each video, do the associated reading, and participate in any &amp;quot;discussion prompts&amp;quot; on Coursera.  You should plan to bring any questions or confusion to class.  In general, I recommend that you first watch the videos to get a quick understanding of the material of the chapter, then follow up by reading the appropriate sections of the book.  The videos are short and dense, so don&amp;#039;t expect to get by only watching the videos.  You will need to read the book, then do the exercises, to gain mastery of the material.  &lt;br /&gt;
* In class, I will briefly review the lecture comprehension quizzes and the material that was covered, get a little discussion going and take any questions, and then ask you to work on a practice exercise either individually or in small groups.  If time remains, you may work on homework together.  I will be available to help.&lt;br /&gt;
* On days when a homework is turned in, I will leave time for any questions about it.  On days before a quiz, I will spend as much time reviewing the material covered by the quiz as you would like.&lt;br /&gt;
&lt;br /&gt;
==Student-Created Exercises==&lt;br /&gt;
&lt;br /&gt;
All students will be responsible for creating a practice exercise, consisting of the exercise and the solution.  A good exercise should test an important concept in the context of a real robotics application (e.g., motion planning for a quadrotor, robot localization, computer vision, grasping, etc.), require the learner to understand and apply equations in the book or use the book&amp;#039;s software, and require a bit of thought (i.e., not just &amp;quot;plug and chug&amp;quot; questions).  For many exercises, a good figure or two is helpful.  You could use a figure of a real robot and add your own annotations to it (e.g., frames or objects in its environment), or you could hand-draw something, or you could use V-REP or other software to help create the figure.  You should not confine your question to an application discussed in the textbook.  Make your exercise interesting and motivating!  Exercises that require synthesizing two or more concepts or equations are more interesting and useful.&lt;br /&gt;
&lt;br /&gt;
You will create your exercise using [https://en.wikipedia.org/wiki/LaTeX LaTeX] (pronounced &amp;quot;lay teck&amp;quot; or &amp;quot;lah teck&amp;quot;), the standard for scientific document preparation.  [https://www.overleaf.com/ Overleaf] is a free online implementation of LaTeX.  To get started on your exercise,&lt;br /&gt;
&lt;br /&gt;
# Download [[Media:ME449-exercise.zip|&amp;#039;&amp;#039;&amp;#039;this .zip file&amp;#039;&amp;#039;&amp;#039;]] and uncompress it.  There are four files:  main.tex, prelims.tex, screw.pdf, and happy-face.jpg.&lt;br /&gt;
# Create an account on [https://www.overleaf.com/ Overleaf].&lt;br /&gt;
# Create a new (blank) project on Overleaf called &amp;quot;exercise.&amp;quot;&lt;br /&gt;
# Upload the four files main.tex, prelims.tex, screw.pdf, and happy-face.jpg to this project.  (You may get a warning that your default main.tex file is being overwritten; don&amp;#039;t worry about it.)&lt;br /&gt;
# Click on main.tex to see your main LaTeX document.&lt;br /&gt;
# Press the &amp;quot;Recompile&amp;quot; button to see the pdf document that is compiled from the four files.  You can download the pdf file, or all the &amp;quot;source&amp;quot; files, by clicking on &amp;quot;Menu&amp;quot; and choosing which to download.  &amp;#039;&amp;#039;&amp;#039;[[Media:ME449-exercise-output.pdf|This is the .pdf file you should have created.]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
main.tex is the main file of the project, and the only one that you will edit, so you should understand what is going on in that file.  prelims.tex tells LaTeX what packages to use and defines some macros, e.g., \twist creates &amp;lt;math&amp;gt;\mathcal{V}&amp;lt;/math&amp;gt; and \wrench creates &amp;lt;math&amp;gt;\mathcal{F}&amp;lt;/math&amp;gt;.  screw.pdf and happy-face.jpg are image files that get included in the document.  You will create different image files depending on your exercise.&lt;br /&gt;
&lt;br /&gt;
To learn more about typesetting in LaTeX, google is your friend!  Try googling &amp;quot;latex math&amp;quot; or &amp;quot;latex math symbols,&amp;quot; for example.&lt;br /&gt;
&lt;br /&gt;
You will turn in the source for your exercise as well as the final pdf file.&lt;br /&gt;
&lt;br /&gt;
==Approximate Syllabus and Reading==&lt;br /&gt;
&lt;br /&gt;
* Chapter 2, Configuration Space (weeks 1-2)&lt;br /&gt;
* Chapter 3, Rigid-Body Motions (weeks 2-3)&lt;br /&gt;
* Chapter 4, Forward Kinematics (week 4); section 4.2 is optional&lt;br /&gt;
* Chapter 5, Velocity Kinematics and Statics (week 5)&lt;br /&gt;
* Chapter 6, Inverse Kinematics (week 6); focus on section 6.2&lt;br /&gt;
* Chapter 8, Dynamics of Open Chains (weeks 6-7); skip sections 8.4, 8.8, and 8.9&lt;br /&gt;
* Chapter 9, Trajectory Generation (week 8); focus on sections 9.1 and 9.4&lt;br /&gt;
* Chapter 11, Robot Control (week 9); focus on sections 11.1 through 11.4&lt;br /&gt;
* Chapter 13, Wheeled Mobile Robots (week 10); skip section 13.3&lt;br /&gt;
&lt;br /&gt;
==Assignments==&lt;br /&gt;
&lt;br /&gt;
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&amp;#039;t follow these instructions.&lt;br /&gt;
&lt;br /&gt;
If you ever think a problem is stated incorrectly, not enough information is given, or it is impossible to solve, don&amp;#039;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.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Instructions for uploading assignments to Canvas:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
0.  &amp;#039;&amp;#039;&amp;#039;Upload on time! Late submissions are not accepted.&amp;#039;&amp;#039;&amp;#039;  The cutoff time is 30 minutes before class the day the assignment is due.&lt;br /&gt;
&lt;br /&gt;
1.  Only upload one zip file or rar file for each assignment;&lt;br /&gt;
&lt;br /&gt;
2.  In your zip file or rar file, include all source codes in their original form, such as .cpp, .m, .py, .nb.&lt;br /&gt;
&lt;br /&gt;
3.  If there is a demo, combine the screen shots into one SEPARATE pdf file, OR, show the results in one SEPARATE .txt file (DON&amp;#039;T show them in your source code file format, e.g. .nb file), and include it in the zip file (or rar file).&lt;br /&gt;
&lt;br /&gt;
4.  Always include output of your code running on the exercises, particularly in case the grader has problems running your code.  Also, always create a script (for example, titled ex6-9 or something) that the grader can easily invoke for each exercise.  Don&amp;#039;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 &amp;quot;README&amp;quot; file in your solutions, for example).&lt;br /&gt;
&lt;br /&gt;
5.  Please name the upload file in the following format: LastName_FirstName.zip.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Assignment 1, due 30 minutes before class on Canvas, Wed Oct 10.&amp;#039;&amp;#039;&amp;#039; Exercises 2.1, 2.4, 2.9 for mechanisms (a) and (b) from Fig 2.18, 2.22, 2.29, and 3.1.&lt;br /&gt;
&lt;br /&gt;
==Detailed Syllabus==&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1UrBFai-1Z98Ry48bW50OMqxvvqZ3Jo8pHgZmljOgPpo/edit?usp=sharing &amp;#039;&amp;#039;&amp;#039;The course calendar&amp;#039;&amp;#039;&amp;#039;], including video lecture and reading assignments due before each class.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1jWd_POLlQYxQLv1Igv-eVmORdtEcLi0mU_rVLkNguYI/edit?usp=sharing &amp;#039;&amp;#039;&amp;#039;Click here for a graphical view of the class schedule, including student lectures.&amp;#039;&amp;#039;&amp;#039;]&lt;br /&gt;
&lt;br /&gt;
Homeworks are due at the beginning of class every Wednesday, unless otherwise noted.  You will watch the videos and do the reading in advance of class using the material, as noted in the syllabus below.  A typical weekly schedule will consist of:  &lt;br /&gt;
: M:  Video/reading comprehension quick quiz and help with homework.  &lt;br /&gt;
: W:  Video/reading comprehension quick quiz, homework solutions, plus &amp;#039;&amp;#039;&amp;#039;EITHER&amp;#039;&amp;#039;&amp;#039; student lecture &amp;#039;&amp;#039;&amp;#039;OR&amp;#039;&amp;#039;&amp;#039; quiz preparation.  &lt;br /&gt;
: F:  Video/reading comprehension quick quiz plus &amp;#039;&amp;#039;&amp;#039;EITHER&amp;#039;&amp;#039;&amp;#039; student lecture &amp;#039;&amp;#039;&amp;#039;OR&amp;#039;&amp;#039;&amp;#039; quiz.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (W 9/20)&lt;br /&gt;
: Welcome to the course and course website.  Structure of the course (HW due Wed, student-generated lectures and learning materials, in-class assignments, feedback on student lectures, occasional Friday quizzes).  Book, software, (lack of) D-H parameters, syllabus, V-REP simulator, office hours.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos: first 3 videos of Chapter 2, through Chapter 2.2&lt;br /&gt;
: Reading:  Chapters 2.1 and 2.2&lt;br /&gt;
: Software:  download github software with book, install V-REP and verify that you can use Scenes 1 and 2 (the UR5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW1, due 1:30 PM 9/27&amp;#039;&amp;#039;&amp;#039;:  Exercises 2.3, 2.9, 2.20, 2.29.  Also, create your own example system with closed loops, something not in the book, and solve for the degrees of freedom using Grubler&amp;#039;s formula.  Make it something that exists or occurs in common experience, not necessarily a robot.  Imagine using it to teach someone about Grubler&amp;#039;s formula.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (F 9/22)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Sample student lecture&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  2 videos on Chapter 2.3&lt;br /&gt;
: Reading:  Chapter 2.3&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (M 9/25)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Bring your laptop, demo V-REP UR5 scenes&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  2 videos, Chapter 2.4 and 2.5&lt;br /&gt;
: Reading:  Chapters 2.4 and 2.5&lt;br /&gt;
: Turn in HW1&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 4&amp;#039;&amp;#039;&amp;#039; (W 9/27)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Solutions to HW1; student examples of Grubler&amp;#039;s formula&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  first 3 videos of Chapter 3, through Chapter 3.2.1&lt;br /&gt;
: Reading:  through Chapter 3.2.1&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW2, due 1:30 PM 10/4&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
:: 1) Exercise 3.1, except the y_a axis points in the direction (1,0,0).&lt;br /&gt;
:: 2) Exercise 3.2, except p = (1,2,3).&lt;br /&gt;
:: 3) Exercise 3.5.&lt;br /&gt;
:: 4) Exercise 3.9.  &lt;br /&gt;
:: 5) In Figure 1.1(a) of the book is an image of a UR5 robot, with a frame at its base and a frame at its end-effector.  Eyeballing the end-effector frame, approximately write the rotation matrix that represents the end-effector frame orientation relative to the base frame.  Your rotation matrix should satisfy the properties of a rotation matrix (R^T R = I, det(R) = 1).  The x-axes are in red, the y-axes are in green, and the z-axes are in blue.&lt;br /&gt;
:: 6) Write a program that takes a set of exponential coordinates for rotation from the user as input.  It then prints out the following: (a) the corresponding unit rotation axis and the angle of rotation about that axis; (b) the so(3) 3x3 matrix representation of the exponential coordinates; (c) the 3x3 SO(3) rotation matrix corresponding to the exponential coordinates; (d) the inverse of the rotation matrix from (c); (e) the 3x3 so(3) matrix log of the matrix from (d); and (f) the corresponding exponential coordinates for the so(3) matrix (e).  Use the code from the book and write your program in Mathematica, MATLAB, or Python.  Turn in your code and the output of an example run using (0.5, 1, 0) as the input to part (a).&lt;br /&gt;
:: 7) Write a function that returns &amp;quot;true&amp;quot; if a given 3x3 matrix is with a distance epsilon of being a rotation matrix and &amp;quot;false&amp;quot; otherwise.  It is up to you to define the &amp;quot;distance&amp;quot; between a random 3x3 real matrix and members of SO(3). Test the function on two matrices, neither of which is exactly in SO(3), but one of which is close (so the result is &amp;quot;true&amp;quot;) and one of which is not.  Turn in your code and provide the test run output, which also outputs the distance to SO(3) that you defined.&lt;br /&gt;
:: 8) Following up on the previous exercise:  describe (don&amp;#039;t implement, unless you want to) a function that takes a &amp;quot;close by&amp;quot; 3x3 matrix and returns the closest rotation matrix.  How would you use the fact that R^T R - I must be equal to zero to modify the initial 3x3 matrix to make it a &amp;quot;close by&amp;quot; rotation matrix?  Would the function be iterative?  You are free to do some research online, but as always, &amp;#039;&amp;#039;&amp;#039;cite your sources&amp;#039;&amp;#039;&amp;#039;!&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (F 9/29)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Lecture&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-6 of Chapter 3, through Chapter 3.2.3&lt;br /&gt;
: Reading:  through Chapter 3.2.3&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (M 10/2)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 7-9 of Chapter 3, Chapters 3.3.1 and 3.3.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (W 10/4)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 10-11, Chapter 3.3.3 and 3.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW3, due 1:30 PM 10/11&amp;#039;&amp;#039;&amp;#039;: Exercises 3.16, 3.17, 3.27, 3.31, and 3.48 (as always, for programming assignments, turn in your code and sample output demonstrating it).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (F 10/6)&lt;br /&gt;
: EXAM 1&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 4, through Chapter 4.1.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (M 10/9)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 2-3 of Chapter 4, Chapter 4.1.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (W 10/11)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 1 (Pawar, Subramanian, Goyal, Cai)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 5, up to (not including) Chapter 5.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW4, due 1:30 PM 10/18&amp;#039;&amp;#039;&amp;#039;: Exercises 4.2, 4.8, 4.14, and 5.7(a).  Question 5:  In Chapter 3.5 (Summary), there is a list of analogies between rotations and rigid-body motions.  Read it carefully and report anything that is either unclear or incorrect.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (F 10/13)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 2 (Wang, Wu, Xia, Zheng)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 2 of Chapter 5, Chapter 5.1.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (M 10/16)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 3 and 4 of Chapter 5, Chapter 5.1.2 through 5.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (W 10/18)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 3 (Wiznitzers, Hutson, Spies)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 5 and 6 of Chapter 5, Chapter 5.3 and 5.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW5, due 1:30 PM 10/25&amp;#039;&amp;#039;&amp;#039;: Exercises 5.2, 5.3, 5.23, 5.25, 6.7, and 6.8.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (F 10/20)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 4 (Don, Chien, Husain, Sulaiman)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1 and 2 of Chapter 6,&lt;br /&gt;
: Reading:  intro of Chapter 6 and Chapter 6.2&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (M 10/23)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 3 of Chapter 6&lt;br /&gt;
: Reading:  Chapter 6.2&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (W 10/25)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 8, through 8.1.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: [[Media:ME449-HW6-2017.pdf|HW6, due 1:30 PM 11/1]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17 &amp;#039;&amp;#039;&amp;#039; (F 10/27)&lt;br /&gt;
: EXAM 2&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 2 of Chapter 8, through 8.1.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (M 10/30)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 3 of Chapter 8, through 8.1.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (W 11/1)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 5 (Zhang, Zhu, Meng, Luo)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-5 of Chapter 8, through 8.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW7, due 1:30 PM 11/8&amp;#039;&amp;#039;&amp;#039;: Exercises 8.2, 8.3, 8.11 (you should build on the MR code), and 8.15(a).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (F 11/3)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 6 (Lyu, Yi, Wang, Swissler)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 6 of Chapter 8, up to (not including) 8.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 21&amp;#039;&amp;#039;&amp;#039; (M 11/6)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 7 of Chapter 8, Chapter 8.5 (skip 8.4)&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 22&amp;#039;&amp;#039;&amp;#039; (W 11/8)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 7 (Warren, Kilaru, Wang, Mandana)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-2 of Chapter 9, through Chapter 9.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW8, due 1:30 PM 11/15&amp;#039;&amp;#039;&amp;#039;: Exercises 8.15(b) (use your previous results from 8.15(a), and turn in any code you write as well as a V-REP movie of your simulation), 8.14 (turn in your testable code and evidence your code returns similar results), 9.14, and 9.26.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 23&amp;#039;&amp;#039;&amp;#039; (F 11/10)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 8 (Wang, Dai, Ma, Peng)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 4 of Chapter 9, Chapter 9.4 - 9.4.1 (skip 9.3)&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 24&amp;#039;&amp;#039;&amp;#039; (M 11/13)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 5-6 of Chapter 9, up to (not including) Chapter 9.5&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 25&amp;#039;&amp;#039;&amp;#039; (W 11/15)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-3 of Chapter 11, up to (not including) Chapter 11.2.2.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Final project.  This project is part of the assignment grade, cannot be dropped, and has the weight of 2 normal assignments.&amp;#039;&amp;#039;&amp;#039;  The assignment is split into two parts:  a relatively simple Part I, due after 1 week, followed by the programming-heavy Part II, due during finals week.  You will receive a single grade for the entire assignment, after Part II has been submitted.&lt;br /&gt;
:: &amp;#039;&amp;#039;&amp;#039;Part I, due 1:30 PM 11/22&amp;#039;&amp;#039;&amp;#039;:  Exercise 13.33 (a) and (b).  Turn in your solutions (handwritten or typed) and any code you wrote.&lt;br /&gt;
:: &amp;#039;&amp;#039;&amp;#039;Part II, due 11:59 PM 12/6&amp;#039;&amp;#039;&amp;#039;:  Exercise 13.33 (c), (d), and (e).  Turn in 1) any solutions (handwritten or typed), 2) your code, 3) any plots you created with your code, 4) your short V-REP videos (made using the youbot csv animation scene), and 5) the .csv files corresponding to the videos.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 26&amp;#039;&amp;#039;&amp;#039; (F 11/17)&lt;br /&gt;
: EXAM 3&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-5 of Chapter 11, Chapter 11.2.2.1 and 11.2.2.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 27&amp;#039;&amp;#039;&amp;#039; (M 11/20)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 6-8 of Chapter 11, Chapter 11.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Turn in Part I of your final project on Canvas.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 28&amp;#039;&amp;#039;&amp;#039; (W 11/22)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 9 (Abiney, Aubrun, Anthony, Alston)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-3 of Chapter 13, through Chapter 13.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 29&amp;#039;&amp;#039;&amp;#039; (M 11/27)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Reading:  odometry and mobile manipulation, Chapter 13.4 and 13.5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 30&amp;#039;&amp;#039;&amp;#039; (W 11/29)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 10 (Miller, Berrueta, Davis, Tobia)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Final assignment work&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 31&amp;#039;&amp;#039;&amp;#039; (F 12/1)&lt;br /&gt;
: Student lecture 11 (Fernandez, Lutzen, SaLoutos, Iwankiw)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Your final project is due on Canvas by 11:59 PM on Wednesday Dec 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
==Archive==&lt;br /&gt;
&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive 2012)|ME 449 Spring 2012]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Spring 2014)|ME 449 Spring 2014]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2014)|ME 449 Fall 2014]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2015)|ME 449 Fall 2015]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2016)|ME 449 Fall 2016]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2017)|ME 449 Fall 2017]]&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=25306</id>
		<title>ME 449 Robotic Manipulation</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=25306"/>
		<updated>2018-10-03T20:37:30Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Assignments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Fall Quarter 2018&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* Instructor:  Prof. Kevin Lynch&lt;br /&gt;
* Meeting:  2:00-2:50, MWF, Frances Searle Building 1-441&lt;br /&gt;
* TAs:  Huan Weng, Tito Fernandez, and Zack Woodruff&lt;br /&gt;
* Office hours:  Tech B222 (TBA)&lt;br /&gt;
* course website:  [http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation]&lt;br /&gt;
* book website:  [http://modernrobotics.org http://modernrobotics.org]&lt;br /&gt;
&lt;br /&gt;
==Course Summary==&lt;br /&gt;
&lt;br /&gt;
Mechanics of robotic manipulation, computer representations and algorithms for manipulation planning, and applications to industrial automation, parts feeding, grasping, fixturing, and assembly.&lt;br /&gt;
&lt;br /&gt;
Monday Oct 1:  Tito Fernandez.  Wednesday Oct 3:  Huan Weng.  Friday Oct 5:  Zack Woodruff.&lt;br /&gt;
&lt;br /&gt;
==Grading==&lt;br /&gt;
* 50% quizzes (quizzes will be open book, open notes, any cheat sheets you would like, but no electronics)&lt;br /&gt;
* 20% assignments (lowest grade will be dropped)&lt;br /&gt;
* 15% final project (due Wed Dec 12, during finals week)&lt;br /&gt;
* 10% practice exercise for other students&lt;br /&gt;
* 5% engagement:  answering questions in class, participation in in-class exercises, and helping other students in class&lt;br /&gt;
&lt;br /&gt;
==Course Text and Software==&lt;br /&gt;
&lt;br /&gt;
This course uses the textbook &amp;#039;&amp;#039;Modern Robotics:  Mechanics, Planning, and Control&amp;#039;&amp;#039;, Kevin M. Lynch and Frank C. Park, Cambridge University Press 2017.&lt;br /&gt;
&lt;br /&gt;
[[Coursera_Resources#Things_you_should_complete_before_taking_any_course|Get the book, install and test the Modern Robotics code library, and install and test the V-REP simulator.]]  You will program in Python, Mathematica, or MATLAB in this course.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Modern Robotics Linear Algebra Review|Here is a linear algebra refresher appendix to accompany the book.]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
==Video Lectures and the Flipped Classroom==&lt;br /&gt;
&lt;br /&gt;
This course will take advantage of video lectures and lecture comprehension quizzes on Coursera.  (You can also see the video lectures, but not the lecture comprehension quizzes, outside Coursera at the video browser [http://modernrobotics.northwestern.edu &amp;#039;&amp;#039;&amp;#039;http://modernrobotics.northwestern.edu&amp;#039;&amp;#039;&amp;#039;] or using [[Modern_Robotics_Videos|&amp;#039;&amp;#039;&amp;#039;direct links to the videos on YouTube&amp;#039;&amp;#039;&amp;#039;]].)&lt;br /&gt;
&lt;br /&gt;
You should sign up to audit the following courses on Coursera in advance of our study of them in class.  Don&amp;#039;t pay; you should start by choosing the 7-day free trial, but then click &amp;quot;audit the course.&amp;quot;  Auditing the course gives you access to everything except graded assignments and peer-reviewed projects.&lt;br /&gt;
&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course1 Course 1:  Foundations of Robot Motion (Chapters 2 and 3)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course2 Course 2:  Robot Kinematics (Chapters 4, 5, 6, and 7)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course3 Course 3:  Robot Dynamics (Chapters 8 and 9)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course4 Course 4:  Robot Motion Planning and Control (Chapters 10 and 11)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course5 Course 5:  Robot Manipulation and Wheeled Mobile Robots (Chapters 12 and 13)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course6 Course 6:  Capstone Project, Mobile Manipulation]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Coursera Resources|This page collects together useful supplemental material to the Coursera courses]]&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
The general flow of the class will be the following:  &lt;br /&gt;
&lt;br /&gt;
* Before class, watch the videos, do the lecture comprehension quizzes associated with each video, do the associated reading, and participate in any &amp;quot;discussion prompts&amp;quot; on Coursera.  You should plan to bring any questions or confusion to class.  In general, I recommend that you first watch the videos to get a quick understanding of the material of the chapter, then follow up by reading the appropriate sections of the book.  The videos are short and dense, so don&amp;#039;t expect to get by only watching the videos.  You will need to read the book, then do the exercises, to gain mastery of the material.  &lt;br /&gt;
* In class, I will briefly review the lecture comprehension quizzes and the material that was covered, get a little discussion going and take any questions, and then ask you to work on a practice exercise either individually or in small groups.  If time remains, you may work on homework together.  I will be available to help.&lt;br /&gt;
* On days when a homework is turned in, I will leave time for any questions about it.  On days before a quiz, I will spend as much time reviewing the material covered by the quiz as you would like.&lt;br /&gt;
&lt;br /&gt;
==Student-Created Exercises==&lt;br /&gt;
&lt;br /&gt;
All students will be responsible for creating a practice exercise, consisting of the exercise and the solution.  A good exercise should test an important concept in the context of a real robotics application (e.g., motion planning for a quadrotor, robot localization, computer vision, grasping, etc.), require the learner to understand and apply equations in the book or use the book&amp;#039;s software, and require a bit of thought (i.e., not just &amp;quot;plug and chug&amp;quot; questions).  For many exercises, a good figure or two is helpful.  You could use a figure of a real robot and add your own annotations to it (e.g., frames or objects in its environment), or you could hand-draw something, or you could use V-REP or other software to help create the figure.  You should not confine your question to an application discussed in the textbook.  Make your exercise interesting and motivating!  Exercises that require synthesizing two or more concepts or equations are more interesting and useful.&lt;br /&gt;
&lt;br /&gt;
You will create your exercise using [https://en.wikipedia.org/wiki/LaTeX LaTeX] (pronounced &amp;quot;lay teck&amp;quot; or &amp;quot;lah teck&amp;quot;), the standard for scientific document preparation.  [https://www.overleaf.com/ Overleaf] is a free online implementation of LaTeX.  To get started on your exercise,&lt;br /&gt;
&lt;br /&gt;
# Download [[Media:ME449-exercise.zip|&amp;#039;&amp;#039;&amp;#039;this .zip file&amp;#039;&amp;#039;&amp;#039;]] and uncompress it.  There are four files:  main.tex, prelims.tex, screw.pdf, and happy-face.jpg.&lt;br /&gt;
# Create an account on [https://www.overleaf.com/ Overleaf].&lt;br /&gt;
# Create a new (blank) project on Overleaf called &amp;quot;exercise.&amp;quot;&lt;br /&gt;
# Upload the four files main.tex, prelims.tex, screw.pdf, and happy-face.jpg to this project.  (You may get a warning that your default main.tex file is being overwritten; don&amp;#039;t worry about it.)&lt;br /&gt;
# Click on main.tex to see your main LaTeX document.&lt;br /&gt;
# Press the &amp;quot;Recompile&amp;quot; button to see the pdf document that is compiled from the four files.  You can download the pdf file, or all the &amp;quot;source&amp;quot; files, by clicking on &amp;quot;Menu&amp;quot; and choosing which to download.  &amp;#039;&amp;#039;&amp;#039;[[Media:ME449-exercise-output.pdf|This is the .pdf file you should have created.]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
main.tex is the main file of the project, and the only one that you will edit, so you should understand what is going on in that file.  prelims.tex tells LaTeX what packages to use and defines some macros, e.g., \twist creates &amp;lt;math&amp;gt;\mathcal{V}&amp;lt;/math&amp;gt; and \wrench creates &amp;lt;math&amp;gt;\mathcal{F}&amp;lt;/math&amp;gt;.  screw.pdf and happy-face.jpg are image files that get included in the document.  You will create different image files depending on your exercise.&lt;br /&gt;
&lt;br /&gt;
To learn more about typesetting in LaTeX, google is your friend!  Try googling &amp;quot;latex math&amp;quot; or &amp;quot;latex math symbols,&amp;quot; for example.&lt;br /&gt;
&lt;br /&gt;
You will turn in the source for your exercise as well as the final pdf file.&lt;br /&gt;
&lt;br /&gt;
==Approximate Syllabus and Reading==&lt;br /&gt;
&lt;br /&gt;
* Chapter 2, Configuration Space (weeks 1-2)&lt;br /&gt;
* Chapter 3, Rigid-Body Motions (weeks 2-3)&lt;br /&gt;
* Chapter 4, Forward Kinematics (week 4); section 4.2 is optional&lt;br /&gt;
* Chapter 5, Velocity Kinematics and Statics (week 5)&lt;br /&gt;
* Chapter 6, Inverse Kinematics (week 6); focus on section 6.2&lt;br /&gt;
* Chapter 8, Dynamics of Open Chains (weeks 6-7); skip sections 8.4, 8.8, and 8.9&lt;br /&gt;
* Chapter 9, Trajectory Generation (week 8); focus on sections 9.1 and 9.4&lt;br /&gt;
* Chapter 11, Robot Control (week 9); focus on sections 11.1 through 11.4&lt;br /&gt;
* Chapter 13, Wheeled Mobile Robots (week 10); skip section 13.3&lt;br /&gt;
&lt;br /&gt;
==Assignments==&lt;br /&gt;
&lt;br /&gt;
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&amp;#039;t follow these instructions.&lt;br /&gt;
&lt;br /&gt;
If you ever think a problem is stated incorrectly, not enough information is given, or it is impossible to solve, don&amp;#039;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.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Instructions for uploading assignments to Canvas:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
0.  &amp;#039;&amp;#039;&amp;#039;Upload on time! Late submissions are not accepted.&amp;#039;&amp;#039;&amp;#039;  The cutoff time is 30 minutes before class the day the assignment is due.&lt;br /&gt;
&lt;br /&gt;
1.  Only upload one zip file or rar file for each assignment;&lt;br /&gt;
&lt;br /&gt;
2.  In your zip file or rar file, include all source codes in their original form, such as .cpp, .m, .py, .nb.&lt;br /&gt;
&lt;br /&gt;
3.  If there is a demo, combine the screen shots into one SEPARATE pdf file, OR, show the results in one SEPARATE .txt file (DON&amp;#039;T show them in your source code file format, e.g. .nb file), and include it in the zip file (or rar file).&lt;br /&gt;
&lt;br /&gt;
4.  Always include output of your code running on the exercises, particularly in case the grader has problems running your code.  Also, always create a script (for example, titled ex6-9 or something) that the grader can easily invoke for each exercise.  Don&amp;#039;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 &amp;quot;README&amp;quot; file in your solutions, for example).&lt;br /&gt;
&lt;br /&gt;
5.  Please name the upload file in the following format: LastName_FirstName.zip.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Assignment 1, due 30 minutes before class on Canvas, Wed Oct 10.&amp;#039;&amp;#039;&amp;#039; Exercises 2.1, 2.4, 2.9 (a) and (b) from Fig 2.18, 2.22, 2.29, and 3.1.&lt;br /&gt;
&lt;br /&gt;
==Detailed Syllabus==&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1UrBFai-1Z98Ry48bW50OMqxvvqZ3Jo8pHgZmljOgPpo/edit?usp=sharing &amp;#039;&amp;#039;&amp;#039;The course calendar&amp;#039;&amp;#039;&amp;#039;], including video lecture and reading assignments due before each class.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1jWd_POLlQYxQLv1Igv-eVmORdtEcLi0mU_rVLkNguYI/edit?usp=sharing &amp;#039;&amp;#039;&amp;#039;Click here for a graphical view of the class schedule, including student lectures.&amp;#039;&amp;#039;&amp;#039;]&lt;br /&gt;
&lt;br /&gt;
Homeworks are due at the beginning of class every Wednesday, unless otherwise noted.  You will watch the videos and do the reading in advance of class using the material, as noted in the syllabus below.  A typical weekly schedule will consist of:  &lt;br /&gt;
: M:  Video/reading comprehension quick quiz and help with homework.  &lt;br /&gt;
: W:  Video/reading comprehension quick quiz, homework solutions, plus &amp;#039;&amp;#039;&amp;#039;EITHER&amp;#039;&amp;#039;&amp;#039; student lecture &amp;#039;&amp;#039;&amp;#039;OR&amp;#039;&amp;#039;&amp;#039; quiz preparation.  &lt;br /&gt;
: F:  Video/reading comprehension quick quiz plus &amp;#039;&amp;#039;&amp;#039;EITHER&amp;#039;&amp;#039;&amp;#039; student lecture &amp;#039;&amp;#039;&amp;#039;OR&amp;#039;&amp;#039;&amp;#039; quiz.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (W 9/20)&lt;br /&gt;
: Welcome to the course and course website.  Structure of the course (HW due Wed, student-generated lectures and learning materials, in-class assignments, feedback on student lectures, occasional Friday quizzes).  Book, software, (lack of) D-H parameters, syllabus, V-REP simulator, office hours.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos: first 3 videos of Chapter 2, through Chapter 2.2&lt;br /&gt;
: Reading:  Chapters 2.1 and 2.2&lt;br /&gt;
: Software:  download github software with book, install V-REP and verify that you can use Scenes 1 and 2 (the UR5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW1, due 1:30 PM 9/27&amp;#039;&amp;#039;&amp;#039;:  Exercises 2.3, 2.9, 2.20, 2.29.  Also, create your own example system with closed loops, something not in the book, and solve for the degrees of freedom using Grubler&amp;#039;s formula.  Make it something that exists or occurs in common experience, not necessarily a robot.  Imagine using it to teach someone about Grubler&amp;#039;s formula.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (F 9/22)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Sample student lecture&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  2 videos on Chapter 2.3&lt;br /&gt;
: Reading:  Chapter 2.3&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (M 9/25)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Bring your laptop, demo V-REP UR5 scenes&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  2 videos, Chapter 2.4 and 2.5&lt;br /&gt;
: Reading:  Chapters 2.4 and 2.5&lt;br /&gt;
: Turn in HW1&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 4&amp;#039;&amp;#039;&amp;#039; (W 9/27)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Solutions to HW1; student examples of Grubler&amp;#039;s formula&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  first 3 videos of Chapter 3, through Chapter 3.2.1&lt;br /&gt;
: Reading:  through Chapter 3.2.1&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW2, due 1:30 PM 10/4&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
:: 1) Exercise 3.1, except the y_a axis points in the direction (1,0,0).&lt;br /&gt;
:: 2) Exercise 3.2, except p = (1,2,3).&lt;br /&gt;
:: 3) Exercise 3.5.&lt;br /&gt;
:: 4) Exercise 3.9.  &lt;br /&gt;
:: 5) In Figure 1.1(a) of the book is an image of a UR5 robot, with a frame at its base and a frame at its end-effector.  Eyeballing the end-effector frame, approximately write the rotation matrix that represents the end-effector frame orientation relative to the base frame.  Your rotation matrix should satisfy the properties of a rotation matrix (R^T R = I, det(R) = 1).  The x-axes are in red, the y-axes are in green, and the z-axes are in blue.&lt;br /&gt;
:: 6) Write a program that takes a set of exponential coordinates for rotation from the user as input.  It then prints out the following: (a) the corresponding unit rotation axis and the angle of rotation about that axis; (b) the so(3) 3x3 matrix representation of the exponential coordinates; (c) the 3x3 SO(3) rotation matrix corresponding to the exponential coordinates; (d) the inverse of the rotation matrix from (c); (e) the 3x3 so(3) matrix log of the matrix from (d); and (f) the corresponding exponential coordinates for the so(3) matrix (e).  Use the code from the book and write your program in Mathematica, MATLAB, or Python.  Turn in your code and the output of an example run using (0.5, 1, 0) as the input to part (a).&lt;br /&gt;
:: 7) Write a function that returns &amp;quot;true&amp;quot; if a given 3x3 matrix is with a distance epsilon of being a rotation matrix and &amp;quot;false&amp;quot; otherwise.  It is up to you to define the &amp;quot;distance&amp;quot; between a random 3x3 real matrix and members of SO(3). Test the function on two matrices, neither of which is exactly in SO(3), but one of which is close (so the result is &amp;quot;true&amp;quot;) and one of which is not.  Turn in your code and provide the test run output, which also outputs the distance to SO(3) that you defined.&lt;br /&gt;
:: 8) Following up on the previous exercise:  describe (don&amp;#039;t implement, unless you want to) a function that takes a &amp;quot;close by&amp;quot; 3x3 matrix and returns the closest rotation matrix.  How would you use the fact that R^T R - I must be equal to zero to modify the initial 3x3 matrix to make it a &amp;quot;close by&amp;quot; rotation matrix?  Would the function be iterative?  You are free to do some research online, but as always, &amp;#039;&amp;#039;&amp;#039;cite your sources&amp;#039;&amp;#039;&amp;#039;!&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (F 9/29)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Lecture&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-6 of Chapter 3, through Chapter 3.2.3&lt;br /&gt;
: Reading:  through Chapter 3.2.3&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (M 10/2)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 7-9 of Chapter 3, Chapters 3.3.1 and 3.3.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (W 10/4)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 10-11, Chapter 3.3.3 and 3.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW3, due 1:30 PM 10/11&amp;#039;&amp;#039;&amp;#039;: Exercises 3.16, 3.17, 3.27, 3.31, and 3.48 (as always, for programming assignments, turn in your code and sample output demonstrating it).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (F 10/6)&lt;br /&gt;
: EXAM 1&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 4, through Chapter 4.1.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (M 10/9)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 2-3 of Chapter 4, Chapter 4.1.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (W 10/11)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 1 (Pawar, Subramanian, Goyal, Cai)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 5, up to (not including) Chapter 5.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW4, due 1:30 PM 10/18&amp;#039;&amp;#039;&amp;#039;: Exercises 4.2, 4.8, 4.14, and 5.7(a).  Question 5:  In Chapter 3.5 (Summary), there is a list of analogies between rotations and rigid-body motions.  Read it carefully and report anything that is either unclear or incorrect.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (F 10/13)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 2 (Wang, Wu, Xia, Zheng)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 2 of Chapter 5, Chapter 5.1.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (M 10/16)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 3 and 4 of Chapter 5, Chapter 5.1.2 through 5.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (W 10/18)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 3 (Wiznitzers, Hutson, Spies)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 5 and 6 of Chapter 5, Chapter 5.3 and 5.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW5, due 1:30 PM 10/25&amp;#039;&amp;#039;&amp;#039;: Exercises 5.2, 5.3, 5.23, 5.25, 6.7, and 6.8.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (F 10/20)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 4 (Don, Chien, Husain, Sulaiman)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1 and 2 of Chapter 6,&lt;br /&gt;
: Reading:  intro of Chapter 6 and Chapter 6.2&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (M 10/23)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 3 of Chapter 6&lt;br /&gt;
: Reading:  Chapter 6.2&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (W 10/25)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 8, through 8.1.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: [[Media:ME449-HW6-2017.pdf|HW6, due 1:30 PM 11/1]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17 &amp;#039;&amp;#039;&amp;#039; (F 10/27)&lt;br /&gt;
: EXAM 2&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 2 of Chapter 8, through 8.1.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (M 10/30)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 3 of Chapter 8, through 8.1.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (W 11/1)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 5 (Zhang, Zhu, Meng, Luo)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-5 of Chapter 8, through 8.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW7, due 1:30 PM 11/8&amp;#039;&amp;#039;&amp;#039;: Exercises 8.2, 8.3, 8.11 (you should build on the MR code), and 8.15(a).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (F 11/3)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 6 (Lyu, Yi, Wang, Swissler)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 6 of Chapter 8, up to (not including) 8.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 21&amp;#039;&amp;#039;&amp;#039; (M 11/6)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 7 of Chapter 8, Chapter 8.5 (skip 8.4)&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 22&amp;#039;&amp;#039;&amp;#039; (W 11/8)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 7 (Warren, Kilaru, Wang, Mandana)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-2 of Chapter 9, through Chapter 9.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW8, due 1:30 PM 11/15&amp;#039;&amp;#039;&amp;#039;: Exercises 8.15(b) (use your previous results from 8.15(a), and turn in any code you write as well as a V-REP movie of your simulation), 8.14 (turn in your testable code and evidence your code returns similar results), 9.14, and 9.26.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 23&amp;#039;&amp;#039;&amp;#039; (F 11/10)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 8 (Wang, Dai, Ma, Peng)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 4 of Chapter 9, Chapter 9.4 - 9.4.1 (skip 9.3)&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 24&amp;#039;&amp;#039;&amp;#039; (M 11/13)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 5-6 of Chapter 9, up to (not including) Chapter 9.5&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 25&amp;#039;&amp;#039;&amp;#039; (W 11/15)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-3 of Chapter 11, up to (not including) Chapter 11.2.2.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Final project.  This project is part of the assignment grade, cannot be dropped, and has the weight of 2 normal assignments.&amp;#039;&amp;#039;&amp;#039;  The assignment is split into two parts:  a relatively simple Part I, due after 1 week, followed by the programming-heavy Part II, due during finals week.  You will receive a single grade for the entire assignment, after Part II has been submitted.&lt;br /&gt;
:: &amp;#039;&amp;#039;&amp;#039;Part I, due 1:30 PM 11/22&amp;#039;&amp;#039;&amp;#039;:  Exercise 13.33 (a) and (b).  Turn in your solutions (handwritten or typed) and any code you wrote.&lt;br /&gt;
:: &amp;#039;&amp;#039;&amp;#039;Part II, due 11:59 PM 12/6&amp;#039;&amp;#039;&amp;#039;:  Exercise 13.33 (c), (d), and (e).  Turn in 1) any solutions (handwritten or typed), 2) your code, 3) any plots you created with your code, 4) your short V-REP videos (made using the youbot csv animation scene), and 5) the .csv files corresponding to the videos.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 26&amp;#039;&amp;#039;&amp;#039; (F 11/17)&lt;br /&gt;
: EXAM 3&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-5 of Chapter 11, Chapter 11.2.2.1 and 11.2.2.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 27&amp;#039;&amp;#039;&amp;#039; (M 11/20)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 6-8 of Chapter 11, Chapter 11.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Turn in Part I of your final project on Canvas.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 28&amp;#039;&amp;#039;&amp;#039; (W 11/22)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 9 (Abiney, Aubrun, Anthony, Alston)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-3 of Chapter 13, through Chapter 13.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 29&amp;#039;&amp;#039;&amp;#039; (M 11/27)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Reading:  odometry and mobile manipulation, Chapter 13.4 and 13.5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 30&amp;#039;&amp;#039;&amp;#039; (W 11/29)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 10 (Miller, Berrueta, Davis, Tobia)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Final assignment work&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 31&amp;#039;&amp;#039;&amp;#039; (F 12/1)&lt;br /&gt;
: Student lecture 11 (Fernandez, Lutzen, SaLoutos, Iwankiw)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Your final project is due on Canvas by 11:59 PM on Wednesday Dec 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
==Archive==&lt;br /&gt;
&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive 2012)|ME 449 Spring 2012]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Spring 2014)|ME 449 Spring 2014]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2014)|ME 449 Fall 2014]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2015)|ME 449 Fall 2015]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2016)|ME 449 Fall 2016]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2017)|ME 449 Fall 2017]]&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=25305</id>
		<title>ME 449 Robotic Manipulation</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=25305"/>
		<updated>2018-10-03T20:36:58Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Assignments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Fall Quarter 2018&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* Instructor:  Prof. Kevin Lynch&lt;br /&gt;
* Meeting:  2:00-2:50, MWF, Frances Searle Building 1-441&lt;br /&gt;
* TAs:  Huan Weng, Tito Fernandez, and Zack Woodruff&lt;br /&gt;
* Office hours:  Tech B222 (TBA)&lt;br /&gt;
* course website:  [http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation]&lt;br /&gt;
* book website:  [http://modernrobotics.org http://modernrobotics.org]&lt;br /&gt;
&lt;br /&gt;
==Course Summary==&lt;br /&gt;
&lt;br /&gt;
Mechanics of robotic manipulation, computer representations and algorithms for manipulation planning, and applications to industrial automation, parts feeding, grasping, fixturing, and assembly.&lt;br /&gt;
&lt;br /&gt;
Monday Oct 1:  Tito Fernandez.  Wednesday Oct 3:  Huan Weng.  Friday Oct 5:  Zack Woodruff.&lt;br /&gt;
&lt;br /&gt;
==Grading==&lt;br /&gt;
* 50% quizzes (quizzes will be open book, open notes, any cheat sheets you would like, but no electronics)&lt;br /&gt;
* 20% assignments (lowest grade will be dropped)&lt;br /&gt;
* 15% final project (due Wed Dec 12, during finals week)&lt;br /&gt;
* 10% practice exercise for other students&lt;br /&gt;
* 5% engagement:  answering questions in class, participation in in-class exercises, and helping other students in class&lt;br /&gt;
&lt;br /&gt;
==Course Text and Software==&lt;br /&gt;
&lt;br /&gt;
This course uses the textbook &amp;#039;&amp;#039;Modern Robotics:  Mechanics, Planning, and Control&amp;#039;&amp;#039;, Kevin M. Lynch and Frank C. Park, Cambridge University Press 2017.&lt;br /&gt;
&lt;br /&gt;
[[Coursera_Resources#Things_you_should_complete_before_taking_any_course|Get the book, install and test the Modern Robotics code library, and install and test the V-REP simulator.]]  You will program in Python, Mathematica, or MATLAB in this course.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Modern Robotics Linear Algebra Review|Here is a linear algebra refresher appendix to accompany the book.]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
==Video Lectures and the Flipped Classroom==&lt;br /&gt;
&lt;br /&gt;
This course will take advantage of video lectures and lecture comprehension quizzes on Coursera.  (You can also see the video lectures, but not the lecture comprehension quizzes, outside Coursera at the video browser [http://modernrobotics.northwestern.edu &amp;#039;&amp;#039;&amp;#039;http://modernrobotics.northwestern.edu&amp;#039;&amp;#039;&amp;#039;] or using [[Modern_Robotics_Videos|&amp;#039;&amp;#039;&amp;#039;direct links to the videos on YouTube&amp;#039;&amp;#039;&amp;#039;]].)&lt;br /&gt;
&lt;br /&gt;
You should sign up to audit the following courses on Coursera in advance of our study of them in class.  Don&amp;#039;t pay; you should start by choosing the 7-day free trial, but then click &amp;quot;audit the course.&amp;quot;  Auditing the course gives you access to everything except graded assignments and peer-reviewed projects.&lt;br /&gt;
&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course1 Course 1:  Foundations of Robot Motion (Chapters 2 and 3)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course2 Course 2:  Robot Kinematics (Chapters 4, 5, 6, and 7)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course3 Course 3:  Robot Dynamics (Chapters 8 and 9)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course4 Course 4:  Robot Motion Planning and Control (Chapters 10 and 11)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course5 Course 5:  Robot Manipulation and Wheeled Mobile Robots (Chapters 12 and 13)]&lt;br /&gt;
* [https://www.coursera.org/learn/modernrobotics-course6 Course 6:  Capstone Project, Mobile Manipulation]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;[[Coursera Resources|This page collects together useful supplemental material to the Coursera courses]]&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
The general flow of the class will be the following:  &lt;br /&gt;
&lt;br /&gt;
* Before class, watch the videos, do the lecture comprehension quizzes associated with each video, do the associated reading, and participate in any &amp;quot;discussion prompts&amp;quot; on Coursera.  You should plan to bring any questions or confusion to class.  In general, I recommend that you first watch the videos to get a quick understanding of the material of the chapter, then follow up by reading the appropriate sections of the book.  The videos are short and dense, so don&amp;#039;t expect to get by only watching the videos.  You will need to read the book, then do the exercises, to gain mastery of the material.  &lt;br /&gt;
* In class, I will briefly review the lecture comprehension quizzes and the material that was covered, get a little discussion going and take any questions, and then ask you to work on a practice exercise either individually or in small groups.  If time remains, you may work on homework together.  I will be available to help.&lt;br /&gt;
* On days when a homework is turned in, I will leave time for any questions about it.  On days before a quiz, I will spend as much time reviewing the material covered by the quiz as you would like.&lt;br /&gt;
&lt;br /&gt;
==Student-Created Exercises==&lt;br /&gt;
&lt;br /&gt;
All students will be responsible for creating a practice exercise, consisting of the exercise and the solution.  A good exercise should test an important concept in the context of a real robotics application (e.g., motion planning for a quadrotor, robot localization, computer vision, grasping, etc.), require the learner to understand and apply equations in the book or use the book&amp;#039;s software, and require a bit of thought (i.e., not just &amp;quot;plug and chug&amp;quot; questions).  For many exercises, a good figure or two is helpful.  You could use a figure of a real robot and add your own annotations to it (e.g., frames or objects in its environment), or you could hand-draw something, or you could use V-REP or other software to help create the figure.  You should not confine your question to an application discussed in the textbook.  Make your exercise interesting and motivating!  Exercises that require synthesizing two or more concepts or equations are more interesting and useful.&lt;br /&gt;
&lt;br /&gt;
You will create your exercise using [https://en.wikipedia.org/wiki/LaTeX LaTeX] (pronounced &amp;quot;lay teck&amp;quot; or &amp;quot;lah teck&amp;quot;), the standard for scientific document preparation.  [https://www.overleaf.com/ Overleaf] is a free online implementation of LaTeX.  To get started on your exercise,&lt;br /&gt;
&lt;br /&gt;
# Download [[Media:ME449-exercise.zip|&amp;#039;&amp;#039;&amp;#039;this .zip file&amp;#039;&amp;#039;&amp;#039;]] and uncompress it.  There are four files:  main.tex, prelims.tex, screw.pdf, and happy-face.jpg.&lt;br /&gt;
# Create an account on [https://www.overleaf.com/ Overleaf].&lt;br /&gt;
# Create a new (blank) project on Overleaf called &amp;quot;exercise.&amp;quot;&lt;br /&gt;
# Upload the four files main.tex, prelims.tex, screw.pdf, and happy-face.jpg to this project.  (You may get a warning that your default main.tex file is being overwritten; don&amp;#039;t worry about it.)&lt;br /&gt;
# Click on main.tex to see your main LaTeX document.&lt;br /&gt;
# Press the &amp;quot;Recompile&amp;quot; button to see the pdf document that is compiled from the four files.  You can download the pdf file, or all the &amp;quot;source&amp;quot; files, by clicking on &amp;quot;Menu&amp;quot; and choosing which to download.  &amp;#039;&amp;#039;&amp;#039;[[Media:ME449-exercise-output.pdf|This is the .pdf file you should have created.]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
main.tex is the main file of the project, and the only one that you will edit, so you should understand what is going on in that file.  prelims.tex tells LaTeX what packages to use and defines some macros, e.g., \twist creates &amp;lt;math&amp;gt;\mathcal{V}&amp;lt;/math&amp;gt; and \wrench creates &amp;lt;math&amp;gt;\mathcal{F}&amp;lt;/math&amp;gt;.  screw.pdf and happy-face.jpg are image files that get included in the document.  You will create different image files depending on your exercise.&lt;br /&gt;
&lt;br /&gt;
To learn more about typesetting in LaTeX, google is your friend!  Try googling &amp;quot;latex math&amp;quot; or &amp;quot;latex math symbols,&amp;quot; for example.&lt;br /&gt;
&lt;br /&gt;
You will turn in the source for your exercise as well as the final pdf file.&lt;br /&gt;
&lt;br /&gt;
==Approximate Syllabus and Reading==&lt;br /&gt;
&lt;br /&gt;
* Chapter 2, Configuration Space (weeks 1-2)&lt;br /&gt;
* Chapter 3, Rigid-Body Motions (weeks 2-3)&lt;br /&gt;
* Chapter 4, Forward Kinematics (week 4); section 4.2 is optional&lt;br /&gt;
* Chapter 5, Velocity Kinematics and Statics (week 5)&lt;br /&gt;
* Chapter 6, Inverse Kinematics (week 6); focus on section 6.2&lt;br /&gt;
* Chapter 8, Dynamics of Open Chains (weeks 6-7); skip sections 8.4, 8.8, and 8.9&lt;br /&gt;
* Chapter 9, Trajectory Generation (week 8); focus on sections 9.1 and 9.4&lt;br /&gt;
* Chapter 11, Robot Control (week 9); focus on sections 11.1 through 11.4&lt;br /&gt;
* Chapter 13, Wheeled Mobile Robots (week 10); skip section 13.3&lt;br /&gt;
&lt;br /&gt;
==Assignments==&lt;br /&gt;
&lt;br /&gt;
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&amp;#039;t follow these instructions.&lt;br /&gt;
&lt;br /&gt;
If you ever think a problem is stated incorrectly, not enough information is given, or it is impossible to solve, don&amp;#039;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.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Instructions for uploading assignments to Canvas:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
0.  &amp;#039;&amp;#039;&amp;#039;Upload on time! Late submissions are not accepted.&amp;#039;&amp;#039;&amp;#039;  The cutoff time is 30 minutes before class the day the assignment is due.&lt;br /&gt;
&lt;br /&gt;
1.  Only upload one zip file or rar file for each assignment;&lt;br /&gt;
&lt;br /&gt;
2.  In your zip file or rar file, include all source codes in their original form, such as .cpp, .m, .py, .nb.&lt;br /&gt;
&lt;br /&gt;
3.  If there is a demo, combine the screen shots into one SEPARATE pdf file, OR, show the results in one SEPARATE .txt file (DON&amp;#039;T show them in your source code file format, e.g. .nb file), and include it in the zip file (or rar file).&lt;br /&gt;
&lt;br /&gt;
4.  Always include output of your code running on the exercises, particularly in case the grader has problems running your code.  Also, always create a script (for example, titled ex6-9 or something) that the grader can easily invoke for each exercise.  Don&amp;#039;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 &amp;quot;README&amp;quot; file in your solutions, for example).&lt;br /&gt;
&lt;br /&gt;
5.  Please name the upload file in the following format: LastName_FirstName.zip.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Assignment 1, due 30 minutes before class on Canvas, Wed Oct 10.&amp;#039;&amp;#039;&amp;#039; Exercises 2.1, 2.4, 2.9 [(a) and (b) from Fig 2.18], 2.22, 2.29, and 3.1.&lt;br /&gt;
&lt;br /&gt;
==Detailed Syllabus==&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1UrBFai-1Z98Ry48bW50OMqxvvqZ3Jo8pHgZmljOgPpo/edit?usp=sharing &amp;#039;&amp;#039;&amp;#039;The course calendar&amp;#039;&amp;#039;&amp;#039;], including video lecture and reading assignments due before each class.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[https://docs.google.com/spreadsheets/d/1jWd_POLlQYxQLv1Igv-eVmORdtEcLi0mU_rVLkNguYI/edit?usp=sharing &amp;#039;&amp;#039;&amp;#039;Click here for a graphical view of the class schedule, including student lectures.&amp;#039;&amp;#039;&amp;#039;]&lt;br /&gt;
&lt;br /&gt;
Homeworks are due at the beginning of class every Wednesday, unless otherwise noted.  You will watch the videos and do the reading in advance of class using the material, as noted in the syllabus below.  A typical weekly schedule will consist of:  &lt;br /&gt;
: M:  Video/reading comprehension quick quiz and help with homework.  &lt;br /&gt;
: W:  Video/reading comprehension quick quiz, homework solutions, plus &amp;#039;&amp;#039;&amp;#039;EITHER&amp;#039;&amp;#039;&amp;#039; student lecture &amp;#039;&amp;#039;&amp;#039;OR&amp;#039;&amp;#039;&amp;#039; quiz preparation.  &lt;br /&gt;
: F:  Video/reading comprehension quick quiz plus &amp;#039;&amp;#039;&amp;#039;EITHER&amp;#039;&amp;#039;&amp;#039; student lecture &amp;#039;&amp;#039;&amp;#039;OR&amp;#039;&amp;#039;&amp;#039; quiz.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (W 9/20)&lt;br /&gt;
: Welcome to the course and course website.  Structure of the course (HW due Wed, student-generated lectures and learning materials, in-class assignments, feedback on student lectures, occasional Friday quizzes).  Book, software, (lack of) D-H parameters, syllabus, V-REP simulator, office hours.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos: first 3 videos of Chapter 2, through Chapter 2.2&lt;br /&gt;
: Reading:  Chapters 2.1 and 2.2&lt;br /&gt;
: Software:  download github software with book, install V-REP and verify that you can use Scenes 1 and 2 (the UR5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW1, due 1:30 PM 9/27&amp;#039;&amp;#039;&amp;#039;:  Exercises 2.3, 2.9, 2.20, 2.29.  Also, create your own example system with closed loops, something not in the book, and solve for the degrees of freedom using Grubler&amp;#039;s formula.  Make it something that exists or occurs in common experience, not necessarily a robot.  Imagine using it to teach someone about Grubler&amp;#039;s formula.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (F 9/22)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Sample student lecture&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  2 videos on Chapter 2.3&lt;br /&gt;
: Reading:  Chapter 2.3&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (M 9/25)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Bring your laptop, demo V-REP UR5 scenes&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  2 videos, Chapter 2.4 and 2.5&lt;br /&gt;
: Reading:  Chapters 2.4 and 2.5&lt;br /&gt;
: Turn in HW1&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 4&amp;#039;&amp;#039;&amp;#039; (W 9/27)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Solutions to HW1; student examples of Grubler&amp;#039;s formula&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  first 3 videos of Chapter 3, through Chapter 3.2.1&lt;br /&gt;
: Reading:  through Chapter 3.2.1&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW2, due 1:30 PM 10/4&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
:: 1) Exercise 3.1, except the y_a axis points in the direction (1,0,0).&lt;br /&gt;
:: 2) Exercise 3.2, except p = (1,2,3).&lt;br /&gt;
:: 3) Exercise 3.5.&lt;br /&gt;
:: 4) Exercise 3.9.  &lt;br /&gt;
:: 5) In Figure 1.1(a) of the book is an image of a UR5 robot, with a frame at its base and a frame at its end-effector.  Eyeballing the end-effector frame, approximately write the rotation matrix that represents the end-effector frame orientation relative to the base frame.  Your rotation matrix should satisfy the properties of a rotation matrix (R^T R = I, det(R) = 1).  The x-axes are in red, the y-axes are in green, and the z-axes are in blue.&lt;br /&gt;
:: 6) Write a program that takes a set of exponential coordinates for rotation from the user as input.  It then prints out the following: (a) the corresponding unit rotation axis and the angle of rotation about that axis; (b) the so(3) 3x3 matrix representation of the exponential coordinates; (c) the 3x3 SO(3) rotation matrix corresponding to the exponential coordinates; (d) the inverse of the rotation matrix from (c); (e) the 3x3 so(3) matrix log of the matrix from (d); and (f) the corresponding exponential coordinates for the so(3) matrix (e).  Use the code from the book and write your program in Mathematica, MATLAB, or Python.  Turn in your code and the output of an example run using (0.5, 1, 0) as the input to part (a).&lt;br /&gt;
:: 7) Write a function that returns &amp;quot;true&amp;quot; if a given 3x3 matrix is with a distance epsilon of being a rotation matrix and &amp;quot;false&amp;quot; otherwise.  It is up to you to define the &amp;quot;distance&amp;quot; between a random 3x3 real matrix and members of SO(3). Test the function on two matrices, neither of which is exactly in SO(3), but one of which is close (so the result is &amp;quot;true&amp;quot;) and one of which is not.  Turn in your code and provide the test run output, which also outputs the distance to SO(3) that you defined.&lt;br /&gt;
:: 8) Following up on the previous exercise:  describe (don&amp;#039;t implement, unless you want to) a function that takes a &amp;quot;close by&amp;quot; 3x3 matrix and returns the closest rotation matrix.  How would you use the fact that R^T R - I must be equal to zero to modify the initial 3x3 matrix to make it a &amp;quot;close by&amp;quot; rotation matrix?  Would the function be iterative?  You are free to do some research online, but as always, &amp;#039;&amp;#039;&amp;#039;cite your sources&amp;#039;&amp;#039;&amp;#039;!&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (F 9/29)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Lecture&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-6 of Chapter 3, through Chapter 3.2.3&lt;br /&gt;
: Reading:  through Chapter 3.2.3&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (M 10/2)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 7-9 of Chapter 3, Chapters 3.3.1 and 3.3.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (W 10/4)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 10-11, Chapter 3.3.3 and 3.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW3, due 1:30 PM 10/11&amp;#039;&amp;#039;&amp;#039;: Exercises 3.16, 3.17, 3.27, 3.31, and 3.48 (as always, for programming assignments, turn in your code and sample output demonstrating it).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (F 10/6)&lt;br /&gt;
: EXAM 1&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 4, through Chapter 4.1.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (M 10/9)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 2-3 of Chapter 4, Chapter 4.1.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (W 10/11)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 1 (Pawar, Subramanian, Goyal, Cai)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 5, up to (not including) Chapter 5.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW4, due 1:30 PM 10/18&amp;#039;&amp;#039;&amp;#039;: Exercises 4.2, 4.8, 4.14, and 5.7(a).  Question 5:  In Chapter 3.5 (Summary), there is a list of analogies between rotations and rigid-body motions.  Read it carefully and report anything that is either unclear or incorrect.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (F 10/13)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 2 (Wang, Wu, Xia, Zheng)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 2 of Chapter 5, Chapter 5.1.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (M 10/16)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 3 and 4 of Chapter 5, Chapter 5.1.2 through 5.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (W 10/18)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 3 (Wiznitzers, Hutson, Spies)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 5 and 6 of Chapter 5, Chapter 5.3 and 5.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW5, due 1:30 PM 10/25&amp;#039;&amp;#039;&amp;#039;: Exercises 5.2, 5.3, 5.23, 5.25, 6.7, and 6.8.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (F 10/20)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 4 (Don, Chien, Husain, Sulaiman)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1 and 2 of Chapter 6,&lt;br /&gt;
: Reading:  intro of Chapter 6 and Chapter 6.2&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (M 10/23)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 3 of Chapter 6&lt;br /&gt;
: Reading:  Chapter 6.2&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (W 10/25)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 1 of Chapter 8, through 8.1.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: [[Media:ME449-HW6-2017.pdf|HW6, due 1:30 PM 11/1]]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17 &amp;#039;&amp;#039;&amp;#039; (F 10/27)&lt;br /&gt;
: EXAM 2&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 2 of Chapter 8, through 8.1.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (M 10/30)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 3 of Chapter 8, through 8.1.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (W 11/1)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 5 (Zhang, Zhu, Meng, Luo)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-5 of Chapter 8, through 8.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW7, due 1:30 PM 11/8&amp;#039;&amp;#039;&amp;#039;: Exercises 8.2, 8.3, 8.11 (you should build on the MR code), and 8.15(a).&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (F 11/3)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 6 (Lyu, Yi, Wang, Swissler)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 6 of Chapter 8, up to (not including) 8.4&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 21&amp;#039;&amp;#039;&amp;#039; (M 11/6)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 7 of Chapter 8, Chapter 8.5 (skip 8.4)&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 22&amp;#039;&amp;#039;&amp;#039; (W 11/8)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 7 (Warren, Kilaru, Wang, Mandana)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-2 of Chapter 9, through Chapter 9.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;HW8, due 1:30 PM 11/15&amp;#039;&amp;#039;&amp;#039;: Exercises 8.15(b) (use your previous results from 8.15(a), and turn in any code you write as well as a V-REP movie of your simulation), 8.14 (turn in your testable code and evidence your code returns similar results), 9.14, and 9.26.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 23&amp;#039;&amp;#039;&amp;#039; (F 11/10)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 8 (Wang, Dai, Ma, Peng)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  video 4 of Chapter 9, Chapter 9.4 - 9.4.1 (skip 9.3)&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 24&amp;#039;&amp;#039;&amp;#039; (M 11/13)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 5-6 of Chapter 9, up to (not including) Chapter 9.5&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 25&amp;#039;&amp;#039;&amp;#039; (W 11/15)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Exam prep&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-3 of Chapter 11, up to (not including) Chapter 11.2.2.1&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Final project.  This project is part of the assignment grade, cannot be dropped, and has the weight of 2 normal assignments.&amp;#039;&amp;#039;&amp;#039;  The assignment is split into two parts:  a relatively simple Part I, due after 1 week, followed by the programming-heavy Part II, due during finals week.  You will receive a single grade for the entire assignment, after Part II has been submitted.&lt;br /&gt;
:: &amp;#039;&amp;#039;&amp;#039;Part I, due 1:30 PM 11/22&amp;#039;&amp;#039;&amp;#039;:  Exercise 13.33 (a) and (b).  Turn in your solutions (handwritten or typed) and any code you wrote.&lt;br /&gt;
:: &amp;#039;&amp;#039;&amp;#039;Part II, due 11:59 PM 12/6&amp;#039;&amp;#039;&amp;#039;:  Exercise 13.33 (c), (d), and (e).  Turn in 1) any solutions (handwritten or typed), 2) your code, 3) any plots you created with your code, 4) your short V-REP videos (made using the youbot csv animation scene), and 5) the .csv files corresponding to the videos.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 26&amp;#039;&amp;#039;&amp;#039; (F 11/17)&lt;br /&gt;
: EXAM 3&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 4-5 of Chapter 11, Chapter 11.2.2.1 and 11.2.2.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 27&amp;#039;&amp;#039;&amp;#039; (M 11/20)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 6-8 of Chapter 11, Chapter 11.3&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Turn in Part I of your final project on Canvas.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 28&amp;#039;&amp;#039;&amp;#039; (W 11/22)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 9 (Abiney, Aubrun, Anthony, Alston)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos:  videos 1-3 of Chapter 13, through Chapter 13.2&lt;br /&gt;
: Reading:  same sections&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 29&amp;#039;&amp;#039;&amp;#039; (M 11/27)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Help with HW&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Reading:  odometry and mobile manipulation, Chapter 13.4 and 13.5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 30&amp;#039;&amp;#039;&amp;#039; (W 11/29)&lt;br /&gt;
: Quick quiz&lt;br /&gt;
: Student lecture 10 (Miller, Berrueta, Davis, Tobia)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Final assignment work&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 31&amp;#039;&amp;#039;&amp;#039; (F 12/1)&lt;br /&gt;
: Student lecture 11 (Fernandez, Lutzen, SaLoutos, Iwankiw)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Your final project is due on Canvas by 11:59 PM on Wednesday Dec 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
==Archive==&lt;br /&gt;
&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive 2012)|ME 449 Spring 2012]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Spring 2014)|ME 449 Spring 2014]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2014)|ME 449 Fall 2014]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2015)|ME 449 Fall 2015]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2016)|ME 449 Fall 2016]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Fall 2017)|ME 449 Fall 2017]]&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=23178</id>
		<title>ME 333 Introduction to Mechatronics (Archive Winter 2016)</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=23178"/>
		<updated>2015-03-06T21:44:07Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Schedule */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Winter Quarter 2015&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;First day of class is Tuesday January 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Section 20:  Prof. Kevin Lynch, T Th, 11:00-12:20, Tech M345&lt;br /&gt;
* Section 21:  Prof. Nick Marchuk (nick.marchuk@gmail.com), T Th, 12:30-1:50, Tech M345&lt;br /&gt;
* TAs:  Ben Richardson (BenjaminRichardson2013@u.northwestern.edu) and Zack Woodruff (jzwoodruff@u.northwestern.edu)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Pizza and Programming Party&amp;#039;&amp;#039;&amp;#039;, Monday Jan 12, 6:00-8:00, Tech B211 (ME conference room).  Get help, or help others, on the programming assignment!  Sponsored by [https://asg.northwestern.edu/student-faculty-interaction-grants/ Student-Faculty Interaction Grants] (now accepting applications for your events!)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Final demo&amp;#039;&amp;#039;&amp;#039; (in lieu of final exam):  Monday Mar 16 3-5 PM (12:30-1:50 section) and Wednesday Mar 18 9-11 AM (11-12:20 section) &lt;br /&gt;
* Office Hours:  Mon 2-3 (Zack Woodruff, Tech B230); Tues 3-4 (3:30-4:30 on 2/24; Prof. Lynch, Tech B222); Wed 3-4 (Ben Richardson, Tech B230); every day 4-5 (Prof. Marchuk, Mechatronics Lab, Ford B100)&lt;br /&gt;
&lt;br /&gt;
* Quick links:&lt;br /&gt;
** [https://canvas.northwestern.edu/courses/9664 Canvas Course Management System]&lt;br /&gt;
** [[ME 333 Readings, Videos, and Sample Code|ME 333 Readings, Videos, and Sample Code]]&lt;br /&gt;
** [https://it.mccormick.northwestern.edu/matlab/student_license/index.php Purchase Your ME 333 Kit]&lt;br /&gt;
** [https://docs.google.com/forms/d/1V5VmjJdQGrsS3PjslubUS3cHMgHWLJCCPHxrewsFAyA/viewform Send a question for possible discussion in the next class] (use the Canvas discussion group for an online discussion)&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** [https://groups.google.com/a/u.northwestern.edu/forum/#!forum/me333-2014.me Google discussion forum]&lt;br /&gt;
** [[NU32: What is in the NU32 Kit|NU32 kit]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Purpose of this Course ==&lt;br /&gt;
&lt;br /&gt;
The purpose of this course is to &amp;#039;&amp;#039;&amp;#039;provide tools that help you express your creativity&amp;#039;&amp;#039;&amp;#039;.  Maybe you want to build a robot, or a piece of kinetic art, or an automatic ball-throwing device to entertain your dog; maybe you&amp;#039;ve identified a market for a new smart product and you&amp;#039;d like to prototype the device.  This course provides fundamentals of mechatronics to give you confidence to take on these projects.  You are encouraged to take what you learn in this course and apply it in the project-based ME 433 Advanced Mechatronics course, Design Competition, or independent projects.&lt;br /&gt;
&lt;br /&gt;
== Approximate Syllabus ==&lt;br /&gt;
&lt;br /&gt;
This course is for students that want to build microprocessor-controlled electromechanical devices.  &lt;br /&gt;
&lt;br /&gt;
To do this, ME 333 focuses on three topics: (1) general C programming; (2) Microchip PIC microcontroller architecture and C programming specific to the PIC (e.g., using the PIC&amp;#039;s peripherals, such as analog inputs, digital I/O, counters/timers, comm ports, etc.); and (3) interfacing the PIC to sensors and actuators, some theory of sensor and actuator operation, and interface circuitry and signal processing. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;You will do a lot of programming in this course!&amp;#039;&amp;#039;&amp;#039;  If you are certain you hate programming, then this is not the course for you.  But knowing how to program is very useful for any modern engineer.  The language we will use is C, a fairly low-level language that works well for microcontrollers, which is more portable and not nearly as painful and low-level as assembly language.  If you don&amp;#039;t know C, that&amp;#039;s not a problem, most students don&amp;#039;t before taking ME 333; but you should plan to learn it, and rather quickly.  You will have all the materials you need to start learning C before class starts, and &amp;#039;&amp;#039;&amp;#039;the first assignment on C is due on the first day of class&amp;#039;&amp;#039;&amp;#039;!  The reason:  even though we start out with C, that&amp;#039;s not the main goal of this course.  The main goal is to teach you about microcontrollers and mechatronics.  Plus some students already have C background.&lt;br /&gt;
&lt;br /&gt;
You will bring your laptop to each class.  As the quarter progresses, we will be handing out other equipment that you will need to bring to class, such as the NU32 development board that breaks out the [http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en545660 PIC32MX795F512L] microcontroller.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;It is essential you do the assigned reading and watch the videos in advance of class.&amp;#039;&amp;#039;&amp;#039;  You will have an assignment and/or lecture comprehension questions (L-comps) due before every class, turned in electronically on Canvas.  (This includes the very first day of class!)  Once a week we will have a short quiz.  Most classes will have a combination of a brief review, Q&amp;amp;A, and working individually or in small groups on problems while the instructors help answer any questions.&lt;br /&gt;
&lt;br /&gt;
Topics we will cover, time depending, include:&lt;br /&gt;
&lt;br /&gt;
* introduction to C programming&lt;br /&gt;
* introduction to the PIC32 hardware, and programming the PIC32 in C&lt;br /&gt;
* digital I/O&lt;br /&gt;
* counters/timers and interrupts&lt;br /&gt;
* analog input&lt;br /&gt;
* sensor smorgasbord&lt;br /&gt;
* digital signal processing:  filters and FFTs&lt;br /&gt;
* analog output and pulse-width modulation&lt;br /&gt;
* brushed permanent magnet DC motors:  theory and control&lt;br /&gt;
* stepper motors and RC servo motors&lt;br /&gt;
* communication by SPI, I2C, and RS-232&lt;br /&gt;
&lt;br /&gt;
== Checklist to Complete Before the First Day of Class ==&lt;br /&gt;
&lt;br /&gt;
Attendance at the first day of class is mandatory.  By the first day of class, you should:&lt;br /&gt;
&lt;br /&gt;
* Complete the reading and assignment 1, which is &amp;#039;&amp;#039;&amp;#039;due the first day of class!&amp;#039;&amp;#039;&amp;#039;  &amp;lt;!-- In fact, the first two weeks of assignments are already posted, so you are welcome to complete them all over the break and coast through the first two weeks of class.--&amp;gt;  The first assignments are designed to get you up to speed on the C programming language, which we will use throughout the course.&lt;br /&gt;
* Have a laptop with at least 2 USB ports.  Any operating system is fine.  One port will be used to program and communicate with your PIC microcontroller, and the other will be used for your portable oscilloscope.  &lt;br /&gt;
* Be prepared to buy your [[NU32: What is in the NU32 Kit|class kit]], consisting of the portable nScope oscilloscope, the NU32 PIC32 development board, and lots of other goodies.  Price $125 if you are starting from scratch; $75 if you already have the nScope.  &lt;br /&gt;
&amp;lt;!-- * Be able to solve circuit problems similar to those on the practice problem set and last year&amp;#039;s quiz at the bottom of [[ME_333_Circuits_Review_Material|this page]].  Be prepared for a quiz on this material in the second week of class.  We will only spend one class period reviewing this material.--&amp;gt;&lt;br /&gt;
&amp;lt;!-- * Buy your class kit [http://it.mccormick.northwestern.edu/matlab/student_license/login.php &amp;#039;&amp;#039;&amp;#039;here&amp;#039;&amp;#039;&amp;#039;].  If you already have the oscilloscope and multimeter from this year&amp;#039;s ME 233 offering, you should choose &amp;quot;ME 333 (w/o ME 233 equipment)&amp;quot; for the price of $75.  If you do not have the oscilloscope and multimeter, you should choose &amp;quot;ME 333 (w/ ME 233 equipment)&amp;quot; for the price of $135.  You will not be able to start the course until you have completed the purchase of your kit.  If you decide to drop the course, you will be refunded the purchase price upon return of all the equipment in working shape. --&amp;gt;&lt;br /&gt;
&amp;lt;!--* &amp;#039;&amp;#039;&amp;#039;If you are not already comfortable with the C language, or if you do not already have a C compiler installed on your laptop, this step is recommended before the first day of class.  This will give you a headstart on learning C.  If you don&amp;#039;t complete this before the first day of class, you will need to do it before the second class.&amp;#039;&amp;#039;&amp;#039;  Download and install the GCC GNU compiler collection and the Netbeans IDE (Integrated Development Environment) following the instructions [[Installing_a_C_Compiler_and_IDE|here]].  Verify that you can compile and run the sample programs at the end of that page.  Read the comments in invest.c to find references to the [[Media:CrashCourseinC.pdf|Crash Course in C document]] and answer the questions to learn more about C. &amp;#039;&amp;#039;&amp;#039;If you have problems installing a C compiler and running the programs, then you can still get a headstart before the first class by focusing on reading the C programs and the Crash Course in C manual to understand how they work.&amp;#039;&amp;#039;&amp;#039;--&amp;gt; &amp;lt;!-- * Download and install software described on [[NU32v2: Software to Install|this page]].  --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Student Contract ==&lt;br /&gt;
&lt;br /&gt;
By signing up for this course, you agree to complete the checklist above before the course starts.  You agree to stay engaged during the class period; even if your computer is open, no facebook or other distractions that will lessen your contribution to the class.  You understand that learning from classmates, and helping classmates, is encouraged, up to the stage of conceptualizing solutions.  You are not allowed to fully complete a solution in a team.  You understand that plagiarism is not tolerated.  You will report instances of plagiarism you are aware of.  Plagiarism includes, but is not limited to:&lt;br /&gt;
&lt;br /&gt;
* Allowing another student to copy your work.&lt;br /&gt;
* Copying another student&amp;#039;s work, in whole or in part.&lt;br /&gt;
* Transforming copied sections of code or solutions to try to disguise their origin.&lt;br /&gt;
* Borrowing code or solutions from others not in the course, e.g., code found on the internet, without attribution.  Borrowing code found on the internet is acceptable if the source is clearly indicated in your code comments, and if you understand how the code works.&lt;br /&gt;
&lt;br /&gt;
On our part (faculty and TAs), we commit to do our best to provide you a curriculum and set of experimental materials to get you up to speed on sophisticated mechatronics integration as quickly and efficiently as possible, while giving you a foundation in concepts needed to go further in future projects and courses.&lt;br /&gt;
&lt;br /&gt;
== Prerequisite ==&lt;br /&gt;
&lt;br /&gt;
ME 233 Electronics Design or similar (EECS 221, 225) is required. You will be expected to analyze circuits with resistors, capacitors, inductors, diodes, transistors, and op-amps. You can find refresher material and a sample quiz at [[ME_333_Circuits_Review_Material|this page]].&lt;br /&gt;
&lt;br /&gt;
== Reading ==&lt;br /&gt;
&lt;br /&gt;
Required:&lt;br /&gt;
&lt;br /&gt;
* [[Media:book-current.pdf|A Crash Course in C]]:  A brief introduction to the C programming language.  Sample code from this appendix can be found [[ME 333 Readings, Videos, and Sample Code|here]].  &lt;br /&gt;
* Optional:  [[Media:EssentialC.pdf|Essential C]] is also a very nice intro to C.  Let us know about other online C resources you find particularly useful.&lt;br /&gt;
* [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
* [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* wiki info on [[Microchip PICs]]&lt;br /&gt;
* [[Media:PIC32MX5XX6XX7XX_Family_Data_Sheet.pdf|PIC32 Data Sheet]] (256 pages, 5 MB pdf)&lt;br /&gt;
* [http://www.microchip.com/TechDoc.aspx?type=ReferenceManuals PIC32 Family Reference Manual, by chapter], and an [[Media:61132B_PIC32ReferenceManual.pdf‎|earlier version]] that conveniently has all chapters in one document.  Lots of useful and detailed information on the PIC32 architecture and how the peripherals work, including detailed description of their SFRs.  Only certain parts of certain chapters will be assigned.  These chapters include quite a lot of example code.  &amp;#039;&amp;#039;&amp;#039;Be warned though, Microchip was not very careful when writing the sample code; some of it contains syntax errors, or values in registers that are incorrect.&amp;#039;&amp;#039;&amp;#039;  Even with this being the case, this is still a very useful document.&lt;br /&gt;
* PIC32MX Peripheral Library (included as a .chm file under &amp;quot;Program Files\Microchip\MPLAB C32\doc&amp;quot; with your C32 compiler installation)&lt;br /&gt;
&lt;br /&gt;
Useful, but not required:&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Programming-32-bit-Microcontrollers-Exploring-Technology/dp/0750687096/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1294091438&amp;amp;sr=8-1-spell Programming 32-bit Microcontrollers in C:  Exploring the PIC32] by Lucio Di Jasio.  This is an easy to read and informative exploration of the PIC32.&lt;br /&gt;
* MPLAB C32 Libraries Guide and MPLAB C32 User Guide, included under &amp;quot;doc&amp;quot; of your C32 compiler installation&lt;br /&gt;
* Other C resources, such as [http://publications.gbdirect.co.uk/c_book/ online] as well as this [[Media:CBook.pdf|pdf version]] of &amp;quot;The C Book,&amp;quot; and the classic [http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=sr_1_1?s=books&amp;amp;ie=UTF8&amp;amp;qid=1294091625&amp;amp;sr=1-1 C Programming Language] reference book by Kernighan and Ritchie&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Grading ==&lt;br /&gt;
&lt;br /&gt;
Grades will be approximately 40% quizzes and 60% assignments and L-comps (including the final project).  We will have short quizzes once a week at the beginning of class covering material on the previous assignment.  Bring a sheet of paper you can turn in with your quiz answers.  (Your lowest quiz score,  assignment score, and L-comp score will be dropped.)  We will have a final project and demo in lieu of a final exam.&lt;br /&gt;
&lt;br /&gt;
All quizzes, assignments, and L-comps have equal weight, regardless of how many points they are graded out of.  If one assignment is graded out of 20 points, and the next out of 40, the formula for calculating your total grade for these two assignments would be 0.5*(score1/20) + 0.5*(score2/40).&lt;br /&gt;
&lt;br /&gt;
== Homework Submission ==&lt;br /&gt;
&lt;br /&gt;
All homework (except for the first class, when paper solutions should be turned in at the beginning of class) will be submitted using the [https://northwestern.instructure.com/courses/9664 Canvas Course Management System].  Homework should be submitted by 11 AM on the day it is due (i.e., before the first section of the day).  Late homework will not be accepted.&lt;br /&gt;
&lt;br /&gt;
Here are a few guidelines/tips associated with homework submissions:&lt;br /&gt;
&lt;br /&gt;
* Upload files individually. No zip archives!&lt;br /&gt;
&lt;br /&gt;
* Submit written responses as PDFs. &lt;br /&gt;
&lt;br /&gt;
* If you upload a PDF of handwritten work, make sure that the text appears clearly and the picture is oriented portrait style. &amp;quot;Cam Scanner&amp;quot; for Android and iOS phones easily scans images and compiles them into a single PDF file. &lt;br /&gt;
&lt;br /&gt;
* Unless otherwise stated, L-Comps should be in a single file.&lt;br /&gt;
&lt;br /&gt;
* When asked to submit C code for a given programming assignment, we are only concerned with receiving the relevant source files, i.e., all *.c and *.h files.  We do not want entire IDE/MPLAB X projects or executables/object files. &lt;br /&gt;
&lt;br /&gt;
* When writing your responses, please follow any instructions on how to write your response.  For example, if we ask for a snippet of code, please do not submit your entire C program with header files and a main routine.  We typically are only expecting a few lines of code that solve the problem.&lt;br /&gt;
&lt;br /&gt;
* Be neat and make sure your answers are easy to follow.  Messy hard-to-follow assignments make TAs cranky, and you don&amp;#039;t want cranky TAs grading your assignment!&lt;br /&gt;
&lt;br /&gt;
* It helps both us and you if you format your code nicely.  Clean looking code is easier for us to grade and easier for you to debug.  Text editors with IDEs such as Netbeans and MPLAB X have tools for auto-formatting code.  For example, highlighting a region and hitting Alt+Shift+f (Linux and Windows) will format that region according to your local formatting preferences.&lt;br /&gt;
&lt;br /&gt;
* When you compile your code, pay attention to any compiler warnings.  They are there for a reason!  You should be able to eventually get your code to produce no warnings.  Often if a piece of code is not working, the warnings will give a clue as to why.  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Note that in &amp;quot;project properties&amp;quot; in both IDEs, it is possible to generate &amp;quot;Additional warnings.&amp;quot;  This tells your compiler to be more strict about the rules of C.  The better you adhere to these rules, the more likely it is that your code will compile.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schedule ==&lt;br /&gt;
&lt;br /&gt;
This course is (partially) &amp;quot;flipped&amp;quot;:  you watch video lectures and do readings in advance of class, and during class, you should have plenty of opportunity for questions and interaction with the instructors and TAs as you work on assignments.  The purpose of this is to try to maximize the value of the class time.  In a typical lecture, 80% of the material is the same every time it is given, and the other 20% is interactive and variable based on student questions.  In a flipped class, we hope to flip this percentage, to better tailor the class to student needs.  You will have time with the instructors while your brains are actually on and working on the material (not just scribbling notes), the times when you are most likely to have questions.  Making the video lectures available should also allow you to spend more or less time on the lecture portion, depending on your prior background.  If the material is difficult for you, you can pause or rewind.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Please keep track of any questions you have as you watch the videos!&amp;#039;&amp;#039;&amp;#039; Bring these questions to class; it will make for a livelier classroom.  &lt;br /&gt;
&lt;br /&gt;
All readings, videos, and C code can be found at this page:  [[ME 333 Readings, Videos, and Sample Code|&amp;#039;&amp;#039;&amp;#039;ME 333 Readings, Videos, and Sample Code&amp;#039;&amp;#039;&amp;#039;]].  We will cover almost all of the Appendix, a Crash Course in C, in the first 1.5 weeks of class, so you can work ahead and do all the readings, watch all the videos, and do all the problems, if you have time over the break.  But at a minimum, you must do the winter break assignment.  &lt;br /&gt;
&lt;br /&gt;
After the first two weeks of class, we will have video lecture comprehension questions (L-comps) due before every class, assignments due every Tuesday, and quizzes every Thursday (on the material covered in the assignment turned in on Tuesday).  L-comps and assignments are turned in using Canvas before 11 AM the day of the class.  The weekly rhythm will be:&lt;br /&gt;
&lt;br /&gt;
* before Tuesday:  turn in assignment on material from previous week and L-comps on videos for the next class&lt;br /&gt;
* Tuesday in class:  discuss assignment, brief recap and Q&amp;amp;A on new videos, start on next assignment&lt;br /&gt;
* before Thursday:  turn in L-comps on videos for next class&lt;br /&gt;
* Thursday in class:  brief quiz on material in assignment turned in on Tuesday, recap and discuss videos, continue with asignment&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Winter Break&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Reading due for first class&amp;#039;&amp;#039;&amp;#039;:  pages 1-9 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Videos&amp;#039;&amp;#039;&amp;#039;:  1-7 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]].  Answer the lecture comprehension (L-comp) questions underneath each of the videos (you may need to click to expand).  You will turn in a paper version of your answers at the beginning of the first class.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment 1&amp;#039;&amp;#039;&amp;#039;:  Also do exercises 1-4, 6-8, 10-11, 14-15 of A Crash Course in C.  Bring your laptop to class and demonstrate your HelloWorld.c program.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (T 1/6)  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment due&amp;#039;&amp;#039;&amp;#039;:  Hand in a paper version of your L-comp and other solutions at the beginning of class.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 1.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos and readings&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercises 16-17, 19-20, 25-26, 28-30, 32.  Pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 8-16 of a Crash Course in C.  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video.  You need to click it to expand it.&lt;br /&gt;
: Reading:  Through page 23 of a Crash Course in C, and the rest as reference&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (Th 1/8)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 32.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.   If you have not yet, pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  17 of a Crash Course in C.&lt;br /&gt;
: Reading:  Rest of a Crash Course in C as reference&lt;br /&gt;
: Pizza and Programming Party, Monday Jan 12, 6:00-8:00, Tech B211 (ME conference room)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (T 1/13)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class assignment:  Creating your own helper library&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  none&lt;br /&gt;
: Reading:  [[Media:book-current.pdf|Chapter 1, Quickstart]]&lt;br /&gt;
: Assignment: Download, install, and compile all software as indicated through the end of Chapter 1.3.  Make sure you are using the new version of the book, which so far has only chapter 1 and the appendix.  You may need to &amp;quot;refresh&amp;quot; your browser while displaying the book, or clear your browser cache, to make sure you are seeing a January 2015 version of the book.  &amp;#039;&amp;#039;&amp;#039;Note to PC users:  Skip Chapter 1.2.  The nu32utility for the PC needs to be updated for you.&amp;#039;&amp;#039;&amp;#039; [https://it.mccormick.northwestern.edu/matlab/student_license/index.php Purchase your ME 333 kit if you have not yet.]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 4&amp;#039;&amp;#039;&amp;#039; (Th 1/15)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; On C. [[Media: Quiz 1 ME333.pdf| Quiz 1 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Distribute hardware and execute quickstart&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 1-4 from Chapter 2.&lt;br /&gt;
: Reading:  Complete Chapter 1 (quickstart) and Chapter 2.  Download the new version of the notes which should have the Appendix and Chapters 1 and 2.  Make sure you have completed the quickstart fully in Chapter 1, or else you will be behind for Tuesday&amp;#039;s class.  Get help from friends or office hours, and keep track of any problems you had, so we can make suggestions for future students.&lt;br /&gt;
: Assignment due at the beginning of class on Tues 1/20:  Problems 3-16 of Chapter 2.  You will need the [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]] and the [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]].&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;:  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment and videos discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Go over PIC32 software&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due Tues 1/27&amp;#039;&amp;#039;&amp;#039;:  Chapter 3, problems 1-9, and Chapter 4, problems 1, 2, and 4.  In class demo next Tuesday:  problem 5.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps) due Thurs:  All of Chapter 3.  &amp;#039;&amp;#039;&amp;#039;Please note&amp;#039;&amp;#039;&amp;#039;:  Videos 2, 3, and 4 make reference to including plib.h.  Instead, our new simplePIC.c program includes xc.h.  In video 3, you can ignore the plib.h part and focus on the xc.h part that comes later.  Also, the compiling command in video 4 is a bit different than what you see in the book, but there are no significant differences.&lt;br /&gt;
: Reading:  Complete Chapter 3.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief discussion of chapter 2 exercises and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapter 2.&amp;#039;&amp;#039;&amp;#039; [[Media: Quiz_2_ME333.pdf| Quiz 2 Solutions.]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of videos and L-comps on Chapter 3&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;New Makefile!&amp;#039;&amp;#039;&amp;#039;  Download from [[Pic32book|here]].&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start Chapter 4&amp;#039;&amp;#039;&amp;#039;.  Note three added homework exercises, from Chapter 4.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;talkingPIC demo&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Video and L-comp due Tues:  Chapter 4.&lt;br /&gt;
: Reading:  Complete Chapter 4.&lt;br /&gt;
: Added assignment exercises, due Tuesday:  Chapter 4 problems 1, 2, and 4.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;:  Turn in assignment on Chapters 3 and 4.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo of problem 5 of Chapter 3&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of homework solutions&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of video and L-comp&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief intro to Chapter 5&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Next assignment&amp;#039;&amp;#039;&amp;#039;:  Chapter 4:  Wiring the LCD and using LCDwrite.c.  Chapter 5 (use no optimization for all exercises): Exercises 4, 5, 7(b,c), 8, 11.  Chapter 6:  Exercises 1, 2, 4, 5, 6, 8, 9, 13, 14, 17, 19.  (Plus one more problem given on Thursday.)  Demo in class next Tuesday:  Chapter 6 exercise 19.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Download the [[http://hades.mech.northwestern.edu/index.php/ME_333_Readings,_Videos,_and_Sample_Code#Chapter_4:_Using_Libraries LCD library]] and wire and use the LCD (chapter 4)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 5 &lt;br /&gt;
: Reading:  Complete Chapter 5.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (Th 1/29)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapters 3 and 4.&amp;#039;&amp;#039;&amp;#039; [[Media: Quiz3solutions.pdf|Quiz 3 Solutions.]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of Chapter 5 videos and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief intro to Chapter 6&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue with assignment.&amp;#039;&amp;#039;&amp;#039; Added problem Ch 5 Ex 5 (use no optimization)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 6&lt;br /&gt;
: Reading:  Complete Chapter 6&lt;br /&gt;
: Finish assignment by 11 AM Tuesday&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (T 2/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;: Turn in assignment from last Tuesday/Thursday and the L-comps&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Demo of Chapter 6 exercise 19.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion on homework and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief intro to digital i/o, counter/timers, output compare, analog input&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start next assignment due Tues 2/10.&amp;#039;&amp;#039;&amp;#039; Chapter 12, feedback control of LED intensity, through 12.3.  Demo in class on Tuesday:  your code from chapter 12.3 with your nScope showing the sensor voltage at Vout.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapters 7 and 8&lt;br /&gt;
: Reading:  Chapters 7 and 8&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;For future classes:  bring your nScope and resistors, caps, wire, multimeter, etc.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (Th 2/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapters 5 and 6.&amp;#039;&amp;#039;&amp;#039; [[Media: Quiz4solutions.pdf|Quiz 4 Solutions.]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapters 9 and 10&lt;br /&gt;
: Reading:  Chapters 9 and 10&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (T 2/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Demo of Chapter 12.3 code.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of last week&amp;#039;s homework and L-comps due today&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start assignment due Tues 2/17.&amp;#039;&amp;#039;&amp;#039;  Download the code for Chapter 11 and finish the LED brightness control project.  Turn in plots from 12.5, 12.7, and 12.8.  Demo in class on Tuesday 2/17:  the final result from 12.8, showing performance to changing gains in real-time in Matlab.  Also, demo any extra credit from 12.9.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 11 on PID control&lt;br /&gt;
: Reading:  Chapter 11&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (Th 2/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapters 7-10.&amp;#039;&amp;#039;&amp;#039;  You do not need to memorize SFR names, but you are responsible for understanding the basics of how the peripherals work, at the level of the chapter summaries and the videos.  [[Media: Quiz5solutions.pdf|Quiz 5 Solutions.]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;PID control and continuing the assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 13 on brushed DC motors&lt;br /&gt;
: Reading:  Chapter 13&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (T 2/17)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Demo of LED brightness control&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of turned-in homework&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start assignment due Tues 2/24:&amp;#039;&amp;#039;&amp;#039;  Problems 2-7 of Chapter 13 on DC motors&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: No videos&lt;br /&gt;
: Reading:  Finish chapter 13&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (Th 2/19)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapters 11 and 12,&amp;#039;&amp;#039;&amp;#039; PID control and LED brightness control. [[Media: Quiz 6 ME333.pdf| Quiz 6 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 14 on gearing and motor sizing&lt;br /&gt;
: Reading:  Chapter 14&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (T 2/24)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of turned-in homework&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start assignment due Tues 3/3&amp;#039;&amp;#039;&amp;#039;.  Exercise 4 of Chapter 14, Gearing and Motor Sizing, Exercises 1-16 of Chapter 15, DC Motor Control, and complete the &amp;quot;Establishing Communication&amp;quot; portion of the final project (Chapter 16.4.2).  Demo on Tuesday 3/3:  demonstrating your new menu command from Chapter 16.4.2, showing you can create the requested menu command.  Except for Exercise 4 of Chapter 14, you should do all work on your own.  Indicate on your assignment writeup the people you worked with for Exercise 4.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 15, DC Motor Control&lt;br /&gt;
: Reading:  Chapter 15&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (Th 2/26)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapter 13, Brushed Permanent Magnet DC Motors. [[Media: Quiz 7 ME333.pdf| Quiz 7 Solutions]]&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: No videos&lt;br /&gt;
: Begin reading Chapter 16&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17&amp;#039;&amp;#039;&amp;#039; (T 3/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Demo of menu portion of final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of assignment just turned in&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Next assignment:  Final project, part 2, due Tues 3/10&amp;#039;&amp;#039;&amp;#039;:  through chapter 16.4.6, on &amp;quot;Motor.&amp;quot;  Implement the menu items for &lt;br /&gt;
: * encoder reset&lt;br /&gt;
: * encoder ticks&lt;br /&gt;
: * encoder angle&lt;br /&gt;
: * query the current state&lt;br /&gt;
: * get current sensor reading in mA&lt;br /&gt;
: * set the PWM&lt;br /&gt;
Demonstrate in class next Tuesday each of these menu items and show that they work properly.  Turn in your well commented .c and .h files as individual files.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: No videos&lt;br /&gt;
: Continue with Chapter 16&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (Th 3/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Final Quiz, on Chapter 15 (no chapter 14 or 16)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue with final assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039;  On C&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Intro to Programming the PIC32&amp;#039;&amp;#039;&amp;#039;:  &lt;br /&gt;
:: Download the following documentation:&lt;br /&gt;
:: * [[Media:book-current.pdf|Chapter 1]]&lt;br /&gt;
:: * [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
:: * [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&lt;br /&gt;
:: When installing the software, you may need to update your Java for the MPLAB X IDE.  Answer &amp;quot;yes&amp;quot; if you are asked if you want to update your path when installing anything.  Mac OS X may not allow you to install since the software is from an &amp;quot;untrusted&amp;quot; developer.  You can override that by control-clicking on the dmg and choosing &amp;quot;Open&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment:&amp;#039;&amp;#039;&amp;#039;  Download and install all of the above.  &lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Assignment:  Finish the downloads and installations, as described above.&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_2:_Looking_Under_the_Hood:_Hardware|Videos 1-4 of Chapter 2]].  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video (click on it to expand it).&lt;br /&gt;
: Reading:  Chapter 1 (you can ignore 1.4.2, 1.5, and 1.6.2) and Chapter 2.  If you get the programs in 1.4.1 and 1.6.1 working, great!  If not, ask questions on the forum or we&amp;#039;ll do it in the next class.  Don&amp;#039;t destroy your board!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas]).  &amp;#039;&amp;#039;&amp;#039;No separate assignment to hand in today!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  We will make sure that everyone can run simplePIC.c and talkingPIC.c.  No demo grades today.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Problems 3-16 of Chapter 2 and problems 1-4, 6-8, 9 (parts a, c, d, and f only), and 10 of Chapter 3. Demo next Tuesday:  Chapter 3 exercise 6.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  video 17 of a Crash Course in C and all four videos for Chapter 3&lt;br /&gt;
: Reading:  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_3:_Looking_Under_the_Hood:_Software|Chapter 3]].&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on Chapter 2 L-comps.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 4 (only one video!)&lt;br /&gt;
: Reading:  Chapter 4&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 6 of Chapter 3.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercises 1, 2, and 3 (a) and (b), and Chapter 5 exercises 3, 5, 7, and 8.  Demo next Tuesday:  Chapter 4 exercise 3(b).&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 5 (2 videos)&lt;br /&gt;
: Reading:  Chapter 5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (Th 1/29)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 6 (5 videos)&lt;br /&gt;
: Reading:  Chapter 6&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (T 2/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercise 3(b).&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercises 1-8, 13, 15-18.  Demo next Tuesday:  Exercise 18.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 7 (3 videos)&lt;br /&gt;
: Reading:  Chapter 7&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (Th 2/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 8 (4 videos)&lt;br /&gt;
: Reading:  Chapter 8&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (T 2/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercise 18.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assignv2.pdf | Assignment Part 1]]&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): Chapter 9 (3 videos)&lt;br /&gt;
: Reading:  Chapter 9&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (Th 2/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday. [[Media: Quiz 5 ME333.pdf| Quiz 6 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assign_part2v2.pdf | Assignment Part 2]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:LEDPImain.c | Example Code for Part 2]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#PID_Control | On PID control]] (5 videos)&lt;br /&gt;
: Reading:  none&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (T 2/17)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18samplecode.txt | Sample Code]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:uart_plot.m | uart_plot.m]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_10:_Analog_Input | Analog input]] (1 video)&lt;br /&gt;
: Reading:  Chapter 10&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (Th 2/19)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday. [[Media: Quiz 6 ME333.pdf| Quiz 6 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:out.hex | out.hex]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:pid_plot.m | pid_plot.m ]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:comm.txt     | comm.txt ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_11:_Brushed_Permanent_Magnet_DC_Motors | Brushed Permanent Magnet DC Motors]] (7 videos!) &amp;#039;&amp;#039;&amp;#039;Notes:  (1) Because there are a lot of videos, these L-comps will count double of the usual L-comps.  (2) Because this material is critical to the in-class motor characterization we will do on Tuesday, it is critical you watch these videos.  Therefore, these L-comps are not eligible to be dropped as your lowest L-comps.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: Reading:  Chapter 11&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (T 2/24)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Square wave control of LED output.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Exercises 3-6 of Chapter 11. Begin exercise 4 in class.  For the experimental characterization (exercises 4-6), assume the motor is a 6 V motor and the coils can dissipate 5 W continuously (I^2 R) before overheating.  The encoder has 99 lines per revolution.  No demo on Tues of next week.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_12:_Motor_Sizing | Gears and Motor Sizing]] (3 videos)&lt;br /&gt;
: Reading:  Chapter 12&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (Th 2/26)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_13:_Motor_Control | Motor Control]] (4 videos)&lt;br /&gt;
: Reading:  Chapter 13&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17&amp;#039;&amp;#039;&amp;#039; (T 3/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  None.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin final project:&amp;#039;&amp;#039;&amp;#039;  Download:&lt;br /&gt;
* [[Media:MAX9918DS.pdf | MAX9918 current sensor data sheet]]&lt;br /&gt;
* [[Media:A3909DS.pdf | A3909 dual h-bridge motor driver data sheet]]&lt;br /&gt;
* [[Media:Final-Assignment-2014-part1.pdf | Final Assignment Part 1]]&lt;br /&gt;
* [[Media:ME333 Demo.zip | Demonstration]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Finish wiring H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  Complete Chapter 13.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (Th 3/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Demonstrate you can successfully use your matlab diagnostics code to interact with the H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday (&amp;#039;&amp;#039;&amp;#039;last quiz!&amp;#039;&amp;#039;&amp;#039;)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;.  Due Tuesday:  show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
* [[Media:me333final.zip | Final Project ]]&lt;br /&gt;
* [[Media:refplots-2014.pdf | Examples of motion reference trajectories ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (T 3/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Nothing to turn in, just the demo...&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;   Show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* [[Media:ME333FinalProjectTurnIn.pdf | Final Project Writeup ]]&lt;br /&gt;
* [[Media:ME333FinalProjectExtraCredit.pdf | Final Project Extra Credit ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (Th 3/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; No quiz!&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Final Demo&amp;#039;&amp;#039;&amp;#039;:  Monday 3/16, 3-5 PM or Wednesday 3/18, 9-11 AM. Electronic submission by Wednesday 3/19, 11 AM.&lt;br /&gt;
&lt;br /&gt;
== nScope and Lab Kit ==&lt;br /&gt;
&lt;br /&gt;
There are two versions of the encoder-decoder chip in the encoder counting circuit. Use the following wiring for your chip:&lt;br /&gt;
&amp;lt;table border=&amp;quot;0&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&lt;br /&gt;
[[Image:decoder1.png|thumb|300px]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:decoder2.png|thumb|300px]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Below is the wiring connection for the motor we will use in class. The encoder disc has 334 lines, meaning that there are 334 periods of a square wave on channels A and B for each motor revolution.  If each rising and falling edge is counted (4x decoding of the quadrature signal), then the encoder gives 334 x 4 = 1336 counts per revolution, or 360/1336 = 0.269 degrees of resolution.&lt;br /&gt;
&lt;br /&gt;
[[Image:motor-and-encoder.png|motor-and-encoder.png]]&lt;br /&gt;
&lt;br /&gt;
The homeworks and projects in this course will require an nScope. To download the nScope software, visit the [http://nscope.org/ nScope website].&lt;br /&gt;
&lt;br /&gt;
You should have the following components in your lab kit. If you are missing or are short of anything, there will be a cart in class with extra parts, or see Nick in Ford B100.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Picture&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Description&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Link&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:NU32_5.jpg|thumb|200px|The NU32|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;NU32 in 2 breadboards&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:USBminicable.jpg|thumb|200px|USB Cable|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;1 m USB cable, A male to mini B male&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:NU32_usbcable.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32_6vpower.jpg|thumb|200px|6V Power Supply|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;6V wall power supply, 1A, 2.1mm ID x 5.5mm OD, 6W, center positive.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:powersupply6v.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:LCD16x2.jpg|thumb|200px|16x2 Character LCD|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;LCD, 16x2 characters, using parallel communication&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:LCD16x2_HJ1602A.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v2_pushbutton.jpg|thumb|200px|Pushbutton|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Momentary normally open (NO) pushbutton.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:pushbutton.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Resistors&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;A few of the following 1/4W resistors: (in ohms) 10, 33, 100, 300, 1k, 3.3k, 10k, 33k, 100k, 330k, 1M&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Capacitors&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;A few of the following capacitors: (in F) 10p, 100p, 1n, 0.01u, 0.1u, 1u &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Potentiometers&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;2 potentiometers: 10k ohm &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;LEDs&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Red super bright 5mm LED &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:SuperBrightRedLED.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Phototransistors&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;SFH 310 visible spectrum phototransistor &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:Phototransistor_visible_310_2_3.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v2_wirestrippers.jpg|thumb|200px|Wirestrippers|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Wire strippers, for 30, 28, 26, 24, 22, and 20 AWG wire. Can also be used as pliers and to cut wire. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;These will get dull or mashed up if you try to cut anything other than wire&amp;#039;&amp;#039;&amp;#039; &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[http://www.sparkfun.com/products/8696 Sparkfun wire strippers]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v2_wire.jpg|thumb|200px|Wire|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;6 colors of ~6&amp;#039; lengths of 22 AWG solid core wire (red, white, yellow, green, black, blue)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;no link&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v5_multimeter.jpg|thumb|200px|DT9205A Multimeter|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Any small multimeter, it doesn&amp;#039;t have to be this brand. &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v5_uusb.jpg|thumb|200px|Micro USB cable|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;A micro USB cable.&amp;#039;&amp;#039;&amp;#039; &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nscope_breadboard.jpg|thumb|200px|nScope in a breadboard|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;nScope in a 830 tie points breadboard.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[http://nscope.org]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
Q: Do I need to know the C language to take this course?&lt;br /&gt;
&lt;br /&gt;
A: No. But if you already know C, there is still plenty else in this course for you. If you already know C, know how to use microcontrollers for real-time control, and have a good understanding how common sensors and actuators work and how to interface to them, this course may not be for you. Consider taking ME 433 Advanced Mechatronics in the spring quarter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: Is there an independent project?&lt;br /&gt;
&lt;br /&gt;
A: There is no large independent project. There will be a two-week project at the end of the course, but there will be no machining. For a more significant project, do a quarter-long project in ME 433 Advanced Mechatronics, offered in the spring quarter. ME 333 is good preparation for ME 433.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: What kind of laptop do I need?&lt;br /&gt;
&lt;br /&gt;
A: You need a laptop with at least 2 USB ports.  Any operating system is fine.&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=File:Quiz_7_ME333.pdf&amp;diff=23177</id>
		<title>File:Quiz 7 ME333.pdf</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=File:Quiz_7_ME333.pdf&amp;diff=23177"/>
		<updated>2015-03-06T21:42:49Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=23125</id>
		<title>ME 333 Introduction to Mechatronics (Archive Winter 2016)</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=23125"/>
		<updated>2015-02-26T01:53:55Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Schedule */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Winter Quarter 2015&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;First day of class is Tuesday January 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Section 20:  Prof. Kevin Lynch, T Th, 11:00-12:20, Tech M345&lt;br /&gt;
* Section 21:  Prof. Nick Marchuk (nick.marchuk@gmail.com), T Th, 12:30-1:50, Tech M345&lt;br /&gt;
* TAs:  Ben Richardson (BenjaminRichardson2013@u.northwestern.edu) and Zack Woodruff (jzwoodruff@u.northwestern.edu)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Pizza and Programming Party&amp;#039;&amp;#039;&amp;#039;, Monday Jan 12, 6:00-8:00, Tech B211 (ME conference room).  Get help, or help others, on the programming assignment!  Sponsored by [https://asg.northwestern.edu/student-faculty-interaction-grants/ Student-Faculty Interaction Grants] (now accepting applications for your events!)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Final demo&amp;#039;&amp;#039;&amp;#039; (in lieu of final exam):  Monday Mar 16 3-5 PM (12:30-1:50 section) and Wednesday Mar 18 9-11 AM (11-12:20 section) &lt;br /&gt;
* Office Hours:  Mon 2-3 (Zack Woodruff, Tech B230); Tues 3-4 (3:30-4:30 on 2/24; Prof. Lynch, Tech B222); Wed 3-4 (Ben Richardson, Tech B230); every day 4-5 (Prof. Marchuk, Mechatronics Lab, Ford B100)&lt;br /&gt;
&lt;br /&gt;
* Quick links:&lt;br /&gt;
** [https://canvas.northwestern.edu/courses/9664 Canvas Course Management System]&lt;br /&gt;
** [[ME 333 Readings, Videos, and Sample Code|ME 333 Readings, Videos, and Sample Code]]&lt;br /&gt;
** [https://it.mccormick.northwestern.edu/matlab/student_license/index.php Purchase Your ME 333 Kit]&lt;br /&gt;
** [https://docs.google.com/forms/d/1V5VmjJdQGrsS3PjslubUS3cHMgHWLJCCPHxrewsFAyA/viewform Send a question for possible discussion in the next class] (use the Canvas discussion group for an online discussion)&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** [https://groups.google.com/a/u.northwestern.edu/forum/#!forum/me333-2014.me Google discussion forum]&lt;br /&gt;
** [[NU32: What is in the NU32 Kit|NU32 kit]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Purpose of this Course ==&lt;br /&gt;
&lt;br /&gt;
The purpose of this course is to &amp;#039;&amp;#039;&amp;#039;provide tools that help you express your creativity&amp;#039;&amp;#039;&amp;#039;.  Maybe you want to build a robot, or a piece of kinetic art, or an automatic ball-throwing device to entertain your dog; maybe you&amp;#039;ve identified a market for a new smart product and you&amp;#039;d like to prototype the device.  This course provides fundamentals of mechatronics to give you confidence to take on these projects.  You are encouraged to take what you learn in this course and apply it in the project-based ME 433 Advanced Mechatronics course, Design Competition, or independent projects.&lt;br /&gt;
&lt;br /&gt;
== Approximate Syllabus ==&lt;br /&gt;
&lt;br /&gt;
This course is for students that want to build microprocessor-controlled electromechanical devices.  &lt;br /&gt;
&lt;br /&gt;
To do this, ME 333 focuses on three topics: (1) general C programming; (2) Microchip PIC microcontroller architecture and C programming specific to the PIC (e.g., using the PIC&amp;#039;s peripherals, such as analog inputs, digital I/O, counters/timers, comm ports, etc.); and (3) interfacing the PIC to sensors and actuators, some theory of sensor and actuator operation, and interface circuitry and signal processing. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;You will do a lot of programming in this course!&amp;#039;&amp;#039;&amp;#039;  If you are certain you hate programming, then this is not the course for you.  But knowing how to program is very useful for any modern engineer.  The language we will use is C, a fairly low-level language that works well for microcontrollers, which is more portable and not nearly as painful and low-level as assembly language.  If you don&amp;#039;t know C, that&amp;#039;s not a problem, most students don&amp;#039;t before taking ME 333; but you should plan to learn it, and rather quickly.  You will have all the materials you need to start learning C before class starts, and &amp;#039;&amp;#039;&amp;#039;the first assignment on C is due on the first day of class&amp;#039;&amp;#039;&amp;#039;!  The reason:  even though we start out with C, that&amp;#039;s not the main goal of this course.  The main goal is to teach you about microcontrollers and mechatronics.  Plus some students already have C background.&lt;br /&gt;
&lt;br /&gt;
You will bring your laptop to each class.  As the quarter progresses, we will be handing out other equipment that you will need to bring to class, such as the NU32 development board that breaks out the [http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en545660 PIC32MX795F512L] microcontroller.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;It is essential you do the assigned reading and watch the videos in advance of class.&amp;#039;&amp;#039;&amp;#039;  You will have an assignment and/or lecture comprehension questions (L-comps) due before every class, turned in electronically on Canvas.  (This includes the very first day of class!)  Once a week we will have a short quiz.  Most classes will have a combination of a brief review, Q&amp;amp;A, and working individually or in small groups on problems while the instructors help answer any questions.&lt;br /&gt;
&lt;br /&gt;
Topics we will cover, time depending, include:&lt;br /&gt;
&lt;br /&gt;
* introduction to C programming&lt;br /&gt;
* introduction to the PIC32 hardware, and programming the PIC32 in C&lt;br /&gt;
* digital I/O&lt;br /&gt;
* counters/timers and interrupts&lt;br /&gt;
* analog input&lt;br /&gt;
* sensor smorgasbord&lt;br /&gt;
* digital signal processing:  filters and FFTs&lt;br /&gt;
* analog output and pulse-width modulation&lt;br /&gt;
* brushed permanent magnet DC motors:  theory and control&lt;br /&gt;
* stepper motors and RC servo motors&lt;br /&gt;
* communication by SPI, I2C, and RS-232&lt;br /&gt;
&lt;br /&gt;
== Checklist to Complete Before the First Day of Class ==&lt;br /&gt;
&lt;br /&gt;
Attendance at the first day of class is mandatory.  By the first day of class, you should:&lt;br /&gt;
&lt;br /&gt;
* Complete the reading and assignment 1, which is &amp;#039;&amp;#039;&amp;#039;due the first day of class!&amp;#039;&amp;#039;&amp;#039;  &amp;lt;!-- In fact, the first two weeks of assignments are already posted, so you are welcome to complete them all over the break and coast through the first two weeks of class.--&amp;gt;  The first assignments are designed to get you up to speed on the C programming language, which we will use throughout the course.&lt;br /&gt;
* Have a laptop with at least 2 USB ports.  Any operating system is fine.  One port will be used to program and communicate with your PIC microcontroller, and the other will be used for your portable oscilloscope.  &lt;br /&gt;
* Be prepared to buy your [[NU32: What is in the NU32 Kit|class kit]], consisting of the portable nScope oscilloscope, the NU32 PIC32 development board, and lots of other goodies.  Price $125 if you are starting from scratch; $75 if you already have the nScope.  &lt;br /&gt;
&amp;lt;!-- * Be able to solve circuit problems similar to those on the practice problem set and last year&amp;#039;s quiz at the bottom of [[ME_333_Circuits_Review_Material|this page]].  Be prepared for a quiz on this material in the second week of class.  We will only spend one class period reviewing this material.--&amp;gt;&lt;br /&gt;
&amp;lt;!-- * Buy your class kit [http://it.mccormick.northwestern.edu/matlab/student_license/login.php &amp;#039;&amp;#039;&amp;#039;here&amp;#039;&amp;#039;&amp;#039;].  If you already have the oscilloscope and multimeter from this year&amp;#039;s ME 233 offering, you should choose &amp;quot;ME 333 (w/o ME 233 equipment)&amp;quot; for the price of $75.  If you do not have the oscilloscope and multimeter, you should choose &amp;quot;ME 333 (w/ ME 233 equipment)&amp;quot; for the price of $135.  You will not be able to start the course until you have completed the purchase of your kit.  If you decide to drop the course, you will be refunded the purchase price upon return of all the equipment in working shape. --&amp;gt;&lt;br /&gt;
&amp;lt;!--* &amp;#039;&amp;#039;&amp;#039;If you are not already comfortable with the C language, or if you do not already have a C compiler installed on your laptop, this step is recommended before the first day of class.  This will give you a headstart on learning C.  If you don&amp;#039;t complete this before the first day of class, you will need to do it before the second class.&amp;#039;&amp;#039;&amp;#039;  Download and install the GCC GNU compiler collection and the Netbeans IDE (Integrated Development Environment) following the instructions [[Installing_a_C_Compiler_and_IDE|here]].  Verify that you can compile and run the sample programs at the end of that page.  Read the comments in invest.c to find references to the [[Media:CrashCourseinC.pdf|Crash Course in C document]] and answer the questions to learn more about C. &amp;#039;&amp;#039;&amp;#039;If you have problems installing a C compiler and running the programs, then you can still get a headstart before the first class by focusing on reading the C programs and the Crash Course in C manual to understand how they work.&amp;#039;&amp;#039;&amp;#039;--&amp;gt; &amp;lt;!-- * Download and install software described on [[NU32v2: Software to Install|this page]].  --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Student Contract ==&lt;br /&gt;
&lt;br /&gt;
By signing up for this course, you agree to complete the checklist above before the course starts.  You agree to stay engaged during the class period; even if your computer is open, no facebook or other distractions that will lessen your contribution to the class.  You understand that learning from classmates, and helping classmates, is encouraged, up to the stage of conceptualizing solutions.  You are not allowed to fully complete a solution in a team.  You understand that plagiarism is not tolerated.  You will report instances of plagiarism you are aware of.  Plagiarism includes, but is not limited to:&lt;br /&gt;
&lt;br /&gt;
* Allowing another student to copy your work.&lt;br /&gt;
* Copying another student&amp;#039;s work, in whole or in part.&lt;br /&gt;
* Transforming copied sections of code or solutions to try to disguise their origin.&lt;br /&gt;
* Borrowing code or solutions from others not in the course, e.g., code found on the internet, without attribution.  Borrowing code found on the internet is acceptable if the source is clearly indicated in your code comments, and if you understand how the code works.&lt;br /&gt;
&lt;br /&gt;
On our part (faculty and TAs), we commit to do our best to provide you a curriculum and set of experimental materials to get you up to speed on sophisticated mechatronics integration as quickly and efficiently as possible, while giving you a foundation in concepts needed to go further in future projects and courses.&lt;br /&gt;
&lt;br /&gt;
== Prerequisite ==&lt;br /&gt;
&lt;br /&gt;
ME 233 Electronics Design or similar (EECS 221, 225) is required. You will be expected to analyze circuits with resistors, capacitors, inductors, diodes, transistors, and op-amps. You can find refresher material and a sample quiz at [[ME_333_Circuits_Review_Material|this page]].&lt;br /&gt;
&lt;br /&gt;
== Reading ==&lt;br /&gt;
&lt;br /&gt;
Required:&lt;br /&gt;
&lt;br /&gt;
* [[Media:book-current.pdf|A Crash Course in C]]:  A brief introduction to the C programming language.  Sample code from this appendix can be found [[ME 333 Readings, Videos, and Sample Code|here]].  &lt;br /&gt;
* Optional:  [[Media:EssentialC.pdf|Essential C]] is also a very nice intro to C.  Let us know about other online C resources you find particularly useful.&lt;br /&gt;
* [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
* [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* wiki info on [[Microchip PICs]]&lt;br /&gt;
* [[Media:PIC32MX5XX6XX7XX_Family_Data_Sheet.pdf|PIC32 Data Sheet]] (256 pages, 5 MB pdf)&lt;br /&gt;
* [http://www.microchip.com/TechDoc.aspx?type=ReferenceManuals PIC32 Family Reference Manual, by chapter], and an [[Media:61132B_PIC32ReferenceManual.pdf‎|earlier version]] that conveniently has all chapters in one document.  Lots of useful and detailed information on the PIC32 architecture and how the peripherals work, including detailed description of their SFRs.  Only certain parts of certain chapters will be assigned.  These chapters include quite a lot of example code.  &amp;#039;&amp;#039;&amp;#039;Be warned though, Microchip was not very careful when writing the sample code; some of it contains syntax errors, or values in registers that are incorrect.&amp;#039;&amp;#039;&amp;#039;  Even with this being the case, this is still a very useful document.&lt;br /&gt;
* PIC32MX Peripheral Library (included as a .chm file under &amp;quot;Program Files\Microchip\MPLAB C32\doc&amp;quot; with your C32 compiler installation)&lt;br /&gt;
&lt;br /&gt;
Useful, but not required:&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Programming-32-bit-Microcontrollers-Exploring-Technology/dp/0750687096/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1294091438&amp;amp;sr=8-1-spell Programming 32-bit Microcontrollers in C:  Exploring the PIC32] by Lucio Di Jasio.  This is an easy to read and informative exploration of the PIC32.&lt;br /&gt;
* MPLAB C32 Libraries Guide and MPLAB C32 User Guide, included under &amp;quot;doc&amp;quot; of your C32 compiler installation&lt;br /&gt;
* Other C resources, such as [http://publications.gbdirect.co.uk/c_book/ online] as well as this [[Media:CBook.pdf|pdf version]] of &amp;quot;The C Book,&amp;quot; and the classic [http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=sr_1_1?s=books&amp;amp;ie=UTF8&amp;amp;qid=1294091625&amp;amp;sr=1-1 C Programming Language] reference book by Kernighan and Ritchie&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Grading ==&lt;br /&gt;
&lt;br /&gt;
Grades will be approximately 40% quizzes and 60% assignments and L-comps (including the final project).  We will have short quizzes once a week at the beginning of class covering material on the previous assignment.  Bring a sheet of paper you can turn in with your quiz answers.  (Your lowest quiz score,  assignment score, and L-comp score will be dropped.)  We will have a final project and demo in lieu of a final exam.&lt;br /&gt;
&lt;br /&gt;
All quizzes, assignments, and L-comps have equal weight, regardless of how many points they are graded out of.  If one assignment is graded out of 20 points, and the next out of 40, the formula for calculating your total grade for these two assignments would be 0.5*(score1/20) + 0.5*(score2/40).&lt;br /&gt;
&lt;br /&gt;
== Homework Submission ==&lt;br /&gt;
&lt;br /&gt;
All homework (except for the first class, when paper solutions should be turned in at the beginning of class) will be submitted using the [https://northwestern.instructure.com/courses/9664 Canvas Course Management System].  Homework should be submitted by 11 AM on the day it is due (i.e., before the first section of the day).  Late homework will not be accepted.&lt;br /&gt;
&lt;br /&gt;
Here are a few guidelines/tips associated with homework submissions:&lt;br /&gt;
&lt;br /&gt;
* Upload files individually. No zip archives!&lt;br /&gt;
&lt;br /&gt;
* Submit written responses as PDFs. &lt;br /&gt;
&lt;br /&gt;
* If you upload a PDF of handwritten work, make sure that the text appears clearly and the picture is oriented portrait style. &amp;quot;Cam Scanner&amp;quot; for Android and iOS phones easily scans images and compiles them into a single PDF file. &lt;br /&gt;
&lt;br /&gt;
* Unless otherwise stated, L-Comps should be in a single file.&lt;br /&gt;
&lt;br /&gt;
* When asked to submit C code for a given programming assignment, we are only concerned with receiving the relevant source files, i.e., all *.c and *.h files.  We do not want entire IDE/MPLAB X projects or executables/object files. &lt;br /&gt;
&lt;br /&gt;
* When writing your responses, please follow any instructions on how to write your response.  For example, if we ask for a snippet of code, please do not submit your entire C program with header files and a main routine.  We typically are only expecting a few lines of code that solve the problem.&lt;br /&gt;
&lt;br /&gt;
* Be neat and make sure your answers are easy to follow.  Messy hard-to-follow assignments make TAs cranky, and you don&amp;#039;t want cranky TAs grading your assignment!&lt;br /&gt;
&lt;br /&gt;
* It helps both us and you if you format your code nicely.  Clean looking code is easier for us to grade and easier for you to debug.  Text editors with IDEs such as Netbeans and MPLAB X have tools for auto-formatting code.  For example, highlighting a region and hitting Alt+Shift+f (Linux and Windows) will format that region according to your local formatting preferences.&lt;br /&gt;
&lt;br /&gt;
* When you compile your code, pay attention to any compiler warnings.  They are there for a reason!  You should be able to eventually get your code to produce no warnings.  Often if a piece of code is not working, the warnings will give a clue as to why.  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Note that in &amp;quot;project properties&amp;quot; in both IDEs, it is possible to generate &amp;quot;Additional warnings.&amp;quot;  This tells your compiler to be more strict about the rules of C.  The better you adhere to these rules, the more likely it is that your code will compile.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schedule ==&lt;br /&gt;
&lt;br /&gt;
This course is (partially) &amp;quot;flipped&amp;quot;:  you watch video lectures and do readings in advance of class, and during class, you should have plenty of opportunity for questions and interaction with the instructors and TAs as you work on assignments.  The purpose of this is to try to maximize the value of the class time.  In a typical lecture, 80% of the material is the same every time it is given, and the other 20% is interactive and variable based on student questions.  In a flipped class, we hope to flip this percentage, to better tailor the class to student needs.  You will have time with the instructors while your brains are actually on and working on the material (not just scribbling notes), the times when you are most likely to have questions.  Making the video lectures available should also allow you to spend more or less time on the lecture portion, depending on your prior background.  If the material is difficult for you, you can pause or rewind.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Please keep track of any questions you have as you watch the videos!&amp;#039;&amp;#039;&amp;#039; Bring these questions to class; it will make for a livelier classroom.  &lt;br /&gt;
&lt;br /&gt;
All readings, videos, and C code can be found at this page:  [[ME 333 Readings, Videos, and Sample Code|&amp;#039;&amp;#039;&amp;#039;ME 333 Readings, Videos, and Sample Code&amp;#039;&amp;#039;&amp;#039;]].  We will cover almost all of the Appendix, a Crash Course in C, in the first 1.5 weeks of class, so you can work ahead and do all the readings, watch all the videos, and do all the problems, if you have time over the break.  But at a minimum, you must do the winter break assignment.  &lt;br /&gt;
&lt;br /&gt;
After the first two weeks of class, we will have video lecture comprehension questions (L-comps) due before every class, assignments due every Tuesday, and quizzes every Thursday (on the material covered in the assignment turned in on Tuesday).  L-comps and assignments are turned in using Canvas before 11 AM the day of the class.  The weekly rhythm will be:&lt;br /&gt;
&lt;br /&gt;
* before Tuesday:  turn in assignment on material from previous week and L-comps on videos for the next class&lt;br /&gt;
* Tuesday in class:  discuss assignment, brief recap and Q&amp;amp;A on new videos, start on next assignment&lt;br /&gt;
* before Thursday:  turn in L-comps on videos for next class&lt;br /&gt;
* Thursday in class:  brief quiz on material in assignment turned in on Tuesday, recap and discuss videos, continue with asignment&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Winter Break&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Reading due for first class&amp;#039;&amp;#039;&amp;#039;:  pages 1-9 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Videos&amp;#039;&amp;#039;&amp;#039;:  1-7 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]].  Answer the lecture comprehension (L-comp) questions underneath each of the videos (you may need to click to expand).  You will turn in a paper version of your answers at the beginning of the first class.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment 1&amp;#039;&amp;#039;&amp;#039;:  Also do exercises 1-4, 6-8, 10-11, 14-15 of A Crash Course in C.  Bring your laptop to class and demonstrate your HelloWorld.c program.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (T 1/6)  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment due&amp;#039;&amp;#039;&amp;#039;:  Hand in a paper version of your L-comp and other solutions at the beginning of class.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 1.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos and readings&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercises 16-17, 19-20, 25-26, 28-30, 32.  Pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 8-16 of a Crash Course in C.  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video.  You need to click it to expand it.&lt;br /&gt;
: Reading:  Through page 23 of a Crash Course in C, and the rest as reference&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (Th 1/8)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 32.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.   If you have not yet, pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  17 of a Crash Course in C.&lt;br /&gt;
: Reading:  Rest of a Crash Course in C as reference&lt;br /&gt;
: Pizza and Programming Party, Monday Jan 12, 6:00-8:00, Tech B211 (ME conference room)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (T 1/13)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class assignment:  Creating your own helper library&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  none&lt;br /&gt;
: Reading:  [[Media:book-current.pdf|Chapter 1, Quickstart]]&lt;br /&gt;
: Assignment: Download, install, and compile all software as indicated through the end of Chapter 1.3.  Make sure you are using the new version of the book, which so far has only chapter 1 and the appendix.  You may need to &amp;quot;refresh&amp;quot; your browser while displaying the book, or clear your browser cache, to make sure you are seeing a January 2015 version of the book.  &amp;#039;&amp;#039;&amp;#039;Note to PC users:  Skip Chapter 1.2.  The nu32utility for the PC needs to be updated for you.&amp;#039;&amp;#039;&amp;#039; [https://it.mccormick.northwestern.edu/matlab/student_license/index.php Purchase your ME 333 kit if you have not yet.]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 4&amp;#039;&amp;#039;&amp;#039; (Th 1/15)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; On C. [[Media: Quiz 1 ME333.pdf| Quiz 1 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Distribute hardware and execute quickstart&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 1-4 from Chapter 2.&lt;br /&gt;
: Reading:  Complete Chapter 1 (quickstart) and Chapter 2.  Download the new version of the notes which should have the Appendix and Chapters 1 and 2.  Make sure you have completed the quickstart fully in Chapter 1, or else you will be behind for Tuesday&amp;#039;s class.  Get help from friends or office hours, and keep track of any problems you had, so we can make suggestions for future students.&lt;br /&gt;
: Assignment due at the beginning of class on Tues 1/20:  Problems 3-16 of Chapter 2.  You will need the [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]] and the [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]].&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;:  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment and videos discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Go over PIC32 software&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due Tues 1/27&amp;#039;&amp;#039;&amp;#039;:  Chapter 3, problems 1-9, and Chapter 4, problems 1, 2, and 4.  In class demo next Tuesday:  problem 5.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps) due Thurs:  All of Chapter 3.  &amp;#039;&amp;#039;&amp;#039;Please note&amp;#039;&amp;#039;&amp;#039;:  Videos 2, 3, and 4 make reference to including plib.h.  Instead, our new simplePIC.c program includes xc.h.  In video 3, you can ignore the plib.h part and focus on the xc.h part that comes later.  Also, the compiling command in video 4 is a bit different than what you see in the book, but there are no significant differences.&lt;br /&gt;
: Reading:  Complete Chapter 3.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief discussion of chapter 2 exercises and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapter 2.&amp;#039;&amp;#039;&amp;#039; [[Media: Quiz_2_ME333.pdf| Quiz 2 Solutions.]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of videos and L-comps on Chapter 3&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;New Makefile!&amp;#039;&amp;#039;&amp;#039;  Download from [[Pic32book|here]].&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start Chapter 4&amp;#039;&amp;#039;&amp;#039;.  Note three added homework exercises, from Chapter 4.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;talkingPIC demo&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Video and L-comp due Tues:  Chapter 4.&lt;br /&gt;
: Reading:  Complete Chapter 4.&lt;br /&gt;
: Added assignment exercises, due Tuesday:  Chapter 4 problems 1, 2, and 4.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;:  Turn in assignment on Chapters 3 and 4.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo of problem 5 of Chapter 3&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of homework solutions&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of video and L-comp&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief intro to Chapter 5&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Next assignment&amp;#039;&amp;#039;&amp;#039;:  Chapter 4:  Wiring the LCD and using LCDwrite.c.  Chapter 5 (use no optimization for all exercises): Exercises 4, 5, 7(b,c), 8, 11.  Chapter 6:  Exercises 1, 2, 4, 5, 6, 8, 9, 13, 14, 17, 19.  (Plus one more problem given on Thursday.)  Demo in class next Tuesday:  Chapter 6 exercise 19.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Download the [[http://hades.mech.northwestern.edu/index.php/ME_333_Readings,_Videos,_and_Sample_Code#Chapter_4:_Using_Libraries LCD library]] and wire and use the LCD (chapter 4)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 5 &lt;br /&gt;
: Reading:  Complete Chapter 5.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (Th 1/29)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapters 3 and 4.&amp;#039;&amp;#039;&amp;#039; [[Media: Quiz3solutions.pdf|Quiz 3 Solutions.]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of Chapter 5 videos and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief intro to Chapter 6&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue with assignment.&amp;#039;&amp;#039;&amp;#039; Added problem Ch 5 Ex 5 (use no optimization)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 6&lt;br /&gt;
: Reading:  Complete Chapter 6&lt;br /&gt;
: Finish assignment by 11 AM Tuesday&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (T 2/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;: Turn in assignment from last Tuesday/Thursday and the L-comps&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Demo of Chapter 6 exercise 19.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion on homework and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief intro to digital i/o, counter/timers, output compare, analog input&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start next assignment due Tues 2/10.&amp;#039;&amp;#039;&amp;#039; Chapter 12, feedback control of LED intensity, through 12.3.  Demo in class on Tuesday:  your code from chapter 12.3 with your nScope showing the sensor voltage at Vout.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapters 7 and 8&lt;br /&gt;
: Reading:  Chapters 7 and 8&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;For future classes:  bring your nScope and resistors, caps, wire, multimeter, etc.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (Th 2/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapters 5 and 6.&amp;#039;&amp;#039;&amp;#039; [[Media: Quiz4solutions.pdf|Quiz 4 Solutions.]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapters 9 and 10&lt;br /&gt;
: Reading:  Chapters 9 and 10&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (T 2/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Demo of Chapter 12.3 code.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of last week&amp;#039;s homework and L-comps due today&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start assignment due Tues 2/17.&amp;#039;&amp;#039;&amp;#039;  Download the code for Chapter 11 and finish the LED brightness control project.  Turn in plots from 12.5, 12.7, and 12.8.  Demo in class on Tuesday 2/17:  the final result from 12.8, showing performance to changing gains in real-time in Matlab.  Also, demo any extra credit from 12.9.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 11 on PID control&lt;br /&gt;
: Reading:  Chapter 11&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (Th 2/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapters 7-10.&amp;#039;&amp;#039;&amp;#039;  You do not need to memorize SFR names, but you are responsible for understanding the basics of how the peripherals work, at the level of the chapter summaries and the videos.  [[Media: Quiz5solutions.pdf|Quiz 5 Solutions.]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;PID control and continuing the assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 13 on brushed DC motors&lt;br /&gt;
: Reading:  Chapter 13&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (T 2/17)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Demo of LED brightness control&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of turned-in homework&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start assignment due Tues 2/24:&amp;#039;&amp;#039;&amp;#039;  Problems 2-7 of Chapter 13 on DC motors&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: No videos&lt;br /&gt;
: Reading:  Finish chapter 13&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (Th 2/19)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapters 11 and 12,&amp;#039;&amp;#039;&amp;#039; PID control and LED brightness control. [[Media: Quiz 6 ME333.pdf| Quiz 6 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 14 on gearing and motor sizing&lt;br /&gt;
: Reading:  Chapter 14&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (T 2/24)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of turned-in homework&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start assignment due Tues 3/3&amp;#039;&amp;#039;&amp;#039;.  Exercise 4 of Chapter 14, Gearing and Motor Sizing, Exercises 1-16 of Chapter 15, DC Motor Control, and menu portion of the final project (to be distributed).  Demo on Tuesday 3/3:  the menu.  Except for Exercise 4 of Chapter 14, you should do all work on your own.  Indicate on your assignment writeup the people you worked with for Exercise 4.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 15, DC Motor Control&lt;br /&gt;
: Reading:  Chapter 15&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (Th 2/26)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapter 13, Brushed Permanent Magnet DC Motors&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: No videos&lt;br /&gt;
: Begin reading Chapter 16&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17&amp;#039;&amp;#039;&amp;#039; (T 3/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Demo of menu portion of final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039;  On C&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Intro to Programming the PIC32&amp;#039;&amp;#039;&amp;#039;:  &lt;br /&gt;
:: Download the following documentation:&lt;br /&gt;
:: * [[Media:book-current.pdf|Chapter 1]]&lt;br /&gt;
:: * [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
:: * [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&lt;br /&gt;
:: When installing the software, you may need to update your Java for the MPLAB X IDE.  Answer &amp;quot;yes&amp;quot; if you are asked if you want to update your path when installing anything.  Mac OS X may not allow you to install since the software is from an &amp;quot;untrusted&amp;quot; developer.  You can override that by control-clicking on the dmg and choosing &amp;quot;Open&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment:&amp;#039;&amp;#039;&amp;#039;  Download and install all of the above.  &lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Assignment:  Finish the downloads and installations, as described above.&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_2:_Looking_Under_the_Hood:_Hardware|Videos 1-4 of Chapter 2]].  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video (click on it to expand it).&lt;br /&gt;
: Reading:  Chapter 1 (you can ignore 1.4.2, 1.5, and 1.6.2) and Chapter 2.  If you get the programs in 1.4.1 and 1.6.1 working, great!  If not, ask questions on the forum or we&amp;#039;ll do it in the next class.  Don&amp;#039;t destroy your board!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas]).  &amp;#039;&amp;#039;&amp;#039;No separate assignment to hand in today!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  We will make sure that everyone can run simplePIC.c and talkingPIC.c.  No demo grades today.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Problems 3-16 of Chapter 2 and problems 1-4, 6-8, 9 (parts a, c, d, and f only), and 10 of Chapter 3. Demo next Tuesday:  Chapter 3 exercise 6.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  video 17 of a Crash Course in C and all four videos for Chapter 3&lt;br /&gt;
: Reading:  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_3:_Looking_Under_the_Hood:_Software|Chapter 3]].&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on Chapter 2 L-comps.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 4 (only one video!)&lt;br /&gt;
: Reading:  Chapter 4&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 6 of Chapter 3.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercises 1, 2, and 3 (a) and (b), and Chapter 5 exercises 3, 5, 7, and 8.  Demo next Tuesday:  Chapter 4 exercise 3(b).&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 5 (2 videos)&lt;br /&gt;
: Reading:  Chapter 5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (Th 1/29)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 6 (5 videos)&lt;br /&gt;
: Reading:  Chapter 6&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (T 2/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercise 3(b).&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercises 1-8, 13, 15-18.  Demo next Tuesday:  Exercise 18.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 7 (3 videos)&lt;br /&gt;
: Reading:  Chapter 7&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (Th 2/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 8 (4 videos)&lt;br /&gt;
: Reading:  Chapter 8&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (T 2/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercise 18.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assignv2.pdf | Assignment Part 1]]&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): Chapter 9 (3 videos)&lt;br /&gt;
: Reading:  Chapter 9&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (Th 2/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday. [[Media: Quiz 5 ME333.pdf| Quiz 6 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assign_part2v2.pdf | Assignment Part 2]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:LEDPImain.c | Example Code for Part 2]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#PID_Control | On PID control]] (5 videos)&lt;br /&gt;
: Reading:  none&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (T 2/17)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18samplecode.txt | Sample Code]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:uart_plot.m | uart_plot.m]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_10:_Analog_Input | Analog input]] (1 video)&lt;br /&gt;
: Reading:  Chapter 10&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (Th 2/19)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday. [[Media: Quiz 6 ME333.pdf| Quiz 6 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:out.hex | out.hex]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:pid_plot.m | pid_plot.m ]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:comm.txt     | comm.txt ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_11:_Brushed_Permanent_Magnet_DC_Motors | Brushed Permanent Magnet DC Motors]] (7 videos!) &amp;#039;&amp;#039;&amp;#039;Notes:  (1) Because there are a lot of videos, these L-comps will count double of the usual L-comps.  (2) Because this material is critical to the in-class motor characterization we will do on Tuesday, it is critical you watch these videos.  Therefore, these L-comps are not eligible to be dropped as your lowest L-comps.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: Reading:  Chapter 11&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (T 2/24)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Square wave control of LED output.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Exercises 3-6 of Chapter 11. Begin exercise 4 in class.  For the experimental characterization (exercises 4-6), assume the motor is a 6 V motor and the coils can dissipate 5 W continuously (I^2 R) before overheating.  The encoder has 99 lines per revolution.  No demo on Tues of next week.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_12:_Motor_Sizing | Gears and Motor Sizing]] (3 videos)&lt;br /&gt;
: Reading:  Chapter 12&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (Th 2/26)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_13:_Motor_Control | Motor Control]] (4 videos)&lt;br /&gt;
: Reading:  Chapter 13&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17&amp;#039;&amp;#039;&amp;#039; (T 3/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  None.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin final project:&amp;#039;&amp;#039;&amp;#039;  Download:&lt;br /&gt;
* [[Media:MAX9918DS.pdf | MAX9918 current sensor data sheet]]&lt;br /&gt;
* [[Media:A3909DS.pdf | A3909 dual h-bridge motor driver data sheet]]&lt;br /&gt;
* [[Media:Final-Assignment-2014-part1.pdf | Final Assignment Part 1]]&lt;br /&gt;
* [[Media:ME333 Demo.zip | Demonstration]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Finish wiring H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  Complete Chapter 13.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (Th 3/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Demonstrate you can successfully use your matlab diagnostics code to interact with the H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday (&amp;#039;&amp;#039;&amp;#039;last quiz!&amp;#039;&amp;#039;&amp;#039;)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;.  Due Tuesday:  show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
* [[Media:me333final.zip | Final Project ]]&lt;br /&gt;
* [[Media:refplots-2014.pdf | Examples of motion reference trajectories ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (T 3/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Nothing to turn in, just the demo...&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;   Show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* [[Media:ME333FinalProjectTurnIn.pdf | Final Project Writeup ]]&lt;br /&gt;
* [[Media:ME333FinalProjectExtraCredit.pdf | Final Project Extra Credit ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (Th 3/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; No quiz!&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Final Demo&amp;#039;&amp;#039;&amp;#039;:  Monday 3/16, 3-5 PM or Wednesday 3/18, 9-11 AM. Electronic submission by Wednesday 3/19, 11 AM.&lt;br /&gt;
&lt;br /&gt;
== nScope and Lab Kit ==&lt;br /&gt;
&lt;br /&gt;
Below is the wiring connection for the motor we will use in class. The encoder disc has 334 lines, meaning that there are 334 periods of a square wave on channels A and B for each motor revolution.  If each rising and falling edge is counted (4x decoding of the quadrature signal), then the encoder gives 334 x 4 = 1336 counts per revolution, or 360/1336 = 0.269 degrees of resolution.&lt;br /&gt;
&lt;br /&gt;
[[Image:motor-and-encoder.png|motor-and-encoder.png]]&lt;br /&gt;
&lt;br /&gt;
The homeworks and projects in this course will require an nScope. To download the nScope software, visit the [http://nscope.org/ nScope website].&lt;br /&gt;
&lt;br /&gt;
You should have the following components in your lab kit. If you are missing or are short of anything, there will be a cart in class with extra parts, or see Nick in Ford B100.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Picture&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Description&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Link&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:NU32_5.jpg|thumb|200px|The NU32|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;NU32 in 2 breadboards&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:USBminicable.jpg|thumb|200px|USB Cable|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;1 m USB cable, A male to mini B male&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:NU32_usbcable.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32_6vpower.jpg|thumb|200px|6V Power Supply|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;6V wall power supply, 1A, 2.1mm ID x 5.5mm OD, 6W, center positive.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:powersupply6v.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:LCD16x2.jpg|thumb|200px|16x2 Character LCD|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;LCD, 16x2 characters, using parallel communication&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:LCD16x2_HJ1602A.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v2_pushbutton.jpg|thumb|200px|Pushbutton|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Momentary normally open (NO) pushbutton.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:pushbutton.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Resistors&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;A few of the following 1/4W resistors: (in ohms) 10, 33, 100, 300, 1k, 3.3k, 10k, 33k, 100k, 330k, 1M&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Capacitors&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;A few of the following capacitors: (in F) 10p, 100p, 1n, 0.01u, 0.1u, 1u &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Potentiometers&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;2 potentiometers: 10k ohm &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;LEDs&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Red super bright 5mm LED &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:SuperBrightRedLED.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Phototransistors&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;SFH 310 visible spectrum phototransistor &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:Phototransistor_visible_310_2_3.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v2_wirestrippers.jpg|thumb|200px|Wirestrippers|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Wire strippers, for 30, 28, 26, 24, 22, and 20 AWG wire. Can also be used as pliers and to cut wire. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;These will get dull or mashed up if you try to cut anything other than wire&amp;#039;&amp;#039;&amp;#039; &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[http://www.sparkfun.com/products/8696 Sparkfun wire strippers]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v2_wire.jpg|thumb|200px|Wire|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;6 colors of ~6&amp;#039; lengths of 22 AWG solid core wire (red, white, yellow, green, black, blue)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;no link&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v5_multimeter.jpg|thumb|200px|DT9205A Multimeter|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Any small multimeter, it doesn&amp;#039;t have to be this brand. &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v5_uusb.jpg|thumb|200px|Micro USB cable|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;A micro USB cable.&amp;#039;&amp;#039;&amp;#039; &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nscope_breadboard.jpg|thumb|200px|nScope in a breadboard|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;nScope in a 830 tie points breadboard.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[http://nscope.org]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
Q: Do I need to know the C language to take this course?&lt;br /&gt;
&lt;br /&gt;
A: No. But if you already know C, there is still plenty else in this course for you. If you already know C, know how to use microcontrollers for real-time control, and have a good understanding how common sensors and actuators work and how to interface to them, this course may not be for you. Consider taking ME 433 Advanced Mechatronics in the spring quarter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: Is there an independent project?&lt;br /&gt;
&lt;br /&gt;
A: There is no large independent project. There will be a two-week project at the end of the course, but there will be no machining. For a more significant project, do a quarter-long project in ME 433 Advanced Mechatronics, offered in the spring quarter. ME 333 is good preparation for ME 433.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: What kind of laptop do I need?&lt;br /&gt;
&lt;br /&gt;
A: You need a laptop with at least 2 USB ports.  Any operating system is fine.&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=23124</id>
		<title>ME 333 Introduction to Mechatronics (Archive Winter 2016)</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=23124"/>
		<updated>2015-02-26T01:52:42Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Schedule */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Winter Quarter 2015&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;First day of class is Tuesday January 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Section 20:  Prof. Kevin Lynch, T Th, 11:00-12:20, Tech M345&lt;br /&gt;
* Section 21:  Prof. Nick Marchuk (nick.marchuk@gmail.com), T Th, 12:30-1:50, Tech M345&lt;br /&gt;
* TAs:  Ben Richardson (BenjaminRichardson2013@u.northwestern.edu) and Zack Woodruff (jzwoodruff@u.northwestern.edu)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Pizza and Programming Party&amp;#039;&amp;#039;&amp;#039;, Monday Jan 12, 6:00-8:00, Tech B211 (ME conference room).  Get help, or help others, on the programming assignment!  Sponsored by [https://asg.northwestern.edu/student-faculty-interaction-grants/ Student-Faculty Interaction Grants] (now accepting applications for your events!)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Final demo&amp;#039;&amp;#039;&amp;#039; (in lieu of final exam):  Monday Mar 16 3-5 PM (12:30-1:50 section) and Wednesday Mar 18 9-11 AM (11-12:20 section) &lt;br /&gt;
* Office Hours:  Mon 2-3 (Zack Woodruff, Tech B230); Tues 3-4 (3:30-4:30 on 2/24; Prof. Lynch, Tech B222); Wed 3-4 (Ben Richardson, Tech B230); every day 4-5 (Prof. Marchuk, Mechatronics Lab, Ford B100)&lt;br /&gt;
&lt;br /&gt;
* Quick links:&lt;br /&gt;
** [https://canvas.northwestern.edu/courses/9664 Canvas Course Management System]&lt;br /&gt;
** [[ME 333 Readings, Videos, and Sample Code|ME 333 Readings, Videos, and Sample Code]]&lt;br /&gt;
** [https://it.mccormick.northwestern.edu/matlab/student_license/index.php Purchase Your ME 333 Kit]&lt;br /&gt;
** [https://docs.google.com/forms/d/1V5VmjJdQGrsS3PjslubUS3cHMgHWLJCCPHxrewsFAyA/viewform Send a question for possible discussion in the next class] (use the Canvas discussion group for an online discussion)&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** [https://groups.google.com/a/u.northwestern.edu/forum/#!forum/me333-2014.me Google discussion forum]&lt;br /&gt;
** [[NU32: What is in the NU32 Kit|NU32 kit]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Purpose of this Course ==&lt;br /&gt;
&lt;br /&gt;
The purpose of this course is to &amp;#039;&amp;#039;&amp;#039;provide tools that help you express your creativity&amp;#039;&amp;#039;&amp;#039;.  Maybe you want to build a robot, or a piece of kinetic art, or an automatic ball-throwing device to entertain your dog; maybe you&amp;#039;ve identified a market for a new smart product and you&amp;#039;d like to prototype the device.  This course provides fundamentals of mechatronics to give you confidence to take on these projects.  You are encouraged to take what you learn in this course and apply it in the project-based ME 433 Advanced Mechatronics course, Design Competition, or independent projects.&lt;br /&gt;
&lt;br /&gt;
== Approximate Syllabus ==&lt;br /&gt;
&lt;br /&gt;
This course is for students that want to build microprocessor-controlled electromechanical devices.  &lt;br /&gt;
&lt;br /&gt;
To do this, ME 333 focuses on three topics: (1) general C programming; (2) Microchip PIC microcontroller architecture and C programming specific to the PIC (e.g., using the PIC&amp;#039;s peripherals, such as analog inputs, digital I/O, counters/timers, comm ports, etc.); and (3) interfacing the PIC to sensors and actuators, some theory of sensor and actuator operation, and interface circuitry and signal processing. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;You will do a lot of programming in this course!&amp;#039;&amp;#039;&amp;#039;  If you are certain you hate programming, then this is not the course for you.  But knowing how to program is very useful for any modern engineer.  The language we will use is C, a fairly low-level language that works well for microcontrollers, which is more portable and not nearly as painful and low-level as assembly language.  If you don&amp;#039;t know C, that&amp;#039;s not a problem, most students don&amp;#039;t before taking ME 333; but you should plan to learn it, and rather quickly.  You will have all the materials you need to start learning C before class starts, and &amp;#039;&amp;#039;&amp;#039;the first assignment on C is due on the first day of class&amp;#039;&amp;#039;&amp;#039;!  The reason:  even though we start out with C, that&amp;#039;s not the main goal of this course.  The main goal is to teach you about microcontrollers and mechatronics.  Plus some students already have C background.&lt;br /&gt;
&lt;br /&gt;
You will bring your laptop to each class.  As the quarter progresses, we will be handing out other equipment that you will need to bring to class, such as the NU32 development board that breaks out the [http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en545660 PIC32MX795F512L] microcontroller.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;It is essential you do the assigned reading and watch the videos in advance of class.&amp;#039;&amp;#039;&amp;#039;  You will have an assignment and/or lecture comprehension questions (L-comps) due before every class, turned in electronically on Canvas.  (This includes the very first day of class!)  Once a week we will have a short quiz.  Most classes will have a combination of a brief review, Q&amp;amp;A, and working individually or in small groups on problems while the instructors help answer any questions.&lt;br /&gt;
&lt;br /&gt;
Topics we will cover, time depending, include:&lt;br /&gt;
&lt;br /&gt;
* introduction to C programming&lt;br /&gt;
* introduction to the PIC32 hardware, and programming the PIC32 in C&lt;br /&gt;
* digital I/O&lt;br /&gt;
* counters/timers and interrupts&lt;br /&gt;
* analog input&lt;br /&gt;
* sensor smorgasbord&lt;br /&gt;
* digital signal processing:  filters and FFTs&lt;br /&gt;
* analog output and pulse-width modulation&lt;br /&gt;
* brushed permanent magnet DC motors:  theory and control&lt;br /&gt;
* stepper motors and RC servo motors&lt;br /&gt;
* communication by SPI, I2C, and RS-232&lt;br /&gt;
&lt;br /&gt;
== Checklist to Complete Before the First Day of Class ==&lt;br /&gt;
&lt;br /&gt;
Attendance at the first day of class is mandatory.  By the first day of class, you should:&lt;br /&gt;
&lt;br /&gt;
* Complete the reading and assignment 1, which is &amp;#039;&amp;#039;&amp;#039;due the first day of class!&amp;#039;&amp;#039;&amp;#039;  &amp;lt;!-- In fact, the first two weeks of assignments are already posted, so you are welcome to complete them all over the break and coast through the first two weeks of class.--&amp;gt;  The first assignments are designed to get you up to speed on the C programming language, which we will use throughout the course.&lt;br /&gt;
* Have a laptop with at least 2 USB ports.  Any operating system is fine.  One port will be used to program and communicate with your PIC microcontroller, and the other will be used for your portable oscilloscope.  &lt;br /&gt;
* Be prepared to buy your [[NU32: What is in the NU32 Kit|class kit]], consisting of the portable nScope oscilloscope, the NU32 PIC32 development board, and lots of other goodies.  Price $125 if you are starting from scratch; $75 if you already have the nScope.  &lt;br /&gt;
&amp;lt;!-- * Be able to solve circuit problems similar to those on the practice problem set and last year&amp;#039;s quiz at the bottom of [[ME_333_Circuits_Review_Material|this page]].  Be prepared for a quiz on this material in the second week of class.  We will only spend one class period reviewing this material.--&amp;gt;&lt;br /&gt;
&amp;lt;!-- * Buy your class kit [http://it.mccormick.northwestern.edu/matlab/student_license/login.php &amp;#039;&amp;#039;&amp;#039;here&amp;#039;&amp;#039;&amp;#039;].  If you already have the oscilloscope and multimeter from this year&amp;#039;s ME 233 offering, you should choose &amp;quot;ME 333 (w/o ME 233 equipment)&amp;quot; for the price of $75.  If you do not have the oscilloscope and multimeter, you should choose &amp;quot;ME 333 (w/ ME 233 equipment)&amp;quot; for the price of $135.  You will not be able to start the course until you have completed the purchase of your kit.  If you decide to drop the course, you will be refunded the purchase price upon return of all the equipment in working shape. --&amp;gt;&lt;br /&gt;
&amp;lt;!--* &amp;#039;&amp;#039;&amp;#039;If you are not already comfortable with the C language, or if you do not already have a C compiler installed on your laptop, this step is recommended before the first day of class.  This will give you a headstart on learning C.  If you don&amp;#039;t complete this before the first day of class, you will need to do it before the second class.&amp;#039;&amp;#039;&amp;#039;  Download and install the GCC GNU compiler collection and the Netbeans IDE (Integrated Development Environment) following the instructions [[Installing_a_C_Compiler_and_IDE|here]].  Verify that you can compile and run the sample programs at the end of that page.  Read the comments in invest.c to find references to the [[Media:CrashCourseinC.pdf|Crash Course in C document]] and answer the questions to learn more about C. &amp;#039;&amp;#039;&amp;#039;If you have problems installing a C compiler and running the programs, then you can still get a headstart before the first class by focusing on reading the C programs and the Crash Course in C manual to understand how they work.&amp;#039;&amp;#039;&amp;#039;--&amp;gt; &amp;lt;!-- * Download and install software described on [[NU32v2: Software to Install|this page]].  --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Student Contract ==&lt;br /&gt;
&lt;br /&gt;
By signing up for this course, you agree to complete the checklist above before the course starts.  You agree to stay engaged during the class period; even if your computer is open, no facebook or other distractions that will lessen your contribution to the class.  You understand that learning from classmates, and helping classmates, is encouraged, up to the stage of conceptualizing solutions.  You are not allowed to fully complete a solution in a team.  You understand that plagiarism is not tolerated.  You will report instances of plagiarism you are aware of.  Plagiarism includes, but is not limited to:&lt;br /&gt;
&lt;br /&gt;
* Allowing another student to copy your work.&lt;br /&gt;
* Copying another student&amp;#039;s work, in whole or in part.&lt;br /&gt;
* Transforming copied sections of code or solutions to try to disguise their origin.&lt;br /&gt;
* Borrowing code or solutions from others not in the course, e.g., code found on the internet, without attribution.  Borrowing code found on the internet is acceptable if the source is clearly indicated in your code comments, and if you understand how the code works.&lt;br /&gt;
&lt;br /&gt;
On our part (faculty and TAs), we commit to do our best to provide you a curriculum and set of experimental materials to get you up to speed on sophisticated mechatronics integration as quickly and efficiently as possible, while giving you a foundation in concepts needed to go further in future projects and courses.&lt;br /&gt;
&lt;br /&gt;
== Prerequisite ==&lt;br /&gt;
&lt;br /&gt;
ME 233 Electronics Design or similar (EECS 221, 225) is required. You will be expected to analyze circuits with resistors, capacitors, inductors, diodes, transistors, and op-amps. You can find refresher material and a sample quiz at [[ME_333_Circuits_Review_Material|this page]].&lt;br /&gt;
&lt;br /&gt;
== Reading ==&lt;br /&gt;
&lt;br /&gt;
Required:&lt;br /&gt;
&lt;br /&gt;
* [[Media:book-current.pdf|A Crash Course in C]]:  A brief introduction to the C programming language.  Sample code from this appendix can be found [[ME 333 Readings, Videos, and Sample Code|here]].  &lt;br /&gt;
* Optional:  [[Media:EssentialC.pdf|Essential C]] is also a very nice intro to C.  Let us know about other online C resources you find particularly useful.&lt;br /&gt;
* [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
* [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* wiki info on [[Microchip PICs]]&lt;br /&gt;
* [[Media:PIC32MX5XX6XX7XX_Family_Data_Sheet.pdf|PIC32 Data Sheet]] (256 pages, 5 MB pdf)&lt;br /&gt;
* [http://www.microchip.com/TechDoc.aspx?type=ReferenceManuals PIC32 Family Reference Manual, by chapter], and an [[Media:61132B_PIC32ReferenceManual.pdf‎|earlier version]] that conveniently has all chapters in one document.  Lots of useful and detailed information on the PIC32 architecture and how the peripherals work, including detailed description of their SFRs.  Only certain parts of certain chapters will be assigned.  These chapters include quite a lot of example code.  &amp;#039;&amp;#039;&amp;#039;Be warned though, Microchip was not very careful when writing the sample code; some of it contains syntax errors, or values in registers that are incorrect.&amp;#039;&amp;#039;&amp;#039;  Even with this being the case, this is still a very useful document.&lt;br /&gt;
* PIC32MX Peripheral Library (included as a .chm file under &amp;quot;Program Files\Microchip\MPLAB C32\doc&amp;quot; with your C32 compiler installation)&lt;br /&gt;
&lt;br /&gt;
Useful, but not required:&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Programming-32-bit-Microcontrollers-Exploring-Technology/dp/0750687096/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1294091438&amp;amp;sr=8-1-spell Programming 32-bit Microcontrollers in C:  Exploring the PIC32] by Lucio Di Jasio.  This is an easy to read and informative exploration of the PIC32.&lt;br /&gt;
* MPLAB C32 Libraries Guide and MPLAB C32 User Guide, included under &amp;quot;doc&amp;quot; of your C32 compiler installation&lt;br /&gt;
* Other C resources, such as [http://publications.gbdirect.co.uk/c_book/ online] as well as this [[Media:CBook.pdf|pdf version]] of &amp;quot;The C Book,&amp;quot; and the classic [http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=sr_1_1?s=books&amp;amp;ie=UTF8&amp;amp;qid=1294091625&amp;amp;sr=1-1 C Programming Language] reference book by Kernighan and Ritchie&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Grading ==&lt;br /&gt;
&lt;br /&gt;
Grades will be approximately 40% quizzes and 60% assignments and L-comps (including the final project).  We will have short quizzes once a week at the beginning of class covering material on the previous assignment.  Bring a sheet of paper you can turn in with your quiz answers.  (Your lowest quiz score,  assignment score, and L-comp score will be dropped.)  We will have a final project and demo in lieu of a final exam.&lt;br /&gt;
&lt;br /&gt;
All quizzes, assignments, and L-comps have equal weight, regardless of how many points they are graded out of.  If one assignment is graded out of 20 points, and the next out of 40, the formula for calculating your total grade for these two assignments would be 0.5*(score1/20) + 0.5*(score2/40).&lt;br /&gt;
&lt;br /&gt;
== Homework Submission ==&lt;br /&gt;
&lt;br /&gt;
All homework (except for the first class, when paper solutions should be turned in at the beginning of class) will be submitted using the [https://northwestern.instructure.com/courses/9664 Canvas Course Management System].  Homework should be submitted by 11 AM on the day it is due (i.e., before the first section of the day).  Late homework will not be accepted.&lt;br /&gt;
&lt;br /&gt;
Here are a few guidelines/tips associated with homework submissions:&lt;br /&gt;
&lt;br /&gt;
* Upload files individually. No zip archives!&lt;br /&gt;
&lt;br /&gt;
* Submit written responses as PDFs. &lt;br /&gt;
&lt;br /&gt;
* If you upload a PDF of handwritten work, make sure that the text appears clearly and the picture is oriented portrait style. &amp;quot;Cam Scanner&amp;quot; for Android and iOS phones easily scans images and compiles them into a single PDF file. &lt;br /&gt;
&lt;br /&gt;
* Unless otherwise stated, L-Comps should be in a single file.&lt;br /&gt;
&lt;br /&gt;
* When asked to submit C code for a given programming assignment, we are only concerned with receiving the relevant source files, i.e., all *.c and *.h files.  We do not want entire IDE/MPLAB X projects or executables/object files. &lt;br /&gt;
&lt;br /&gt;
* When writing your responses, please follow any instructions on how to write your response.  For example, if we ask for a snippet of code, please do not submit your entire C program with header files and a main routine.  We typically are only expecting a few lines of code that solve the problem.&lt;br /&gt;
&lt;br /&gt;
* Be neat and make sure your answers are easy to follow.  Messy hard-to-follow assignments make TAs cranky, and you don&amp;#039;t want cranky TAs grading your assignment!&lt;br /&gt;
&lt;br /&gt;
* It helps both us and you if you format your code nicely.  Clean looking code is easier for us to grade and easier for you to debug.  Text editors with IDEs such as Netbeans and MPLAB X have tools for auto-formatting code.  For example, highlighting a region and hitting Alt+Shift+f (Linux and Windows) will format that region according to your local formatting preferences.&lt;br /&gt;
&lt;br /&gt;
* When you compile your code, pay attention to any compiler warnings.  They are there for a reason!  You should be able to eventually get your code to produce no warnings.  Often if a piece of code is not working, the warnings will give a clue as to why.  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Note that in &amp;quot;project properties&amp;quot; in both IDEs, it is possible to generate &amp;quot;Additional warnings.&amp;quot;  This tells your compiler to be more strict about the rules of C.  The better you adhere to these rules, the more likely it is that your code will compile.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schedule ==&lt;br /&gt;
&lt;br /&gt;
This course is (partially) &amp;quot;flipped&amp;quot;:  you watch video lectures and do readings in advance of class, and during class, you should have plenty of opportunity for questions and interaction with the instructors and TAs as you work on assignments.  The purpose of this is to try to maximize the value of the class time.  In a typical lecture, 80% of the material is the same every time it is given, and the other 20% is interactive and variable based on student questions.  In a flipped class, we hope to flip this percentage, to better tailor the class to student needs.  You will have time with the instructors while your brains are actually on and working on the material (not just scribbling notes), the times when you are most likely to have questions.  Making the video lectures available should also allow you to spend more or less time on the lecture portion, depending on your prior background.  If the material is difficult for you, you can pause or rewind.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Please keep track of any questions you have as you watch the videos!&amp;#039;&amp;#039;&amp;#039; Bring these questions to class; it will make for a livelier classroom.  &lt;br /&gt;
&lt;br /&gt;
All readings, videos, and C code can be found at this page:  [[ME 333 Readings, Videos, and Sample Code|&amp;#039;&amp;#039;&amp;#039;ME 333 Readings, Videos, and Sample Code&amp;#039;&amp;#039;&amp;#039;]].  We will cover almost all of the Appendix, a Crash Course in C, in the first 1.5 weeks of class, so you can work ahead and do all the readings, watch all the videos, and do all the problems, if you have time over the break.  But at a minimum, you must do the winter break assignment.  &lt;br /&gt;
&lt;br /&gt;
After the first two weeks of class, we will have video lecture comprehension questions (L-comps) due before every class, assignments due every Tuesday, and quizzes every Thursday (on the material covered in the assignment turned in on Tuesday).  L-comps and assignments are turned in using Canvas before 11 AM the day of the class.  The weekly rhythm will be:&lt;br /&gt;
&lt;br /&gt;
* before Tuesday:  turn in assignment on material from previous week and L-comps on videos for the next class&lt;br /&gt;
* Tuesday in class:  discuss assignment, brief recap and Q&amp;amp;A on new videos, start on next assignment&lt;br /&gt;
* before Thursday:  turn in L-comps on videos for next class&lt;br /&gt;
* Thursday in class:  brief quiz on material in assignment turned in on Tuesday, recap and discuss videos, continue with asignment&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Winter Break&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Reading due for first class&amp;#039;&amp;#039;&amp;#039;:  pages 1-9 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Videos&amp;#039;&amp;#039;&amp;#039;:  1-7 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]].  Answer the lecture comprehension (L-comp) questions underneath each of the videos (you may need to click to expand).  You will turn in a paper version of your answers at the beginning of the first class.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment 1&amp;#039;&amp;#039;&amp;#039;:  Also do exercises 1-4, 6-8, 10-11, 14-15 of A Crash Course in C.  Bring your laptop to class and demonstrate your HelloWorld.c program.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (T 1/6)  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment due&amp;#039;&amp;#039;&amp;#039;:  Hand in a paper version of your L-comp and other solutions at the beginning of class.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 1.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos and readings&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercises 16-17, 19-20, 25-26, 28-30, 32.  Pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 8-16 of a Crash Course in C.  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video.  You need to click it to expand it.&lt;br /&gt;
: Reading:  Through page 23 of a Crash Course in C, and the rest as reference&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (Th 1/8)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 32.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.   If you have not yet, pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  17 of a Crash Course in C.&lt;br /&gt;
: Reading:  Rest of a Crash Course in C as reference&lt;br /&gt;
: Pizza and Programming Party, Monday Jan 12, 6:00-8:00, Tech B211 (ME conference room)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (T 1/13)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class assignment:  Creating your own helper library&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  none&lt;br /&gt;
: Reading:  [[Media:book-current.pdf|Chapter 1, Quickstart]]&lt;br /&gt;
: Assignment: Download, install, and compile all software as indicated through the end of Chapter 1.3.  Make sure you are using the new version of the book, which so far has only chapter 1 and the appendix.  You may need to &amp;quot;refresh&amp;quot; your browser while displaying the book, or clear your browser cache, to make sure you are seeing a January 2015 version of the book.  &amp;#039;&amp;#039;&amp;#039;Note to PC users:  Skip Chapter 1.2.  The nu32utility for the PC needs to be updated for you.&amp;#039;&amp;#039;&amp;#039; [https://it.mccormick.northwestern.edu/matlab/student_license/index.php Purchase your ME 333 kit if you have not yet.]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 4&amp;#039;&amp;#039;&amp;#039; (Th 1/15)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; On C. [[Media: Quiz 1 ME333.pdf| Quiz 1 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Distribute hardware and execute quickstart&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 1-4 from Chapter 2.&lt;br /&gt;
: Reading:  Complete Chapter 1 (quickstart) and Chapter 2.  Download the new version of the notes which should have the Appendix and Chapters 1 and 2.  Make sure you have completed the quickstart fully in Chapter 1, or else you will be behind for Tuesday&amp;#039;s class.  Get help from friends or office hours, and keep track of any problems you had, so we can make suggestions for future students.&lt;br /&gt;
: Assignment due at the beginning of class on Tues 1/20:  Problems 3-16 of Chapter 2.  You will need the [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]] and the [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]].&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;:  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment and videos discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Go over PIC32 software&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due Tues 1/27&amp;#039;&amp;#039;&amp;#039;:  Chapter 3, problems 1-9, and Chapter 4, problems 1, 2, and 4.  In class demo next Tuesday:  problem 5.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps) due Thurs:  All of Chapter 3.  &amp;#039;&amp;#039;&amp;#039;Please note&amp;#039;&amp;#039;&amp;#039;:  Videos 2, 3, and 4 make reference to including plib.h.  Instead, our new simplePIC.c program includes xc.h.  In video 3, you can ignore the plib.h part and focus on the xc.h part that comes later.  Also, the compiling command in video 4 is a bit different than what you see in the book, but there are no significant differences.&lt;br /&gt;
: Reading:  Complete Chapter 3.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief discussion of chapter 2 exercises and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapter 2.&amp;#039;&amp;#039;&amp;#039; [[Media: Quiz_2_ME333.pdf| Quiz 2 Solutions.]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of videos and L-comps on Chapter 3&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;New Makefile!&amp;#039;&amp;#039;&amp;#039;  Download from [[Pic32book|here]].&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start Chapter 4&amp;#039;&amp;#039;&amp;#039;.  Note three added homework exercises, from Chapter 4.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;talkingPIC demo&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Video and L-comp due Tues:  Chapter 4.&lt;br /&gt;
: Reading:  Complete Chapter 4.&lt;br /&gt;
: Added assignment exercises, due Tuesday:  Chapter 4 problems 1, 2, and 4.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;:  Turn in assignment on Chapters 3 and 4.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo of problem 5 of Chapter 3&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of homework solutions&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of video and L-comp&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief intro to Chapter 5&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Next assignment&amp;#039;&amp;#039;&amp;#039;:  Chapter 4:  Wiring the LCD and using LCDwrite.c.  Chapter 5 (use no optimization for all exercises): Exercises 4, 5, 7(b,c), 8, 11.  Chapter 6:  Exercises 1, 2, 4, 5, 6, 8, 9, 13, 14, 17, 19.  (Plus one more problem given on Thursday.)  Demo in class next Tuesday:  Chapter 6 exercise 19.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Download the [[http://hades.mech.northwestern.edu/index.php/ME_333_Readings,_Videos,_and_Sample_Code#Chapter_4:_Using_Libraries LCD library]] and wire and use the LCD (chapter 4)&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 5 &lt;br /&gt;
: Reading:  Complete Chapter 5.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (Th 1/29)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapters 3 and 4.&amp;#039;&amp;#039;&amp;#039; [[Media: Quiz3solutions.pdf|Quiz 3 Solutions.]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of Chapter 5 videos and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief intro to Chapter 6&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue with assignment.&amp;#039;&amp;#039;&amp;#039; Added problem Ch 5 Ex 5 (use no optimization)&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 6&lt;br /&gt;
: Reading:  Complete Chapter 6&lt;br /&gt;
: Finish assignment by 11 AM Tuesday&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (T 2/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;: Turn in assignment from last Tuesday/Thursday and the L-comps&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Demo of Chapter 6 exercise 19.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion on homework and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief intro to digital i/o, counter/timers, output compare, analog input&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start next assignment due Tues 2/10.&amp;#039;&amp;#039;&amp;#039; Chapter 12, feedback control of LED intensity, through 12.3.  Demo in class on Tuesday:  your code from chapter 12.3 with your nScope showing the sensor voltage at Vout.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapters 7 and 8&lt;br /&gt;
: Reading:  Chapters 7 and 8&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;For future classes:  bring your nScope and resistors, caps, wire, multimeter, etc.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (Th 2/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapters 5 and 6.&amp;#039;&amp;#039;&amp;#039; [[Media: Quiz4solutions.pdf|Quiz 4 Solutions.]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapters 9 and 10&lt;br /&gt;
: Reading:  Chapters 9 and 10&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (T 2/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Demo of Chapter 12.3 code.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of last week&amp;#039;s homework and L-comps due today&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start assignment due Tues 2/17.&amp;#039;&amp;#039;&amp;#039;  Download the code for Chapter 11 and finish the LED brightness control project.  Turn in plots from 12.5, 12.7, and 12.8.  Demo in class on Tuesday 2/17:  the final result from 12.8, showing performance to changing gains in real-time in Matlab.  Also, demo any extra credit from 12.9.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 11 on PID control&lt;br /&gt;
: Reading:  Chapter 11&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (Th 2/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapters 7-10.&amp;#039;&amp;#039;&amp;#039;  You do not need to memorize SFR names, but you are responsible for understanding the basics of how the peripherals work, at the level of the chapter summaries and the videos.  [[Media: Quiz5solutions.pdf|Quiz 5 Solutions.]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;PID control and continuing the assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 13 on brushed DC motors&lt;br /&gt;
: Reading:  Chapter 13&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (T 2/17)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Demo of LED brightness control&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of turned-in homework&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start assignment due Tues 2/24:&amp;#039;&amp;#039;&amp;#039;  Problems 2-7 of Chapter 13 on DC motors&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: No videos&lt;br /&gt;
: Reading:  Finish chapter 13&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (Th 2/19)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapters 11 and 12,&amp;#039;&amp;#039;&amp;#039; PID control and LED brightness control&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 14 on gearing and motor sizing&lt;br /&gt;
: Reading:  Chapter 14&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (T 2/24)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of turned-in homework&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start assignment due Tues 3/3&amp;#039;&amp;#039;&amp;#039;.  Exercise 4 of Chapter 14, Gearing and Motor Sizing, Exercises 1-16 of Chapter 15, DC Motor Control, and menu portion of the final project (to be distributed).  Demo on Tuesday 3/3:  the menu.  Except for Exercise 4 of Chapter 14, you should do all work on your own.  Indicate on your assignment writeup the people you worked with for Exercise 4.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos and L-comps on Chapter 15, DC Motor Control&lt;br /&gt;
: Reading:  Chapter 15&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (Th 2/26)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapter 13, Brushed Permanent Magnet DC Motors&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: No videos&lt;br /&gt;
: Begin reading Chapter 16&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17&amp;#039;&amp;#039;&amp;#039; (T 3/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Demo of menu portion of final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039;  On C&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Intro to Programming the PIC32&amp;#039;&amp;#039;&amp;#039;:  &lt;br /&gt;
:: Download the following documentation:&lt;br /&gt;
:: * [[Media:book-current.pdf|Chapter 1]]&lt;br /&gt;
:: * [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
:: * [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&lt;br /&gt;
:: When installing the software, you may need to update your Java for the MPLAB X IDE.  Answer &amp;quot;yes&amp;quot; if you are asked if you want to update your path when installing anything.  Mac OS X may not allow you to install since the software is from an &amp;quot;untrusted&amp;quot; developer.  You can override that by control-clicking on the dmg and choosing &amp;quot;Open&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment:&amp;#039;&amp;#039;&amp;#039;  Download and install all of the above.  &lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Assignment:  Finish the downloads and installations, as described above.&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_2:_Looking_Under_the_Hood:_Hardware|Videos 1-4 of Chapter 2]].  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video (click on it to expand it).&lt;br /&gt;
: Reading:  Chapter 1 (you can ignore 1.4.2, 1.5, and 1.6.2) and Chapter 2.  If you get the programs in 1.4.1 and 1.6.1 working, great!  If not, ask questions on the forum or we&amp;#039;ll do it in the next class.  Don&amp;#039;t destroy your board!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas]).  &amp;#039;&amp;#039;&amp;#039;No separate assignment to hand in today!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  We will make sure that everyone can run simplePIC.c and talkingPIC.c.  No demo grades today.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Problems 3-16 of Chapter 2 and problems 1-4, 6-8, 9 (parts a, c, d, and f only), and 10 of Chapter 3. Demo next Tuesday:  Chapter 3 exercise 6.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  video 17 of a Crash Course in C and all four videos for Chapter 3&lt;br /&gt;
: Reading:  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_3:_Looking_Under_the_Hood:_Software|Chapter 3]].&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on Chapter 2 L-comps.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 4 (only one video!)&lt;br /&gt;
: Reading:  Chapter 4&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 6 of Chapter 3.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercises 1, 2, and 3 (a) and (b), and Chapter 5 exercises 3, 5, 7, and 8.  Demo next Tuesday:  Chapter 4 exercise 3(b).&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 5 (2 videos)&lt;br /&gt;
: Reading:  Chapter 5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (Th 1/29)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 6 (5 videos)&lt;br /&gt;
: Reading:  Chapter 6&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (T 2/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercise 3(b).&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercises 1-8, 13, 15-18.  Demo next Tuesday:  Exercise 18.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 7 (3 videos)&lt;br /&gt;
: Reading:  Chapter 7&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (Th 2/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 8 (4 videos)&lt;br /&gt;
: Reading:  Chapter 8&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (T 2/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercise 18.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assignv2.pdf | Assignment Part 1]]&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): Chapter 9 (3 videos)&lt;br /&gt;
: Reading:  Chapter 9&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (Th 2/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday. [[Media: Quiz 5 ME333.pdf| Quiz 6 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assign_part2v2.pdf | Assignment Part 2]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:LEDPImain.c | Example Code for Part 2]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#PID_Control | On PID control]] (5 videos)&lt;br /&gt;
: Reading:  none&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (T 2/17)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18samplecode.txt | Sample Code]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:uart_plot.m | uart_plot.m]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_10:_Analog_Input | Analog input]] (1 video)&lt;br /&gt;
: Reading:  Chapter 10&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (Th 2/19)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday. [[Media: Quiz 6 ME333.pdf| Quiz 6 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:out.hex | out.hex]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:pid_plot.m | pid_plot.m ]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:comm.txt     | comm.txt ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_11:_Brushed_Permanent_Magnet_DC_Motors | Brushed Permanent Magnet DC Motors]] (7 videos!) &amp;#039;&amp;#039;&amp;#039;Notes:  (1) Because there are a lot of videos, these L-comps will count double of the usual L-comps.  (2) Because this material is critical to the in-class motor characterization we will do on Tuesday, it is critical you watch these videos.  Therefore, these L-comps are not eligible to be dropped as your lowest L-comps.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: Reading:  Chapter 11&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (T 2/24)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Square wave control of LED output.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Exercises 3-6 of Chapter 11. Begin exercise 4 in class.  For the experimental characterization (exercises 4-6), assume the motor is a 6 V motor and the coils can dissipate 5 W continuously (I^2 R) before overheating.  The encoder has 99 lines per revolution.  No demo on Tues of next week.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_12:_Motor_Sizing | Gears and Motor Sizing]] (3 videos)&lt;br /&gt;
: Reading:  Chapter 12&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (Th 2/26)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_13:_Motor_Control | Motor Control]] (4 videos)&lt;br /&gt;
: Reading:  Chapter 13&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17&amp;#039;&amp;#039;&amp;#039; (T 3/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  None.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin final project:&amp;#039;&amp;#039;&amp;#039;  Download:&lt;br /&gt;
* [[Media:MAX9918DS.pdf | MAX9918 current sensor data sheet]]&lt;br /&gt;
* [[Media:A3909DS.pdf | A3909 dual h-bridge motor driver data sheet]]&lt;br /&gt;
* [[Media:Final-Assignment-2014-part1.pdf | Final Assignment Part 1]]&lt;br /&gt;
* [[Media:ME333 Demo.zip | Demonstration]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Finish wiring H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  Complete Chapter 13.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (Th 3/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Demonstrate you can successfully use your matlab diagnostics code to interact with the H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday (&amp;#039;&amp;#039;&amp;#039;last quiz!&amp;#039;&amp;#039;&amp;#039;)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;.  Due Tuesday:  show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
* [[Media:me333final.zip | Final Project ]]&lt;br /&gt;
* [[Media:refplots-2014.pdf | Examples of motion reference trajectories ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (T 3/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Nothing to turn in, just the demo...&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;   Show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* [[Media:ME333FinalProjectTurnIn.pdf | Final Project Writeup ]]&lt;br /&gt;
* [[Media:ME333FinalProjectExtraCredit.pdf | Final Project Extra Credit ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (Th 3/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; No quiz!&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Final Demo&amp;#039;&amp;#039;&amp;#039;:  Monday 3/16, 3-5 PM or Wednesday 3/18, 9-11 AM. Electronic submission by Wednesday 3/19, 11 AM.&lt;br /&gt;
&lt;br /&gt;
== nScope and Lab Kit ==&lt;br /&gt;
&lt;br /&gt;
Below is the wiring connection for the motor we will use in class. The encoder disc has 334 lines, meaning that there are 334 periods of a square wave on channels A and B for each motor revolution.  If each rising and falling edge is counted (4x decoding of the quadrature signal), then the encoder gives 334 x 4 = 1336 counts per revolution, or 360/1336 = 0.269 degrees of resolution.&lt;br /&gt;
&lt;br /&gt;
[[Image:motor-and-encoder.png|motor-and-encoder.png]]&lt;br /&gt;
&lt;br /&gt;
The homeworks and projects in this course will require an nScope. To download the nScope software, visit the [http://nscope.org/ nScope website].&lt;br /&gt;
&lt;br /&gt;
You should have the following components in your lab kit. If you are missing or are short of anything, there will be a cart in class with extra parts, or see Nick in Ford B100.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table border=&amp;quot;1&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Picture&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Description&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Link&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:NU32_5.jpg|thumb|200px|The NU32|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;NU32 in 2 breadboards&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:USBminicable.jpg|thumb|200px|USB Cable|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;1 m USB cable, A male to mini B male&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:NU32_usbcable.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32_6vpower.jpg|thumb|200px|6V Power Supply|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;6V wall power supply, 1A, 2.1mm ID x 5.5mm OD, 6W, center positive.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:powersupply6v.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:LCD16x2.jpg|thumb|200px|16x2 Character LCD|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;LCD, 16x2 characters, using parallel communication&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:LCD16x2_HJ1602A.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v2_pushbutton.jpg|thumb|200px|Pushbutton|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Momentary normally open (NO) pushbutton.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:pushbutton.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Resistors&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;A few of the following 1/4W resistors: (in ohms) 10, 33, 100, 300, 1k, 3.3k, 10k, 33k, 100k, 330k, 1M&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Capacitors&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;A few of the following capacitors: (in F) 10p, 100p, 1n, 0.01u, 0.1u, 1u &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Potentiometers&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;2 potentiometers: 10k ohm &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;LEDs&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Red super bright 5mm LED &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:SuperBrightRedLED.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Phototransistors&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;SFH 310 visible spectrum phototransistor &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Media:Phototransistor_visible_310_2_3.pdf|Datasheet]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v2_wirestrippers.jpg|thumb|200px|Wirestrippers|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Wire strippers, for 30, 28, 26, 24, 22, and 20 AWG wire. Can also be used as pliers and to cut wire. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;These will get dull or mashed up if you try to cut anything other than wire&amp;#039;&amp;#039;&amp;#039; &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[http://www.sparkfun.com/products/8696 Sparkfun wire strippers]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v2_wire.jpg|thumb|200px|Wire|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;6 colors of ~6&amp;#039; lengths of 22 AWG solid core wire (red, white, yellow, green, black, blue)&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;no link&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v5_multimeter.jpg|thumb|200px|DT9205A Multimeter|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Any small multimeter, it doesn&amp;#039;t have to be this brand. &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nu32v5_uusb.jpg|thumb|200px|Micro USB cable|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;A micro USB cable.&amp;#039;&amp;#039;&amp;#039; &amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[[Image:nscope_breadboard.jpg|thumb|200px|nScope in a breadboard|center]]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;nScope in a 830 tie points breadboard.&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;[http://nscope.org]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
Q: Do I need to know the C language to take this course?&lt;br /&gt;
&lt;br /&gt;
A: No. But if you already know C, there is still plenty else in this course for you. If you already know C, know how to use microcontrollers for real-time control, and have a good understanding how common sensors and actuators work and how to interface to them, this course may not be for you. Consider taking ME 433 Advanced Mechatronics in the spring quarter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: Is there an independent project?&lt;br /&gt;
&lt;br /&gt;
A: There is no large independent project. There will be a two-week project at the end of the course, but there will be no machining. For a more significant project, do a quarter-long project in ME 433 Advanced Mechatronics, offered in the spring quarter. ME 333 is good preparation for ME 433.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: What kind of laptop do I need?&lt;br /&gt;
&lt;br /&gt;
A: You need a laptop with at least 2 USB ports.  Any operating system is fine.&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=File:Quiz_6_ME333.pdf&amp;diff=23123</id>
		<title>File:Quiz 6 ME333.pdf</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=File:Quiz_6_ME333.pdf&amp;diff=23123"/>
		<updated>2015-02-26T01:50:31Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=File:Quiz_5_ME333.pdf&amp;diff=23122</id>
		<title>File:Quiz 5 ME333.pdf</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=File:Quiz_5_ME333.pdf&amp;diff=23122"/>
		<updated>2015-02-26T01:50:18Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=22992</id>
		<title>ME 333 Introduction to Mechatronics (Archive Winter 2016)</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=22992"/>
		<updated>2015-01-23T17:59:02Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Schedule */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Winter Quarter 2015&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;First day of class is Tuesday January 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Section 20:  Prof. Kevin Lynch, T Th, 11:00-12:20, Tech M345&lt;br /&gt;
* Section 21:  Prof. Nick Marchuk (nick.marchuk@gmail.com), T Th, 12:30-1:50, Tech M345&lt;br /&gt;
* TAs:  Ben Richardson (BenjaminRichardson2013@u.northwestern.edu) and Zack Woodruff (jzwoodruff@u.northwestern.edu)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Pizza and Programming Party&amp;#039;&amp;#039;&amp;#039;, Monday Jan 12, 6:00-8:00, Tech B211 (ME conference room).  Get help, or help others, on the programming assignment!  Sponsored by [https://asg.northwestern.edu/student-faculty-interaction-grants/ Student-Faculty Interaction Grants] (now accepting applications for your events!)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Final demo&amp;#039;&amp;#039;&amp;#039; (in lieu of final exam):  Monday Mar 16 3-5 PM (12:30-1:50 section) and Wednesday Mar 18 9-11 AM (11-12:20 section) &lt;br /&gt;
* Office Hours:  Mon 2-3 (Zack Woodruff, Tech B230); Tues 3-4 (3:30-4:30 on 2/24; Prof. Lynch, Tech B221); Wed 3-4 (Ben Richardson, Tech B230); every day 4-5 (Prof. Marchuk, Mechatronics Lab, Ford B100)&lt;br /&gt;
&lt;br /&gt;
* Quick links:&lt;br /&gt;
** [https://canvas.northwestern.edu/courses/9664 Canvas Course Management System]&lt;br /&gt;
** [[ME 333 Readings, Videos, and Sample Code|ME 333 Readings, Videos, and Sample Code]]&lt;br /&gt;
** [https://it.mccormick.northwestern.edu/matlab/student_license/index.php Purchase Your ME 333 Kit]&lt;br /&gt;
** [https://docs.google.com/forms/d/1V5VmjJdQGrsS3PjslubUS3cHMgHWLJCCPHxrewsFAyA/viewform Send a question for possible discussion in the next class] (use the Canvas discussion group for an online discussion)&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** [https://groups.google.com/a/u.northwestern.edu/forum/#!forum/me333-2014.me Google discussion forum]&lt;br /&gt;
** [[NU32: What is in the NU32 Kit|NU32 kit]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Purpose of this Course ==&lt;br /&gt;
&lt;br /&gt;
The purpose of this course is to &amp;#039;&amp;#039;&amp;#039;provide tools that help you express your creativity&amp;#039;&amp;#039;&amp;#039;.  Maybe you want to build a robot, or a piece of kinetic art, or an automatic ball-throwing device to entertain your dog; maybe you&amp;#039;ve identified a market for a new smart product and you&amp;#039;d like to prototype the device.  This course provides fundamentals of mechatronics to give you confidence to take on these projects.  You are encouraged to take what you learn in this course and apply it in the project-based ME 433 Advanced Mechatronics course, Design Competition, or independent projects.&lt;br /&gt;
&lt;br /&gt;
== Approximate Syllabus ==&lt;br /&gt;
&lt;br /&gt;
This course is for students that want to build microprocessor-controlled electromechanical devices.  &lt;br /&gt;
&lt;br /&gt;
To do this, ME 333 focuses on three topics: (1) general C programming; (2) Microchip PIC microcontroller architecture and C programming specific to the PIC (e.g., using the PIC&amp;#039;s peripherals, such as analog inputs, digital I/O, counters/timers, comm ports, etc.); and (3) interfacing the PIC to sensors and actuators, some theory of sensor and actuator operation, and interface circuitry and signal processing. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;You will do a lot of programming in this course!&amp;#039;&amp;#039;&amp;#039;  If you are certain you hate programming, then this is not the course for you.  But knowing how to program is very useful for any modern engineer.  The language we will use is C, a fairly low-level language that works well for microcontrollers, which is more portable and not nearly as painful and low-level as assembly language.  If you don&amp;#039;t know C, that&amp;#039;s not a problem, most students don&amp;#039;t before taking ME 333; but you should plan to learn it, and rather quickly.  You will have all the materials you need to start learning C before class starts, and &amp;#039;&amp;#039;&amp;#039;the first assignment on C is due on the first day of class&amp;#039;&amp;#039;&amp;#039;!  The reason:  even though we start out with C, that&amp;#039;s not the main goal of this course.  The main goal is to teach you about microcontrollers and mechatronics.  Plus some students already have C background.&lt;br /&gt;
&lt;br /&gt;
You will bring your laptop to each class.  As the quarter progresses, we will be handing out other equipment that you will need to bring to class, such as the NU32 development board that breaks out the [http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en545660 PIC32MX795F512L] microcontroller.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;It is essential you do the assigned reading and watch the videos in advance of class.&amp;#039;&amp;#039;&amp;#039;  You will have an assignment and/or lecture comprehension questions (L-comps) due before every class, turned in electronically on Canvas.  (This includes the very first day of class!)  Once a week we will have a short quiz.  Most classes will have a combination of a brief review, Q&amp;amp;A, and working individually or in small groups on problems while the instructors help answer any questions.&lt;br /&gt;
&lt;br /&gt;
Topics we will cover, time depending, include:&lt;br /&gt;
&lt;br /&gt;
* introduction to C programming&lt;br /&gt;
* introduction to the PIC32 hardware, and programming the PIC32 in C&lt;br /&gt;
* digital I/O&lt;br /&gt;
* counters/timers and interrupts&lt;br /&gt;
* analog input&lt;br /&gt;
* sensor smorgasbord&lt;br /&gt;
* digital signal processing:  filters and FFTs&lt;br /&gt;
* analog output and pulse-width modulation&lt;br /&gt;
* brushed permanent magnet DC motors:  theory and control&lt;br /&gt;
* stepper motors and RC servo motors&lt;br /&gt;
* communication by SPI, I2C, and RS-232&lt;br /&gt;
&lt;br /&gt;
== Checklist to Complete Before the First Day of Class ==&lt;br /&gt;
&lt;br /&gt;
Attendance at the first day of class is mandatory.  By the first day of class, you should:&lt;br /&gt;
&lt;br /&gt;
* Complete the reading and assignment 1, which is &amp;#039;&amp;#039;&amp;#039;due the first day of class!&amp;#039;&amp;#039;&amp;#039;  &amp;lt;!-- In fact, the first two weeks of assignments are already posted, so you are welcome to complete them all over the break and coast through the first two weeks of class.--&amp;gt;  The first assignments are designed to get you up to speed on the C programming language, which we will use throughout the course.&lt;br /&gt;
* Have a laptop with at least 2 USB ports.  Any operating system is fine.  One port will be used to program and communicate with your PIC microcontroller, and the other will be used for your portable oscilloscope.  &lt;br /&gt;
* Be prepared to buy your [[NU32: What is in the NU32 Kit|class kit]], consisting of the portable nScope oscilloscope, the NU32 PIC32 development board, and lots of other goodies.  Price $125 if you are starting from scratch; $75 if you already have the nScope.  &lt;br /&gt;
&amp;lt;!-- * Be able to solve circuit problems similar to those on the practice problem set and last year&amp;#039;s quiz at the bottom of [[ME_333_Circuits_Review_Material|this page]].  Be prepared for a quiz on this material in the second week of class.  We will only spend one class period reviewing this material.--&amp;gt;&lt;br /&gt;
&amp;lt;!-- * Buy your class kit [http://it.mccormick.northwestern.edu/matlab/student_license/login.php &amp;#039;&amp;#039;&amp;#039;here&amp;#039;&amp;#039;&amp;#039;].  If you already have the oscilloscope and multimeter from this year&amp;#039;s ME 233 offering, you should choose &amp;quot;ME 333 (w/o ME 233 equipment)&amp;quot; for the price of $75.  If you do not have the oscilloscope and multimeter, you should choose &amp;quot;ME 333 (w/ ME 233 equipment)&amp;quot; for the price of $135.  You will not be able to start the course until you have completed the purchase of your kit.  If you decide to drop the course, you will be refunded the purchase price upon return of all the equipment in working shape. --&amp;gt;&lt;br /&gt;
&amp;lt;!--* &amp;#039;&amp;#039;&amp;#039;If you are not already comfortable with the C language, or if you do not already have a C compiler installed on your laptop, this step is recommended before the first day of class.  This will give you a headstart on learning C.  If you don&amp;#039;t complete this before the first day of class, you will need to do it before the second class.&amp;#039;&amp;#039;&amp;#039;  Download and install the GCC GNU compiler collection and the Netbeans IDE (Integrated Development Environment) following the instructions [[Installing_a_C_Compiler_and_IDE|here]].  Verify that you can compile and run the sample programs at the end of that page.  Read the comments in invest.c to find references to the [[Media:CrashCourseinC.pdf|Crash Course in C document]] and answer the questions to learn more about C. &amp;#039;&amp;#039;&amp;#039;If you have problems installing a C compiler and running the programs, then you can still get a headstart before the first class by focusing on reading the C programs and the Crash Course in C manual to understand how they work.&amp;#039;&amp;#039;&amp;#039;--&amp;gt; &amp;lt;!-- * Download and install software described on [[NU32v2: Software to Install|this page]].  --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Student Contract ==&lt;br /&gt;
&lt;br /&gt;
By signing up for this course, you agree to complete the checklist above before the course starts.  You agree to stay engaged during the class period; even if your computer is open, no facebook or other distractions that will lessen your contribution to the class.  You understand that learning from classmates, and helping classmates, is encouraged, up to the stage of conceptualizing solutions.  You are not allowed to fully complete a solution in a team.  You understand that plagiarism is not tolerated.  You will report instances of plagiarism you are aware of.  Plagiarism includes, but is not limited to:&lt;br /&gt;
&lt;br /&gt;
* Allowing another student to copy your work.&lt;br /&gt;
* Copying another student&amp;#039;s work, in whole or in part.&lt;br /&gt;
* Transforming copied sections of code or solutions to try to disguise their origin.&lt;br /&gt;
* Borrowing code or solutions from others not in the course, e.g., code found on the internet, without attribution.  Borrowing code found on the internet is acceptable if the source is clearly indicated in your code comments, and if you understand how the code works.&lt;br /&gt;
&lt;br /&gt;
On our part (faculty and TAs), we commit to do our best to provide you a curriculum and set of experimental materials to get you up to speed on sophisticated mechatronics integration as quickly and efficiently as possible, while giving you a foundation in concepts needed to go further in future projects and courses.&lt;br /&gt;
&lt;br /&gt;
== Prerequisite ==&lt;br /&gt;
&lt;br /&gt;
ME 233 Electronics Design or similar (EECS 221, 225) is required. You will be expected to analyze circuits with resistors, capacitors, inductors, diodes, transistors, and op-amps. You can find refresher material and a sample quiz at [[ME_333_Circuits_Review_Material|this page]].&lt;br /&gt;
&lt;br /&gt;
== Reading ==&lt;br /&gt;
&lt;br /&gt;
Required:&lt;br /&gt;
&lt;br /&gt;
* [[Media:book-current.pdf|A Crash Course in C]]:  A brief introduction to the C programming language.  Sample code from this appendix can be found [[ME 333 Readings, Videos, and Sample Code|here]].  &lt;br /&gt;
* Optional:  [[Media:EssentialC.pdf|Essential C]] is also a very nice intro to C.  Let us know about other online C resources you find particularly useful.&lt;br /&gt;
* [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
* [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* wiki info on [[Microchip PICs]]&lt;br /&gt;
* [[Media:PIC32MX5XX6XX7XX_Family_Data_Sheet.pdf|PIC32 Data Sheet]] (256 pages, 5 MB pdf)&lt;br /&gt;
* [http://www.microchip.com/TechDoc.aspx?type=ReferenceManuals PIC32 Family Reference Manual, by chapter], and an [[Media:61132B_PIC32ReferenceManual.pdf‎|earlier version]] that conveniently has all chapters in one document.  Lots of useful and detailed information on the PIC32 architecture and how the peripherals work, including detailed description of their SFRs.  Only certain parts of certain chapters will be assigned.  These chapters include quite a lot of example code.  &amp;#039;&amp;#039;&amp;#039;Be warned though, Microchip was not very careful when writing the sample code; some of it contains syntax errors, or values in registers that are incorrect.&amp;#039;&amp;#039;&amp;#039;  Even with this being the case, this is still a very useful document.&lt;br /&gt;
* PIC32MX Peripheral Library (included as a .chm file under &amp;quot;Program Files\Microchip\MPLAB C32\doc&amp;quot; with your C32 compiler installation)&lt;br /&gt;
&lt;br /&gt;
Useful, but not required:&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Programming-32-bit-Microcontrollers-Exploring-Technology/dp/0750687096/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1294091438&amp;amp;sr=8-1-spell Programming 32-bit Microcontrollers in C:  Exploring the PIC32] by Lucio Di Jasio.  This is an easy to read and informative exploration of the PIC32.&lt;br /&gt;
* MPLAB C32 Libraries Guide and MPLAB C32 User Guide, included under &amp;quot;doc&amp;quot; of your C32 compiler installation&lt;br /&gt;
* Other C resources, such as [http://publications.gbdirect.co.uk/c_book/ online] as well as this [[Media:CBook.pdf|pdf version]] of &amp;quot;The C Book,&amp;quot; and the classic [http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=sr_1_1?s=books&amp;amp;ie=UTF8&amp;amp;qid=1294091625&amp;amp;sr=1-1 C Programming Language] reference book by Kernighan and Ritchie&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Grading ==&lt;br /&gt;
&lt;br /&gt;
Grades will be approximately 40% quizzes and 60% assignments and L-comps (including the final project).  We will have short quizzes once a week at the beginning of class covering material on the previous assignment.  Bring a sheet of paper you can turn in with your quiz answers.  (Your lowest quiz score,  assignment score, and L-comp score will be dropped.)  We will have a final project and demo in lieu of a final exam.&lt;br /&gt;
&lt;br /&gt;
All quizzes, assignments, and L-comps have equal weight, regardless of how many points they are graded out of.  If one assignment is graded out of 20 points, and the next out of 40, the formula for calculating your total grade for these two assignments would be 0.5*(score1/20) + 0.5*(score2/40).&lt;br /&gt;
&lt;br /&gt;
== Homework Submission ==&lt;br /&gt;
&lt;br /&gt;
All homework (except for the first class, when paper solutions should be turned in at the beginning of class) will be submitted using the [https://northwestern.instructure.com/courses/9664 Canvas Course Management System].  Homework should be submitted by 11 AM on the day it is due (i.e., before the first section of the day).  Late homework will not be accepted.&lt;br /&gt;
&lt;br /&gt;
Here are a few guidelines/tips associated with homework submissions:&lt;br /&gt;
&lt;br /&gt;
* Upload files individually. No zip archives!&lt;br /&gt;
&lt;br /&gt;
* Submit written responses as PDFs. &lt;br /&gt;
&lt;br /&gt;
* If you upload a PDF of handwritten work, make sure that the text appears clearly and the picture is oriented portrait style. &amp;quot;Cam Scanner&amp;quot; for Android and iOS phones easily scans images and compiles them into a single PDF file. &lt;br /&gt;
&lt;br /&gt;
* Unless otherwise stated, L-Comps should be in a single file.&lt;br /&gt;
&lt;br /&gt;
* When asked to submit C code for a given programming assignment, we are only concerned with receiving the relevant source files, i.e., all *.c and *.h files.  We do not want entire IDE/MPLAB X projects or executables/object files. &lt;br /&gt;
&lt;br /&gt;
* When writing your responses, please follow any instructions on how to write your response.  For example, if we ask for a snippet of code, please do not submit your entire C program with header files and a main routine.  We typically are only expecting a few lines of code that solve the problem.&lt;br /&gt;
&lt;br /&gt;
* Be neat and make sure your answers are easy to follow.  Messy hard-to-follow assignments make TAs cranky, and you don&amp;#039;t want cranky TAs grading your assignment!&lt;br /&gt;
&lt;br /&gt;
* It helps both us and you if you format your code nicely.  Clean looking code is easier for us to grade and easier for you to debug.  Text editors with IDEs such as Netbeans and MPLAB X have tools for auto-formatting code.  For example, highlighting a region and hitting Alt+Shift+f (Linux and Windows) will format that region according to your local formatting preferences.&lt;br /&gt;
&lt;br /&gt;
* When you compile your code, pay attention to any compiler warnings.  They are there for a reason!  You should be able to eventually get your code to produce no warnings.  Often if a piece of code is not working, the warnings will give a clue as to why.  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Note that in &amp;quot;project properties&amp;quot; in both IDEs, it is possible to generate &amp;quot;Additional warnings.&amp;quot;  This tells your compiler to be more strict about the rules of C.  The better you adhere to these rules, the more likely it is that your code will compile.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schedule ==&lt;br /&gt;
&lt;br /&gt;
This course is (partially) &amp;quot;flipped&amp;quot;:  you watch video lectures and do readings in advance of class, and during class, you should have plenty of opportunity for questions and interaction with the instructors and TAs as you work on assignments.  The purpose of this is to try to maximize the value of the class time.  In a typical lecture, 80% of the material is the same every time it is given, and the other 20% is interactive and variable based on student questions.  In a flipped class, we hope to flip this percentage, to better tailor the class to student needs.  You will have time with the instructors while your brains are actually on and working on the material (not just scribbling notes), the times when you are most likely to have questions.  Making the video lectures available should also allow you to spend more or less time on the lecture portion, depending on your prior background.  If the material is difficult for you, you can pause or rewind.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Please keep track of any questions you have as you watch the videos!&amp;#039;&amp;#039;&amp;#039; Bring these questions to class; it will make for a livelier classroom.  &lt;br /&gt;
&lt;br /&gt;
All readings, videos, and C code can be found at this page:  [[ME 333 Readings, Videos, and Sample Code|&amp;#039;&amp;#039;&amp;#039;ME 333 Readings, Videos, and Sample Code&amp;#039;&amp;#039;&amp;#039;]].  We will cover almost all of the Appendix, a Crash Course in C, in the first 1.5 weeks of class, so you can work ahead and do all the readings, watch all the videos, and do all the problems, if you have time over the break.  But at a minimum, you must do the winter break assignment.  &lt;br /&gt;
&lt;br /&gt;
After the first two weeks of class, we will have video lecture comprehension questions (L-comps) due before every class, assignments due every Tuesday, and quizzes every Thursday (on the material covered in the assignment turned in on Tuesday).  L-comps and assignments are turned in using Canvas before 11 AM the day of the class.  The weekly rhythm will be:&lt;br /&gt;
&lt;br /&gt;
* before Tuesday:  turn in assignment on material from previous week and L-comps on videos for the next class&lt;br /&gt;
* Tuesday in class:  discuss assignment, brief recap and Q&amp;amp;A on new videos, start on next assignment&lt;br /&gt;
* before Thursday:  turn in L-comps on videos for next class&lt;br /&gt;
* Thursday in class:  brief quiz on material in assignment turned in on Tuesday, recap and discuss videos, continue with asignment&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Winter Break&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Reading due for first class&amp;#039;&amp;#039;&amp;#039;:  pages 1-9 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Videos&amp;#039;&amp;#039;&amp;#039;:  1-7 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]].  Answer the lecture comprehension (L-comp) questions underneath each of the videos (you may need to click to expand).  You will turn in a paper version of your answers at the beginning of the first class.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment 1&amp;#039;&amp;#039;&amp;#039;:  Also do exercises 1-4, 6-8, 10-11, 14-15 of A Crash Course in C.  Bring your laptop to class and demonstrate your HelloWorld.c program.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (T 1/6)  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment due&amp;#039;&amp;#039;&amp;#039;:  Hand in a paper version of your L-comp and other solutions at the beginning of class.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 1.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos and readings&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercises 16-17, 19-20, 25-26, 28-30, 32.  Pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 8-16 of a Crash Course in C.  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video.  You need to click it to expand it.&lt;br /&gt;
: Reading:  Through page 23 of a Crash Course in C, and the rest as reference&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (Th 1/8)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 32.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.   If you have not yet, pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  17 of a Crash Course in C.&lt;br /&gt;
: Reading:  Rest of a Crash Course in C as reference&lt;br /&gt;
: Pizza and Programming Party, Monday Jan 12, 6:00-8:00, Tech B211 (ME conference room)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (T 1/13)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class assignment:  Creating your own helper library&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  none&lt;br /&gt;
: Reading:  [[Media:book-current.pdf|Chapter 1, Quickstart]]&lt;br /&gt;
: Assignment: Download, install, and compile all software as indicated through the end of Chapter 1.3.  Make sure you are using the new version of the book, which so far has only chapter 1 and the appendix.  You may need to &amp;quot;refresh&amp;quot; your browser while displaying the book, or clear your browser cache, to make sure you are seeing a January 2015 version of the book.  &amp;#039;&amp;#039;&amp;#039;Note to PC users:  Skip Chapter 1.2.  The nu32utility for the PC needs to be updated for you.&amp;#039;&amp;#039;&amp;#039; [https://it.mccormick.northwestern.edu/matlab/student_license/index.php Purchase your ME 333 kit if you have not yet.]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 4&amp;#039;&amp;#039;&amp;#039; (Th 1/15)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; On C. [[Media: Quiz 1 ME333.pdf| Quiz 1 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Distribute hardware and execute quickstart&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 1-4 from Chapter 2.&lt;br /&gt;
: Reading:  Complete Chapter 1 (quickstart) and Chapter 2.  Download the new version of the notes which should have the Appendix and Chapters 1 and 2.  Make sure you have completed the quickstart fully in Chapter 1, or else you will be behind for Tuesday&amp;#039;s class.  Get help from friends or office hours, and keep track of any problems you had, so we can make suggestions for future students.&lt;br /&gt;
: Assignment due at the beginning of class on Tues 1/20:  Problems 3-16 of Chapter 2.  You will need the [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]] and the [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]].&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;:  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment and videos discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Go over PIC32 software&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due Tues 1/27&amp;#039;&amp;#039;&amp;#039;:  Chapter 3, problems 1-9, and Chapter 4, problems 1, 2, and 4.  In class demo next Tuesday:  problem 5.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps) due Thurs:  All of Chapter 3.  &amp;#039;&amp;#039;&amp;#039;Please note&amp;#039;&amp;#039;&amp;#039;:  Videos 2, 3, and 4 make reference to including plib.h.  Instead, our new simplePIC.c program includes xc.h.  In video 3, you can ignore the plib.h part and focus on the xc.h part that comes later.  Also, the compiling command in video 4 is a bit different than what you see in the book, but there are no significant differences.&lt;br /&gt;
: Reading:  Complete Chapter 3.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief discussion of chapter 2 exercises and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapter 2.&amp;#039;&amp;#039;&amp;#039; [[Media: Quiz_2_ME333.pdf| Quiz 2 Solutions.]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of videos and L-comps on Chapter 3&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;New Makefile!&amp;#039;&amp;#039;&amp;#039;  Download from [[Pic32book|here]].&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start Chapter 4&amp;#039;&amp;#039;&amp;#039;.  Note three added homework exercises, from Chapter 4.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;talkingPIC demo&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Video and L-comp due Tues:  Chapter 4.&lt;br /&gt;
: Reading:  Complete Chapter 4.&lt;br /&gt;
: Added assignment exercises, due Tuesday:  Chapter 4 problems 1, 2, and 4.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;:  Turn in assignment on Chapters 3 and 4.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039;  On C&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Intro to Programming the PIC32&amp;#039;&amp;#039;&amp;#039;:  &lt;br /&gt;
:: Download the following documentation:&lt;br /&gt;
:: * [[Media:book-current.pdf|Chapter 1]]&lt;br /&gt;
:: * [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
:: * [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&lt;br /&gt;
:: When installing the software, you may need to update your Java for the MPLAB X IDE.  Answer &amp;quot;yes&amp;quot; if you are asked if you want to update your path when installing anything.  Mac OS X may not allow you to install since the software is from an &amp;quot;untrusted&amp;quot; developer.  You can override that by control-clicking on the dmg and choosing &amp;quot;Open&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment:&amp;#039;&amp;#039;&amp;#039;  Download and install all of the above.  &lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Assignment:  Finish the downloads and installations, as described above.&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_2:_Looking_Under_the_Hood:_Hardware|Videos 1-4 of Chapter 2]].  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video (click on it to expand it).&lt;br /&gt;
: Reading:  Chapter 1 (you can ignore 1.4.2, 1.5, and 1.6.2) and Chapter 2.  If you get the programs in 1.4.1 and 1.6.1 working, great!  If not, ask questions on the forum or we&amp;#039;ll do it in the next class.  Don&amp;#039;t destroy your board!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas]).  &amp;#039;&amp;#039;&amp;#039;No separate assignment to hand in today!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  We will make sure that everyone can run simplePIC.c and talkingPIC.c.  No demo grades today.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Problems 3-16 of Chapter 2 and problems 1-4, 6-8, 9 (parts a, c, d, and f only), and 10 of Chapter 3. Demo next Tuesday:  Chapter 3 exercise 6.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  video 17 of a Crash Course in C and all four videos for Chapter 3&lt;br /&gt;
: Reading:  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_3:_Looking_Under_the_Hood:_Software|Chapter 3]].&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on Chapter 2 L-comps.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 4 (only one video!)&lt;br /&gt;
: Reading:  Chapter 4&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 6 of Chapter 3.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercises 1, 2, and 3 (a) and (b), and Chapter 5 exercises 3, 5, 7, and 8.  Demo next Tuesday:  Chapter 4 exercise 3(b).&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 5 (2 videos)&lt;br /&gt;
: Reading:  Chapter 5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (Th 1/29)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 6 (5 videos)&lt;br /&gt;
: Reading:  Chapter 6&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (T 2/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercise 3(b).&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercises 1-8, 13, 15-18.  Demo next Tuesday:  Exercise 18.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 7 (3 videos)&lt;br /&gt;
: Reading:  Chapter 7&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (Th 2/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 8 (4 videos)&lt;br /&gt;
: Reading:  Chapter 8&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (T 2/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercise 18.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assignv2.pdf | Assignment Part 1]]&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): Chapter 9 (3 videos)&lt;br /&gt;
: Reading:  Chapter 9&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (Th 2/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assign_part2v2.pdf | Assignment Part 2]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:LEDPImain.c | Example Code for Part 2]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#PID_Control | On PID control]] (5 videos)&lt;br /&gt;
: Reading:  none&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (T 2/17)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18samplecode.txt | Sample Code]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:uart_plot.m | uart_plot.m]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_10:_Analog_Input | Analog input]] (1 video)&lt;br /&gt;
: Reading:  Chapter 10&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (Th 2/19)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:out.hex | out.hex]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:pid_plot.m | pid_plot.m ]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:comm.txt     | comm.txt ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_11:_Brushed_Permanent_Magnet_DC_Motors | Brushed Permanent Magnet DC Motors]] (7 videos!) &amp;#039;&amp;#039;&amp;#039;Notes:  (1) Because there are a lot of videos, these L-comps will count double of the usual L-comps.  (2) Because this material is critical to the in-class motor characterization we will do on Tuesday, it is critical you watch these videos.  Therefore, these L-comps are not eligible to be dropped as your lowest L-comps.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: Reading:  Chapter 11&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (T 2/24)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Square wave control of LED output.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Exercises 3-6 of Chapter 11. Begin exercise 4 in class.  For the experimental characterization (exercises 4-6), assume the motor is a 6 V motor and the coils can dissipate 5 W continuously (I^2 R) before overheating.  The encoder has 99 lines per revolution.  No demo on Tues of next week.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_12:_Motor_Sizing | Gears and Motor Sizing]] (3 videos)&lt;br /&gt;
: Reading:  Chapter 12&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (Th 2/26)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_13:_Motor_Control | Motor Control]] (4 videos)&lt;br /&gt;
: Reading:  Chapter 13&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17&amp;#039;&amp;#039;&amp;#039; (T 3/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  None.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin final project:&amp;#039;&amp;#039;&amp;#039;  Download:&lt;br /&gt;
* [[Media:MAX9918DS.pdf | MAX9918 current sensor data sheet]]&lt;br /&gt;
* [[Media:A3909DS.pdf | A3909 dual h-bridge motor driver data sheet]]&lt;br /&gt;
* [[Media:Final-Assignment-2014-part1.pdf | Final Assignment Part 1]]&lt;br /&gt;
* [[Media:ME333 Demo.zip | Demonstration]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Finish wiring H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  Complete Chapter 13.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (Th 3/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Demonstrate you can successfully use your matlab diagnostics code to interact with the H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday (&amp;#039;&amp;#039;&amp;#039;last quiz!&amp;#039;&amp;#039;&amp;#039;)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;.  Due Tuesday:  show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
* [[Media:me333final.zip | Final Project ]]&lt;br /&gt;
* [[Media:refplots-2014.pdf | Examples of motion reference trajectories ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (T 3/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Nothing to turn in, just the demo...&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;   Show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* [[Media:ME333FinalProjectTurnIn.pdf | Final Project Writeup ]]&lt;br /&gt;
* [[Media:ME333FinalProjectExtraCredit.pdf | Final Project Extra Credit ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (Th 3/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; No quiz!&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Final Demo&amp;#039;&amp;#039;&amp;#039;:  Monday 3/16, 3-5 PM or Wednesday 3/18, 9-11 AM. Electronic submission by Wednesday 3/19, 11 AM.&lt;br /&gt;
&lt;br /&gt;
== nScope ==&lt;br /&gt;
&lt;br /&gt;
[http://nscope.org/ nScope website]&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
Q: Do I need to know the C language to take this course?&lt;br /&gt;
&lt;br /&gt;
A: No. But if you already know C, there is still plenty else in this course for you. If you already know C, know how to use microcontrollers for real-time control, and have a good understanding how common sensors and actuators work and how to interface to them, this course may not be for you. Consider taking ME 433 Advanced Mechatronics in the spring quarter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: Is there an independent project?&lt;br /&gt;
&lt;br /&gt;
A: There is no large independent project. There will be a two-week project at the end of the course, but there will be no machining. For a more significant project, do a quarter-long project in ME 433 Advanced Mechatronics, offered in the spring quarter. ME 333 is good preparation for ME 433.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: What kind of laptop do I need?&lt;br /&gt;
&lt;br /&gt;
A: You need a laptop with at least 2 USB ports.  Any operating system is fine.&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=22991</id>
		<title>ME 333 Introduction to Mechatronics (Archive Winter 2016)</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=22991"/>
		<updated>2015-01-23T17:57:40Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Schedule */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Winter Quarter 2015&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;First day of class is Tuesday January 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Section 20:  Prof. Kevin Lynch, T Th, 11:00-12:20, Tech M345&lt;br /&gt;
* Section 21:  Prof. Nick Marchuk (nick.marchuk@gmail.com), T Th, 12:30-1:50, Tech M345&lt;br /&gt;
* TAs:  Ben Richardson (BenjaminRichardson2013@u.northwestern.edu) and Zack Woodruff (jzwoodruff@u.northwestern.edu)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Pizza and Programming Party&amp;#039;&amp;#039;&amp;#039;, Monday Jan 12, 6:00-8:00, Tech B211 (ME conference room).  Get help, or help others, on the programming assignment!  Sponsored by [https://asg.northwestern.edu/student-faculty-interaction-grants/ Student-Faculty Interaction Grants] (now accepting applications for your events!)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Final demo&amp;#039;&amp;#039;&amp;#039; (in lieu of final exam):  Monday Mar 16 3-5 PM (12:30-1:50 section) and Wednesday Mar 18 9-11 AM (11-12:20 section) &lt;br /&gt;
* Office Hours:  Mon 2-3 (Zack Woodruff, Tech B230); Tues 3-4 (3:30-4:30 on 2/24; Prof. Lynch, Tech B221); Wed 3-4 (Ben Richardson, Tech B230); every day 4-5 (Prof. Marchuk, Mechatronics Lab, Ford B100)&lt;br /&gt;
&lt;br /&gt;
* Quick links:&lt;br /&gt;
** [https://canvas.northwestern.edu/courses/9664 Canvas Course Management System]&lt;br /&gt;
** [[ME 333 Readings, Videos, and Sample Code|ME 333 Readings, Videos, and Sample Code]]&lt;br /&gt;
** [https://it.mccormick.northwestern.edu/matlab/student_license/index.php Purchase Your ME 333 Kit]&lt;br /&gt;
** [https://docs.google.com/forms/d/1V5VmjJdQGrsS3PjslubUS3cHMgHWLJCCPHxrewsFAyA/viewform Send a question for possible discussion in the next class] (use the Canvas discussion group for an online discussion)&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** [https://groups.google.com/a/u.northwestern.edu/forum/#!forum/me333-2014.me Google discussion forum]&lt;br /&gt;
** [[NU32: What is in the NU32 Kit|NU32 kit]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Purpose of this Course ==&lt;br /&gt;
&lt;br /&gt;
The purpose of this course is to &amp;#039;&amp;#039;&amp;#039;provide tools that help you express your creativity&amp;#039;&amp;#039;&amp;#039;.  Maybe you want to build a robot, or a piece of kinetic art, or an automatic ball-throwing device to entertain your dog; maybe you&amp;#039;ve identified a market for a new smart product and you&amp;#039;d like to prototype the device.  This course provides fundamentals of mechatronics to give you confidence to take on these projects.  You are encouraged to take what you learn in this course and apply it in the project-based ME 433 Advanced Mechatronics course, Design Competition, or independent projects.&lt;br /&gt;
&lt;br /&gt;
== Approximate Syllabus ==&lt;br /&gt;
&lt;br /&gt;
This course is for students that want to build microprocessor-controlled electromechanical devices.  &lt;br /&gt;
&lt;br /&gt;
To do this, ME 333 focuses on three topics: (1) general C programming; (2) Microchip PIC microcontroller architecture and C programming specific to the PIC (e.g., using the PIC&amp;#039;s peripherals, such as analog inputs, digital I/O, counters/timers, comm ports, etc.); and (3) interfacing the PIC to sensors and actuators, some theory of sensor and actuator operation, and interface circuitry and signal processing. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;You will do a lot of programming in this course!&amp;#039;&amp;#039;&amp;#039;  If you are certain you hate programming, then this is not the course for you.  But knowing how to program is very useful for any modern engineer.  The language we will use is C, a fairly low-level language that works well for microcontrollers, which is more portable and not nearly as painful and low-level as assembly language.  If you don&amp;#039;t know C, that&amp;#039;s not a problem, most students don&amp;#039;t before taking ME 333; but you should plan to learn it, and rather quickly.  You will have all the materials you need to start learning C before class starts, and &amp;#039;&amp;#039;&amp;#039;the first assignment on C is due on the first day of class&amp;#039;&amp;#039;&amp;#039;!  The reason:  even though we start out with C, that&amp;#039;s not the main goal of this course.  The main goal is to teach you about microcontrollers and mechatronics.  Plus some students already have C background.&lt;br /&gt;
&lt;br /&gt;
You will bring your laptop to each class.  As the quarter progresses, we will be handing out other equipment that you will need to bring to class, such as the NU32 development board that breaks out the [http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en545660 PIC32MX795F512L] microcontroller.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;It is essential you do the assigned reading and watch the videos in advance of class.&amp;#039;&amp;#039;&amp;#039;  You will have an assignment and/or lecture comprehension questions (L-comps) due before every class, turned in electronically on Canvas.  (This includes the very first day of class!)  Once a week we will have a short quiz.  Most classes will have a combination of a brief review, Q&amp;amp;A, and working individually or in small groups on problems while the instructors help answer any questions.&lt;br /&gt;
&lt;br /&gt;
Topics we will cover, time depending, include:&lt;br /&gt;
&lt;br /&gt;
* introduction to C programming&lt;br /&gt;
* introduction to the PIC32 hardware, and programming the PIC32 in C&lt;br /&gt;
* digital I/O&lt;br /&gt;
* counters/timers and interrupts&lt;br /&gt;
* analog input&lt;br /&gt;
* sensor smorgasbord&lt;br /&gt;
* digital signal processing:  filters and FFTs&lt;br /&gt;
* analog output and pulse-width modulation&lt;br /&gt;
* brushed permanent magnet DC motors:  theory and control&lt;br /&gt;
* stepper motors and RC servo motors&lt;br /&gt;
* communication by SPI, I2C, and RS-232&lt;br /&gt;
&lt;br /&gt;
== Checklist to Complete Before the First Day of Class ==&lt;br /&gt;
&lt;br /&gt;
Attendance at the first day of class is mandatory.  By the first day of class, you should:&lt;br /&gt;
&lt;br /&gt;
* Complete the reading and assignment 1, which is &amp;#039;&amp;#039;&amp;#039;due the first day of class!&amp;#039;&amp;#039;&amp;#039;  &amp;lt;!-- In fact, the first two weeks of assignments are already posted, so you are welcome to complete them all over the break and coast through the first two weeks of class.--&amp;gt;  The first assignments are designed to get you up to speed on the C programming language, which we will use throughout the course.&lt;br /&gt;
* Have a laptop with at least 2 USB ports.  Any operating system is fine.  One port will be used to program and communicate with your PIC microcontroller, and the other will be used for your portable oscilloscope.  &lt;br /&gt;
* Be prepared to buy your [[NU32: What is in the NU32 Kit|class kit]], consisting of the portable nScope oscilloscope, the NU32 PIC32 development board, and lots of other goodies.  Price $125 if you are starting from scratch; $75 if you already have the nScope.  &lt;br /&gt;
&amp;lt;!-- * Be able to solve circuit problems similar to those on the practice problem set and last year&amp;#039;s quiz at the bottom of [[ME_333_Circuits_Review_Material|this page]].  Be prepared for a quiz on this material in the second week of class.  We will only spend one class period reviewing this material.--&amp;gt;&lt;br /&gt;
&amp;lt;!-- * Buy your class kit [http://it.mccormick.northwestern.edu/matlab/student_license/login.php &amp;#039;&amp;#039;&amp;#039;here&amp;#039;&amp;#039;&amp;#039;].  If you already have the oscilloscope and multimeter from this year&amp;#039;s ME 233 offering, you should choose &amp;quot;ME 333 (w/o ME 233 equipment)&amp;quot; for the price of $75.  If you do not have the oscilloscope and multimeter, you should choose &amp;quot;ME 333 (w/ ME 233 equipment)&amp;quot; for the price of $135.  You will not be able to start the course until you have completed the purchase of your kit.  If you decide to drop the course, you will be refunded the purchase price upon return of all the equipment in working shape. --&amp;gt;&lt;br /&gt;
&amp;lt;!--* &amp;#039;&amp;#039;&amp;#039;If you are not already comfortable with the C language, or if you do not already have a C compiler installed on your laptop, this step is recommended before the first day of class.  This will give you a headstart on learning C.  If you don&amp;#039;t complete this before the first day of class, you will need to do it before the second class.&amp;#039;&amp;#039;&amp;#039;  Download and install the GCC GNU compiler collection and the Netbeans IDE (Integrated Development Environment) following the instructions [[Installing_a_C_Compiler_and_IDE|here]].  Verify that you can compile and run the sample programs at the end of that page.  Read the comments in invest.c to find references to the [[Media:CrashCourseinC.pdf|Crash Course in C document]] and answer the questions to learn more about C. &amp;#039;&amp;#039;&amp;#039;If you have problems installing a C compiler and running the programs, then you can still get a headstart before the first class by focusing on reading the C programs and the Crash Course in C manual to understand how they work.&amp;#039;&amp;#039;&amp;#039;--&amp;gt; &amp;lt;!-- * Download and install software described on [[NU32v2: Software to Install|this page]].  --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Student Contract ==&lt;br /&gt;
&lt;br /&gt;
By signing up for this course, you agree to complete the checklist above before the course starts.  You agree to stay engaged during the class period; even if your computer is open, no facebook or other distractions that will lessen your contribution to the class.  You understand that learning from classmates, and helping classmates, is encouraged, up to the stage of conceptualizing solutions.  You are not allowed to fully complete a solution in a team.  You understand that plagiarism is not tolerated.  You will report instances of plagiarism you are aware of.  Plagiarism includes, but is not limited to:&lt;br /&gt;
&lt;br /&gt;
* Allowing another student to copy your work.&lt;br /&gt;
* Copying another student&amp;#039;s work, in whole or in part.&lt;br /&gt;
* Transforming copied sections of code or solutions to try to disguise their origin.&lt;br /&gt;
* Borrowing code or solutions from others not in the course, e.g., code found on the internet, without attribution.  Borrowing code found on the internet is acceptable if the source is clearly indicated in your code comments, and if you understand how the code works.&lt;br /&gt;
&lt;br /&gt;
On our part (faculty and TAs), we commit to do our best to provide you a curriculum and set of experimental materials to get you up to speed on sophisticated mechatronics integration as quickly and efficiently as possible, while giving you a foundation in concepts needed to go further in future projects and courses.&lt;br /&gt;
&lt;br /&gt;
== Prerequisite ==&lt;br /&gt;
&lt;br /&gt;
ME 233 Electronics Design or similar (EECS 221, 225) is required. You will be expected to analyze circuits with resistors, capacitors, inductors, diodes, transistors, and op-amps. You can find refresher material and a sample quiz at [[ME_333_Circuits_Review_Material|this page]].&lt;br /&gt;
&lt;br /&gt;
== Reading ==&lt;br /&gt;
&lt;br /&gt;
Required:&lt;br /&gt;
&lt;br /&gt;
* [[Media:book-current.pdf|A Crash Course in C]]:  A brief introduction to the C programming language.  Sample code from this appendix can be found [[ME 333 Readings, Videos, and Sample Code|here]].  &lt;br /&gt;
* Optional:  [[Media:EssentialC.pdf|Essential C]] is also a very nice intro to C.  Let us know about other online C resources you find particularly useful.&lt;br /&gt;
* [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
* [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* wiki info on [[Microchip PICs]]&lt;br /&gt;
* [[Media:PIC32MX5XX6XX7XX_Family_Data_Sheet.pdf|PIC32 Data Sheet]] (256 pages, 5 MB pdf)&lt;br /&gt;
* [http://www.microchip.com/TechDoc.aspx?type=ReferenceManuals PIC32 Family Reference Manual, by chapter], and an [[Media:61132B_PIC32ReferenceManual.pdf‎|earlier version]] that conveniently has all chapters in one document.  Lots of useful and detailed information on the PIC32 architecture and how the peripherals work, including detailed description of their SFRs.  Only certain parts of certain chapters will be assigned.  These chapters include quite a lot of example code.  &amp;#039;&amp;#039;&amp;#039;Be warned though, Microchip was not very careful when writing the sample code; some of it contains syntax errors, or values in registers that are incorrect.&amp;#039;&amp;#039;&amp;#039;  Even with this being the case, this is still a very useful document.&lt;br /&gt;
* PIC32MX Peripheral Library (included as a .chm file under &amp;quot;Program Files\Microchip\MPLAB C32\doc&amp;quot; with your C32 compiler installation)&lt;br /&gt;
&lt;br /&gt;
Useful, but not required:&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Programming-32-bit-Microcontrollers-Exploring-Technology/dp/0750687096/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1294091438&amp;amp;sr=8-1-spell Programming 32-bit Microcontrollers in C:  Exploring the PIC32] by Lucio Di Jasio.  This is an easy to read and informative exploration of the PIC32.&lt;br /&gt;
* MPLAB C32 Libraries Guide and MPLAB C32 User Guide, included under &amp;quot;doc&amp;quot; of your C32 compiler installation&lt;br /&gt;
* Other C resources, such as [http://publications.gbdirect.co.uk/c_book/ online] as well as this [[Media:CBook.pdf|pdf version]] of &amp;quot;The C Book,&amp;quot; and the classic [http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=sr_1_1?s=books&amp;amp;ie=UTF8&amp;amp;qid=1294091625&amp;amp;sr=1-1 C Programming Language] reference book by Kernighan and Ritchie&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Grading ==&lt;br /&gt;
&lt;br /&gt;
Grades will be approximately 40% quizzes and 60% assignments and L-comps (including the final project).  We will have short quizzes once a week at the beginning of class covering material on the previous assignment.  Bring a sheet of paper you can turn in with your quiz answers.  (Your lowest quiz score,  assignment score, and L-comp score will be dropped.)  We will have a final project and demo in lieu of a final exam.&lt;br /&gt;
&lt;br /&gt;
All quizzes, assignments, and L-comps have equal weight, regardless of how many points they are graded out of.  If one assignment is graded out of 20 points, and the next out of 40, the formula for calculating your total grade for these two assignments would be 0.5*(score1/20) + 0.5*(score2/40).&lt;br /&gt;
&lt;br /&gt;
== Homework Submission ==&lt;br /&gt;
&lt;br /&gt;
All homework (except for the first class, when paper solutions should be turned in at the beginning of class) will be submitted using the [https://northwestern.instructure.com/courses/9664 Canvas Course Management System].  Homework should be submitted by 11 AM on the day it is due (i.e., before the first section of the day).  Late homework will not be accepted.&lt;br /&gt;
&lt;br /&gt;
Here are a few guidelines/tips associated with homework submissions:&lt;br /&gt;
&lt;br /&gt;
* Upload files individually. No zip archives!&lt;br /&gt;
&lt;br /&gt;
* Submit written responses as PDFs. &lt;br /&gt;
&lt;br /&gt;
* If you upload a PDF of handwritten work, make sure that the text appears clearly and the picture is oriented portrait style. &amp;quot;Cam Scanner&amp;quot; for Android and iOS phones easily scans images and compiles them into a single PDF file. &lt;br /&gt;
&lt;br /&gt;
* Unless otherwise stated, L-Comps should be in a single file.&lt;br /&gt;
&lt;br /&gt;
* When asked to submit C code for a given programming assignment, we are only concerned with receiving the relevant source files, i.e., all *.c and *.h files.  We do not want entire IDE/MPLAB X projects or executables/object files. &lt;br /&gt;
&lt;br /&gt;
* When writing your responses, please follow any instructions on how to write your response.  For example, if we ask for a snippet of code, please do not submit your entire C program with header files and a main routine.  We typically are only expecting a few lines of code that solve the problem.&lt;br /&gt;
&lt;br /&gt;
* Be neat and make sure your answers are easy to follow.  Messy hard-to-follow assignments make TAs cranky, and you don&amp;#039;t want cranky TAs grading your assignment!&lt;br /&gt;
&lt;br /&gt;
* It helps both us and you if you format your code nicely.  Clean looking code is easier for us to grade and easier for you to debug.  Text editors with IDEs such as Netbeans and MPLAB X have tools for auto-formatting code.  For example, highlighting a region and hitting Alt+Shift+f (Linux and Windows) will format that region according to your local formatting preferences.&lt;br /&gt;
&lt;br /&gt;
* When you compile your code, pay attention to any compiler warnings.  They are there for a reason!  You should be able to eventually get your code to produce no warnings.  Often if a piece of code is not working, the warnings will give a clue as to why.  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Note that in &amp;quot;project properties&amp;quot; in both IDEs, it is possible to generate &amp;quot;Additional warnings.&amp;quot;  This tells your compiler to be more strict about the rules of C.  The better you adhere to these rules, the more likely it is that your code will compile.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schedule ==&lt;br /&gt;
&lt;br /&gt;
This course is (partially) &amp;quot;flipped&amp;quot;:  you watch video lectures and do readings in advance of class, and during class, you should have plenty of opportunity for questions and interaction with the instructors and TAs as you work on assignments.  The purpose of this is to try to maximize the value of the class time.  In a typical lecture, 80% of the material is the same every time it is given, and the other 20% is interactive and variable based on student questions.  In a flipped class, we hope to flip this percentage, to better tailor the class to student needs.  You will have time with the instructors while your brains are actually on and working on the material (not just scribbling notes), the times when you are most likely to have questions.  Making the video lectures available should also allow you to spend more or less time on the lecture portion, depending on your prior background.  If the material is difficult for you, you can pause or rewind.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Please keep track of any questions you have as you watch the videos!&amp;#039;&amp;#039;&amp;#039; Bring these questions to class; it will make for a livelier classroom.  &lt;br /&gt;
&lt;br /&gt;
All readings, videos, and C code can be found at this page:  [[ME 333 Readings, Videos, and Sample Code|&amp;#039;&amp;#039;&amp;#039;ME 333 Readings, Videos, and Sample Code&amp;#039;&amp;#039;&amp;#039;]].  We will cover almost all of the Appendix, a Crash Course in C, in the first 1.5 weeks of class, so you can work ahead and do all the readings, watch all the videos, and do all the problems, if you have time over the break.  But at a minimum, you must do the winter break assignment.  &lt;br /&gt;
&lt;br /&gt;
After the first two weeks of class, we will have video lecture comprehension questions (L-comps) due before every class, assignments due every Tuesday, and quizzes every Thursday (on the material covered in the assignment turned in on Tuesday).  L-comps and assignments are turned in using Canvas before 11 AM the day of the class.  The weekly rhythm will be:&lt;br /&gt;
&lt;br /&gt;
* before Tuesday:  turn in assignment on material from previous week and L-comps on videos for the next class&lt;br /&gt;
* Tuesday in class:  discuss assignment, brief recap and Q&amp;amp;A on new videos, start on next assignment&lt;br /&gt;
* before Thursday:  turn in L-comps on videos for next class&lt;br /&gt;
* Thursday in class:  brief quiz on material in assignment turned in on Tuesday, recap and discuss videos, continue with asignment&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Winter Break&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Reading due for first class&amp;#039;&amp;#039;&amp;#039;:  pages 1-9 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Videos&amp;#039;&amp;#039;&amp;#039;:  1-7 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]].  Answer the lecture comprehension (L-comp) questions underneath each of the videos (you may need to click to expand).  You will turn in a paper version of your answers at the beginning of the first class.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment 1&amp;#039;&amp;#039;&amp;#039;:  Also do exercises 1-4, 6-8, 10-11, 14-15 of A Crash Course in C.  Bring your laptop to class and demonstrate your HelloWorld.c program.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (T 1/6)  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment due&amp;#039;&amp;#039;&amp;#039;:  Hand in a paper version of your L-comp and other solutions at the beginning of class.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 1.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos and readings&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercises 16-17, 19-20, 25-26, 28-30, 32.  Pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 8-16 of a Crash Course in C.  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video.  You need to click it to expand it.&lt;br /&gt;
: Reading:  Through page 23 of a Crash Course in C, and the rest as reference&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (Th 1/8)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 32.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.   If you have not yet, pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  17 of a Crash Course in C.&lt;br /&gt;
: Reading:  Rest of a Crash Course in C as reference&lt;br /&gt;
: Pizza and Programming Party, Monday Jan 12, 6:00-8:00, Tech B211 (ME conference room)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (T 1/13)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class assignment:  Creating your own helper library&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  none&lt;br /&gt;
: Reading:  [[Media:book-current.pdf|Chapter 1, Quickstart]]&lt;br /&gt;
: Assignment: Download, install, and compile all software as indicated through the end of Chapter 1.3.  Make sure you are using the new version of the book, which so far has only chapter 1 and the appendix.  You may need to &amp;quot;refresh&amp;quot; your browser while displaying the book, or clear your browser cache, to make sure you are seeing a January 2015 version of the book.  &amp;#039;&amp;#039;&amp;#039;Note to PC users:  Skip Chapter 1.2.  The nu32utility for the PC needs to be updated for you.&amp;#039;&amp;#039;&amp;#039; [https://it.mccormick.northwestern.edu/matlab/student_license/index.php Purchase your ME 333 kit if you have not yet.]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 4&amp;#039;&amp;#039;&amp;#039; (Th 1/15)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; On C. [[Media: Quiz 1 ME333.pdf| Quiz 1 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Distribute hardware and execute quickstart&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 1-4 from Chapter 2.&lt;br /&gt;
: Reading:  Complete Chapter 1 (quickstart) and Chapter 2.  Download the new version of the notes which should have the Appendix and Chapters 1 and 2.  Make sure you have completed the quickstart fully in Chapter 1, or else you will be behind for Tuesday&amp;#039;s class.  Get help from friends or office hours, and keep track of any problems you had, so we can make suggestions for future students.&lt;br /&gt;
: Assignment due at the beginning of class on Tues 1/20:  Problems 3-16 of Chapter 2.  You will need the [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]] and the [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]].&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;:  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment and videos discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Go over PIC32 software&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due Tues 1/27&amp;#039;&amp;#039;&amp;#039;:  Chapter 3, problems 1-9, and Chapter 4, problems 1, 2, and 4.  In class demo next Tuesday:  problem 5.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps) due Thurs:  All of Chapter 3.  &amp;#039;&amp;#039;&amp;#039;Please note&amp;#039;&amp;#039;&amp;#039;:  Videos 2, 3, and 4 make reference to including plib.h.  Instead, our new simplePIC.c program includes xc.h.  In video 3, you can ignore the plib.h part and focus on the xc.h part that comes later.  Also, the compiling command in video 4 is a bit different than what you see in the book, but there are no significant differences.&lt;br /&gt;
: Reading:  Complete Chapter 3.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief discussion of chapter 2 exercises and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz on Chapter 2&amp;#039;&amp;#039;&amp;#039; [[Media: Quiz_2_ME333.pdf| Quiz 2 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion of videos and L-comps on Chapter 3&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;New Makefile!&amp;#039;&amp;#039;&amp;#039;  Download from [[Pic32book|here]].&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Start Chapter 4&amp;#039;&amp;#039;&amp;#039;.  Note three added homework exercises, from Chapter 4.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;talkingPIC demo&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Video and L-comp due Tues:  Chapter 4.&lt;br /&gt;
: Reading:  Complete Chapter 4.&lt;br /&gt;
: Added assignment exercises, due Tuesday:  Chapter 4 problems 1, 2, and 4.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;:  Turn in assignment on Chapters 3 and 4.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039;  On C&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Intro to Programming the PIC32&amp;#039;&amp;#039;&amp;#039;:  &lt;br /&gt;
:: Download the following documentation:&lt;br /&gt;
:: * [[Media:book-current.pdf|Chapter 1]]&lt;br /&gt;
:: * [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
:: * [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&lt;br /&gt;
:: When installing the software, you may need to update your Java for the MPLAB X IDE.  Answer &amp;quot;yes&amp;quot; if you are asked if you want to update your path when installing anything.  Mac OS X may not allow you to install since the software is from an &amp;quot;untrusted&amp;quot; developer.  You can override that by control-clicking on the dmg and choosing &amp;quot;Open&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment:&amp;#039;&amp;#039;&amp;#039;  Download and install all of the above.  &lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Assignment:  Finish the downloads and installations, as described above.&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_2:_Looking_Under_the_Hood:_Hardware|Videos 1-4 of Chapter 2]].  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video (click on it to expand it).&lt;br /&gt;
: Reading:  Chapter 1 (you can ignore 1.4.2, 1.5, and 1.6.2) and Chapter 2.  If you get the programs in 1.4.1 and 1.6.1 working, great!  If not, ask questions on the forum or we&amp;#039;ll do it in the next class.  Don&amp;#039;t destroy your board!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas]).  &amp;#039;&amp;#039;&amp;#039;No separate assignment to hand in today!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  We will make sure that everyone can run simplePIC.c and talkingPIC.c.  No demo grades today.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Problems 3-16 of Chapter 2 and problems 1-4, 6-8, 9 (parts a, c, d, and f only), and 10 of Chapter 3. Demo next Tuesday:  Chapter 3 exercise 6.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  video 17 of a Crash Course in C and all four videos for Chapter 3&lt;br /&gt;
: Reading:  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_3:_Looking_Under_the_Hood:_Software|Chapter 3]].&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on Chapter 2 L-comps.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 4 (only one video!)&lt;br /&gt;
: Reading:  Chapter 4&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 6 of Chapter 3.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercises 1, 2, and 3 (a) and (b), and Chapter 5 exercises 3, 5, 7, and 8.  Demo next Tuesday:  Chapter 4 exercise 3(b).&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 5 (2 videos)&lt;br /&gt;
: Reading:  Chapter 5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (Th 1/29)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 6 (5 videos)&lt;br /&gt;
: Reading:  Chapter 6&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (T 2/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercise 3(b).&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercises 1-8, 13, 15-18.  Demo next Tuesday:  Exercise 18.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 7 (3 videos)&lt;br /&gt;
: Reading:  Chapter 7&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (Th 2/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 8 (4 videos)&lt;br /&gt;
: Reading:  Chapter 8&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (T 2/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercise 18.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assignv2.pdf | Assignment Part 1]]&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): Chapter 9 (3 videos)&lt;br /&gt;
: Reading:  Chapter 9&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (Th 2/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assign_part2v2.pdf | Assignment Part 2]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:LEDPImain.c | Example Code for Part 2]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#PID_Control | On PID control]] (5 videos)&lt;br /&gt;
: Reading:  none&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (T 2/17)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18samplecode.txt | Sample Code]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:uart_plot.m | uart_plot.m]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_10:_Analog_Input | Analog input]] (1 video)&lt;br /&gt;
: Reading:  Chapter 10&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (Th 2/19)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:out.hex | out.hex]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:pid_plot.m | pid_plot.m ]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:comm.txt     | comm.txt ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_11:_Brushed_Permanent_Magnet_DC_Motors | Brushed Permanent Magnet DC Motors]] (7 videos!) &amp;#039;&amp;#039;&amp;#039;Notes:  (1) Because there are a lot of videos, these L-comps will count double of the usual L-comps.  (2) Because this material is critical to the in-class motor characterization we will do on Tuesday, it is critical you watch these videos.  Therefore, these L-comps are not eligible to be dropped as your lowest L-comps.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: Reading:  Chapter 11&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (T 2/24)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Square wave control of LED output.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Exercises 3-6 of Chapter 11. Begin exercise 4 in class.  For the experimental characterization (exercises 4-6), assume the motor is a 6 V motor and the coils can dissipate 5 W continuously (I^2 R) before overheating.  The encoder has 99 lines per revolution.  No demo on Tues of next week.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_12:_Motor_Sizing | Gears and Motor Sizing]] (3 videos)&lt;br /&gt;
: Reading:  Chapter 12&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (Th 2/26)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_13:_Motor_Control | Motor Control]] (4 videos)&lt;br /&gt;
: Reading:  Chapter 13&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17&amp;#039;&amp;#039;&amp;#039; (T 3/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  None.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin final project:&amp;#039;&amp;#039;&amp;#039;  Download:&lt;br /&gt;
* [[Media:MAX9918DS.pdf | MAX9918 current sensor data sheet]]&lt;br /&gt;
* [[Media:A3909DS.pdf | A3909 dual h-bridge motor driver data sheet]]&lt;br /&gt;
* [[Media:Final-Assignment-2014-part1.pdf | Final Assignment Part 1]]&lt;br /&gt;
* [[Media:ME333 Demo.zip | Demonstration]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Finish wiring H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  Complete Chapter 13.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (Th 3/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Demonstrate you can successfully use your matlab diagnostics code to interact with the H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday (&amp;#039;&amp;#039;&amp;#039;last quiz!&amp;#039;&amp;#039;&amp;#039;)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;.  Due Tuesday:  show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
* [[Media:me333final.zip | Final Project ]]&lt;br /&gt;
* [[Media:refplots-2014.pdf | Examples of motion reference trajectories ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (T 3/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Nothing to turn in, just the demo...&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;   Show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* [[Media:ME333FinalProjectTurnIn.pdf | Final Project Writeup ]]&lt;br /&gt;
* [[Media:ME333FinalProjectExtraCredit.pdf | Final Project Extra Credit ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (Th 3/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; No quiz!&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Final Demo&amp;#039;&amp;#039;&amp;#039;:  Monday 3/16, 3-5 PM or Wednesday 3/18, 9-11 AM. Electronic submission by Wednesday 3/19, 11 AM.&lt;br /&gt;
&lt;br /&gt;
== nScope ==&lt;br /&gt;
&lt;br /&gt;
[http://nscope.org/ nScope website]&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
Q: Do I need to know the C language to take this course?&lt;br /&gt;
&lt;br /&gt;
A: No. But if you already know C, there is still plenty else in this course for you. If you already know C, know how to use microcontrollers for real-time control, and have a good understanding how common sensors and actuators work and how to interface to them, this course may not be for you. Consider taking ME 433 Advanced Mechatronics in the spring quarter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: Is there an independent project?&lt;br /&gt;
&lt;br /&gt;
A: There is no large independent project. There will be a two-week project at the end of the course, but there will be no machining. For a more significant project, do a quarter-long project in ME 433 Advanced Mechatronics, offered in the spring quarter. ME 333 is good preparation for ME 433.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: What kind of laptop do I need?&lt;br /&gt;
&lt;br /&gt;
A: You need a laptop with at least 2 USB ports.  Any operating system is fine.&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=File:Quiz_2_ME333.pdf&amp;diff=22990</id>
		<title>File:Quiz 2 ME333.pdf</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=File:Quiz_2_ME333.pdf&amp;diff=22990"/>
		<updated>2015-01-23T17:56:05Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=22965</id>
		<title>ME 333 Introduction to Mechatronics (Archive Winter 2016)</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=22965"/>
		<updated>2015-01-20T17:09:32Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Schedule */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Winter Quarter 2015&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;First day of class is Tuesday January 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Section 20:  Prof. Kevin Lynch, T Th, 11:00-12:20, Tech M345&lt;br /&gt;
* Section 21:  Prof. Nick Marchuk (nick.marchuk@gmail.com), T Th, 12:30-1:50, Tech M345&lt;br /&gt;
* TAs:  Ben Richardson (BenjaminRichardson2013@u.northwestern.edu) and Zack Woodruff (jzwoodruff@u.northwestern.edu)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Pizza and Programming Party&amp;#039;&amp;#039;&amp;#039;, Monday Jan 12, 6:00-8:00, Tech B211 (ME conference room).  Get help, or help others, on the programming assignment!  Sponsored by [https://asg.northwestern.edu/student-faculty-interaction-grants/ Student-Faculty Interaction Grants] (now accepting applications for your events!)&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Final demo&amp;#039;&amp;#039;&amp;#039; (in lieu of final exam):  Monday Mar 16 3-5 PM (12:30-1:50 section) and Wednesday Mar 18 9-11 AM (11-12:20 section) &lt;br /&gt;
* Office Hours:  Mon 2-3 (Zack Woodruff, Tech B230); Tues 3-4 (3:30-4:30 on 2/24; Prof. Lynch, Tech B221); Wed 3-4 (Ben Richardson, Tech B230); every day 4-5 (Prof. Marchuk, Mechatronics Lab, Ford B100)&lt;br /&gt;
&lt;br /&gt;
* Quick links:&lt;br /&gt;
** [https://canvas.northwestern.edu/courses/9664 Canvas Course Management System]&lt;br /&gt;
** [[ME 333 Readings, Videos, and Sample Code|ME 333 Readings, Videos, and Sample Code]]&lt;br /&gt;
** [https://it.mccormick.northwestern.edu/matlab/student_license/index.php Purchase Your ME 333 Kit]&lt;br /&gt;
** [https://docs.google.com/forms/d/1V5VmjJdQGrsS3PjslubUS3cHMgHWLJCCPHxrewsFAyA/viewform Send a question for possible discussion in the next class] (use the Canvas discussion group for an online discussion)&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
** [https://groups.google.com/a/u.northwestern.edu/forum/#!forum/me333-2014.me Google discussion forum]&lt;br /&gt;
** [[NU32: What is in the NU32 Kit|NU32 kit]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Purpose of this Course ==&lt;br /&gt;
&lt;br /&gt;
The purpose of this course is to &amp;#039;&amp;#039;&amp;#039;provide tools that help you express your creativity&amp;#039;&amp;#039;&amp;#039;.  Maybe you want to build a robot, or a piece of kinetic art, or an automatic ball-throwing device to entertain your dog; maybe you&amp;#039;ve identified a market for a new smart product and you&amp;#039;d like to prototype the device.  This course provides fundamentals of mechatronics to give you confidence to take on these projects.  You are encouraged to take what you learn in this course and apply it in the project-based ME 433 Advanced Mechatronics course, Design Competition, or independent projects.&lt;br /&gt;
&lt;br /&gt;
== Approximate Syllabus ==&lt;br /&gt;
&lt;br /&gt;
This course is for students that want to build microprocessor-controlled electromechanical devices.  &lt;br /&gt;
&lt;br /&gt;
To do this, ME 333 focuses on three topics: (1) general C programming; (2) Microchip PIC microcontroller architecture and C programming specific to the PIC (e.g., using the PIC&amp;#039;s peripherals, such as analog inputs, digital I/O, counters/timers, comm ports, etc.); and (3) interfacing the PIC to sensors and actuators, some theory of sensor and actuator operation, and interface circuitry and signal processing. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;You will do a lot of programming in this course!&amp;#039;&amp;#039;&amp;#039;  If you are certain you hate programming, then this is not the course for you.  But knowing how to program is very useful for any modern engineer.  The language we will use is C, a fairly low-level language that works well for microcontrollers, which is more portable and not nearly as painful and low-level as assembly language.  If you don&amp;#039;t know C, that&amp;#039;s not a problem, most students don&amp;#039;t before taking ME 333; but you should plan to learn it, and rather quickly.  You will have all the materials you need to start learning C before class starts, and &amp;#039;&amp;#039;&amp;#039;the first assignment on C is due on the first day of class&amp;#039;&amp;#039;&amp;#039;!  The reason:  even though we start out with C, that&amp;#039;s not the main goal of this course.  The main goal is to teach you about microcontrollers and mechatronics.  Plus some students already have C background.&lt;br /&gt;
&lt;br /&gt;
You will bring your laptop to each class.  As the quarter progresses, we will be handing out other equipment that you will need to bring to class, such as the NU32 development board that breaks out the [http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en545660 PIC32MX795F512L] microcontroller.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;It is essential you do the assigned reading and watch the videos in advance of class.&amp;#039;&amp;#039;&amp;#039;  You will have an assignment and/or lecture comprehension questions (L-comps) due before every class, turned in electronically on Canvas.  (This includes the very first day of class!)  Once a week we will have a short quiz.  Most classes will have a combination of a brief review, Q&amp;amp;A, and working individually or in small groups on problems while the instructors help answer any questions.&lt;br /&gt;
&lt;br /&gt;
Topics we will cover, time depending, include:&lt;br /&gt;
&lt;br /&gt;
* introduction to C programming&lt;br /&gt;
* introduction to the PIC32 hardware, and programming the PIC32 in C&lt;br /&gt;
* digital I/O&lt;br /&gt;
* counters/timers and interrupts&lt;br /&gt;
* analog input&lt;br /&gt;
* sensor smorgasbord&lt;br /&gt;
* digital signal processing:  filters and FFTs&lt;br /&gt;
* analog output and pulse-width modulation&lt;br /&gt;
* brushed permanent magnet DC motors:  theory and control&lt;br /&gt;
* stepper motors and RC servo motors&lt;br /&gt;
* communication by SPI, I2C, and RS-232&lt;br /&gt;
&lt;br /&gt;
== Checklist to Complete Before the First Day of Class ==&lt;br /&gt;
&lt;br /&gt;
Attendance at the first day of class is mandatory.  By the first day of class, you should:&lt;br /&gt;
&lt;br /&gt;
* Complete the reading and assignment 1, which is &amp;#039;&amp;#039;&amp;#039;due the first day of class!&amp;#039;&amp;#039;&amp;#039;  &amp;lt;!-- In fact, the first two weeks of assignments are already posted, so you are welcome to complete them all over the break and coast through the first two weeks of class.--&amp;gt;  The first assignments are designed to get you up to speed on the C programming language, which we will use throughout the course.&lt;br /&gt;
* Have a laptop with at least 2 USB ports.  Any operating system is fine.  One port will be used to program and communicate with your PIC microcontroller, and the other will be used for your portable oscilloscope.  &lt;br /&gt;
* Be prepared to buy your [[NU32: What is in the NU32 Kit|class kit]], consisting of the portable nScope oscilloscope, the NU32 PIC32 development board, and lots of other goodies.  Price $125 if you are starting from scratch; $75 if you already have the nScope.  &lt;br /&gt;
&amp;lt;!-- * Be able to solve circuit problems similar to those on the practice problem set and last year&amp;#039;s quiz at the bottom of [[ME_333_Circuits_Review_Material|this page]].  Be prepared for a quiz on this material in the second week of class.  We will only spend one class period reviewing this material.--&amp;gt;&lt;br /&gt;
&amp;lt;!-- * Buy your class kit [http://it.mccormick.northwestern.edu/matlab/student_license/login.php &amp;#039;&amp;#039;&amp;#039;here&amp;#039;&amp;#039;&amp;#039;].  If you already have the oscilloscope and multimeter from this year&amp;#039;s ME 233 offering, you should choose &amp;quot;ME 333 (w/o ME 233 equipment)&amp;quot; for the price of $75.  If you do not have the oscilloscope and multimeter, you should choose &amp;quot;ME 333 (w/ ME 233 equipment)&amp;quot; for the price of $135.  You will not be able to start the course until you have completed the purchase of your kit.  If you decide to drop the course, you will be refunded the purchase price upon return of all the equipment in working shape. --&amp;gt;&lt;br /&gt;
&amp;lt;!--* &amp;#039;&amp;#039;&amp;#039;If you are not already comfortable with the C language, or if you do not already have a C compiler installed on your laptop, this step is recommended before the first day of class.  This will give you a headstart on learning C.  If you don&amp;#039;t complete this before the first day of class, you will need to do it before the second class.&amp;#039;&amp;#039;&amp;#039;  Download and install the GCC GNU compiler collection and the Netbeans IDE (Integrated Development Environment) following the instructions [[Installing_a_C_Compiler_and_IDE|here]].  Verify that you can compile and run the sample programs at the end of that page.  Read the comments in invest.c to find references to the [[Media:CrashCourseinC.pdf|Crash Course in C document]] and answer the questions to learn more about C. &amp;#039;&amp;#039;&amp;#039;If you have problems installing a C compiler and running the programs, then you can still get a headstart before the first class by focusing on reading the C programs and the Crash Course in C manual to understand how they work.&amp;#039;&amp;#039;&amp;#039;--&amp;gt; &amp;lt;!-- * Download and install software described on [[NU32v2: Software to Install|this page]].  --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Student Contract ==&lt;br /&gt;
&lt;br /&gt;
By signing up for this course, you agree to complete the checklist above before the course starts.  You agree to stay engaged during the class period; even if your computer is open, no facebook or other distractions that will lessen your contribution to the class.  You understand that learning from classmates, and helping classmates, is encouraged, up to the stage of conceptualizing solutions.  You are not allowed to fully complete a solution in a team.  You understand that plagiarism is not tolerated.  You will report instances of plagiarism you are aware of.  Plagiarism includes, but is not limited to:&lt;br /&gt;
&lt;br /&gt;
* Allowing another student to copy your work.&lt;br /&gt;
* Copying another student&amp;#039;s work, in whole or in part.&lt;br /&gt;
* Transforming copied sections of code or solutions to try to disguise their origin.&lt;br /&gt;
* Borrowing code or solutions from others not in the course, e.g., code found on the internet, without attribution.  Borrowing code found on the internet is acceptable if the source is clearly indicated in your code comments, and if you understand how the code works.&lt;br /&gt;
&lt;br /&gt;
On our part (faculty and TAs), we commit to do our best to provide you a curriculum and set of experimental materials to get you up to speed on sophisticated mechatronics integration as quickly and efficiently as possible, while giving you a foundation in concepts needed to go further in future projects and courses.&lt;br /&gt;
&lt;br /&gt;
== Prerequisite ==&lt;br /&gt;
&lt;br /&gt;
ME 233 Electronics Design or similar (EECS 221, 225) is required. You will be expected to analyze circuits with resistors, capacitors, inductors, diodes, transistors, and op-amps. You can find refresher material and a sample quiz at [[ME_333_Circuits_Review_Material|this page]].&lt;br /&gt;
&lt;br /&gt;
== Reading ==&lt;br /&gt;
&lt;br /&gt;
Required:&lt;br /&gt;
&lt;br /&gt;
* [[Media:book-current.pdf|A Crash Course in C]]:  A brief introduction to the C programming language.  Sample code from this appendix can be found [[ME 333 Readings, Videos, and Sample Code|here]].  &lt;br /&gt;
* Optional:  [[Media:EssentialC.pdf|Essential C]] is also a very nice intro to C.  Let us know about other online C resources you find particularly useful.&lt;br /&gt;
* [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
* [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* wiki info on [[Microchip PICs]]&lt;br /&gt;
* [[Media:PIC32MX5XX6XX7XX_Family_Data_Sheet.pdf|PIC32 Data Sheet]] (256 pages, 5 MB pdf)&lt;br /&gt;
* [http://www.microchip.com/TechDoc.aspx?type=ReferenceManuals PIC32 Family Reference Manual, by chapter], and an [[Media:61132B_PIC32ReferenceManual.pdf‎|earlier version]] that conveniently has all chapters in one document.  Lots of useful and detailed information on the PIC32 architecture and how the peripherals work, including detailed description of their SFRs.  Only certain parts of certain chapters will be assigned.  These chapters include quite a lot of example code.  &amp;#039;&amp;#039;&amp;#039;Be warned though, Microchip was not very careful when writing the sample code; some of it contains syntax errors, or values in registers that are incorrect.&amp;#039;&amp;#039;&amp;#039;  Even with this being the case, this is still a very useful document.&lt;br /&gt;
* PIC32MX Peripheral Library (included as a .chm file under &amp;quot;Program Files\Microchip\MPLAB C32\doc&amp;quot; with your C32 compiler installation)&lt;br /&gt;
&lt;br /&gt;
Useful, but not required:&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Programming-32-bit-Microcontrollers-Exploring-Technology/dp/0750687096/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1294091438&amp;amp;sr=8-1-spell Programming 32-bit Microcontrollers in C:  Exploring the PIC32] by Lucio Di Jasio.  This is an easy to read and informative exploration of the PIC32.&lt;br /&gt;
* MPLAB C32 Libraries Guide and MPLAB C32 User Guide, included under &amp;quot;doc&amp;quot; of your C32 compiler installation&lt;br /&gt;
* Other C resources, such as [http://publications.gbdirect.co.uk/c_book/ online] as well as this [[Media:CBook.pdf|pdf version]] of &amp;quot;The C Book,&amp;quot; and the classic [http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=sr_1_1?s=books&amp;amp;ie=UTF8&amp;amp;qid=1294091625&amp;amp;sr=1-1 C Programming Language] reference book by Kernighan and Ritchie&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Grading ==&lt;br /&gt;
&lt;br /&gt;
Grades will be approximately 40% quizzes and 60% assignments and L-comps (including the final project).  We will have short quizzes once a week at the beginning of class covering material on the previous assignment.  Bring a sheet of paper you can turn in with your quiz answers.  (Your lowest quiz score,  assignment score, and L-comp score will be dropped.)  We will have a final project and demo in lieu of a final exam.&lt;br /&gt;
&lt;br /&gt;
All quizzes, assignments, and L-comps have equal weight, regardless of how many points they are graded out of.  If one assignment is graded out of 20 points, and the next out of 40, the formula for calculating your total grade for these two assignments would be 0.5*(score1/20) + 0.5*(score2/40).&lt;br /&gt;
&lt;br /&gt;
== Homework Submission ==&lt;br /&gt;
&lt;br /&gt;
All homework (except for the first class, when paper solutions should be turned in at the beginning of class) will be submitted using the [https://northwestern.instructure.com/courses/9664 Canvas Course Management System].  Homework should be submitted by 11 AM on the day it is due (i.e., before the first section of the day).  Late homework will not be accepted.&lt;br /&gt;
&lt;br /&gt;
Here are a few guidelines/tips associated with homework submissions:&lt;br /&gt;
&lt;br /&gt;
* Upload files individually. No zip archives!&lt;br /&gt;
&lt;br /&gt;
* Submit written responses as PDFs. &lt;br /&gt;
&lt;br /&gt;
* If you upload a PDF of handwritten work, make sure that the text appears clearly and the picture is oriented portrait style. &amp;quot;Cam Scanner&amp;quot; for Android and iOS phones easily scans images and compiles them into a single PDF file. &lt;br /&gt;
&lt;br /&gt;
* Unless otherwise stated, L-Comps should be in a single file.&lt;br /&gt;
&lt;br /&gt;
* When asked to submit C code for a given programming assignment, we are only concerned with receiving the relevant source files, i.e., all *.c and *.h files.  We do not want entire IDE/MPLAB X projects or executables/object files. &lt;br /&gt;
&lt;br /&gt;
* When writing your responses, please follow any instructions on how to write your response.  For example, if we ask for a snippet of code, please do not submit your entire C program with header files and a main routine.  We typically are only expecting a few lines of code that solve the problem.&lt;br /&gt;
&lt;br /&gt;
* Be neat and make sure your answers are easy to follow.  Messy hard-to-follow assignments make TAs cranky, and you don&amp;#039;t want cranky TAs grading your assignment!&lt;br /&gt;
&lt;br /&gt;
* It helps both us and you if you format your code nicely.  Clean looking code is easier for us to grade and easier for you to debug.  Text editors with IDEs such as Netbeans and MPLAB X have tools for auto-formatting code.  For example, highlighting a region and hitting Alt+Shift+f (Linux and Windows) will format that region according to your local formatting preferences.&lt;br /&gt;
&lt;br /&gt;
* When you compile your code, pay attention to any compiler warnings.  They are there for a reason!  You should be able to eventually get your code to produce no warnings.  Often if a piece of code is not working, the warnings will give a clue as to why.  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Note that in &amp;quot;project properties&amp;quot; in both IDEs, it is possible to generate &amp;quot;Additional warnings.&amp;quot;  This tells your compiler to be more strict about the rules of C.  The better you adhere to these rules, the more likely it is that your code will compile.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schedule ==&lt;br /&gt;
&lt;br /&gt;
This course is (partially) &amp;quot;flipped&amp;quot;:  you watch video lectures and do readings in advance of class, and during class, you should have plenty of opportunity for questions and interaction with the instructors and TAs as you work on assignments.  The purpose of this is to try to maximize the value of the class time.  In a typical lecture, 80% of the material is the same every time it is given, and the other 20% is interactive and variable based on student questions.  In a flipped class, we hope to flip this percentage, to better tailor the class to student needs.  You will have time with the instructors while your brains are actually on and working on the material (not just scribbling notes), the times when you are most likely to have questions.  Making the video lectures available should also allow you to spend more or less time on the lecture portion, depending on your prior background.  If the material is difficult for you, you can pause or rewind.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Please keep track of any questions you have as you watch the videos!&amp;#039;&amp;#039;&amp;#039; Bring these questions to class; it will make for a livelier classroom.  &lt;br /&gt;
&lt;br /&gt;
All readings, videos, and C code can be found at this page:  [[ME 333 Readings, Videos, and Sample Code|&amp;#039;&amp;#039;&amp;#039;ME 333 Readings, Videos, and Sample Code&amp;#039;&amp;#039;&amp;#039;]].  We will cover almost all of the Appendix, a Crash Course in C, in the first 1.5 weeks of class, so you can work ahead and do all the readings, watch all the videos, and do all the problems, if you have time over the break.  But at a minimum, you must do the winter break assignment.  &lt;br /&gt;
&lt;br /&gt;
After the first two weeks of class, we will have video lecture comprehension questions (L-comps) due before every class, assignments due every Tuesday, and quizzes every Thursday (on the material covered in the assignment turned in on Tuesday).  L-comps and assignments are turned in using Canvas before 11 AM the day of the class.  The weekly rhythm will be:&lt;br /&gt;
&lt;br /&gt;
* before Tuesday:  turn in assignment on material from previous week and L-comps on videos for the next class&lt;br /&gt;
* Tuesday in class:  discuss assignment, brief recap and Q&amp;amp;A on new videos, start on next assignment&lt;br /&gt;
* before Thursday:  turn in L-comps on videos for next class&lt;br /&gt;
* Thursday in class:  brief quiz on material in assignment turned in on Tuesday, recap and discuss videos, continue with asignment&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Winter Break&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Reading due for first class&amp;#039;&amp;#039;&amp;#039;:  pages 1-9 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Videos&amp;#039;&amp;#039;&amp;#039;:  1-7 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]].  Answer the lecture comprehension (L-comp) questions underneath each of the videos (you may need to click to expand).  You will turn in a paper version of your answers at the beginning of the first class.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment 1&amp;#039;&amp;#039;&amp;#039;:  Also do exercises 1-4, 6-8, 10-11, 14-15 of A Crash Course in C.  Bring your laptop to class and demonstrate your HelloWorld.c program.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (T 1/6)  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment due&amp;#039;&amp;#039;&amp;#039;:  Hand in a paper version of your L-comp and other solutions at the beginning of class.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 1.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos and readings&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercises 16-17, 19-20, 25-26, 28-30, 32.  Pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 8-16 of a Crash Course in C.  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video.  You need to click it to expand it.&lt;br /&gt;
: Reading:  Through page 23 of a Crash Course in C, and the rest as reference&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (Th 1/8)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 32.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.   If you have not yet, pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  17 of a Crash Course in C.&lt;br /&gt;
: Reading:  Rest of a Crash Course in C as reference&lt;br /&gt;
: Pizza and Programming Party, Monday Jan 12, 6:00-8:00, Tech B211 (ME conference room)&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (T 1/13)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class assignment:  Creating your own helper library&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  none&lt;br /&gt;
: Reading:  [[Media:book-current.pdf|Chapter 1, Quickstart]]&lt;br /&gt;
: Assignment: Download, install, and compile all software as indicated through the end of Chapter 1.3.  Make sure you are using the new version of the book, which so far has only chapter 1 and the appendix.  You may need to &amp;quot;refresh&amp;quot; your browser while displaying the book, or clear your browser cache, to make sure you are seeing a January 2015 version of the book.  &amp;#039;&amp;#039;&amp;#039;Note to PC users:  Skip Chapter 1.2.  The nu32utility for the PC needs to be updated for you.&amp;#039;&amp;#039;&amp;#039; [https://it.mccormick.northwestern.edu/matlab/student_license/index.php Purchase your ME 333 kit if you have not yet.]&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 4&amp;#039;&amp;#039;&amp;#039; (Th 1/15)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; On C. [[Media: Quiz 1 ME333.pdf| Quiz 1 Solutions]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Distribute hardware and execute quickstart&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 1-4 from Chapter 2.&lt;br /&gt;
: Reading:  Complete Chapter 1 (quickstart) and Chapter 2.  Download the new version of the notes which should have the Appendix and Chapters 1 and 2.  Make sure you have completed the quickstart fully in Chapter 1, or else you will be behind for Tuesday&amp;#039;s class.  Get help from friends or office hours, and keep track of any problems you had, so we can make suggestions for future students.&lt;br /&gt;
: Assignment due at the beginning of class on Tues 1/20:  Problems 3-16 of Chapter 2.  You will need the [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]] and the [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]].&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM&amp;#039;&amp;#039;&amp;#039;:  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment and videos discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Go over PIC32 software&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment&amp;#039;&amp;#039;&amp;#039;:  Chapter 3, problems 1-9.  In class demo next Tuesday:  problem 5.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  All of Chapter 3.  &amp;#039;&amp;#039;&amp;#039;Please note&amp;#039;&amp;#039;&amp;#039;:  Videos 2, 3, and 4 make reference to including plib.h.  Instead, our new simplePIC.c program includes xc.h.  In video 3, you can ignore the plib.h part and focus on the xc.h part that comes later.  Also, the compiling command in video 4 is a bit different than what you see in the book, but there are no significant differences.&lt;br /&gt;
: Reading:  Complete Chapter 3.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039;  On C&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Intro to Programming the PIC32&amp;#039;&amp;#039;&amp;#039;:  &lt;br /&gt;
:: Download the following documentation:&lt;br /&gt;
:: * [[Media:book-current.pdf|Chapter 1]]&lt;br /&gt;
:: * [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
:: * [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&lt;br /&gt;
:: When installing the software, you may need to update your Java for the MPLAB X IDE.  Answer &amp;quot;yes&amp;quot; if you are asked if you want to update your path when installing anything.  Mac OS X may not allow you to install since the software is from an &amp;quot;untrusted&amp;quot; developer.  You can override that by control-clicking on the dmg and choosing &amp;quot;Open&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment:&amp;#039;&amp;#039;&amp;#039;  Download and install all of the above.  &lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Assignment:  Finish the downloads and installations, as described above.&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_2:_Looking_Under_the_Hood:_Hardware|Videos 1-4 of Chapter 2]].  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video (click on it to expand it).&lt;br /&gt;
: Reading:  Chapter 1 (you can ignore 1.4.2, 1.5, and 1.6.2) and Chapter 2.  If you get the programs in 1.4.1 and 1.6.1 working, great!  If not, ask questions on the forum or we&amp;#039;ll do it in the next class.  Don&amp;#039;t destroy your board!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas]).  &amp;#039;&amp;#039;&amp;#039;No separate assignment to hand in today!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  We will make sure that everyone can run simplePIC.c and talkingPIC.c.  No demo grades today.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Problems 3-16 of Chapter 2 and problems 1-4, 6-8, 9 (parts a, c, d, and f only), and 10 of Chapter 3. Demo next Tuesday:  Chapter 3 exercise 6.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  video 17 of a Crash Course in C and all four videos for Chapter 3&lt;br /&gt;
: Reading:  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_3:_Looking_Under_the_Hood:_Software|Chapter 3]].&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on Chapter 2 L-comps.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 4 (only one video!)&lt;br /&gt;
: Reading:  Chapter 4&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 6 of Chapter 3.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercises 1, 2, and 3 (a) and (b), and Chapter 5 exercises 3, 5, 7, and 8.  Demo next Tuesday:  Chapter 4 exercise 3(b).&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 5 (2 videos)&lt;br /&gt;
: Reading:  Chapter 5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (Th 1/29)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 6 (5 videos)&lt;br /&gt;
: Reading:  Chapter 6&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (T 2/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercise 3(b).&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercises 1-8, 13, 15-18.  Demo next Tuesday:  Exercise 18.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 7 (3 videos)&lt;br /&gt;
: Reading:  Chapter 7&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (Th 2/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 8 (4 videos)&lt;br /&gt;
: Reading:  Chapter 8&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (T 2/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercise 18.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assignv2.pdf | Assignment Part 1]]&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): Chapter 9 (3 videos)&lt;br /&gt;
: Reading:  Chapter 9&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (Th 2/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assign_part2v2.pdf | Assignment Part 2]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:LEDPImain.c | Example Code for Part 2]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#PID_Control | On PID control]] (5 videos)&lt;br /&gt;
: Reading:  none&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (T 2/17)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18samplecode.txt | Sample Code]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:uart_plot.m | uart_plot.m]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_10:_Analog_Input | Analog input]] (1 video)&lt;br /&gt;
: Reading:  Chapter 10&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (Th 2/19)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:out.hex | out.hex]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:pid_plot.m | pid_plot.m ]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:comm.txt     | comm.txt ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_11:_Brushed_Permanent_Magnet_DC_Motors | Brushed Permanent Magnet DC Motors]] (7 videos!) &amp;#039;&amp;#039;&amp;#039;Notes:  (1) Because there are a lot of videos, these L-comps will count double of the usual L-comps.  (2) Because this material is critical to the in-class motor characterization we will do on Tuesday, it is critical you watch these videos.  Therefore, these L-comps are not eligible to be dropped as your lowest L-comps.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: Reading:  Chapter 11&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (T 2/24)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Square wave control of LED output.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Exercises 3-6 of Chapter 11. Begin exercise 4 in class.  For the experimental characterization (exercises 4-6), assume the motor is a 6 V motor and the coils can dissipate 5 W continuously (I^2 R) before overheating.  The encoder has 99 lines per revolution.  No demo on Tues of next week.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_12:_Motor_Sizing | Gears and Motor Sizing]] (3 videos)&lt;br /&gt;
: Reading:  Chapter 12&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (Th 2/26)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_13:_Motor_Control | Motor Control]] (4 videos)&lt;br /&gt;
: Reading:  Chapter 13&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17&amp;#039;&amp;#039;&amp;#039; (T 3/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  None.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin final project:&amp;#039;&amp;#039;&amp;#039;  Download:&lt;br /&gt;
* [[Media:MAX9918DS.pdf | MAX9918 current sensor data sheet]]&lt;br /&gt;
* [[Media:A3909DS.pdf | A3909 dual h-bridge motor driver data sheet]]&lt;br /&gt;
* [[Media:Final-Assignment-2014-part1.pdf | Final Assignment Part 1]]&lt;br /&gt;
* [[Media:ME333 Demo.zip | Demonstration]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Finish wiring H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  Complete Chapter 13.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (Th 3/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Demonstrate you can successfully use your matlab diagnostics code to interact with the H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday (&amp;#039;&amp;#039;&amp;#039;last quiz!&amp;#039;&amp;#039;&amp;#039;)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;.  Due Tuesday:  show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
* [[Media:me333final.zip | Final Project ]]&lt;br /&gt;
* [[Media:refplots-2014.pdf | Examples of motion reference trajectories ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (T 3/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Nothing to turn in, just the demo...&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;   Show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* [[Media:ME333FinalProjectTurnIn.pdf | Final Project Writeup ]]&lt;br /&gt;
* [[Media:ME333FinalProjectExtraCredit.pdf | Final Project Extra Credit ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (Th 3/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; No quiz!&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Final Demo&amp;#039;&amp;#039;&amp;#039;:  Monday 3/16, 3-5 PM or Wednesday 3/18, 9-11 AM. Electronic submission by Wednesday 3/19, 11 AM.&lt;br /&gt;
&lt;br /&gt;
== nScope ==&lt;br /&gt;
&lt;br /&gt;
[http://nscope.org/ nScope website]&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
Q: Do I need to know the C language to take this course?&lt;br /&gt;
&lt;br /&gt;
A: No. But if you already know C, there is still plenty else in this course for you. If you already know C, know how to use microcontrollers for real-time control, and have a good understanding how common sensors and actuators work and how to interface to them, this course may not be for you. Consider taking ME 433 Advanced Mechatronics in the spring quarter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: Is there an independent project?&lt;br /&gt;
&lt;br /&gt;
A: There is no large independent project. There will be a two-week project at the end of the course, but there will be no machining. For a more significant project, do a quarter-long project in ME 433 Advanced Mechatronics, offered in the spring quarter. ME 333 is good preparation for ME 433.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: What kind of laptop do I need?&lt;br /&gt;
&lt;br /&gt;
A: You need a laptop with at least 2 USB ports.  Any operating system is fine.&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=File:Quiz_1_ME333.pdf&amp;diff=22964</id>
		<title>File:Quiz 1 ME333.pdf</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=File:Quiz_1_ME333.pdf&amp;diff=22964"/>
		<updated>2015-01-20T16:51:27Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=22907</id>
		<title>ME 333 Introduction to Mechatronics (Archive Winter 2016)</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=22907"/>
		<updated>2015-01-05T23:05:59Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Schedule */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Winter Quarter 2015&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;First day of class is Tuesday January 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Section 20:  Prof. Kevin Lynch, T Th, 11:00-12:20, Tech M345&lt;br /&gt;
* Section 21:  Prof. Nick Marchuk, T Th, 12:30-1:50, Tech M345&lt;br /&gt;
* TAs:  Ben Richardson and Zack Woodruff&lt;br /&gt;
* C Peer Instruction Sessions:  TBA&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Final demo&amp;#039;&amp;#039;&amp;#039; (in lieu of final exam):  Monday Mar 16 3-5 PM (12:30-1:50 section) and Wednesday Mar 18 9-11 AM (11-12:20 section) &lt;br /&gt;
* Office Hours:  TBA&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Quick links:&lt;br /&gt;
** [https://northwestern.instructure.com/courses/310 Canvas Course Management System]&lt;br /&gt;
** [[ME 333 Readings, Videos, and Sample Code|ME 333 Readings, Videos, and Sample Code]]&lt;br /&gt;
** [https://groups.google.com/a/u.northwestern.edu/forum/#!forum/me333-2014.me Google discussion forum]&lt;br /&gt;
** [[NU32: What is in the NU32 Kit|NU32 kit]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Purpose of this Course ==&lt;br /&gt;
&lt;br /&gt;
The purpose of this course is to &amp;#039;&amp;#039;&amp;#039;provide tools that help you express your creativity&amp;#039;&amp;#039;&amp;#039;.  Maybe you want to build a robot, or a piece of kinetic art, or an automatic ball-throwing device to entertain your dog; maybe you&amp;#039;ve identified a market for a new smart product and you&amp;#039;d like to prototype the device.  This course provides fundamentals of mechatronics to give you confidence to take on these projects.  You are encouraged to take what you learn in this course and apply it in the project-based ME 433 Advanced Mechatronics course, Design Competition, or independent projects.&lt;br /&gt;
&lt;br /&gt;
== Approximate Syllabus ==&lt;br /&gt;
&lt;br /&gt;
This course is for students that want to build microprocessor-controlled electromechanical devices.  &lt;br /&gt;
&lt;br /&gt;
To do this, ME 333 focuses on three topics: (1) general C programming; (2) Microchip PIC microcontroller architecture and C programming specific to the PIC (e.g., using the PIC&amp;#039;s peripherals, such as analog inputs, digital I/O, counters/timers, comm ports, etc.); and (3) interfacing the PIC to sensors and actuators, some theory of sensor and actuator operation, and interface circuitry and signal processing. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;You will do a lot of programming in this course!&amp;#039;&amp;#039;&amp;#039;  If you are certain you hate programming, then this is not the course for you.  But knowing how to program is very useful for any modern engineer.  The language we will use is C, a fairly low-level language that works well for microcontrollers, which is more portable and not nearly as painful and low-level as assembly language.  If you don&amp;#039;t know C, that&amp;#039;s not a problem, most students don&amp;#039;t before taking ME 333; but you should plan to learn it, and rather quickly.  You will have all the materials you need to start learning C before class starts, and &amp;#039;&amp;#039;&amp;#039;the first assignment on C is due on the first day of class&amp;#039;&amp;#039;&amp;#039;!  The reason:  even though we start out with C, that&amp;#039;s not the main goal of this course.  The main goal is to teach you about microcontrollers and mechatronics.  Plus some students already have C background.&lt;br /&gt;
&lt;br /&gt;
You will bring your laptop to each class.  As the quarter progresses, we will be handing out other equipment that you will need to bring to class, such as the NU32 development board that breaks out the [http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en545660 PIC32MX795F512L] microcontroller.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;It is essential you do the assigned reading and watch the videos in advance of class.&amp;#039;&amp;#039;&amp;#039;  You will have an assignment and/or lecture comprehension questions (L-comps) due before every class, turned in electronically on Canvas.  (This includes the very first day of class!)  Once a week we will have a short quiz.  Most classes will have a combination of a brief review, Q&amp;amp;A, and working individually or in small groups on problems while the instructors help answer any questions.&lt;br /&gt;
&lt;br /&gt;
Topics we will cover include:&lt;br /&gt;
&lt;br /&gt;
* introduction to C programming&lt;br /&gt;
* introduction to the PIC32 hardware, and programming the PIC32 in C&lt;br /&gt;
* digital I/O&lt;br /&gt;
* counters/timers and interrupts&lt;br /&gt;
* analog input&lt;br /&gt;
* sensor smorgasbord&lt;br /&gt;
* digital signal processing:  filters and FFTs&lt;br /&gt;
* analog output and pulse-width modulation&lt;br /&gt;
* brushed permanent magnet DC motors:  theory and control&lt;br /&gt;
* stepper motors and RC servo motors&lt;br /&gt;
* communication by SPI, I2C, and RS-232&lt;br /&gt;
&lt;br /&gt;
== Checklist to Complete Before the First Day of Class ==&lt;br /&gt;
&lt;br /&gt;
Attendance at the first day of class is mandatory.  By the first day of class, you should:&lt;br /&gt;
&lt;br /&gt;
* Complete the reading and assignment 1, which is &amp;#039;&amp;#039;&amp;#039;due the first day of class!&amp;#039;&amp;#039;&amp;#039;  &amp;lt;!-- In fact, the first two weeks of assignments are already posted, so you are welcome to complete them all over the break and coast through the first two weeks of class.--&amp;gt;  The first assignments are designed to get you up to speed on the C programming language, which we will use throughout the course.&lt;br /&gt;
* Have a laptop with at least 2 USB ports.  Any operating system is fine.  One port will be used to program and communicate with your PIC microcontroller, and the other will be used for your portable oscilloscope.  &lt;br /&gt;
* Be prepared to buy your [[NU32: What is in the NU32 Kit|class kit]], consisting of the portable nScope oscilloscope, the NU32 PIC32 development board, and lots of other goodies.  Price $125 if you are starting from scratch; $75 if you already have the nScope.  &lt;br /&gt;
&amp;lt;!-- * Be able to solve circuit problems similar to those on the practice problem set and last year&amp;#039;s quiz at the bottom of [[ME_333_Circuits_Review_Material|this page]].  Be prepared for a quiz on this material in the second week of class.  We will only spend one class period reviewing this material.--&amp;gt;&lt;br /&gt;
&amp;lt;!-- * Buy your class kit [http://it.mccormick.northwestern.edu/matlab/student_license/login.php &amp;#039;&amp;#039;&amp;#039;here&amp;#039;&amp;#039;&amp;#039;].  If you already have the oscilloscope and multimeter from this year&amp;#039;s ME 233 offering, you should choose &amp;quot;ME 333 (w/o ME 233 equipment)&amp;quot; for the price of $75.  If you do not have the oscilloscope and multimeter, you should choose &amp;quot;ME 333 (w/ ME 233 equipment)&amp;quot; for the price of $135.  You will not be able to start the course until you have completed the purchase of your kit.  If you decide to drop the course, you will be refunded the purchase price upon return of all the equipment in working shape. --&amp;gt;&lt;br /&gt;
&amp;lt;!--* &amp;#039;&amp;#039;&amp;#039;If you are not already comfortable with the C language, or if you do not already have a C compiler installed on your laptop, this step is recommended before the first day of class.  This will give you a headstart on learning C.  If you don&amp;#039;t complete this before the first day of class, you will need to do it before the second class.&amp;#039;&amp;#039;&amp;#039;  Download and install the GCC GNU compiler collection and the Netbeans IDE (Integrated Development Environment) following the instructions [[Installing_a_C_Compiler_and_IDE|here]].  Verify that you can compile and run the sample programs at the end of that page.  Read the comments in invest.c to find references to the [[Media:CrashCourseinC.pdf|Crash Course in C document]] and answer the questions to learn more about C. &amp;#039;&amp;#039;&amp;#039;If you have problems installing a C compiler and running the programs, then you can still get a headstart before the first class by focusing on reading the C programs and the Crash Course in C manual to understand how they work.&amp;#039;&amp;#039;&amp;#039;--&amp;gt; &amp;lt;!-- * Download and install software described on [[NU32v2: Software to Install|this page]].  --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Student Contract ==&lt;br /&gt;
&lt;br /&gt;
By signing up for this course, you agree to complete the checklist above before the course starts.  You agree to stay engaged during the class period; even if your computer is open, no facebook or other distractions that will lessen your contribution to the class.  You understand that learning from classmates, and helping classmates, is encouraged, up to the stage of conceptualizing solutions.  You are not allowed to fully complete a solution in a team.  You understand that plagiarism is not tolerated.  You will report instances of plagiarism you are aware of.  Plagiarism includes, but is not limited to:&lt;br /&gt;
&lt;br /&gt;
* Allowing another student to copy your work.&lt;br /&gt;
* Copying another student&amp;#039;s work, in whole or in part.&lt;br /&gt;
* Transforming copied sections of code or solutions to try to disguise their origin.&lt;br /&gt;
* Borrowing code or solutions from others not in the course, e.g., code found on the internet, without attribution.  Borrowing code found on the internet is acceptable if the source is clearly indicated in your code comments, and if you understand how the code works.&lt;br /&gt;
&lt;br /&gt;
On our part (faculty and TAs), we commit to do our best to provide you a curriculum and set of experimental materials to get you up to speed on sophisticated mechatronics integration as quickly and efficiently as possible, while giving you a foundation in concepts needed to go further in future projects and courses.&lt;br /&gt;
&lt;br /&gt;
== Prerequisite ==&lt;br /&gt;
&lt;br /&gt;
ME 233 Electronics Design or similar (EECS 221, 225) is required. You will be expected to analyze circuits with resistors, capacitors, inductors, diodes, transistors, and op-amps. You can find refresher material and a sample quiz at [[ME_333_Circuits_Review_Material|this page]].&lt;br /&gt;
&lt;br /&gt;
== Reading ==&lt;br /&gt;
&lt;br /&gt;
Required:&lt;br /&gt;
&lt;br /&gt;
* [[Media:book-current.pdf|A Crash Course in C]]:  A brief introduction to the C programming language.  Sample code from this appendix can be found [[ME 333 Readings, Videos, and Sample Code|here]].  &lt;br /&gt;
* Optional:  [[Media:EssentialC.pdf|Essential C]] is also a very nice intro to C.  Let us know about other online C resources you find particularly useful.&lt;br /&gt;
* [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
* [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* wiki info on [[Microchip PICs]]&lt;br /&gt;
* [[Media:PIC32MX5XX6XX7XX_Family_Data_Sheet.pdf|PIC32 Data Sheet]] (256 pages, 5 MB pdf)&lt;br /&gt;
* [http://www.microchip.com/TechDoc.aspx?type=ReferenceManuals PIC32 Family Reference Manual, by chapter], and an [[Media:61132B_PIC32ReferenceManual.pdf‎|earlier version]] that conveniently has all chapters in one document.  Lots of useful and detailed information on the PIC32 architecture and how the peripherals work, including detailed description of their SFRs.  Only certain parts of certain chapters will be assigned.  These chapters include quite a lot of example code.  &amp;#039;&amp;#039;&amp;#039;Be warned though, Microchip was not very careful when writing the sample code; some of it contains syntax errors, or values in registers that are incorrect.&amp;#039;&amp;#039;&amp;#039;  Even with this being the case, this is still a very useful document.&lt;br /&gt;
* PIC32MX Peripheral Library (included as a .chm file under &amp;quot;Program Files\Microchip\MPLAB C32\doc&amp;quot; with your C32 compiler installation)&lt;br /&gt;
&lt;br /&gt;
Useful, but not required:&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Programming-32-bit-Microcontrollers-Exploring-Technology/dp/0750687096/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1294091438&amp;amp;sr=8-1-spell Programming 32-bit Microcontrollers in C:  Exploring the PIC32] by Lucio Di Jasio.  This is an easy to read and informative exploration of the PIC32.&lt;br /&gt;
* MPLAB C32 Libraries Guide and MPLAB C32 User Guide, included under &amp;quot;doc&amp;quot; of your C32 compiler installation&lt;br /&gt;
* Other C resources, such as [http://publications.gbdirect.co.uk/c_book/ online] as well as this [[Media:CBook.pdf|pdf version]] of &amp;quot;The C Book,&amp;quot; and the classic [http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=sr_1_1?s=books&amp;amp;ie=UTF8&amp;amp;qid=1294091625&amp;amp;sr=1-1 C Programming Language] reference book by Kernighan and Ritchie&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Grading ==&lt;br /&gt;
&lt;br /&gt;
Grades will be approximately 40% quizzes and 60% assignments and L-comps (including the final project).  We will have short quizzes once a week at the beginning of class covering material on the previous assignment.  Bring a sheet of paper you can turn in with your quiz answers.  (Your lowest quiz score,  assignment score, and L-comp score will be dropped.)  We will have a final project and demo in lieu of a final exam.&lt;br /&gt;
&lt;br /&gt;
All quizzes, assignments, and L-comps have equal weight, regardless of how many points they are graded out of.  If one assignment is graded out of 20 points, and the next out of 40, the formula for calculating your total grade for these two assignments would be 0.5*(score1/20) + 0.5*(score2/40).&lt;br /&gt;
&lt;br /&gt;
== Homework Submission ==&lt;br /&gt;
&lt;br /&gt;
All homework (except for the first class, when paper solutions should be turned in at the beginning of class) will be submitted using the [https://northwestern.instructure.com/courses/9664 Canvas Course Management System].  Homework should be submitted by 11 AM on the day it is due (i.e., before the first section of the day).  Late homework will not be accepted.&lt;br /&gt;
&lt;br /&gt;
Here are a few guidelines/tips associated with homework submissions:&lt;br /&gt;
&lt;br /&gt;
* Upload files individually. No zip archives!&lt;br /&gt;
&lt;br /&gt;
* Submit written responses as PDFs. &lt;br /&gt;
&lt;br /&gt;
* If you upload a PDF of handwritten work, make sure that the text appears clearly and the picture is oriented portrait style. &amp;quot;Cam Scanner&amp;quot; for Android and iOS phones easily scans images and compiles them into a single PDF file. &lt;br /&gt;
&lt;br /&gt;
* Unless otherwise stated, L-Comps should be in a single file.&lt;br /&gt;
&lt;br /&gt;
* When asked to submit C code for a given programming assignment, we are only concerned with receiving the relevant source files, i.e., all *.c and *.h files.  We do not want entire IDE/MPLAB X projects or executables/object files. &lt;br /&gt;
&lt;br /&gt;
* When writing your responses, please follow any instructions on how to write your response.  For example, if we ask for a snippet of code, please do not submit your entire C program with header files and a main routine.  We typically are only expecting a few lines of code that solve the problem.&lt;br /&gt;
&lt;br /&gt;
* Be neat and make sure your answers are easy to follow.  Messy hard-to-follow assignments make TAs cranky, and you don&amp;#039;t want cranky TAs grading your assignment!&lt;br /&gt;
&lt;br /&gt;
* It helps both us and you if you format your code nicely.  Clean looking code is easier for us to grade and easier for you to debug.  Text editors with IDEs such as Netbeans and MPLAB X have tools for auto-formatting code.  For example, highlighting a region and hitting Alt+Shift+f (Linux and Windows) will format that region according to your local formatting preferences.&lt;br /&gt;
&lt;br /&gt;
* When you compile your code, pay attention to any compiler warnings.  They are there for a reason!  You should be able to eventually get your code to produce no warnings.  Often if a piece of code is not working, the warnings will give a clue as to why.  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Note that in &amp;quot;project properties&amp;quot; in both IDEs, it is possible to generate &amp;quot;Additional warnings.&amp;quot;  This tells your compiler to be more strict about the rules of C.  The better you adhere to these rules, the more likely it is that your code will compile.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schedule ==&lt;br /&gt;
&lt;br /&gt;
This course is (partially) &amp;quot;flipped&amp;quot;:  you watch video lectures and do readings in advance of class, and during class, you should have plenty of opportunity for questions and interaction with the instructors and TAs as you work on assignments.  The purpose of this is to try to maximize the value of the class time.  In a typical lecture, 80% of the material is the same every time it is given, and the other 20% is interactive and variable based on student questions.  In a flipped class, we hope to flip this percentage, to better tailor the class to student needs.  You will have time with the instructors while your brains are actually on and working on the material (not just scribbling notes), the times when you are most likely to have questions.  Making the video lectures available should also allow you to spend more or less time on the lecture portion, depending on your prior background.  If the material is difficult for you, you can pause or rewind.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Please keep track of any questions you have as you watch the videos!&amp;#039;&amp;#039;&amp;#039; Bring these questions to class; it will make for a livelier classroom.  (Or use the forum if you prefer.)&lt;br /&gt;
&lt;br /&gt;
All readings, videos, and C code can be found at this page:  [[ME 333 Readings, Videos, and Sample Code|&amp;#039;&amp;#039;&amp;#039;ME 333 Readings, Videos, and Sample Code&amp;#039;&amp;#039;&amp;#039;]].  We will cover almost all of the Appendix, a Crash Course in C, in the first 1.5 weeks of class, so you can work ahead and do all the readings, watch all the videos, and do all the problems, if you have time over the break.  But at a minimum, you must do the winter break assignment.  &lt;br /&gt;
&lt;br /&gt;
After the first two weeks of class, we will have video lecture comprehension questions (L-comps) due before every class, assignments due every Tuesday, and quizzes every Thursday (on the material covered in the assignment turned in on Tuesday).  L-comps and assignments are turned in using Canvas before 11 AM the day of the class. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Winter Break&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Reading due for first class&amp;#039;&amp;#039;&amp;#039;:  pages 1-9 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Videos&amp;#039;&amp;#039;&amp;#039;:  1-7 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]].  Answer the lecture comprehension (L-comp) questions underneath each of the videos (you may need to click to expand).  You will turn in a paper version of your answers at the beginning of the first class.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment 1&amp;#039;&amp;#039;&amp;#039;:  Also do exercises 1-4, 6-8, 10-11, 14-15 of A Crash Course in C.  Bring your laptop to class and demonstrate your HelloWorld.c program.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (T 1/6)  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment due&amp;#039;&amp;#039;&amp;#039;:  Hand in a paper version of your L-comp and other solutions at the beginning of class.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 1.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos and readings&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercises 16-17, 19-20, 25-26, 28-30, 32.  Pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 8-16 of a Crash Course in C.  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video.  You need to click it to expand it.&lt;br /&gt;
: Reading:  Through page 23 of a Crash Course in C, and the rest as reference&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (Th 1/8)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 32.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.   If you have not yet, pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  none&lt;br /&gt;
: Reading:  Rest of a Crash Course in C as reference&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (T 1/13)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039;  On C&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Intro to Programming the PIC32&amp;#039;&amp;#039;&amp;#039;:  &lt;br /&gt;
:: Download the following documentation:&lt;br /&gt;
:: * [[Media:book-current.pdf|Chapter 1]]&lt;br /&gt;
:: * [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
:: * [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&lt;br /&gt;
:: When installing the software, you may need to update your Java for the MPLAB X IDE.  Answer &amp;quot;yes&amp;quot; if you are asked if you want to update your path when installing anything.  Mac OS X may not allow you to install since the software is from an &amp;quot;untrusted&amp;quot; developer.  You can override that by control-clicking on the dmg and choosing &amp;quot;Open&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment:&amp;#039;&amp;#039;&amp;#039;  Download and install all of the above.  &lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Assignment:  Finish the downloads and installations, as described above.&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_2:_Looking_Under_the_Hood:_Hardware|Videos 1-4 of Chapter 2]].  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video (click on it to expand it).&lt;br /&gt;
: Reading:  Chapter 1 (you can ignore 1.4.2, 1.5, and 1.6.2) and Chapter 2.  If you get the programs in 1.4.1 and 1.6.1 working, great!  If not, ask questions on the forum or we&amp;#039;ll do it in the next class.  Don&amp;#039;t destroy your board!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas]).  &amp;#039;&amp;#039;&amp;#039;No separate assignment to hand in today!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  We will make sure that everyone can run simplePIC.c and talkingPIC.c.  No demo grades today.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Problems 3-16 of Chapter 2 and problems 1-4, 6-8, 9 (parts a, c, d, and f only), and 10 of Chapter 3. Demo next Tuesday:  Chapter 3 exercise 6.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  video 17 of a Crash Course in C and all four videos for Chapter 3&lt;br /&gt;
: Reading:  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_3:_Looking_Under_the_Hood:_Software|Chapter 3]].&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on Chapter 2 L-comps.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 4 (only one video!)&lt;br /&gt;
: Reading:  Chapter 4&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 6 of Chapter 3.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercises 1, 2, and 3 (a) and (b), and Chapter 5 exercises 3, 5, 7, and 8.  Demo next Tuesday:  Chapter 4 exercise 3(b).&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 5 (2 videos)&lt;br /&gt;
: Reading:  Chapter 5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (Th 1/29)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 6 (5 videos)&lt;br /&gt;
: Reading:  Chapter 6&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (T 2/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercise 3(b).&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercises 1-8, 13, 15-18.  Demo next Tuesday:  Exercise 18.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 7 (3 videos)&lt;br /&gt;
: Reading:  Chapter 7&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (Th 2/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 8 (4 videos)&lt;br /&gt;
: Reading:  Chapter 8&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (T 2/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercise 18.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assignv2.pdf | Assignment Part 1]]&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): Chapter 9 (3 videos)&lt;br /&gt;
: Reading:  Chapter 9&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (Th 2/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assign_part2v2.pdf | Assignment Part 2]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:LEDPImain.c | Example Code for Part 2]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#PID_Control | On PID control]] (5 videos)&lt;br /&gt;
: Reading:  none&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (T 2/17)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18samplecode.txt | Sample Code]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:uart_plot.m | uart_plot.m]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_10:_Analog_Input | Analog input]] (1 video)&lt;br /&gt;
: Reading:  Chapter 10&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (Th 2/19)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:out.hex | out.hex]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:pid_plot.m | pid_plot.m ]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:comm.txt     | comm.txt ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_11:_Brushed_Permanent_Magnet_DC_Motors | Brushed Permanent Magnet DC Motors]] (7 videos!) &amp;#039;&amp;#039;&amp;#039;Notes:  (1) Because there are a lot of videos, these L-comps will count double of the usual L-comps.  (2) Because this material is critical to the in-class motor characterization we will do on Tuesday, it is critical you watch these videos.  Therefore, these L-comps are not eligible to be dropped as your lowest L-comps.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: Reading:  Chapter 11&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (T 2/24)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Square wave control of LED output.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Exercises 3-6 of Chapter 11. Begin exercise 4 in class.  For the experimental characterization (exercises 4-6), assume the motor is a 6 V motor and the coils can dissipate 5 W continuously (I^2 R) before overheating.  The encoder has 99 lines per revolution.  No demo on Tues of next week.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_12:_Motor_Sizing | Gears and Motor Sizing]] (3 videos)&lt;br /&gt;
: Reading:  Chapter 12&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (Th 2/26)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_13:_Motor_Control | Motor Control]] (4 videos)&lt;br /&gt;
: Reading:  Chapter 13&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17&amp;#039;&amp;#039;&amp;#039; (T 3/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  None.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin final project:&amp;#039;&amp;#039;&amp;#039;  Download:&lt;br /&gt;
* [[Media:MAX9918DS.pdf | MAX9918 current sensor data sheet]]&lt;br /&gt;
* [[Media:A3909DS.pdf | A3909 dual h-bridge motor driver data sheet]]&lt;br /&gt;
* [[Media:Final-Assignment-2014-part1.pdf | Final Assignment Part 1]]&lt;br /&gt;
* [[Media:ME333 Demo.zip | Demonstration]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Finish wiring H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  Complete Chapter 13.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (Th 3/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Demonstrate you can successfully use your matlab diagnostics code to interact with the H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday (&amp;#039;&amp;#039;&amp;#039;last quiz!&amp;#039;&amp;#039;&amp;#039;)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;.  Due Tuesday:  show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
* [[Media:me333final.zip | Final Project ]]&lt;br /&gt;
* [[Media:refplots-2014.pdf | Examples of motion reference trajectories ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (T 3/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Nothing to turn in, just the demo...&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;   Show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* [[Media:ME333FinalProjectTurnIn.pdf | Final Project Writeup ]]&lt;br /&gt;
* [[Media:ME333FinalProjectExtraCredit.pdf | Final Project Extra Credit ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (Th 3/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; No quiz!&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Final Demo&amp;#039;&amp;#039;&amp;#039;:  Monday 3/16, 3-5 PM or Wednesday 3/18, 9-11 AM. Electronic submission by Wednesday 3/19, 11 AM.&lt;br /&gt;
&lt;br /&gt;
== nScope ==&lt;br /&gt;
&lt;br /&gt;
[http://nscope.org/ nScope website]&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
Q: Do I need to know the C language to take this course?&lt;br /&gt;
&lt;br /&gt;
A: No. But if you already know C, there is still plenty else in this course for you. If you already know C, know how to use microcontrollers for real-time control, and have a good understanding how common sensors and actuators work and how to interface to them, this course may not be for you. Consider taking ME 433 Advanced Mechatronics in the spring quarter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: Is there an independent project?&lt;br /&gt;
&lt;br /&gt;
A: There is no large independent project. There will be a two-week project at the end of the course, but there will be no machining. For a more significant project, do a quarter-long project in ME 433 Advanced Mechatronics, offered in the spring quarter. ME 333 is good preparation for ME 433.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: What kind of laptop do I need?&lt;br /&gt;
&lt;br /&gt;
A: You need a laptop with at least 2 USB ports.  Any operating system is fine.&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=22906</id>
		<title>ME 333 Introduction to Mechatronics (Archive Winter 2016)</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=22906"/>
		<updated>2015-01-05T22:05:20Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Homework Submission */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Winter Quarter 2015&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;First day of class is Tuesday January 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Section 20:  Prof. Kevin Lynch, T Th, 11:00-12:20, Tech M345&lt;br /&gt;
* Section 21:  Prof. Nick Marchuk, T Th, 12:30-1:50, Tech M345&lt;br /&gt;
* TAs:  Ben Richardson and Zack Woodruff&lt;br /&gt;
* C Peer Instruction Sessions:  TBA&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Final demo&amp;#039;&amp;#039;&amp;#039; (in lieu of final exam):  Monday Mar 16 3-5 PM (12:30-1:50 section) and Wednesday Mar 18 9-11 AM (11-12:20 section) &lt;br /&gt;
* Office Hours:  TBA&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Quick links:&lt;br /&gt;
** [https://northwestern.instructure.com/courses/310 Canvas Course Management System]&lt;br /&gt;
** [[ME 333 Readings, Videos, and Sample Code|ME 333 Readings, Videos, and Sample Code]]&lt;br /&gt;
** [https://groups.google.com/a/u.northwestern.edu/forum/#!forum/me333-2014.me Google discussion forum]&lt;br /&gt;
** [[NU32: What is in the NU32 Kit|NU32 kit]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Purpose of this Course ==&lt;br /&gt;
&lt;br /&gt;
The purpose of this course is to &amp;#039;&amp;#039;&amp;#039;provide tools that help you express your creativity&amp;#039;&amp;#039;&amp;#039;.  Maybe you want to build a robot, or a piece of kinetic art, or an automatic ball-throwing device to entertain your dog; maybe you&amp;#039;ve identified a market for a new smart product and you&amp;#039;d like to prototype the device.  This course provides fundamentals of mechatronics to give you confidence to take on these projects.  You are encouraged to take what you learn in this course and apply it in the project-based ME 433 Advanced Mechatronics course, Design Competition, or independent projects.&lt;br /&gt;
&lt;br /&gt;
== Approximate Syllabus ==&lt;br /&gt;
&lt;br /&gt;
This course is for students that want to build microprocessor-controlled electromechanical devices.  &lt;br /&gt;
&lt;br /&gt;
To do this, ME 333 focuses on three topics: (1) general C programming; (2) Microchip PIC microcontroller architecture and C programming specific to the PIC (e.g., using the PIC&amp;#039;s peripherals, such as analog inputs, digital I/O, counters/timers, comm ports, etc.); and (3) interfacing the PIC to sensors and actuators, some theory of sensor and actuator operation, and interface circuitry and signal processing. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;You will do a lot of programming in this course!&amp;#039;&amp;#039;&amp;#039;  If you are certain you hate programming, then this is not the course for you.  But knowing how to program is very useful for any modern engineer.  The language we will use is C, a fairly low-level language that works well for microcontrollers, which is more portable and not nearly as painful and low-level as assembly language.  If you don&amp;#039;t know C, that&amp;#039;s not a problem, most students don&amp;#039;t before taking ME 333; but you should plan to learn it, and rather quickly.  You will have all the materials you need to start learning C before class starts, and &amp;#039;&amp;#039;&amp;#039;the first assignment on C is due on the first day of class&amp;#039;&amp;#039;&amp;#039;!  The reason:  even though we start out with C, that&amp;#039;s not the main goal of this course.  The main goal is to teach you about microcontrollers and mechatronics.  Plus some students already have C background.&lt;br /&gt;
&lt;br /&gt;
You will bring your laptop to each class.  As the quarter progresses, we will be handing out other equipment that you will need to bring to class, such as the NU32 development board that breaks out the [http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en545660 PIC32MX795F512L] microcontroller.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;It is essential you do the assigned reading and watch the videos in advance of class.&amp;#039;&amp;#039;&amp;#039;  You will have an assignment and/or lecture comprehension questions (L-comps) due before every class, turned in electronically on Canvas.  (This includes the very first day of class!)  Once a week we will have a short quiz.  Most classes will have a combination of a brief review, Q&amp;amp;A, and working individually or in small groups on problems while the instructors help answer any questions.&lt;br /&gt;
&lt;br /&gt;
Topics we will cover include:&lt;br /&gt;
&lt;br /&gt;
* introduction to C programming&lt;br /&gt;
* introduction to the PIC32 hardware, and programming the PIC32 in C&lt;br /&gt;
* digital I/O&lt;br /&gt;
* counters/timers and interrupts&lt;br /&gt;
* analog input&lt;br /&gt;
* sensor smorgasbord&lt;br /&gt;
* digital signal processing:  filters and FFTs&lt;br /&gt;
* analog output and pulse-width modulation&lt;br /&gt;
* brushed permanent magnet DC motors:  theory and control&lt;br /&gt;
* stepper motors and RC servo motors&lt;br /&gt;
* communication by SPI, I2C, and RS-232&lt;br /&gt;
&lt;br /&gt;
== Checklist to Complete Before the First Day of Class ==&lt;br /&gt;
&lt;br /&gt;
Attendance at the first day of class is mandatory.  By the first day of class, you should:&lt;br /&gt;
&lt;br /&gt;
* Complete the reading and assignment 1, which is &amp;#039;&amp;#039;&amp;#039;due the first day of class!&amp;#039;&amp;#039;&amp;#039;  &amp;lt;!-- In fact, the first two weeks of assignments are already posted, so you are welcome to complete them all over the break and coast through the first two weeks of class.--&amp;gt;  The first assignments are designed to get you up to speed on the C programming language, which we will use throughout the course.&lt;br /&gt;
* Have a laptop with at least 2 USB ports.  Any operating system is fine.  One port will be used to program and communicate with your PIC microcontroller, and the other will be used for your portable oscilloscope.  &lt;br /&gt;
* Be prepared to buy your [[NU32: What is in the NU32 Kit|class kit]], consisting of the portable nScope oscilloscope, the NU32 PIC32 development board, and lots of other goodies.  Price $125 if you are starting from scratch; $75 if you already have the nScope.  &lt;br /&gt;
&amp;lt;!-- * Be able to solve circuit problems similar to those on the practice problem set and last year&amp;#039;s quiz at the bottom of [[ME_333_Circuits_Review_Material|this page]].  Be prepared for a quiz on this material in the second week of class.  We will only spend one class period reviewing this material.--&amp;gt;&lt;br /&gt;
&amp;lt;!-- * Buy your class kit [http://it.mccormick.northwestern.edu/matlab/student_license/login.php &amp;#039;&amp;#039;&amp;#039;here&amp;#039;&amp;#039;&amp;#039;].  If you already have the oscilloscope and multimeter from this year&amp;#039;s ME 233 offering, you should choose &amp;quot;ME 333 (w/o ME 233 equipment)&amp;quot; for the price of $75.  If you do not have the oscilloscope and multimeter, you should choose &amp;quot;ME 333 (w/ ME 233 equipment)&amp;quot; for the price of $135.  You will not be able to start the course until you have completed the purchase of your kit.  If you decide to drop the course, you will be refunded the purchase price upon return of all the equipment in working shape. --&amp;gt;&lt;br /&gt;
&amp;lt;!--* &amp;#039;&amp;#039;&amp;#039;If you are not already comfortable with the C language, or if you do not already have a C compiler installed on your laptop, this step is recommended before the first day of class.  This will give you a headstart on learning C.  If you don&amp;#039;t complete this before the first day of class, you will need to do it before the second class.&amp;#039;&amp;#039;&amp;#039;  Download and install the GCC GNU compiler collection and the Netbeans IDE (Integrated Development Environment) following the instructions [[Installing_a_C_Compiler_and_IDE|here]].  Verify that you can compile and run the sample programs at the end of that page.  Read the comments in invest.c to find references to the [[Media:CrashCourseinC.pdf|Crash Course in C document]] and answer the questions to learn more about C. &amp;#039;&amp;#039;&amp;#039;If you have problems installing a C compiler and running the programs, then you can still get a headstart before the first class by focusing on reading the C programs and the Crash Course in C manual to understand how they work.&amp;#039;&amp;#039;&amp;#039;--&amp;gt; &amp;lt;!-- * Download and install software described on [[NU32v2: Software to Install|this page]].  --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Student Contract ==&lt;br /&gt;
&lt;br /&gt;
By signing up for this course, you agree to complete the checklist above before the course starts.  You agree to stay engaged during the class period; even if your computer is open, no facebook or other distractions that will lessen your contribution to the class.  You understand that learning from classmates, and helping classmates, is encouraged, up to the stage of conceptualizing solutions.  You are not allowed to fully complete a solution in a team.  You understand that plagiarism is not tolerated.  You will report instances of plagiarism you are aware of.  Plagiarism includes, but is not limited to:&lt;br /&gt;
&lt;br /&gt;
* Allowing another student to copy your work.&lt;br /&gt;
* Copying another student&amp;#039;s work, in whole or in part.&lt;br /&gt;
* Transforming copied sections of code or solutions to try to disguise their origin.&lt;br /&gt;
* Borrowing code or solutions from others not in the course, e.g., code found on the internet, without attribution.  Borrowing code found on the internet is acceptable if the source is clearly indicated in your code comments, and if you understand how the code works.&lt;br /&gt;
&lt;br /&gt;
On our part (faculty and TAs), we commit to do our best to provide you a curriculum and set of experimental materials to get you up to speed on sophisticated mechatronics integration as quickly and efficiently as possible, while giving you a foundation in concepts needed to go further in future projects and courses.&lt;br /&gt;
&lt;br /&gt;
== Prerequisite ==&lt;br /&gt;
&lt;br /&gt;
ME 233 Electronics Design or similar (EECS 221, 225) is required. You will be expected to analyze circuits with resistors, capacitors, inductors, diodes, transistors, and op-amps. You can find refresher material and a sample quiz at [[ME_333_Circuits_Review_Material|this page]].&lt;br /&gt;
&lt;br /&gt;
== Reading ==&lt;br /&gt;
&lt;br /&gt;
Required:&lt;br /&gt;
&lt;br /&gt;
* [[Media:book-current.pdf|A Crash Course in C]]:  A brief introduction to the C programming language.  Sample code from this appendix can be found [[ME 333 Readings, Videos, and Sample Code|here]].  &lt;br /&gt;
* Optional:  [[Media:EssentialC.pdf|Essential C]] is also a very nice intro to C.  Let us know about other online C resources you find particularly useful.&lt;br /&gt;
* [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
* [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* wiki info on [[Microchip PICs]]&lt;br /&gt;
* [[Media:PIC32MX5XX6XX7XX_Family_Data_Sheet.pdf|PIC32 Data Sheet]] (256 pages, 5 MB pdf)&lt;br /&gt;
* [http://www.microchip.com/TechDoc.aspx?type=ReferenceManuals PIC32 Family Reference Manual, by chapter], and an [[Media:61132B_PIC32ReferenceManual.pdf‎|earlier version]] that conveniently has all chapters in one document.  Lots of useful and detailed information on the PIC32 architecture and how the peripherals work, including detailed description of their SFRs.  Only certain parts of certain chapters will be assigned.  These chapters include quite a lot of example code.  &amp;#039;&amp;#039;&amp;#039;Be warned though, Microchip was not very careful when writing the sample code; some of it contains syntax errors, or values in registers that are incorrect.&amp;#039;&amp;#039;&amp;#039;  Even with this being the case, this is still a very useful document.&lt;br /&gt;
* PIC32MX Peripheral Library (included as a .chm file under &amp;quot;Program Files\Microchip\MPLAB C32\doc&amp;quot; with your C32 compiler installation)&lt;br /&gt;
&lt;br /&gt;
Useful, but not required:&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Programming-32-bit-Microcontrollers-Exploring-Technology/dp/0750687096/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1294091438&amp;amp;sr=8-1-spell Programming 32-bit Microcontrollers in C:  Exploring the PIC32] by Lucio Di Jasio.  This is an easy to read and informative exploration of the PIC32.&lt;br /&gt;
* MPLAB C32 Libraries Guide and MPLAB C32 User Guide, included under &amp;quot;doc&amp;quot; of your C32 compiler installation&lt;br /&gt;
* Other C resources, such as [http://publications.gbdirect.co.uk/c_book/ online] as well as this [[Media:CBook.pdf|pdf version]] of &amp;quot;The C Book,&amp;quot; and the classic [http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=sr_1_1?s=books&amp;amp;ie=UTF8&amp;amp;qid=1294091625&amp;amp;sr=1-1 C Programming Language] reference book by Kernighan and Ritchie&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Grading ==&lt;br /&gt;
&lt;br /&gt;
Grades will be approximately 40% quizzes and 60% assignments and L-comps (including the final project).  We will have short quizzes once a week at the beginning of class covering material on the previous assignment.  Bring a sheet of paper you can turn in with your quiz answers.  (Your lowest quiz score,  assignment score, and L-comp score will be dropped.)  We will have a final project and demo in lieu of a final exam.&lt;br /&gt;
&lt;br /&gt;
All quizzes, assignments, and L-comps have equal weight, regardless of how many points they are graded out of.  If one assignment is graded out of 20 points, and the next out of 40, the formula for calculating your total grade for these two assignments would be 0.5*(score1/20) + 0.5*(score2/40).&lt;br /&gt;
&lt;br /&gt;
== Homework Submission ==&lt;br /&gt;
&lt;br /&gt;
All homework (except for the first class, when paper solutions should be turned in at the beginning of class) will be submitted using the [https://northwestern.instructure.com/courses/9664 Canvas Course Management System].  Homework should be submitted by 11 AM on the day it is due (i.e., before the first section of the day).  Late homework will not be accepted.&lt;br /&gt;
&lt;br /&gt;
Here are a few guidelines/tips associated with homework submissions:&lt;br /&gt;
&lt;br /&gt;
* Upload files individually. No zip archives!&lt;br /&gt;
&lt;br /&gt;
* Submit written responses as PDFs. &lt;br /&gt;
&lt;br /&gt;
* If you upload a PDF of handwritten work, make sure that the text appears clearly and the picture is oriented portrait style. &amp;quot;Cam Scanner&amp;quot; for Android and iOS phones easily scans images and compiles them into a single PDF file. &lt;br /&gt;
&lt;br /&gt;
* Unless otherwise stated, L-Comps should be in a single file.&lt;br /&gt;
&lt;br /&gt;
* When asked to submit C code for a given programming assignment, we are only concerned with receiving the relevant source files, i.e., all *.c and *.h files.  We do not want entire IDE/MPLAB X projects or executables/object files. &lt;br /&gt;
&lt;br /&gt;
* When writing your responses, please follow any instructions on how to write your response.  For example, if we ask for a snippet of code, please do not submit your entire C program with header files and a main routine.  We typically are only expecting a few lines of code that solve the problem.&lt;br /&gt;
&lt;br /&gt;
* Be neat and make sure your answers are easy to follow.  Messy hard-to-follow assignments make TAs cranky, and you don&amp;#039;t want cranky TAs grading your assignment!&lt;br /&gt;
&lt;br /&gt;
* It helps both us and you if you format your code nicely.  Clean looking code is easier for us to grade and easier for you to debug.  Text editors with IDEs such as Netbeans and MPLAB X have tools for auto-formatting code.  For example, highlighting a region and hitting Alt+Shift+f (Linux and Windows) will format that region according to your local formatting preferences.&lt;br /&gt;
&lt;br /&gt;
* When you compile your code, pay attention to any compiler warnings.  They are there for a reason!  You should be able to eventually get your code to produce no warnings.  Often if a piece of code is not working, the warnings will give a clue as to why.  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Note that in &amp;quot;project properties&amp;quot; in both IDEs, it is possible to generate &amp;quot;Additional warnings.&amp;quot;  This tells your compiler to be more strict about the rules of C.  The better you adhere to these rules, the more likely it is that your code will compile.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schedule ==&lt;br /&gt;
&lt;br /&gt;
This course is (partially) &amp;quot;flipped&amp;quot;:  you watch video lectures and do readings in advance of class, and during class, you should have plenty of opportunity for questions and interaction with the instructors and TAs as you work on assignments.  The purpose of this is to try to maximize the value of the class time.  In a typical lecture, 80% of the material is the same every time it is given, and the other 20% is interactive and variable based on student questions.  In a flipped class, we hope to flip this percentage, to better tailor the class to student needs.  You will have time with the instructors while your brains are actually on and working on the material (not just scribbling notes), the times when you are most likely to have questions.  Making the video lectures available should also allow you to spend more or less time on the lecture portion, depending on your prior background.  If the material is difficult for you, you can pause or rewind.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Please keep track of any questions you have as you watch the videos!&amp;#039;&amp;#039;&amp;#039; Bring these questions to class; it will make for a livelier classroom.  (Or use the forum if you prefer.)&lt;br /&gt;
&lt;br /&gt;
All readings, videos, and C code can be found at this page:  [[ME 333 Readings, Videos, and Sample Code|&amp;#039;&amp;#039;&amp;#039;ME 333 Readings, Videos, and Sample Code&amp;#039;&amp;#039;&amp;#039;]].  We will cover almost all of the Appendix, a Crash Course in C, in the first 1.5 weeks of class, so you can work ahead and do all the readings, watch all the videos, and do all the problems, if you have time over the break.  But at a minimum, you must do the winter break assignment.  &lt;br /&gt;
&lt;br /&gt;
After the first two weeks of class, we will have video lecture comprehension questions (L-comps) due before every class, assignments due every Tuesday, and quizzes every Thursday (on the material covered in the assignment turned in on Tuesday).  L-comps and assignments are turned in using Canvas before 11 AM the day of the class. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Winter Break&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Reading due for first class&amp;#039;&amp;#039;&amp;#039;:  pages 1-9 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Videos&amp;#039;&amp;#039;&amp;#039;:  1-7 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]].  Answer the lecture comprehension (L-comp) questions underneath each of the videos (you may need to click to expand).  You will turn in a paper version of your answers at the beginning of the first class.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment 1&amp;#039;&amp;#039;&amp;#039;:  Also do exercises 1-4, 6-8, 10-11, 14-15 of A Crash Course in C.  Bring your laptop to class and demonstrate your HelloWorld.c program.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (T 1/6)  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment due&amp;#039;&amp;#039;&amp;#039;:  Hand in a paper version of your L-comp and other solutions at the beginning of class.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 1.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos and readings&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercises 16-17, 19-20, 25-26, 28-30, 32.  Pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 8-16 of a Crash Course in C.  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video.  You need to click it to expand it.&lt;br /&gt;
: Reading:  Through page 23 of a Crash Course in C, and the rest as reference&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (T 1/8)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 32.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.   If you have not yet, pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  none&lt;br /&gt;
: Reading:  Rest of a Crash Course in C as reference&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (Th 1/13)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039;  On C&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Intro to Programming the PIC32&amp;#039;&amp;#039;&amp;#039;:  &lt;br /&gt;
:: Download the following documentation:&lt;br /&gt;
:: * [[Media:book-current.pdf|Chapter 1]]&lt;br /&gt;
:: * [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
:: * [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&lt;br /&gt;
:: When installing the software, you may need to update your Java for the MPLAB X IDE.  Answer &amp;quot;yes&amp;quot; if you are asked if you want to update your path when installing anything.  Mac OS X may not allow you to install since the software is from an &amp;quot;untrusted&amp;quot; developer.  You can override that by control-clicking on the dmg and choosing &amp;quot;Open&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment:&amp;#039;&amp;#039;&amp;#039;  Download and install all of the above.  &lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Assignment:  Finish the downloads and installations, as described above.&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_2:_Looking_Under_the_Hood:_Hardware|Videos 1-4 of Chapter 2]].  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video (click on it to expand it).&lt;br /&gt;
: Reading:  Chapter 1 (you can ignore 1.4.2, 1.5, and 1.6.2) and Chapter 2.  If you get the programs in 1.4.1 and 1.6.1 working, great!  If not, ask questions on the forum or we&amp;#039;ll do it in the next class.  Don&amp;#039;t destroy your board!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas]).  &amp;#039;&amp;#039;&amp;#039;No separate assignment to hand in today!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  We will make sure that everyone can run simplePIC.c and talkingPIC.c.  No demo grades today.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Problems 3-16 of Chapter 2 and problems 1-4, 6-8, 9 (parts a, c, d, and f only), and 10 of Chapter 3. Demo next Tuesday:  Chapter 3 exercise 6.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  video 17 of a Crash Course in C and all four videos for Chapter 3&lt;br /&gt;
: Reading:  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_3:_Looking_Under_the_Hood:_Software|Chapter 3]].&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on Chapter 2 L-comps.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 4 (only one video!)&lt;br /&gt;
: Reading:  Chapter 4&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 6 of Chapter 3.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercises 1, 2, and 3 (a) and (b), and Chapter 5 exercises 3, 5, 7, and 8.  Demo next Tuesday:  Chapter 4 exercise 3(b).&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 5 (2 videos)&lt;br /&gt;
: Reading:  Chapter 5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (Th 1/29)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 6 (5 videos)&lt;br /&gt;
: Reading:  Chapter 6&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (T 2/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercise 3(b).&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercises 1-8, 13, 15-18.  Demo next Tuesday:  Exercise 18.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 7 (3 videos)&lt;br /&gt;
: Reading:  Chapter 7&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (Th 2/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 8 (4 videos)&lt;br /&gt;
: Reading:  Chapter 8&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (T 2/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercise 18.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assignv2.pdf | Assignment Part 1]]&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): Chapter 9 (3 videos)&lt;br /&gt;
: Reading:  Chapter 9&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (Th 2/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assign_part2v2.pdf | Assignment Part 2]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:LEDPImain.c | Example Code for Part 2]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#PID_Control | On PID control]] (5 videos)&lt;br /&gt;
: Reading:  none&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (T 2/17)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18samplecode.txt | Sample Code]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:uart_plot.m | uart_plot.m]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_10:_Analog_Input | Analog input]] (1 video)&lt;br /&gt;
: Reading:  Chapter 10&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (Th 2/19)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:out.hex | out.hex]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:pid_plot.m | pid_plot.m ]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:comm.txt     | comm.txt ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_11:_Brushed_Permanent_Magnet_DC_Motors | Brushed Permanent Magnet DC Motors]] (7 videos!) &amp;#039;&amp;#039;&amp;#039;Notes:  (1) Because there are a lot of videos, these L-comps will count double of the usual L-comps.  (2) Because this material is critical to the in-class motor characterization we will do on Tuesday, it is critical you watch these videos.  Therefore, these L-comps are not eligible to be dropped as your lowest L-comps.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: Reading:  Chapter 11&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (T 2/24)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Square wave control of LED output.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Exercises 3-6 of Chapter 11. Begin exercise 4 in class.  For the experimental characterization (exercises 4-6), assume the motor is a 6 V motor and the coils can dissipate 5 W continuously (I^2 R) before overheating.  The encoder has 99 lines per revolution.  No demo on Tues of next week.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_12:_Motor_Sizing | Gears and Motor Sizing]] (3 videos)&lt;br /&gt;
: Reading:  Chapter 12&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (Th 2/26)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_13:_Motor_Control | Motor Control]] (4 videos)&lt;br /&gt;
: Reading:  Chapter 13&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17&amp;#039;&amp;#039;&amp;#039; (T 3/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  None.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin final project:&amp;#039;&amp;#039;&amp;#039;  Download:&lt;br /&gt;
* [[Media:MAX9918DS.pdf | MAX9918 current sensor data sheet]]&lt;br /&gt;
* [[Media:A3909DS.pdf | A3909 dual h-bridge motor driver data sheet]]&lt;br /&gt;
* [[Media:Final-Assignment-2014-part1.pdf | Final Assignment Part 1]]&lt;br /&gt;
* [[Media:ME333 Demo.zip | Demonstration]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Finish wiring H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  Complete Chapter 13.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (Th 3/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Demonstrate you can successfully use your matlab diagnostics code to interact with the H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday (&amp;#039;&amp;#039;&amp;#039;last quiz!&amp;#039;&amp;#039;&amp;#039;)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;.  Due Tuesday:  show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
* [[Media:me333final.zip | Final Project ]]&lt;br /&gt;
* [[Media:refplots-2014.pdf | Examples of motion reference trajectories ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (T 3/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Nothing to turn in, just the demo...&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;   Show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* [[Media:ME333FinalProjectTurnIn.pdf | Final Project Writeup ]]&lt;br /&gt;
* [[Media:ME333FinalProjectExtraCredit.pdf | Final Project Extra Credit ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (Th 3/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; No quiz!&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Final Demo&amp;#039;&amp;#039;&amp;#039;:  Monday 3/16, 3-5 PM or Wednesday 3/18, 9-11 AM. Electronic submission by Wednesday 3/19, 11 AM.&lt;br /&gt;
&lt;br /&gt;
== nScope ==&lt;br /&gt;
&lt;br /&gt;
[http://nscope.org/ nScope website]&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
Q: Do I need to know the C language to take this course?&lt;br /&gt;
&lt;br /&gt;
A: No. But if you already know C, there is still plenty else in this course for you. If you already know C, know how to use microcontrollers for real-time control, and have a good understanding how common sensors and actuators work and how to interface to them, this course may not be for you. Consider taking ME 433 Advanced Mechatronics in the spring quarter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: Is there an independent project?&lt;br /&gt;
&lt;br /&gt;
A: There is no large independent project. There will be a two-week project at the end of the course, but there will be no machining. For a more significant project, do a quarter-long project in ME 433 Advanced Mechatronics, offered in the spring quarter. ME 333 is good preparation for ME 433.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: What kind of laptop do I need?&lt;br /&gt;
&lt;br /&gt;
A: You need a laptop with at least 2 USB ports.  Any operating system is fine.&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=22905</id>
		<title>ME 333 Introduction to Mechatronics (Archive Winter 2016)</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_333_Introduction_to_Mechatronics_(Archive_Winter_2016)&amp;diff=22905"/>
		<updated>2015-01-05T22:04:04Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Homework Submission */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Winter Quarter 2015&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;First day of class is Tuesday January 6.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* Section 20:  Prof. Kevin Lynch, T Th, 11:00-12:20, Tech M345&lt;br /&gt;
* Section 21:  Prof. Nick Marchuk, T Th, 12:30-1:50, Tech M345&lt;br /&gt;
* TAs:  Ben Richardson and Zack Woodruff&lt;br /&gt;
* C Peer Instruction Sessions:  TBA&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Final demo&amp;#039;&amp;#039;&amp;#039; (in lieu of final exam):  Monday Mar 16 3-5 PM (12:30-1:50 section) and Wednesday Mar 18 9-11 AM (11-12:20 section) &lt;br /&gt;
* Office Hours:  TBA&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Quick links:&lt;br /&gt;
** [https://northwestern.instructure.com/courses/310 Canvas Course Management System]&lt;br /&gt;
** [[ME 333 Readings, Videos, and Sample Code|ME 333 Readings, Videos, and Sample Code]]&lt;br /&gt;
** [https://groups.google.com/a/u.northwestern.edu/forum/#!forum/me333-2014.me Google discussion forum]&lt;br /&gt;
** [[NU32: What is in the NU32 Kit|NU32 kit]]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Purpose of this Course ==&lt;br /&gt;
&lt;br /&gt;
The purpose of this course is to &amp;#039;&amp;#039;&amp;#039;provide tools that help you express your creativity&amp;#039;&amp;#039;&amp;#039;.  Maybe you want to build a robot, or a piece of kinetic art, or an automatic ball-throwing device to entertain your dog; maybe you&amp;#039;ve identified a market for a new smart product and you&amp;#039;d like to prototype the device.  This course provides fundamentals of mechatronics to give you confidence to take on these projects.  You are encouraged to take what you learn in this course and apply it in the project-based ME 433 Advanced Mechatronics course, Design Competition, or independent projects.&lt;br /&gt;
&lt;br /&gt;
== Approximate Syllabus ==&lt;br /&gt;
&lt;br /&gt;
This course is for students that want to build microprocessor-controlled electromechanical devices.  &lt;br /&gt;
&lt;br /&gt;
To do this, ME 333 focuses on three topics: (1) general C programming; (2) Microchip PIC microcontroller architecture and C programming specific to the PIC (e.g., using the PIC&amp;#039;s peripherals, such as analog inputs, digital I/O, counters/timers, comm ports, etc.); and (3) interfacing the PIC to sensors and actuators, some theory of sensor and actuator operation, and interface circuitry and signal processing. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;You will do a lot of programming in this course!&amp;#039;&amp;#039;&amp;#039;  If you are certain you hate programming, then this is not the course for you.  But knowing how to program is very useful for any modern engineer.  The language we will use is C, a fairly low-level language that works well for microcontrollers, which is more portable and not nearly as painful and low-level as assembly language.  If you don&amp;#039;t know C, that&amp;#039;s not a problem, most students don&amp;#039;t before taking ME 333; but you should plan to learn it, and rather quickly.  You will have all the materials you need to start learning C before class starts, and &amp;#039;&amp;#039;&amp;#039;the first assignment on C is due on the first day of class&amp;#039;&amp;#039;&amp;#039;!  The reason:  even though we start out with C, that&amp;#039;s not the main goal of this course.  The main goal is to teach you about microcontrollers and mechatronics.  Plus some students already have C background.&lt;br /&gt;
&lt;br /&gt;
You will bring your laptop to each class.  As the quarter progresses, we will be handing out other equipment that you will need to bring to class, such as the NU32 development board that breaks out the [http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en545660 PIC32MX795F512L] microcontroller.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;It is essential you do the assigned reading and watch the videos in advance of class.&amp;#039;&amp;#039;&amp;#039;  You will have an assignment and/or lecture comprehension questions (L-comps) due before every class, turned in electronically on Canvas.  (This includes the very first day of class!)  Once a week we will have a short quiz.  Most classes will have a combination of a brief review, Q&amp;amp;A, and working individually or in small groups on problems while the instructors help answer any questions.&lt;br /&gt;
&lt;br /&gt;
Topics we will cover include:&lt;br /&gt;
&lt;br /&gt;
* introduction to C programming&lt;br /&gt;
* introduction to the PIC32 hardware, and programming the PIC32 in C&lt;br /&gt;
* digital I/O&lt;br /&gt;
* counters/timers and interrupts&lt;br /&gt;
* analog input&lt;br /&gt;
* sensor smorgasbord&lt;br /&gt;
* digital signal processing:  filters and FFTs&lt;br /&gt;
* analog output and pulse-width modulation&lt;br /&gt;
* brushed permanent magnet DC motors:  theory and control&lt;br /&gt;
* stepper motors and RC servo motors&lt;br /&gt;
* communication by SPI, I2C, and RS-232&lt;br /&gt;
&lt;br /&gt;
== Checklist to Complete Before the First Day of Class ==&lt;br /&gt;
&lt;br /&gt;
Attendance at the first day of class is mandatory.  By the first day of class, you should:&lt;br /&gt;
&lt;br /&gt;
* Complete the reading and assignment 1, which is &amp;#039;&amp;#039;&amp;#039;due the first day of class!&amp;#039;&amp;#039;&amp;#039;  &amp;lt;!-- In fact, the first two weeks of assignments are already posted, so you are welcome to complete them all over the break and coast through the first two weeks of class.--&amp;gt;  The first assignments are designed to get you up to speed on the C programming language, which we will use throughout the course.&lt;br /&gt;
* Have a laptop with at least 2 USB ports.  Any operating system is fine.  One port will be used to program and communicate with your PIC microcontroller, and the other will be used for your portable oscilloscope.  &lt;br /&gt;
* Be prepared to buy your [[NU32: What is in the NU32 Kit|class kit]], consisting of the portable nScope oscilloscope, the NU32 PIC32 development board, and lots of other goodies.  Price $125 if you are starting from scratch; $75 if you already have the nScope.  &lt;br /&gt;
&amp;lt;!-- * Be able to solve circuit problems similar to those on the practice problem set and last year&amp;#039;s quiz at the bottom of [[ME_333_Circuits_Review_Material|this page]].  Be prepared for a quiz on this material in the second week of class.  We will only spend one class period reviewing this material.--&amp;gt;&lt;br /&gt;
&amp;lt;!-- * Buy your class kit [http://it.mccormick.northwestern.edu/matlab/student_license/login.php &amp;#039;&amp;#039;&amp;#039;here&amp;#039;&amp;#039;&amp;#039;].  If you already have the oscilloscope and multimeter from this year&amp;#039;s ME 233 offering, you should choose &amp;quot;ME 333 (w/o ME 233 equipment)&amp;quot; for the price of $75.  If you do not have the oscilloscope and multimeter, you should choose &amp;quot;ME 333 (w/ ME 233 equipment)&amp;quot; for the price of $135.  You will not be able to start the course until you have completed the purchase of your kit.  If you decide to drop the course, you will be refunded the purchase price upon return of all the equipment in working shape. --&amp;gt;&lt;br /&gt;
&amp;lt;!--* &amp;#039;&amp;#039;&amp;#039;If you are not already comfortable with the C language, or if you do not already have a C compiler installed on your laptop, this step is recommended before the first day of class.  This will give you a headstart on learning C.  If you don&amp;#039;t complete this before the first day of class, you will need to do it before the second class.&amp;#039;&amp;#039;&amp;#039;  Download and install the GCC GNU compiler collection and the Netbeans IDE (Integrated Development Environment) following the instructions [[Installing_a_C_Compiler_and_IDE|here]].  Verify that you can compile and run the sample programs at the end of that page.  Read the comments in invest.c to find references to the [[Media:CrashCourseinC.pdf|Crash Course in C document]] and answer the questions to learn more about C. &amp;#039;&amp;#039;&amp;#039;If you have problems installing a C compiler and running the programs, then you can still get a headstart before the first class by focusing on reading the C programs and the Crash Course in C manual to understand how they work.&amp;#039;&amp;#039;&amp;#039;--&amp;gt; &amp;lt;!-- * Download and install software described on [[NU32v2: Software to Install|this page]].  --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Student Contract ==&lt;br /&gt;
&lt;br /&gt;
By signing up for this course, you agree to complete the checklist above before the course starts.  You agree to stay engaged during the class period; even if your computer is open, no facebook or other distractions that will lessen your contribution to the class.  You understand that learning from classmates, and helping classmates, is encouraged, up to the stage of conceptualizing solutions.  You are not allowed to fully complete a solution in a team.  You understand that plagiarism is not tolerated.  You will report instances of plagiarism you are aware of.  Plagiarism includes, but is not limited to:&lt;br /&gt;
&lt;br /&gt;
* Allowing another student to copy your work.&lt;br /&gt;
* Copying another student&amp;#039;s work, in whole or in part.&lt;br /&gt;
* Transforming copied sections of code or solutions to try to disguise their origin.&lt;br /&gt;
* Borrowing code or solutions from others not in the course, e.g., code found on the internet, without attribution.  Borrowing code found on the internet is acceptable if the source is clearly indicated in your code comments, and if you understand how the code works.&lt;br /&gt;
&lt;br /&gt;
On our part (faculty and TAs), we commit to do our best to provide you a curriculum and set of experimental materials to get you up to speed on sophisticated mechatronics integration as quickly and efficiently as possible, while giving you a foundation in concepts needed to go further in future projects and courses.&lt;br /&gt;
&lt;br /&gt;
== Prerequisite ==&lt;br /&gt;
&lt;br /&gt;
ME 233 Electronics Design or similar (EECS 221, 225) is required. You will be expected to analyze circuits with resistors, capacitors, inductors, diodes, transistors, and op-amps. You can find refresher material and a sample quiz at [[ME_333_Circuits_Review_Material|this page]].&lt;br /&gt;
&lt;br /&gt;
== Reading ==&lt;br /&gt;
&lt;br /&gt;
Required:&lt;br /&gt;
&lt;br /&gt;
* [[Media:book-current.pdf|A Crash Course in C]]:  A brief introduction to the C programming language.  Sample code from this appendix can be found [[ME 333 Readings, Videos, and Sample Code|here]].  &lt;br /&gt;
* Optional:  [[Media:EssentialC.pdf|Essential C]] is also a very nice intro to C.  Let us know about other online C resources you find particularly useful.&lt;br /&gt;
* [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
* [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* wiki info on [[Microchip PICs]]&lt;br /&gt;
* [[Media:PIC32MX5XX6XX7XX_Family_Data_Sheet.pdf|PIC32 Data Sheet]] (256 pages, 5 MB pdf)&lt;br /&gt;
* [http://www.microchip.com/TechDoc.aspx?type=ReferenceManuals PIC32 Family Reference Manual, by chapter], and an [[Media:61132B_PIC32ReferenceManual.pdf‎|earlier version]] that conveniently has all chapters in one document.  Lots of useful and detailed information on the PIC32 architecture and how the peripherals work, including detailed description of their SFRs.  Only certain parts of certain chapters will be assigned.  These chapters include quite a lot of example code.  &amp;#039;&amp;#039;&amp;#039;Be warned though, Microchip was not very careful when writing the sample code; some of it contains syntax errors, or values in registers that are incorrect.&amp;#039;&amp;#039;&amp;#039;  Even with this being the case, this is still a very useful document.&lt;br /&gt;
* PIC32MX Peripheral Library (included as a .chm file under &amp;quot;Program Files\Microchip\MPLAB C32\doc&amp;quot; with your C32 compiler installation)&lt;br /&gt;
&lt;br /&gt;
Useful, but not required:&lt;br /&gt;
&lt;br /&gt;
* [http://www.amazon.com/Programming-32-bit-Microcontrollers-Exploring-Technology/dp/0750687096/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1294091438&amp;amp;sr=8-1-spell Programming 32-bit Microcontrollers in C:  Exploring the PIC32] by Lucio Di Jasio.  This is an easy to read and informative exploration of the PIC32.&lt;br /&gt;
* MPLAB C32 Libraries Guide and MPLAB C32 User Guide, included under &amp;quot;doc&amp;quot; of your C32 compiler installation&lt;br /&gt;
* Other C resources, such as [http://publications.gbdirect.co.uk/c_book/ online] as well as this [[Media:CBook.pdf|pdf version]] of &amp;quot;The C Book,&amp;quot; and the classic [http://www.amazon.com/Programming-Language-2nd-Brian-Kernighan/dp/0131103628/ref=sr_1_1?s=books&amp;amp;ie=UTF8&amp;amp;qid=1294091625&amp;amp;sr=1-1 C Programming Language] reference book by Kernighan and Ritchie&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Grading ==&lt;br /&gt;
&lt;br /&gt;
Grades will be approximately 40% quizzes and 60% assignments and L-comps (including the final project).  We will have short quizzes once a week at the beginning of class covering material on the previous assignment.  Bring a sheet of paper you can turn in with your quiz answers.  (Your lowest quiz score,  assignment score, and L-comp score will be dropped.)  We will have a final project and demo in lieu of a final exam.&lt;br /&gt;
&lt;br /&gt;
All quizzes, assignments, and L-comps have equal weight, regardless of how many points they are graded out of.  If one assignment is graded out of 20 points, and the next out of 40, the formula for calculating your total grade for these two assignments would be 0.5*(score1/20) + 0.5*(score2/40).&lt;br /&gt;
&lt;br /&gt;
== Homework Submission ==&lt;br /&gt;
&lt;br /&gt;
All homework (except for the first class, when paper solutions should be turned in at the beginning of class) will be submitted using the [https://northwestern.instructure.com/courses/310 Canvas Course Management System].  Homework should be submitted by 11 AM on the day it is due (i.e., before the first section of the day).  Late homework will not be accepted.&lt;br /&gt;
&lt;br /&gt;
Here are a few guidelines/tips associated with homework submissions:&lt;br /&gt;
&lt;br /&gt;
* Upload files individually. No zip archives!&lt;br /&gt;
&lt;br /&gt;
* Submit written responses as PDFs. &lt;br /&gt;
&lt;br /&gt;
* If you upload a PDF of handwritten work, make sure that the text appears clearly and the picture is oriented portrait style. &amp;quot;Cam Scanner&amp;quot; for Android and iOS phones easily scans images and compiles them into a single PDF file. &lt;br /&gt;
&lt;br /&gt;
* Unless otherwise stated, L-Comps should be in a single file.&lt;br /&gt;
&lt;br /&gt;
* When asked to submit C code for a given programming assignment, we are only concerned with receiving the relevant source files, i.e., all *.c and *.h files.  We do not want entire IDE/MPLAB X projects or executables/object files. &lt;br /&gt;
&lt;br /&gt;
* When writing your responses, please follow any instructions on how to write your response.  For example, if we ask for a snippet of code, please do not submit your entire C program with header files and a main routine.  We typically are only expecting a few lines of code that solve the problem.&lt;br /&gt;
&lt;br /&gt;
* Be neat and make sure your answers are easy to follow.  Messy hard-to-follow assignments make TAs cranky, and you don&amp;#039;t want cranky TAs grading your assignment!&lt;br /&gt;
&lt;br /&gt;
* It helps both us and you if you format your code nicely.  Clean looking code is easier for us to grade and easier for you to debug.  Text editors with IDEs such as Netbeans and MPLAB X have tools for auto-formatting code.  For example, highlighting a region and hitting Alt+Shift+f (Linux and Windows) will format that region according to your local formatting preferences.&lt;br /&gt;
&lt;br /&gt;
* When you compile your code, pay attention to any compiler warnings.  They are there for a reason!  You should be able to eventually get your code to produce no warnings.  Often if a piece of code is not working, the warnings will give a clue as to why.  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Note that in &amp;quot;project properties&amp;quot; in both IDEs, it is possible to generate &amp;quot;Additional warnings.&amp;quot;  This tells your compiler to be more strict about the rules of C.  The better you adhere to these rules, the more likely it is that your code will compile.--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schedule ==&lt;br /&gt;
&lt;br /&gt;
This course is (partially) &amp;quot;flipped&amp;quot;:  you watch video lectures and do readings in advance of class, and during class, you should have plenty of opportunity for questions and interaction with the instructors and TAs as you work on assignments.  The purpose of this is to try to maximize the value of the class time.  In a typical lecture, 80% of the material is the same every time it is given, and the other 20% is interactive and variable based on student questions.  In a flipped class, we hope to flip this percentage, to better tailor the class to student needs.  You will have time with the instructors while your brains are actually on and working on the material (not just scribbling notes), the times when you are most likely to have questions.  Making the video lectures available should also allow you to spend more or less time on the lecture portion, depending on your prior background.  If the material is difficult for you, you can pause or rewind.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Please keep track of any questions you have as you watch the videos!&amp;#039;&amp;#039;&amp;#039; Bring these questions to class; it will make for a livelier classroom.  (Or use the forum if you prefer.)&lt;br /&gt;
&lt;br /&gt;
All readings, videos, and C code can be found at this page:  [[ME 333 Readings, Videos, and Sample Code|&amp;#039;&amp;#039;&amp;#039;ME 333 Readings, Videos, and Sample Code&amp;#039;&amp;#039;&amp;#039;]].  We will cover almost all of the Appendix, a Crash Course in C, in the first 1.5 weeks of class, so you can work ahead and do all the readings, watch all the videos, and do all the problems, if you have time over the break.  But at a minimum, you must do the winter break assignment.  &lt;br /&gt;
&lt;br /&gt;
After the first two weeks of class, we will have video lecture comprehension questions (L-comps) due before every class, assignments due every Tuesday, and quizzes every Thursday (on the material covered in the assignment turned in on Tuesday).  L-comps and assignments are turned in using Canvas before 11 AM the day of the class. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Winter Break&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Reading due for first class&amp;#039;&amp;#039;&amp;#039;:  pages 1-9 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Videos&amp;#039;&amp;#039;&amp;#039;:  1-7 of [[ME 333 Readings, Videos, and Sample Code|A Crash Course in C]].  Answer the lecture comprehension (L-comp) questions underneath each of the videos (you may need to click to expand).  You will turn in a paper version of your answers at the beginning of the first class.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment 1&amp;#039;&amp;#039;&amp;#039;:  Also do exercises 1-4, 6-8, 10-11, 14-15 of A Crash Course in C.  Bring your laptop to class and demonstrate your HelloWorld.c program.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 1&amp;#039;&amp;#039;&amp;#039; (T 1/6)  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment due&amp;#039;&amp;#039;&amp;#039;:  Hand in a paper version of your L-comp and other solutions at the beginning of class.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 1.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos and readings&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercises 16-17, 19-20, 25-26, 28-30, 32.  Pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): 8-16 of a Crash Course in C.  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video.  You need to click it to expand it.&lt;br /&gt;
: Reading:  Through page 23 of a Crash Course in C, and the rest as reference&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 2&amp;#039;&amp;#039;&amp;#039; (T 1/8)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 32.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.   If you have not yet, pay for your equipment.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  none&lt;br /&gt;
: Reading:  Rest of a Crash Course in C as reference&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 3&amp;#039;&amp;#039;&amp;#039; (Th 1/13)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 33.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039;  On C&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Intro to Programming the PIC32&amp;#039;&amp;#039;&amp;#039;:  &lt;br /&gt;
:: Download the following documentation:&lt;br /&gt;
:: * [[Media:book-current.pdf|Chapter 1]]&lt;br /&gt;
:: * [[Media:PIC32MXDS-Dec2013.pdf|PIC32MX5xx/6xx/7xx Family Data Sheet (Dec 2013)]]&lt;br /&gt;
:: * [[Media:PIC32RefManual-Dec2013.pdf|PIC32 Reference Manual (Dec 2013)]]&lt;br /&gt;
&lt;br /&gt;
:: When installing the software, you may need to update your Java for the MPLAB X IDE.  Answer &amp;quot;yes&amp;quot; if you are asked if you want to update your path when installing anything.  Mac OS X may not allow you to install since the software is from an &amp;quot;untrusted&amp;quot; developer.  You can override that by control-clicking on the dmg and choosing &amp;quot;Open&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment:&amp;#039;&amp;#039;&amp;#039;  Download and install all of the above.  &lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Assignment:  Finish the downloads and installations, as described above.&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_2:_Looking_Under_the_Hood:_Hardware|Videos 1-4 of Chapter 2]].  L-comps can be found at the bottom of the &amp;quot;description&amp;quot; portion of the video (click on it to expand it).&lt;br /&gt;
: Reading:  Chapter 1 (you can ignore 1.4.2, 1.5, and 1.6.2) and Chapter 2.  If you get the programs in 1.4.1 and 1.6.1 working, great!  If not, ask questions on the forum or we&amp;#039;ll do it in the next class.  Don&amp;#039;t destroy your board!&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 5&amp;#039;&amp;#039;&amp;#039; (T 1/20)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas]).  &amp;#039;&amp;#039;&amp;#039;No separate assignment to hand in today!&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  We will make sure that everyone can run simplePIC.c and talkingPIC.c.  No demo grades today.  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Problems 3-16 of Chapter 2 and problems 1-4, 6-8, 9 (parts a, c, d, and f only), and 10 of Chapter 3. Demo next Tuesday:  Chapter 3 exercise 6.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  video 17 of a Crash Course in C and all four videos for Chapter 3&lt;br /&gt;
: Reading:  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_3:_Looking_Under_the_Hood:_Software|Chapter 3]].&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 6&amp;#039;&amp;#039;&amp;#039; (Th 1/22)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on Chapter 2 L-comps.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 4 (only one video!)&lt;br /&gt;
: Reading:  Chapter 4&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 7&amp;#039;&amp;#039;&amp;#039; (T 1/27)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Exercise 6 of Chapter 3.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercises 1, 2, and 3 (a) and (b), and Chapter 5 exercises 3, 5, 7, and 8.  Demo next Tuesday:  Chapter 4 exercise 3(b).&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 5 (2 videos)&lt;br /&gt;
: Reading:  Chapter 5&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 8&amp;#039;&amp;#039;&amp;#039; (Th 1/29)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 6 (5 videos)&lt;br /&gt;
: Reading:  Chapter 6&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 9&amp;#039;&amp;#039;&amp;#039; (T 2/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 4 exercise 3(b).&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercises 1-8, 13, 15-18.  Demo next Tuesday:  Exercise 18.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 7 (3 videos)&lt;br /&gt;
: Reading:  Chapter 7&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 10&amp;#039;&amp;#039;&amp;#039; (Th 2/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  Chapter 8 (4 videos)&lt;br /&gt;
: Reading:  Chapter 8&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 11&amp;#039;&amp;#039;&amp;#039; (T 2/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Chapter 6 exercise 18.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assignv2.pdf | Assignment Part 1]]&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps): Chapter 9 (3 videos)&lt;br /&gt;
: Reading:  Chapter 9&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 12&amp;#039;&amp;#039;&amp;#039; (Th 2/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb11_2014assign_part2v2.pdf | Assignment Part 2]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:LEDPImain.c | Example Code for Part 2]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#PID_Control | On PID control]] (5 videos)&lt;br /&gt;
: Reading:  none&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 13&amp;#039;&amp;#039;&amp;#039; (T 2/17)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18samplecode.txt | Sample Code]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:uart_plot.m | uart_plot.m]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_10:_Analog_Input | Analog input]] (1 video)&lt;br /&gt;
: Reading:  Chapter 10&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 14&amp;#039;&amp;#039;&amp;#039; (Th 2/19)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:Me333feb18v3.pdf | Assignment Parts 3 and 4]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:out.hex | out.hex]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:pid_plot.m | pid_plot.m ]]&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;[[Media:comm.txt     | comm.txt ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_11:_Brushed_Permanent_Magnet_DC_Motors | Brushed Permanent Magnet DC Motors]] (7 videos!) &amp;#039;&amp;#039;&amp;#039;Notes:  (1) Because there are a lot of videos, these L-comps will count double of the usual L-comps.  (2) Because this material is critical to the in-class motor characterization we will do on Tuesday, it is critical you watch these videos.  Therefore, these L-comps are not eligible to be dropped as your lowest L-comps.&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: Reading:  Chapter 11&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 15&amp;#039;&amp;#039;&amp;#039; (T 2/24)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  Square wave control of LED output.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin next assignment, due next Tuesday:&amp;#039;&amp;#039;&amp;#039;  Exercises 3-6 of Chapter 11. Begin exercise 4 in class.  For the experimental characterization (exercises 4-6), assume the motor is a 6 V motor and the coils can dissipate 5 W continuously (I^2 R) before overheating.  The encoder has 99 lines per revolution.  No demo on Tues of next week.&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_12:_Motor_Sizing | Gears and Motor Sizing]] (3 videos)&lt;br /&gt;
: Reading:  Chapter 12&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 16&amp;#039;&amp;#039;&amp;#039; (Th 2/26)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue current assignment&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  [[ME_333_Readings,_Videos,_and_Sample_Code#Chapter_13:_Motor_Control | Motor Control]] (4 videos)&lt;br /&gt;
: Reading:  Chapter 13&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 17&amp;#039;&amp;#039;&amp;#039; (T 3/3)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Turn in assignment and L-comps ([https://northwestern.instructure.com/courses/310 Canvas])&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;  None.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Assignment discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Brief review of videos, readings, and L-comps&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Begin final project:&amp;#039;&amp;#039;&amp;#039;  Download:&lt;br /&gt;
* [[Media:MAX9918DS.pdf | MAX9918 current sensor data sheet]]&lt;br /&gt;
* [[Media:A3909DS.pdf | A3909 dual h-bridge motor driver data sheet]]&lt;br /&gt;
* [[Media:Final-Assignment-2014-part1.pdf | Final Assignment Part 1]]&lt;br /&gt;
* [[Media:ME333 Demo.zip | Demonstration]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Finish wiring H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  Complete Chapter 13.&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 18&amp;#039;&amp;#039;&amp;#039; (Th 3/5)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Demonstrate you can successfully use your matlab diagnostics code to interact with the H-bridge, current sensor, and encoder counter chips.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; on material through assignment turned in Tuesday (&amp;#039;&amp;#039;&amp;#039;last quiz!&amp;#039;&amp;#039;&amp;#039;)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;.  Due Tuesday:  show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
* [[Media:me333final.zip | Final Project ]]&lt;br /&gt;
* [[Media:refplots-2014.pdf | Examples of motion reference trajectories ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
: Monday:  help session in ME conference room B211, 6-8 PM&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 19&amp;#039;&amp;#039;&amp;#039; (T 3/10)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  Nothing to turn in, just the demo...&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;In-class demo:&amp;#039;&amp;#039;&amp;#039;   Show that your current loop PI tuning works, and show that you successfully read the motor angle, in your own code.&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* [[Media:ME333FinalProjectTurnIn.pdf | Final Project Writeup ]]&lt;br /&gt;
* [[Media:ME333FinalProjectExtraCredit.pdf | Final Project Extra Credit ]]&lt;br /&gt;
&lt;br /&gt;
At home:&lt;br /&gt;
: Videos (and L-comps):  None&lt;br /&gt;
: Reading:  None&lt;br /&gt;
 &lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Class 20&amp;#039;&amp;#039;&amp;#039; (Th 3/12)&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Before 11 AM:&amp;#039;&amp;#039;&amp;#039;  &lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Quiz:&amp;#039;&amp;#039;&amp;#039; No quiz!&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Discussion&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
: &amp;#039;&amp;#039;&amp;#039;Continue final project&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Final Demo&amp;#039;&amp;#039;&amp;#039;:  Monday 3/16, 3-5 PM or Wednesday 3/18, 9-11 AM. Electronic submission by Wednesday 3/19, 11 AM.&lt;br /&gt;
&lt;br /&gt;
== nScope ==&lt;br /&gt;
&lt;br /&gt;
[http://nscope.org/ nScope website]&lt;br /&gt;
&lt;br /&gt;
== FAQ ==&lt;br /&gt;
&lt;br /&gt;
Q: Do I need to know the C language to take this course?&lt;br /&gt;
&lt;br /&gt;
A: No. But if you already know C, there is still plenty else in this course for you. If you already know C, know how to use microcontrollers for real-time control, and have a good understanding how common sensors and actuators work and how to interface to them, this course may not be for you. Consider taking ME 433 Advanced Mechatronics in the spring quarter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: Is there an independent project?&lt;br /&gt;
&lt;br /&gt;
A: There is no large independent project. There will be a two-week project at the end of the course, but there will be no machining. For a more significant project, do a quarter-long project in ME 433 Advanced Mechatronics, offered in the spring quarter. ME 333 is good preparation for ME 433.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Q: What kind of laptop do I need?&lt;br /&gt;
&lt;br /&gt;
A: You need a laptop with at least 2 USB ports.  Any operating system is fine.&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=22898</id>
		<title>ME 449 Robotic Manipulation</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=22898"/>
		<updated>2014-12-02T00:35:43Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Assignments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Fall Quarter 2014&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* Instructor:  Prof. Kevin Lynch&lt;br /&gt;
* Office hours:  Tech B221, Tues 4-5 PM, Wed 3:30-4:30 PM&lt;br /&gt;
* Meeting:  12:30-1:50 TTh, Tech L221&lt;br /&gt;
* course website:  http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation&lt;br /&gt;
&lt;br /&gt;
==Course Summary==&lt;br /&gt;
&lt;br /&gt;
Mechanics of robotic manipulation, computer representations and algorithms for manipulation planning, and applications to industrial automation, parts feeding, grasping, fixturing, and assembly.&lt;br /&gt;
&lt;br /&gt;
==Grading==&lt;br /&gt;
&lt;br /&gt;
Grading for the course will be based on problem sets and a final project. There will be no exams. &lt;br /&gt;
&lt;br /&gt;
==Course Text==&lt;br /&gt;
[[Media:park-lynch.pdf|&amp;quot;Introduction to Robotics:  Mechanics, Planning, and Control,&amp;quot; F. C. Park and K. M. Lynch]].  These course notes will be undergoing revision throughout the quarter; check the timestamp in the table of contents.&lt;br /&gt;
&lt;br /&gt;
[[Media:ME449-Summary-2014.pdf|Summary of important equations]].&lt;br /&gt;
&lt;br /&gt;
==Assignments==&lt;br /&gt;
&lt;br /&gt;
* [[Media:ME449-2014F-hwk1.pdf|Assignment 1]], due Thursday Oct 9 at the beginning of class  ([[Media:ME449-2014F-hwk1-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk2.pdf|Assignment 2]], due Tuesday Oct 28 at the beginning of class  ([[Media:ME449-2014F-hwk2-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk3.pdf|Assignment 3]], due &amp;#039;&amp;#039;&amp;#039;Tuesday Nov 11 at the beginning of class&amp;#039;&amp;#039;&amp;#039; &amp;lt;strike&amp;gt;Thursday Nov 6 at the beginning of class&amp;lt;/strike&amp;gt;.  Be prepared to do a demo of your numerical inverse kinematics on a mystery manipulator! ([[Media:ME449-2014F-hwk3-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk4.pdf|Assignment 4]], due Thursday Nov 20 at the beginning of class. ([[Media:ME449-2014F-hwk4-solutions-pt1.pdf|Solutions Part 1]],[[Media:ME449-2014F-hwk4-solutions-pt2.pdf|Solutions Part 2]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk5.pdf|Assignment 5]], due Wednesday Dec 10 at noon; final demos in the classroom at that time&lt;br /&gt;
&lt;br /&gt;
==Approximate Syllabus==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Configuration Space&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 2&lt;br /&gt;
* degrees of freedom, Grubler&amp;#039;s formula, parameterizations, holonomic and nonholonomic constraints &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Rigid-Body Motions&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 3, but you may skim/skip 3.2.2, 3.2.4&lt;br /&gt;
* rotation matrices, Euler angles, exponential coordinates, unit quaternions&lt;br /&gt;
* angular velocities&lt;br /&gt;
* rigid-body motions&lt;br /&gt;
* spatial velocities&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Forward Kinematics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 4, but you may skim/skip 4.1 and 4.2.3&lt;br /&gt;
* product of exponentials formula &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Velocity Kinematics and Statics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 5&lt;br /&gt;
* coordinate, space, and body Jacobians &lt;br /&gt;
* statics of open chains, singularities, manipulability &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Inverse Kinematics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 6, but you may skip 6.1&lt;br /&gt;
* 2R example, numerical methods, and redundant open chains &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Dynamics of Open Chains&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 8.1 and 8.2 on Lagrangian formulation, rest of the chapter on Newton-Euler and task space coords&lt;br /&gt;
* Lagrangian formulation, dynamics of a single rigid body &lt;br /&gt;
* Newton-Euler inverse and forward dynamics of open chains, dynamics in task space&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Trajectory Generation&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 9, but you may skip 9.2 and 9.3&lt;br /&gt;
* definitions and time-optimal time scaling &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Motion Planning&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 10 through 10.5.1&lt;br /&gt;
* overview, foundations, and complete path planners&lt;br /&gt;
* grid methods and the RRT sampling method&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Robot Control&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
optional:  Chapter 11&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Grasping and Manipulation&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 12&lt;br /&gt;
* contact kinematics, planar graphical methods, and form closure&lt;br /&gt;
* contact forces, planar graphical methods, and force closure, Chapter 12.2&lt;br /&gt;
* other manipulation, Chapter 12.3&lt;br /&gt;
&lt;br /&gt;
==Archive==&lt;br /&gt;
&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive 2012)|ME 449 Spring 2012]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Spring 2014)|ME 449 Spring 2014]]&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=22897</id>
		<title>ME 449 Robotic Manipulation</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=22897"/>
		<updated>2014-12-02T00:35:19Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Assignments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Fall Quarter 2014&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* Instructor:  Prof. Kevin Lynch&lt;br /&gt;
* Office hours:  Tech B221, Tues 4-5 PM, Wed 3:30-4:30 PM&lt;br /&gt;
* Meeting:  12:30-1:50 TTh, Tech L221&lt;br /&gt;
* course website:  http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation&lt;br /&gt;
&lt;br /&gt;
==Course Summary==&lt;br /&gt;
&lt;br /&gt;
Mechanics of robotic manipulation, computer representations and algorithms for manipulation planning, and applications to industrial automation, parts feeding, grasping, fixturing, and assembly.&lt;br /&gt;
&lt;br /&gt;
==Grading==&lt;br /&gt;
&lt;br /&gt;
Grading for the course will be based on problem sets and a final project. There will be no exams. &lt;br /&gt;
&lt;br /&gt;
==Course Text==&lt;br /&gt;
[[Media:park-lynch.pdf|&amp;quot;Introduction to Robotics:  Mechanics, Planning, and Control,&amp;quot; F. C. Park and K. M. Lynch]].  These course notes will be undergoing revision throughout the quarter; check the timestamp in the table of contents.&lt;br /&gt;
&lt;br /&gt;
[[Media:ME449-Summary-2014.pdf|Summary of important equations]].&lt;br /&gt;
&lt;br /&gt;
==Assignments==&lt;br /&gt;
&lt;br /&gt;
* [[Media:ME449-2014F-hwk1.pdf|Assignment 1]], due Thursday Oct 9 at the beginning of class  ([[Media:ME449-2014F-hwk1-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk2.pdf|Assignment 2]], due Tuesday Oct 28 at the beginning of class  ([[Media:ME449-2014F-hwk2-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk3.pdf|Assignment 3]], due &amp;#039;&amp;#039;&amp;#039;Tuesday Nov 11 at the beginning of class&amp;#039;&amp;#039;&amp;#039; &amp;lt;strike&amp;gt;Thursday Nov 6 at the beginning of class&amp;lt;/strike&amp;gt;.  Be prepared to do a demo of your numerical inverse kinematics on a mystery manipulator! ([[Media:ME449-2014F-hwk3-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk4.pdf|Assignment 4]], due Thursday Nov 20 at the beginning of class. ([[Media:ME449-2014F-hwk4-solutions-pt1.pdf|Solutions Part 1.]],[[Media:ME449-2014F-hwk4-solutions-pt2.pdf|Solutions Part 2.]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk5.pdf|Assignment 5]], due Wednesday Dec 10 at noon; final demos in the classroom at that time&lt;br /&gt;
&lt;br /&gt;
==Approximate Syllabus==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Configuration Space&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 2&lt;br /&gt;
* degrees of freedom, Grubler&amp;#039;s formula, parameterizations, holonomic and nonholonomic constraints &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Rigid-Body Motions&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 3, but you may skim/skip 3.2.2, 3.2.4&lt;br /&gt;
* rotation matrices, Euler angles, exponential coordinates, unit quaternions&lt;br /&gt;
* angular velocities&lt;br /&gt;
* rigid-body motions&lt;br /&gt;
* spatial velocities&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Forward Kinematics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 4, but you may skim/skip 4.1 and 4.2.3&lt;br /&gt;
* product of exponentials formula &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Velocity Kinematics and Statics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 5&lt;br /&gt;
* coordinate, space, and body Jacobians &lt;br /&gt;
* statics of open chains, singularities, manipulability &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Inverse Kinematics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 6, but you may skip 6.1&lt;br /&gt;
* 2R example, numerical methods, and redundant open chains &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Dynamics of Open Chains&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 8.1 and 8.2 on Lagrangian formulation, rest of the chapter on Newton-Euler and task space coords&lt;br /&gt;
* Lagrangian formulation, dynamics of a single rigid body &lt;br /&gt;
* Newton-Euler inverse and forward dynamics of open chains, dynamics in task space&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Trajectory Generation&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 9, but you may skip 9.2 and 9.3&lt;br /&gt;
* definitions and time-optimal time scaling &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Motion Planning&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 10 through 10.5.1&lt;br /&gt;
* overview, foundations, and complete path planners&lt;br /&gt;
* grid methods and the RRT sampling method&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Robot Control&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
optional:  Chapter 11&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Grasping and Manipulation&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 12&lt;br /&gt;
* contact kinematics, planar graphical methods, and form closure&lt;br /&gt;
* contact forces, planar graphical methods, and force closure, Chapter 12.2&lt;br /&gt;
* other manipulation, Chapter 12.3&lt;br /&gt;
&lt;br /&gt;
==Archive==&lt;br /&gt;
&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive 2012)|ME 449 Spring 2012]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Spring 2014)|ME 449 Spring 2014]]&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=22896</id>
		<title>ME 449 Robotic Manipulation</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=22896"/>
		<updated>2014-12-02T00:34:47Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Assignments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Fall Quarter 2014&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* Instructor:  Prof. Kevin Lynch&lt;br /&gt;
* Office hours:  Tech B221, Tues 4-5 PM, Wed 3:30-4:30 PM&lt;br /&gt;
* Meeting:  12:30-1:50 TTh, Tech L221&lt;br /&gt;
* course website:  http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation&lt;br /&gt;
&lt;br /&gt;
==Course Summary==&lt;br /&gt;
&lt;br /&gt;
Mechanics of robotic manipulation, computer representations and algorithms for manipulation planning, and applications to industrial automation, parts feeding, grasping, fixturing, and assembly.&lt;br /&gt;
&lt;br /&gt;
==Grading==&lt;br /&gt;
&lt;br /&gt;
Grading for the course will be based on problem sets and a final project. There will be no exams. &lt;br /&gt;
&lt;br /&gt;
==Course Text==&lt;br /&gt;
[[Media:park-lynch.pdf|&amp;quot;Introduction to Robotics:  Mechanics, Planning, and Control,&amp;quot; F. C. Park and K. M. Lynch]].  These course notes will be undergoing revision throughout the quarter; check the timestamp in the table of contents.&lt;br /&gt;
&lt;br /&gt;
[[Media:ME449-Summary-2014.pdf|Summary of important equations]].&lt;br /&gt;
&lt;br /&gt;
==Assignments==&lt;br /&gt;
&lt;br /&gt;
* [[Media:ME449-2014F-hwk1.pdf|Assignment 1]], due Thursday Oct 9 at the beginning of class  ([[Media:ME449-2014F-hwk1-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk2.pdf|Assignment 2]], due Tuesday Oct 28 at the beginning of class  ([[Media:ME449-2014F-hwk2-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk3.pdf|Assignment 3]], due &amp;#039;&amp;#039;&amp;#039;Tuesday Nov 11 at the beginning of class&amp;#039;&amp;#039;&amp;#039; &amp;lt;strike&amp;gt;Thursday Nov 6 at the beginning of class&amp;lt;/strike&amp;gt;.  Be prepared to do a demo of your numerical inverse kinematics on a mystery manipulator! ([[Media:ME449-2014F-hwk3-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk4.pdf|Assignment 4]], due Thursday Nov 20 at the beginning of class. ([[Media:ME449-2014F-hwk4-solutions-pt1.pdf|Solutions Part 1.]]),([[Media:ME449-2014F-hwk4-solutions-pt2.pdf|Solutions Part 2.]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk5.pdf|Assignment 5]], due Wednesday Dec 10 at noon; final demos in the classroom at that time&lt;br /&gt;
&lt;br /&gt;
==Approximate Syllabus==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Configuration Space&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 2&lt;br /&gt;
* degrees of freedom, Grubler&amp;#039;s formula, parameterizations, holonomic and nonholonomic constraints &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Rigid-Body Motions&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 3, but you may skim/skip 3.2.2, 3.2.4&lt;br /&gt;
* rotation matrices, Euler angles, exponential coordinates, unit quaternions&lt;br /&gt;
* angular velocities&lt;br /&gt;
* rigid-body motions&lt;br /&gt;
* spatial velocities&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Forward Kinematics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 4, but you may skim/skip 4.1 and 4.2.3&lt;br /&gt;
* product of exponentials formula &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Velocity Kinematics and Statics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 5&lt;br /&gt;
* coordinate, space, and body Jacobians &lt;br /&gt;
* statics of open chains, singularities, manipulability &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Inverse Kinematics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 6, but you may skip 6.1&lt;br /&gt;
* 2R example, numerical methods, and redundant open chains &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Dynamics of Open Chains&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 8.1 and 8.2 on Lagrangian formulation, rest of the chapter on Newton-Euler and task space coords&lt;br /&gt;
* Lagrangian formulation, dynamics of a single rigid body &lt;br /&gt;
* Newton-Euler inverse and forward dynamics of open chains, dynamics in task space&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Trajectory Generation&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 9, but you may skip 9.2 and 9.3&lt;br /&gt;
* definitions and time-optimal time scaling &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Motion Planning&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 10 through 10.5.1&lt;br /&gt;
* overview, foundations, and complete path planners&lt;br /&gt;
* grid methods and the RRT sampling method&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Robot Control&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
optional:  Chapter 11&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Grasping and Manipulation&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 12&lt;br /&gt;
* contact kinematics, planar graphical methods, and form closure&lt;br /&gt;
* contact forces, planar graphical methods, and force closure, Chapter 12.2&lt;br /&gt;
* other manipulation, Chapter 12.3&lt;br /&gt;
&lt;br /&gt;
==Archive==&lt;br /&gt;
&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive 2012)|ME 449 Spring 2012]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Spring 2014)|ME 449 Spring 2014]]&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=File:ME449-2014F-hwk4-solutions-pt2.pdf&amp;diff=22895</id>
		<title>File:ME449-2014F-hwk4-solutions-pt2.pdf</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=File:ME449-2014F-hwk4-solutions-pt2.pdf&amp;diff=22895"/>
		<updated>2014-12-02T00:33:30Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=File:ME449-2014F-hwk4-solutions-pt1.pdf&amp;diff=22894</id>
		<title>File:ME449-2014F-hwk4-solutions-pt1.pdf</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=File:ME449-2014F-hwk4-solutions-pt1.pdf&amp;diff=22894"/>
		<updated>2014-12-02T00:33:17Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=22882</id>
		<title>ME 449 Robotic Manipulation</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=22882"/>
		<updated>2014-11-17T01:06:31Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Assignments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Fall Quarter 2014&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* Instructor:  Prof. Kevin Lynch&lt;br /&gt;
* Office hours:  Tech B221, Tues 4-5 PM, Wed 3:30-4:30 PM&lt;br /&gt;
* Meeting:  12:30-1:50 TTh, Tech L221&lt;br /&gt;
* course website:  http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation&lt;br /&gt;
&lt;br /&gt;
==Course Summary==&lt;br /&gt;
&lt;br /&gt;
Mechanics of robotic manipulation, computer representations and algorithms for manipulation planning, and applications to industrial automation, parts feeding, grasping, fixturing, and assembly.&lt;br /&gt;
&lt;br /&gt;
==Grading==&lt;br /&gt;
&lt;br /&gt;
Grading for the course will be based on problem sets and a final project. There will be no exams. &lt;br /&gt;
&lt;br /&gt;
==Course Text==&lt;br /&gt;
[[Media:park-lynch.pdf|&amp;quot;Introduction to Robotics:  Mechanics, Planning, and Control,&amp;quot; F. C. Park and K. M. Lynch]].  These course notes will be undergoing revision throughout the quarter; check the timestamp in the table of contents.&lt;br /&gt;
&lt;br /&gt;
[[Media:ME449-Summary-2014.pdf|Summary of important equations]].&lt;br /&gt;
&lt;br /&gt;
==Assignments==&lt;br /&gt;
&lt;br /&gt;
* [[Media:ME449-2014F-hwk1.pdf|Assignment 1]], due Thursday Oct 9 at the beginning of class  ([[Media:ME449-2014F-hwk1-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk2.pdf|Assignment 2]], due Tuesday Oct 28 at the beginning of class  ([[Media:ME449-2014F-hwk2-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk3.pdf|Assignment 3]], due &amp;#039;&amp;#039;&amp;#039;Tuesday Nov 11 at the beginning of class&amp;#039;&amp;#039;&amp;#039; &amp;lt;strike&amp;gt;Thursday Nov 6 at the beginning of class&amp;lt;/strike&amp;gt;.  Be prepared to do a demo of your numerical inverse kinematics on a mystery manipulator! ([[Media:ME449-2014F-hwk3-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk4.pdf|Assignment 4]], due Thursday Nov 20 at the beginning of class&lt;br /&gt;
&lt;br /&gt;
==Approximate Syllabus==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Configuration Space&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 2&lt;br /&gt;
* degrees of freedom, Grubler&amp;#039;s formula, parameterizations, holonomic and nonholonomic constraints &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Rigid-Body Motions&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 3, but you may skim/skip 3.2.2, 3.2.4&lt;br /&gt;
* rotation matrices, Euler angles, exponential coordinates, unit quaternions&lt;br /&gt;
* angular velocities&lt;br /&gt;
* rigid-body motions&lt;br /&gt;
* spatial velocities&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Forward Kinematics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 4, but you may skim/skip 4.1 and 4.2.3&lt;br /&gt;
* product of exponentials formula &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Velocity Kinematics and Statics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 5&lt;br /&gt;
* coordinate, space, and body Jacobians &lt;br /&gt;
* statics of open chains, singularities, manipulability &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Inverse Kinematics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 6, but you may skip 6.1&lt;br /&gt;
* 2R example, numerical methods, and redundant open chains &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Dynamics of Open Chains&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 8.1 and 8.2 on Lagrangian formulation, rest of the chapter on Newton-Euler and task space coords&lt;br /&gt;
* Lagrangian formulation, dynamics of a single rigid body &lt;br /&gt;
* Newton-Euler inverse and forward dynamics of open chains, dynamics in task space&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Trajectory Generation&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 9, but you may skip 9.2 and 9.3&lt;br /&gt;
* definitions and time-optimal time scaling &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Motion Planning&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 10 through 10.5.1&lt;br /&gt;
* overview, foundations, and complete path planners&lt;br /&gt;
* grid methods and the RRT sampling method&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Robot Control&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
optional:  Chapter 11&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Grasping and Manipulation&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 12&lt;br /&gt;
* contact kinematics, planar graphical methods, and form closure&lt;br /&gt;
* contact forces, planar graphical methods, and force closure, Chapter 12.2&lt;br /&gt;
* other manipulation, Chapter 12.3&lt;br /&gt;
&lt;br /&gt;
==Archive==&lt;br /&gt;
&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive 2012)|ME 449 Spring 2012]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Spring 2014)|ME 449 Spring 2014]]&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=File:ME449-2014F-hwk3-solutions.pdf&amp;diff=22881</id>
		<title>File:ME449-2014F-hwk3-solutions.pdf</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=File:ME449-2014F-hwk3-solutions.pdf&amp;diff=22881"/>
		<updated>2014-11-17T01:05:49Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=22862</id>
		<title>ME 449 Robotic Manipulation</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=22862"/>
		<updated>2014-11-03T19:58:46Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Assignments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Fall Quarter 2014&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* Instructor:  Prof. Kevin Lynch&lt;br /&gt;
* Office hours:  Tech B221, Tues 4-5 PM, Wed 3:30-4:30 PM&lt;br /&gt;
* Meeting:  12:30-1:50 TTh, Tech L221&lt;br /&gt;
* course website:  http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation&lt;br /&gt;
&lt;br /&gt;
==Course Summary==&lt;br /&gt;
&lt;br /&gt;
Mechanics of robotic manipulation, computer representations and algorithms for manipulation planning, and applications to industrial automation, parts feeding, grasping, fixturing, and assembly.&lt;br /&gt;
&lt;br /&gt;
==Grading==&lt;br /&gt;
&lt;br /&gt;
Grading for the course will be based on problem sets and a final project. There will be no exams. &lt;br /&gt;
&lt;br /&gt;
==Course Text==&lt;br /&gt;
[[Media:park-lynch.pdf|&amp;quot;Introduction to Robotics:  Mechanics, Planning, and Control,&amp;quot; F. C. Park and K. M. Lynch]].  These course notes will be undergoing revision throughout the quarter; check the timestamp in the table of contents.&lt;br /&gt;
&lt;br /&gt;
[[Media:ME449-Summary-2014.pdf|Summary of important equations]].&lt;br /&gt;
&lt;br /&gt;
==Assignments==&lt;br /&gt;
&lt;br /&gt;
* [[Media:ME449-2014F-hwk1.pdf|Assignment 1]], due Thursday Oct 9 at the beginning of class  ([[Media:ME449-2014F-hwk1-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk2.pdf|Assignment 2]], due Tuesday Oct 28 at the beginning of class  ([[Media:ME449-2014F-hwk2-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk3.pdf|Assignment 3]], due Thursday Nov 6 at the beginning of class&lt;br /&gt;
&lt;br /&gt;
==Approximate Syllabus==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Configuration Space&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 2&lt;br /&gt;
* degrees of freedom, Grubler&amp;#039;s formula, parameterizations, holonomic and nonholonomic constraints &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Rigid-Body Motions&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 3, but you may skim/skip 3.2.2, 3.2.4&lt;br /&gt;
* rotation matrices, Euler angles, exponential coordinates, unit quaternions&lt;br /&gt;
* angular velocities&lt;br /&gt;
* rigid-body motions&lt;br /&gt;
* spatial velocities&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Forward Kinematics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 4, but you may skim/skip 4.1 and 4.2.3&lt;br /&gt;
* product of exponentials formula &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Velocity Kinematics and Statics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 5&lt;br /&gt;
* coordinate, space, and body Jacobians &lt;br /&gt;
* statics of open chains, singularities, manipulability &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Inverse Kinematics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 6, but you may skip 6.1&lt;br /&gt;
* 2R example, numerical methods, and redundant open chains &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Dynamics of Open Chains&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 8.1 and 8.2 on Lagrangian formulation, rest of the chapter on Newton-Euler and task space coords&lt;br /&gt;
* Lagrangian formulation, dynamics of a single rigid body &lt;br /&gt;
* Newton-Euler inverse and forward dynamics of open chains, dynamics in task space&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Trajectory Generation&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 9, but you may skip 9.2 and 9.3&lt;br /&gt;
* definitions and time-optimal time scaling &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Motion Planning&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 10 through 10.5.1&lt;br /&gt;
* overview, foundations, and complete path planners&lt;br /&gt;
* grid methods and the RRT sampling method&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Robot Control&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
optional:  Chapter 11&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Grasping and Manipulation&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 12&lt;br /&gt;
* contact kinematics, planar graphical methods, and form closure&lt;br /&gt;
* contact forces, planar graphical methods, and force closure, Chapter 12.2&lt;br /&gt;
* other manipulation, Chapter 12.3&lt;br /&gt;
&lt;br /&gt;
==Archive==&lt;br /&gt;
&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive 2012)|ME 449 Spring 2012]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Spring 2014)|ME 449 Spring 2014]]&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=File:ME449-2014F-hwk2-solutions.pdf&amp;diff=22861</id>
		<title>File:ME449-2014F-hwk2-solutions.pdf</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=File:ME449-2014F-hwk2-solutions.pdf&amp;diff=22861"/>
		<updated>2014-11-03T19:57:00Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
	<entry>
		<id>https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=22860</id>
		<title>ME 449 Robotic Manipulation</title>
		<link rel="alternate" type="text/html" href="https://hades.mech.northwestern.edu//index.php?title=ME_449_Robotic_Manipulation&amp;diff=22860"/>
		<updated>2014-11-03T19:52:47Z</updated>

		<summary type="html">&lt;p&gt;ZackWoodruff: /* Assignments */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Fall Quarter 2014&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* Instructor:  Prof. Kevin Lynch&lt;br /&gt;
* Office hours:  Tech B221, Tues 4-5 PM, Wed 3:30-4:30 PM&lt;br /&gt;
* Meeting:  12:30-1:50 TTh, Tech L221&lt;br /&gt;
* course website:  http://hades.mech.northwestern.edu/index.php/ME_449_Robotic_Manipulation&lt;br /&gt;
&lt;br /&gt;
==Course Summary==&lt;br /&gt;
&lt;br /&gt;
Mechanics of robotic manipulation, computer representations and algorithms for manipulation planning, and applications to industrial automation, parts feeding, grasping, fixturing, and assembly.&lt;br /&gt;
&lt;br /&gt;
==Grading==&lt;br /&gt;
&lt;br /&gt;
Grading for the course will be based on problem sets and a final project. There will be no exams. &lt;br /&gt;
&lt;br /&gt;
==Course Text==&lt;br /&gt;
[[Media:park-lynch.pdf|&amp;quot;Introduction to Robotics:  Mechanics, Planning, and Control,&amp;quot; F. C. Park and K. M. Lynch]].  These course notes will be undergoing revision throughout the quarter; check the timestamp in the table of contents.&lt;br /&gt;
&lt;br /&gt;
[[Media:ME449-Summary-2014.pdf|Summary of important equations]].&lt;br /&gt;
&lt;br /&gt;
==Assignments==&lt;br /&gt;
&lt;br /&gt;
* [[Media:ME449-2014F-hwk1.pdf|Assignment 1]], due Thursday Oct 9 at the beginning of class  ([[Media:ME449-2014F-hwk1-solutions.pdf|Solutions]])&lt;br /&gt;
* [[Media:ME449-2014F-hwk2.pdf|Assignment 2]], due Tuesday Oct 28 at the beginning of class &lt;br /&gt;
* [[Media:ME449-2014F-hwk3.pdf|Assignment 3]], due Thursday Nov 6 at the beginning of class&lt;br /&gt;
&lt;br /&gt;
==Approximate Syllabus==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Configuration Space&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 2&lt;br /&gt;
* degrees of freedom, Grubler&amp;#039;s formula, parameterizations, holonomic and nonholonomic constraints &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Rigid-Body Motions&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 3, but you may skim/skip 3.2.2, 3.2.4&lt;br /&gt;
* rotation matrices, Euler angles, exponential coordinates, unit quaternions&lt;br /&gt;
* angular velocities&lt;br /&gt;
* rigid-body motions&lt;br /&gt;
* spatial velocities&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Forward Kinematics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 4, but you may skim/skip 4.1 and 4.2.3&lt;br /&gt;
* product of exponentials formula &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Velocity Kinematics and Statics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 5&lt;br /&gt;
* coordinate, space, and body Jacobians &lt;br /&gt;
* statics of open chains, singularities, manipulability &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Inverse Kinematics&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 6, but you may skip 6.1&lt;br /&gt;
* 2R example, numerical methods, and redundant open chains &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Dynamics of Open Chains&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 8.1 and 8.2 on Lagrangian formulation, rest of the chapter on Newton-Euler and task space coords&lt;br /&gt;
* Lagrangian formulation, dynamics of a single rigid body &lt;br /&gt;
* Newton-Euler inverse and forward dynamics of open chains, dynamics in task space&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Trajectory Generation&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 9, but you may skip 9.2 and 9.3&lt;br /&gt;
* definitions and time-optimal time scaling &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Motion Planning&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 10 through 10.5.1&lt;br /&gt;
* overview, foundations, and complete path planners&lt;br /&gt;
* grid methods and the RRT sampling method&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Robot Control&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
optional:  Chapter 11&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Grasping and Manipulation&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
reading:  Chapter 12&lt;br /&gt;
* contact kinematics, planar graphical methods, and form closure&lt;br /&gt;
* contact forces, planar graphical methods, and force closure, Chapter 12.2&lt;br /&gt;
* other manipulation, Chapter 12.3&lt;br /&gt;
&lt;br /&gt;
==Archive==&lt;br /&gt;
&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive 2012)|ME 449 Spring 2012]]&lt;br /&gt;
* [[ME 449 Robotic Manipulation (Archive Spring 2014)|ME 449 Spring 2014]]&lt;/div&gt;</summary>
		<author><name>ZackWoodruff</name></author>
	</entry>
</feed>