- Nødvendige komponenter:
- Arbeidsforklaring:
- Kretsforklaring:
- Programmeringsforklaring:
- Krets- og kretskortdesign ved bruk av EasyEDA:
- Beregning og bestilling av PCB på nettet:
Vi ser ofte spenningssvingninger i strømforsyningen hjemme hos oss, noe som kan forårsake funksjonsfeil i vekselstrømsapparater hjemme. I dag bygger vi en lav- og lavspenningsbeskyttelseskrets, som vil kutte strømforsyningen til apparatene i tilfelle høy eller lav spenning. Det vil også vise en varselmelding på 16x2 LCD. I dette prosjektet har vi brukt PIC Microcontroller til å lese og sammenligne inngangsspenningen med referansespenningen og ta handlingen deretter.
Vi har laget denne kretsen på PCB og lagt til en ekstra krets på PCB for samme formål, men denne gangen ved hjelp av op-amp LM358 (uten mikrokontroller). For demonstrasjonsformål har vi valgt Lavspenningsgrense som 150v og høyspenningsgrense som 200v. Her i dette prosjektet har vi ikke brukt noe relé for avskjæring, vi demonstrerte det bare ved hjelp av LCD, sjekk videoen på slutten av denne artikkelen. Men brukeren kan feste et relé med denne kretsen og koble den til PICs GPIO.
Sjekk våre andre PCB-prosjekter her.
Nødvendige komponenter:
- PIC Microcontroller PIC18F2520
- PCB (bestilt fra EasyEDA)
- IC LM358
- 3-polet terminalkontakt (valgfritt)
- 16x2 LCD
- BC547 Transistor
- 1k motstand
- 2k2 motstand
- 30K motstand SMD
- 10k SMD
- Kondensatorer - 0.1uf, 10uF, 1000uF
- 28-pin IC-base
- Mann / kvinne burgsticks
- 7805 Spenningsregulatorer - 7805, 7812
- Pickit2 programmerer
- LED
- Zener-diode- 5.1v, 7.5v, 9.2v
- Transformator 12-0-12
- 12MHz krystall
- 33pF kondensator
- Spenningsregulator (viftehastighetsregulator)
Arbeidsforklaring:
I denne høy- og lavspenningsavbruddskretsen har vi lest vekselspenningen ved å bruke PIC-mikrokontroller ved hjelp av transformator, bro likeretter og spenningsdelerkrets og vises over 16x2 LCD. Deretter har vi sammenlignet vekselstrømmen med de forhåndsdefinerte grensene og vist varselmeldingen over LCD-skjermen tilsvarende. Som om spenning er under 150v så har vi vist “Lav spenning” og hvis spenning er over 200v så har vi vist “Høy spenning” tekst over LCD-skjermen. Vi kan endre disse grensene i PIC-koden gitt på slutten av dette prosjektet. Her har vi brukt Fan Regulator for å øke og redusere den innkommende spenningen for demonstrasjonsformål i videoen.
I denne kretsen har vi også lagt til en Simple Under and Over Voltage Protection Circuit uten å bruke noen mikrokontroller. I denne enkle kretsen har vi brukt LM358-komparator for å sammenligne inngangs- og referansespenningen. Så her har vi tre alternativer i dette prosjektet:
- Mål og sammenlign vekselspenningen ved hjelp av transformator, bro likeretter, spenningsdelerkrets og PIC mikrokontroller.
- Påvisning av over- og underspenning ved bruk av LM358 ved hjelp av transformator, likeretter og komparator LM358 (uten mikrokontroller)
- Oppdag under- og overspenning ved å bruke en komparator LM358, og mat utgangen til PIC-mikrokontroller for å gjøre noe med kode.
Her har vi demonstrert første alternativ for dette prosjektet. I hvilken vi har trappet ned vekselstrøminngangsspenningen og deretter konvertert den til likestrøm ved å bruke en bro likeretter og deretter igjen kartlagt denne likestrømsspenningen til 5v og deretter endelig matet denne spenningen til PIC mikrokontroller for sammenligning og visning.
I PIC-mikrokontroller har vi lest denne tilordnede DC-spenningen, og basert på den tilordnede verdien har vi beregnet den innkommende vekselspenningen ved hjelp av gitt formel:
volt = ((adcValue * 240) / 1023)
der adcValue er ekvivalent likestrømsinngangsspenningsverdi ved PIC-kontroller ADC-stift og volt er den påførte vekselspenningen. Her har vi tatt 240v som maksimal inngangsspenning.
eller alternativt kan vi bruke en gitt metode for å kartlegge ekvivalent DC-inngangsverdi.
volt = kart (adcVlaue, 530, 895, 100, 240)
der adcValue er ekvivalent likestrømsinngangsspenningsverdi på PIC-kontrollerens ADC-pinne, er 530 minimum likestrømsspenningsekvivalent og 895 er maksimal likspenningsekvivalentverdi . Og 100v er minimum kartleggingsspenning og 240v er maksimal kartleggingsspenning.
Betyr 10mV DC-inngang ved PIC ADC-pin er lik 2.046 ADC-ekvivalent verdi. Så her har vi valgt 530 som middelverdi, spenningen ved PICs ADC-pin vil være:
(((530 / 2.046) * 10) / 1000) Volt
2.6v som vil bli kartlagt minimumsverdien på 100VAC
(Samme beregning for maksimumsgrense).
Sjekk at kartfunksjonen er gitt i PIC-programkoden til slutt. Lær mer om spenningsdelerkrets og kartlegging av spenninger ved hjelp av ADC her.
Arbeidet med dette prosjektet er enkelt. I dette prosjektet har vi brukt en vekselstrømsventilator for å demonstrere det. Vi har festet vifteregulator til inngangen til transformatoren. Og ved å øke eller redusere motstanden, fikk vi ønsket spenningsutgang.
I koden har vi faste maksimums- og minimumspenningsverdier for deteksjon av høyspenning og lavspenning. Vi har fikset 200v som overspenningsgrense og 150v som nedre spenningsgrense. Nå etter å ha slått på kretsen, kan vi se vekselstrøminngangsspenningen over LCD-skjermen. Når inngangsspenningen øker, kan vi se spenningsendringer over LCD-skjermen, og hvis spenningen blir mer enn over spenningsgrensen, vil LCD varsle oss ved "HIGH Voltage Alert", og hvis spenningen blir lav enn under spenningsgrensen, vil LCD varsle oss ved å vise " Melding om LAV spenningsvarsel. På denne måten kan den også brukes som elektronisk strømbryter.
Vi kan videre legge til et relé for å feste AC-apparater til automatisk avstenging på lave eller høye spenninger. Vi trenger bare å legge til en kodelinje for å slå av apparatet, under LCD-varselmeldingen som viser kode. Sjekk her for å bruke Relay med AC-apparater.
Kretsforklaring:
I High and Low Voltage Protection Circuit har vi brukt en LM358 op-amp som har to utganger koblet til 2 og 3 nummerpinner på PIC-mikrokontroller. Og en spenningsdeler brukes til å dele spenningen og kobler utgangen sin på 4. nummerpinne på PIC-mikrokontroller. LCD er koblet til PORTB på PIC i 4-biters modus. RS og EN er direkte koblet til B0 og B1, og datapinnene D4, D5, D6 og D7 av LCD er koblet til henholdsvis B2, B3, B4 og B5. I dette prosjektet har vi brukt to spenningsregulatorer: 7805 for mikrokontrollertilførsel og 7812 for LM358-kretsen. Og en 12v-0-12v trappetransformator brukes også til å trappe ned vekselstrømmen. Resten av komponentene er vist i kretsskjemaet nedenfor.
Programmeringsforklaring:
Det er enkelt å programmere en del av dette prosjektet. I denne koden trenger vi bare å beregne vekselstrøm ved å bruke kartlagt 0-5v spenning som kommer fra Voltage Divider Circuit og deretter sammenligne den med forhåndsdefinerte verdier. Du kan sjekke den komplette PIC-koden etter dette prosjektet.
Først, i koden, har vi tatt med en overskrift og konfigurert PIC-mikrocontroller-konfigurasjonsbiter. Hvis du er ny i PIC-koding, kan du lære PIC Microcontroller og dens konfigurasjonsbiter her.
Så har vi brukt noen funksjoner for å kjøre LCD, som void lcdbegin () for initialisering av LCD, void lcdcmd (char ch) for å sende en kommando til LCD, void lcdwrite (char ch) for å sende data til LCD og void lcdprint (char * str) for å sende streng til LCD. Sjekk alle funksjonene i koden nedenfor.
Nedenfor gitt funksjon brukes til å kartlegge verdiene:
langt kart (langt x, langt inn_min, langt inn_maks, langt ut_min, langt ut_maks) {retur (x - inn_min) * (ut_max - ut_min) / (inn_maks - inn_min) + ut_min; }
Gitt int analogRead (int ch) -funksjonen brukes til å initialisere og lese ADC:
int analogRead (int ch) {int adcData = 0; hvis (ch == 0) ADCON0 = 0x03; // adc-kanal 0 annet hvis (ch == 1) ADCON0 = 0x0b; // velg adc-kanal 1 annet hvis (ch == 2) ADCON0 = 0x0b; // velg adc-kanal 2 ADCON1 = 0b00001100; // velg analog i / p 0,1 og 2 kanaler for ADC ADCON2 = 0b10001010; // eqisation time holding cap time while (GODONE == 1); // start konvertering adc verdi adcData = (ADRESL) + (ADRESH << 8); // Lagre 10-biters utgang ADON = 0; // adc av retur adcData; }
Gitte linjer brukes for å få ADC-prøver og beregne gjennomsnittet av dem og deretter beregne spenning:
mens (1) {long adcValue = 0; int volt = 0; for (int i = 0; i <100; i ++) // tar prøver {adcValue + = analogRead (2); forsinkelse (1); } adcValue / = 100; #if metode == 1 volt = (((float) adcValue * 240.0) /1023.0); #else volt = kart (adcValue, 530, 895, 100, 240); #endif sprintf (resultat, "% d", volt);
Og til slutt brukes en gitt funksjon for å ta resultat:
hvis (volt> 200) {lcdcmd (1); lcdprint ("High Voltage"); lcdcmd (192); lcdprint ("Alert"); forsinkelse (1000); } annet hvis (volt <150) {lcdcmd (1); lcdprint ("Lavspenning"); lcdcmd (192); lcdprint ("Alert"); forsinkelse (1000); }
Krets- og kretskortdesign ved bruk av EasyEDA:
For å designe denne HIGH og LOW Voltage Detector Circuit har vi valgt det elektroniske EDA-verktøyet kalt EasyEDA. Vi har tidligere brukt EasyEDA mange ganger og synes det er veldig praktisk å bruke sammenlignet med andre PCB-fabrikanter. Sjekk her alle våre PCB-prosjekter. EasyEDA er ikke bare one-stop-løsningen for skjematisk fangst, kretssimulering og PCB-design, de tilbyr også en billig PCB-prototype og Components Sourcing-tjeneste. De lanserte nylig komponentkjøpetjenesten der de har et stort lager av elektroniske komponenter og brukere kan bestille de nødvendige komponentene sammen med PCB-bestillingen.
Mens du designer kretsene og kretskortene dine, kan du også gjøre krets- og kretskortdesignene dine offentlige slik at andre brukere kan kopiere eller redigere dem og kan dra nytte av det. Vi har også gjort hele krets- og kretskortoppsett offentlig for denne høye og lave spenningen Beskyttelseskrets, sjekk lenken nedenfor:
easyeda.com/circuitdigest/HIGH_LOW_Voltage_Detector-4dc240b0fde140719c2401096e2410e6
Nedenfor er øyeblikksbildet av det øverste laget av PCB-layout fra EasyEDA, du kan se hvilket som helst lag (topp, bunn, toppsilk, bunnmelk osv.) På PCB ved å velge laget fra "Lag" -vinduet.
Du kan også sjekke ut fotovisningen av PCB ved hjelp av EasyEDA:
Beregning og bestilling av PCB på nettet:
Etter å ha fullført designen av PCB, kan du klikke på ikonet for Fabrication-utdata ovenfor. Deretter får du tilgang til siden PCB-ordre for å laste ned Gerber-filer på PCB-en din og sende dem til hvilken som helst produsent. Det er også mye enklere (og billigere) å bestille det direkte i EasyEDA. Her kan du velge antall PCB du vil bestille, hvor mange kobberlag du trenger, PCB-tykkelsen, kobbervekten og til og med PCB-fargen. Når du har valgt alle alternativene, klikker du på "Lagre i handlekurven" og fullfører bestillingen din, så får du PCB-ene noen dager senere. Brukeren kan også gå sammen med sin lokale PCB-leverandør for å lage PCB ved å bruke Gerber-filen.
EasyEDAs levering er veldig rask, og etter få dager med bestilling av PCB har jeg PCB-prøvene:
Nedenfor er bildene etter lodding av komponentene på PCB:
Slik kan vi enkelt bygge beskyttelseskretsen for lav-høyspenning for hjemmet vårt. Videre trenger du bare å legge til et relé for å koble AC-apparater til det, for å beskytte det mot spenningssvingninger. Bare koble reléet med en hvilken som helst pin til PIC MCU og skriv koden for å gjøre den pin høy og lav sammen med LCD-varselmeldingskode.