Introductory Arduino Materials from Portland State University
Portland State University has some very impressive labs including a zero G chamber with elevator brakes. These kind people were willing to share some of their enthusiasm and hard work in the form of a slew of materials by Gerald Recktenwald in a whole bunch of different formats. Perfect for sharing with the community.
Arduino Programming, Getting Started....
- The first three files are about the Arduino IDE and the "blink" sketch.
- The next four files are about variables, loops and a case study about reading a photo-resistor.
- The next three files are more about analog input, using functions, and a case study of controlling the speed of DC motor.
- The next three files are about controlling Servo motors using the Servo library.
Thinking More Deeply About Arduino Programming....
- Notes on an ambient light indicator describe how different if ... else structures can be used with a photoresistor and two LEDs as indicators of ambient light levels. These notes use a series of exercises that begin with a review of voltage dividers, and end with an examination of different coding strategies. For a discussion of how for and while loops relate to the loop function required by all Arduino codes, read What's this "void loop" thing?
- These two files are a breadboard primer and some notes about voltage dividers and potentiometers.
- Two more files about analog input. One about potentiometers and one about analog input scaling.
Breathing LED Project....
- The goal of the breathing LED project is to develop the students skills with algorithmic thinking. We begin with a problem specification, "Make an LED circuit and Arduino program that causes the LED to pulse with the rhythm of a human breathing". To achieve that goal, we first have to come up with a mathematical model of how the brightness of the LED will vary with time. Once we have the model, we then need to implement it in an Arduino program. There are four files that correspond to this unit. Equations for the breathing LED model, an explanation of the code, notes about PWM output from Arduino and a zip file containing the sketches for students.
Desktop Fan Project....
- The goal of the desktop fan project is to design, fabricate, assemble and demonstrate a small oscillating fan using the parts from the Sparkfun Inventors Kit. Students also need to design the structural support for a small servo motor that causes the fan to oscillate, and the DC motor that turns a small propellor. The structure is made from acrylic that is cut with a laser cutter and bent with an acrylic bender. Students are free to develop their own design for the structure. The two-dimensional outlines of the acrylic parts are specified with Solidworks drawings. There are a total of three different files that go with this project, each in three different formats. There is an introduction, as well as materials about DC motor circuits and buttons.
The pump project is the culminating exercise for Portland State University's EAS 199A. Students use milling machines to fabricate the pump body from pieces of ABS plastic supplied by the instructor. The pump impellers are created from ABS with a 3D printer from 3D solid models created by the students. The pump is assembled and tested, so that students obtain the pump curves for the pumps they have created. The files for the pump project are divided into three different categories: Fabrication, performance model and pump testing.
Fabrication- Four files (three out of four have two different formats listed) detailing fabrication steps, specifics about the o-ring as well as assembly and testing tips.
Performance model- Three files about data collection and calculation.
Pump testing- A file in three different formats about testing the pump.
These materials are used in an introductory university class.
Files ending in _2up indicates the files are intended to be used as handouts.
Materials by Gerald Recktenwald, based on work by David Hall
- Date Posted: February 6, 2014
- Last Updated: March 28, 2014
- CC BY-SA 3.0 resources are open sourced under