- Componentes necessários:
- Explicação de trabalho:
- Explicação do circuito:
- Explicação de programação:
- Projeto de circuito e PCB usando EasyEDA:
- Calculando e solicitando PCBs online:
Freqüentemente, vemos flutuações de voltagem no fornecimento de eletricidade em nossa casa, o que pode causar mau funcionamento em nossos eletrodomésticos. Hoje estamos construindo um Circuito de Proteção de Alta e Baixa Tensão de baixo custo, que cortará a alimentação dos aparelhos em caso de Alta ou Baixa Tensão. Ele também mostrará uma mensagem de alerta no LCD 16x2. Neste projeto, usamos o microcontrolador PIC para ler e comparar a tensão de entrada com a tensão de referência e tomar as medidas adequadas.
Fizemos este circuito no PCB e adicionamos um circuito adicional no PCB para o mesmo propósito, mas desta vez usando op-amp LM358 (sem microcontrolador). Para fins de demonstração, escolhemos o limite de baixa tensão como 150v e o limite de alta tensão como 200v. Aqui neste projeto, não utilizamos nenhum relé para corte, apenas demonstramos usando LCD, confira o Vídeo no final deste Artigo. Mas o usuário pode anexar um relé a este circuito e conectá-lo ao GPIO do PIC.
Confira nossos outros projetos de PCB aqui.
Componentes necessários:
- Microcontrolador PIC PIC18F2520
- PCB (pedido da EasyEDA)
- IC LM358
- Conector de terminal de 3 pinos (opcional)
- LCD 16x2
- Transistor BC547
- Resistor 1k
- Resistor 2k2
- Resistor 30K SMD
- 10k SMD
- Capacitores - 0,1uf, 10uF, 1000uF
- Base IC de 28 pinos
- Hambúrgueres masculinos / femininos
- 7805 reguladores de tensão - 7805, 7812
- Programador Pickit2
- CONDUZIU
- Diodo Zener - 5.1v, 7.5v, 9.2v
- Transformer 12-0-12
- Cristal de 12MHz
- Capacitor 33pF
- Regulador de tensão (regulador de velocidade do ventilador)
Explicação de trabalho:
Neste circuito de corte de alta e baixa tensão, lemos a tensão CA usando o microcontrolador PIC com a ajuda do transformador, retificador de ponte e circuito divisor de tensão e exibido em LCD 16x2. Em seguida, comparamos a tensão CA com os limites predefinidos e exibimos a mensagem de alerta no LCD de acordo. Por exemplo, se a tensão estiver abaixo de 150v, mostramos “Baixa tensão” e se a tensão estiver acima de 200v, mostramos o texto “Alta tensão” no LCD. Podemos alterar esses limites no código PIC fornecido no final deste projeto. Aqui, usamos o Regulador de Ventilador para aumentar e diminuir a tensão de entrada para fins de demonstração no Vídeo.
Neste circuito, também adicionamos um circuito simples de proteção contra sobretensão e subtensão sem usar nenhum microcontrolador. Neste circuito simples, usamos comparador LM358 para comparar a tensão de entrada e de referência. Portanto, aqui temos três opções neste projeto:
- Meça e compare a tensão CA com a ajuda do transformador, retificador de ponte, circuito divisor de tensão e microcontrolador PIC.
- Detecção de sobretensão e subtensão usando LM358 com a ajuda de transformador, retificador e comparador LM358 (sem microcontrolador)
- Detecte sub e sobretensão usando um comparador LM358 e alimente sua saída ao microcontrolador PIC para ação por código.
Aqui demonstramos a primeira opção deste projeto. Em que reduzimos a tensão de entrada CA e então a convertemos em CC usando um retificador de ponte e, em seguida, mapeamos novamente essa tensão CC para 5v e, finalmente, alimentamos essa tensão no microcontrolador PIC para comparação e exibição.
No microcontrolador PIC, lemos esta tensão DC mapeada e com base nesse valor mapeado, calculamos a tensão AC de entrada com a ajuda da fórmula dada:
volt = ((adcValue * 240) / 1023)
onde adcValue é o valor de tensão de entrada DC equivalente no pino ADC do controlador PIC e volt é a tensão AC aplicada. Aqui, consideramos 240 V como tensão de entrada máxima.
ou alternativamente, podemos usar o método dado para mapear o valor de entrada DC equivalente.
volt = map (adcVlaue, 530, 895, 100, 240)
onde adcValue é o valor de tensão de entrada DC equivalente no pino ADC do controlador PIC, 530 é a tensão DC mínima equivalente e 895 é o valor equivalente de tensão DC máxima. E 100 V é a tensão mínima de mapeamento e 240 V é a tensão máxima de mapeamento.
Significa que a entrada de 10mV DC no pino PIC ADC é igual a 2,046 ADC valor equivalente. Portanto, aqui selecionamos 530 como meios de valor mínimo, a tensão no pino ADC do PIC será:
(((530 / 2.046) * 10) / 1000) Volt
2.6v que será mapeado valor mínimo de 100VAC
(Mesmo cálculo para limite máximo).
Verifique se a função de mapa é fornecida no código do programa PIC no final. Saiba mais sobre o Circuito Divisor de Tensão e mapeamento das tensões usando ADC aqui.
Trabalhar neste projeto é fácil. Neste projeto, usamos um regulador de ventilador de tensão CA para demonstrar isso. Anexamos o regulador do ventilador à entrada do transformador. E então, aumentando ou diminuindo sua resistência, obtivemos a saída de tensão desejada.
No código, fixamos os valores máximos e mínimos de tensão para detecção de alta e baixa tensão. Fixamos 200V como limite de sobretensão e 150V como limite inferior de tensão. Agora, depois de ligar o circuito, podemos ver a tensão de entrada CA no LCD. Quando a tensão de entrada aumenta, podemos ver as mudanças de tensão no LCD e se a tensão ficar mais do que o limite de tensão, o LCD nos alertará por "Alerta de alta tensão" e se a tensão cair abaixo do limite de tensão, o LCD nos alertará mostrando " Mensagem de alerta de baixa tensão ”. Assim também pode ser utilizado como disjuntor eletrônico.
Podemos ainda adicionar um relé para conectar quaisquer aparelhos AC para corte automático em tensões baixas ou altas. Só precisamos adicionar uma linha de código para desligar o aparelho, abaixo da mensagem de alerta do LCD mostrando o código. Marque aqui para usar o Relay com aparelhos AC.
Explicação do circuito:
No circuito de proteção de alta e baixa tensão, usamos um amplificador operacional LM358 que tem duas saídas conectadas a 2 e 3 pinos numerados do microcontrolador PIC. E um divisor de tensão é usado para dividir a tensão e conectar sua saída no 4º pino do microcontrolador PIC. O LCD está conectado ao PORTB do PIC no modo de 4 bits. RS e EN são conectados diretamente em B0 e B1 e os pinos de dados D4, D5, D6 e D7 do LCD estão conectados em B2, B3, B4 e B5 respectivamente. Neste projeto, usamos dois reguladores de tensão: 7805 para alimentação do microcontrolador e 7812 para o circuito LM358. E um transformador abaixador de 12v-0-12v também é usado para diminuir a tensão CA. O resto dos componentes são mostrados no diagrama de circuito abaixo.
Explicação de programação:
A parte de programação deste projeto é fácil. Neste código, precisamos apenas calcular a tensão CA usando a tensão mapeada de 0-5 V proveniente do Circuito Divisor de Tensão e, em seguida, compará-la com valores predefinidos. Você pode verificar o código PIC completo após este projeto.
Primeiro, no código, incluímos um cabeçalho e configuramos os bits de configuração do microcontrolador PIC. Se você é novo na codificação PIC, aprenda Microcontrolador PIC e seus bits de configuração aqui.
Em seguida, usamos algumas funções para conduzir o LCD, como void lcdbegin () para inicializar o LCD, void lcdcmd (char ch) para enviar um comando ao LCD, void lcdwrite (char ch) para enviar dados ao LCD e void lcdprint (char * str) para enviar string para LCD. Verifique todas as funções no código abaixo.
A função fornecida abaixo é usada para mapear os valores:
mapa longo (longo x, longo in_min, longo in_max, longo out_min, long out_max) {return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min; }
Dada int analogRead (int ch), a função é usada para inicializar e ler ADC:
int analogRead (int ch) {int adcData = 0; se (ch == 0) ADCON0 = 0x03; // adc canal 0 else if (ch == 1) ADCON0 = 0x0b; // selecione adc canal 1 else if (ch == 2) ADCON0 = 0x0b; // seleciona o canal adc 2 ADCON1 = 0b00001100; // seleciona canal analógico i / p 0,1 e 2 do ADC ADCON2 = 0b10001010; // tempo de equalização mantendo o limite de tempo enquanto (GODONE == 1); // inicia a conversão adc valor adcData = (ADRESL) + (ADRESH << 8); // Armazena a saída de 10 bits ADON = 0; // adc off return adcData; }
As linhas fornecidas são usadas para obter amostras de ADC e calcular a média delas e, em seguida, calcular a tensão:
enquanto (1) {long adcValue = 0; int volt = 0; for (int i = 0; i <100; i ++) // tomando amostras {adcValue + = analogRead (2); atraso (1); } adcValue / = 100; #if método == 1 volt = (((float) adcValue * 240.0) /1023.0); #else volt = map (adcValue, 530, 895, 100, 240); #endif sprintf (resultado, "% d", volt);
E, finalmente, determinada função é usada para realizar a ação resultante:
se (volt> 200) {lcdcmd (1); lcdprint ("Alta tensão"); lcdcmd (192); lcdprint ("Alerta"); atraso (1000); } else if (volt <150) {lcdcmd (1); lcdprint ("Baixa tensão"); lcdcmd (192); lcdprint ("Alerta"); atraso (1000); }
Projeto de circuito e PCB usando EasyEDA:
Para projetar este circuito detector de alta e baixa tensão, escolhemos a ferramenta EDA online chamada EasyEDA. Já usamos o EasyEDA muitas vezes e achamos que é muito conveniente de usar em comparação com outros fabricantes de PCB. Confira aqui todos os nossos projetos de PCB. EasyEDA não é apenas a solução completa para captura esquemática, simulação de circuito e design de PCB, mas também oferece um serviço de fornecimento de componentes e protótipos de PCB de baixo custo. Recentemente, eles lançaram seu serviço de fornecimento de componentes, onde têm um grande estoque de componentes eletrônicos e os usuários podem solicitar os componentes necessários junto com o pedido de PCB.
Ao projetar seus circuitos e PCB, você também pode fazer o seu circuito e PCB designs tão público que outros usuários podem copiar ou editar eles e pode tirar vantagem de lá, também fizemos todo o nosso circuito e layouts PCB pública para esta alta e baixa tensão Circuito de proteção, verifique o link abaixo:
easyeda.com/circuitdigest/HIGH_LOW_Voltage_Detector-4dc240b0fde140719c2401096e2410e6
Abaixo está o instantâneo da camada superior do layout do PCB do EasyEDA, você pode visualizar qualquer camada (superior, inferior, superior, inferior, etc.) do PCB selecionando a camada da janela 'Camadas'.
Você também pode verificar a visualização da foto do PCB usando EasyEDA:
Calculando e solicitando PCBs online:
Depois de concluir o design do PCB, você pode clicar no ícone de saída de fabricação acima. Então você vai acessar a página PCB para fazer o download dos arquivos Gerber do seu PCB e enviá-los para qualquer fabricante, também é muito mais fácil (e barato) fazer o pedido diretamente no EasyEDA. Aqui você pode selecionar o número de PCBs que deseja solicitar, quantas camadas de cobre você precisa, a espessura do PCB, o peso do cobre e até mesmo a cor do PCB. Depois de selecionar todas as opções, clique em “Salvar no carrinho” e conclua seu pedido; em seguida, você receberá seus PCBs alguns dias depois. O usuário também pode ir com seu fornecedor de PCB local para fazer PCBs usando o arquivo Gerber.
A entrega da EasyEDA é muito rápida e depois de alguns dias pedindo PCBs, recebi as amostras de PCB:
Abaixo estão as fotos após a soldagem dos componentes no PCB:
É assim que podemos construir facilmente o circuito de proteção de baixa-alta tensão para nossa casa. Além disso, você só precisa adicionar um relé para conectar quaisquer aparelhos AC a ele, para protegê-lo de flutuações de tensão. Basta conectar o relé com qualquer pino de uso geral do PIC MCU e escrever o código para tornar esse pino alto e baixo junto com o código de mensagem de alerta do LCD.