MiniCurso de Arduino básico

Professor Dr. Ilton Luiz Barbacena

Arduíno

  1. O que é o arduíno?
  2. Onde posso usar o arduíno?
  3. Instalação das ferramentas de softwares envolvidas
  4. Configuração do arduíno
  5. Meu primeiro programa ( Atenção: usando o computador !!!!!)
  6. Matriz de contato ou protoboard
  7. Primeiro experimento: Teste do display de 7 segmentos
  8. Experimentos: arduino + display 7 segmentos
  9. Instalação de bibliotecas e utilização com o sensor ultrassônico
  10. Tutorias e Dicas sobre Sistemas Embarcados
  11. Referencia Bibiográfica

 

O que é o arduíno?

O Arduino é originalmente conhecido como uma plataforma de prototipagem eletrônica open-source que se baseia em hardware e software flexíveis e fáceis de usar. É destinado a artistas, designers, hobbistas e qualquer pessoa interessada em criar objetos ou ambientes interativos. A plataforma arduino é formada por um conjunto de funções que são executadas em um ambiente específico para desenvolvimento dos programas. Atualmente existem muitas placas que utilizam estas ferramentas de software, e por isso, são denominada de placas de arduíno. A placa mais conhecida atualmente é a UNO R3, ilustrada na Figura 1.

 

Detalhe da Placa UNO R3

Figura 1 - Arduino UNO R3

Esta placa pode sentir o estado do ambiente que o cerca por meio da recepção de sinais de sensores e pode interagir com os seus arredores, controlando luzes, motores e outros atuadores. O microcontrolador na placa é programado com a linguagem de programação do Arduino, baseada na linguagem Wiring, e o ambiente de desenvolvimento Arduino, baseado no ambiente Processing. Ao conjunto de funções originais, da linguagem C, que acompanha a plataforma arduino, podem ser adicionadas outras funções que acompanham as bibliotecas das placas de expansão do arduino, conhecidas como shields. . Os projetos desenvolvidos com esta placa do Arduino podem ser autônomos ou podem comunicar-se com um computador para a realização da tarefa, com uso de software específico (ex: Flash, Processing, MaxMSP). Veja mais aqui. Neste texto quando utilizarmos a palavra Arduino estaremos referenciando a todas as placas que são compatíveis com a plataforma IDE do arduino.

voltar

Uso do arduíno?

Em função da popularização desta plataforma, em especial devido a variedade de placas de expansão, popularmente chamadasshield, que já são fornecidas com suas respectivas bibliotecas, compatíveis com a plataforma IDE do arduino, a utilização desta ferramenta superou de longe as expectativas dos idealizadores. Percebe-se que gradativamente esta ferramenta vem substituindo seus concorrentes, devido a sua popularização, preço, facilidade de aprendizagem e, principalmente, a ampla diponibilidade de bibliotecas. Na Figura 2 são apresentados alguns equipamentos em que se utiliza o arduíno ou outro microcontrolador equivalente. O arduino é atualmente a entrada para o entusiasta da Internet das CoisasInternet of Things).

Equipamento que utilizam microcontroladores

Figura 2 - Equipamentos microcontrolados

voltar

Instalação das ferramentas de softwares envolvidas

As ferrramentas de software envolvidas são formadas pelos drivers da placa para serem vistas pelo sistema operacional e pela IDE ou interface ou ambiente de desenvolvimento, que é formado pelo editor, pelo compilador, pelas bibliotecas básicas e pelos menus de configurações.

Ao conectar a placa do arduino no computador, as novas versões do sistema operacional windows já reconhece automaticamente a placa e estabelece uma porta serial para fazer a comunicação com a placa do arduino. Esta porta pode ser identificada, no windows, no painel de controle, em gerenciador de dispositivos. Se isto não ocorrer o usuário deve baixar a última versão da ferramenta e instalar os drivers, que a acompanha. Os procedimentos necessários podem ser obtidos aqui.

Para a instalção da IDE vá ao site oficial da plataforma arduino e faça download da última versão. Existe a versão para instalação ou um arquivo executável e a versão que funciuona sem instalar. Nesta última versão, basta fazer downlaod de um arquivo compactado e descompactar em uma pasta de seu HD. Neste curso vamos optar pela segunda opção, e vamos baixar uma versão anterior a última versão, a versão 1.6.12, que está disponível na primeira linha deste neste link.

