Você está na página 1de 17

MANUAL INICIAÇÃO AO

ARDUINO
NIVEL I

www.arduinoportugal.pt 1
Fazer piscar um LED
O que é necessário Esquema de montagem
1 x Arduino UNO
1 x LED
1 x Resistência de 220Ω

Descrição Montagem
Colocar o LED na placa de ensaios (breadboard) como demonstrado na figura ao lado,
sem esquecer do que foi demonstrado anteriormente sobre como realizer ligações numa
placa de ensaios.

Usando um fio condutor, ligue o terminal negativo do LED a um dos pinos GND
disponíveis no Arduino. Para identificar no LED qual é o terminal negativo e qual é o
positivo, saiba que o negativo é o mais curto, e o positivo é o mais comprido.

Ligue o terminal positivo do LED a um Resistência de, pelo menos, 220Ω como na figura.
Usando um fio condutor, ligue o outro terminal da resistência ao pino digital 2 do
Arduino.

www.arduinoportugal.pt 2
Fazer piscar um LED
Programação Descrição Programação
Na função setup() , definimos o modo de operação do pino digital 2 como saída usando o
void setup() { comando pinMode(2,OUTPUT) . Na função loop() , usamos o comando digitalWrite(2,HIGH)
para colocar no pino digital 2 um valor de saída alto ( HIGH ), correspondente a 1. Com isso,
pinMode(2,OUTPUT); ele apresentará tensão positiva de 5 volts, fazendo com que o LED acenda.
}
Com o comando delay(1000) , o microcontrolador entrará em pausa na execução do programa
durante um segundo (1000ms), como vimos anteriormente na referência da linguagem C para
void loop() { o Arduino, o tempo determinado entre parênteses para esse comando deve ser em
milissegundos. Ou seja, 1.000 milissegundos, que é igual a 1 segundo.
digitalWrite(2,HIGH);
delay(1000); Continuando, colocamos a linha de comando digitalWrite(2,LOW) onde colocamos no pino
digitalWrite(2,LOW); digital 2 um valor de saída baixo ( LOW ), correspondente a 0. Com isso, ele apresentará
tensão neutra (0 volts) e o LED apagará.
delay(1000);
} Com a repetição do comando delay , teremos mais uma pausa de um segundo antes de o
programa voltar novamente ao início da função loop() e voltar a executar todo o código
novamente até que o Arduino seja desligado, ou receba nova programação.

www.arduinoportugal.pt 3
Como acionar um Relé
O que é necessário Esquema de montagem
1 x Arduino UNO
1 x Relé

Descrição Montagem
Desta vez nao vamos necessitar da placa de ensaios para esta experiência.

Usando um fio condutor, ligue o terminal negativo do Relé a um dos pinos GND
disponíveis no Arduino.

Usando outro fio condutor vamos ligar o terminal positivo do Relé ao pino +5V do nosso
Arduino.

Usando outro fio condutor vamos ligar o terminal de “Sinal“ do Relé ao pino D7 do nosso
Arduino.

O Relé permitirá ligar/desligar qualquer dispositivo alimentado a 220v como uma


lâmpada, aquecedor, eletrodomestico, etc (máximo 5A)

www.arduinoportugal.pt 4
Como acionar um Relé
Programação Descrição Programação
Na função setup() , configuramos o modo de operação do pino digital 7 como saída usando o comando
void setup() { pinMode(7,OUTPUT) . Na função loop() , usamos o comando digitalWrite(7,HIGH) para colocar no pino
digital 2 um valor de saída alto ( HIGH ), correspondente a 1. Com isso, ele apresentará tensão positiva de 5
pinMode(7,OUTPUT); volts, fazendo com que o relé se mantenha desligado (com os contactos internos abertos).
}
Com o comando delay(2000), o microcontrolador entrará em pausa na execução do programa durante 2
segundos, já que, como vimos anteriormente no exemplo anterior.
void loop() {
Continuando, colocamos a linha de comando digitalWrite(2,LOW) onde colocamos no pino digital 2 um
digitalWrite(2,HIGH); valor de saída baixo ( LOW ), correspondente a 0. Com isso, ele apresentará tensão neutra (0 volts) e ligará o
delay(2000); Relé (fechando os contactos internos) tal como um interruptor lá de casa.
digitalWrite(2,LOW);
NOTA: O modulo Relé, inversamente ao led, funciona de forma inversa:
delay(2000); - Liga com LOW, Desliga com HIGH, devido à constituição interna do modulo relé.
}

