introdução à plataforma arduino
DESCRIPTION
Slides da palestra de Hugo Reinaldo sobre a plataforma Arduino, no IV ECD realizado no IFPB.TRANSCRIPT
![Page 1: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/1.jpg)
![Page 2: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/2.jpg)
OBJETIVOS
● Apresentar conceitos básicos sobre Computação Física, Sistemas Embarcados e Microcontroladores;
● Apresentar a plataforma de prototipação Arduino;
● Apresentar API básica de desenvolvimento.
![Page 3: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/3.jpg)
INTRODUÇÃO
COMPUTAÇÃO FÍSICA
![Page 4: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/4.jpg)
INTRODUÇÃO – Computação Física
● O que é Computação Física ?
● “Physical computing is about creating a conversation
between the physical world and the virtual world of the
computer.” - Igoe
● Utilização de sensores, atuadores e microcontroladores;
● Interligar o mundo físico com o mundo virtual.
![Page 5: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/5.jpg)
INTRODUÇÃO – Computação Física
● Perceber e responder a eventos no mundo
físico através de sensores;
● Comportamento implementado por software;
● Objetivo de alterar a forma de interação
entre humanos e computadores.
![Page 6: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/6.jpg)
INTRODUÇÃO – Computação Física
Como os computadores nos veem ?
![Page 7: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/7.jpg)
INTRODUÇÃO – Computação Física
Saída: interação com teclado e mouse;
Entrada: interação com o monitor;
Entrada: interação com caixas de som.
“To change how the computer reacts to us, we have to change how it sees us.” - Igoe
![Page 8: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/8.jpg)
INTRODUÇÃO
SISTEMAS EMBARCADOS
![Page 9: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/9.jpg)
INTRODUÇÃO – SISTEMAS EMBARCADOS
● Definição do termo Sistemas Embarcados não é universal;
● “Hardware programável, com poder de processamento, para realizar uma tarefa específica.” - Vahid;
● Executam repetidamente apenas um programa.
![Page 10: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/10.jpg)
INTRODUÇÃO – SISTEMAS EMBARCADOS
![Page 11: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/11.jpg)
INTRODUÇÃO – SISTEMAS EMBARCADOS
● Mais limitados em funcionalidades de hardware e/ou software do que os PCs;
● “Some devices that are called embedded systems, such as PDAs or web pads, are not really embedded systems.”- Noergaard
![Page 12: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/12.jpg)
INTRODUÇÃO – SISTEMAS EMBARCADOS
![Page 13: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/13.jpg)
INTRODUÇÃO
MICROCONTROLADORES
![Page 14: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/14.jpg)
INTRODUÇÃO - MICROCONTROLADORES
● Componentes que formam um microcomputador agrupados em um único chip de silício.
● Dos 9 bilhões de processadores fabricados em 2005, menos de 2% foram para PCs. Os outros 8,8 bilhões foram para sistemas embarcados;
● “Microcontroladores são o coração e a alma de muitos eletrodomésticos do dia a dia.” - Grade;
![Page 15: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/15.jpg)
INTRODUÇÃO - MICROCONTROLADORES
● Formam a ponte entre hardware e software;
● Dispositivos discretos que podem interagir com os diversos componentes de um circuito;
● Podem variar em 8-bit, 16-bit ou 32-bit, o que se refere ao tamanho dos registradores internos e do acumulador.
![Page 16: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/16.jpg)
INTRODUÇÃO - MICROCONTROLADORES
![Page 17: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/17.jpg)
INTRODUÇÃO - MICROCONTROLADORES
Atmega 8Atmega 328
Attiny 45 NXP LPC176x
OMAP 3530
![Page 18: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/18.jpg)
INTRODUÇÃO
PLATAFORMA ARDUINO
![Page 19: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/19.jpg)
PLATAFORMA ARDUINO - INTRODUÇÃO
● O que é o Arduino ?● “Projeto opensource que consiste em hardware e software.” - Schimidt;
● Inicialmente criado para designers e artistas como plataforma de prototipação para os cursos de design de interação;
● Atualmente utilizada como plataforma de prototipação por amadores e especialistas em todo o mundo.
![Page 20: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/20.jpg)
PLATAFORMA ARDUINO - INTRODUÇÃO
● Concebida para ser fácil de usar por iniciantes que possuem pouca experiência com software e eletrônica;
● A combinação do hardware e do software permite desenvolver projetos que podem ser utilizados para controlar o mundo físico;
● Hardware de baixo custo se comparado com outras soluções podendo ser desenvolvido, projetos de hardware também são opensource.
![Page 21: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/21.jpg)
PLATAFORMA ARDUINO - HARDWARE
ADK MEGALilyPad
Nano
Mini
SeverinoUNO
![Page 22: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/22.jpg)
PLATAFORMA ARDUINO - HARDWARE
IBM PC/XT 5160 Arduino UNO
● Clock - 16 Mhz● SRAM - 2 KB● Flash - 32 KB
● Clock - 4.7 Mhz● RAM - 128 KB● Flash - 370 KB
![Page 23: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/23.jpg)
PLATAFORMA ARDUINO – HARDWARESHIELDS
GPS Shield
USB Host
Ethernet
Motor Shield
XBee (Wireless)
Joystik Shield
![Page 24: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/24.jpg)
PLATAFORMA ARDUINO – HARDWAREPLACA ARDUINO UNO
![Page 25: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/25.jpg)
PLATAFORMA ARDUINO - HARDWARE
Arduino SHIELDS
![Page 26: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/26.jpg)
PLATAFORMA ARDUINO – SOFTWAREARDUINO IDE
![Page 27: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/27.jpg)
PLATAFORMA ARDUINO – SOFTWAREBLOCOS SKETCHES
escopo global
setup()
loop()
int LED_PIN=13;int DELAY=1000;
void setup() { // initialize the digital pin as an output. // Pin 13 has an LED connected on most Arduino boards: pinMode(LED_PIN, OUTPUT); }
void loop() { digitalWrite(LED_PIN, HIGH); // set the LED on delay(DELAY); // wait for a second digitalWrite(LED_PIN, LOW); // set the LED off delay(DELAY); // wait for a second}
![Page 28: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/28.jpg)
PLATAFORMA ARDUINO – SOFTWAREENTRADA/SAÍDA DIGITAL
pinMode( PIN, MODE );
– Configurar um pino para um modo específico.● pinMode(13, OUTPUT);
digitalRead( PIN );
– Ler o valor/estado(HIGH, LOW) de um pino.● valor = digitalRead(13);
digitalWrite( PIN, VALOR );
– Atribuir um nível de tensão a um pino (HIGH = 5v, LOW = 0v)
● digitalWrite(13, HIGH);
![Page 29: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/29.jpg)
PLATAFORMA ARDUINO – SOFTWARECOMUNICAÇÃO SERIAL - RS232
Serial.begin( BAUDRATE );
– Configurar a porta serial para uma velocidade específica.
● Serial.begin(9600);
Serial.read( );
– Ler dados da porta serial.● byte = Serial.read( );
Serial.print( STRING );
– Escrever uma string na porta serial.● Serial.print(“V ENSOL\n”);
![Page 30: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/30.jpg)
PLATAFORMA ARDUINO – SOFTWAREENTRADA/SAÍDA ANALÓGICA
analogReference( TYPE );
– Configurar a tensão de referência para entrada analógica.
● analogReference( DEFAULT );
analogRead( PIN );
– Ler o valor(0-1023 = .0049V resolução) de um pino analógico.
● valor = analogRead(3);
analogWrite( PIN, VALOR );
– Atribuir um valor(0-255) analógico(PWM) em um pino.● analogWrite(3, 10);
![Page 31: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/31.jpg)
PLATAFORMA ARDUINO – SOFTWAREINTERRUPÇÕES
interrupts( );
– Habilitar interrupções externas.● Interrupts();
attachInterrupt( ID, FUNCAO, MODO );
– Especificar uma função a ser chamada quando a interrupção externa ocorrer.
● attachInterrupt( 0, funcao, CHANGE );
detachInterrupt( ID );
– Desabilitar uma interrupção.● detachInterrupt( 0 );
![Page 32: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/32.jpg)
REFERENCIAS
Arduino; www.arduino.cc
Hackaday; www.hackaday.com
Makezine; blog.makezine.com
Physical Computing: Sensing and Controlling the Physical World with Computers. Igoe; Thomson; (2004).
Embedded System Design: A Unified Hardware/Software Approach. Vahid; (1999).
Embedded Systems Architecture: A Comprehensive Guide for Engineers and Programmers. Noergaard; (2005).
tinyAVR Microcontroller Projects for the Evil Genius. Gadre; (2011).
![Page 33: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/33.jpg)
PERGUNTAS ???
![Page 34: Introdução à plataforma Arduino](https://reader033.vdocuments.mx/reader033/viewer/2022052623/5598957a1a28abcb348b463a/html5/thumbnails/34.jpg)
OBRIGADO [email protected]