Neste projeto faremos a interface de um relé com o microcontrolador PIC PIC16F877A. O relé é um dispositivo mecânico para controlar alta tensão, aparelhos de alta corrente ' LIGADO ' ou ' DESLIGADO ' de níveis de tensão mais baixos. Relé proporciona isolamento entre dois níveis de tensão e é geralmente usado para controlar os aparelhos de corrente alternada. De relés mecânicos a relés de estado sólido, existem vários tipos de relés disponíveis em eletrônica. Neste projeto usaremos relé mecânico.
Neste projeto, faremos o seguinte-
- Faremos a interface de um switch para entrada do usuário.
- Controle uma lâmpada 220V AC com relé 5V.
- Para controlar o relé, usaremos o transistor NPN BC547 e o transistor será controlado pelo PIC16F877A. Um led irá notificar a condição de LIGADO ou DESLIGADO do relé.
Se você é novo no microcontrolador PIC, comece com Introdução ao microcontrolador PIC.
Componente necessário:
- PIC16F877A
- 20Mhz Cristal
- 2 peças de cerâmica 33pF
- 3 pcs resistores 4.7k
- Resistor 1k
- 1 LED
- Transistor BC547
- Diodo 1N4007
- Relé 5V cúbico
- Lâmpada AC
- Tábua de pão
- Fios para conectar as peças.
- Adaptador de 5 V ou qualquer fonte de alimentação de 5 V com capacidade de corrente de pelo menos 200 mA.
Relé e seu funcionamento:
O relé funciona da mesma forma que uma chave típica. Os relés mecânicos usam um ímã temporário feito de uma bobina eletromagnética. Quando fornecemos corrente suficiente através desta bobina, ela fica energizada e puxa um braço. Devido a isso, o circuito conectado ao relé pode ser fechado ou aberto. A entrada e a saída não têm nenhuma conexão elétrica e, portanto, isola a entrada e a saída. Saiba mais sobre o relé e suas construções aqui.
Os relés podem ser encontrados em diferentes faixas de tensão como 5 V, 6 V, 12 V, 18 V, etc. Neste projeto, usaremos um relé de 5 V já que nossa tensão de trabalho é de 5 V aqui. Este relê cúbico 5V é capaz de interruptor 7A carga a 240V ou 10A carga em 110VAC. No entanto, em vez dessa enorme carga, usaremos uma lâmpada de 220 VCA e trocaremos usando o relé.
Este é o relé 5V que estamos usando neste projeto. A classificação da corrente é claramente especificada para dois níveis de tensão, 10 A a 120 VCA e 7 A a 240 VCA. Precisamos conectar a carga ao relé abaixo da classificação especificada.
Este relé possui 5 pinos. Se virmos a pinagem, podemos ver-
O L1 e L2 é o pino da bobina eletromagnética interna. Precisamos controlar esses dois pinos para ligar o relé ' ON ' ou ' OFF '. Os próximos três pinos são POLE, NO e NC. O pólo é conectado com a placa de metal interna que muda sua conexão quando o relé é ligado. Em condições normais, o PÓLO está em curto com NC. NC significa normalmente conectado. Quando o relé é ligado, o pólo muda de posição e se conecta ao NÃO. NÃO significa Normalmente aberto.
Em nosso circuito, fizemos a conexão do relé com transistor e diodo. O relé com transistor e diodo está disponível no mercado como Módulo de Relé, portanto, quando você usa o Módulo de Relé, não precisa conectar seu circuito driver (Transistor e diodo).
O relé é usado em todos os projetos de automação residencial para controlar os eletrodomésticos AC.
Diagrama de circuito:
O circuito completo para conectar o relé com o microcontrolador PIC é fornecido abaixo:
No esquema acima, pic16F877A é usado, onde na porta B o LED e o transistor são conectados, que é posteriormente controlado usando o interruptor TAC em RBO. O R1 fornece corrente de polarização para o transistor. R2 é um resistor pull-down, usado em uma chave tátil. Ele fornecerá a lógica 0 quando o interruptor não for pressionado. O 1N4007 é um diodo de grampo, usado para a bobina eletromagnética do relé. Quando o relé é desligado, há chances de picos de alta tensãoe o diodo irá suprimi-lo. O transistor é necessário para acionar o relé, pois requer mais de 50mA de corrente, que o microcontrolador é incapaz de fornecer. Também podemos usar ULN2003 em vez do transistor, é uma escolha mais sábia se mais de dois ou três relés são necessários para a aplicação, verifique o circuito do módulo de relé. O LED na porta RB2 notificará “ relé está ligado ”.
O circuito final será semelhante a este-
Você pode aprender a controlar o relé com o Arduino aqui e, se estiver realmente interessado no relé, verifique todos os circuitos do relé aqui.
Explicação do código:
No início do arquivo main.c, adicionamos as linhas de configuração para pic16F877A e também definimos os nomes dos pinos no PORTB.
Como sempre primeiro, precisamos definir os bits de configuração no microcontrolador pic, definir algumas macros, incluindo bibliotecas e frequência de cristal. Você pode verificar o código para todos aqueles no código completo fornecido no final. Fizemos RB0 como entrada. Neste pino, o interruptor está conectado.
#incluir
Depois disso, chamamos a função system_init () onde inicializamos a direção dos pinos e também configuramos o estado padrão dos pinos.
Na função system_init (), veremos
vazio system_init (vazio) { TRISBbits.TRISB0 = 1; // Configurando Sw como input TRISBbits.TRISB1 = 0; // configurando LED como saída TRISBbits.TRISB2 = 0; // configurando o pino do relé como saída LED = 0; RELAY = 0; }
Na função principal , verificamos constantemente o pressionamento do interruptor, se detectarmos o pressionamento do interruptor detectando lógica alta em RB0; esperamos algum tempo e vemos se a chave ainda está pressionada ou não, se a chave ainda estiver pressionada então inverteremos o estado do RELAY e do pino do LED.
void main (void) { system_init (); // Sistema se preparando enquanto (1) { if (SW == 1) {// interruptor é pressionado __delay_ms (50); // atraso de debounce if (SW == 1) {// interruptor ainda está pressionado LED =! LED; // invertendo o status do pino. RELAY =! RELAY; } } } return; }
O código completo e o vídeo de demonstração para esta interface de relé são fornecidos abaixo.