www.arduinoportugal.pt 5
Fazer sequência 3 leds (Semáforo)
O que é necessário Esquema de montagem

1 x Arduino UNO
3 x LEDs (cores diferentes)
3 x Resistências de 220Ω

Descrição Montagem
Coloque os LEDs na placa de ensaios conforme mostrado na figura do esquema de
montagem. Usando um fio condutor, ligue o terminal negativo do primeiro LED (o
terminal mais curto), a um dos pinos GND disponíveis no Arduino. Em seguida, faça o
mesmo com o terminal negativo do segundo e terceiro LED.

Agora ligue o terminal positivo do primeiro LED a uma Resistência de pelo menos 220Ω
e, em seguida, ligue o outro terminal da Resistência, usando um fio condutor, ao pino
digital 4 do Arduino.

Seguindo o mesmo esquema do primeiro LED, ligue o terminal positivo do segundo LED a
uma Resistência de pelo menos 220Ω e ligue o outro terminal da Resistência, usando um
fio condutor, ao pino digital 3 do Arduino.

Finalizando, ligue o terminal positivo do terceiro LED a uma Resistência de pelo menos
220Ω e ligue o outro terminal da Resistência, usando fio condutor, ao pino digital 2 do
Arduino.

www.arduinoportugal.pt 6
Fazer sequência 3 leds (Semáforo)
Programação Descrição Programação

Na função setup() , como deve ter notado, ajustamos os pinos 2, 3 e 4 como saída usando os comandos
void setup() { pinMode(2,OUTPUT), pinMode(3,OUTPUT) e pinMode(4,OUTPUT) . Isso permitirá colocar ou não
pinMode(2,OUTPUT); tensão neles, ativando ou desativando algo.
pinMode(3,OUTPUT); Já na função loop() usamos os comandos digitalWrite para colocarmos nos pinos digitais 2, 3 e 4 um
pinMode(4,OUTPUT); valor de saída alto ( HIGH ), correspondente a 1. Com isso, eles apresentarão tensão positiva de 5 volts e
} neste caso, acenderá os LEDs. Como já vimos na experiência anterior, usamos delay(1000) para fazer
uma pausa.

void loop() { Na sequência, usamos o comando digitalWrite novamente para colocarmos nos pinos digitais 2, 3 e 4 um
valor de saída baixo ( LOW ), correspondente a 0. Com isso, eles apresentarão tensão neutra (0 volts) e os
digitalWrite(2,HIGH); LEDs passam a desligados.
delay(1000);
digitalWrite(2,LOW);
digitalWrite(3,HIGH);
delay(1000);
digitalWrite(3,LOW);
digitalWrite(4,HIGH);
delay(1000);
digitalWrite(4,LOW);
}
www.arduinoportugal.pt 7
Utilizar um Botão/Interruptor
O que é necessário Esquema Montagem

1 x Arduino UNO
1 x Botão
1 x Resistência de 10KΩ

Descrição Montagem

Guiando-se pela figura ao lado, ligue uma Resistência de 10KΩ entre o pino GND e o pino
digital 2 do Arduino, usando dois fios condutores.

Também usando fios condutores, ligue o botão entre o pino digital 2 e o pino 5V do
Arduino.

