



Se você trabalha com eletrônica, muito provavelmente conhece ou já ouviu falar sobre o Arduino. Porém, se você é de alguma outra área, digamos, arte e design, também é bem provável que já tenha ouvido falar sobre essa plataforma de desenvolvimento open-source. O Arduino é um projeto que se popularizou por todo o mundo devido à sua praticidade, facilidade de trabalho e preço competitivo. Nesse artigo, vamos apresentar o que é o Arduino. Como ele surgiu, seus aspectos de hardware e software, bem como um passo a passo para configurar um ambiente de trabalho inicial e implementar o seu primeiro projeto com o Arduino. Ao fim desse texto, espera-se que você saiba explicar e entenda em que consiste o sistema Arduino e também seja capaz de começar a desenvolver as suas primeiras aplicações. Vamos lá!
Em poucas palavras, Arduino é uma plataforma de desenvolvimento de projetos eletrônicos (ou prototipagem eletrônica, como também é comumente dito), constituída tanto de hardware e software. Ele está disponível por meio da licença Creative Commons Attribution Share-Alike license. Isso quer dizer que todos os arquivos de design do projeto Arduino estão disponíveis gratuitamente na internet e que seu software é open-source. Além disso, a plataforma pode ser utilizada tanto para trabalhos pessoais como para fins comerciais, desde que os créditos sejam atribuídos à marca Arduino e os arquivos de projeto também sejam disponibilizados sob a mesma licença.
Para saber mais sobre a história do Arduino, recomendamos a ótima palestra proferida por Massimo Banzi, realizada nos famosos Ted Talks:

Vamos falar um pouco sobre o que o hardware do Arduino.
Todas as informações aqui presentes estão disponíveis na página oficial do Arduino e recomendamos que o leitor a explore como complemento a esse texto.
Não existe apenas um modelo de Arduino. Existem várias placas disponíveis, cada qual com diferentes níveis de complexidade e funcionalidades diferentes.
São 6 classes de plataformas de prototipagem Arduino disponíveis no mercado atualmente:
Vamos focar no Arduino UNO, uma placa entry-level e um dos modelos mais populares e de custo mais acessível.
É uma placa ideal para quem está dando os primeiros passos na eletrônica e querendo descobrir o que é Arduino.
Como visto na figura acima, a placa possui uma série de pinos disponíveis para ligação e conectores para interfacear com o mundo externo. O MCU é um Atmega328p.
As principais características da placa são:
A placa pode ser alimentada tanto pelo cabo USB como por adaptador AC/DC. Todos os features do microcontrolador estão disponibilizados para interfacear com o mundo externo.
Em geral, as entradas analógicas são utilizadas para ler sensores externos e as saídas PWM e outputs digitais são utilizadas para controlar motores e atuadores e acionar drivers para cargas externas.
A IDE do Arduino também é open-source. Seu ambiente gráfico foi desenvolvido em Java e baseado em Processig e outras linguagens open-source.
O ambiente de programação está disponível para Windows, MAC e Linux. O download pode ser feito diretamente na página oficial.
A linguagem de programação utilizada para escrever os códigos para Arduino é baseada nas tradicionais C/C++ (com modificações) e possui um grau de abstração muito alto e uma série de bibliotecas que encapsulam a maior parte da complexidade do microcontrolador.
Esse alto grau de abstração e o set de bibliotecas são os grandes responsáveis por fazer a programação mais intuitiva e rápida, pois não é necessário que o desenvolvedor conheça os registradores, os detalhes de memória e a dinâmica do processador.

Vemos que a IDE é bem simples e enxuta.
No alto temos as seguintes abas:
Essa última em especial é interessante de ser sempre frequentada pelo usuário pois possui referências importantes e é a principal fonte de informações e troubleshooting.
Logo abaixo desse menu principal têm-se alguns ícones de atalho. São eles (da esquerda para a direita):

Agora que já sabemos o que é e quais as características de software e hardware do Arduino, vamos preparar e configurar o nosso setup de desenvolvimento.
Do ponto de vista do hardware, basta alimentarmos a placa e conectarmos o cabo USB ao computador.
As demais configurações são feitas todas pela IDE. Veja os passos abaixo:
As figuras abaixo ilustram os passos 2 e 3.


