Top Banner
Curso de Curso de ARDUINO ARDUINO Automação e Robótica Automação e Robótica Aula 01 Aula 01 Aula 01 Aula 01 Prof. Ms. Cássio Agnaldo Onodera Realização:
64

Curso Arduino Aula01

Apr 11, 2016

Download

Documents

Power point sobre algumas aplicações em arduino.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Curso Arduino Aula01

Curso deCurso de

ARDUINOARDUINOAutomação e RobóticaAutomação e Robótica

Aula 01Aula 01Aula 01Aula 01

Prof. Ms. Cássio Agnaldo Onodera

Realização:

Page 2: Curso Arduino Aula01

O que é ARDUINOO que é ARDUINO

• Projeto criado na Itália por MássimoBanzi

• Seu objetivo é complementar o ensino de programação, computação física e gráficaprogramação, computação física e gráfica

• Possui um Hardware e um Software Open-Source

Page 3: Curso Arduino Aula01

IntroduçãoIntrodução

• Plataforma baseada no Atmel da AVR (AtMega168, 328, 1280, 2560)

• Oferece um IDE e bibliotecas de alto nível• Hardware e Software Open-Source• Ampla comunidade• Ampla comunidade• Programado em C/C++• Transferência de firmware

via USB• MCU com Bootloader

Page 4: Curso Arduino Aula01

SimplificidadeSimplificidade

Page 5: Curso Arduino Aula01

CaracterísticasCaracterísticas

• Utiliza microcontrolador AtMEGA 128, 328, 1280