Após fazer o download, crie uma pasta no seu HD, por exemplo d:\arduino, e copie o arquivo compactado para esta pasta e, em seguida, faz a descompactação do arquivo.

Para executar ou entrar na IDE do arduino basta dar dois cliques no arquivo arduino.exe. É interessante que se crie uma atalho desta arquivo para a sua área de trabalho. Pronto, agora é dar dois cliques neste atalho e já estamos na tela principal do arduíno. A Figura 3 ilustra como fica os arquivos após a descompactação, e destaca o arquivo em que se deve dar dois cliques para abrir o programa. Os primeiros passos e uma descrição dos menus da ferramenta são descritos aqui.

Pasta descompactada do software do arduino

Figura 3 - Pasta do arduino

voltar

Configuração do Arduíno

Depois de conectar a placa do arduino no computador, certficar-se que o computador esteja enxergando a placa ou seja com os drivers instalados e ter feito o download da ferramenta de software do arduino, o passo seguinte seria fazer a configuração inicial do ambiente de trabalho da IDE. Vamos fazer um resumo destas etapas, no ambiente da IDE:

  1. Configure o modelo da placa do arduino conforme Figura 4;
  2. Configure a porta de comunicação serial em Ferramentas / Portas. Escolha a porta estabelecida pelo windows, no painel de controle, quando reconheceu a placa;
  3. No Menu / Arquivo / Preferências (última opção da janela), marque conforme Figura 5;

 

Escolha o modelo da placa do arduino

Figura 4 - Escolha o modelo de placa do arduino

Figura 5 - Tela de configuração para compilar e gravar automaticamente na placa do arduino

Atenção!

Devo esclarecer que a partir de 2016 a ferramenta de software arduino passou a ter compatibilidade com uma série de placas disponíveis no mercado. A lista de placas compatíveis com esta ferramenta cresce a cada dia. Desta forma, o conceito de arduino deixa de estar associado ao hardware ou as suas placas originais (UNO, MEGA, NANO, MINI, etc), passando a constituir tão somente uma ferramenta de software. A ferramenta de software arduino continua sendo compatível com suas placas originais, também fabricadas pelos desenvolvedores do arduino, passando a ser compatíveis também com placas de outros fabricantes. Na verdade foram os outros fabricantes de passaram a construir placas para ficaram compatíveis com a ferramenta de software arduino, devido a sua popularidade. Entretanto a ferramenta de software arduino continua mantendo suas características originais de ser multiplataforma, de fácil aprendizagem e com a capacidade de após a compilação, efetuar a gravação na placa, previamente selecionada.

voltar

Meu primeiro programa

Esta ferramenta está acompanhada de um conjunto de bibliotecas e um conjunto de exemplos prontos. Vamos compilar e gravar no arduino o exemplo Blink, conforme Figura 6. Após abrir o arquivo clique no ícone de compilar e de gravar no arduíno, utilizando as opções do ambiente da IDE, conforme ilustrado na Figura 7.

Primeiro programa - blink

Figura 6 - Carregando ou lendo o programa blink

 

Ambiente da Plataforma do arduino

Figura 7 - Ambiente de desenvolvimento do arduino

 

