Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Arduino - a brief introduction

Arduino - a brief introduction

A talk at TCS ( http://torinocodingsociety.it/ ) about Arduino, with a introduction to the platform.

Edoardo Tenani

October 20, 2014
Tweet

More Decks by Edoardo Tenani

Other Decks in Technology

Transcript

  1. Context first! :P Edoardo Tenani Front End developer @ TODO

    - angularjs, grunt, laravel, arduino, ... Co-founder of Techlab - pinze, trapano, lasercut, arduino, ... @todotoit @edoardotenani @techlabtl
  2. Context first! :P Paolo Cavagnolo Interaction designer - attuatori, sensori,

    arduino, cavetti colorati, ... Co-founder of Techlab - pinze, trapano, lasercut, arduino, ... @techlabtl @PCavagnolo
  3. 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.
  4. What is Arduino? A hardware to connect sensors ( inputs

    ) and actuators ( outputs ), an IDE to easily upload your code to the board.
  5. 2001: Processing @ MIT Media Lab 2003: Wiring @ Interaction

    Design Institute Ivrea 2005: Arduino @ Interaction Design Institute Ivrea When?
  6. 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
  7. Why? Everything you do with an Arduino can be done

    without. But… Which one of you is an electrical engineer/hobbyst/expert?
  8. 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
  9. 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
  10. 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.
  11. Actuators Led segment Servo motor Colored/RGB Led DC Motor Some

    kind of common actuators used with Arduino:
  12. 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.
  13. 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
  14. 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!
  15. 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
  16. 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
  17. 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.