Introduction to Programing, Robotics, and Computer-Aided Technology
Syllabus
Course Description
Principles of computer-aided technology. Computer-aided design, engineering, drafting, and manufacturing; computer-aided design systems, geometry, computer graphics, hardware, computer-aided vehicle/system design synthesis. System demonstrations, laboratories, and site visits.
2024 Focus
- principles of designing robotics and 3D printing
- computer aided: from 3D objects to computer rendering and computer programmed
- design: from mechanism to kinematics, simulation, and building
- a blended learning experience:
- lectures: focus on foundational knowledge and fundamental principles
- labs: focus on applied technology
- self learning: some topics will demand self reading and testing
- project based: extensive hands-on activities building towards a final demonstration
Course Prerequisites
- ME 123: Introduction to Visualization and Computer-Aided Design
- AMATH 301: Beginning Scientific Computing
Course Material
Most materials are distributed on the course website or available from the internet.
For a thorough and comprehensive Python Development guide, I recommend two top resources that excel in practical python development:
- Python Crash Course, 3rd Edition: A Hands-On, Project-Based Introduction to Programming, by Eric Matthes
- Automate the Boring Stuff with Python, 2nd Edition: Practical Programming for Total Beginners, by Al Sweigart. Available to read for free online.
For additional materials on additive manufacturing, see:
- Additive Manufacturing, Second Edition, Edited ByAmit Bandyopadhyay, Susmita Bose, 2019, CRC Press, Boca Raton. Available online via UW Library.
Grading
- Homework / Lab reports
[70%]
- Reading report
[5%]
- guided self learning of a topic
- integrates with a lab and hands-on testing
- Final project
[25%]
- builds off from labs
- leveraging 3D printing and robotics to build a robotic manipulator
Specific Course Policies
Labs
-
We plan to have 4-person groups for the projects (5 groups per lab session). Some groups can be 3-person. Use the discussion board on Canvas to form your own lab groups within your section.
-
Lab reports will be announced on the class canvas website. Submit a typed copy of your lab report directly on Canvas.
-
No late lab reports will be accepted. Late reports are not fair to the graders and to other students. Submit what you have on time. You may submit revised/new sections of the report late, but with a 50% reduction in scores for those parts. The mechanism allows you to catch up if you fall behind. But the 50% penalty is fixed.
Tentative Class Schedule
Date | Class | Topic |
---|---|---|
1 | Introduction of the course, robotics, and 3D printing | |
2 | Different 3D printing processes and machines | |
Lab 0: course lab tour and lab safety guidelines | ||
3 | 3D scanning, slicing and working with pointclouds and STL files | |
4 | G-Code and 3D printer firmware | |
Lab 1: 3D scanning and intro to mesh processing | ||
5 | Working in the command line I | |
6 | Working in the command line II | |
Lab 2: printing and different 3D printing processes | ||
7 | Working in the command line III | |
8 | Programming and Python I | |
Combined Lab 3 and 4: reading and editing firmware; coding | ||
9 | Programming and Python II | |
10 | Motor and controls (Reading) | |
Lab 5: motor control (at maker space) | ||
11 | Motor and controls (Reading) | |
12 | Kinematics, inverse kinematics, and dynamics | |
Lab 6: linkage and enclosure printing | ||
13 | ROS and simulation of robots I | |
14 | ROS and simulation of robots II | |
Lab 7: ROS | ||
15 | ROS and simulation of robots III | |
16 | ROS and simulation of robots IV | |
Lab 8: simulating linkages | ||
17 | ROS and simulation of robots V | |
17 | Integration and Final Project I | |
Memorial Day Holiday | ||
19 | Integration and Final Project II | |
Final Project Demo |