A cultura do “faça você mesmo” (do it yourself, DIY) tem crescido com a facilidade de encontrar tutoriais na Internet sobre como fazer praticamente qualquer coisa. Cada vez mais pessoas tem se aventurado a fabricar suas próprias roupas, móveis, programas de computador e até mesmo aparelhos.
Nas áreas de computação e eletrônica, o “faça você mesmo” é possibilitado por tecnologias como o Raspberry Pi e o Arduino.
Já falamos aqui do Raspberry Pi, mas ele é um computador inteiro. Pode até ser usado como desktop para tarefas cotidianas, como navegar na Internet ou redigir um trabalho escolar. Dependendo do que se queira fazer, ele pode ser demais. Seria como matar uma barata com um tiro de canhão.
Hoje, vamos falar do Arduino!
Arduino é uma plataforma programável de prototipagem eletrônica baseada em hardware e software fáceis de usar e livres (de código aberto). Há diversos modelos de placas com microcontroladores e pinos que podem ser usados para ler entradas – um dedo que aperta um botão, algo que se aproxima ou uma mensagem do X/Twitter – e transformá-las em saídas – acender um LED, ligar um motor, postar algo em uma rede social.
O Arduino foi criado na Itália em 2005, no Interaction Design Institute Ivrea, por um grupo de pesquisadores que queriam oferecer a estudantes um dispositivo que fosse ao mesmo tempo fácil de programar e barato.
Hoje, no Brasil, você pode comprar uma placa Arduino a 20 ou 30 reais. Existe kit de aprendizado, que vem com a placa e diversos componentes para serem usados em conjunto, e curso online gratuito.
A programação do Arduino é feita usando a linguagem de programação do Arduino (que faz lembrar as linguagens C/C++) e um ambiente de desenvolvimento integrado (do inglês Integrated Development Environment, IDE), mais especificamente o oficial do Arduino, chamado de Arduino IDE.
Você verá a seguir como instalar o Arduino IDE no Linux e usá-lo para dar seus primeiros passos com o Arduino. Como referência, vou usar a distribuição Linux Kamarada 15.5 e a placa Arduino UNO R3 SMD, que é a placa mais usada e documentada de toda a família Arduino, indicada para quem está iniciando na eletrônica e mexendo com essa plataforma pela primeira vez.
Não é o objetivo deste tutorial te ensinar a programar o Arduino. Aqui, vamos apenas garantir que as ferramentas necessárias para isso estejam funcionando no seu computador. Você pode encontrar explicações mais detalhadas sobre a programação do Arduino em cursos como esse.
Curiosidade: o nome Arduino vem de um bar onde alguns dos fundadores do projeto costumavam se reunir. O nome do bar, por sua vez, faz menção a Arduíno de Ivrea, que foi rei da Itália de 1002 a 1014.
Baixando e instalando o Arduino IDE
Para baixar o Arduino IDE, acesse o site oficial do Arduino e clique em Software:
Na página seguinte, clique no link do arquivo ZIP (ZIP file) para Linux:
Opcionalmente, você pode fazer uma doação em dinheiro para o Projeto Arduino. Ou apenas baixar o Arduino IDE clicando em Just Download:
Também opcionalmente você pode se inscrever para receber e-mails com novidades do Arduino. Se não quiser, basta clicar em Just Download (apenas baixar):
O download do arquivo ZIP será iniciado automaticamente.
No momento em que escrevo, o Arduino IDE está na versão 2.3.2 e o arquivo ZIP é chamado arduino-ide_2.3.2_Linux_64bit.zip
.
O navegador deve baixá-lo para a pasta Downloads. Quando o download terminar, abra essa pasta, clique com o botão direito do mouse no arquivo ZIP e clique na opção Extrair aqui:
O conteúdo do arquivo ZIP é extraído para uma pasta com o mesmo nome dele. Mova essa pasta para algum local que seja fácil de você lembrar.
Por exemplo, eu criei uma pasta programas
dentro da minha pasta pessoal (/home/vinicius/
) e movi a pasta do Arduino IDE (arduino-ide_2.3.2_Linux_64bit
) para lá. Portanto, o caminho para o Arduino IDE no meu computador ficou sendo:
/home/vinicius/programas/arduino-ide_2.3.2_Linux_64bit
Vamos facilitar iniciar o Arduino IDE pelo menu Atividades. Para isso, vamos criar um arquivo .desktop
para ele.
Abra o aplicativo Editor de texto (gedit), copie e cole o seguinte conteúdo:
1
2
3
4
5
[Desktop Entry]
Name=Arduino IDE
Exec=/home/vinicius/programas/arduino-ide_2.3.2_Linux_64bit/arduino-ide
Icon=/home/vinicius/programas/arduino-ide_2.3.2_Linux_64bit/resources/app/resources/icons/512x512.png
Type=Application
(ajuste os caminhos para os arquivos conforme o seu caso)
Salve esse arquivo em ~/.local/share/applications
com o nome de arduino-ide.desktop
.
Ainda precisamos fazer mais uma configuração. Para isso, abra uma janela de terminal e mude para usuário administrador (root):
1
$ su
Para permitir que o Arduino IDE acesse a porta serial e carregue o código para sua placa, execute:
1
# echo 'SUBSYSTEMS=="usb", ATTRS{idVendor}=="2341", GROUP="plugdev", MODE="0666"' > /etc/udev/rules.d/99-arduino.rules
Por fim, reinicie seu computador para que as alterações tenham efeito.
Iniciando o Arduino IDE
Para iniciar o Arduino IDE, abra o menu Atividades, no canto superior esquerdo da tela, comece a digitar arduino
e clique no ícone do IDE:
Eis a tela do Arduino IDE:
Traduzindo a interface
O Arduino IDE vem em inglês por padrão, mas ele possui uma tradução para o português brasileiro.
Para aplicá-la, abra o menu File (Arquivo) e clique em Preferences (Preferências):
Em Language (Linguagem do Editor), selecione português (Brasil):
Clique em OK.
A interface é recarregada e traduzida.
Note que o código com comentários em inglês não é traduzido.
Programando o Arduino
Para ter uma ideia de como fazer para programar o Arduino, vamos usar um exemplo de programa que já vem com o Arduino IDE, que é o Blink (piscar).
Se você já tem alguma experiência com programação, sabe que toda linguagem de programação tem um exemplo didático chamado de “olá, mundo” (hello, world), que é o programa mais simples que se pode escrever com aquela linguagem de programação.
O programa Blink mostra a coisa mais simples que você pode fazer com um Arduino, que é fazer seu LED embutido piscar.
Após iniciar o Arduino IDE, conecte a placa Arduino ao computador usando o cabo USB que a acompanha.
Informe para o Arduino IDE qual é o modelo da sua placa indo no menu Ferramentas > Placa > Arduino AVR Boards > Arduino Uno:
Em seguida, vá no menu Ferramentas > Porta e informe para o Arduino IDE em qual porta sua placa está conectada (no meu caso, /dev/ttyUSB0
):
Para abrir o programa Blink, vá em Arquivo > Exemplos > 01. Basics > Blink:
O IDE abre uma nova janela com o código do programa de exemplo:
Normalmente, começaríamos a programação do Arduino escrevendo um programa. Pulamos essa etapa carregando esse exemplo.
Após digitar (ou, nesse caso, abrir) o programa, e antes de carregá-lo para a placa, é uma boa prática verificá-lo. Para isso, clique no botão Verificar:
O Arduino IDE percorre todo o código e verifica se há erros. Se ele encontra algum erro, o aponta. Senão, compila o programa. Você pode usar isso para detectar eventuais erros no seu código e corrigi-los antes de carregá-lo de fato para a placa.
Como é um programa de exemplo do próprio Arduino IDE, não deve ter erros.
O próximo passo é clicar no botão Carregar:
Com isso, o programa é carregado para a placa:
Observe que agora a placa age de acordo com o programa:
E esse programa fica armazenado de forma permanente na memória interna do Arduino: se você desconectar a placa do computador e liga-la à energia (usando o mesmo cabo USB e um carregador de celular, por exemplo), verá que ela fará o que foi programada para fazer. A placa funciona independente do computador.
Solução de problemas
Pode acontecer que ao tentar carregar o programa para a placa você receba a seguinte mensagem de erro:
1
avrdude: ser_open(): can't open device "/dev/ttyUSB0": Permission denied
Se isso acontecer, você precisa verificar a permissão da porta serial e adicionar seu usuário ao grupo dela. Para fazer isso, abra o terminal e execute:
1
$ ls -l /dev/ttyUSB0
Esse comando deve produzir uma saída como:
1
crw-rw---- 1 root dialout 188, 0 ago 22 2024 /dev/ttyUSB0
Note que a porta /dev/ttyUSB0
pertence ao grupo dialout
.
Adicione seu usuário a esse grupo:
1
# usermod -a -G dialout seu_nome_de_usuario
Reinicie seu computador e tente novamente.
Mais um exemplo
Agora que você já fez o LED da própria placa piscar, pode incrementar o experimento e fazer o Arduino controlar um LED externo.
Para isso, você vai precisar, além da placa e do cabo USB, de:
- 1 LED 5mm;
- 1 resistor de 220 ohm;
- 1 protoboard; e
- 2 fios de ligação (jumpers) macho-macho.
Monte o circuito da seguinte forma:
- conecte a porta digital 10 do Arduino a uma extremidade do resistor;
- conecte a perna longa (positiva) do LED à outra extremidade do resistor; e
- conecte a perna curta (negativa) do LED ao pino GND do Arduino.
(diagramas feitos usando o programa Fritzing, e baseados em um diagrama disponibilizado pela comunidade Johnny-Five)
Você pode reaproveitar o código do programa de exemplo Blink, apenas substitua LED_BUILTIN
por 10
. Vai ficar assim:
1
2
3
4
5
6
7
8
9
10
11
12
13
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(10, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(10, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(10, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
Verifique e carregue o programa para a placa e este será o resultado:
Leitura recomendada
Agora que o Arduino IDE já está instalado e funcionando no seu computador, e você já sabe como usá-lo para programar sua placa Arduino, pode continuar suas aventuras em links como os seguintes: