Arduino é uma plataforma de prototipagem baseada em um microcontrolador (Figura MD1) de placa única, com suporte de entrada/saída embutido (embarcado), projetado para que o processo de utilização da eletrônica seja mais acessível. O hardware consiste em um dispositivo desenvolvido pela empresa Atmel Corporation projetado para um microcontrolador Atmel com possibilidade de comunicação diretamente com qualquer computador através de interfaces.
A empresa Atmel Corporation foi adquirida em 2016 pela empresa Microchip Technology Inc. A Microchip comercializa sistemas embarcados programáveis.
Arduino

Figura MD1 - Microcontrolador
O Microcontrolador é um pequeno computador num único circuito integrado, contendo um núcleo de processador, memória para armazenar programas e periféricos programáveis de entrada e saída.
O Arduino é open source, isso significa que os usuários podem criar e modificar sua estrutura sem preocupação com questões de direitos autorais e nem de licenciamento, e com uma grande vantagem que é a facilidade de utilização.
O projeto Arduino foi idealizado por um grupo de cinco pesquisadores: Massimo Banzi, David Cuartielles, Tom Igoe, Gianluca Martino e David Mellis, na cidade de Ivrea na Itália em 2005, no Interaction Design Institute (Instituto de Design e Interação), com o objetivo de utilizar em projetos escolares. A ideia era facilitar o trabalho dos designers e demais profissionais que desejavam incorporar recursos tecnológicos nos projetos, sem que eles tivessem conhecimentos de eletrônica e que seus custos fossem menores frente aos sistemas de prototipagem disponíveis na época.
No mercado existem diversos modelos de placas com diferentes configurações de memória interna, quantidade de portas, tamanhos e valores variados, como exemplo é possível citar as seguintes placas: Arduino UNO (Figura MD2), Arduino MEGA 2560 (Figura MD2), Arduino Leonardo, Arduino Due, Arduino Nano. Em geral, a escolha por uma determinada placa demanda da estrutura do projeto que será executado. As placas possuem:
-
Microprocessador (responsável pelos cálculos e tomada de decisão);
-
Memória RAM (utilizada para guardar dados e instruções, volátil);
-
Memória flash (utilizada para guardar o Software, não volátil);
-
Temporizadores (timers);
-
Contadores;
-
Clock, etc.
Detalhes dos diversos modelos disponível em:
https://www.arduino.cc/en/Main/Products
Para o desenvolvimento de nossos projetos utilizaremos o Arduino UNO e o Arduino MEGA 2560, esse último possui mais portas. O Arduino MEGA 2560 é o mais indicado para projetos maiores e mais complexos, sua placa permite controlar um maior número de dispositivos em comparação à placa UNO.
Figura MD2 - Placas Arduino


