Download - Introdução a plataforma arduino
![Page 1: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/1.jpg)
Introdução à plataforma Arduino
![Page 2: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/2.jpg)
Introdução à plataforma Arduino
{ "name": "Rogerio Alencar Filho", "hobby": "Analista de Sistemas (web!!!!)", "social": { "facebook": "https://facebook.com/rogerioalencar", "twitter": "https://twitter.com/rogerin", "github": "https://github.com/rogerin", "youtube": "https://youtube.com/user/rogerim",
"slideshare": "https://slideshare.net/RogerioAlencarFilho" }}
![Page 3: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/3.jpg)
O que é Arduino
![Page 4: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/4.jpg)
O que é Arduino
Arduino, é uma plataforma de prototipagem eletrônica de hardware livre, projetada com um microcontrolador Atmel AVR, com suporte de entrada/saída, uma linguagem de programação padrão. O objetivo do projeto é criar ferramentas que são acessíveis, com baixo custo, flexíveis e fáceis de se usar por artistas e amadores. Principalmente para aqueles que não teriam alcance aos controladores mais sofisticados e de ferramentas mais complicadas.
![Page 5: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/5.jpg)
Inicio desse BUMM!!!
![Page 6: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/6.jpg)
Arduino`s
![Page 7: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/7.jpg)
Serial Arduino Serial DB9 para programação - ATmega8
Arduino Extreme USB para programação - ATmega8
Arduino Mini Versão em miniatura do Arduino utilizando montagem superficial - ATmega168
Arduino Nano Versão menor que o Arduino Mini, energizado por USB e conectado por montagem superficial - ATmega168/328
LilyPad Arduino Projeto minimalista para aplicações portáteis, utilizando montagem superficial - ATmega168
Arduino NG USB para programação - ATmega8
Arduino NG plus USB para programação - ATmega168
Arduino BT interface bluetooth para comunicação - ATmega168
Arduino Diecimila Interface USB -Atmega168 em um pacote DIL28(foto)
ArduinoDuemilanove Duemilanove significa "2009" em italiano. É energizado via USB/DC, com alternação automática - Atmega168
(Atmega328 para a versão mais nova)
ArduinoMega Montagem superficial - ATmega1280 para E/S adicionais e memória
Arduino Uno Utiliza Atmega8U2 para driver conversor Serial-USB, ao invés do FTDI."Uno" significa "Um" em italiano. Esta versão é
considerada a versão 1.0 do projeto, sendo que as placas que sucederem a esta serão referenciadas. - ATmega328
Arduino`s
![Page 8: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/8.jpg)
Arduino UNOEssa é a última versão da placa USB. Usa um conector USB padrão e contem tudo o que você precisa para programar e usar a placa. É semelhante ao modelo Duemilanove.
![Page 9: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/9.jpg)
Arduino UNO
![Page 10: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/10.jpg)
Arduino LilyPadDesenvolvido para aplicações portáteis, dá para "costurar" essa placa em um tecido!Dá para fazer coisas curiosas! (camisetas com equalizador? Ah tá...)
![Page 11: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/11.jpg)
Arduino LilyPad
![Page 12: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/12.jpg)
Arduino LilyPad
![Page 13: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/13.jpg)
Arduino Uno SMDVersão SMD do UNO, utiliza um microcontrolador de montagem de superfície, ATmega328.
![Page 14: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/14.jpg)
Arduino FioProjetado para aplicações sem fio. Possui um soquete para Xbee, um conector para bateria LiPo.
![Page 15: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/15.jpg)
Arduino Mega2560Versão do Mega lançado com o Uno, esta versão apresenta o Atmega2560, que tem o dobro da memória, e usa o 8U2 ATmega para a comunicação serial-USB.
![Page 16: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/16.jpg)
Arduino PROEsta placa é projetada para usuários avançados. É facilmente alimentado por uma bateria, mas requer componentes adicionais e montagem técnica.
![Page 17: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/17.jpg)
BT ArduinoA BT Arduino contém um módulo bluetooth que permite a comunicação sem fio. É compatível com todos os Shields Arduino.
![Page 18: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/18.jpg)
Arduino Mini PROIgual a versão PRO, porem menor. É projetado para usuários avançados que exigem baixos custos, pequenos espaços, mas ainda assim, tem que estar dispostos para fazer algum trabalho extra de montagem.
![Page 19: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/19.jpg)
Arduino MiniParece a mesma da anterior, mas não é! Este é o menor da placa Arduino. Ela funciona bem em uma protoboard ou para aplicações onde o espaço é pequeno (pequeno mesmo!).
![Page 20: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/20.jpg)
Faça o seu!!!
![Page 21: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/21.jpg)
![Page 22: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/22.jpg)
![Page 23: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/23.jpg)
Shield`s
![Page 24: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/24.jpg)
![Page 25: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/25.jpg)
![Page 26: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/26.jpg)
Estrutura// antes do setup você pode incluir bibliotecas
void setup() {// toda configuração vem aqui}void loop(){ /// Codigo em loop infinito}
![Page 27: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/27.jpg)
FunçõespinMode();
digitalWrite();digitalRead();
analogRead()analogWrite(); - PWM
millis();micros();delay();delayMicroseconds();
![Page 28: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/28.jpg)
Controleswitch casewhiledo... whilebreakcontinuereturngoto
Syntax
; {} (chave)// (comentario simples)/* */ (comentario multilinha)#define#includeOperadores= (assignment operator)+ (addition)- (subtraction)* (multiplication)/ (division)% (modulo)
Comparações
== (equal to)!= (not equal to)< (less than)> (greater than)<= (less than or equal to)>= (greater than or equal to)Boolean&& (and)|| (or)! (not)
http://arduino.cc/en/Reference/HomePage
e muito mais...
![Page 29: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/29.jpg)
Hello World da eletrônica digital.digitalWrite();int ledPin = 13; // LED no pin 13void setup() { pinMode(ledPin, OUTPUT); // setar pino digital como SAIDA, para acionamentos}void loop() { digitalWrite(ledPin, HIGH); // LED on delay(1000); // aguarda 1 segundo digitalWrite(ledPin, LOW); // LED off delay(1000); // aguarda 1 segundo}
![Page 30: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/30.jpg)
digitalRead();int ledPin = 13; // LED digital pin 13int inPin = 7; // pushbutton digital pin 7int val = 0; // variavel guarda valor do digitalRead()void setup(){ pinMode(ledPin, OUTPUT); // seta digital pin 13 como SAIDA pinMode(inPin, INPUT); // seta digital pin 7 como ENTRADA}void loop(){ val = digitalRead(inPin); // ler pino de entrada digitalWrite(ledPin, val); // seta LED com o valor da leitura do botao}
![Page 31: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/31.jpg)
analogRead();int analogPin = 3; // potenciomentro no analogico pin 3
int val = 0; // variavel guarda valor da leitura do analogico
void setup() { Serial.begin(9600); // setup serial!!!!!!!!!!}
void loop() { val = analogRead(analogPin); // faz leitura do pino analogico Serial.println(val); // debug valor !!!}
![Page 32: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/32.jpg)
analogRead() + Serial.println()int analogPin = 3; // potenciomentro no analogico pin 3
int val = 0; // variavel guarda valor da leitura do analogico
void setup() { Serial.begin(9600); // setup serial!!!!!!!!!!}
void loop() { val = analogRead(analogPin); // faz leitura do pino analogico Serial.println(val); // debug valor !!! Serial.println(val, DEC); // ASCII-encode decimal Serial.println(val, HEX); // ASCII-encode hexadecimall Serial.println(val, OCT); // ASCII-encode octadecimal Serial.println(val, BIN); // ASCII-encode binario dealy(10); // delay 10 miles segundos
}
![Page 33: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/33.jpg)
Serial.println() Vs. Serial.print()int ledPin = 13; // LED digital pin 13int inPin = 7; // pushbutton digital pin 7int val = 0; // variavel guarda valor do digitalRead()void setup(){ Serial.begin(9600); pinMode(ledPin, OUTPUT); // seta digital pin 13 como SAIDA pinMode(inPin, INPUT); // seta digital pin 7 como ENTRADA}void loop(){ val = digitalRead(inPin); // ler pino de entrada digitalWrite(ledPin, val); // seta LED com o valor da leitura do botao if(val) { Serial.prinln(“Botao pressionado..”); } else { Serial.print(“Botao nao pressionado”); }}
![Page 34: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/34.jpg)
PWMint ledPin = 9; // LED conectado no pin digital 9int analogPin = 3; // potenciometro conectado no pin analogico 3int val = 0; // variavel que recebe valor da leitura do potenciometro
void setup() { pinMode(ledPin, OUTPUT); // sets the pin as output}void loop() { val = analogRead(analogPin); // read the input pin analogWrite(ledPin, val / 4); // analogRead values go from 0 to 1023, analogWrite values from 0 to 255}
![Page 35: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/35.jpg)
Sensores
![Page 36: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/36.jpg)
LDR - Sensor de Luz
![Page 37: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/37.jpg)
Criando Funçõesint ledPin = 13; // LED conectado no pin digital 9
void setup() { pinMode(ledPin, OUTPUT); // seta pin como saida}void loop() { mudaStatusLed(ledPin); delay(1000);}void mudaStatusLed(int Pin) { digitalWrite(Pin, !digitalRead(Pin));}
![Page 38: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/38.jpg)
Criando projeto real (uma roleta)Projeto: Ele vai ter que sortear aleatoriamente qual led vai acender, igual a sistema de roleta mesmo padrão. Ao ligar o Arduino ele vai iniciar o sorteio, acendendo os leds em forma sequencial, ate o fim do sorteio e apenas o sorteado ficara ligado.Tentem um pouco depois programamos ao mesmo tempo.
![Page 39: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/39.jpg)
Criando projeto real (uma roleta)Dica 1:
int numeroAleatorio;
void setup(){ numeroAleatorio = random(100, 300); // variavel numeroAleatorio recebe valor aleatorio entre 100 e 300.…..……
Dica 2:
![Page 40: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/40.jpg)
Codigoint led[7] = {13,12,11,10,9,8,7};int delayInicial = 50; //delay inicialint ledAtual = 0;int numeroAleatorio;void setup(){ for(int i = 0;i <= 6;i++){ pinMode(led[i], OUTPUT); } numeroAleatorio= random(100, 300);}
void loop(){ for(int i = 0;i <= 6;i++){ if (delayInicial <= delayInicial) { ligaLed(i); } else { digitalWrite(led[ledAtual], HIGH); } }}
void ligaLed(int i){ digitalWrite(led[i], HIGH); delay(delayInicial); digitalWrite(led[i], LOW); delayInicial+=2; ledAtual = i;}
![Page 41: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/41.jpg)
Comunicação I2C - Inter-Integrated Circuit
![Page 42: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/42.jpg)
Comunicação I2C - Inter-Integrated Circuit
![Page 43: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/43.jpg)
Comunicação I2C - Inter-Integrated Circuit
![Page 44: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/44.jpg)
Comunicação SPI - Serial Peripheral Interface
![Page 45: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/45.jpg)
Comunicação SPI - Serial Peripheral Interface
![Page 46: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/46.jpg)
Codigoint led[7] = {13,12,11,10,9,8,7};int delayInicial = 50; //delay inicialint ledAtual = 0;int numeroAleatorio;void setup(){ for(int i = 0;i <= 6;i++){ pinMode(led[i], OUTPUT); } numeroAleatorio= random(100, 300);}
void loop(){ for(int i = 0;i <= 6;i++){ if (delayInicial <= delayInicial) { ligaLed(i); } else { digitalWrite(led[ledAtual], HIGH); } }}
void ligaLed(int i){ digitalWrite(led[i], HIGH); delay(delayInicial); digitalWrite(led[i], LOW); delayInicial+=2; ledAtual = i;}
![Page 47: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/47.jpg)
https://www.youtube.com/user/rogerim
Ethernet
![Page 48: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/48.jpg)
Alguns projetos...
![Page 49: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/49.jpg)
![Page 50: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/50.jpg)
![Page 51: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/51.jpg)
![Page 52: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/52.jpg)
![Page 53: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/53.jpg)
![Page 54: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/54.jpg)
![Page 55: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/55.jpg)
![Page 56: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/56.jpg)
![Page 57: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/57.jpg)
![Page 58: Introdução a plataforma arduino](https://reader034.vdocument.in/reader034/viewer/2022051404/58ee09771a28ab747e8b46fb/html5/thumbnails/58.jpg)
Obrigado!
{ "name": "Rogerio Alencar Filho", "hobby": "Analista de Sistemas (web!!!!)", "social": { "facebook": "https://facebook.com/rogerioalencar", "twitter": "https://twitter.com/rogerin", "github": "https://github.com/rogerin", "youtube": "https://youtube.com/user/rogerim",
"slideshare": "https://slideshare.net/RogerioAlencarFilho" }}