Syllabus: Creative Kinetic Systems

16-223: IDeATe Portal: Creative Kinetic Systems
MW 10:00AM-11:50AM
Hunt Library A10 (IDeATe Physical Computing Lab)
remote contingency: Zoom Meeting 929 6638 5703 (password-protected)
office hours: in HL A10 on request, time slots will be offered (office hours information)
Instructor: Dr. Garth Zeglin (garthz) (pronouns: he/him/his)
IDeATe Portal Course, offered by The Robotics Institute
Prerequisites: none

The art and science of machines which evoke human delight through physical movement is founded on a balance of form and computation. This introductory physical computing course addresses the practical design and fabrication of robots, interactive gadgets, and kinetic sculptures. The emphasis is on creating experiences for human audiences through the physical behavior of devices which embody computation with mechanism, sensing, and actuation. Specific topics include basic electronics, elementary mechanical design, embedded programming, and parametric CAD. A key objective is gaining an intuitive understanding of how information and energy move between the physical, electronic, and computational domains to create a compelling behavior.

This interdisciplinary course is an IDeATe Portal Course open to students from all colleges. For students choosing to follow an IDeATe program it is an entry into either Physical Computing or Intelligent Environments. The structure of the class revolves around collaborative exercises and projects which introduce core physical computing and system engineering techniques in a human-centric context. Students apply system and design thinking across multiple domains, work together to make and test several devices, and participate in wide-ranging critique which considers both technical and artistic success.

History

This course was offered under this name in Fall 2022, Fall 2021, Fall 2020, Fall 2019, and Fall 2018, but was previously known as 16-223: Introduction to Physical Computing in Fall 2017, Fall 2016, and Fall 2015, and under 16-223/60-223 in Fall 2014. That name is still used by 60-223: Introduction to Physical Computing.

Learning Objectives

Upon completion of this course the students will be able to:

  • design and fabricate kinetic mechanical structures

  • apply elementary electrical theory to constructing and debugging simple circuits

  • program imperative and event-loop based software for real-time embedded control

  • partition system functionality between mechanism, electronic hardware, and software

  • develop electromechanical computing solutions through an iterative research, design, and prototyping process

  • evaluate a system in the context of an end user application or experience

  • participate in collaborative teams by negotiating common goals and coordinating roles

  • analyze and critique projects along artistic and technical dimensions both verbally and in writing

  • reflect critically on their own learning and design process

  • articulate the story of a project and learning process through visual, written, and oral media

  • critique kinetic systems using the lenses of history and cultural context

Teaching Philosophy

This course is an introduction to the IDeATe Physical Computing Program, using technology learning as a vehicle for exploring interdisciplinary thinking. It operates under the following principles:

Immersion. Language shapes thought; thinking clearly about engineering and computing requires precise use of language. The course emphasizes correct use of technical terminology from the start, even as the meaning incrementally becomes understood.

Experiential Learning. We learn by doing. The course emphasizes immediate application of theory into practical demonstration; it is the success and especially the failure of the experiment which creates a vivid understanding of the principles.

Cooperative Learning. We teach each other. Articulating an explanation develops and tests knowledge and hones the skill of knowing the bounds of one’s own knowledge. Sometimes we will teach each other incorrectly, but careful attention to further evidence will correct this over time.

Self-motivation. Students are responsible for their own progress. Wherever possible, the driving motivation will be a self-chosen goal, divided into manageable subproblems. The desire for the goal prompts autonomous exploration. If you ever find the course dull, that is an opportunity to reflect on what you are trying to achieve and choose a new objective.

Reflection and Writing. Understanding develops through reflection, and the best discipline for reflection is writing and drawing. Mere repetition of the examples does not build skill; it is the process of reflection which integrates experience into knowledge which can be applied to novel situations.

Collaboration. The aim of IDeATe is to train each student to be excellent in one area of technology or arts and be able to collaborate within diverse cohorts of technology and arts experts. Collaborative skill requires excellence in one’s own areas of expertise, an ability to translate ideas across disciplinary bounds, and a proficiency in negotiation and compromise. Assigned groups give students practice with teamwork among unfamiliar collaborators.

Prerequisite Knowledge

The course has no formal prerequisites and is intended as a novice-level introduction to creative user experience design, mechanical design, electronic circuit construction, and embedded programming.

In practice, the pace of the course does assume some programming coursework or experience. Students without any programming experience have succeeded but should expect to spend additional time on rapid self-study of elementary Python programming.

