- Potrebni materijali:
- Rad senzora struje ACS712:
- Kružni dijagram:
- Simulacija:
- Programiranje PIC mikrokontrolera:
- Radno:
Mjerenje napona i struje uvijek će biti korisno tijekom izrade ili otklanjanja pogrešaka u bilo kojem električnom sustavu. U ovom ćemo projektu izraditi vlastiti digitalni ampermetar pomoću mikrokontrolera PIC16F877A i trenutnog senzora ACS712-5A. Ovaj projekt može izmjeriti izmjeničnu i istosmjernu struju u rasponu od 0-30A s točnošću od 0,3A. Uz nekoliko izmjena na kodu, ovaj krug možete koristiti i za mjerenje do 30A. Pa krenimo !!!
Potrebni materijali:
- PIC16F877A
- 7805 Regulator napona
- Osjetnik struje ACS712
- LCD zaslon od 16 * 2
- Razvodna kutija i opterećenje (samo za ispitivanje)
- Spajanje žica
- Kondenzatori
- Breadboard.
- Napajanje - 12V
Rad senzora struje ACS712:
Prije nego što započnemo graditi projekt, vrlo nam je važno razumjeti rad ACS712 strujnog senzora jer je on ključna komponenta projekta. Mjerenje struje, posebno izmjenične struje, uvijek je težak zadatak zbog buke povezane s nepravilnim izolacijskim problemom itd. Ali, uz pomoć ovog modula ACS712 koji je dizajnirao Allegro stvar postalo je puno lakše.
Ovaj modul radi na principu Hall-efekta, koji je otkrio dr. Edwin Hall. Prema njegovom principu, kada se vodič koji nosi struju postavi u magnetsko polje, na njegovim se rubovima stvara napon okomit na smjerove i struje i magnetskog polja. Ne ulazimo previše duboko u koncept, već jednostavno rečeno koristimo Hall-ov senzor za mjerenje magnetskog polja oko vodiča koji nosi struju. Ovo mjerenje bit će izraženo u milivoltima koje smo nazvali naponom dvorane. Izmjereni napon dvorane proporcionalan je struji koja je prolazila kroz vodič.
Glavna prednost korištenja ACS712 strujnog senzora je u tome što može mjeriti i izmjeničnu i istosmjernu struju, a također osigurava izolaciju između opterećenja (AC / DC opterećenje) i mjerne jedinice (dio mikrokontrolera). Kao što je prikazano na slici, na modulu imamo tri iglice koje su Vcc, Vout i Ground.

2-pinski priključni blok je mjesto kroz koje treba proći strujnu žicu. Modul radi na + 5V, tako da bi se Vcc trebao napajati od 5V, a tlo bi trebalo biti povezano na masu sustava. Vout pin ima pomak napona od 2500mV, što znači da kada kroz žicu ne prolazi struja, tada će izlazni napon biti 2500mV, a kada je struja pozitivna, napon će biti veći od 2500mV, a kada struja bude negativna, napon će biti manji od 2500mV.
Upotrijebit ćemo ADC modul PIC mikrokontrolera za očitavanje izlaznog napona (Vout) modula, koji će biti 512 (2500mV) kada kroz žicu ne prolazi struja. Ova će se vrijednost smanjivati kako struja teče u negativnom smjeru, a povećavat će se kako će struja teći u pozitivnom smjeru. Tablica u nastavku pomoći će vam da shvatite kako izlazni napon i vrijednost ADC variraju ovisno o struji koja prolazi kroz žicu.

Te su vrijednosti izračunate na temelju podataka danih u tablici podataka ACS712. Također ih možete izračunati pomoću sljedećih formula:
Naponski izlaz (mV) = (vrijednost ADC / 1023) * 5000 struja kroz žicu (A) = (izlazni (mv) -2500) / 185
Sada, kad znamo kako ACS712 senzor radi i što bismo mogli očekivati od njega. Prijeđimo na shemu spojeva.
Kružni dijagram:
Kompletna shema sklopa ovog Projekta digitalnih ampermetara prikazana je na donjoj slici.

Kompletni krug digitalnog mjerača struje radi na + 5V što regulira regulator napona 7805. Koristili smo LCD 16X2 za prikaz vrijednosti struje. Izlazni pin strujni senzor (Vout) je spojen na 7 -og pin PIC-a koja je AN4 za čitanje analognog napona.
Dalje, pin priključak za PIC prikazan je u donjoj tablici
|
S.Ne: |
Pin broj |
Naziv pribadače |
Spojen na |
|
1 |
21 |
RD2 |
RS LCD |
|
2 |
22 |
RD3 |
E od LCD-a |
|
3 |
27 |
RD4 |
D4 LCD-a |
|
4 |
28 |
RD5 |
D5 LCD-a |
|
5 |
29 |
RD6 |
D6 LCD-a |
|
6 |
30 |
RD7 |
D7 LCD-a |
|
7 |
7 |
AN4 |
Glas trenutnog Sesnora |
Ovaj krug digitalnog ampermetra možete izgraditi na ploči ili koristiti perf ploču. Ako ste slijedili PIC upute, tada također možete ponovno upotrijebiti hardver koji smo koristili za učenje PIC mikrokontrolera. Ovdje smo upotrijebili istu perf ploču koju smo izradili za LED treptanje s PIC mikrokontrolerom, kao što je prikazano dolje:

