Slide 1

Slide 1 text

Arduino A brief introduction to the OOS electronic platform 20/10/2014

Slide 2

Slide 2 text

Context first! :P Edoardo Tenani Front End developer @ TODO - angularjs, grunt, laravel, arduino, ... Co-founder of Techlab - pinze, trapano, lasercut, arduino, ... @todotoit @edoardotenani @techlabtl

Slide 3

Slide 3 text

Context first! :P Paolo Cavagnolo Interaction designer - attuatori, sensori, arduino, cavetti colorati, ... Co-founder of Techlab - pinze, trapano, lasercut, arduino, ... @techlabtl @PCavagnolo

Slide 4

Slide 4 text

Massimo Banzi @ Che Tempo Che Fa Massimo Banzi @ TED Talks

Slide 5

Slide 5 text

What is Arduino? Arduino is an open-source electronics platform based on easy-to-use hardware and software. It's intended for anyone making interactive projects.

Slide 6

Slide 6 text

What is Arduino? A hardware to connect sensors ( inputs ) and actuators ( outputs ), an IDE to easily upload your code to the board.

Slide 7

Slide 7 text

2001: Processing @ MIT Media Lab 2003: Wiring @ Interaction Design Institute Ivrea 2005: Arduino @ Interaction Design Institute Ivrea When?

Slide 8

Slide 8 text

Interaction Design Institute Ivrea: Born in 2001 from Olivetti and Telecom Italia. Involved in projects like Processing, Wiring, Arduino. Dies in 2005, :'( It's successors: Domus Academy, Copenhagen Institute of Interaction Design Arduino == Ivrea

Slide 9

Slide 9 text

Why? Everything you do with an Arduino can be done without. But… Which one of you is an electrical engineer/hobbyst/expert?

Slide 10

Slide 10 text

Why?

Slide 11

Slide 11 text

The "breadboard" Horizontal linked pin row, usually used for ground Horizontal linked pin row, usually used for voltage Vertical linked pin rows, for components The breadboard can completely replace the soldering required to setup a circuit for prototyping/learning purposes

Slide 12

Slide 12 text

The Arduino Uno Digital Input/Output Pins: value 0/1 or LOW/HIGH http://arduino.cc/en/reference/board Analog Input Pins: 10-bit value 0/1023 Power Pins: 3.3V, 5V and GND Microcontroller ATmega328 Reset Button USB plug 9/12V power supply Communication feedback LED PWM ( Pulse Modulation Width ) can be used to output a voltage between 0 and 5.5V with digital pins in OUTPUT mode

Slide 13

Slide 13 text

PWM http://arduino.cc/en/Tutorial/PWM Pulse Width Modulation is a technique for getting analog results with digital means. Digital control is used to create a square wave, a signal switched between on and off. This on- off pattern can simulate voltages in between full on (5 Volts) and off (0 Volts) by changing the portion of the time the signal spends on versus the time that the signal spends off.

Slide 14

Slide 14 text

Sensors Potentiometer Button Photoresistor Infrared sensor Some kind of common sensors used with Arduino:

Slide 15

Slide 15 text

Actuators Led segment Servo motor Colored/RGB Led DC Motor Some kind of common actuators used with Arduino:

Slide 16

Slide 16 text

The Code /* Blink Turns on an LED on for one second, then off for one second, repeatedly. This example code is in the public domain. */ // Pin 13 has an LED connected on most Arduino boards. // give it a name: int led = 13; // the setup routine runs once when you press reset: void setup() { // initialize the digital pin as an output. pinMode(led, OUTPUT); } // the loop routine runs over and over again forever: void loop() { digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(led, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second } http://arduino.cc/en/Reference/HomePage Arduino is based on AVR C/C++ language. It's libraries are wrappers in C around low level hardware funcionality.

Slide 17

Slide 17 text

Practice? /* Blink Turns on an LED on for one second, then off for one second, repeatedly. This example code is in the public domain. */ // Pin 13 has an LED connected on most Arduino boards. // give it a name: int led = 13; // the setup routine runs once when you press reset: void setup() { // initialize the digital pin as an output. pinMode(led, OUTPUT); } // the loop routine runs over and over again forever: void loop() { digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(led, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second } http://arduino.cc/en/tutorial/blink

Slide 18

Slide 18 text

Practice? http://arduino.cc/en/Tutorial/HomePage

Slide 19

Slide 19 text

Arduino Shields Shields are boards that can be plugged on top of the Arduino PCB extending its capabilities. Need Ethernet, WiFi, Battery, GSM, GPS, Motor Control, MP3 playback, DMX, RFID, NCF, 3D laser scanner, display, LED matrix, …? Yes, there is shield for that. Or search the web / build your own!

Slide 20

Slide 20 text

Meaning? ⇝ Internet of Things ⇝ Maker Movement ⇝ Embedded programming

Slide 21

Slide 21 text

Follow Up ● http://blog.arduino.cc/2014/10/04/announcing-a-wearable-collaboration-with-adafruit-arduino-gemma/ ● http://www.instructables.com/id/Led-Cube-8x8x8/ ● http://www.instructables.com/id/turn-signal-biking-jacket/ ● http://www.instructables.com/id/Sigh-Collector/ ● http://www.instructables.com/id/Tweet-a-watt-How-to-make-a-twittering-power-mete/ ● http://www.instructables.com/id/How-to-Build-an-Arduino-Powered-Chess-Playing-Robo/ ● http://www.element14.com/community/groups/arduino/blog/2014/06/06/10-awesome-arduino-projects ● http://readwrite.com/2014/03/29/10-arduino-projects-microcontroller-electrical-engineering ● http://hackaday.com/?s=arduino

Slide 22

Slide 22 text

Arduino Starter Kit [eng] - €79.90 http://store.arduino.cc/product/K000007 Arduino Starter Kit [ita] - €79.90 http://store.arduino.cc/product/K010007 Follow Up

Slide 23

Slide 23 text

Follow Up http://arduino.cc/en/Trademark/CommunityLogo Arduino Community Logo is licensed under a CC BY-SA-NC 3.0 license

Slide 24

Slide 24 text

Thank you All text and image content in this documents is licensed under CC 3.0 Attribution-Share Alike ( unless otherwise specified ). "Arduino" is a registered trademark, it's logos and icons are subject to international copyright laws. The use of there therefore is subject to trademark policy. "Autodesk" and "123D" are a registered trademark, it's logos and icons are subject to international copyright laws. The use of there therefore is subject to trademark policy.

Slide 25

Slide 25 text

Wanna play?