Students using the course to fulfill the Portal requirement for an IDeATe minor should consider one of the recommended computing courses.

Course Structure

The overall structure of the semester proceeds through two main phases. First is a skill-building and theory development phase centered on focused prototyping exercises. After that the course shifts to collaborative project development with more open-ended goals.

The skill-building portion is divided into phases of increasing complexity from simple mechanisms to controlled systems. Each phase will include attention to mechanism, electronics, software, human interface, collaboration, and critique.

Weekly Calendar

The day-by-day progress is charted on the Daily Agenda Logbook pages. Following is the general plan.

Weeks

Topics, Exercises, and Project Activities

1-4

Open-loop systems: CircuitPython, SolidWorks, basic mechanical design.

5-8

Sensor-driven systems: basic electronics, sensor interfacing, interaction design.

9

Generative and autonomous systems: generative movement, feedback processes.

10-11

Project ideation, planning, and design; design review, proof-of-concept testing.

12

Prototype fabrication and testing.

13

Final prototype revision and demonstration.

14

Documentation, analysis, review, and critique.

Daily Schedule

Scheduled classes take place in Hunt A10. The day-by-day agenda is provided on the Daily Agenda Logbook pages. Most scheduled class periods begin with a group discussion activity, followed by more specialized tutorials and individual questions. On specific presentation days the group discussion occupies the entire class period.

The group discussion activities take several forms, but frequently include a brief initial presentation, breakout into smaller groups to work out a specific prompt, then a full-class review of results.

Canvas

Updated for Fall 2023.

The course Canvas site is used only for reporting grades. All assignments can be found on the Daily Agenda Logbook and Fall 2023 Calendar and submissions are either in-person or as Google docs posted via the provided forms.

Assessment and Grading

This is a hands-on course based on lab exercises and projects. There are no quizzes or exams, and nearly every assignment involves building and programming a simple physical system.

Everybody is assumed to start with an A in the course. If you do the work you will keep it, but failing to fulfill the expectations will cause you to drift downward.

Grading for this course is based on frequent low-stakes assessment. Each formal assignment is graded using a rubric which includes one or more of the following categories:

  • concept: clarity of the key idea, articulation of key principles and narrative, applicability to human or artistic needs, selection of appropriate aspects for proof-of-concept.

  • execution: translation of the concept into design, quality of the technical implementation.

  • documentation: quality of the reflection, clarity of the presentation, detail of the technical documentation.

Please note that project deadlines are strict as outlined in the Lateness Policy section. Project reports must also adhere carefully to the specified requirements to achieve full documentation scores.

The total course grades are scored on a relative scale based on weighted point totals. The approximate total weighting is 50% for the technical exercises and demos and 50% for the project.

Grades provide only a rough metric for student feedback. The more nuanced and useful feedback comes from verbal critiques, individual interviews, and written comments.

Course Policies

Pandemic and Wellness

We are entering the semester on a normal basis, but there are a number of circumstances related to the ongoing pandemic which could affect the course. Any student or instructor may need to enter isolation, capacity limits could be cut on short notice, or facilities could become partially or fully inaccessible.

No one should physically come to class if they are feeling unwell for any reason, whether Covid-19 or something else. Part of the responsibility of each student is respecting the welfare of others.

Please contact your instructor to arrange remote participation (if feasible) and renegotiate due dates and expectations. Generous allowances will be made.

If needed, some or all of the class may switch to Zoom for meetings. The Zoom meeting and password can be found on the Zoom meeting page (login required).

Attendance Policy

Coming to class on time is mandatory. Attendance is recorded for each class and three unexcused absences will cost you 10% of your final grade, with an additional 10% for each successive missed class. If you must be absent, you must request approval in advance. Late requests will be considered on a case by case basis. Unexcused absences during review days will also reduce your individual project grade. We understand that your other courses have big deadlines, but the designated class hours are the most effective time for discussion and communication.

Lateness Policy

All assignments must be submitted by the required deadline, unless prior authorization is obtained from an instructor and documented in email. Verbal authorization is not sufficient: any verbal discussion of late submission must be documented with an emailed request and reply.

Assignments bounced for revision at the discretion of the instructor must be returned within 24 hours if not otherwise specified. This rule is meant to allow a grace period for reports which overlook a required element; please do not assume that incomplete work can be resubmitted.

However, please remember that something is always better than nothing. If the deadline is imminent, please submit whatever text, images, and drawings you can rather than do nothing. Always ask for an extension rather than silently fail to deliver.

Electronic Devices