Napomena: Nije vam potrebna izrada ove ploče, jednostavno možete slijediti shemu sklopova i izraditi krug na ploči za kruh i upotrijebiti bilo koji komplet dampera da biste svoj program izbacili u PIC mikrokontroler.
Simulacija:
Ovaj strujni krug mjerača može se simulirati i pomoću Proteusa prije nego što nastavite sa svojim hardverom. Dodijelite hex datoteku koda navedenog na kraju ovog vodiča i kliknite gumb za reprodukciju. Morali biste primijetiti struju na LCD zaslonu. Koristio sam žarulju kao izmjenično opterećenje, možete mijenjati unutarnji otpor žarulje klikom na nju da biste promijenili struju koja kroz nju prolazi.

Kao što možete vidjeti na gornjoj slici, ampermetar pokazuje stvarnu struju koja prolazi kroz žarulju i iznosi oko 3,52 A, a LCD prikazuje struju od oko 3,6 A. Međutim, u praktičnom slučaju mogli bismo dobiti pogrešku do 0,2A. Vrijednost ADC-a i napon u (mV) također su prikazani na LCD-u radi vašeg razumijevanja.
Programiranje PIC mikrokontrolera:
Kao što je ranije rečeno, cjeloviti kod nalazi se na kraju ovog članka. Kôd se sam objašnjava linijama komentara i samo uključuje koncept povezivanja LCD-a s PIC mikrokontrolerom i korištenjem ADC modula u PIC mikrokontroleru, što smo već obrađivali u našim prethodnim vodičima učenja PIC mikrokontrolera.
Vrijednost očitana sa senzora neće biti točna jer se struja izmjenjuje i također je izložena buci. Stoga vrijednost ADC čitamo 20 puta i prosječimo je da bismo dobili odgovarajuću trenutnu vrijednost kao što je prikazano u donjem kodu.
Koristili smo iste formule koje su gore objašnjene za izračunavanje napona i vrijednosti struje.
for (int i = 0; i <20; i ++) // Pročitana vrijednost 20 puta {adc = 0; adc = ADC_Read (4); // Očitavanje napona ADC = adc * 4.8828; // Izračunaj napon ako je (Napon> = 2500) // Ako je struja pozitivna Pojačala + = ((Napon-2500) /18,5); inače ako (Napon <= 2500) // Ako je struja negativna Pojačala + = ((2500-Napon) /18,5); } Pojačala / = 20; // Prosječna vrijednost pročitana 20 puta
Budući da ovaj projekt također može očitavati izmjeničnu struju, struja će također biti negativna i pozitivna. To je vrijednost izlaznog napona iznad i ispod 2500mV. Stoga, kako je prikazano u nastavku, mijenjamo formule negativne i pozitivne struje tako da ne dobijemo negativnu vrijednost.
if (Voltage> = 2500) // Ako je struja pozitivna Amps + = ((Voltage-2500) /18.5); inače ako (Napon <= 2500) // Ako je struja negativna Pojačala + = ((2500-Napon) /18,5);
Korištenje strujnog senzora od 30A:
Ako trebate izmjeriti struju veću od 5A, jednostavno možete kupiti modul ACS712-30A i povezati ga na isti način te promijeniti donji redak koda zamjenom 18,5 s 0,66 kako je prikazano dolje:
if (Voltage> = 2500) // Ako je struja pozitivna Amps + = ((Voltage-2500) /0.66); inače ako (Napon <= 2500) // Ako je struja negativna Pojačala + = ((2500-Napon) /0,66);
Provjerite i ampermetar od 100 mA pomoću AVR mikrokontrolera ako želite mjeriti slabu struju.
Radno:
Nakon što ste programirali PIC mikrokontroler i pripremili svoj hardver. Jednostavno uključite teret i vaš PIC mikrokontroler trebali biste moći vidjeti struju koja prolazi kroz žicu prikazanu na vašem LCD zaslonu.
NAPOMENA: AKO koristite ASC7125A modul, pripazite da vaše opterećenje ne troši više od 5A, također koristite žice većeg konektora za provodnike struje.

Kompletan rad projekta ampermetra temeljenog na PIC mikrokontroleru prikazan je u videu ispod. Nadam se da ste projekt pokrenuli i uživali u njemu. Ako sumnjate, možete ih napisati u odjeljku za komentare u nastavku ili objaviti na našim forumima.
