우리는 종종 가정에서 전기 공급의 전압 변동을 목격하여 가정 AC 기기의 오작동을 일으킬 수 있습니다. 오늘 우리는 고전압 또는 저전압의 경우 가전 제품에 대한 전원 공급을 차단할 저렴한 고전압 및 저전압 보호 회로를 구축하고 있습니다. 또한 16x2 LCD에 경고 메시지가 표시됩니다. 이 프로젝트에서는 PIC 마이크로 컨트롤러 를 사용 하여 입력 전압을 참조 전압과 읽고 비교하고 그에 따라 조치를 취했습니다.
우리는 PCB에이 회로를 만들고 같은 목적으로 PCB에 추가 회로를 추가했지만 이번에는 연산 증폭기 LM358 (마이크로 컨트롤러 없음)을 사용했습니다. 데모 목적으로 저전압 제한을 150v로, 고전압 제한을 200v로 선택했습니다. 이 프로젝트에서 우리는 차단을 위해 릴레이를 사용하지 않았습니다. 우리는 LCD를 사용하여 시연했습니다.이 기사 끝의 비디오를 확인하십시오. 그러나 사용자는이 회로에 릴레이를 연결하여 PIC의 GPIO에 연결할 수 있습니다.
여기에서 다른 PCB 프로젝트를 추가로 확인하십시오.
필요한 구성 요소:
- PIC 마이크로 컨트롤러 PIC18F2520
- PCB (EasyEDA에서 주문)
- IC LM358
- 3 핀 터미널 커넥터 (옵션)
- 16x2 LCD
- BC547 트랜지스터
- 1k 저항
- 2k2 저항
- 30K 저항 SMD
- 10k SMD
- 커패시터-0.1uf, 10uF, 1000uF
- 28 핀 IC베이스
- 남성 / 여성 burgsticks
- 7805 전압 조정기-7805, 7812
- Pickit2 프로그래머
- LED
- 제너 다이오드-5.1v, 7.5v, 9.2v
- 변압기 12-0-12
- 12MHz 크리스탈
- 33pF 커패시터
- 전압 조정기 (팬 속도 조정기)
작동 설명:
이 고전압 및 저전압 차단 회로 에서는 변압기, 브리지 정류기 및 전압 분배기 회로의 도움으로 PIC 마이크로 컨트롤러 를 사용하여 AC 전압을 읽고 16x2 LCD에 표시했습니다. 그런 다음 AC 전압을 사전 정의 된 한계와 비교하고 그에 따라 LCD에 경고 메시지를 표시했습니다. 전압이 150v 미만이면 "Low Voltage"가 표시되고 전압이 200v 이상이면 LCD 위에 "High Voltage"텍스트가 표시됩니다. 이 프로젝트가 끝날 때 제공된 PIC 코드에서 이러한 제한을 변경할 수 있습니다. 여기에서는 비디오에서 데모 목적으로 들어오는 전압을 높이거나 낮추기 위해 팬 레귤레이터를 사용했습니다.
이 회로에서는 마이크로 컨트롤러를 사용하지 않고 간단한 저전압 및 과전압 보호 회로도 추가했습니다. 이 간단한 회로에서는 LM358 비교기를 사용하여 입력 및 기준 전압을 비교했습니다. 이 프로젝트에는 세 가지 옵션이 있습니다.
- 변압기, 브리지 정류기, 전압 분배기 회로 및 PIC 마이크로 컨트롤러를 사용하여 AC 전압을 측정하고 비교합니다.
- 변압기, 정류기 및 비교기 LM358 (마이크로 컨트롤러 제외)의 도움으로 LM358을 사용하여 과전압 및 저전압 감지
- 비교기 LM358을 사용하여 저전압 및 과전압을 감지하고 출력을 PIC 마이크로 컨트롤러에 공급하여 코드로 조치를 취합니다.
여기서 우리는이 프로젝트의 첫 번째 옵션을 시연했습니다. 여기서 우리는 AC 입력 전압을 낮추고 브리지 정류기를 사용하여 DC로 변환 한 다음이 DC 전압을 다시 5v로 매핑 한 다음 마지막으로이 전압을 비교 및 표시를 위해 PIC 마이크로 컨트롤러에 공급했습니다.
PIC 마이크로 컨트롤러에서이 매핑 된 DC 전압을 읽었으며 매핑 된 값을 기반으로 주어진 공식을 사용하여 들어오는 AC 전압을 계산했습니다.
볼트 = ((adcValue * 240) / 1023)
여기서 adcValue 는 PIC 컨트롤러 ADC 핀의 DC 입력 전압 값이고 volt 는 적용된 AC 전압입니다. 여기서는 최대 입력 전압으로 240v를 사용했습니다.
또는 동등한 DC 입력 값을 매핑하기 위해 주어진 방법을 사용할 수 있습니다.
볼트 = 맵 (adcVlaue, 530, 895, 100, 240)
여기서 adcValue 는 PIC 컨트롤러 ADC 핀의 등가 DC 입력 전압 값이고, 530은 최소 DC 전압 등가 값이고 895는 최대 DC 전압 등가 값입니다. 그리고 100v는 최소 매핑 전압이고 240v는 최대 매핑 전압입니다.
PIC ADC 핀에서 10mV DC 입력이 2.046 ADC 등가 값과 같다는 것을 의미합니다. 따라서 여기서는 최소값으로 530을 선택했습니다. PIC의 ADC 핀의 전압은 다음과 같습니다.
(((530 / 2.046) * 10) / 1000) 볼트
100VAC의 최소값이 매핑되는 2.6v
(최대 제한에 대한 동일한 계산).
마지막에 PIC 프로그램 코드에 지도 기능이 제공되는지 확인하십시오. 여기에서 전압 분배기 회로 및 ADC를 사용한 전압 매핑에 대해 자세히 알아보십시오.
이 프로젝트의 작업은 쉽습니다. 이 프로젝트에서는 시연을 위해 AC 전압 팬 레귤레이터를 사용했습니다. 우리는 변압기의 입력에 팬 조절기를 부착했습니다. 그런 다음 저항을 늘리거나 줄임으로써 원하는 전압 출력을 얻었습니다.
코드에는 고전압 및 저전압 감지에 대한 최대 및 최소 전압 값이 고정되어 있습니다. 200v를 과전압 한계로 고정하고 150v를 낮은 전압 한계로 고정했습니다. 이제 회로에 전원을 공급 한 후 LCD를 통해 AC 입력 전압을 볼 수 있습니다. 입력 전압이 증가하면 LCD를 통해 전압 변화를 볼 수 있으며 전압이 전압 한계를 초과하면 LCD는 "HIGH Voltage Alert"로 경고하고 전압이 부족 전압 한계보다 낮아지면 LCD는 " LOW Voltage Alert”메시지. 이렇게하면 전자 회로 차단기 로도 사용할 수 있습니다.
저전압 또는 고전압에서 자동 차단에 AC 기기를 연결하는 릴레이를 추가로 추가 할 수 있습니다. 코드를 보여주는 LCD 경고 메시지 아래에 어플라이언스를 끄는 코드 줄을 추가하기 만하면됩니다. AC 기기에서 릴레이를 사용하려면 여기를 확인하세요.
회로 설명:
에서는 높고 낮은 전압 보호 회로, 우리는 PIC 마이크로 컨트롤러 (2, 3) 번호 핀에 연결된 두 개의 출력을 갖는 LM358 연산 증폭기를 사용했다. 그리고 전압 분배기는 전압을 분배하는 데 사용되며 PIC 마이크로 컨트롤러의 4 번째 핀에 출력을 연결합니다. LCD는 4 비트 모드에서 PIC의 PORTB에 연결됩니다. RS와 EN은 B0과 B1에 직접 연결되고 LCD의 데이터 핀 D4, D5, D6, D7은 각각 B2, B3, B4, B5에 연결됩니다. 이 프로젝트에서는 마이크로 컨트롤러 공급 용 7805와 LM358 회로 용 7812의 두 가지 전압 조정기를 사용했습니다. 또한 12v-0-12v 강압 변압기를 사용하여 AC 전압을 강압합니다. 나머지 구성 요소는 아래 회로도에 나와 있습니다.
프로그래밍 설명:
이 프로젝트의 프로그래밍 부분은 쉽습니다. 이 코드에서는 전압 분배기 회로에서 나오는 매핑 된 0-5v 전압을 사용하여 AC 전압을 계산 한 다음 미리 정의 된 값과 비교하기 만하면됩니다. 이 프로젝트 후에 완전한 PIC 코드를 확인할 수 있습니다.
먼저 코드에 헤더를 포함하고 PIC 마이크로 컨트롤러 구성 비트를 구성했습니다. PIC 코딩을 처음 사용하는 경우 여기에서 PIC 마이크로 컨트롤러 및 해당 구성 비트를 배우십시오.
그런 다음 우리는 같은 LCD를 구동하기위한 몇 가지 fucntions을 사용했다 () 무효 lcdbegin 는 LCD, 초기화 무효 lcdcmd (숯불 채널)를 LCD에 명령을 보내는 무효 lcdwrite (문자의 채널을) LCD 및 데이터를 전송하기 위해 무효 lcdprint (문자 * str) 문자열을 LCD로 전송합니다. 아래 코드의 모든 기능을 확인하십시오.
아래 주어진 함수는 값 매핑에 사용됩니다.
long map (long x, long in_min, long in_max, long out_min, long out_max) {return (x-in_min) * (out_max-out_min) / (in_max-in_min) + out_min; }
주어진 int analogRead (int ch) 함수는 ADC를 초기화하고 읽는 데 사용됩니다.
int analogRead (int ch) {int adcData = 0; if (ch == 0) ADCON0 = 0x03; // adc 채널 0 else if (ch == 1) ADCON0 = 0x0b; // ADC 채널 1 선택 else if (ch == 2) ADCON0 = 0x0b; // ADC 채널 2 선택 ADCON1 = 0b00001100; // ADC의 아날로그 i / p 0,1 및 2 채널 선택 ADCON2 = 0b10001010; // 정상화 시간 유지 시간 while (GODONE == 1); // 변환 시작 adc 값 adcData = (ADRESL) + (ADRESH << 8); // 10 비트 출력 저장 ADON = 0; // adc 끄기 return adcData; }
주어진 라인은 ADC 샘플을 얻고 평균을 계산 한 다음 전압을 계산하는 데 사용됩니다.
while (1) {긴 adcValue = 0; int volt = 0; for (int i = 0; i <100; i ++) // 샘플 채취 {adcValue + = analogRead (2); 지연 (1); } adcValue / = 100; #if method == 1 volt = (((float) adcValue * 240.0) /1023.0); #else volt = map (adcValue, 530, 895, 100, 240); #endif sprintf (result, "% d", volt);
마지막으로 주어진 함수는 결과 조치를 취하는 데 사용됩니다.
if (볼트> 200) {lcdcmd (1); lcdprint ("고전압"); lcdcmd (192); lcdprint ("경고"); 지연 (1000); } else if (볼트 <150) {lcdcmd (1); lcdprint ("저전압"); lcdcmd (192); lcdprint ("경고"); 지연 (1000); }
EasyEDA를 사용한 회로 및 PCB 설계:
이 HIGH 및 LOW 전압 감지기 회로를 설계하기 위해 EasyEDA라는 온라인 EDA 도구를 선택했습니다. 우리는 이전에 EasyEDA를 여러 번 사용했으며 다른 PCB 제조업체에 비해 사용이 매우 편리하다는 것을 알았습니다. 여기에서 모든 PCB 프로젝트를 확인하십시오. EasyEDA는 회로도 캡처, 회로 시뮬레이션 및 PCB 설계를위한 원 스톱 솔루션 일뿐만 아니라 저렴한 PCB 프로토 타입 및 부품 소싱 서비스도 제공합니다. 최근에는 전자 부품 재고가 많고 사용자가 PCB 주문과 함께 필요한 부품을 주문할 수있는 부품 소싱 서비스를 시작했습니다.
회로 및 PCB를 설계하는 동안 다른 사용자가 복사 또는 편집하고 이점을 얻을 수 있도록 회로 및 PCB 설계를 공개 할 수도 있습니다. 또한이 고전압 및 저전압에 대해 전체 회로 및 PCB 레이아웃을 공개했습니다. 보호 회로, 아래 링크를 확인하십시오.
easyeda.com/circuitdigest/HIGH_LOW_Voltage_Detector-4dc240b0fde140719c2401096e2410e6
아래는 EasyEDA의 PCB 레이아웃의 상단 레이어 스냅 샷이며, '레이어'창에서 레이어를 선택하여 PCB의 모든 레이어 (Top, Bottom, Topsilk, bottomsilk 등)를 볼 수 있습니다.
EasyEDA를 사용하여 PCB의 사진보기를 확인할 수도 있습니다.
온라인으로 PCB 계산 및 주문:
PCB 설계 완료 후 위 의 Fabrication 출력 아이콘을 클릭하면됩니다. 그런 다음 PCB 주문 페이지에 액세스하여 PCB의 Gerber 파일을 다운로드하고 모든 제조업체에 보냅니다. EasyEDA에서 직접 주문하는 것이 훨씬 쉽고 저렴합니다. 여기서 주문하려는 PCB 수, 필요한 구리 층 수, PCB 두께, 구리 무게 및 PCB 색상까지 선택할 수 있습니다. 모든 옵션을 선택한 후 "카트에 저장"을 클릭하고 주문을 완료하면 며칠 후 PCB를받을 수 있습니다. 사용자는 Gerber 파일을 사용하여 PCB를 만들기 위해 현지 PCB 공급 업체와 함께 갈 수도 있습니다.
EasyEDA의 배송은 매우 빠르며 PCB를 주문한 후 며칠 후에 PCB 샘플을 얻었습니다.
아래는 PCB에 부품을 납땜 한 후의 사진입니다.
이것은 우리가 가정을위한 저 고압 보호 회로를 쉽게 구축 할 수있는 방법입니다. 또한 전압 변동으로부터 보호하기 위해 릴레이 를 추가하여 AC 기기를 연결하면 됩니다. 릴레이를 PIC MCU의 범용 핀에 연결하고 LCD 경고 메시지 코드와 함께 해당 핀을 High 및 Low로 만드는 코드를 작성하십시오.