minicurso de arduino - pet-ee | engenharia...

27
MINICURSO DE ARDUINO AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques Victor Paiva de Oliveira PET Engenharia Elétrica – UFRN [email protected] facebook.com/ufrnpetee

Upload: dolien

Post on 10-Nov-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

MINICURSO DE ARDUINOAULA 01

Gabriel de Melo SouzaLucas Nunes de CarvalhoMax Rodrigues MarquesVictor Paiva de Oliveira

PET Engenharia Elétrica – [email protected]

facebook.com/ufrnpetee

Page 2: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

SUMÁRIO

• O Arduino• O que é um Arduino?• Por que usar Arduino?• Variedade• Arduíno UNO• Conhecendo a placa• Shield

• Onde comprar?

• Processo de instalação da IDE

• IDE (Integrated Development Environment)

• Comandos básicos

• Protoboard

• Resistor

• LED

• Blink

Page 3: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

O ARDUINO

O Arduino surgiu em 2005, na Itália, com um professorchamado Massimo Banzi, que queria ensinar eletrônica e programaçãode computadores a seus alunos de design, para que eles usassem emseus projetos de arte, interatividade e robótica. Porém, ensinareletrônica e programação para pessoas que não são da área não erauma tarefa simples, e outra dificuldade era a inexistência de placaspoderosas e baratas no mercado.

Foi pensando nisso que Massimo e David Cuartiellesdecidiram criar sua placa própria, com a ajuda do aluno de Massimo,David Mellis, que ficou responsável por criar a linguagem deprogramação do Arduíno. Várias pessoas conseguiram utilizar oArduíno e fazer coisas incríveis, surgindo assim essa febre mundial daeletrônica.

Page 4: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

POR QUE USAR ARDUÍNO?

• Baixo custo - Uma pessoa pode comprar um Arduino pagando emtorno de R$ 50,00.

• Software para várias plataformas - Microsoft Windows, Mac OS X eLinux.

• Linguagem simples - Os desenvolvedores do Arduino tentammanter sua linguagem fácil de usar para iniciantes, mas flexível obastante para usuários avançados.

• Software livre - O Arduino é completamente um software livre. Sequiser construir seu próprio software ou modificar um, você é livrepara isso. Além disso, o Web site oficial do Arduino contém um wikiextensivo no qual amostras de código e exemplos sãocompartilhados livremente.

• Existe uma comunidade ativa para usuários, por isso, existe umaquantidade enorme pessoas que podem te ajudar.

Page 5: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

O QUE É UM ARDUINO?

“Um Arduino é um microcontrolador de placa única e umconjunto de software para programa-lo. O hardware consiste em umprojeto simples de hardware livre para o controlador, com umprocessador Atmel AVR e suporte embutido de entrada/saída. Osoftware consiste de uma linguagem de programação padrão e dobootloader que roda na placa.”

Em termos práticos, um Arduino é um pequeno computadorque você pode programar para processar entradas e saídas entre odispositivo e os componentes externos conectados a ele. O Arduíno é oque chamamos de plataforma de sistema embarcado, ou seja, umsistema que pode interagir com seu ambiente por meio de hardware esoftware.

Page 6: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

VARIEDADE

Page 7: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

Tipos de Arduino

Page 8: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

ARDUINO UNO

A placa do Arduino Uno, difere das versões previas por nãoutilizar o chip FTDI, que conduz a USB para a serial. Em vez disso, ela utilizaum Atmega8U2, programado como um conversor USB para serial. Issoconfere a placa muitas vantagens quando comparada a sua predecessora,a Duemilanove. Primeiro, o chip Atmega é muito mais barato que o chipFTDI, diminuindo o preço das placas. Segundo, e mais importante, elepermite que o chip USB tenha seu firmware atualizado, para que o Arduinoseja exibido em seu PC como outro dispositivo, tal como um mouse oujoystick de jogos. Isso abre uma série de novas possibilidades para oArduino. Infelizmente, a mudança para esse tipo de novo chip USB tornoumuito mais difícil para fabricantes de clones criarem clones do ArduinoUno.