www.arduinoportugal.pt 8
Usar um Botão/Interruptor
Programação Descrição Programação
Declaramos duas variáveis do tipo inteiro, para indicar em qual pino digital está ligado o LED, que será
int led = 13; ligado ou desligado pela atuação do botão ( int led = 13 ) e para indicar em qual pino digital está conectado
int botao = 2; o botão ( int botao = 2 ). Uma terceira variável guardará o estado do botão ( int press = 0 ).
int press = 0;
Na função setup() , ajustamos o pino digital do LED para saída usando pinMode(led,OUTPUT), e o pino
digital do botão para entrada usando pinMode(botao,INPUT) . Agora, na função loop() , lemos o estado do
void setup() { pino digital do botão e armazenamos o que for lido na variável press , usando press = digitalRead(botao) .
pinMode(led,OUTPUT);
pinMode(botao,INPUT); Então, basta verificar se o estado do botão for HIGH (ou seja, está pressionado), acendemos o LED; caso
contrário (o estado do botão for LOW ), apagamos o LED.
}
void loop() { Tudo isso é feito usando if(press == HIGH) para ver se o botão está pressionado,
press = digitalRead(botao); digitalWrite(led,HIGH) para acender o LED, e digitalWrite(led,LOW) para apagar o LED.
if(press == HIGH) {
digitalWrite(led,HIGH) ;
} else {
digitalWrite(led,LOW);
}
}

www.arduinoportugal.pt 9
Usar um Potenciómetro (resistência variável)
O que é necessário Esquema de montagem

1 x Arduino
1 x Potenciómetro de 1 KΩ

Descrição Montagem

Usando dois fio condutores, os terminais laterais do potenciómetro (indiferente qual


deles) serão ligados aos pinos GND e 5V do Arduino.

Usando um terceiro fio condutor, o terminal central do potenciômetro será ligado ao


pino analógico A0 do Arduino.

www.arduinoportugal.pt 10
Usar um Potenciómetro (resistência variável)
Programação Descrição Programação
Na função setup() , iniciamos a comunicação serial usando para acompanharmos a
void setup() { leitura do Serial Monitor. Com Serial.println(analogRead(A0)) , lemos o valor lido no
pino analógico A0 do Arduino e enviamos via ligação serial para o computador (pela
Serial.begin(9600); porta USB).
} Usamos também o delay(100) para uma espera de apenas 100 milissegundos apenas
para os números não passarem tão rápido.

void loop() {
Serial.println(analogRead(A0));
delay(10);
}

www.arduinoportugal.pt 11
Como usar um LDR (sensor luminosidade)
O que é necessário Esquema de montagem

1 x Arduino
1 x LDR
1 x Resistência de 1KΩ

Descrição Montagem

Guiando-se pelo esquema ao lado, ligue uma Resistência de 10KΩ entre o pino GND e o
pino digital 2 do Arduino, usando dois fios condutores.

Também usando fio condutores, ligue o LDR entre o pino digital 2 e o pino 5V do Arduino.

www.arduinoportugal.pt 12
Como usar um LDR (sensor luminosidade)
Programação Descrição Programação
Primeiro, inicializamos a variável que receberá a leitura com zero int valor = 0 .
int valor = 0;
O próximo passo é inicializar a comunicação serial na função setup() utilizando Serial.begin(9600) .

void setup() {
Serial.begin(9600); Com valor = analogRead(A0) , lemos o valor do pino analógico A0 do Arduino e o valor lido ficará
armazenado na variável valor .
}
Usamos Serial.println(valor) para imprimir o valor lido do pino analógico no Serial Monitor.

void loop() { No final, um delay 500ms para conseguirmos ver o valor no ecrã.
valor = analogRead(A0);
Serial.println(valor);
delay(500);
}

www.arduinoportugal.pt 13
Como movimentar um Servomotor
O que é necessário Esquema de montagem

1 x Arduino
1 x Mini servo motor de 5V

Descrição Montagem

Usando um fio condutor ligue o fio de alimentação +5V do servo motor (geralmente
vermelho) no 5V do Arduino. Em seguida, também usando um fio condutor, ligue o fio
terra GND do servo motor (geralmente preto) ao GND do Arduino.

