O que é Arduino?

o_que_e_arduino

Assim como existe o software livre (no qual qualquer pessoa pode usar, copiar e modificar livremente) existe o hardware livre. É neste contexto que entra o Arduino.

Arduino é uma plataforma de prototipagem eletrônica de hardware livre, criada pelos professores Massino Banzi e David Cuartilles em 2005 na Itália, com intuito de oferecer uma placa única, de baixo custo e que facilitasse o ensino de programação e eletrônica para seus alunos, bem como incentivá-los a criar seus próprios projetos de automação e robótica.

Como na época havia certa escassez destes materiais de prototipação a um preço acessível, o Arduino começou a ganhar rapidamente espaço. Hoje é uma das plataformas mais utilizadas por empresas e universidades tanto para trabalhos educacionais quanto profissionais. Eu sou prova disso, afinal já trabalhei em empresas que utilizavam o Arduino profissionalmente em projetos de controle e automação.

A vantagem desta placa é que o estudante ou profissional não precisam entender de Arquitetura de Computadores ou muito menos trabalhar com Compiladores. A própria plataforma do Arduino já se encarrega de abstrair toda a complexidade favorecendo o aprendizado de uma maneira mais simples.

 

Hardware do Arduino e microcontoladores

microcontrolador_arduino_unoAtualmente existem diversos modelos de Arduino, sendo a mais popular a versão UNO. O Arduino UNO consiste de um microcontrolador ATMEL ATMEGA328 de 8 bits 16 MHz, 32 kB de memória flash, 1 kB de memória EEPROM e 2 kB de RAM .

Se você não sabe o que é um microcontrolador, entenda que é uma espécie de “computador” mais simplificado em um único circuito integrado que consiste de memória, unidade de processamento e pinos de entrada e saída de dados.

Diferentemente do processador do seu computador que é fabricado para ser de propósito geral (ou seja, feito para rodar diversos tipos de softwares e aplicações), o microcontrolador tem propósito específico. São muito comuns em fornos micro-ondas, aparelhos de DVD, ar-condicionado, dentre outros eletrônicos e eletrodomésticos. São esses componentes que gerenciam, por exemplo, a movimentação de pequenos motores, o tempo de operação de uma determinada tarefa, acionamento de sinais sonoros, enfim.

 

Qual linguagem usada no Arduino?

ide_arduino

IDE do Arduino

O Arduino UNO é uma excelente ferramenta para quem quer iniciar no mundo da robótica e automação. Sua programação é bem simples, baseada nas linguagens C/C++. Já ouvi pessoas dizendo que a linguagem que roda no Arduino é a “Wiring”, mas estão erradas! Wiring é uma plataforma também de prototipagem eletrônica composta por uma linguagem de programação e uma interface de desenvolvimento (as famosas IDEs), cuja essência é C++.

Se você sabe programar em C ou C++, certamente terá facilidade em programar o Arduino. Contudo, algumas sintaxes (formas de se escrever o código) mudam quando for desenvolver o programa na plataforma.

Com funções nativas do Arduino, é possível configurar as portas (pinos) digitais e analógicas da placa a fim de receber e enviar dados. As portas digitais basicamente servem como um “liga e desliga”. Se você quer acender um LED, por exemplo, basta enviar um sinal de “ligado” em uma porta digital que está conectado o LED, liberando assim uma pequena corrente a ele. Já se você quer fazer a leitura de um sensor, por exemplo, é recomendável a utilização das portas analógicas que recebem os dados conforme uma variação na tensão de entrada do pino.

 

Como aprender Arduino de forma fácil?

Para quem tem vontade de aprender a trabalhar com Arduino, mas não quer ficar caçando na internet vários conteúdos de forma desordenada e muitas vezes irrelevante e sem didática, recomendo o Curso de Robótica e Automação Residencial que ensina desde o básico de programação para quem não sabe nada, além de eletrônica e, claro, as principais dicas e técnicas para desenvolver incríveis projetos com nosso querido Arduino!

 


hellynsonAutor
Hellynson Cássio
Bacharel em Ciência e Tecnologia pela Universidade Federal de Alfenas, Técnico em Informática pelo Instituto Federal de São Paulo e pós-graduando em Engenharia Elétrica com ênfase em Automação. Já desenvolveu softwares científicos, sistemas web, aplicações integradas com Kinect e Arduino e sistemas de automação residencial. Tem experiência também em Ensino de Informática, Robótica e Matemática.