1610388034apostila Eletrogate - Kit Arduino Beginning
1610388034apostila Eletrogate - Kit Arduino Beginning
1610388034apostila Eletrogate - Kit Arduino Beginning
COM 1
Sumário
Sumário ........................................................................................................................ 2
Parte I - Revisão de circuitos elétricos e componentes básicos ................................................ 3
Introdução .................................................................................................................. 3
Revisão de circuitos elétricos.......................................................................................... 4
Carga e corrente elétrica ............................................................................................ 5
Tensão elétrica ......................................................................................................... 5
Potência e energia .................................................................................................... 6
Conversão de níveis lógicos e alimentação correta de circuitos ........................................ 7
Revisão de componentes eletrônicos............................................................................... 8
Resistores elétricos ................................................................................................... 9
Capacitores ............................................................................................................ 11
Parte II - Seção de Exemplos Práticos ................................................................................ 14
Exemplo 1 - Usando potenciômetro para fazer leituras analógicas .................................. 14
Exemplo 2 - Divisor de tensão ................................................................................... 18
Exemplo 3 - Entradas e saídas digitais - push-button + led ............................................. 20
Exemplo 4 - Sensor de luz LDR .................................................................................. 22
Exemplo 5 - Acionando o Micro Servo 9g SG90 TowerPro.............................................. 26
Exemplo 6 - Sensor de temperatura NTC .................................................................... 30
Exemplo 7 - Módulo Relé 1 Canal .............................................................................. 32
Exemplo 8 - Sensor Ótico Reflexivo TCRT5000 ............................................................ 38
Exemplo 9 - Display LCD 16x2 ................................................................................... 41
Exemplo 10 - Sensor de Distância Ultrassônico HC-SR04 ............................................... 46
Considerações finais ................................................................................................... 52
WWW.ELETROGATE.COM 2
Parte I - Revisão de circuitos elétricos e componentes
básicos
Introdução
A primeira parte da apostila faz uma revisão sobre circuitos elétricos, com destaque
para questões práticas de montagem e segurança que surgem no dia-a-dia do usuário
do Kit Arduino BEGINNING.
Algum conhecimento prévio é bem-vindo, mas não é necessário para utilização do kit.
Caso seja seu primeiro contato, nós recomendamos que antes de fazer as montagens
você leia esses três artigos do http://blog.eletrogate.com/
https://blog.eletrogate.com/o-que-e-arduino-para-que-serve-vantagens-e-
como-utilizar/
http://blog.eletrogate.com/programacao-arduino-parte-1/
http://blog.eletrogate.com/programacao-arduino-parte-2/
WWW.ELETROGATE.COM 3
Preparado? Vamos começar!
A apostila Arduino BEGINNING, bem como todas as outras apostilas que tratam de
Arduino e eletrônica em geral, tem como conhecimento de base as teorias de circuitos
elétricos e de eletrônica analógica e digital.
WWW.ELETROGATE.COM 4
Em todo circuito você vai ouvir falar das grandezas elétricas principais, assim, vamos
aprender o que é cada uma delas.
A grandeza mais básica nos circuitos elétricos é a carga elétrica. Carga é a propriedade
elétrica das partículas atômicas que compõem a matéria, e é medida em Coulombs.
Sabemos da física elementar que a matéria é constituída de elétrons, prótons e neutros.
A carga elementar é a carga de 1 elétron, que é igual a 1,602 x10-19 C.
Do conceito de carga elétrica advém o conceito de corrente elétrica, que nada mais é do
que a taxa de variação da carga em relação ao tempo, ou seja, quando você tem um
fluxo de carga em um condutor, a quantidade de carga (Coulomb) que atravessa esse
condutor por unidade de tempo, é chamada de corrente elétrica. A medida utilizada
para corrente é o Ampére(A).
Aqui temos que fazer uma distinção importante. Existem corrente elétrica contínua e
alternada:
Com o Arduino UNO, lidamos como correntes elétricas contínuas, pois elas fluem
sempre em uma mesma direção. É diferente da corrente e tensão elétrica da tomada de
sua casa, que são alternadas.
Ou seja, os seus circuitos com Arduino UNO sempre serão alimentados com grandezas
contínuas (corrente e tensão contínuas).
Tensão elétrica
WWW.ELETROGATE.COM 5
O mais comum é você ver apenas “tensão” nos artigos e exemplos com Arduino. Assim,
definindo formalmente o conceito: Tensão elétrica é a energia necessária para mover
uma unidade de carga através de um elemento, e é medida em Volts (V).
Potência e energia
A tensão e a corrente elétrica são duas grandezas básicas, e juntamente com a potência
e energia, são as grandezas que descrevem qualquer circuito elétrico ou eletrônico. A
potência é definida como a variação de energia (que pode estar sendo liberada ou
consumida) em função do tempo, e é medida em Watts (W). A potência está associada
ao calor que um componente está dissipando e a energia que ele consume.
Nós sabemos da vida prática que uma lâmpada de 100W consome mais energia do que
uma de 60 W. Ou seja, se ambas estiverem ligadas por 1 hora por exemplo, a lâmpada
de 100W vai implicar numa conta de energia mais cara.
A potência se relaciona com a tensão e corrente pela seguinte equação:
P= V x I
Essa é a chamada potência instantânea. Com essa equação você saber qual a potência
dissipada em um resistor por exemplo, bastando que saiba a tensão nos terminais do
resistor e a corrente que flui por ele. O conceito de potência é importante pois muitos
hobbystas acabam não tendo noção de quais valores de resistência usar, ou mesmo
saber especificar componentes de forma adequada.
Um resistor de 33 ohms de potência igual a 1/4W, por exemplo, não pode ser ligado
diretamente em circuito de 5V, pois nesse caso a potência dissipada nele seria maior
que a que ele pode suportar.
Vamos voltar a esse assunto em breve, por ora, tenha em mente que é importante ter
uma noção da potência dissipada ou consumida pelos elementos de um circuito que
você vá montar.
Por fim, a energia elétrica é o somatório da potência elétrica durante todo o tempo em
que o circuito esteve em funcionamento. A energia é dada em Joules (J) ou Wh (watt-
hora). A unidade Wh é interessante pois mostra que a energia é calculada
multiplicando-se a potência pelo tempo(apenas para os casos em que a potência é
constante).
WWW.ELETROGATE.COM 6
Essa primeira parte é um pouco conceitual, mas é importante saber de onde vieram
toda a terminologia que você sempre vai ler nos manuais e artigos na internet. Na
próxima seção, vamos discutir os componentes básicos de circuito que compõem o Kit
Arduino BEGINNING.
É muito comum que hobbystas e projetistas em geral acabem por cometer alguns erros
de vez em quando. Na verdade, mesmo alguns artigos na internet e montagens
amplamente usadas muitas vezes acabam por não utilizar as melhores práticas de
forma rigorosa. Isso acontece muito no caso dos níveis lógicos dos sinais usados para
interfacear o Arduino com outros circuitos.
Isso significa que quando você quiser usar o seu Arduino UNO com um sensor ou CI que
trabalhe com 3.3V, é preciso fazer a adequação dos níveis de tensão, pois se você
enviar um sinal de 5V (saída do Arduino) em um circuito de 3.3V (CI ou sensor), você
poderá queimar o pino daquele componente.
Em geral, sempre que dois circuitos que trabalhem com níveis de tensão diferentes
forem conectados, é preciso fazer a conversão dos níveis lógicos. O mais comum é ter
que abaixar saídas de 5V para 3.3V. Subir os sinais de 3.3V para 5V na maioria das vezes
não é necessário pois o Arduino entende 3.3V como nível lógico alto, isto é, equivalente
a 5V.
O divisor de tensão é a solução mais simples, mas usar um CI conversor é mais elegante
e é o ideal. O divisor de tensão consiste em dois resistores ligados em série (Z1 e Z2) ,
em que o sinal de 5V é aplicado a o terminal de um deles. O terminal do segundo
resistor é ligado ao GND, e o ponto de conexão entre os dois resistores é a saída do
divisor, cuja tensão é dada pela seguinte relação:
WWW.ELETROGATE.COM 7
Em que Z1 e Z2 são os valores dos resistores da figura abaixo.
Um divisor de tensão muito comum é fazer Z1 igual 330 ohms e Z2 igual 680 ohms.
Dessa forma a sáida Vout fica sendo 3.336 V. Como no Kit Arduino BEGINNING não há
resistor de 680ohms, você pode ligar um de 330ohms como Z1 e dois de 330ohms
como Z2. Os dois de 330 ligados em série formam um resistor de 660 ohm, o que
resulta numa saída de 3.33V.
Vamos exemplificar como fazer um divisor de tensão como esse na seção de exemplos
da parte II da apostila.
WWW.ELETROGATE.COM 8
Vamos revisar a função de cada um deles dentro de um circuito eletrônica e apresentar
mais algumas equações fundamentais para ter em mente ao fazer suas montagens.
Resistores elétricos
Os resistores mais comuns do mercado são construídos com fio de carbono e são
vendidos em várias especificações. Os resistores do Kit são os tradicionais de 1/4W e
10% de tolerância. Isso significa que eles podem dissipar no máximo 1/4W (0,25 watts)
e seu valor de resistência pode variar em até 10%. O resistor de 1KΩ pode então ter um
valor mínimo de 900Ω e um valor máximo de 1100Ω.
Em algumas aplicações você pode precisar de resistores com precisão maior, como 5%
ou 1%. Em outros casos, pode precisar de resistores com potência maior, como 1/2W
ou menor, como 1/8W. Essas variações dependem da natureza de cada circuito.
Em geral, para as aplicações típicas e montagens de prototipagem que podem ser feitos
com o Kit Arduino BEGINNING, os resistores tradicionais de 1/4W e 10% de tolerância
são suficientes.
V =R x I
Ou seja, se você sabe o valor de um resistor e a tensão aplicada nos seus terminais,
você pode calcular a corrente elétrica que fluirá por ele. Juntamente com a equação
para calcular potência elétrica, a lei de Ohm é importante para saber se os valores de
corrente e potência que os resistores de seu circuito estão operando estão adequados.
Para fechar, você deve estar se perguntando, como saber o valor de resistência de um
resistor? Você tem duas alternativas: Medir a resistência usando um multímetro ou
determinar o valor por meio do código de cores do resistor.
WWW.ELETROGATE.COM 9
Se você pegar um dos resistores do seu kit, verá que ele possui algumas faixas coloridas
em seu corpo. Essas faixas são o código de cores do resistor. As duas primeiras faixas
dizem os dois primeiros algarismos decimais. A terceira faixa colorida indica o
multiplicador que devemos usar. E a última faixa, que fica um pouco mais afastada,
indica a tolerância.
Na figura 2 apresentamos o código de cores para resistores. Cada cor está associada a
um algarismo, um multiplicador e uma tolerância, conforme a tabela. Com a tabela você
pode determinar a resistência de um resistor sem ter que usar o multímetro.
WWW.ELETROGATE.COM 10
Figura 2: Código de cores para resistores
Capacitores
Os capacitores são os elementos mais comuns nos circuito eletrônicos depois dos
resistores. São elementos que armazenam energia na forma de campos elétricos. Um
capacitor é constituído de dois terminais condutores e um elemento dielétrico entre
esses dois terminais, de forma que quando submetido a uma diferença de potencial, um
campo elétrico surge entre esses terminais, causando o acúmulo de cargas positivas no
terminal negativo e cargas negativas no terminal positivo.
O importante que você deve saber para utilizar o Kit é que os capacitores podem ser de
quatro tipos:
Eletrolíticos,
Cerâmicos,
Poliéster,
Tântalo.
Capacitor eletrolítico
WWW.ELETROGATE.COM 11
Capacitores eletrolíticos costumam ser da ordem de micro Farad, sendo o Farad a
unidade de medida de capacitância, usada diferenciar um capacitor do outro. A Figura 3
ilustra um típico capacitor eletrolítico.
Capacitores cerâmicos
Capacitores cerâmicos não possuem polaridade, e são caracterizados por seu tamanho
reduzido e por sua cor característica, um marrom claro um tanto fosco. Possuem
capacitância da ordem de pico Farad. Veja nas imagens abaixo um típico capacitor
cerâmico e sua identificação:
WWW.ELETROGATE.COM 12
Diodos e Leds
Diodos e Leds são tratados ao mesmo tempo pois tratam na verdade do mesmo
componente. Diodos são elementos semicondutores que só permitem a passagem de
corrente elétrica em uma direção.
São constituídos de dois terminais, o Anodo(+) e o catodo(-), sendo que para que possa
conduzir corrente elétrica, é preciso conectar o Anodo na parte positiva do circuito, e o
Catodo na parte negativa. Do contrário, o diodo se comporta como um circuito aberto.
Na figura 4, você pode ver que o componente possui uma faixa indicadora do terminal
de catodo. O diodo do kit Arduino BEGINNING é um modelo tradicional e que está no
mercado há muitos anos, o 1N4007.
O LED é um tipo específico de diodo - Light Emitter Diode, ou seja, diodo emissor de luz.
Trata-se de um diodo que quando polarizado corretamente, emite luz para o ambiente
externo. O Kit Arduino BEGINNIG vem acompanhado de leds na cor vermelha, verde e
amarelo, as mais tradicionais.
Nesse ponto, é importante você saber que sempre deve ligar um led junto de um
resistor, para que a corrente elétrica que flua pelo led não seja excessiva e acabe por
queimá-lo. Além disso, lembre-se que por ser um diodo, o led só funciona se o Anodo
estiver conectado ao pólo positivo do sinal de tensão.
Para identificar o Anodo do Led, basta identificar a perna mais longa do componente,
como na imagem abaixo:
WWW.ELETROGATE.COM 13
Figura 5: Terminais de um Led. Créditos: Build-eletronic-circuits.com
Os sensores do Kit Arduino BEGINNING, quais sejam: Sensor de Luz LDR e sensor de
temperatura NTC, juntamente com o Micro Servo 9g SG90 TowerPro, também terão uma seção
de exemplo dedicada a cada um deles.
O potenciômetro nada mais do que um resistor cujo valor de resistência pode ser
ajustado de forma manual. Existem potenciômetros slides e giratórios. Na figura abaixo
WWW.ELETROGATE.COM 14
mostramos um potenciômetro giratório dos mais comumente encontrados no
mercado.
Em ambos, ao variar a posição da chave manual, seja ela giratória ou slide, o valor da
resistência entre o terminal de saída e um dos outros terminais se altera. O símbolo do
potenciômetro é o mostrado na seguinte imagem:
WWW.ELETROGATE.COM 15
Valor = (V/5)*1024
Tensão = Valor*(5/1024)
Lista de materiais:
Arduino UNO;
Protoboard;
Potenciômetro 10K;
Jumpers de ligação;
Diagrama de circuito
WWW.ELETROGATE.COM 16
O terminal intermediário é ligado diretamente a uma entrada analógica do Arduino
(A0). Como a tensão é de no máximo 5V, então não há problema em ligar direto.
Carregue o código abaixo no Arduino e você verá as leituras no Monitor serial da IDE
arduino.
void setup()
{
Serial.begin(9600); // monitor serial - velocidade 9600 Bps
delay(100); // atraso de 100 milisegundos
}
void loop()
{
sensorValue = analogRead(sensorPin); // leitura da entrada analógica A0
voltage = sensorValue * (5.0 / 1024); // cálculo da tensão
Na função void Setup(), nós inicializamos o terminal serial com uma taxa de transmissão
de 9600 kbps. Na função void Loop(), primeiro faz-se a leitura da entrada analógica A0
com a função analogRead(SensorPin) e armazenamos a mesma na variável sensorValue.
Em seguida, aplicamos a fórmula para converter a leitura (que é um número entre 0 e
1023) para o valor de tensão correspondente. O resultado é armazenado na variável
Voltage e em seguido mostrado na interface serial da IDE Arduino.
Referência:
1. https://www.arduino.cc/en/Tutorial/ReadAnalogVoltage
WWW.ELETROGATE.COM 17
Exemplo 2 - Divisor de tensão
Esse exemplo é para ilustrar como usar um divisor de tensão. Sempre que você precisar
abaixar um sinal lógico de 5V para 3.3V você pode usar esse circuito. Explicamos o
divisor de tensão na seção de introdução, mais especificamente, quando conversamos
sobre conversão de níveis lógicos.
Esse circuito será útil sempre que você tiver que abaixar as saídas do Arduino de 5V
para 3.3V.
Lista de materiais:
Diagrama de circuito:
Esse é um diagrama com dois divisores de tensão. O primeiro é composto por três
resistores, sendo cada um de 330. Assim, o resistor Z1 é de 330 e o resistor Z2 é a
associação série dos outros dois, resultando numa resistência de 660. Dessa forma, a
tensão de saída do divisor é:
WWW.ELETROGATE.COM 18
O segundo divisor é formado por dois resistores de 1K, dessa forma, a tensão de saída é
a tensão de entrada dividida pela metade:
O código para o exemplo 2 é uma extensão do código usada na seção anterior para ler
valores de tensão do potenciômetro. Nesse caso, nós fazemos a leitura de dois canais
analógicos (A0 e A1), fazemos as conversões para as tensões e mostramos os resultados
de cada divisor na interface serial.
Referências:
1. https://www.arduino.cc/en/Tutorial/ReadAnalogVoltage
2. http://www.ufjf.br/fisica/files/2013/10/FIII-05-07-Divisor-de-tens%C3%A3o.pdf
3. http://www.sofisica.com.br/conteudos/Eletromagnetismo/Eletrodinamica/assoc
iacaoderesistores.php
Carregue o código abaixo e observe os dois valores no Monitor Serial da IDE Arduino.
Esses dois componentes são trabalhados por meio das entradas e saídas digitais do
Arduino. Neste exemplo vamos fazer uma aplicação básica que você provavelmente vai
repetir muitas vezes. Vamos ler o estado de um push-button e usá-la para acender ou
apagar um led. Ou seja, sempre que o botão for acionado, vamos apagar ou acender o
Led.
Lista de materiais:
WWW.ELETROGATE.COM 20
1 Arduino UNO;
Protoboard;
Jumpers de ligação;
Diagrama de circuito:
Esse pequeno código abaixo mostra como ler entradas digitais e com acionar as saídas
digitais. Na função void Setup(), é preciso configurar qual pino será usado como saída e
qual será usado como entrada.
Na função void Loop(), fizemos um if no qual a função digitalRead é usada para saber se
o pushButton está acionado ou não. Caso ele esteja acionado, nós acendemos o Led,
caso ele esteja desligado, nós desligamos o led.
void setup()
{
pinMode(PinButton, INPUT); // configura D8 como entrada digital
pinMode(ledPin, OUTPUT); // configura D7 como saída digital
Serial.begin(9600); // monitor serial - velocidade 9600 Bps
delay(100); // atraso de 100 milisegundos
}
WWW.ELETROGATE.COM 21
void loop()
Referências:
https://www.arduino.cc/reference/en/language/functions/digital-io/digitalread/
https://www.arduino.cc/reference/en/language/functions/digital-io/digitalwrite/
WWW.ELETROGATE.COM 22
Fotoresistor (LDR)
É importante considerar a potência máxima do sensor, que é de 100 mW. Ou seja, com
uma tensão de operação de 5V, a corrente máxima que pode passar por ele é 20 mA.
Felizmente, com 8K ohms (que medimos experimentalmente com o ambiente bem
iluminado), que é a resistência mínima, a corrente ainda está longe disso, sendo
0,625mA. Dessa forma, podemos interfacear o sensor diretamente com o Arduino.
*Nota: Nas suas medições, pode ser que você encontre um valor de resistência mínimo
diferente, pois depende da iluminação local.
Especificações do LDR:
Modelo: GL5528
Diâmetro: 5mm
Tensão máxima: 150VDC
Potência máxima: 100mW
Temperatura de operação: -30°C a 70°C
Comprimento com terminais: 32mm
Resistência no escuro: 1 MΩ (Lux 0)
Resistência na luz: 10-20 KΩ (Lux 10)
Este sensor de luminosidade pode ser utilizado em projetos com arduino e outros
microcontroladores para alarmes, automação residencial, sensores de presença e vários
outros.
Nesse exemplo, vamos usar uma entrada analógica do Arduino para ler a variação de
tensão no LDR e, consequentemente, saber como a luminosidade ambiente está se
comportando. Veja na especificação que com muita luz, a resistência fica em torno de
10-20 KΩ, enquanto que no escuro pode chegar a 1MΩ.
WWW.ELETROGATE.COM 23
Para podermos ler as variações de tensão resultantes da variação da resistência do LDR,
vamos usar o sensor como parte de um divisor de tensão. Assim, a saída do divisor será
dependente apenas da resistência do sensor, pois a tensão de entrada e a outra
resistência são valores conhecidos. No nosso caso, vamos usar um resistor de 10K e
uma tensão de operação de 5V. Assim, o sinal que vamos ler no arduino terá uma
variação de 2,2V (quando o LDR for 8K) e 5V (quando o LDR tiver resistências muito
maiores que o resistor de 10K).
Lista de materiais:
LDR;
Resistor de 10k;
1 Arduino UNO;
Protoboard;
Jumpers de ligação;
Diagrama de circuito:
Nesse caso, definimos uma tensão de limiar, a partir da qual desligamos ou ligamos um
led para indicar que a intensidade da luz ultrapassou determinado valor. Esse limiar
pode ser ajustado por você para desligar o led em intensidades diferentes de luz
ambiente.
Referências:
https://maker.pro/education/using-an-ldr-sensor-with-arduino-a-tutorial-for-
beginners
http://blog.eletrogate.com/controle-de-luminosidade-com-arduino-e-sensor-
ldr/
WWW.ELETROGATE.COM 25
Exemplo 5 - Acionando o Micro Servo 9g SG90 TowerPro
Ou seja, o servo motor é um atuador rotativo para controle de posição, que atua com
precisão e velocidade controlada em malha fechada. De acordo com a largura do pulso
aplicado no pino de controle PWM, a posição do rotor é definida ( 0 a 180 graus) . Os
pulsos devem variar entre 0,5 ms e 2,5 ms.
No caso dos servomotores digitais, mais caros e mais precisos, o controle da posição
do rotor utiliza um encoder digital.
A figura abaixo mostra um típico servo motor analógico. Trata-se do Micro Servo
Tower Pro SG90 9G que acompanha o kit Arduino BEGINNING.
WWW.ELETROGATE.COM 26
Os Servos são acionados por meio de três fios, dois para alimentação e um
correspondente ao sinal de controle para determinar a posição. Em geral, os três fios
são:
Marron: GND,
Vermelho: Alimentação positiva,
Laranja: Sinal de controle PWM.
Lista de materiais:
Antes de mais nada, vamos separar os componentes que precisamos para montar o
servomotor junto com o arduino. A nossa lista de componentes é a seguinte:
WWW.ELETROGATE.COM 27
Diagrama de circuito:
void setup()
{
myservo.attach(6); // configura pino D6 - controle do Servo
}
WWW.ELETROGATE.COM 28
void loop()
O aspecto mais importante desse software é a utilização da biblioteca servo.h. Esta
biblioteca possui as funções necessárias para posicionar a servo para a posição
desejada. Na função Void Setup() nós associamos o objeto servomotor, do tipo Servo, a
um pino do arduino. Na mesma função, nós inicializamos o servo na posição 0º,
utilizando o método write do objeto que acabamos de criar.
Para atualizar a posição do servo a cada iteração do loop, nós chamamos o método
write() do objeto servomotor, passando como parâmetro o valor lido do potenciômetro
traduzido para a escala de 0-179. Assim, sempre que mexermos no potenciômetro, o
servo motor irá atuar e atualizar a sua posição.
Referências:
http://blog.eletrogate.com/servo-motor-para-aplicacoes-com-arduino/
https://www.arduino.cc/en/Tutorial/Knob
https://www.allaboutcircuits.com/projects/servo-motor-control-with-an-
arduino/
http://www.instructables.com/id/Arduino-Servo-Motors/
WWW.ELETROGATE.COM 29
Exemplo 6 - Sensor de temperatura NTC
Assim, o princípio para medir o sinal de um termistor é o mesmo que usamos para
medir o sinal do LDR. Vamos medir na verdade, a queda de tensão provocada na
resistência do sensor.
O termistor que acompanha o kit é do tipo NTC, como o próprio nome diz. Esse é o tipo
mais comum do mercado.
O grande problema dos termistores é que é necessária fazer uma função de calibração,
pois a relação entre temperatura e resistência elétrica não é linear. Existe uma equação,
chamada equação de Steinhart-Hart que é usada para descrever essa relação (vide
referências).
O código que vamos usar nesse exemplo utiliza a equação de Steinhart-Hart conforme a
referência 1.
WWW.ELETROGATE.COM 30
Lista de materiais:
Antes de mais nada, vamos separar os componentes que precisamos para montar o
NTC junto com o arduino. A nossa lista de componentes é a seguinte:
Diagrama de circuito:
O Módulo Relé nada mais é do que um ou mais relés acionados por sinais digitais de 5V.
Esse componente é indicado para acionar cargas que utilizam correntes maiores do que
a suportada pelo Arduino, ou então uma carga de um circuito de corrente alternada
(rede elétrica).
WWW.ELETROGATE.COM 32
O módulo de relé pode ser usado para vários tipos de aplicações:
ativação de eletroímãs,
ativação de motores CC,
ativação de motores CA,
ligar/desligar lâmpadas.
Uma das aplicações mais comuns dos módulos relés para arduino é no acendimento de
lâmpadas em sistemas de automação residencial. O módulo funciona exatamente da
mesma forma que uma chave ou interruptor. Esse é o diagrama de um relé SONGLE
SRD-05VDC-SL-C:
WWW.ELETROGATE.COM 33
Os outros dois terminais são para alimentação da bobina do relé – no caso 5V . O
terminal de controle do Módulo esta conectado nessa bobina. O consumo de corrente
da bobina do relé é de aproximadamente 90 mA, quando energizada.
Repare que cada relé possui os três terminais que explicamos mais acima. Além deles,
há outros 6 pinos usados para interfacear o módulo com o Arduino. São eles:
GND,
IN1,
IN2,
IN3,
IN4,
VCC.
Cada pino INX serve para acionar um dos relés. VCC e GND são os pinos de alimentação
do Módulo do relé : VCC deve ser conectado no +5V e o GND no terra, ambos da fonte.
O terra (GND) do Módulo Relé deve estar conectado também no Terra (GND) do Arduino
!
WWW.ELETROGATE.COM 34
Lista de Materiais:
Para este exemplo você vai precisar:
Protoboard,
Arduino UNO,
Jumpers de ligação,
Módulo relé de 1 canal,
Uma chave táctil (push-button),
1 resistor de 10K.
Diagrama de circuito:
WWW.ELETROGATE.COM
int ledPin = 13; // LED na placa Arduino 35
int IN1 = 2; // pino D2 para controle do rele
WWW.ELETROGATE.COM 36
void loop()
Referências:
http://blog.eletrogate.com/modulo-rele-para-automacao-residencial-com-
arduino/
https://www.allaboutcircuits.com/projects/use-relays-to-control-high-voltage-
circuitswwith-an-arduino/
https://www.arduino.cc/en/Tutorial/Debounce
WWW.ELETROGATE.COM 37
Exemplo 8 - Sensor Ótico Reflexivo TCRT5000
O sensor ótico reflexivo TCRT5000 é um dos mais populares para utilização em projetos
com Arduino. O sensor é fabricado pela Vishay, uma tradicional fabricante de
componentes eletrônicos. Recomendamos fortemente, a leitura do datasheet do
sensor:
https://www.vishay.com/docs/83760/tcrt5000.pdf
Tensão direta do LED emissor é de 1,25 V com uma corrente máxima de 60 mA. A
corrente máxima do fototransistor é de 100 mA.
WWW.ELETROGATE.COM 38
Lista de materiais:
Diagrama de Circuito:
O terminal Anodo (A) positivo do LED infravermelho está ligado por meio de um resistor
de 330R ao VCC (5V) e o seu terminal catodo (K) negativo está ligado em GND. O
Coletor (C) do fototransistor está ligado ao resistor de 10K (que esta conectado no VCC)
e também na entrada digital D7 do Arduino. Essa entrada é que vamos usar para
identificar se o sensor percebeu algum objeto ou não. O Emissor (E) do fototransistor
está ligado ao GND.
O LED vermelho para indicação do Sensor, tem o terminal Anodo (A) positivo conectado
à um resistor de 330R que está conectado à porta digital D8 do Arduino. O terminal
catodo (K) negativo está ligado ao GND.
WWW.ELETROGATE.COM 39
Código:
void setup()
void loop()
else // senão
O código para utilização do sensor TCRT5000 é bem simples. Com o circuito montado,
basta monitorar o estado do pino no qual a saída do sensor (coletor do fototransistor)
está ligada. Se esse pino estiver em nível baixo, é porque algum objeto está presente
dentro do raio de medição do sensor ( a luz infra-vermelha do LED esta sendo refletida)
. Se o pino estiver em nível alto, então não há objeto nenhum no raio de medição do
sensor.
WWW.ELETROGATE.COM 40
Nesse exemplo, a presença do sensor é identificada pelo acionamento de um led, ou
seja, sempre que um objeto for identificado pelo sensor, o led ficará aceso.
Referências:
http://blog.eletrogate.com/sensor-optico-tcrt5000-com-arduino/
http://www.instructables.com/id/Using-IR-Sensor-TCRT-5000-With-Arduino-
and-Program
A tecnologia utilizada nos displays tradicionais é LCD (Liquid Crystal Display). Mais
recentemente, modelos mais modernos com tecnologia O-Leds , os LEDS orgânicos, já
estão sendo encontrados também.
A grande vantagem e razão pela qual até hoje é componente popular, é o seu preço e a
facilidade de implementação em projetos eletrônicos. Antes dos displays LCD, a
interface gráfica usada para mostrar caracteres alfa numéricos era os displays a LED de
x segmentos (os mais comuns eram de 7, 14 ou 16 segmentos).
Esses componentes mais antigos utilizavam vários leds (7,14 ou 16) dispostos em
segmentos, de forma que dependendo de qual conjunto de leds fosse aceso, um
determinado caractere seria mostrado.
WWW.ELETROGATE.COM 41
LCD 16x2. Créditos: Eletrogate
Na hora de comprar um display LCD, você vai encontrar diversas opções, além do mais
tradicional 16×2. A especificação é dada em relação ao número de caracteres por linha
e o número de linhas. Assim, 16×2 significa que o display pode exibir 16 caracteres em
cada linha, e possui 2 linhas. Alguns valores típicos para essas especificações são:
O display que vamos trabalhar é de 16 colunas e 2 linhas (16×2) e com backlight azul e
caracteres brancos. A interface com Arduino é feita por meio de 16 pinos. Em geral
apenas 12 são utilizados de fato. Os pinos do LCD são:
WWW.ELETROGATE.COM 42
LCD 16x2 pinagem – foto Gustavo Murta
Pino de register select (RS): Controle em que parte da memória (do LCD) o
usuário está escrevendo os dados. São duas opções, você pode escrever um
dado para ser mostrado no display, ou uma instrução no MCU do display;
Pino de Read/Write (R/W): Seleciona se está em modo de leitura ou de escrita;
Pino de Enable: Habilita a escrita de dados nos registradores;
8 pinos de dados (D0 -D7). Os estados de cada pino desses corresponde aos bits
que você está escrevendo em um registrador do MCU (do display), ou os valores
que você lê de um registrador quando está no modo de leitura.
Pinos de alimentação VCC e GND do LCD e do LED Backlight (A-anodo/K-
catodo);
Pino V0 de ajuste de contraste;
Vamos conferir em nosso exemplo como usar o LCD 16x2. Na figura abaixo mostramos
um outro modelo, um display gráfico de 128 colunas e 64 linhas, também muito
comercializado e que você pode obter separadamente do Kit para implementar
mensagens gráficas mais avançadas.
Lista de materiais:
1 Arduino UNO;
1 Protoboard;
WWW.ELETROGATE.COM 43
Jumpers para ligação no protoboard;
Display LCD 16x2;
Potenciômetro 10K;
Diagrama de circuito:
WWW.ELETROGATE.COM 44
Código:
void setup()
void loop()
WWW.ELETROGATE.COM 45
No código, é mostrado na primeira linha (0) do display, a mensagem “Exemplo LCD !“.
Na segunda linha (1) será mostrado um contador que é incrementado de 1 em 1
segundo. Para usar o LCD é preciso incluir a biblioteca LiquidCrystal.h, que é nativa da
IDE arduino. Essa biblioteca possui as seguintes funções:
No exemplo são usadas essas três funções, mas a biblioteca dispõe de várias outras que
você pode conferir na página oficial (vejas as referências abaixo).
Referências:
http://blog.eletrogate.com/guia-completo-do-display-lcd-arduino/
http://blog.eletrogate.com/display-lcd-modulo-rf-para-deteccao-de-presenca/
https://www.arduino.cc/en/Reference/LiquidCrystal
WWW.ELETROGATE.COM 46
O sensor HC-SR04 é composto de três partes principais:
Sensor HC-SR04
WWW.ELETROGATE.COM 47
Por meio desse pulso de saída cujo tempo é igual a duração entre emissão e recepção,
nós calculamos a distância entre o sensor e o objeto/obstáculo, por meio da seguinte
equação:
(𝑇𝑒𝑚𝑝𝑜𝑑𝑒𝑑𝑢𝑟𝑎çã𝑜𝑑𝑜𝑠𝑖𝑛𝑎𝑙𝑑𝑒𝑠𝑎í𝑑𝑎𝑥𝑣𝑒𝑙𝑜𝑐𝑖𝑑𝑎𝑑𝑒𝑑𝑜𝑠𝑜𝑚)
𝐷𝑖𝑠𝑡𝑎𝑛𝑐𝑖𝑎 =
2
Repare que as unidades devem estar coerentes para o resultado da conta ser correto.
Assim, se a velocidade do som é dada em metros/segundo, o tempo de duração do sinal
de saída deve estar em segundos para que possamos encontrar a distância em metros.
Lista de Materiais:
Para este exemplo você vai usar os seguintes componentes:
Protoboard;
Jumpers de ligação;
Sensor ultrassônico HCSR-04
Diagrama de circuito:
A montagem é bem direta, basta interligar o sensor com o Arduino. Não há necessidade
de conversão de níveis lógicos ou ligação de componentes externos.
WWW.ELETROGATE.COM 48
Código :
Na função void loop(), onde o programa será executado continuamente, executa-se três
passos básicos:
1. Enviar pulso de 10us para o pino de trigger do sensor. Isto é feito com a função
DisparaPulsoUltrassonico();
WWW.ELETROGATE.COM 49
// Exemplo 10 - Sensor de Distância Ultrassônico HC-SR04
void setup()
void loop()
WWW.ELETROGATE.COM 50
void DisparaPulsoUltrassonico()
Referências:
https://create.arduino.cc/projecthub/dusnoki/arduino-ultrasonic-sensor-hc-
sr04-full-build-and-code-73614d
http://blog.eletrogate.com/sensor-ultrassonico-hc-sr04-com-arduino/
WWW.ELETROGATE.COM 51
Considerações finais
Essa apostila tem por objetivo apresentar alguns exemplos básicos sobre como utilizar
os componentes do Kit Arduino BEGINNING, a partir dos quais você pode combinar e
fazer projetos mais elaborados por sua própria conta.
Nas seções de referências de cada exemplo e nas referências finais, também tentamos
indicar boas fontes de conteúdo objetivo e com projetos interessantes. Sobre isso
ponto, que consideramos fundamental, gostaríamos de destacar algumas fontes de
conhecimento que se destacam por sua qualidade.
O fórum oficial Arduino possui muitas discussões e exemplos muito bons. A comunidade
de desenvolvedores é bastante ativa e certamente pode te ajudar em seus projetos. No
Project Hub poderá encontrar milhares de projetos com Arduino.
Instructables: https://www.instructables.com/
O Maker pro é outro site referência no mundo em relação aos projetos com Arduino.
Há uma infinidade de projetos, todos bem explicados e com bom conteúdo.
No mais, esperamos que essa apostila seja apenas o início de vários outros projetos e,
quem sabe, a adoção de Kits mais avançados, como os de Robótica e Arduino Advanced.
Qualquer dúvida, sugestão, correção ou crítica a esse material, fique à vontade para
relatar em nosso blog oficial: http://blog.eletrogate.com/
WWW.ELETROGATE.COM 52
Referências gerais
WWW.ELETROGATE.COM 53
WWW.ELETROGATE.COM 54