Por fim, ligue o fio de sinal (geralmente branco) ao pino digital 2 do Arduino.

www.arduinoportugal.pt 14
Como movimentar um Servomotor
Programação Descrição Programação

#include<Servo.h> Com #include<Servo.h> , adicionamos ao programa a biblioteca Servo.h , que possui os comandos
Servo sm; específicos para controlar servo motores, como geração do pulso no tamanho correto para girá-lo
quantos graus forem necessários ou desejados. Com o comando Servo sm , declaramos o objeto sm
como sendo um servo motor.
void setup() {
Na função setup() com a linha sm.attach(2) , indicamos que o fio condutor de sinal do servo estará
sm.attach(2); ligado ao pino digital 2 do Arduino. Declaramos o pino digital 13 como saída para usarmos o LED desse
pinMode(13,OUTPUT); pino para debug, ou seja, verificar se a experiência está a funcionar.
} Na função loop() , o comando sm.write(1) indica ao servo motor para que ele se posicione em 1 grau.
Em seguida, acendemos o LED do pino digital 13 com digitalWrite(13,HIGH) .
void loop() { Aguardamos dois segundos e em seguida, com o comando sm.write(180) , indicamos ao servo motor
sm.write(1); para que ele se posicione em 180 graus.
digitalWrite(13,HIGH);
Depois, apagamos o LED do pino digital 13 mais dois segundos de espera para podermos ver
delay(2000); novamente, em loop, o movimento do motor.
sm.write(180);
digitalWrite(13,LOW);
delay(2000);
}
www.arduinoportugal.pt 15
Como medir temperatura ambiente
O que é necessário Esquema de montagem

1 x Arduino
1 x Sensor temperatura LM 35

Descrição Montagem

Começamos por colocar o sensor LM35 na placa de ensaios conforme a figura ao lado.

Depois, usando um fio condutor vamos ligar o pino da direita (LM35 visto de frente) a
uma porta GND disponível no nosso Arduino.

De seguida, usando outro fio condutor vamos ligar o pino da esquerda(LM35 visto de
frente) a porta +5V do Arduino.

Por fim, da mesma forma vamos ligar o pino do meio do sensor, ao pino A0 do dos pinos
analógicos do Arduino.

www.arduinoportugal.pt 16
Como medir temperatura ambiente
Programação Descrição Programação

int pinoSensor = 0; //pino de ligação A0 O LM35 não necessita de qualquer calibração externa para fornecer os dados com
exatidão, no entanto para ser lido pelo Arduino necessita de conversão, porque o
int valorLido = 0; //variável para guardar valor lido Arduino lê apenas valores inteiros entre 0 e 1023.
float temperatura = 0; //variável para apresentar valor
Assim sabendo que este sensor tem uma resolução de 10mV por cada 1ºC (isto é por
cada grau ºC aumenta 10mV no terminal de sinal), poderemos deduzir uma expressão
void setup() { para a temperatura em função do valor lido.
Serial.begin(9600); //inicia a comunicação Serie Monitor O sensor será alimentado pelo Arduino que fornece 5V, como as entradas analógicas têm
} uma resolução de 10 bits, ou seja, 2^10 = 1024 e cada grau corresponde a 10 mV então a
expressão da temperatura em função do valor lido na entrada analógica do Arduino será:

void loop() { temperatura = (valor lido * (5/1023))*100


valorLido = analogRead(pinoSensor); temperatura = valor lido * 0,00488
temperatura = (valorLido * 0.00488); //calculos
Nota: Não sendo o sensor LM35 um sensor de precisão, poderá existir em alguns casos
temperatura = temperatura * 100; //calculos um erro de valor, mas com aproximação ao real.
Serial.print("Temperatura atual: "); //escreve texto
Serial.println(temperatura); //escreve valor
delay(1000);
}
www.arduinoportugal.pt 17

Você também pode gostar