introdução ao arduino palestra

36
Vitor Fernandes Vitor Fernandes Baseado na apresentação de Baseado na apresentação de Leandro M. Lima 22 abril de 2013 Introdução ao Arduino Introdução ao Arduino

Upload: vitor-ferreira

Post on 18-Jun-2015

1.282 views

Category:

Documents


1 download

DESCRIPTION

Apresentando Arduino.

TRANSCRIPT

Page 1: Introdução ao arduino palestra

Vitor FernandesVitor FernandesBaseado na apresentação de Baseado na apresentação de

Leandro M. Lima 22 abril de 2013

Introdução ao ArduinoIntrodução ao Arduino

Page 2: Introdução ao arduino palestra

O que veremos nessa apresentação:

O que é o Arduino.

Uso e interações.

Como programá-lo.

Hackerspaces.

Introdução ao ArduinoIntrodução ao Arduino

Page 3: Introdução ao arduino palestra

O que é o Arduino?

O Arduino é uma plataforma deprototipagem eletrônica open-sourceque se baseia em hardware esoftware flexível e fácil de usar.

Seu hardware é baseado em um microcontrolador Atmel AVR de 8-bit a maioria dos modelos usam um ATmega328 rodando a 16Mhz.

Introdução ao ArduinoIntrodução ao Arduino

Page 4: Introdução ao arduino palestra

Especificaçoes tecnicas:

Introdução ao ArduinoIntrodução ao Arduino

Tamanho:5,3cm x 6,8cm x 1,0cm

Microcontrolador: ATmega328

Tensão de operação: 5V

Memória Flash: 32KB (0,5KB são usados pelo bootloader)

SRAM: 2KB

EEPROM: 1KB

Velocidade de Clock: 16MHz

Temperatura de operação: de 10º a 60º Por encrivel que pareça o ATMega328

tem quase o mesmo clock(16Mhz),desse

i386 da intel(20Mhz) muito usado nos

computadores pessoais da decada de 80,

inclusive esse é o processador principal

do Telescópio Espacial Hubble.

Page 5: Introdução ao arduino palestra

Como ele se comunica?

Ele possui uma interface USB-Serial

embutida controlada pelo chip FTDI

Led Serial: 0 (RX) e 1 (TX). Usado para

indicar recebimento (RX) e transmissão

(TX) dados seriais via TTL.

Possui 14 pinos de I/O digitais, 4

entradas analogicas e 5 saidas

analogicas

Introdução ao ArduinoIntrodução ao Arduino

Page 6: Introdução ao arduino palestra

O que ele faz?

Recebe, Gera e Interpreta Dados.

O que eu posso fazer?

Controle/automação residencial

Robótica

Gadgets

Quase tudo que sonhar esta ferramenta pode tornar realidade.

Introdução ao ArduinoIntrodução ao Arduino

Page 7: Introdução ao arduino palestra

Tipos de placas

Introdução ao ArduinoIntrodução ao Arduino

Page 8: Introdução ao arduino palestra

Arduino Mega- 126k (Flash Memory)54 Pinos de I/O

LilyPad Arduino

Introdução ao ArduinoIntrodução ao Arduino

Page 9: Introdução ao arduino palestra

Arduino BT (Bluetooth)Arduino Mini

Arduino Pro

Introdução ao ArduinoIntrodução ao Arduino

Page 10: Introdução ao arduino palestra

Arduino Nano V3

Arduino Leonardo

Arduino Yun

Introdução ao ArduinoIntrodução ao Arduino

Page 11: Introdução ao arduino palestra

O que são os Shields?

“Escudos”,são placas modulares, extenções do arduino que permitem interagir com tecnologias diversas com facilidade.

Ethernet shield

Xbee shield

Introdução ao ArduinoIntrodução ao Arduino

Page 12: Introdução ao arduino palestra

Motor shield

SD card shield

LCD shield

O que são os Shields?

“Escudos”,são placas modulares, extenções do arduino que permitem interagir com tecnologias diversas com facilidade.

Introdução ao ArduinoIntrodução ao Arduino

Page 13: Introdução ao arduino palestra

Como usar as Shields?

• Basta conecta-los sobre o Arduino quantos quiser*.

Introdução ao ArduinoIntrodução ao Arduino

Page 14: Introdução ao arduino palestra

Coisas importantes no Arduino:

Saida com PWM(Pulse Width

Modulation):

Usa-se pinos: 3, 5, 6, 9, 10, e 11.

Função analogWrite()

Introdução ao ArduinoIntrodução ao Arduino

Page 15: Introdução ao arduino palestra

Como usar? •Esta é a IDE .•E os botões para comando.

Verify: Para Verificar se o programa está sem erros.

Upload: Carrega o programa no Microcontrolador.

Serial Monitor: Ativa a leitura da porta serial. Mostra valores.

Introdução ao ArduinoIntrodução ao Arduino

Page 16: Introdução ao arduino palestra

Introdução ao ArduinoIntrodução ao Arduino

Page 17: Introdução ao arduino palestra

Introdução ao ArduinoIntrodução ao Arduino

Page 18: Introdução ao arduino palestra

O Programa.

Escrito em C/C++ .Funções especificas pré-

programadas em bibliotecas modulares.

Após compilar temos os dados na tela preta abaixo:

Introdução ao ArduinoIntrodução ao Arduino

Page 19: Introdução ao arduino palestra

Estrutura básica de um firmware do Arduino

int main() { init(); setup();

While(1) { loop(); } return 0; }

Os métodos main e init ficam ocultos no propio bootloader, então nós só devemos nos preocupar como programaremos os métodos setup e loop.

Introdução ao ArduinoIntrodução ao Arduino

Page 20: Introdução ao arduino palestra

Entendendo o Programa.

void loop() // Função onde tudo acontece. Chama-se Loop //porque está executando repetidas vezes.

{ digitalWrite(ledPin, HIGH); // Temos HIGH= LIGADO e LOW=DESLIGADO // E o nome do pino é LedPIN, que é o mesmo Pino 13 delay(1000); // Atraso de 1 segundo digitalWrite(ledPin, LOW); // Temos LOW=DESLIGADO delay(1000); // Atraso de 1 segundo}

Introdução ao ArduinoIntrodução ao Arduino

Page 21: Introdução ao arduino palestra

Entendendo o Programa.

O programa que vocês acabaram de ver é o equivalente da eletrônica ao nosso famoso “Hello World!”

Porem um pouco mais caro, ele faz que o LED conectado no pino 13 pisque a cada 1 segundo, alternando um segundo acesso e um segundo apagado.

Introdução ao ArduinoIntrodução ao Arduino

Page 22: Introdução ao arduino palestra

Entendendo o Programa.

Funções digitais

Gera e recebe valores LIGADO(HIGH) e DESLIGADO(LOW), alem do comportamento do pino como ENTRADA(INPUT) ou SAIDA(OUTPUT).

pinMode() Diz se o comportamento será INPUT

ou OUTPUT

digitalWrite() Gera HIGH ou LOW no pino

digitalRead() Recebe HIGH ou LOW do pino

Introdução ao ArduinoIntrodução ao Arduino

Page 23: Introdução ao arduino palestra

Entendendo o Programa.

Funções analógicas.

Gera e recebe valores de 0 a 1023.Permitindo medir além do LIGADO e DESLIGADO. AnalogRead()

Faz leitura do pino analógico. Valor entre 0 a 1023

AnalogWrite() Gera valor analógico entre 0 e 1023.

Onda PWM.

Introdução ao ArduinoIntrodução ao Arduino

Page 24: Introdução ao arduino palestra

Comunicação serial.

É a forma de se comunicar o computador com Arduino em tempo real.

Serial.begin(9600); Inicia a comunicção e ajusta velocidade em 9600 bits/s

Serial.println("TEXTO"); Envia para a porta serial uma string.

Introdução ao ArduinoIntrodução ao Arduino

Page 25: Introdução ao arduino palestra

Serial Monitor

void setup() { Serial.begin(9600); Serial.println("Olá! Sou um Arduino!"); }

void loop() { }

Introdução ao ArduinoIntrodução ao Arduino

Page 26: Introdução ao arduino palestra

Serial Monitor

void setup() // função de inicialização{ Serial.begin(9600); // inicia a serial port a 9600 bps Serial.println("Olá! Sou um Arduino!"); //envia a string }

void loop() // loop main{ // faz nada!}

Introdução ao ArduinoIntrodução ao Arduino

Page 27: Introdução ao arduino palestra

Serial Monitor

void setup() { Serial.begin(9600); }

void loop() { Serial.println("Olá! Sou um Arduino!"); delay(1000); }

Introdução ao ArduinoIntrodução ao Arduino

Page 28: Introdução ao arduino palestra

Como eu compilo isso?

Conecte o USB ao PC e ao Arduino

É preciso indicar o modelo de arduino e a porta USB que ele está conectado.

Vá em TOOLs > Board> “Modelo”

TOOLs > Serial PORT> “porta usada”

Introdução ao ArduinoIntrodução ao Arduino

Page 29: Introdução ao arduino palestra

Introdução a HackerspacesIntrodução a Hackerspaces

Page 30: Introdução ao arduino palestra

Um hackerspace é um laboratório comunitário, aberto e colaborativo que propicia a troca de conhecimento através de uma infraestrutura para que entusiastas de tecnologia realizem projetos em diversas áreas, como eletrônica, software, robótica, segurança, espaçomodelismo, biologia, culinária, audiovisual e artes - ou o que mais a criatividade permitir.

Qualquer pessoa pode frequentar o Garoa gratuitamente, sendo associado ou não.

HackerspacesHackerspaces

Page 31: Introdução ao arduino palestra

HackerspacesHackerspaces

http://www.google.com/imgres?client=firefox-a&rls=org.mozilla:pt-BR:official&channel=fflb&biw=1920&bih=960&tbm=isch&tbnid=a7LKhpY3Hecr5M:&imgrefurl=http://onibushacker.org/2011/12/02/primeira-viagem/&docid=e8iZnCBBtVV2QM&imgurl=http://onibushacker.org/wp-content/uploads/2011/12/MG_69221.jpg&w=1200&h=800&ei=r-90UqflH5bLsATD6oDIAw&zoom=1&ved=1t:3588,r:8,s:0,i:101&iact=rc&page=1&tbnh=179&tbnw=269&start=0&ndsp=41&tx=189&ty=77

Page 32: Introdução ao arduino palestra

HackerspacesHackerspaces

Page 33: Introdução ao arduino palestra

HackerspacesHackerspaces

Page 34: Introdução ao arduino palestra

HackerspacesHackerspaces

Page 35: Introdução ao arduino palestra

HackerspacesHackerspaces

Page 36: Introdução ao arduino palestra

Referências:

Garoa Hacker Clube.

Adafruit. Disponível em <http://www.adafruit.com/>

Arduino.cc. Disponível em <www.arduino.cc/>

Banco de imagens google. Disponível em <www.google.com.br/imghp?hl=pt-BR&tab=wi/>

McRoberts, Michael. Beginning Arduino. Apress,EUA.

Oxer,Jonathan e Blemings, Hugh. Practical Arduino. Apress,EUA.

Arduino & hackerspaceArduino & hackerspace