Page 9: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

ARDUINO UNO

É uma placa com micro controlador Atmega328. Possui 14entradas/saídas digitais, 6 entradas analógicas, um cristal oscilador de16MHz, conexão USB, uma entrada para fonte, soquetes para ICSP, e umbotão de reset. A placa contém todo o necessário para usar o microcontrolador. Simplesmente conecte-a a um computador com o cabo USBou ligue a placa com uma fonte 5 AC-DC (ou bateria). O Uno selecionaautomaticamente a fonte de alimentação (USB ou fonte externa).

Page 10: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

CONHECENDO A PLACA

Page 11: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

SHIELDS

O Arduino possui o que chamamos de Shields, que são nadamais, nada menos do que outras plaquinhas que se acoplam à placaoriginal, agregando diversas outras funcionalidades.

Existe diversos Shields, com diversas funções. Alguns servemcomo entrada, como saída e outros como entradas e saída. Com elesconseguimos, por exemplo, fazer com que o Arduino se comunique numarede Ethernet ou via USB com um celular Android.

Page 12: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

ONDE COMPRAR?

• Multilogica: http://multilogica-shop.com/

• RoboCore: https://www.robocore.net/modules.php?name=GR_LojaVirtual&categoria=Arduino

• BuildBot: http://www.buildbot.com.br/

• Laboratório de Garagem: http://loja.labdegaragem.com.br/

Page 13: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

PROCESSO DE INSTALAÇÃO - IDE

1. Site: https://www.arduino.cc/en/Main/Software

2. Escolha o sistema operacional (recomendação: ZIP file);

Page 14: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

IDE (Integrated Development Environment)

Page 15: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

Teste do Arduino

1. Verificação da Porta USB em que o arduinoestá conectado;

2. Selecionar a porta correta: Tools>Board>Arduino Uno;

>Serial Port> Seleção da porta correta!3. Execução de qualquer exemplo: File>Examples>01.Basic> Blink;

Page 16: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

COMANDOS BÁSICOS

A plataforma de implementação dos programas em Arduinoé baseada nas linguagens C/C++, preservando sua sintaxe na declaraçãode variáveis, na utilização de operadores, na manipulação de vetores,na conservação de estruturas, bem como é uma linguagem sensível aocaso (case-sensitive).

