programação para arduíno_curso de extensão
TRANSCRIPT
Programação para Arduíno
Curso de ExtensãoProf. MSc. Algeir Sampaio
Sumário
• Introdução• Características• Começando...• Programação Básica• Projetos• Bibliografia• Sites
3
Introdução
• Microprocessador– CPU–ULA–UC
• Microprocessador x Microcontrolador
CPU
UC ULA
Introdução
5
Definição
• O que é um microcontrolador?– É computador num chip, que contém
um processador, memória e funções de E/S.
• Elementos adicionais–Memória RAM, EEPROM ou flash– Periféricos– Interfaces de E/S.
• Baixo consumo de energia.
Microcontrolador
Arquitetura Interna de um μC
Aplicação de μCs
9
Sistemas Microcontrolados
• Os microcontroladores são rápidos e precisos.
• São máquinas seqüenciais.• Sistemas que necessitam Controle
Automático são microcontrolados.• Aplicação dos microcontroladores– Telefonia, Automóveis, Aviação– Eletrodomésticos, Celulares, Segurança
Eletrônica
10
Microcontroladores (μCs)
• Para trabalharmos com microcontroladores precisaremos de:–Hardware de gravação do
microcontrolador– Kit de desenvolvimento ou simulador– Conhecimento de programação–Um compilador – Projetos de aplicação
Arduino
• O Arduino é uma placa de controle E/S baseada no microcontrolador Atmega (Atmel), que serve de controle para diversos outros sistemas.
• Esta placa de controle E/S open-source já é muito divulgada no exterior.
• Seu diferencial é que a sua concepção é open-source.
• Seus códigos de aplicação são abertos e divulgados.
Arduino• O conceito do Arduino surgiu na Itália em
2005 com o objetivo de criar um controlador para projetos/protótipos construídos de forma menos dispendiosa que outros sistemas existentes no mercado, então.
• É uma plataforma de computação física, baseada em uma placa de E/S microcontrolada e desenvolvida sobre uma biblioteca que simplifica a escrita da programação em C/C++.
Arduino
• Uma plataforma de computação física é um conjunto de sistemas digitais ligados a sensores e atuadores, que permitem construir sistemas que tenham noção do ambiente e que atuem sobre esse ambiente com ações físicas.
• Um microcontrolador é um processador que traz consigo memória e periféricos de E/S.
Arduino
• Esta placa foi projetada com finalidades educativas.
• Ideal para ajudar designers e artistas a criarem obras interativas sem terem muitos conhecimentos de eletrônica.
• A idéia básica de uso é introduzir sensores ou chaves nos conectores de entrada, e LEDs, displays, relés, motores e outros dispositivos que possam ser acionados pelos sinais de saída.
Arduino
• Uma plataforma Arduino é capaz de receber sinais de entrada que podem indicar diversas variáveis, processar esses sinais e controlar seus canais de saídas para atuarem a partir deste processamento.
• È baseado no microcontrolador Atmega e programável em uma linguagem baseada em C/C++ para executar um conjunto de ações.
Arduino
• O grande barato é que a comunidade que usa o Arduino, cresce cada vez mais e divulga seus códigos de aplicação, dentro da filosofia open-source.
• Qualquer programador pode modificar e ampliar de acordo a necessidade, divulgando, da mesma forma.
Arduino
• Projetado com possibilidades multiplataforma, é de fácil entendimento, programação e aplicação.
• Rodando em ambientes Windows, GNU/Linux e Mac OS.
• Está sendo utilizado, mesmo por quem não tem domínio da eletrônica e pode ser usado tanto para aplicações simples quanto para tarefas mais complexas.
Características
Layout
Esquema
Características
• Existem várias placas Arduino:– Arduino Uno– Arduino Duemilanove– Arduino MEGA– Arduino Nano– Tatuino– Etc...
Tipos de Arduino
Arduino Nano
Tipos de Arduino
Arduino Mega
Características
• O Arduino Duemilanove é uma placa baseada no microcontrolador ATmega168 ou ATmega328.
• Tem 14 pinos de entrada ou saída digital, dos quais 6 são utilizados como PWM, 6 entradas analógicas, um oscilador de cristal de 16 MHz, um controlador USB, um plug de alimentação, um conector ICSP e um botão de reset.
Características
• O Arduino pode ser alimentado pela conexão USB ou por qualquer fonte externa.
• A alimentação externa pode ser tanto uma fonte ou uma bateria.
• A alimentação recomendada é de 7 a 12 volt
Características
• Os pinos de alimentação são:– Vin: Entrada de alimentação para a
placa.– 5V: A fonte utilizada para o
microcontrolador e para outros componentes da placa.
– 3V3: Alimentação de 3,3 volts fornecida pelo CI FTDI.
– GND: Pino terra.
Características
• O ATmega328 tem 32KB de memória flash (onde o software fica armazenado), além de 2 KB de SRAM (onde as variáveis ficam) e 1 KB de EEPROM (que guarda os dados permanentes).
• A memória SRAM é apagada toda vez que desligamos o circuito.
Características
• Cada um dos 14 pinos digitais ode ser usado como entrada ou saída usando as funções de pinMode( ), digitalWrite( ) e digitalRead( ).
• Cada uma opera com 5 V.• Cada pino fornece ou recebe no
máximo 40 mA e tem um resistor pull-up interno de 20 – 50 Ohms.
Características
• Alguns pinos possuem função específica:– Serial: 0 (RX) e 1 (TX): Usados para
receber e transmitir dados seriais TTL.– PWM: 3, 5, 6, 9, 10 e 11: Fornecem uma
saída analógica PWM de 8 bits com a função analogWrite( ).
– SPI: 10, 11, 12 e 13: Suportam comunicação SPI.
– LED: 13: Já existe um led conectado a este pino.
Características
• O Arduino Duemilanove tem 6 entradas analógicas, cada uma delas está ligada a um conversor analógico-digital de 10 bits.
• Os pinos 4 e 5 suportam a comunicação I2C.
• AREF: Referência de tensão para as entradas analógicas.
• Reset: Envia o valor LOW para reiniciar o microcontrolador.
Características
• A comunicação com um computador, com outro Arduino ou com outros microcontroladores é simples.
• O ATmega328 permite comunicação serial no padrão UART TTL (5 V), que está disponível nos pinos digitais 0 (RX) e 1 (TX).
Características• Algumas versões anteriores do Arduino
requerem um reset físico (botão de pressão na placa) antes de carregarem um sketch.
• No Arduino Duemilanove é possível fazer o reset via software.
• A placa do Arduino Duemilanove tem um polifusível que protege a porta USB do computador contra curtocircuitos e sobrecorrentes superiores a 500 mA.
Iniciando o trabalho com Arduino
• Adquira uma placa Arduino e um cabo USB.
• O Arduino pode ser Arduino Uno, Arduino Duemilanove, Nano, ou Diecimila.
• É preciso também um cabo USB padrão do tipo que você usaria para conectar uma impressora USB, por exemplo.
Trabalhando com Arduino
Trabalhando com Arduino
• Baixe o ambiente Arduino.• Obtenha a última versão da página de
downloads.• Quando o download terminar, descompacte
o arquivo baixado. • Certifique-se de preservar a estrutura da
pasta. • Dê um duplo clique na pasta para abri-lo. • Deve haver alguns arquivos e sub-pastas
dentro.
Trabalhando com Arduino
• Ao conectar a placa Arduino, automaticamente a energia é extraída, a partir da ligação USB no computador ou de uma fonte de alimentação externa.
• A fonte de alimentação é selecionada com um jumper, que se encaixa em dois dos três pinos entre o USB e os conectores de energia.
• Ligue a placa Arduino ao computador utilizando o cabo USB e o LED (rotulado PWR) deve acender.
Trabalhando com Arduino
• Ao instalar os drivers para o Arduino Uno com Windows7, Vista ou XP:– Conecte a placa e espere pelo Windows para
começar seu processo de instalação do driver. – Depois de alguns momentos, o processo irá
falhar, apesar de seus melhores esforços, clique no menu Iniciar e abra o Painel de Controle.
–No Painel de Controle, vá para Sistema e Segurança.
– Em seguida, clique em Sistema.
Trabalhando com Arduino
• Ao clicar em Sistema:– Quando a janela do Sistema surgir, abra o
Gerenciador de Dispositivos e procure em Portas (COM & LPT).
– Você deverá ver uma porta aberta com o nome “Arduino UNO (COMxx)”.
– Clique com o botão direito do mouse sobre o "UNO Arduino (COMxx)" port e escolha a opção "Atualização de driver de software".
– Em seguida, escolha a opção "Procurar o meu computador para software Driver" opção.
Trabalhando com Arduino
• Finalmente, selecione o arquivo Uno do driver, chamado "ArduinoUNO.inf", localizado no "Drivers" da pasta do download do software Arduino (não os Drivers USB FTDI "sub-diretório).
• Então o Windows irá terminar a instalação do driver.
• Consulte http://arduino.cc/en/Guide/Windows para saber como instalar o Uno no Windows XP.
Trabalhando com Arduino
• Para instalar os drivers para o Duemilanove, Nano, ou Diecimila com Windows7, Vista ou XP, é preciso:– Conectar a placa e o Windows deverá
iniciar o processo de instalação do driver (se você não usou o computador com uma placa Arduino antes).
–No Windows Vista, o driver deve ser baixado e instalado automaticamente.
–No Windows XP, o assistente Adicionar novo hardware será aberto:
Trabalhando com Arduino
• E deve perguntar se o Windows pode se conectar ao Windows Update para procurar software?
• Selecione Não, não desta vez. • Clique em Avançar.• Selecione Instalar de uma lista ou local
específico (avançado) e clique em Avançar.• Certifique-se de que a opção Procurar o
melhor driver nestes locais está marcada:– Desmarque Pesquisar mídia removível;
Trabalhando com Arduino
• Você deve marcar Incluir este local na pesquisa e procure os drivers /FTDI USB Drivers diretório da distribuição Arduino. (A última versão dos drivers está no site da FTDI.)
• Clique em Avançar.• O assistente irá procurar o driver e, em
seguida, irá dizer-lhe que um "Conversor USB Serial" foi encontrado.
• Clique em Concluir.• O assistente de novo hardware aparecerá
novamente.
Trabalhando com Arduino
• Atravesse os mesmos passos e selecione as mesmas opções e local para pesquisar.
• Desta vez, um "USB Serial Port" vai ser encontrada.
• Você pode verificar que os drivers foram instalados, abrindo o Manager de dispositivos do Windows (na aba Hardware do painel de controle do sistema).
• Procure um "USB Serial Port" na seção Portas, que é a placa Arduino.
Iniciando o Aplicativo do Arduino
• Para iniciar o aplicativo, basta dar um duplo clique no aplicativo Arduino.
• Tomemos como exemplo o programa demo Blink.
• Para abrir este programa (sketch) basta seguir a seqüência:– File > Examples > 1.Basics > Blink.
Iniciando o Aplicativo do Arduino
Selecionando a sua placa
Selecionando a porta serial
• Selecione o dispositivo de série da placa Arduino do menu Tools|Serial Port.
• Provavelmente, deve ser COM3 ou superior (COM1 e COM2 são normalmente reservados para portas seriais de hardware).
• Para descobrir, você pode desconectar sua placa Arduino e reabrir o menu, a entrada que desaparece deve ser a placa Arduino.
• Volte a ligar a placa e selecione essa porta serial.
Carregando o programa
• Agora, basta clicar no botão "Enviar" no ambiente.
• Aguarde alguns segundos - você deve ver o RX e TX leds piscando na placa.
• Se o envio for bem sucedida, a mensagem "Done uploading" aparecerá na barra de status.
• (Nota:. Se você tem um Arduino Mini, NG, ou outra placa, você precisa fisicamente do botão de reset na placa imediatamente antes de apertar o botão de upload)
Carregando o programa
Carregando o programa
• Alguns segundos após o término do envio, você deverá ver o pino 13 (L) LED na placa começar a piscar.
• Se isso acontecer, parabéns! Você conseguiu colocar seu Arduino para executar seu programa.
• Se você tiver problemas, consulte as sugestões de solução.
Bibliografia
• MARGOLIS, Michael. Arduino Cookbook, O´Reilly. United States of America, 2011.
• Fonseca, Erika G. P. & Beppu, Mathyan M. Apostila Arduino, UFF, 2010.
• McRoberts, Michael. Beginning Arduino, Apress. United States of America, 2010.
• Oxer, J. & Blemings, H. Practical Arduino, Apress. United States of America, 2009.
Bibliografia
• Kurt, Tod E. Bionic Arduino – Introduction do Microcontrollers with Arduino. Machine Project, 2007.
• Evans, Brian W. Arduino Programming Notebook.
• www.arduino.cc• www.arduino.com.br
Prof. Algeir Sampaio