Nos dias atuais, o conceito de automação tornou-se bastante amplo, englobando não só as áreas industriais como também os ambientes residenciais, de modo que, neste segundo campo, existe uma vasta gama de possibilidades a serem implementadas afim de garantirem vantagens tanto em termos da praticidade proposta quanto em termos de economia, onde apresentaremos o Projeto Raspberry Pi 3 no Acionamento de Lâmpadas.
Neste tutorial, vamos ensinar os passos que você deve seguir para conseguir realizar um dos procedimentos mais básicos e que todos os sistemas voltados para automação residencial devem suportar: o acionamento e desligamento de lâmpadas. Neste material você conseguirá aprender como realizar a manipulação dos elementos citados utilizando uma placa Raspberry Pi.
Componentes utilizados no projeto
Para reproduzir este projeto Raspberry Pi você precisará dos seguintes componentes:
Montagem física do hardware
Veja na figura abaixo o hardware que será utilizado para que seja possível acionar uma lâmpada através da placa Raspberry Pi 3 modelo B.
Além da montagem do hardware utilizado, queremos apresentar também o modo como deve-se ligar a lâmpada para que a mesma possa ser ligada e desligada pela nossa placa Raspberry pi.
Note que, neste exemplo, utilizamos uma lâmpada cujo funcionamento deve ocorrer sob uma tensão de 127 V, portanto, interrompemos o condutor fase, ligando-o no terminal comum do relé e também ligando o terminal normalmente aberto (NA) em um dos terminais da lâmpada, de modo que, quando o relé for acionado, estes dois trechos serão interligados. Além disso, no outro terminal da mesma, ligamos o condutor neutro, fechando o circuito.
Desenvolvimento do código para o Raspberry Pi
Para desenvolver o código citado no Projeto Raspberry Pi 3 no Acionamento de Lâmpadas, iremos abrir o programa IDLE 3, no qual, iremos criar um novo documento e escrever o seguinte código em Python.
Nesta seção iremos demonstrar o código responsável pelo acionamento do relé, que por sua vez, irá ligar e desligar a lâmpada.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
import RPi.GPIO as GPIO GPIO.setmode(GPIO.BOARD) GPIO.setup(12, GPIO.OUT) GPIO.setup(16, GPIO.IN) while (True): if(GPIO.input(16) == 1): GPIO.output(12,0) else: GPIO.output(12,1) |
Após a finalização do código, basta pressionar F5 para executa-lo.
Explicação do código
Nesta seção iremos explicar o funcionamento de todas as linhas do código apresentado anteriormente
- Importando a biblioteca para manipulação dos pinos de entrada e saída
Primeiramente, utilizamos a sentença import para definir a biblioteca que será utilizada em nosso projeto.
1 |
import RPi.GPIO as GPIO |
- Determinando o modo de referência aos pinos utilizados
Em seguida, através da sentença GPIO.setmode() determinamos a maneira como vamos nos referenciar aos pinos da placa Raspberry Pi. Ao utilizarmos GPIO.BOARD como parâmetro, devemos nos referenciar aos pinos, no código, pela ordem em que estão anexados na mesma, por exemplo, utilizando 12, para o pino 12 (caso tivessemos utilizado como parâmetro a sentença GPIO.BCM, nos referenciaríamos aos pinos da placa através do número que acompanha a sigla GPIO, no caso do pino 12, seria 18, devido ao fato de o pino 12 ser o GPIO 18).
1 |
GPIO.setmode(GPIO.BOARD) |
- Definindo o modo de operação dos pinos utilizados
Posteriormente, definimos o modo de operação dos pinos da placa Raspbarry Pi, de modo que, configuramos o pino 12 como um pino de saída digital e o pino 16 como um pino de entrada digital.
1 2 |
GPIO.setup(12, GPIO.OUT) GPIO.setup(16, GPIO.IN) |
- Manipulando o relé de acordo com o estado da chave seletora
Por fim, criamos um loop infinito através da sentença while (True), de modo que, dentro deste, temos um conjunto de estruturas condicionais if/else. Em um primeiro momento, verificamos se a chave seletora encontra-se em uma posição tal que o nível lógico do pino 12 seja 1, para que então, em caso afirmativo o relé seja acionado (lembre-se que os relés do módulo citado são acionados com nível lógico 0 em seu terminal).
Caso a condição acima não seja satisfeita, assumimos que a chave seletora está disponibilizando nível lógico 0 no pino 12 e portanto, o relé deve ser desligado através da sentença GPIO.output(12,1), que por sua vez, coloca nível lógico alto no terminal do mesmo.
1 2 3 4 5 |
while (True): if(GPIO.input(16) == 1): GPIO.output(12,0) else: GPIO.output(12,1) |
Considerações finais
Este tutorial do Projeto Raspberry Pi 3 no Acionamento de Lâmpadas foi mais um conteúdo que preparamos com bastante cuidado para você. Esperamos que tenha gostado deste post e lembre-se de deixar suas dúvidas, críticas e sugestões nos comentários abaixo.
Daniel,uma duvida. Qual componente que esta no protoboard?
Bom dia Edu!
O equipamento utilizado junto à protoboard é uma chave seletora de duas posições.
Tem algum problema se eu colocar a lâmpada no F ao invés de no N?
Olá Renan!
Para a instalação não tem problema, porém vale sempre ter bastante cuidado já que estamos trabalhando com uma rede elétrica de alta tensão.
Hi there, I enjoy reading all of your post. I like to
write a little comment to support you.
Tem como acrescentar um interruptor? Caso queria ligar a luz via interruptor
Olá Freedom! Existem métodos que possibilitam este processo porém é um pouco mais complexo, recomendo dar uma pesquisada na internet sobre o assunto, infelizmente não trabalhei este assunto em nenhum projeto, mas já anotei para pensarmos em algo em breve.