33
Arduino Developing some interactive interfaces fast & cheap dinsdag 11 september 12

Arduino talk by Toon Nelissen

Embed Size (px)

DESCRIPTION

Talk from Toon Nelissen at TIII one-day conference. Visit www.appsaloon.be and www.arduino-jam.org to learn more about Toon.

Citation preview

Page 1: Arduino talk by Toon Nelissen

Arduino Developing some interactive interfaces fast & cheap

dinsdag 11 september 12

Page 2: Arduino talk by Toon Nelissen

Toon Nelissen

co-owner of AppSaloon a Web-site/app development company

Maker

5 years of experience with the Arduino platform

Founder of the Arduino-jam

dinsdag 11 september 12

Page 3: Arduino talk by Toon Nelissen

Arduino projects

some small projects

Bicycle POV wheel display

Flashing psychedelic goggles

Electrofried a shocking game

Capacitance touch sensor, a button without a knob

helped friend and people online to improve there code

dinsdag 11 september 12

Page 4: Arduino talk by Toon Nelissen

Arduino projects

CM interactive stress game

wire loop game on time

if you touch the wire you get a time penalty

dinsdag 11 september 12

Page 5: Arduino talk by Toon Nelissen

Arduino projects

Domotica controller with online interface

dinsdag 11 september 12

Page 6: Arduino talk by Toon Nelissen

Arduino Jam

20 Arduino enthusiasts

one big brainstorm starting from 2 themes

forming +/- 8 teams

developing

documenting

this all within 48 hours

dinsdag 11 september 12

Page 7: Arduino talk by Toon Nelissen

Do you want to know the magic of Arduino?

dinsdag 11 september 12

Page 8: Arduino talk by Toon Nelissen

Arduino the basics

USB

14 I/O pins (20 on leonardo)

6 Analog input pins (12 on leonardo)

6 PWM out (7 on leonardo )

32 KB Flash memory 4 KB used by bootloader

dinsdag 11 september 12

Page 9: Arduino talk by Toon Nelissen

Why the Arduino?Based on existing languages: Wiring, processing (C-syntax)

Bootloader easy to compile and upload a sketch

Easy to use software

Good documentation

Big Community

Open Source = improved through community

Cheap

dinsdag 11 september 12

Page 10: Arduino talk by Toon Nelissen

Its easy to use!

5V

Accepts 7 to 12V of input

Overcurrent protection

Lots of shields

Lots of libraries

Wifi shield Motor shield

dinsdag 11 september 12

Page 11: Arduino talk by Toon Nelissen

How to start?

Download Arduino IDE

Plug your Arduino in

Select your Arduino Board

Open a sketch

Hit run

dinsdag 11 september 12

Page 12: Arduino talk by Toon Nelissen

It‘s really that easy!

dinsdag 11 september 12

Page 13: Arduino talk by Toon Nelissen

What has a blinking light to do withInteractive interfaces ?

dinsdag 11 september 12

Page 14: Arduino talk by Toon Nelissen

Arduino as a bridge

Reads out sensors

Collecting data

Communicate with devices

PCMacLinux

Sensors

Data

Internet

dinsdag 11 september 12

Page 15: Arduino talk by Toon Nelissen

Arduino as stand-alone

Sensors

Data

Internet

Reads out sensors

Collecting data

Communicate with devices

Process data

Led

Lcd

character display

Internet

...

Motor

Servo

dinsdag 11 september 12

Page 16: Arduino talk by Toon Nelissen

Lets get our hands dirty!

dinsdag 11 september 12

Page 17: Arduino talk by Toon Nelissen

Arduino Sketch

global variable declaration

void setup()

void loop()

dinsdag 11 september 12

Page 18: Arduino talk by Toon Nelissen

Digital In and Output (I/O)

pinMode(#, OUTPUT);pinMode(#, INPUT);

digitalWrite(#, HIGH);Set a pin state: HIGH or LOW

digitalRead(#);Read out a pin state: HIGH or LOW

dinsdag 11 september 12

Page 19: Arduino talk by Toon Nelissen

Analog to digital

0 to 5V = resolution of 0 to 1023

analogRead(A#);

dinsdag 11 september 12

Page 20: Arduino talk by Toon Nelissen

AnalogOut ?Lets use PWM

PWM or Pulse Width Modulation

analogWrite(#,value);Value: 0(0%) to 255 (100%)

Use :

dimming leds,

generate audio waves,

controlling servo and speed of motors

dinsdag 11 september 12

Page 21: Arduino talk by Toon Nelissen

Communication

Serial connection

to computer, 7 segment displays

SPI

ethernet shield, SD-card

I2C

sensors, eeprom, slave arduino

dinsdag 11 september 12

Page 22: Arduino talk by Toon Nelissen

Arduino Interupt magic

Do something when you where doing something else, controlled by a input

Hardware interrupts on pin 2 & 3

dinsdag 11 september 12

Page 23: Arduino talk by Toon Nelissen

Arduino the Limitations

Program size is limited to 28KB

Limited amount of pins

16 MHz clockspeed

dinsdag 11 september 12

Page 24: Arduino talk by Toon Nelissen

User cases

dinsdag 11 september 12

Page 25: Arduino talk by Toon Nelissen

CM stressgame

60 leds

3 IO inputs

1 analog potentiometer

Sound out

dinsdag 11 september 12

Page 26: Arduino talk by Toon Nelissen

Solutions

60 leds in a matrix with shift registers

2 interrupts to detect touch

1 analog read of potentiometer ( linear )

second arduino for sound

dinsdag 11 september 12

Page 27: Arduino talk by Toon Nelissen

Electrofried shocking game

2 buttons

10.000 volt shock

dinsdag 11 september 12

Page 28: Arduino talk by Toon Nelissen

OfficeDuino

ethernet connection

Power control

3 PWM signals

2 on/off states

Current sensor

temperature sensor

dinsdag 11 september 12

Page 29: Arduino talk by Toon Nelissen

Arduino Jam: Nipkow disc

dinsdag 11 september 12

Page 30: Arduino talk by Toon Nelissen

Arduino Jam: Reversed GeoCach

dinsdag 11 september 12

Page 31: Arduino talk by Toon Nelissen

So prototyping some Interactive Interfaces with Arduino?

It’s cheap

Easy to learn

Prototyping can be done very fast

And it can fly

YES

dinsdag 11 september 12

Page 32: Arduino talk by Toon Nelissen

Thanks for listening

dinsdag 11 september 12

Page 33: Arduino talk by Toon Nelissen

www.arduino-jam.org

ARDUINO JAM21 - 23 sept 2012

@ timelab Ghent

dinsdag 11 september 12