- Potrebné materiály:
- Fungovanie prúdového snímača ACS712:
- Schéma zapojenia:
- Simulácia:
- Programovanie mikrokontroléra PIC:
- Pracovné:
Meranie napätia a prúdu bude vždy užitočné pri vytváraní alebo ladení ľubovoľného elektrického systému. V tomto projekte vyrobíme vlastný digitálny ampérmeter s použitím mikrokontroléra PIC16F877A a prúdového snímača ACS712-5A. Tento projekt dokáže merať striedavý aj jednosmerný prúd s rozsahom 0-30A s presnosťou 0,3A. S niekoľkými úpravami v kóde môžete tento obvod použiť aj na meranie až 30A. Začnime teda !!!
Potrebné materiály:
- PIC16F877A
- Regulátor napätia 7805
- Senzor prúdu ACS712
- 16 * 2 LCD displej
- Spojovacia skrinka a záťaž (len na testovanie)
- Pripojovacie vodiče
- Kondenzátory
- Nepál.
- Napájanie - 12V
Fungovanie prúdového snímača ACS712:
Predtým, ako začneme stavať projekt, je pre nás veľmi dôležité pochopiť prácu prúdového senzora ACS712, ktorý je kľúčovou súčasťou projektu. Meranie prúdu, hlavne prúdu striedavého, je vždy náročná úloha kvôli hluku, ktorý s ním súvisí, kvôli nesprávnemu problému s izoláciou atď. Ale pomocou tohto modulu ACS712, ktorý bol skonštruovaný spoločnosťou Allegro, je oveľa jednoduchšie.
Tento modul pracuje na princípe Hallovho efektu, ktorý objavil Dr. Edwin Hall. Podľa jeho princípu, keď je vodič prenášajúci prúd umiestnený do magnetického poľa, vytvára sa cez jeho okraje napätie kolmé na smery prúdu aj magnetického poľa. Nezaoberajme sa príliš hlboko touto koncepciou, ale zjednodušene povedané, pomocou Hallovho snímača merame magnetické pole okolo vodiča prenášajúceho prúd. Toto meranie bude vyjadrené v milivoltoch, ktoré sme nazvali ako Hallovo napätie. Toto namerané Hallove napätie je úmerné prúdu, ktorý pretekal vodičom.
Hlavnou výhodou použitia prúdového snímača ACS712 je to, že dokáže merať striedavý aj jednosmerný prúd a tiež poskytuje izoláciu medzi záťažou (záťaž AC / DC) a meracou jednotkou (časť mikrokontroléra). Ako je znázornené na obrázku, na module máme tri piny, ktoré sú Vcc, Vout a Ground.
2-pólová svorkovnica je miestom, kde by mal prechádzať vodič prenášajúci prúd. Modul pracuje na + 5 V, takže Vcc by mal byť napájaný z 5 V a zem by mala byť pripojená k zemi systému. Pin Vout má ofsetové napätie 2 500 mV, čo znamená, že keď vodičom nepreteká žiadny prúd, bude výstupné napätie 2 500 mV a pri pozitívnom prúde bude napätie väčšie ako 2 500 mV a pri negatívnom prúde napätie bude nižšie ako 2 500 mV.
Budeme používať modul ADC mikrokontroléra PIC na čítanie výstupného napätia (Vout) modulu, ktoré bude 512 (2 500 mV), keď vodičom nepreteká žiadny prúd. Táto hodnota sa zníži, keď prúd bude prúdiť v negatívnom smere, a bude sa zvyšovať, keď prúd bude prúdiť v kladnom smere. Nasledujúca tabuľka vám pomôže pochopiť, ako sa líši výstupné napätie a hodnota ADC v závislosti od prúdu prechádzajúceho vodičom.
Tieto hodnoty boli vypočítané na základe informácií uvedených v údajovom liste ACS712. Môžete ich tiež vypočítať pomocou nasledujúcich vzorcov:
Napätie Vout (mV) = (Hodnota ADC / 1023) * 5 000 Prúd vodičom (A) = (Vout (mv) -2500) / 185
Teraz, keď vieme, ako senzor ACS712 funguje a čo od neho môžeme čakať. Prejdime k schéme zapojenia.
Schéma zapojenia:
Kompletná schéma zapojenia tohto projektu digitálnych ampérmetrov je uvedená na obrázku nižšie.
Celý obvod digitálneho merača prúdu pracuje na + 5 V, ktoré je regulované regulátorom napätia 7805. Na zobrazenie hodnoty prúdu sme použili LCD 16X2. Výstupný pin aktuálneho senzora (Vout) je pripojený k 7 -tého kolíku PIC, ktorý je AN4 čítať analógové napätie.
Ďalej je v nasledujúcej tabuľke uvedené kolíkové pripojenie pre PIC
S.No: |
PIN kód |
Názov špendlíka |
Pripojený k |
1 |
21 |
RD2 |
RS LCD |
2 |
22 |
RD3 |
E LCD |
3 |
27 |
RD4 |
D4 LCD |
4 |
28 |
RD5 |
D5 LCD |
5 |
29 |
RD6 |
D6 LCD |
6 |
30 |
RD7 |
D7 LCD |
7 |
7 |
AN4 |
Vout of Current Sesnor |
Tento obvod digitálneho ampérmetra môžete zostaviť na nepájivej doske alebo použiť dosku perf. Ak ste sledovali výukové programy PIC, môžete tiež znova použiť hardvér, ktorý sme použili na učenie mikrokontrolérov PIC. Tu sme použili rovnakú dosku perf, ktorú sme postavili pre LED blikanie s mikrokontrolérom PIC, ako je uvedené nižšie:
Poznámka: Nie je nevyhnutné, aby ste zostavovali túto dosku, môžete jednoducho postupovať podľa schémy zapojenia a zostaviť svoj obvod na doske s chlebom a pomocou ľubovoľnej súpravy na vyskladnenie vyložiť program do mikrokontroléra PIC.
Simulácia:
Tento obvod merača prúdu je možné simulovať aj pomocou programu Proteus predtým, ako skutočne začnete s hardvérom. Priraďte hexadecimálny súbor kódu uvedeného na konci tohto tutoriálu a kliknite na tlačidlo prehrať. Aktuálny stav by ste si mali všimnúť na LCD displeji. Použil som lampu ako záťaž striedavého prúdu. Môžete zmeniť vnútorný odpor lampy kliknutím na ňu, aby ste zmenili prúd, ktorý ňou preteká.
Ako vidíte na obrázku vyššie, ampérmeter zobrazuje skutočný prúd pretekajúci lampou, ktorý je okolo 3,52 A, a LCD zobrazuje prúd okolo 3,6A. Avšak v praktickom prípade by sme sa mohli dostať Chyba až 0,2A. Hodnota ADC a napätie v (mV) sú pre vaše pochopenie zobrazené aj na LCD displeji.
Programovanie mikrokontroléra PIC:
Ako už bolo povedané, kompletný kód nájdete na konci tohto článku. Tento kód je vysvetlený pomocou riadkov s komentármi a týka sa iba konceptu prepojenia LCD s mikrokontrolérom PIC a použitia modulu ADC v mikrokontroléri PIC, ktorému sme sa už venovali v našich predchádzajúcich výučbách učenia mikrokontrolérov PIC.
Hodnota načítaná zo snímača nebude presná, pretože prúd sa strieda a je tiež vystavený šumu. Preto sme hodnotu ADC načítali 20-krát a spriemerovali sme ju, aby sme dostali príslušnú aktuálnu hodnotu, ako je uvedené v nižšie uvedenom kóde.
Na výpočet hodnoty napätia a prúdu sme použili rovnaké vzorce, ktoré boli vysvetlené vyššie.
for (int i = 0; i <20; i ++) // Čítanie hodnoty pre 20-krát {adc = 0; adc = ADC_Read (4); // Čítanie napätia ADC = adc * 4,8828; // Vypočítajte napätie if (Voltage> = 2500) // Ak je prúd kladný Amps + = ((Voltage-2500) /18,5); else if (Voltage <= 2500) // Ak je prúd záporný Amps + = ((2500-Voltage) /18,5); } A / = 20; // Priemerná hodnota, ktorá bola prečítaná 20-krát
Pretože tento projekt dokáže čítať aj striedavý prúd, bude aj prúdový prúd záporný a kladný. To znamená, že hodnota výstupného napätia bude nad a pod 2 500 mV. Preto, ako je uvedené nižšie, meníme vzorce pre záporný a kladný prúd tak, aby sme nezískali zápornú hodnotu.
if (Voltage> = 2500) // Ak je prúd kladný Amps + = ((Voltage-2500) /18,5); else if (Voltage <= 2500) // Ak je prúd záporný Amps + = ((2500-Voltage) /18,5);
Použitie 30A prúdového snímača:
Ak potrebujete merať prúd viac ako 5A, môžete si jednoducho kúpiť modul ACS712-30A a prepojiť ho rovnakým spôsobom a zmeniť nasledujúci riadok kódu nahradením 18,5 0,66, ako je uvedené nižšie:
if (Voltage> = 2500) // Ak je prúd kladný Amps + = ((Voltage-2500) / 0,66); else if (Voltage <= 2500) // Ak je prúd záporný Amps + = ((2500-Voltage) /0,66);
Skontrolujte tiež ampérmeter 100 mA pomocou mikrokontroléra AVR, ak chcete merať nízky prúd.
Pracovné:
Akonáhle naprogramujete mikrokontrolér PIC a pripravíte svoj hardvér. Jednoducho zapnite záťaž a váš mikrokontrolér PIC by ste mali byť schopní vidieť prúd prechádzajúci vodičom zobrazený na obrazovke LCD.
POZNÁMKA: AK používate modul ASC7125A, uistite sa, že vaša záťaž nespotrebováva viac ako 5A, tiež použite vodiče s vyšším rozchodom pre vodiče vedúce prúd.
Kompletné fungovanie projektu ampérmetra založeného na mikrokontroléri PIC je zobrazené na videu nižšie. Dúfam, že ste projekt spustili a robili ste ho radi. Ak máte pochybnosti, môžete ich napísať do sekcie komentárov nižšie alebo zverejniť na našom fóre.