Na Figura 7 encontra-se em destaque as opções de ambiente da plataforma arduino, que em resumo é o seguinte:

  1. Arquivo: Abrir / Fechar / Imprimir / Preferências / etc
  2. Editar: Copiar / Colar / Comentar / etc
  3. Sketch: Adicionar / Importar biblioteca, tc;
  4. Ferramenta: Monitor Serial / Gerenciar e Escolher Placa / Escolher Programador / Gravar Bootloader
  5. Ajuda: Sobre a IDE / Referência ou funções do arduino, etc;
  6. Compilar / Verificar
  7. Nome do arquivo em edição
  8. Gravar no arduino
  9. Novo arquivo, em branco, para edição
  10. Abrir um arquivo
  11. Salvar o arquivo em edição
  12. Tela de edição
  13. Janela de mensagens de compilação e avisos (warning)
  14. Barra de estado (linha corrente, placa corrente e porta de comunicação configurada

voltar

Matriz de contatos ou Protoboard

O Protoboard  é uma excelente ferramenta para criação rápida de protótipos e circuitos eletrônicos sem a necessidade de soldar componentes. Muito comum nos laboratórios de eletrônica, nas mesas de projetistas e nas bancadas de oficinas de eletrônica. A Protoboard consiste em uma placa didática composta de uma matriz de contatos que permite a construção de circuitos experimentais sem a necessidade de efetuar a solda dos componentes isso permite que seja efetuado uma série de experimentos com os mesmos componentes inserindo ou removendo os mesmos com rapidez e segurança.

Existem vários tamanhos e tipos de Protoboard, mas em geral existem várias linhas horizontais, separadas por um divisor central. Além dessas linhas de condução internas, existem uma ou mais faixas curtas de cada lado da placa. Você pode identificá-las pelos sinais de positivo e negativo. Estas linhas são longas faixas condutivas conectadas no sentido horizontal, usadas normalmente para plugar cabos de alimentação (bateria). Os furos (alvéolos) possuem na sua parte interna (que não pode ser vista) contatos elétricos de metal (grampos), de modo que ao encaixarmos fios ou terminais de componentes, ele é conectado de modo firme ao circuito. Desta forma não é preciso usar solda. Os contatos sob os furos obedecem a uma organização de interligação padronizada. Assim, cada fila vertical de furos está interligada. Isso quer dizer que todos os terminais de componentes que estejam numa mesma fila vertical estarão interligados. A Figura 8 ilustra a as filas de contatos de um Protoboard.

Matriz de contato ou protoboard

Figura 8 - Matriz de Contatos ou Protoboard

voltar

Primeiro experimento: Teste do display de 7 segmentos

Um display de sete segmentos, é um tipo de display (mostrador) barato usado como alternativa a displays de matriz de pontos mais complexos e dispendiosos. Displays de sete segmentos são comumente usados em eletrônica como forma de exibir uma informação alfanumérica (bináriooctadecimaldecimal ou hexadecimal) que possa ser prontamente compreendida pelo usuário sobre as operações internas de um dispositivo. Seu uso é corriqueiro por se tratar de uma opção barata, funcional e de fácil configuração. Na Figura 9 são apresentados algumas opções encontradas no mercado destes displays.

 

alguns displays 7 segmentos display12 display13
Display anodo comum e catodo comum Pinagem do display 7 segmentos

Figura 9 - (a) Vários displays ; (b) um módulo com 4 display; (c) Display mostrando os digitos numéricos; (d) Configuração catodo e anodo comum; (e) Pinagem mais comum dos display 7 segmentos

Embora, a maioria dos display de 7 segmentos atende a um padrão de pinagem, sempre se necessita testar os segmentos dos display para verificar se existe algum queimado, e até mesmo para identificar os pinos referente a cada segmento. Para o teste do display de 7 segmentos temos que utilizar resistores em série para limitação de corrente em cada segmento do display. Podemos usar apenas um resistor em série com o pino comum, catodo ou anodo comum, que receberá a soma das correntes que passam em cada segmento, ou opcionalmente, usar um resistor em série com cada segmento. O resistor que vamos utilizar pode ser qualquer um na faixa de 270 a 680 ohms, para uma alimentação de 5 Volts, que é o caso do arduíno. Na Figura 10a e 10b encontra-se ilustrado as ligações para o teste do display e temos também a simulação do funcionamento do display de 7 segmentos, usando a primeira opção, com apenas um resistor em série com o catodo comum. Observe que na Figura 10c, estão ligadas somente as chaves correspondentes aos segmentos B, C, F, G e DP. Com esta configuração o display mosta o dígito 4 com o ponto decimal aceso. As chaves podem ser substituídas pelo manuseio manual do cabo de ligação aos segmentos, durante os testes.

Teste do display de 7 segmentos

Figura 10 - Teste do display de 7 segmentos

Para testar cada segmento do display temos que ligar os pinos do display, a partir da Figura10a e 10b, e seguindo as seguintes etapas:

  1. Ligar, utilizando cabos, os pinos do meio (em cima e em baixo do display de 7 segmentos) em um ponto comum, que vamos denominar P1, no protoboard;
  2. Ligar a outra extremidade do resistor, no ponto P2, no protoboard, ao pino de terra ou GND do arduino;
  3. Ligar uma extremidade de um cabo, na alimentação do arduino ou VCC ou 5V;
  4. A outra extremidade deste último cabo, sai ligando nos outros pinos do display para verificar se os segmentos acendem;

Se nenhum segmento acender, possivelmente trata-se de um display anodo comum. Neste caso, refaça as etapas anterior com as seguintes alterações: (2) Ligar P2 ao VCC do arduino; (3) Ligar uma extremidade de um cabo, no terra ou GND do arduino.

Desta forma podemos identificar se o display é anodo ou catodo comum, como também, testar cada segmento do display.

voltar

experimentos

Neste experimento vamos fazer as ligações, via cabos, da placa do arduíno para o display de 7 segmentos com resistores em série para limitação de corrente em cada segmento do display. Podemos usar apenas um resistor em série com o pino comum, catodo ou anodo, que receberá a soma das correntes que passam em cada segmento, ou opcionalmente, usar um resistor em série em cada segmento. O resistor em série que vamos utilizar pode ser qualquer um da faixa de 270 a 680 ohms. Vamos usar resitores de 560 ohms. A Figura 11 ilustra um exemplo de conexoes dos pinos do arduíno ao display fixado no protoboard.

Ligações dos cabos do arduino aos pinos do display de 7 segmentos

Figura 11 - Ilustração das conexões dos pinos do arduino ao display de 7 segmentos

A Figura 11 é apenas ilustrativa, as ligações ou conexões vão depender dos testes da etapa anterior e do circuito que vamos montar. Para o nosso experimento, vamos montar o esquema eletrônico da Figura 12. No circuito temos o botão de reset, B0, previsto para reinicializar o arduino, quando este botão estiver pressionado. Temos também os botões B1 e B2, que quando pressionados, força o valor zero nos pinos do arduíno, conectados aos botões. Neste esquema eletrônico toda a corrente elétrica que passam pelos segmentos vão passar em R1, passando em R1 a soma de todas as correntes que passam pelos segmentos, quando ativados.

Montagem do circuito na protoboard

Figura 12 - Esquema eletrônico de montagem do experimento

 

Segue as etapas das ligações dos pinos do arduino, ao protoboard e aos componentes eletrônicos:

  1. Desconecte o cabo do arduino, da USB do computador
  2. Fixar todos componentes eletrônicos no protoboard;
  3. Efetuar a ligação do terra ou GND, e do Vcc ou 5V, no protoboard. Nesta etapa, se o protoboard conter as linhas horizontais, recomenda-se adotá-las;
  4. Em seguida ligar o Vcc do protoboard, nos pinos de R2, R3 e R4;
  5. No outro pino de R2, R3 e R4, ligar, respectivamente, ao pino dos puhsbutton B0, B1 e B2;
  6. No outro pino de B0, B1 e B2, ligar todos ao gnd, da placa do protoboard;
  7. Ligar os pinos comuns de R2, R3 e R4, com os botões, respectivamente, aos pinos de RESET, pino 2 e pino 3 do arduino;
  8. O resistor R1 deve ser ligado aos pinos comuns do display (normalmente 2 pinos do display) e, seu outro pino ligar ao GND, se for Catodo Comum, ou Vcc, se for anodo comum;
  9. Em seguida ligar todos os segmentos, do display, diretamente aos pinos de saída do arduino
  10. Conecte o cabo do arduino na USB do computador.
  11. Finalmente, chegou o momento da programação e gravação no arduino.

voltar

Programação

Nesta etapa, após a montagem e conexões do display no protoboard, o aluno deverá elaborar alguns programas, compilar e gravar no arduíno. Observe que durante a gravação, no arduino, os leds da placa do arduino ficam piscando por aproximadamente uns 2 segundos, e quando param de gravar, automaticamente o programa entra em execução na placa. Toda vez que ligar a placa do arduino, entra em execução o último programa gravado. O programa gravado somente desaperecerá quando se gravar um novo programa sobre o programa existente.

voltar

Instalação de bibliotecas e utilização do sensor ultrassônico

Uma biblioteca é um trecho de software que fornece funcionalidade específica a um programa, como por exemplo, a capacidade de escrever em um display de LCD ou de controlar a posição de um servomotor. O uso de uma biblioteca simplifica o desenvolvimento de aplicações, pois o código da biblioteca já está pronto, e só precisa ser incorporado ao programa em desenvolvimento para que suas funções possam ser acessadas e utilizadas pelo desenvolvedor. As bibliotecas padrões e adicionais, quando incorporadas na pasta de instalação do Arduino IDE, possibilita a adição e uso de funções ou métodos adicionais as funções básicas que acompanham o Arduino IDE. Este é um dos motivos da popularização desta plataforma.

Na plataforma Arduino existem três tipos diferentes de bibliotecas de software disponíveis:

  1. Core (biblioteca essencial, que acompanha a plataforma IDE, sem a necessidade de utilização da macro #include, Ex: digitalWrite()
  2. Padrão (bibliotecas que acompanha a plataforma IDE, mas com necessidade do uso da macro #include, Ex:#include <Stepper.h>
  3. Bibliotecas adicionais (geralmente acompanham os shields), que devem ser instaladas no computador
    1. Tem a opção de copiar os arquivos da biblioteca, na pasta do arduino
      • Toda biblioteca adicional deve ser copiada para a pasta \LIBRARY, onde estiver instalado o Arduino no computador. O nome da pasta deve possuir o mesmo nome do arquivo com extensão <nome.H> presente na pasta da biblioteca a ser copiada. Coloque esta pasta na mesma pasta onde estiver as demais bibliotecas instaladas.Neste link é abordado o uso do sensor ultrssônico, a partir de sua biblioteca. Este procedimento é equivalente ao procedimento deste video. Veja também esta opção, utilizando alertas sonoros. Veja também este exemplo de uso da biblioteca de comunicação serial e suas restrições.
      • Nas versões mais recentes do arduino (acima de 1.6), na aba do menu da IDE, Aduino / Preferências, tem a opção de indicar o local do Sketchbook. Neste local, na pasta /Library, o usuário poderá copiar pastas com novas bibliotecas também. O arduino, durante sua nova inicialização, verifica e adiciona à suas lista de bibliotecas, também estas pastas que foram adicionadas. Neste caso, o nome da pasta não precisa ser necessariamente o nome do arquivo com extensão H.
    2. Tem a opção de instalar bibliotecas, dentro da plataforma IDE
      • A partir da versão 1.6.7 do arduino existe a opção de instalar bibliotecas no ambiente da Plataforma IDE do arduino. Para isso entre em Sketch / Incluir Biblioteca / Gerenciar Bibliotecas / Procurar pela biblioteca e instalar. Neste caso a biblioteca tem que estar na lista do sistema.
      • Opcionalmente poderá fazer download do arquivo zipado da biblioteca, e seguir os seguintes procedimentos conforme detalhado no video, onde são instaladas duas bibliotecas. Observe que as bibliotecas, neste caso, serão instaladas no local indicado pelo Sketchbook (Arquivo / Preferências/ local do Sketchbook/). Utilizando este método não precisa reinicializar para o arduino enxergar a nova biblioteca. Como também, todas as novas bibliotecas ficam instaladas no local indicado pelo Sketchbook. Isto significa que basta mudar o local indicado pelo Sketchbook para uma nova pasta, quando iniciar um novo projeto, para fazer com que o arduino carregue apenas as suas bibliotecas nativas.
    3. Aplicação: Vamos implementar a leitura de distância a um obstáculo usando sensor ultrassonico

Existe também a opção de se criar bibliotecas para o Arduino. Lógico que vai requerer uma maior experiência do usuário em programação orientado a objetos. Veja alguns exemplos de criação de bibliotecas: 1 / 2 / 3.

Para quem trabalha com simulação usando o Proteus , veja onde baixar bibliotecas de sensores para o mesmo.

voltar

Referência Bibliográfica

voltar