Măsurarea curentului alternativ folosind avr. Cum se măsoară tensiunea negativă folosind un ADC

Un voltmetru simplu de tensiune alternativă cu o frecvență de 50 Hz este realizat sub forma unui modul încorporat care poate fi utilizat fie separat, fie încorporat într-un dispozitiv finit.
Voltmetrul este asamblat pe un microcontroler PIC16F676 și un indicator cu 3 cifre și nu conține foarte multe piese.

Principalele caracteristici ale voltmetrului:
Forma tensiunii măsurate este sinusoidală
Valoarea maximă a tensiunii măsurate este de 250 V;
Frecvența tensiunii măsurate - 40…60 Hz;
Rezoluția de afișare a rezultatului măsurării este de 1 V;
Tensiunea de alimentare a voltmetrului este de 7…15 V.
Consum mediu de curent - 20 mA
Două opțiuni de design: cu și fără sursă de alimentare la bord
PCB cu o singură față
Design compact
Afișarea valorilor măsurate pe un indicator LED cu 3 cifre

Schema schematică a unui voltmetru pentru măsurarea tensiunii alternative


S-a implementat măsurarea directă a tensiunii alternative cu calcularea ulterioară a valorii acesteia și ieșirea către indicator. Tensiunea măsurată este furnizată divizorului de intrare realizat pe R3, R4, R5 și prin condensatorul de separare C4 este alimentată la intrarea ADC a microcontrolerului.

Rezistoarele R6 și R7 creează o tensiune de 2,5 volți (jumătate din putere) la intrarea ADC. Condensatorul C5, de capacitate relativ mică, ocolește intrarea ADC și ajută la reducerea erorilor de măsurare. Microcontrolerul organizează funcționarea indicatorului în modul dinamic pe baza întreruperilor de la cronometru.

--
Vă mulțumim pentru atenție!
Igor Kotov, redactor-șef al revistei Datagor


🕗 01/07/14 ⚖️ 19.18 Kb ⇣ 239 Salut, cititor! Mă numesc Igor, am 45 de ani, sunt siberian și inginer electronist amator pasionat. Am venit cu, am creat și întrețin acest site minunat din 2006.
De mai bine de 10 ani, revista noastră există doar pe cheltuiala mea.

Bun! Freebie-ul s-a terminat. Dacă vrei fișiere și articole utile, ajută-mă!

Conectarea senzorului de curent la microcontroler

După ce ne-am familiarizat cu elementele de bază ale teoriei, putem trece la problema citirii, transformării și vizualizării datelor. Cu alte cuvinte, vom proiecta un simplu contor de curent continuu.

Ieșirea analogică a senzorului este conectată la unul dintre canalele ADC ale microcontrolerului. Toate transformările și calculele necesare sunt implementate în programul microcontrolerului. Pentru afișarea datelor este utilizat un indicator LCD cu două linii.

Design experimental

Pentru a experimenta cu un senzor de curent, este necesar să asamblați structura conform diagramei prezentate în Figura 8. Autorul a folosit o placă de breadboard și un modul bazat pe microcontroler pentru aceasta (Figura 9).

Modulul senzor de curent ACS712-05B poate fi achiziționat gata făcut (se vinde foarte ieftin pe eBay) sau îl puteți realiza singur. Capacitatea condensatorului filtrului este aleasă să fie de 1 nF, iar pentru sursa de alimentare este instalat un condensator de blocare de 0,1 µF. Pentru a indica pornirea, un LED cu o rezistență de stingere este lipit. Sursa de alimentare și semnalul de ieșire al senzorului sunt conectate la conectorul de pe o parte a plăcii modulului, un conector cu 2 pini pentru măsurarea curentului care curge este situat pe partea opusă.

Pentru experimentele de măsurare a curentului, conectăm o sursă de tensiune constantă reglabilă la bornele de măsurare a curentului ale senzorului printr-un rezistor în serie de 2,7 Ohm / 2 W. Ieșirea senzorului este conectată la portul RA0/AN0 (pin 17) al microcontrolerului. Un indicator LCD cu două linii este conectat la portul B al microcontrolerului și funcționează în modul pe 4 biți.

Microcontrolerul este alimentat de o tensiune de +5 V, aceeași tensiune este folosită ca referință pentru ADC. Calculele și transformările necesare sunt implementate în programul microcontrolerului.

Expresiile matematice utilizate în procesul de conversie sunt prezentate mai jos.

Sensibilitatea senzorului de curent Sens = 0,185 V/A. Cu o alimentare Vcc = 5 V și o tensiune de referință Vref = 5 V, relațiile calculate vor fi următoarele:

Cod de ieșire ADC

Prin urmare

Ca rezultat, formula de calcul a curentului este următoarea:

Notă importantă. Relațiile de mai sus se bazează pe presupunerea că tensiunea de alimentare și tensiunea de referință pentru ADC sunt egale cu 5 V. Cu toate acestea, ultima expresie care raportează curentul I și codul de ieșire ADC Count rămâne valabilă chiar dacă tensiunea de alimentare fluctuează. Acest lucru a fost discutat în partea teoretică a descrierii.

Din ultima expresie se poate observa că rezoluția curentă a senzorului este de 26,4 mA, ceea ce corespunde la 513 eșantioane ADC, adică cu o probă mai mult decât rezultatul așteptat. Astfel, putem concluziona că această implementare nu permite măsurarea curenților mici. Pentru a crește rezoluția și sensibilitatea atunci când măsurați curenți mici, va trebui să utilizați un amplificator operațional. Un exemplu de astfel de circuit este prezentat în Figura 10.

Program de microcontroler

Programul de microcontroler PIC16F1847 este scris în limbaj C și compilat în mediul mikroC Pro (mikroElektronika). Rezultatele măsurătorilor sunt afișate pe un indicator LCD cu două linii, cu o precizie de două zecimale.

Ieșire

Cu curent de intrare zero, tensiunea de ieșire ACS712 ar trebui să fie în mod ideal strict Vcc/2, adică. Numărul 512 trebuie citit de la ADC. Deviația tensiunii de ieșire a senzorului cu 4,9 mV face ca rezultatul conversiei să se modifice cu 1 bit cel mai puțin semnificativ al ADC (Figura 11). (Pentru Vref = 5,0 V, rezoluția ADC pe 10 biți va fi 5/1024 = 4,9 mV), ceea ce corespunde la 26 mA de curent de intrare. Rețineți că pentru a reduce influența fluctuațiilor, este recomandabil să faceți mai multe măsurători și apoi să faceți o medie a rezultatelor acestora.

Dacă tensiunea de ieșire a sursei de alimentare reglate este setată egală cu 1 V, prin
rezistorul ar trebui să transporte un curent de aproximativ 370 mA. Valoarea curentului măsurat în experiment este de 390 mA, care depășește rezultatul corect cu o unitate a cifrei celei mai puțin semnificative a ADC (Figura 12).

Figura 12.

La o tensiune de 2 V, indicatorul va afișa 760 mA.

Aceasta încheie discuția noastră despre senzorul de curent ACS712. Cu toate acestea, nu am mai abordat o problemă. Cum se măsoară curentul AC folosind acest senzor? Rețineți că senzorul oferă un răspuns instantaneu corespunzător curentului care curge prin cablurile de testare. Dacă curentul curge în sens pozitiv (de la pinii 1 și 2 la pinii 3 și 4), sensibilitatea senzorului este pozitivă și tensiunea de ieșire este mai mare decât Vcc/2. Dacă curentul își schimbă direcția, sensibilitatea va fi negativă și tensiunea de ieșire a senzorului va scădea sub nivelul Vcc/2. Aceasta înseamnă că atunci când se măsoară un semnal AC, ADC-ul microcontrolerului trebuie să preleveze suficient de rapid pentru a putea calcula valoarea RMS a curentului.

Descărcări

Codul sursă al programului microcontrolerului și fișierul pentru firmware -

Voltmetru AC

N. OSTROUKHOV, Surgut

Articolul descrie un voltmetru cu tensiune alternativă. Este asamblat pe
microcontroler și poate fi folosit ca dispozitiv de măsurare autonom
sau ca voltmetru încorporat într-un generator de joasă frecvență.

Voltmetrul propus este proiectat
pentru măsurarea tensiunii alternative sinusoidale cu o frecvență de la 1 Hz la
800 kHz. Intervalul de tensiune măsurat - 0…3 V (sau 0…30 V cu extern
divizor de tensiune 1:10). Rezultatul măsurării este afișat pe
indicator LED din patru cifre. Se determină precizia măsurării
parametrii ADC încorporați în microcontroler și sursa de referință
tensiune şi este egală cu 2 mV (pentru intervalul 0...3 V). Voltmetrul este alimentat de
sursa de tensiune stabilizata 5 V si consuma curent 40...65 mA V
în funcție de indicatorul utilizat și de luminozitatea strălucirii acestuia. Consum curent
de la convertorul de polaritate încorporat, nu depășește 5 mA.

Dispozitivul include (vezi diagrama de pe
orez. 1) include un convertor de tensiune AC-DC, un tampon
Amplificator de tensiune DC, voltmetru digital și convertor
polaritatea tensiunii de alimentare. Convertor de tensiune AC la AC
constantă colectată pe comparatorul DA1, generator de impulsuri pe elemente
DD1.1-DD1.4 și tranzistorul de comutare VT1. Să ne uităm la munca lui
mai multe detalii. Să presupunem că nu există niciun semnal la intrarea dispozitivului. Apoi tensiunea
la intrarea inversoare a comparatorului DA1 este egal cu zero, iar la intrarea neinversoare se determină
divizor de tensiune R19R22 și cu valorile indicate pe diagramă este de aproximativ -80
mV. În acest caz, există un nivel scăzut la ieșirea comparatorului, care
permite generatorului de impulsuri să funcționeze. Particularitatea generatorului este că atunci când
fiecare cădere de tensiune la ieșirea comparatorului DA1 la ieșirea generatorului (pin 8
elementul DD1.2) este generat un impuls. Dacă până la scădere este o zi liberă
starea comparatorului nu se va schimba, va fi generat următorul impuls etc.

Durata impulsurilor depinde de
valorile elementelor R16, C5 și este de aproximativ 0,5 μs. La nivel scăzut
tensiune la ieșirea elementului DD1.2, tranzistorul VT1 se deschide. Denominații
rezistențele R17, R18 și R20 sunt selectate astfel încât printr-un tranzistor deschis
curgea un curent de 10 mA, care încarcă condensatoarele C8 și C11. În perioada de valabilitate
Fiecare impuls încarcă acești condensatori cu fracțiuni de milivolt. În stare de echilibru
modul, tensiunea pe ele va crește de la -80 mV la zero, rata de repetiție
impulsurile generatorului vor scădea și impulsurile curentului colector ale tranzistorului VT1
va compensa doar descărcarea lentă a condensatorului C11 printr-un rezistor
R22. Astfel, din cauza offsetului negativ inițial mic,
chiar și în absența unui semnal de intrare, invertorul funcționează normal
modul. Când se aplică o tensiune de intrare AC din cauza unei modificări a ratei de repetiție
impulsurile generatorului, tensiunea la condensatorul C11 se modifică în conformitate cu
amplitudinea semnalului de intrare. Filtrul trece jos R21C12 netezește tensiunea de ieșire
convertor Trebuie remarcat doar că
semiundă pozitivă a tensiunii de intrare, deci dacă este asimetrică
relativ la zero, va apărea o eroare suplimentară.

Amplificator tampon cu câștig
angrenajele 1.2 sunt asamblate pe amplificatorul operațional DA3. Dioda VD1 conectată la ieșirea sa protejează
intrări ale microcontrolerului de la tensiunea de polaritate negativă. De la ieșirea amplificatorului operațional DA3
prin divizoarele rezistive de tensiune R1R2R3 si R4R5 tensiune constanta
ajunge pe liniile PC0 și PC1 ale microcontrolerului DD2, care sunt configurate ca
Intrări ADC. Condensatorii C1 și C2 suprimă în plus interferența și interferențele. De fapt
voltmetrul digital este asamblat pe un microcontroler DD2, care utilizează
ADC de 10 biți încorporat și sursă internă de tensiune de referință de 1,1 V.

Program pentru microcontroler
scris folosind mediul BASCOM-AVR și permite utilizarea trei-sau
indicatoare LED digitale din patru cifre cu un anod comun sau comun
catod și vă permite să afișați curentul (pentru un semnal sinusoidal) sau
valoarea amplitudinii tensiunii semnalului de intrare, precum și modificarea luminozității
indicator luminos Nivelul logic al semnalului pe linia PC3 specifică tipul aplicat
indicator - cu un anod comun (scăzut) sau cu un catod comun (înalt), și pe linie
PC4 este numărul cifrelor sale, patru pentru mic și trei pentru mare. Program
la începutul lucrului, citește o dată nivelurile de semnal de pe aceste linii și se ajustează
microcontrolerul să funcționeze cu indicatorul corespunzător. Pentru patru biți
indicator, rezultatul măsurării este afișat sub forma X.ХХХ (B), pentru un format de trei cifre
- XXX (mV) până la 1 V și Х.ХХ (V), dacă tensiunea este mai mare de 1 V. Când este utilizat
a unui indicator cu trei cifre, bornele cifrelor sale sunt conectate ca bornele a trei
cei mai semnificativi biți ai celor patru biți din Fig. 1.

Nivelul semnalului de pe linia PC2 controlează
înmulțind rezultatul măsurării cu 10, ceea ce este necesar atunci când se utilizează extern
divizor de tensiune 1:10. Când nivelul este scăzut, rezultatul nu este înmulțit Semnal cu
linia PB6 controlează luminozitatea indicatorului, la un nivel ridicat
scade. Modificarea luminozității are loc ca urmare a unei modificări a raportului dintre
timpul de iluminare și timpul de stingere a indicatorului în cadrul fiecărui ciclu de măsurare.
Cu constantele specificate în program, luminozitatea se schimbă de aproximativ două ori.
Valoarea efectivă a tensiunii de intrare este afișată atunci când este aplicată liniei PB7
nivel ridicat și amplitudine - scăzută. Niveluri de semnal pe liniile RS2, PB6 și
Programul PB7 analizează măsurătorile din fiecare ciclu și, prin urmare, pot fi
schimbat în orice moment, pentru care este convenabil să folosiți comutatoare. Durată
un ciclu de măsurare este egal cu 1,1 s. În acest timp, ADC efectuează aproximativ 1100
probe, cel maxim este selectat și înmulțit, dacă este necesar, cu
coeficientul necesar.

Pentru constantă măsurată
tensiunea ar fi suficientă pentru o măsurătoare pentru întregul ciclu și pentru alternare
cu o frecvență mai mică de 500 Hz, tensiunea pe condensatoarele C8. C11 se schimbă vizibil
în timpul ciclului. Prin urmare, 1100 de măsurători la intervale de 1 ms permit
înregistrați valoarea maximă a perioadei. Convertor de polaritate
tensiunea de alimentare este asamblată pe cipul DA2 conform circuitului standard. E ziua lui liberă
tensiunea -5 V alimentează comparatorul DA1 și op-amp DA3. Conectorul XP2 este destinat
programarea în hardware a microcontrolerului.

Voltmetrul folosește constantă
rezistențe C2-23, MLT, tuning - seria Bourns 3296, oxid
condensatorii sunt importați, restul sunt K10-17. Microcircuitul 74AC00 poate fi
înlocuiți cu KR555LAZ, tranzistorul KT361G - cu oricare din seria KT3107. Dioda 1N5818
înlocuiți cu orice germaniu sau diodă Schottky cu un curent continuu admis de cel puțin
50 mA. Înlocuirea chipului ICL7660 este necunoscut autorului, dar convertorul
polaritatea de tensiune +5/-5 V poate fi colectată conform unuia dintre cele publicate în
schemele revistei „Radio”. În plus, convertorul poate fi eliminat
complet, folosind o sursă de alimentare stabilizată bipolară. In mod deosebit
ar trebui să vă concentrați pe alegerea unui comparator, deoarece intervalul depinde de acesta
frecvente de operare. Alegerea comparatorului LM319 (analogii KA319, LT319) se datorează a două
criterii - viteza și disponibilitatea necesare. Comparatoare LM306,
LM361, LM710 sunt mai rapide, dar s-a dovedit a fi mai dificil să le achiziționați, deoarece
in plus, sunt mai scumpe. Mai accesibile sunt LM311 (analogul domestic al KR554SAZ) și
LM393. Când instalați comparatorul LM311 în dispozitiv, așa cum ar fi de așteptat,
intervalul de frecvență s-a restrâns la 250 kHz. Rezistorul R6 are un relativ
rezistență ușoară deoarece dispozitivul a fost folosit ca încorporat
voltmetru în generatorul de woofer. Când utilizați dispozitivul într-un contor autonom, acesta
rezistența poate fi crescută, dar eroarea de măsurare va crește din cauza relativ
curent de intrare mare al comparatorului DA1.

Circuit divizor de tensiune 1:10
prezentată în fig. 2. Aici funcțiile rezistenței R2 din divizor sunt îndeplinite de rezistență
R6 (vezi Fig. 1). Divizorul de tensiune este configurat într-o anumită secvență.
La intrarea sa sunt furnizate impulsuri dreptunghiulare cu o frecvență de câțiva kiloherți,
amplitudine 2...3 V (un astfel de semnal de calibrare este disponibil în multe
osciloscoape), iar intrarea osciloscopului este conectată la ieșire (la pinul 5 al DA1). Ajustare
condensatorul C1 realizează o formă de impuls dreptunghiulară. Urmează osciloscopul
utilizați cu un divizor de tensiune de intrare de 1:10. Toate piesele, cu excepția indicatorului, sunt montate
pe o placă de circuit prototip care măsoară 100×70 mm folosind cablu
instalare Aspectul uneia dintre opțiunile dispozitivului este prezentat în Fig. 3. Pentru
pentru ușurința de conectare a indicatorului digital, se folosește un conector (nu este prezentat în diagramă
afișate). În timpul instalării, firul comun al mufei de intrare XP1 și bornele condensatorului corespunzătoare
C8, C10, C11 și C13 ar trebui să fie conectate la firul comun într-un singur loc cu fire
lungime minima. Elementele VT1, R20, C8, C10, C11 și C13 și comparatorul DA1
ar trebui să fie plasate cât mai compact posibil, condensatoarele C3, C6 - cât mai mult posibil
mai aproape de bornele comparatorului DA1 și C4, C14, C15 - de bornele microcontrolerului
DD2. Pentru a configura, intrarea dispozitivului este închisă, ieșirea comună a sondei osciloscopului
conectat la borna pozitivă a condensatorului C13, iar borna de semnal la emițător
tranzistorul VT1. Pe ecran ar trebui să apară un impuls de polaritate negativă
cu o amplitudine de aproximativ 0,6 V și o durată de 0,5 μs. Dacă din cauza frecvenței scăzute
succesiunea impulsurilor va fi greu de observat, apoi temporar paralelă
La condensatorul C11 este conectat un rezistor cu o rezistență de 0,1... 1 kOhm. Voltaj
pe condensatorul C12 este controlat cu un voltmetru de înaltă impedanță, ar trebui să fie
aproape de zero (plus sau minus câțiva milivolți).

Tensiunea de ieșire a amplificatorului operațional DA3
(care nu trebuie să depășească câțiva milivolți) cu rezistența R27
set egal cu zero. Modul de operare necesar al microcontrolerului
stabilite prin furnizarea nivelurilor necesare la liniile PB6, PB7, RS2-RS4, pentru care acestea
conectat la un fir comun sau la o linie de alimentare de +5 V prin rezistențe
rezistență 20...30 kOhm. Un exemplu este conectat la intrarea dispozitivului
voltmetru și aplicați o tensiune constantă de 0,95 ... 1 V. Rezistor subșir
R4 egalizează citirile ambelor voltmetre. Apoi tensiunea este crescută la
2,95...3 V și rezistența R1 egalizează din nou citirile. O selecție de rezistențe
R8-R15 puteți seta luminozitatea dorită a indicatorului. Mai întâi ei selectează
denumirea necesară doar a unuia dintre ele și apoi setați restul. La
de selecție, trebuie amintit că curentul maxim de ieșire al portului aplicat
microcontrolerul nu trebuie să depășească 40 mA, iar consumul total de curent - 200
mA.

De la redactor. Programul pentru microcontroler este pe nostru
FTP-cep-vere la ftp://ftp.radio.ru/pub/ 2011/02/Vmetr.zip

Prefaţă

În vremurile vechi, pre-digitale, oricine dintre noi trebuia să se mulțumească cu instrumente de măsurare cu arătătoare, începând de la ceasuri obișnuite, cântare și terminând cu... hmm, așa că imediat nu găsim nici măcar limita utilizării lor! Ei bine, să spunem - un microampermetru de laborator de precizie sau chiar mai impresionant - picoampermetru. Și erau destul de multe clase de precizie, în funcție de scop.

De exemplu, un indicator obișnuit al cantității de combustibil dintr-un rezervor de mașină este cel mai clar exemplu de inexactitate maximă a citirilor! Nu cunosc niciun șofer care să se bazeze pe acest „contor de afișare” și să nu alimenteze în avans. Pesimiștii inveterati ai șoferilor nu au condus niciodată fără o canistră de combustibil în portbagaj!

Dar în laboratoare, în special în Comitetul de verificare de stat, au existat comutatori cu o scală în oglindă și o clasă de precizie mult mai bună decât 0,5.

Și aproape toți am fost mulțumiți și fericiți. Și dacă nu erau mulțumiți, atunci și-au achiziționat instrumente mai precise, desigur, dacă se poate!

Dar acum era digitală a sosit. Cu toții am fost fericiți de asta - acum putem vedea imediat cifrele de pe indicatori și suntem mulțumiți de „acuratețea” oferită nouă. Mai mult, în vremurile moderne, aceste „digitale” omniprezente costă cu un ordin de mărime mai puțin decât „comutatorii inexacți” care au devenit o raritate. Cu toate acestea, puțini oameni cred că cantitățile care ni se arată în cifre rămân în continuare analogice, fie că este vorba de greutate sau de puterea curentă - nu contează. Aceasta înseamnă că aceste mărimi sunt încă măsurate analog! Și doar pentru procesare și prezentare acestea sunt convertite într-o valoare digitală. Aici sunt ascunse erorile, ceea ce ne face să surprindem când două termometre de cameră diferite în același loc arată valori diferite!

Calea de la valoarea măsurată la indicator

Să aruncăm o privire asupra întregului proces de măsurare-indicare. Mai mult, aleg în mod deliberat o cantitate electrică. În primul rând, suntem încă pe site-ul inginerilor electronici, nu al fizicienilor termici sau al brutarilor, să-mi ierte licența de comparație! În al doilea rând, vreau să-mi întăresc raționamentul cu exemple din experiența personală.

În primul rând, aleg puterea actuală!

Va trebui să repet platitudinea că pentru a obține o reprezentare digitală a unei cantități analogice, aveți nevoie de un convertor analog-digital (ADC). Dar, deoarece în sine ne este încă de puțin folos, vom avea nevoie de alte noduri pentru a finaliza tot ceea ce este planificat. Și anume:

  1. în fața ADC-ului însuși, aveți nevoie de un dispozitiv de normalizare, să spunem: un amplificator de normalizare sau atenuator, în funcție de raportul dintre valoarea de intrare și domeniul de conversie ADC;
  2. decodor după ADC, pentru a reprezenta echivalentul numeric convertit în codul digital al indicatorului corespunzător.

Există microcircuite gata făcute care combină atât un ADC, cât și un decodor. De exemplu, ICL7136 sau similar, folosit în multimetre.

În esență, toate aceste noduri într-o formă sau alta sunt pur și simplu necesare. Încă nu am numit senzorul în sine - în acest caz, un convertor curent-tensiune sau pur și simplu un șunt.

Deci, să parcurgem pe scurt întregul lanț. Curentul care trece printr-un șunt (un rezistor puternic cu rezistență foarte scăzută) creează o diferență de potențial la polii săi. Guten Tag, Herr Ohm! Dar această diferență este destul de mică și nu fiecare ADC este capabil să convertească complet această valoare, astfel încât semnalul (tensiunea) de la șunt trebuie amplificat la o valoare acceptabilă. Acesta este motivul pentru care este nevoie de un amplificator de normalizare. Acum ADC, după ce a primit o tensiune digerabilă la intrare, va efectua conversia cu cea mai mică eroare posibilă. La ieșirea sa obținem un număr corespunzător valorii curente a curentului măsurat în intervalul selectat, care trebuie decodat corespunzător pentru a fi afișat pe indicator. De exemplu, convertiți-l într-un cod indicator cu șapte segmente.

Aici nu văd nevoia să mă oprim mai în detaliu asupra fiecărei etape de mai sus, deoarece în articol urmăresc un scop diferit. Și detalii se găsesc din abundență pe Internet.

Specificații

Am așa-numitul sarcină electronică cu indicator de debit de curent. Există o diagramă de bază a sarcinii în sine, dar acolo veți avea nevoie de un ampermetru extern pentru a seta mai precis curentul. Am decis să conectez ambele dispozitive pentru a economisi spațiu și pentru a nu avea un stol întreg de multimetre.

Ampermetrul meu încorporat este asamblat și programat pe Tiny26L MK. O parte a acestui ampermetru este al doilea amplificator operațional (gratuit) al cipului LM358, care face parte din circuitul de balast de bază. Acestea. Acesta este amplificatorul meu de standardizare, deoarece căderea maximă de tensiune pe șunt (5A x 0,1 ohm) este de numai 0,5 volți, ceea ce în mod clar nu este suficient pentru întreaga gamă de conversie cu tensiunea de referință internă.

Potrivit lui T.O. (Engleză = Fișă de date) tensiunea nominală a sursei de referință încorporate (ION) este de 2,56 volți. Dimensiune foarte convenabilă! Cu toate acestea, în practică, nu se dovedește atât de grozav: tensiunea ION ajustată a MK-ului meu s-a dovedit a fi de 2,86 volți! Cum am stabilit că acesta este un subiect separat. Să ne întoarcem totuși la o tensiune convenabilă de 2,56 volți. Uite ce se întâmplă: maxim 0,5 volți cade pe șunt, ADC-ul convertește maximum 2,56 volți. Se sugerează un amplificator de normalizare cu un câștig de 5, atunci numărul obținut în timpul conversiei nu va necesita nicio aritmetică avansată pentru a reprezenta rezultatul: 5 amperi = 2,5 volți = 250 de unități (pentru conversia pe 8 biți). Trebuie doar să înmulțiți rezultatul cu doi și să puneți o virgulă zecimală între sute și zeci pentru a obține o reprezentare foarte convenabilă: unități, zecimi și sutimi de amper. Transformarea finală în semne cu șapte segmente este o chestiune de tehnologie. Totul este în regulă, îl poți implementa în hardware!

Totuși, așa cum am arătat deja cu exemplul ION-ului încorporat, nu este atât de ușor să obțineți o precizie acceptabilă (să nu mai vorbim de mare!) cu componentele utilizate. Puteți lua calea compensării erorilor matematic, folosind un program din MK, deși acest lucru va necesita calibrare. Această cale este destul de ușor de implementat în C și alte limbaje de nivel înalt. Dar pentru mine, un asamblator încăpățânat, să joc cu matematica folosind instrucțiunile RISC este o bătaie de cap în plus!

Am ales o cale diferită - corectarea câștigului amplificatorului de normalizare (NA). Nu aveți nevoie de multe pentru asta - un rezistor de tăiere! Valoarea acestuia trebuie aleasă corect, astfel încât domeniul de reglare să fie suficient, dar nu exagerat.

Selectarea elementelor de amplificare normalizatoare

Deci, este necesar să se determine intervalul de reglare. Primul pas este determinarea toleranțelor componentelor. De exemplu, șuntul meu are o toleranță de eroare de 1%. Alte rezistențe din circuitul amplificatorului de normalizare pot avea o toleranță de până la 10%. Și nu uitați de inexactitatea ION-ului nostru, care în cazul meu s-a ridicat la aproape +12%! Aceasta înseamnă că numărul real convertit va fi cu aproape 12% mai mic. Dar din moment ce știu deja această eroare, o iau în considerare în câștigul NU, care ar trebui să fie 5.72. Și întrucât erorile reale ale altor componente nu sunt cunoscute, rămâne de găsit eroarea totală maximă posibilă pentru a calcula intervalul de ajustare.

O simplă sumă a acestor „procente” sugerează: 1% din șunt plus de 2 ori 10% din rezistențele de feedback ale amplificatorului operațional. Total: 21%.

Să vedem dacă chiar așa este. Pentru a face acest lucru, să aruncăm o privire la partea din diagramă în care este prezentat acest NU cu valori deja selectate:

După cum puteți vedea, există un amplificator non-inversător cu un coeficient de transmisie reglabil, teoretic reglabil de la 4,979 la 6,735 la valorile indicate în diagramă. Dar, dacă luăm în considerare eroarea noastră de ±10% posibilă a fiecăruia dintre rezistențe, obținem, cu cea mai proastă combinație, Ku = 5,864 - 8,009, care depășește clar coeficientul necesar! Dacă apare această combinație, atunci va trebui să luați alte denominațiuni. Este mai bine să creșteți imediat valoarea rezistenței de reglare, de exemplu, la 39k. Atunci limita inferioară a lui Ku va fi 5,454, ceea ce este deja acceptabil.

Ei bine, eu – un „adevărat drogat de radio” – a trebuit să aleg un trimmer dintre cele disponibile și am fost pur și simplu norocos să investesc în gamă! Dacă aș avea un trimmer de altă valoare, nu ar conta, aș recalcula R2 și R3, care în cazul meu au o toleranță de 5%, așa că nu a trebuit să iau alt trimmer.

Depășirea neajunsurilor și omisiunilor tale

S-ar părea că totul a fost gândit și calculat - adăugați o taxă. Să testăm mai întâi acest design pe o placă! Făcut repede şi foarte bine! Ku este reconstruit nu așa cum era de așteptat, ci în limitele a ceea ce este necesar. Cu toate acestea, indicatorul nu avea să arate 0,00 când nu exista curent de sarcină! În primul rând, am bănuit că programul era în MK, dar când intrarea ADC a fost scurtcircuitată la firul comun, au apărut zerourile prețuite. Aceasta înseamnă că ceva vine la intrarea MK, în afară de zero volți. Testarea cu un multimetru a confirmat această ipoteză și a stabilit următoarea sarcină. Fără a intra în detalii ale cercetării mele, voi descrie doar rezultatul.

Motivul s-a dovedit a fi următorul: nu am ținut complet cont de faptul că op-amp-ul pe care l-am folosit era departe de a fi de cea mai bună calitate. Nici măcar nu este așa-zis. „șină la șină”. Aceasta înseamnă că potențialul său de ieșire nu va atinge niciodată niciunul dintre polii de alimentare, de exemplu. in cazul meu nu va fi niciodata egal cu 0 volti! Acum, dacă ar fi alimentat de la o sursă bipolară, atunci ieșirea ar fi zero așteptat. Dar sursa mea de alimentare este unipolară și nu am intenționat să complic circuitul cu vreun convertor. Soluția a fost găsită în crearea unui „pământ virtual”, adică. Datorită unei surse de alimentare separate (spre deosebire de circuitul de bază), am putut folosi o diodă pentru a schimba potențialul firului comun în raport cu polul negativ al bateriei.

Deci, placa este gravată și lipită. Este timpul să împachetați acest design într-o carcasă. Ceea ce, de fapt, s-a făcut. Cu toate acestea, în timpul funcționării, a apărut un alt mic defect - derivarea circuitelor de intrare ale amplificatorului operațional. Acest lucru a fost exprimat într-o schimbare negativă a citirilor, de exemplu. la un curent de câteva zeci de miliamperi, indicatorul încă arăta zerouri, ceea ce nu mi se potrivea! Aș permite o schimbare de câțiva mA - totuși unitățile de miliamperi nu sunt afișate. A trebuit să introduc un circuit de polarizare la intrarea NU.

Evaluările lui R4 și RZ sunt selectate astfel încât să ofere o polarizare de plus/minus câteva zeci de milivolți în raport cu „masa virtuală”. Nu am avut nicio dorință să refac placa finită și am adăugat divizorul ajustabil necesar în locul reglajului Ku.

În general, dispozitivul rezultat îmi satisface nevoile. Desigur, poate fi îmbunătățit pentru o lungă perioadă de timp, dar încă nu este nevoie!

Voi vorbi data viitoare despre partea digitală și matematică folosind exemplul unui volt-amperi într-o sursă de alimentare de laborator.

Un dispozitiv destul de simplu care măsoară tensiunea, curentul și arată puterea totală consumată de sarcină la o frecvență de 50 Hz.

În timpul lucrărilor de reparații sau la verificarea și testarea noilor dispozitive, este adesea necesară alimentarea cu tensiune de la LATR și este necesar să se controleze tensiunea și curentul. În aceste scopuri, un voltmetru-ampermetru a fost dezvoltat și asamblat pe un microcontroler cu un indicator LCD. Deoarece tensiunea și curentul sunt măsurate, puterea totală este ușor de calculat. Rezultatul este un contor foarte compact.
Specificații
1. Limitele de modificare a tensiunii măsurate sunt 0 – 255 volți, rezoluție 0,5 volți. Citirile sunt afișate în trepte de 1 volt.
2. Limite pentru modificarea curentului măsurat 0 – 10 Amperi, rezoluție 20 mA. Citirile sunt afișate în trepte de 10 mA.
3. Puterea aparentă este calculată ca produs dintre curent și tensiune și este afișată numai valoarea întreagă în Volți-Amperi.

Diagramă schematică

Fragment exclus. Revista noastră există din donații de la cititori. Versiunea completă a acestui articol este disponibilă numai


Aplicat în schemă măsurarea directă a tensiunii și curentului alternativ microcontroler.
Tensiunea măsurată prin divizorul R7, R9, R12 și C12 este furnizată la intrarea microcontrolerului prin condensatorul C10. Condensatorul C12, împreună cu divizorul de tensiune de intrare, formează un circuit integrator care împiedică pătrunderea zgomotului de impuls.

Curentul măsurat trece prin șuntul R1, tensiunea îndepărtată din acesta este amplificată de amplificatorul operațional și, prin lanțul R8 și C8, este alimentată la intrarea microcontrolerului. Prima etapă la OP1 este un amplificator inversor cu un condensator de integrare C3 în circuitul de feedback. Datorită faptului că variația de tensiune eliminată de la OP1 ar trebui să fie de aproximativ 5 volți, cipul amplificatorului primește o putere sporită (9-15 volți). A doua etapă a OP2 este pornită de un repetor și nu are caracteristici speciale. Condensatorul C3 servește la reducerea interferențelor în timpul funcționării ADC al microcontrolerului.

Intrările de măsurare RA0 și RA1 primesc o polarizare stabilă constantă de 2,5 volți prin rezistențele R11 și R13. Această tensiune vă permite să măsurați corect semiciclurile pozitive și negative ale tensiunilor de intrare.
Un afișaj LCD este conectat la microcontrolerul PIC16F690, afișând 2 rânduri de 16 caractere. Rezistorul R14 este utilizat pentru a seta contrastul optim al afișajului. Rezistorul R15 determină curentul de iluminare de fundal a afișajului.
Dispozitivul este alimentat de la un transformator separat de 9-12 volți. Stabilizatorul de putere de +5 volți este asamblat pe un cip 78L05 și nu are caracteristici speciale.


Am alimentat dispozitivul de la adaptorul de telefon. Datorită faptului că placa are propria punte Br1, polaritatea conexiunii nu contează. Este important ca tensiunea la condensatorul C4 să fie între 10 și 15 volți.

--
Vă mulțumim pentru atenție!


🕗 20.08.12 ⚖️ 18.04 Kb ⇣ 442 Salut, cititor!

--
Vă mulțumim pentru atenție!
Igor Kotov, redactor-șef al revistei Datagor


🕗 20/08/12 ⚖️ 6,41 Kb ⇣ 457 Salut, cititor! Mă numesc Igor, am 45 de ani, sunt siberian și inginer electronist amator pasionat. Am venit cu, am creat și întrețin acest site minunat din 2006.
De mai bine de 10 ani, revista noastră există doar pe cheltuiala mea.

Bun! Freebie-ul s-a terminat. Dacă vrei fișiere și articole utile, ajută-mă!