Arduino UNO
Arduino MEGA 2560
Clique na imagem para ampliar
O Arduino é a plataforma mais utilizada na área da Educação para o desenvolvimento de projetos de robótica. Os projetos desenvolvidos em Arduino podem melhorar a vida de muitas pessoas, como: sistemas para acessibilidades, seguranças, agricultura, pecuária, dentre outros.
A filosofia de fonte aberta da plataforma Arduino promove o surgimento de diversas comunidades na internet, que disponibilizam gratuitamente informações através de fóruns e materiais didáticos (livros, apostilas e vídeos) sobre a ferramenta, facilitando a pesquisa e promovendo discussões sobre os futuros projetos que serão implementados pelos usuários. Como exemplo: o website de divulgação do Arduino (https://www.arduino.cc/), um site com tutoriais (https://www.arduino.cc/) de diversos projetos e; e um fórum (http://playground.arduino.cc/) para sanar as dúvidas dos usuários.
As portas analógicas (Figura MD6) são usadas para ler valores de tensão contínua, com precisão, entre 0V e 5V. Diferente das portas digitais, as portas analógicas apenas leem valores de entrada e não enviam sinais de saída.
Características das Portas Analógicas:
-
Notação: As portas analógicas são representadas pela letra "A" seguida de um número (exemplo: A4).
-
Leitura de Valores: A leitura das portas analógicas resulta em valores que variam de 0 a 1023. Esta faixa representa a conversão de um sinal analógico para digital usando um conversor A/D (Analógico para Digital) com resolução de 10 bits (2^10 = 1024 valores).
-
0: Representa uma tensão de 0V.
-
1023: Representa uma tensão de 5V.
-
-
Uso Comum: As portas analógicas são frequentemente utilizadas para ler valores de sensores que fornecem uma saída analógica, como sensores de temperatura, luz, e potenciômetros.
Portas Analógicas
Figura MD6 - Portas Analógicas

Clique na imagem para ampliar
Portas PWM
As portas PWM (Pulse Width Modulation ou Modulação por Largura de Pulso) se diferenciam das portas digitais, pois permitem trabalhar com uma escala de valores que vai de 0 a 255, representando uma variação de tensão entre 0V e 5V. Isso permite obter resultados analógicos utilizando portas digitais.
Características das Portas PWM:
Escala de Valores: As portas PWM trabalham com valores de 0 a 255, onde:
-
0: Representa 0V.
-
255: Representa 5V.
-
Modulação: A técnica PWM modula a largura do pulso do sinal digital para controlar a potência média entregue a um dispositivo.
-
Indicação nas Placas: Nas placas Arduino, as portas PWM são indicadas pelo carácter ‘~’ na frente de seu número.
Aplicações das Portas PWM:
-
Controle de Velocidade de Motores: Ajustando o valor PWM, é possível controlar a velocidade de motores DC.
-
Controle de Luminosidade dos LEDs: Modificando o valor PWM, pode-se variar a intensidade luminosa de LEDs.
-
Geração de Sinais Analógicos e de Áudio: Através da modulação do sinal, é possível gerar tons e formas de onda analógicas.
Portas PWM na Placa Arduino Mega 2560:
A placa Arduino Mega 2560 possui 15 saídas PWM, distribuídas entre os seguintes pinos:
-
Pinos PWM: 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 44, 45 e 46.
Figura MD7 - Portas PWM

Clique na imagem para ampliar
Placa Arduino MEGA 2560
O Arduino MEGA 2560 possui as seguintes especificações:
-
Microcontrolador: ATmega2560;
-
Voltagem: 5V;
-
Entrada de Voltagem (recomendada): 7-12V;
-
Entrada de Voltagem (limite): 6-20V;
-
Portas Digitais: 54 (15 portas PWM);
-
Portas Analógicas: 16 (A0 até A15);
-
Memória Flash: 256KB (8KB usado no bootloader*);
-
SRAM: 8K (local das variáveis);
-
EEPROM: 4K (armazenar dados mesmo sem alimentação);
-
Velocidade de CLOCK: 16 MHhz;
-
Peso: 37g.
Bootloader é nome dado ao gerenciador de inicialização do Arduino. Executado pelo microcontrolador após um Reset (Boot).
Figura MD3 - Placas MEGA em detalhes

Clique na imagem para ampliar
Placa Arduino UNO
O Arduino UNO possui as seguintes especificações:
-
Microcontrolador: ATmega328;
-
Voltagem: 5V;
-
Entrada de Voltagem (recomendada): 7-12V;
-
Entrada de Voltagem (limite): 6-20V;
-
Portas Digitais: 14 (6 portas PWM);
-
Portas Analógicas: 6 (A0 até A5);
-
Memória Flash: 32KB (0,5KB usado no bootloader);
-
SRAM: 2K;
-
EEPROM: 1K;
-
Velocidade de CLOCK: 16 MHhz;
-
Peso: 25g.
Figura MD4 - Placas UNO em detalhes

Clique na imagem para ampliar
Quando conectado via USB (sigla de Universal Serial Bus, em português, Porta Universal), o circuito interno do Arduino é alimentado com uma tensão contínua de 5V. Esta porta, além da função de proporcionar energia, permite também a comunicação do Arduino com o computador. Assim, podemos enviar e receber dados entre o Arduino e o computador. Esta operação é possível com a instalação de um driver que emula uma porta serial através da porta USB.
Caso necessário, é possível alimentar a placa utilizando uma fonte externa ou uma bateria, com saída entre 7V e 12V contínua. Valores inferiores de alimentação podem causar instabilidade nos resultados de processamento do Arduino e valores superiores podem danificar a placa. A fonte pode ser conectada com um plug de 2,1 mm (centro positivo) no conector de alimentação.
A seguir são exibidos os conectores de alimentação (Figura MD5) para conexão de Shields e módulos na placa Arduino MEGA:
Alimentação do Arduino
Figura MD5 - Alimentação da Placa Mega

