Week 10: Final Project Ideas and Planning

In Class / Homework

Finalize your project idea for your final project and do a blog post on it. Include:

  • A description of what you plan on doing for your final project. If you are doing a continuation on your midterm then please describe how you will improve it.
  • Sketches and diagrams for how you imagine it will be designed, built and how the user will interact with it.
  • Determine what electrical components you need to build it as well as the materials you will need to build your enclosure and interface.
  • A project plan and schedule for when you will be hitting major milestones, i.e. ordering components and materials, get the circuit and code working, build a prototype enclosure and interface, user-test interface and get feedback, improve on feedback and build final project for presentation.

Week 7: Serial Communication, Processing and p5.js

Up to this point we have been using sensor inputs to control other physical components, but today we will look at how we can use the data from physical sensors to effect screen-based graphics. To do this we will be using serial communication to send data from a sensor, through the Arduino and into another programming framework like Processing or p5js. We will also look at how to control physical components like LED’s, motors and speakers using a digital interface like a website.

Serial Control Application Download
Serial Port Library for p5js

Lecture Video

Labs

  • Serial write with just Arduino. Git ➔
  • Using Processing and serial read/write with Arduino. Git ➔
  • Serial communication via a website using p5js and web sockets. Git ➔

Lecture and Lab Slides

In Class Assignment/Homework

Play around with serial communication with Arduino and Processing/p5js. Continue to work on your midterm project idea.

Helpful Links

Week 6: Enclosures

This week we will be covering how to design and build enclosures and interfaces for your electric circuits. Considering these circuits will be handled by many types of people you need to make them durable enough and protected so they don’t break when someone interacts with it.

You also need to consider how the user will interact with it. Do they just need to approach it? Do they need to touch it? Do they need to pick it up? Do they need to shake it? Will there need to be instructions or labelling? These are just some questions you need to ask yourself when designing and building an enclosure and interface.

We will look at a number of different methods, techniques and materials you can use to house your circuits. Although there are an infinite number of ways to build an enclosure you need to keep in mind that they need to be: 1) Easy to open for repairs. 2) Easy to modify/fix. 3) Easy to make multiples. 4) As cheap as possible.

Lecture Video

Lecture Slides

In Class Assignment/Homework

Start sketching out ideas for an enclosure and interface for your midterm project. Consider the materials you will be using to house your circuitry and how you will put it together.

Helpful Links

Week 5: Digital and Analog Review

This week will be a review of the last two weeks covering digital and analog input and output using the Arduino.

Labs

  • Digital In and Digital Out (Toggle Switch and LED) Git ➔
  • Analog In and Analog Out (Potentiometer and LED) Git ➔
  • Servo motors
  • DC Motor and H-Bridge Git ➔
  • Octocoupler and Digital Switch Git ➔
  • Controlling AC Power with Relays
  • Connecting components using wire wrapping, screw terminals and soldering techniques.

Lecture and Lab Slides

Lecture Video

In Class Assignment/Homework

Start brain storming and sketching ideas for your midterm project. Think about what sensors and components you want to use as well as how you want people to interact with it. Check out the past student projects for inspiration.

Week 4: Analog Input and Output

Today will be a continuation on last class with a deeper dive into analog input and output from the Arduino. We will be talking about how the Arduino generates a “fake” analog output using pulse width modulation (PMW) which is represented by the “~” symbol. We will also be using an oscilloscope to visualize how a PMW actually works.

Labs

  • Use a potentiometer variable resistor (knob) to send analog values to the Arduino to in turn change the brightness of an LED. Git ➔
  • Use another variable resistor (light sensor, pressure sensor, stretch sensor, etc.) as an alternative to the potentiometer. Git ➔
  • Fun with DC motors. Git ➔
  • Generating sound with speakers. Git ➔
  • Heart rate sensors and the serial plotter. Git ➔
  • Fun with servo motors. Git ➔
  • Using I2C communication for more complex sensors like accelerometers, gyroscopes, temperature/humidity sensors, etc.

Lecture and Lab Slides

Lecture Video

In Class Assignment/Homework

Review the labs that were covered in class this week, and come up with a simple yet creative application using digital or analog input and output. Post your experiments to your blog. Include videos and images.

Week 3: Arduino, Hello World

In this class we will go over what a microcontroller is and specifically look at how to use the Arduino microcontroller. We will wire up an Arduino to a breadboarded circuit and learn how to write code for the Arduino to control the circuit. We will also be looking at some of these electrical components in more detail and learn how to read a components data sheet to better understand the voltage and current that it can handle.

Getting Started with Arduino Web Editor
Arduino Web Editor Environment
Arduino Web Editor FAQ

Labs

Lecture and Lab Slides

Lecture Video

In Class Assignment/Homework

Review the labs that were covered in class this week, and come up with a simple yet creative application using digital input and output. Post your experiments to your blog. Include videos and images.

Week 2: Introduction to Electronics

This class will focus entirely on understanding the basics of electricity, electrical circuits, electrical components and the tools used to work with them. We will learn about voltage, resistance and current and how to calculate each value using OHM’s law. Then we will be doing two labs together to learn how to use a digital multimeter to read these values and how to build circuits using a breadboard.

Labs

  1. Using a digital multimeter to read voltage, resistance and current in a circuit as well as test for continuity (connection) in a circuit.
  2. Using a breadboard to build quick prototypes of electrical circuits.

Lecture and Lab Slides

Simple Circuit Example

Lecture Video

In Class Assignment

Review what we covered in class and come up with and build a simple yet creative concept that uses a switch and an LED. Again a switch is something that allows you to open and close an electrical circuit, you can use anything that is conductive this can be silverware, wires, aluminum foil, pencil graphite, etc. Write a blog post about this project.

Student Switch Examples
Salad Bowl Switch
Chopstick Switch
Door/Door Frame Switch

Homework

  1. Finish the in class assignment and post a video and description to your blog.
  2. Read Tom Igoe’s, Physical Computing’s Greatest Hits (and misses), link is on our website.
  3. Look around at all the sensors you interact with this week. In a blog post compile a list of as many as you encounter, pick one and write a paragraph on how you interact with it and how it effects your daily life.

Helpful Links

Week 1: What is Physical Computing

In this class we will be going over what you can expect through out this semester, what tools you will need and types of projects you will be working on. I will be doing an overview of what Physical Computing actually is and showing some example projects to help you better understand what we will be doing in this class.

Lecture Slides

In Class Assignment

  1. Sign up for Slack and have Professor Woo add you to the QC Design group and private class channel.
  2. Setup your blog (use either Medium, WordPress or Tumblr) and add the link to the Slack channel. Check out Danne’s ITP Blog, Lisa Maldonado, Andy Poon and Anne Peng’s blogs for good examples on how to document your assignments for this class.

Homework

  1. Choose a fantasy device that does not exist yet and design a prototype out of paper, cardboard and anything else you can find.
  2. Post pictures, videos and descriptions of your fantasy device you created in class to your blog.
  3. Other suggested tools and materials to purchase for this class. If you go to the QC Makerspace you will have access to all of this for free:
    Digital Multimeter, (~$10)
    22 Gauge Solid Wire, (~$15)
    Wire Cutters, (~$10)
    Wire Strippers, (~$7)
    Tool Box (~$10)
    Soldering Iron (~$35)
  4. Find a physical computing project online that you find interesting and post it to your blog with a description as to why you like it and what makes it successful. Many can be found on the Arduino blog (blog.arduino.cc).