• RISC• 20 MIPS (milhões de instruções por • 20 MIPS (milhões de instruções por

segundo)• Memória flash: 16kb, 32kb, 128kb• 14 portas digitais• 6 portas analógicas

Page 6: Curso Arduino Aula01

Diversas AplicaçõesDiversas Aplicações

• Robôs• Roupas eletrônicas• Máquinas CNC de baixo custo• Alarme de segurança• Alarme de segurança• Instrumentos musicais• Casas inteligentes• Controle de lâmpadas e outros dispositivos

elétricos pelo computador• etc

Page 7: Curso Arduino Aula01

Vários tipos e fabricantesVários tipos e fabricantes

• Arduino 2009• Arduino Mega• Arduino Uno• Arduino Uno• Arduino BT• LilyPad• Program-ME• Severino

Page 8: Curso Arduino Aula01

AtMega328 AtMega328 –– O coraçãoO coração

• Características:– Plataforma RISC– 20 MIPS (Milhões de instruções por segundo)– 32kb flash (2kb p/ bootloader)– 32kb flash (2kb p/ bootloader)– 1kb EEPROM– Clock 16mhz– 14 portas digitais (6 PWM)– 6 portas analógicas– Voltagem de entrada: 7 – 12v

Page 9: Curso Arduino Aula01

ConexõesConexões

Page 10: Curso Arduino Aula01

EstruturaEstrutura

Page 11: Curso Arduino Aula01

EstruturaEstrutura

Page 12: Curso Arduino Aula01

EstruturaEstrutura

Page 13: Curso Arduino Aula01

EstruturaEstrutura

Page 14: Curso Arduino Aula01

Shields (Módulos)Shields (Módulos)

• Arquitetura modular inteligente

Page 15: Curso Arduino Aula01

Shields (Módulos)Shields (Módulos)

• Xbee (wireless)• Motor control• Bluetooth• Acelerometro

• Protoboard• Game/Joystick• GPS• Bússola• Acelerometro

• Internet• Expansor de saídas• Navigation (p/ robos)• Detector de gás

• Bússola• Auto pilot• Memória SD• LCD Color• Wave – (música)• etc

Page 16: Curso Arduino Aula01

Porta Porta AnalógicaxDigitalAnalógicaxDigital

• Digital– Trabalha com 0 e 1 na lógica binária– Segue padrão TTL onde:

• De 0 à 0,8 volts = 0• De 2 à 5 volts = 1

• Analógica– Valor lido é análogo à tensão– 0 volts = 0– 2,5 volts = 512– 5 volts = 1023– Conversor A/D de 10 bits: 0 à 1023

Page 17: Curso Arduino Aula01

Porta Analógica x DigitalPorta Analógica x Digital

• Portas analógicas expressam valores de 0 à 1023 mas não são utilizadas para transferência de informações precisas

• As portas digitais permitem que dados • As portas digitais permitem que dados seja transferidos em sequência através de uma lógica ou protocolo binário

• Portas digitais não conseguem comandar potência

Page 18: Curso Arduino Aula01

Porta PWMPorta PWM

• Uma porta híbrida: digital porém com modularização de zeros e uns de forma que forma que consegue expressar uma idéia de potência

Page 19: Curso Arduino Aula01

Na práticaNa prática

• Ligamos componentes em portas digitais comuns, pwm ou analógica

• Fazemos leitura e escrita nestas portas afim de obter um dado ou um determinado de obter um dado ou um determinado comportamento

• Processamos os dados no microcontrolador

• Alguns exemplos de componentes...

Page 20: Curso Arduino Aula01

LEDLED

Page 21: Curso Arduino Aula01

Sensor de temperaturaSensor de temperatura

Page 22: Curso Arduino Aula01

Sensor de luminosidade Sensor de luminosidade -- LDRLDR

Page 23: Curso Arduino Aula01

Sensor de distânciaSensor de distância

Page 24: Curso Arduino Aula01

BússolaBússola

Page 25: Curso Arduino Aula01

ShieldShield LCD LCD TouchTouch ScreenScreen

Page 26: Curso Arduino Aula01

WaveWave ShieldShield (Música)(Música)

Page 27: Curso Arduino Aula01

XbeeXbee ShieldShield (Com. sem fio)(Com. sem fio)

Page 28: Curso Arduino Aula01

Ethernet Ethernet ShieldShield (rede)(rede)

Page 29: Curso Arduino Aula01

Gás Metano Gás Metano ShieldShield

Page 30: Curso Arduino Aula01

Game Game ShieldShield

Page 31: Curso Arduino Aula01

GPS GPS ShieldShield

Page 32: Curso Arduino Aula01

AcelerômetroAcelerômetro

Page 33: Curso Arduino Aula01

TecladoTeclado

Page 34: Curso Arduino Aula01

Onde comprarOnde comprar

• www.parallax.com• www.sparkfun.com• www.makershed.com• www.liquidware.com• www.liquidware.com• www.ladyada.net• www.adafruit.com• www.robocore.net (Brasil)• http://www.multilogica-shop.com (Brasil)

Page 35: Curso Arduino Aula01

PROTOBOARDPROTOBOARD

Page 36: Curso Arduino Aula01

ProtoboardProtoboard

• Uma matriz de contato, ou placa de ensaio (ou protoboard, ou breadboard em inglês) é uma placa com furos e conexões condutoras para montagem de circuitos elétricos experimentais. A grande circuitos elétricos experimentais. A grande vantagem do protoboard na montagem de circuitos eletrônicos é a facilidade de inserção de componentes, uma vez que não necessita soldagem. As placas variam de 800 furos até 6000 furos, tendo conexões verticais e horizontais.

Page 37: Curso Arduino Aula01

ProtoboardProtoboard

Page 38: Curso Arduino Aula01

ProtoboardProtoboard

• Exemplos

Page 39: Curso Arduino Aula01

ProtoboardProtoboard

• Esquema

Page 40: Curso Arduino Aula01

ProtoboardProtoboard

• Esquema

Page 41: Curso Arduino Aula01

PROGRAMAÇÃOPROGRAMAÇÃO

Page 42: Curso Arduino Aula01

ProgramaçãoProgramação

• IDE pode ser baixada de www.arduino.cc• A IDE foi desenvolvida com Java (necessita

JVM )• Funciona em Windows. Mac OS X e Linux • Funciona em Windows. Mac OS X e Linux

(pode precisar de driver)• Utiliza GCC + GCC Avr para compilação• A transferência para a placa é feita via USB

pelo IDE (mas também pode ser feita com gravadores ICSP!)

Page 43: Curso Arduino Aula01

Partes básicas do programaPartes básicas do programa

• Dois métodos são obrigatórios:void setup() {}void loop()void loop(){}

• setup() : será executado uma única vez ao ligar a placa

• loop() : será executado infinitamente

Page 44: Curso Arduino Aula01

Portas digitais e analógicasPortas digitais e analógicas

• Na prática ligamos componentes em portas digitais e analógicas e através do código Arduino, manipulamos as portas:– pinMode(<porta>, <modo>)– pinMode(<porta>, <modo>)– digitalWrite(<porta>, 0 ou 1)– digitalRead(<porta>)– analogRead(<porta>)– analogWrite(<porta>, <valor>)

Page 45: Curso Arduino Aula01

Portas digitais e analógicasPortas digitais e analógicas

• pinMode (<porta>, <modo>)

– configura uma porta digital para ser lida ou para enviarmos dadospara enviarmos dados

– Exemplos:pinMode(13,OUTPUT);pinMode(11,INPUT);

Page 46: Curso Arduino Aula01

Portas digitais e analógicasPortas digitais e analógicas

• digitalWrite (<porta>, 0 ou 1)

– envia 0 ou 1 para porta digital

– Exemplos:digitalWrite(11,1);digitalWrite(11,0);

Page 47: Curso Arduino Aula01

Portas digitais e analógicasPortas digitais e analógicas

• digitalRead (<porta>)

– retorna um 0 ou 1 lido da porta

– Exemplo:int x;x = digitalRead(11);

Page 48: Curso Arduino Aula01

Portas digitais e analógicasPortas digitais e analógicas

• analogRead (<porta>)

– retorna de 0 a 1023 com o valor da porta analógicaanalógica

– Exemplo:int luz = analogRead(0);

Page 49: Curso Arduino Aula01

Portas digitais e analógicasPortas digitais e analógicas

• analogWrite (<porta>, <valor>)

– escreve em uma porta PWM um valor de 0 a 255255

– ExemploanalogWrite(11,200);

Page 50: Curso Arduino Aula01

ARDUINO IDEARDUINO IDE

Page 51: Curso Arduino Aula01

ARDUINO IDEARDUINO IDE

• O Arduino IDE é uma Aplicação multiplataformaescrita em Java na qual é derivada dos projetos Processing e Wiring

• Esquematizado para introduzir a programação a artistas e a pessoas não familiarizadas com o desenvolvimento de softwaredesenvolvimento de software

• Inclui um editor de código com recursos de realce de sintaxe,parênteses correspondentes e identaçãoautomática, sendo capaz de compilar e carregar programas para a placa com um único clique

• Não há a necessidade de editar Makefiles ou rodar programas em ambientes de linha de comando

• Capacidade de programar em C/C++

Page 52: Curso Arduino Aula01

ARDUINO IDEARDUINO IDE

Page 53: Curso Arduino Aula01

LEDLED

Page 54: Curso Arduino Aula01

LEDLED

• O diodo emissor de luz• Conhecido pela sigla

LED (Light EmittingDiode)• Sua funcionalidade básica é a

emissão de luzemissão de luz• Voltagem:

– Red 1.6 V– Green 2.1 V– Yellow 2.1 V– Orange 2.2 V– Blue 4-5 V

Page 55: Curso Arduino Aula01

ResistorResistor

Page 56: Curso Arduino Aula01

ResistorResistor

• Um resistor é um dispositivo elétrico muito utilizado em eletrônica, ora com a finalidade de transformar energia elétrica em energia térmica,ora com a finalidade de limitar a quantidade de corrente elétrica em um circuitofinalidade de limitar a quantidade de corrente elétrica em um circuito

• Resistores são componentes que têm por finalidade oferecer uma oposição à passagem de corrente elétrica, através de seu material. A essa oposição damos o nome de resistência elétrica, que possui como unidade ohm.

Page 57: Curso Arduino Aula01

ResistorResistor

• O valor de um resistor de carbono pode ser facilmente identificado de acordo com as cores que apresenta na cápsula que envolve o material resistivoque envolve o material resistivo

Page 58: Curso Arduino Aula01

ResistorResistor

Page 59: Curso Arduino Aula01

ResistorResistor

• Identifique a resistência dos resistores abaixo:

Page 60: Curso Arduino Aula01

Experiência 1Experiência 1Pisca LED

Page 61: Curso Arduino Aula01

Experiência 1 Experiência 1 –– Pisca LEDPisca LED

• Materiais necessários:– Arduino– Protoboard– Fios de conexão– Fios de conexão– LED– Resistor de 220 ohm

• Função:– Fazer um LED piscar

Page 62: Curso Arduino Aula01

Experiência 1 Experiência 1 –– Pisca LEDPisca LED

• Esquema:

Page 63: Curso Arduino Aula01

Experiência 1 Experiência 1 –– Pisca LEDPisca LED

• Programa (exp01.pde ) :

void setup() {pinMode(13, OUTPUT);

}

• Substitua “delay(500)” por “delay(1000)”

void loop() {digitalWrite(13, HIGH); //HIGH = 1 : LIGA LEDdelay(500);digitalWrite(13, LOW); //LOW = 0 : DESLIGA LEDdelay(500);

}

Page 64: Curso Arduino Aula01

Proposto 1 Proposto 1 –– Luz rítmicaLuz rítmica

• Altere o programa anterior para piscar seguindo um ritmo. Por exemplo: rápido, rápido, lento, lento