The use of devices for non-class activities is strictly prohibited during class time. This especially applies to phones and social media: leave it at home or leave it your pocket.

The instructor reserves the right to confiscate devices without notice. If a persistent problem develops, phones will be banned completely from class.

Class participation is essential for learning and collaboration. An individual engaging with outside distractions has an effect larger than their own attention: it distracts others and diffuses the group focus.

If you feel bored and in need of distraction, then I challenge you to spend that energy instead formulating a question about the material at hand.

Materials and Equipment

IDeATe endeavors to make all needed resources available to students without additional course fees. This class provides a small course kit of materials but also makes available the extensive resources of the Physical Computing Lab. Students are also permitted to provide, scavenge, or purchase additional materials for projects. If you find yourself unable to complete the work using the resources at hand, please consult your instructor.

However, there are additional tools and materials which will be suggested to assist your learning and ease your work. Please treat these as recommendations rather than requirements.

Computing Needs

Each student is expected to provide computing resources for individual work. If this requirement constitutes an individual hardship, please contact the instructor. A limited number of laptops are available for borrowing from IDeATe.

The default requirement is a personal computer with a USB port available for programming CircuitPython microcontrollers, on which you have the ability to install new software. The full specification of software needs can be found in Course Software Overview.

Windows users will be able to install SolidWorks. macOS or Linux users will either need to use SolidWorks on the remote engineering cluster, a virtual machine running Windows, or borrow an IDeATe Windows laptop.

Physical Computing Lab

The designated classroom for the course is the IDeATe Physical Computing Lab in Hunt A10. Students will have access to the lab any time outside of scheduled class times via the ID card reader at the door. Please be courteous and refrain from entering during other classes.

Part of taking this course is joining the IDeATe interdisciplinary community. Students with lab access are expected to be a good community member and take responsibility for sharing resources wisely.

All lab users are expected to abide by the Physical Computing Lab Policies. The lab inventory of components and materials is available online at Physical Computing Lab Inventory.

The lab usage schedule is online at IDeATe PhysComp Lab Calendar. Other resources may be reserved using the IDeATe Reservations Calendar.

IDeATe Facilities

Updated for Fall 2023.

The course makes use of the IDeATe fabrication facilities and labs in the lower level of Hunt Library, subject to availability and the current IDeATe policies.

  1. IDeATe laser cutters will be available for trained students. Please see the IDeATe Laser Cutter Policies page for current details on qualification. Qualified students will gain long-term access.

  2. IDeATe Lending will be operating normally and material purchases will be available. Please see the IDeATe Lending (Hunt A29) page for current details.

  3. The Mosaic 3D printing system will be operating via an online queue for course-related projects. Resin 3D printing will be available on request.

  4. Currently, the normal library study spaces are operating on a reservation-only system.

The IDeATe facilities are shared student resources and spaces. As such, all members of the IDeATe community are expected to be respectful of the equipment, the spaces, and fellow students and their projects. Always clean up after completing your work, put things back in their correct place, and leave the lab in better condition than you found it.

Individual Support

Accommodations for Students with Disabilities

If you have a disability and have an accommodations letter from the Disability Resources office, I encourage you to discuss your accommodations and needs with me as early in the semester as possible. I will work with you to ensure that accommodations are provided as appropriate. If you suspect that you may have a disability and would benefit from accommodations but are not yet registered with the Office of Disability Resources, I encourage you to contact them at access@andrew.cmu.edu.

Respect for Diversity

It is my intent that students from all diverse backgrounds and perspectives be well served by this course, and that the diversity that students bring to this class be viewed as a resource, strength and benefit. It is my intent to present materials and activities that are respectful of diversity: gender, sexuality, disability, age, socioeconomic status, ethnicity, race, and culture. Your suggestions are encouraged and appreciated. Please let me know ways you see to improve equitable treatment of yourself or other students in the course so we can address these questions with clarity.

Student Health and Well-being

Please take care of yourself. Do your best to maintain a healthy lifestyle this semester by eating well, exercising, avoiding drugs and alcohol, getting enough sleep and taking some time to relax. This will help you achieve your goals and cope with stress.

If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support. Counseling and Psychological Services (CaPS) is here to help: call 412-268-2922 and visit https://www.cmu.edu/counseling. Consider reaching out to a friend, faculty or family member you trust for help getting connected to the support that can help.

If you are having difficulty with your coursework, please be aware of the many resources available via the Student Academic Success Center, including coaching, tutoring, communication support, language and cross-cultural support, and supplemental instruction.

Last updated 2023-08-19.