Paja

Icon

Rapid prototyping for music, art and design work

Course materials for Designing Interaction with Electronics workshop 2009 at Mlab

Date: November 9 – 13, 2009

Location: Media lab Helsinki in Helsinki, Finland

Course materials:

Monday

Introduction: 9.00-11.00 – PDF, some final demos

Group discussion 11:10 – 14:00

Assembling electronics: 14.00-15.30

  1. Basic tools: you need following equipments to run example codes.
    1. Arduino board (microcontroller)
    2. USB Type A-B
    3. Breadboard
    4. Jumper wires
    5. Multimeter
  2. Understanding schematics
    1. Flow of positive charge
    2. Most popular components
    3. Markings in resistor (Resistulator dashboard widget)
    4. Markings in capacitor
    5. Exercise: Assemble electronics
  3. Checking your circuit
    1. Measuring voltage, resistance and conductivity
  4. Exercise: Assembling touch sensor – Video

Setting up Arduino environment: 15.30 – 16.00

Select following setting when you run Arduino software first time.

Tools > Board > Arduino NG or older w/ ATmega8

Mac: Serial Port > /dev/cu.usbserial-xxxxxxxx

Win: Serial Port > COM1

Tuesday

Programming microcontroller

Basics: 09:00-10.00

  1. Exercise: Hello world – Arduino code
  2. Exercise: Introduction (Flashing LED) – Arduino code
  3. Exercise: Sending data to your PC (Serial.print, println) – Arduino code
  4. Exercise: Understanding ASCII (American Standard Code for Information Interchange) – Arduino code
  5. Exercise: Type of Numbers (Binary, Hexadecimal, Decimal, Signed Decimal) – Arduino code

Architecture: 10.00-11.00

  1. Exercise: Variables type definitions – Arduino code
  2. Exercise: Arrays/Strings – Arduino code
  3. Exercise: Operators (+, -, *, /, %) – Arduino code

Controls: 11.00-12.00

  1. Exercise: Functions – Arduino code
  2. Exercise: Looping structure (For statement) – Arduino code
  3. Exercise: Branching (If statement) – Arduino code
  4. Exercise: Branching (Switch statement) – Arduino code
  5. Exercise: Data controls (ramdom) – Arduino code

IO Commands: 13.00-16.00

  1. Digital IO (digitalWrite)
    1. Exercise: Flashing LED – Schematic, Arduino code
  2. Digital IO (digitalRead)
    1. Exercise: QT113 touch sensor – Schematic, Arduino code
  3. Digital IO (pulseIn)
    1. Exercise: Memsic 2125 Accelerometer: Measuring tilt and motion – Schematic, Arduino code
    2. Exercise: Ping))) Ultrasonic Sensor: Measuring distance – Schematic, Arduino code
  4. Analog IO (analogWrite using PWM pins)
    1. Exercise: Dimming LED – Schematic, Arduino code
  5. Analog IO (analogRead)
    1. Exercise: Photoresistor: Measuring ambient light – Schematic, Arduino code
    2. Exercise: Flexiforce Sensor Demo Kit: Measuring pressure – Schematic, Arduino code
    3. Exercise: Piezo speaker: Detecting vibrations – Schematic, Arduino code
  6. Extend capability using libraries (#include)
    1. Exercise: Servo motor –Schematic, Arduino code

Wednesday

Serial communication: 9:00-12.00

  1. RS-232
    1. Baud rate : One baud is one electronic state change (one bit) per second. (e.g. Serial.begin(9600))
    2. Parity : odd, even, or none (e.g. none parity)
    3. Data bits : 5, 6, 7, or 8bits (e.g. 8bits)
    4. Stop bits : 1, 1.5, or 2 (often says true = 1 stop bits)

Communicating to PC 10:00 – 12:00

Messenger library provides a simple protocol to send and receive values to PC using Serial communication.

Mac: Copy Messenger folder (messenger > Arduiono folder) to following location

Arduino.app > (Show package contents) > Contents > Resources > Java > hardware > libraries. After restarting Arduino.app

Import the library in your code by selecting Sketch > Import Library… > Messenger.

  1. Processing
    1. Demo: Schematic, Processing code, Arduino code
  2. Pure Data
    1. Demo: Schematic, Puredata patch, Arduino code
  3. Flash
    1. Demo: Schematic , Serial server in Processing (written by Tom Igoe), Arduino code, Flash file
  4. S60 Python using Arduino BT
    1. http://www.arduino.cc/playground/Code/SymbianS60Python
    2. Demo: http://mlab.taik.fi/paja/?p=819

Group work : 13:00 – 16:00

Thursday

Group work: 9:00-16.00

Friday

Presentation: 13.00-15.00

Facebook Twitter Email

Category: Course materials

Tagged:

Comments are closed.

Social links powered by Ecreative Internet Marketing