Após essas configurações a IDE está pronta para carregar os programas desenvolvidos no Arduino e rodar qualquer exemplo disponível.
Vamos agora fazer o primeiro exemplo no Arduino. O exemplo mais simples, geralmente o primeiro feito para se testar uma placa ou quando se está aprendendo pela primeira vez, é o famoso “Led Blink”, isto é, vamos escrever um programa para fazer um led piscar.
A plataforma Arduino UNO possui um led onboard previamente conectado ao estado lógico do pino 13. Assim, podemos utilizar esse led para o nosso exemplo.
Outra boa notícia é que a IDE dispõe de uma boa e completa biblioteca de exemplos que podem ser usados como base para uma gama muito variada de aplicações.
Para acessar o exemplo do Led Blink, vá em Files → Examples → Basics → Blink.
Na figura abaixo vemos o código desse exemplo:

No exemplo acima podemos ver as duas partes que sempre vão estar presentes em todos os seus projetos com Arduino.
A função void Setup() e a função void loop(). A primeira é responsável por configurar e fazer todos os settings necessários para uma dada aplicação. Por exemplo, no caso do Led Blink, vemos a linha: pinMode( Led, OUTPUT) .
Essa linha de código é responsável por inicializar as portas digitais como saídas. Outras configurações como frequência de sinais PWM, inicialização de portas como entrada, configurações de canais seriais, dentre outros, são todas feitas nessa função.
A segunda rotina consiste no loop infinito que se repetirá por toda a aplicação. Ou seja, após o Arduino ser energizado, o primeiro trecho de software que vai rodar é a função void setup() e, logo após, o software entre na rotina void loop(), e repete o código dentro dessa rotina continuamente.
É nesse loop infinito que deve ser colocado o código referente a aplicação em si.
No caso do Led Blink temos o seguinte código no loop infinito:

Nesse código, é chamada a função digitalWrite(led, High), responsável por atribuir nível alto ao pino led, que no caso corresponde ao pino 13 (repare na figura 6 que led é uma variável inteira para a qual foi atribuída o valor 13), ou seja, o led ligado ao pino 13 é ativado.
Logo em seguida é chamada a função delay(1000), que pausa a execução do loop por mil milissegundos, isto é, por um segundo.
Depois de aguardar esse tempo, a função digitalWrite() é novamente chamada, mas dessa vez para atribuir nível lógico baixo ao pino 13, ou seja, para desligar o led ligado ao pino 13. Por fim, novamente a funçao delay(1000) é chamada para fazer mais uma pausa de um segundo.
Dessa forma, o led fica piscando em intervalos contínuos de um segundo. Eis o nosso exemplo Led Blink ! Simples não é ?!
Para carregar o código na placa basta clicar no ícone de Upload. O firmware será gravado no microcontrolador Atmel da placa e a primeira aplicação para fazer o led piscar estará pronta.
Sempre que o Arduino for energizado o led do pino 13 ficará piscando em intervalos regulares de um segundo.
É uma prática comum e muito recomendada que todo projeto de eletrônica seja primeiro simulado via software antes de ser montado no hardware.
Além de ser uma boa prática que permite ao desenvolvedor debugar e identificar erros no firmware antes mesmo de embarcar na plataforma, os simuladores também permitam que aplicações sejam desenvolvidas sem que a placa esteja necessariamente presente.
Um simulador muito popular para circuitos com Arduino é o Fritzing. É um software open-source que dispõe de uma ótima e intuitiva interface gráfica.
Se você chegou até aqui, então você já sabe o que é e como funciona a plataforma Arduino. O exemplo do Led Blink é uma aplicação muito básica e recomendamos que você explore os outros exemplos disponíveis na IDE e acompanhe os posts aqui do blog.
A plataforma Arduino permite que qualquer pessoa desenvolva aplicações eletrônicas microcontroladas, e foi um marco na popularização de sistemas interativos nas áreas de design e artes, pois tornou a vida de muitos profissionais fora da área de eletrônica muito mais fácil.
Para quem trabalha com eletrônica, seja como profissional ou por hobby, o arduino permite a prototipagem e a implementação de projetos de forma rápida e com baixo custo.
Não sendo necessário enveredar por datasheets gigantes ou esmiuçar placas fabricadas artesanalmente à procura de problemas. Hands on!
Tenha a Metodologia Eletrogate na sua Escola! Conheça nosso Programa de Robótica Educacional.
|
Se você trabalha com eletrônica, muito provavelmente conhece ou já ouviu falar sobre o Arduino.
Encontre tudo na Loja Eletrogate com frete grátis para compras acima de R$ 200
Respostas de 2
Excelente post. Tomara que o site de vocês cresça cada dia mais.
muito bom gostei demais