Arduino - Uma plataforma open source para desenvolvimento de eletrônica
Quando pensamos em automação, sensoriamento e controle, normalmente fazemos uma associação com sistemas altamente complexos e caros. O Arduino veio diminuir esta distância entre as pessoas que gostam de programação e eletrônica destes sistemas de monitoramento. Vamos aprender mais sobre ele e as inúmeras possibilidades que temos.
Parte 3: A estrutura de programação do Arduino
Um projeto no Arduino é chamado de "sketch". Quando o Arduino é instalado é automaticamente criado no $HOME do usuário um
diretório chamado sketchbook. Este diretório é o padrão para todos os projetos criados.
Quando abrimos a IDE do Arduino ele abre um sketch vazio. Para que este sketch possa futuramente ser executado ele precisa obrigatoriamente ter duas seções: setup e loop. A seção setup é lida uma única vez no boot do Arduino. Nesta seção ficam as configurações do projeto. A seção loop é executada enquanto o Arduino estiver ligado. As instruções dentro dessa seção são lidas e executadas. Na seção loop está a leitura dos dados coletados pelos sensores e o acionamento de dispositivos caso alguma ação esteja prevista se algum sensor detectar uma variação já previamente definida no código.
Vejamos à estrutura do sketch:
Alguns cuidados são muito importantes na hora de programar: o arduino tem um limite de memória, são apenas 32 kb de memória, então o código tem que ser enxuto. É sempre bom comentar o código para que futuramente você saiba o que ele faz.
Para comentar uma linha usamos o sinal // (dupla barra). Para comentar várias linhas usamos /* no início da linha e */ no final. Todo o conteúdo entre estes caracteres serão entendidos como comentário.
Para ficar mais didático vou comentar diretamente no código o que o código faz:
Depois do código escrito é preciso compilar e enviá-lo através do cabo USB para o Arduino. Na IDE, abaixo do menu há a barra de botões com os botões responsáveis pela compilação do código e seu upload. O primeiro botão é responsável por sua compilação, o segundo por seu upload.
Devemos tomar muito cuidado com a sintaxe, nomes de variáveis, palavras reservadas e loops de controle. Qualquer erro impedirá a compilação do código.
Quando abrimos a IDE do Arduino ele abre um sketch vazio. Para que este sketch possa futuramente ser executado ele precisa obrigatoriamente ter duas seções: setup e loop. A seção setup é lida uma única vez no boot do Arduino. Nesta seção ficam as configurações do projeto. A seção loop é executada enquanto o Arduino estiver ligado. As instruções dentro dessa seção são lidas e executadas. Na seção loop está a leitura dos dados coletados pelos sensores e o acionamento de dispositivos caso alguma ação esteja prevista se algum sensor detectar uma variação já previamente definida no código.
Vejamos à estrutura do sketch:
void setup()
{
}
void loop()
{
}
Alguns cuidados são muito importantes na hora de programar: o arduino tem um limite de memória, são apenas 32 kb de memória, então o código tem que ser enxuto. É sempre bom comentar o código para que futuramente você saiba o que ele faz.
Para comentar uma linha usamos o sinal // (dupla barra). Para comentar várias linhas usamos /* no início da linha e */ no final. Todo o conteúdo entre estes caracteres serão entendidos como comentário.
Construindo nosso primeiro projeto
Nosso primeiro código é muito simples. A ação produzida por ele será ligar 2 LEDs alternadamente com um intervalo de 1 segundo entre eles.Para ficar mais didático vou comentar diretamente no código o que o código faz:
// início da seção setup void setup() {
// definindo as duas variáveis que serão responsáveis pelos dois leds. Um led vermelho na porta // digital 12 e um led verde na porta digital 8 byte ledVermelho = 12; byte ledVerde = 8;
// definimos através do "pinMode" que o ledVermelho e o ledVerde serão utilizados como saída // definimos através do "digitalWrite" que o ledVermelho inicia com o valor 1 – ligado // definimos através do "digitalWrite" que o ledVerde inicia com o valor 0 – desligado pinMode(ledVermelho,OUTPUT); digitalWrite(ledVermelho,1);
pinMode(ledVerde,OUTPUT); digitalWrite(ledVerde,0); }
// agora começa a seção que será repetida indefinidademente void loop() {
// ele já começa dando um tempo de 1 segundo. // no arduino o tempo é medido em milisegundos delay(1000);
// o ledVermelho fica desligado, o ledVerde fica ligado digitalWrite(ledVermelho,0); digitalWrite(ledVerde,1);
// espera um segundo delay(1000);
// o ledVermelho fica ligado, o ledVerde fica desligado digitalWrite(ledVermelho,1); digitalWrite(ledVerde,0);
// quando chega no fim do código ele volta para o início da seção "void loop()" e tudo recomeça. }
Depois do código escrito é preciso compilar e enviá-lo através do cabo USB para o Arduino. Na IDE, abaixo do menu há a barra de botões com os botões responsáveis pela compilação do código e seu upload. O primeiro botão é responsável por sua compilação, o segundo por seu upload.
Devemos tomar muito cuidado com a sintaxe, nomes de variáveis, palavras reservadas e loops de controle. Qualquer erro impedirá a compilação do código.
Qual kit e onde você indica pra quem quiser comprar?
Um abraço.