Leandro M. Lima
22 abril de 2013
Introdução ao ArduinoIntrodução ao Arduino
O que veremos nessa apresentação:
O que é o Arduino.
Uso e interações.
Como programá-lo.
ArduinoArduino
O que é o Arduino?
O Arduino é uma plataforma de
prototipagem eletrônica open-source
que se baseia em hardware e
software 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.
ArduinoArduino
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.
ArduinoArduino
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 transmição
(TX) dados seriais via TTL.
Possui 14 pinos de I/O digitais e 6
entradas analogicas
ArduinoArduino
Tipos de placas
ArduinoArduino
Arduino Mega- 126k (Flash Memory)
54 Pinos de I/O
LilyPad Arduino
ArduinoArduino
Arduino BT (Bluetooth)
Arduino Mini
Arduino Pro
ArduinoArduino
O que são os Shields?
“Escudos”,são placas modulares,
extenções do arduino que
permitem interagir com diversas
tecnologias.
Ethernet shield
Xbee shield
ArduinoArduino
Motor shield
LCD shield
ArduinoArduino
SD card shield
Como usar as Shields?
• Basta conecta-los sobre o
Arduino quantos quiser.
ArduinoArduino
Coisas importantes no
Arduino:

Saida com PWM(Pulse Width
Modulation):
Usa-se pinos: 3, 5, 6, 9, 10, and
11.
Função analogWrite()
ArduinoArduino
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.
ArduinoArduino
O Programa.
Escrito em C/C++ .
Funções especificas pré-
programadas em bibliotecas
modulares.
Após compilar temos os dados na
tela preta abaixo:
ArduinoArduino
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
}
ArduinoArduino
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.
ArduinoArduino
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
ArduinoArduino
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.
ArduinoArduino
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.
ArduinoArduino
Serial Monitor
void setup()
{
Serial.begin(9600);
Serial.println("Olá! Sou um Arduino!");
}
void loop()
{
}
ArduinoArduino
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!
}
ArduinoArduino
Serial Monitor
void setup()
{
Serial.begin(9600);
}
void loop()
{
Serial.println("Olá! Sou um Arduino!");
delay(1000);
}
ArduinoArduino
Serial Monitor
void setup() // função de inicialização
{
Serial.begin(9600); // inicia a serial port a 9600 bps
}
void loop() // loop main
{
Serial.println("Olá! Sou um Arduino!"); //envia a string
delay(1000); //aguarda 1000 milisegundos(1s)
}
ArduinoArduino
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”
ArduinoArduino
Referências:
Garoa Hacker Clube.
Adafruit. Disponível em <http://www.adafruit.com/>
Arduino.cc. Disponível em <www.arduino.cc/>
McRoberts, Michael. Beginning Arduino. Apress,EUA
Oxer,Jonathan e Blemings, Hugh. Practical Arduino. Apress,EUA
Banco de imagens google. Disponível em <www.google.com.br/imghp?hl=pt-BR&tab=wi>
ArduinoArduino
ArduinoArduino
Vamos começar?

Introdução ao arduino

  • 1.
    Leandro M. Lima 22abril de 2013 Introdução ao ArduinoIntrodução ao Arduino
  • 2.
    O que veremosnessa apresentação: O que é o Arduino. Uso e interações. Como programá-lo. ArduinoArduino
  • 3.
    O que éo Arduino? O Arduino é uma plataforma de prototipagem eletrônica open-source que se baseia em hardware e software 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. ArduinoArduino
  • 4.
    O que elefaz? 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. ArduinoArduino
  • 5.
    Como ele secomunica? Ele possui uma interface USB-Serial embutida controlada pelo chip FTDI Led Serial: 0 (RX) e 1 (TX). Usado para indicar recebimento (RX) e transmição (TX) dados seriais via TTL. Possui 14 pinos de I/O digitais e 6 entradas analogicas ArduinoArduino
  • 6.
  • 7.
    Arduino Mega- 126k(Flash Memory) 54 Pinos de I/O LilyPad Arduino ArduinoArduino
  • 8.
    Arduino BT (Bluetooth) ArduinoMini Arduino Pro ArduinoArduino
  • 9.
    O que sãoos Shields? “Escudos”,são placas modulares, extenções do arduino que permitem interagir com diversas tecnologias. Ethernet shield Xbee shield ArduinoArduino
  • 10.
  • 11.
    Como usar asShields? • Basta conecta-los sobre o Arduino quantos quiser. ArduinoArduino
  • 12.
    Coisas importantes no Arduino:  Saidacom PWM(Pulse Width Modulation): Usa-se pinos: 3, 5, 6, 9, 10, and 11. Função analogWrite() ArduinoArduino
  • 13.
    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. ArduinoArduino
  • 14.
    O Programa. Escrito emC/C++ . Funções especificas pré- programadas em bibliotecas modulares. Após compilar temos os dados na tela preta abaixo: ArduinoArduino
  • 15.
    Entendendo o Programa. voidloop() // 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 } ArduinoArduino
  • 16.
    Entendendo o Programa. Oprograma 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. ArduinoArduino
  • 17.
    Entendendo o Programa. Funçõesdigitais 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 ArduinoArduino
  • 18.
    Entendendo o Programa. Funçõesanaló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. ArduinoArduino
  • 19.
    Comunicação serial. É aforma 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. ArduinoArduino
  • 20.
    Serial Monitor void setup() { Serial.begin(9600); Serial.println("Olá!Sou um Arduino!"); } void loop() { } ArduinoArduino
  • 21.
    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! } ArduinoArduino
  • 22.
    Serial Monitor void setup() { Serial.begin(9600); } voidloop() { Serial.println("Olá! Sou um Arduino!"); delay(1000); } ArduinoArduino
  • 23.
    Serial Monitor void setup()// função de inicialização { Serial.begin(9600); // inicia a serial port a 9600 bps } void loop() // loop main { Serial.println("Olá! Sou um Arduino!"); //envia a string delay(1000); //aguarda 1000 milisegundos(1s) } ArduinoArduino
  • 24.
    Como eu compiloisso? 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” ArduinoArduino
  • 25.
    Referências: Garoa Hacker Clube. Adafruit.Disponível em <http://www.adafruit.com/> Arduino.cc. Disponível em <www.arduino.cc/> McRoberts, Michael. Beginning Arduino. Apress,EUA Oxer,Jonathan e Blemings, Hugh. Practical Arduino. Apress,EUA Banco de imagens google. Disponível em <www.google.com.br/imghp?hl=pt-BR&tab=wi> ArduinoArduino
  • 26.