Como já foi informado, a linguagem base para aprogramação de um Arduíno é C/C++. Logo, suas estruturas de controle(if, else, while, for...), seus elementos de sintaxe ( #define, #include,...), operadores aritméticos (+, -, *, ^ ...), operadores de comparação(==, !=, <, > ...), enfim, todos são utilizados aqui no IDE. Portanto, saberC/C++ é primordial para programar o Arduino em alto nível.

Page 17: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

COMANDOS BÁSICOS

O programa para o Arduino é dividido em duas partesprincipais: Setup e Loop.

A função setup serve para inicialização da placa e doprograma. Esta sessão é executada uma vez quando a placa é ligada ouresetada através do botão. Aqui, informamos para o hardware da placao que vamos utilizar dele.

A função loop é como se fosse a main() da placa. Oprograma escrito dentro da função loop é executado indefinidamente,ou seja, ao terminar a execução da última linha desta função, oprograma inicia novamente a partir da primeira linha da função loop econtinua a executar até que a placa seja desligada ou o botão de resetseja pressionado.

Page 18: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

COMANDOS BÁSICOS

pinMode(pin, mode): Configura o pino especificado para quese comporte como entrada ou saída, sendo Pin = número do pino e mode =INPUT ou OUTPUT.

digitalWrite(pin, value): escreve um valor HIGH ou LOW emum pino digital. Se o pino foi configurado como saída sua voltagem serádeterminada ao valor correspondente: 5V para HIGH e 0V para LOW. Se opino estiver configurado como entrada escrever um HIGH levantará oresistor interno de 20kΩ. Escrever um LOW rebaixará o resistor.Obviamente pin = número do pino e valor = HIGH ou LOW.

Para mais comandos, consultar o guia de referências em:http://arduino.cc/en/Reference/HomePage

Page 19: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

PROTOBOARDA protoboard (ou breadboard) é uma

base de construção de protótipos eletrônicos. Elaé muito utilizada, pois não requer solda, ou seja, éreutilizável. Isto torna mais fácil de usar paracriação de protótipos temporários. A utilização deuma protoboard em montagem com projetos deArduíno torna possível a construção de circuitosmais complexos.

A ligação de circuitos é feita atravésde jumpers (basicamente pequenos fios), que sãoutilizados para ligar temporariamentecomponentes eletrônicos na protoboard. A faixacentral tem o tamanho específico paracomponentes eletrônicos pequenos.Normalmente, uma protoboard possui quatromatrizes, mas este número pode variar.

Page 20: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

PROTOBOARD

A protoboard é compostade dois tipos de matrizes principais:uma com duas colunas, chamada dematriz 2 e outra com cinco colunas,chamada de matriz 5. Elas se diferemno modo de transmissão de energia edados.

A matriz 2 geralmente éusada para ligação inicial de energia,e a 5 é usada na utilização decomponentes no circuito. A matriz de2 tem sua transmissão de coluna emcoluna, enquanto a matriz 5 tem atransmissão de linha em linha.

Page 21: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

RESISTOR

São elementos que apresentam resistência à passagem decorrente elétrica, quanto maior a sua resistência, menor é a correnteelétrica que passa num condutor. Os resistores possuem um formatocilíndrico e faixas coloridas que definem o seu valor em Ohms. Servempara opor-se a passagem de corrente, ficando assim certa tensão retida nomesmo.

Os resistores podem ser de resistência fixa ou variável.

• Resistor fixo: É um resistor que possibilita um único valor de resistência.

• Resistor Variável: Seus valores podem ser ajustados por um movimentomecânico, ou seja, rodando manualmente.

Page 22: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

LED

O LED é um componente eletrônico semicondutor, ou seja,um diodo emissor de luz ( L.E.D = Light Emitter Diode ), que tem apropriedade de transformar energia elétrica em luz. O LED é umcomponente do tipo bipolar, ou seja, tem um terminal chamado anodo eoutro, chamado catodo. Dependendo de como for polarizado, permite ounão a passagem de corrente elétrica e, consequentemente, a geração ounão de luz.

Page 23: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

LEDComo o diodo, o LED não pode receber tensão diretamente

entre seus terminais, uma vez que a corrente deve ser limitada para que ajunção não seja danificada. Assim, o uso de um resistor limitador em sériecom o LED é comum nos circuitos que o utilizam. Para calcular o valor doresistor usa-se a seguinte fórmula: R = (Vfonte-VLED)/ILED, onde Vfonte é atensão disponível, VLED é a tensão correta para o LED em questão e ILED é acorrente que ele pode suportar com segurança.

Page 24: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

Blink

Page 25: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

Blink personalizado (código morse)

Page 26: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

Blink personalizado (código morse)

Legendas:

Ponto: 0,5 segundos;Traço: 1,5 segundos;Espaço entre dits e dahts: 0,5 segundos;Espaço entre letras: 1,5 segundos;Espaço entre palavras: 3,5 segundos.

Page 27: MINICURSO DE ARDUINO - PET-EE | Engenharia Elétricapetee.ct.ufrn.br/wp-content/uploads/2015/11/Aula01.pdf · AULA 01 Gabriel de Melo Souza Lucas Nunes de Carvalho Max Rodrigues Marques

Exemplo de Código Morse: