luni, 26 septembrie 2016

Releu de protectie la minima si maxima tensiune retea (3)

   In articolul anterior Releu de protectie la minima si maxima tensiune retea (2) am masurat (calculat) tensiunea retelei prin masurarea tensiunii continue redresate din secundarul unui transformator (vezi articolul Masurare valoare tensiune retea: 230V/50Hz) si am comparat-o cu valori predefinite, care se pot modifica si stoca in memoria EEPROM a microcontorlerului de pe placa Arduino. De data asta folosesc masor (calculez) tensiunea retelei prin masurarea tensiunii alternative din secundarului unui transformator peste care suprapun o componenta continua, cum am prezentat in articolul Masurare valoare tensiune retea (2) si o sa pun partea de modificare si memorare valori, iar datele sunt prezentate pe un afisaj led cu cifre din 7 segmente controlate de un MAX7219.
   Schema de test este
si incarcand sketch-ul main_supply_emonlib_under_overvoltage_ver3.ino avem urmatoarele situatii:
- masurare tensiune retea si compararare cu valorile de minima si maxima tensiune, comanda de actionare sau nu a unui releu de alimentare pentru consumatori ce trebuie protejati:
- dupa apasare buton fara retinenere MENU (MENIU) se ajunge la reglajul tensiunii minime (am ales un domeniu de aproximativ -10% pana la -5% din tensiunea nominala de 230Vca)
- dupa apasare buton fara retinenere MENIU se ajunge la reglajul tensiunii maxime (am ales un domeniu de aproximativ +5% pana la +10% din tensiunea nominala de 230Vca)
- la o noua apasare a butonulu MENIU se ajunge timpul de intarziere la recuplare reelu daca tensiunea revine in limite acceptate, de la 1 secunda la 20 secunde;
- la o noua apasare a butonului MENIU, se revine la masurare si suporaveghere tensiune retea.
    Etapele prezentate mai sus se vad in filmuletele:



   Am modificat sketch-ul, acesta fiind acum main_supply_emonlib_under_overvoltage_ver3c.ino pentru a afisa tensiune si cu cifra dupa virgula, dupa cum se vede in filmuletele:
alt releu protectie de minima si maxima tensiune retea cu Arduino (3)
under & overvoltage relay with Arduino (3)

31.07.2020
   Am modificat sketch-ul pentru a inlocui afisajul led controlat cu MAX7219 cu un afisaj alfanumeric LCD1602 cu interfata i2c. Programul este  main_supply_emonlib_under_overvoltage_ver4.ino !

02.08.2020
   Am rescris programul pentru o mai buna cuplare cu intarziere a releului la revenirea tensiunii intre limite, acest sketch este main_supply_emonlib_under_overvoltage_ver4a.ino.

Masurare valoare tensiune retea (2)


    In articolul anterior, am calculat tensiunea retelei dupa ce am masurat tensiunea continua redresata de la un transformator coborator, dar am zis sa testez si varianta de masurarea a tensiunii alternative din secundarului unui transformator peste care se suprapune o tensiune continua, cum este prezentata in articolul Measuring AC Voltage with an AC to AC power adapter de pe site-ul OpenEnergyMonitor:
   Dupa cum se observa, tensiunea din secundarul transformatorului are o valoare mare pentru a fi masurata direct de Arduino si, in plus, are si componenta negativa, de accea se foloseste un divizor cu raportul de 1/11 si apoi se adauga 2,5V tensiune continua, asa ca aceasta tensiune se poate masura de Arduino sau alt microcontroler.
   Am realizat si eu un montaj de test si am incarcat sketch-ul de test din libraria EmonLib:
    Dupa cum am scris mai inainte, daca nu ar fi componenta continua dupa divizor tensiunea ar avea forma:
dar dupa "injectarea" celor 2.5V (jumatate din tensiunea de alimentare a placii Arduino):
   Deoarece sunt greu de urmarit datele pe ecranul de monitorizare seriala, am conectat un modul de afisaj cu 8 cifre led controlate de un MAX7219, care l-am mai folosit si prezentat si prin articole, primul fiind Modul de afisare cu 8 cifre LED din 7 segmente fiecare controlate de MAX7219
   Am pastrat schema de baza, prezentata acolo, pentru libraria LedControl despre care se poate citi in materialul The Arduino LedControl library:
si am conectat pinul A2 la punctul de masura:
   Am scris un sketch pentru a afisa tensiunea, el fiind main_voltage_emonlib_1.ino si am facut teste
ulterior am folosit sketch-ul main_voltage_emonlib_1a2.ino care masoara de 10 ori si face o medie a masuratorilor.
   Am facut si niste filmulete:

 

duminică, 25 septembrie 2016

Multimetru (Tehnium nr.11/1988)

   Acest material a fost publicat in revista Tehnium nr. 11 din 1988 de catre dl. Milian Oros si are o prezentare foarte buna pentru a putea intelege modul de utilizare si, fiind, modular, se poate adapta la diverse scheme, una ar fi inlocuirea voltmetrului dedicat cu C520D si afisaj cu LED-uri cu o placa Arduino (sau un ATmega 328 programat ca Arduino) cu afisaj LCD1602 (alfanumeric cu 16 coloane si 2 randuri)...
pana atunci reproduc articolul.


Nota: Revista Tehnium nr.11 din 1988 poate fi descarcata de la http://blog.copcea.ro/files/tehnium/revista/8811.pdf  si o prezentarea a unui multimetru realizat practic se gaseste pe blogul DFI Recreativ.

miercuri, 21 septembrie 2016

Releu de protectie la minima si maxima tensiune retea (2)

   Fata de articolul precedent, in care pragurile de minima si maxima tensiune erau stabilite din program (sketch), acum am conectat 3 butoane: MENIU/OK, + si -, schema de conectare devenind:
   In prima faza, am implementat cele 3 butoane, obtinand urmatoarele situatii:
- functionare normala, cand se masoara tensiunea, iar daca este in limite, un releu este cuplat si se poate alimenta un consumator, daca este in afara limitelor, se decupleaza releul si se asteapta o anumita perioda, dupa care se reciteste tensiunea si daca e in regula se alimenteaza releul, daca nu se mai astepta un timp
- daca se apasa butonul MENIU se intra in modul de modificare valori
- dupa 2-3 secunde, apare valoarea tensiunii minime acceptate, care se poate creste sau scade din butoanele fara retinere + si -
- dupa apasarea butonului MENIU/OK apare valoarea tensiunii maxime, care se poate modifica ca  inainte
 
- dupa apasarea tastei MENIU apare valoarea timpului de recuplare (in secunde) a relului daca tensiunea este in afara limitelor acceptate
 
- la o noua apasare a tastei MENIU se revine la functionarea normala
    Daca se incarca sketch-ul main_voltage_2.ino valorile se modifica cum am prezentat mai sus, dar la intreruperea alimentarii aceste revin la valorile din program, dupa cum se vede si in filmuletul test releu protectie de minima si maxima tensiune retea (4)
iar daca se incarca sketch-ul main_voltage_3.ino valorile modificate sunt stocate in memoria EEPROM a microcontrolerului cu care e realizata placa de dezvoltare Arduino, dupa cum se vede si in filmuletele:
11.10.2016
   O varianta portabila de releu de protectie pentru consumatori la tensiune scazuta sau crescuta in retea:
si un filmulet din timpul testelor este cel numit releu protectie de minima si maxima tensiune retea cu Arduino (4):

marți, 20 septembrie 2016

Releu de protectie la minima si maxima tensiune retea

   Am completat voltmetrul pentru retea prezentat in articolul Masurare valoare tensiune retea (230V/50Hz) cu un releu care permite alimentarea unui consumator si, totodata, avem indicatie cu 3 leduri, pentru tensiune redusa, tensiune optima.
   Am ales ca praguri 190V pentru tensiune redusa si 250V pentru tensiune mare si am urmatoarele cazuri:
- tensiune scazuta, led galben aprins, releu decuplat, consumatorul nu este alimentat
- tensiune buna, led verde aprins, releu cuplat, consumatorul este alimentat
 
 
- tensiune mare, led rosu aprins, releu decuplat, consumatorul nu este alimentat.
   Schema de test este cam asa:
   Pentru un releu de sine statator, alimentarea placii Arduino, a afisajului si a releului trebuie sa se faca de la un alimentator separat pentru a avea precizie mare, putandu-se folois si un modul de alimentare in comutatie, dar pentru masurare trebuie neaparat transformator cu sistem de redresare si filtrare...
   Intai, am testat partea de comutare a pragurilor, prin variatie liniara de la un minim la un maxim, conform sketch-ului main_voltage_1test.ino si filmuletului test releu protectie de minima si maxima tensiune retea
apoi am schimbat sa am valori aleatorii ale tensiuni, conform sketch-ului main_voltage_1test2.ino si filmuletului test releu protectie de minima si maxima tensiune retea (2)
iar apoi am pus sa masoara incarcand sketch-ul main_voltage_1.ino dupa cum se vede in filmuletul test releu protectie de minima si maxima tensiune retea (3)
   In acest ultim sketch se pot modifica pragurile, mai larg sau mai strict, procent de +10% (207..253V~) sau +5% (218..242V~), valori care se trec la variabilele under si over de asemenea exista o variabila cor care permite corectarea valorii masurate in comparatie cu valoare aindicata de un aparat de masura considerat etalon.

joi, 15 septembrie 2016

Masurare valoare tensiune retea: 230V/50Hz


   Pentru aplicatii in care am nevoie de valoarea tensiunii de la priza m-am gandit sa folosesc un sistem simplu, care imi permite sa il fac si independent: transformator coborator, redresare, filtrare tensiune, stabilizare si reducere la 5V pentru alimentare Arduino sau microcontroler ATmega328 (sau altceva mai slabut).
si schema de test complexa (cu LM7805 pentru stabilizare) desi eu am in montaj un LM317 reglat la 5V, cum am prezentat in articolul Stabilizator tensiune cu LM317:
dar importanta e partea pentru masurare:
   Pentru a avea precizie de masurare, am folosit tensiunea de referinta interna, de 1,1V a placii Arduino, deci tensiunea la pinul A0 nu poate depasi aceasta valoare.
UA0/U2=R1/(R1+R2)
  Tensiunea maxima care o pot masura cu valorile rezistentelor din divizorul rezistiv este:
U2 = UA0*(R1+R2)/R1 = 1,1V*(1k+22k)/1k=25,3V
   Deoarece valoarea tensiunii U2 este:
U2 = U1*1,41-Udiode
rezulta ca tensiunea alternativa in secundar este
U1 = (U2+Udiode)/1,41
rezulta ca valoarea tensiunii din retea 
U0 = U1*k,
unde k este raportul de transformare.

Exemplu: Am un transformator care este inscriptionat 220V/2x12V 220mA dar la iesire am masurat 11V deci raportul de transformare este 220:11=20. Caderea de tensiune pe o dioda redresoare 1N4007 in sarcina este de 0,6.-0,7V, alegem valoare Udiode=0,65V. Deoarece si rezistentele au o toleranta, voi folosi si un coeficient de corectie, pentur a avea o indicatie ca a unui aparat de masura.

   Am folosit un afisaj controlat de integratul TM1637 cu 4 cifre led din 7 segmente fiecare, pe care l-am prezentat pe blog, in articolul de la http://nicuflorica.blogspot.ro/2016/04/afisaj-cu-4-cifre-controlate-de-tm1637.html si caruia i-am adaptat si o librarie gasita pe net, dupa cum gasiti pe canalul de Github: https://github.com/tehniq3/TM1637-display.
   Am pastrat schema de conectare la placa compatibila Arduino Uno:
si am conectat si pinul A0 la divizorul rezistiv, pe langa alimentare.
   Am facut niste filmulete, in care prezint cele descrise mai sus, in care sketch-ul folosit este main-voltage_0.ino:





PS: O metoda interesanta este prezentata in articolul Measuring AC Voltage with an AC to AC power adapter