SMAR TMETER CU TRANSMISIE RADIO A DATELOR BAZAT PE MICROCONTROLER CONDUCĂTOR ȘTIINȚIF IC: Conf. dr. ing. Florin ENACHE ABSOLVENT : Stud. Plt. Maj…. [626541]

BUCUREȘTI
2018 ROMÂNIA
MINISTERUL APĂRĂRII NAȚIONALE
ACADEMIA TEHNICĂ MILITARĂ
“FERDINAND I”

FACULTATEA DE SISTEME ELECTRONICE ȘI INFORMATICE MILITARE
Specializarea : Transmisiuni

SMAR TMETER CU TRANSMISIE RADIO A DATELOR
BAZAT PE MICROCONTROLER

CONDUCĂTOR ȘTIINȚIF IC:
Conf. dr. ing. Florin ENACHE

ABSOLVENT: [anonimizat]. Mihăiță RĂDOI

Conține ____________ file
Inventariat sub nr. ______
Poziția din indicator: ____
Termen de păstrare: _____

NECLASIFICAT
NECLASIFICAT
6 din 105 CUPRINS

CAPITOLUL 1 – INTRODUCERE ………………………….. ………………………….. … 10
CAPITOLUL 2 – PARAMETRI ELECTRI CI CARACTERISTICI
SARCINILOR ÎN REȚELELE ELECTRICE ………………………….. ……………….. 12
2.1 Tipuri de sarcini electrice ………………………….. ………………………….. ……….. 12
2.1.1 Sarcini rezistive ………………………….. ………………………….. ……………….. 12
2.1.2 Sarcini parțial reactive ………………………….. ………………………….. ……… 13
2.2 Putere activă, reactivă și aparentă ………………………….. ………………………… 15
2.3 Triunghiul puterii ………………………….. ………………………….. ………………….. 16
2.4. Calcularea paramet rilor electrici ………………………….. …………………………. 18
2.5 Factor de putere ………………………….. ………………………….. …………………….. 19
2.6. Factorul total de distorsiune ………………………….. ………………………….. …… 21
CAPITOLUL 3 – ELEMENTELE COMPONENTE ALE SISTEMULUI
SMARTMETER ………………………….. ………………………….. ………………………….. .. 23
3.1 Placa de dezvoltare Arduino Mega2560 ………………………….. ……………….. 23
3.1.1 I ntroducere în Arduino ………………………….. ………………………….. ……… 23
3.1.2 De ce Arduino? ………………………….. ………………………….. ……………….. 24
3.1.3. Caracteristici tehnice și funcționare Arduino MEGA ……………………. 25
3.2. Transformatorul de curent electric (CT) ………………………….. ………………. 26
3.2.1. Senzorul curent non invaziv 30 A ………………………….. ………………….. 27
3.2.2 Rezistența de sarcină ………………………….. ………………………….. ………… 29
3.3. Transformatorul de tensiune ………………………….. ………………………….. …… 30
3.4. Modul LCD SPI de 3.5'' cu Touchscreen ………………………….. ……………… 32
3.5 Modulul Bluetooth HC -05 ………………………….. ………………………….. ……… 34
3.5.1 Conectarea și configurarea modulului ………………………….. …………….. 37
CAPITOL UL 4 – REALIZAREA PRACTICĂ A UNUI SISTEM
SMARTMETER ………………………….. ………………………….. ………………………….. .. 39
4.1 Proiectarea sistemului Smartmeter ………………………….. ……………………….. 39
4.2 Analiza și interfațarea compon entelor în sistemul de măsurare ……………. 41
4.2.1 Transformatorul de curent – Interfațarea în sistem ………………………… 41
4.2.2 Transformatorul de tensiune – Interfațarea în sistem …………………….. 48
4.3 Interfațarea aplicațiilor și descrierea sistemului ………………………….. ……… 55
4.3.1 Interfețele grafice ………………………….. ………………………….. …………….. 55
4.3.2 Realizarea aplicațiilor pentru smartphone ………………………….. ……….. 58
CAPITOLUL 5 – METODE DE OPTIMIZARE A CONSUMULUI
ENERGETIC ………………………….. ………………………….. ………………………….. ……. 61
5.1 Optimizarea consumului energetic ………………………….. ……………………….. 61
5.2. Monitorizarea puterii reactive și a factorului de distorsiune ……………….. 64
5.2.1. Reglementările standardului IEC ………………………….. ………………….. 66
CAPITOLUL 6 – DIFICULTĂȚI ÎNTÂMPINATE ÎN REALIZAREA
PROIECTULUI ………………………….. ………………………….. ………………………….. … 70

NECLASIFICAT
NECLASIFICAT
7 din 105 CAPITOLUL 7 – CONCLUZII ȘI PERSPECTIVE DE DEZVOLTARE …….. 72
7.1 Concluzii ………………………….. ………………………….. ………………………….. …. 72
7.2 Perspective de dezvoltare ………………………….. ………………………….. ……….. 73
BIBLIOGRAFIE ………………………….. ………………………….. ………………………….. . 75
ANEXE ………………………….. ………………………….. ………………………….. ……………. 76
Anexa 1.1 ………………………….. ………………………….. ………………………….. ………. 76
Anexa 1.2 ………………………….. ………………………….. ………………………….. ………. 90
Anexa 1.3 ………………………….. ………………………….. ………………………….. …….. 103
Anexa 1.4 ………………………….. ………………………….. ………………………….. …….. 105

NECLASIFICAT
NECLASIFICAT
8 din 105 Listă figuri

Figura 2.1 – Relația fazei de tensiune și de curent într -o sarcină rezistivă ……… 13
Figura 2.2 – Relația fazei de ten siune și curent într -o sarcină parțial reactivă … 13
Figura 2.3 – Relația fazei de tensiune și curent când se generează energie …….. 15
Figura 2.4 – Triunghiul puterii ………………………….. ………………………….. ………… 16
Figura 2.5 – Absorția de curent într -o sarcină neliniară ………………………….. …… 21
Figura 3.1 – Arduino MEGA 2560 ………………………….. ………………………….. …… 24
Figura 3.2 – Reprezentare semnal TTL 5V ………………………….. ……………………. 25
Figura 3.3 – a) Transformator de current cu miez divizat, YHDC SCT -013-000;
b) Transforma tr de curent cu miez inelar ………………………….. ………………………. 27
Figura 3.4 – Senzorul de curent non invaziv de 30 A, SCT -013-030 …………….. 27
Figura 3.5 – Fixarea CT -ului pe firul de fază ………………………….. …………………. 28
Figura 3.6 – Schema de circuit a senzorului de curent ………………………….. ……. 30
Figura 3.7 – Schema de circuit a transformatorului de t ensiune ……………………. 31
Figura 3.8 – Modul LCD SPI de 3.5'' cu Touchscreen ………………………….. ……. 32
Figura 3.9 – Comunicație SPI ………………………….. ………………………….. …………. 33
Figura 3.10 – Schema de conectare a modulului LCD la Arduino MEGA ……. 33
Figura 3.11 – Modulul Bluetooth HC -05 ………………………….. ………………………. 34
Figura 3.12 – Shield Bluetooth HC -05 ………………………….. ………………………….. 35
Figura 3.13 – Conectarea și afișarea datelor transmise prin Bluetooth ………….. 36
Figura 3.14 – Formatul pachetelor de date transmise asincron prin Bluetooth .. 37
Figura 3.14 – Toolbox Bluetooth MATLAB R2015a ………………………….. ……… 38
Figura 4.1 – Schema bloc generală a algoritmului Arduino …………………………. 39
Figura 4.2 – Schema de montare a componentelor Smartmeter -ului ……………… 41
Figura 4.3 – Schema de circuit detaliată a senzorului de curent ……………………. 43
Figura 4.4 – Valorile medii ale eșantioanelor formei de undă ………………………. 45
Figura 4.5 – Citirea senzorilor în cazul neconectării niciunui consumator ……. 46
Figura 4.6 – Schema bloc a convertorului analogic -digital ………………………….. 47
Figura 4.7 – Schema de circuit și formele de undă de tensiune …………………….. 51
Figura 4.8 – Inversarea sensului transformatorului de curent ……………………….. 52
Figura 4.9 – Distorsionarea formelor de undă cauzate de zgomot …………………. 53
Figura 4.10 – Forma de undă de curent în lipsa condensatorului electrolitic ….. 53
Figura 4.11 – Forma de undă în prezența condensatorului electrolitic ……………. 54
Figura 4.12 – Forma de undă de curent a) în prezența condensatorului
electrolitic; b) în lipsa condensatorului electrolitic ………………………….. …………. 54
Figura 4.13 – Smartmeter cu transm isie Bluetooth ………………………….. …………. 55
Figura 4.14 – Meniuri Bluetooth HC-05 ale interfețelor grafice …………………… 56
Figura 4.15 – Interfața grafică în Matlab R201 5 a sistemului Smartmeter …….. 56
Figura 4.16 – Atenționarea prin email a stării consumului de energie …………… 57
Figura 4.17 – Încapsularea si stemului Smartmeter ………………………….. …………. 57
Figura 4.18 – Prezentarea sistemului Smartmeter ………………………….. …………… 58
Figura 4.19 – Aplicația smartphone de monitorizare energ ie consumate ……….. 59

NECLASIFICAT
NECLASIFICAT
9 din 105 Figura 4.20 – Aplicația a II -a a sistemului Smartmeter pe Android ………………. 60
Figura 4.21 – Aplicația a III -a a sistemului Smartmeter pentru Android ……….. 60
Figura 5.1 – Parametrii electrici ai laptopului înainte de filtrarea armonicilor .. 62
Figura 5.2 – Filtre FIR pentru optimizarea factorului de putere ……………………. 62
Figura 5.3 – Spectrele de tensiune și de curent filtrate ………………………….. ……. 63
Figura 5.4 – Curba L issajous după compensarea factorului de putere ………….. 63
Figura 5.5 – Grafic mesh I(U,t) ………………………….. ………………………….. ……….. 64
Figura 5.6 – Puterea instantanee a unui lapt op………………………….. ……………….. 65
Figura 5.7 – Puterea activă și reactivă a unui bec cu incandescență ………………. 65
Figura 5.8 – Puterea reactivă a laptopului ………………………….. ……………………… 67
Figura 5.9 – Armonica a treia de curent la frecvența de 150 Hz …………………… 67
Figura 5.10 – Caracteristici circuit combinat de consumator rezistiv -reactiv …. 69
Figura 6.1 – Schema demonstrativă a rezoluției mici a armonicii a treia ……….. 70

NECLASIFICAT
NECLASIFICAT
10 din 105 CAPITOLUL 1 – INTRODUCERE
Această lucrare de diplomă tratează î n detaliu analiza, modelarea și
construirea unui dispozitiv inteligent de măsurare a parametrilor electrici specifici
fiecărui tip de consumator electric , precum și optimizarea performanțelor
energetice prin reducerea consumului de energie electrică .
Subie ctul lucrării este unul extrem de important în condiț iile actuale când,
la nivel global se pune foarte mult accen tul pe economisirea resurselor ș i pe
dezvoltarea rețelelelor electrice inteligente, smart grids, care trebui e să asigure
flexibilitate, eficien ță economică, pierderi reduse, un nivel ridicat al calității
energiei electrice, securitate și siguranța alimentării cu energie electrică .
Dispozitivele Smartmeter , o formă comună de tehnologie a rețelei
inteligente, sunt contoare digitale inteligente care înlocuiesc vechile contoare
analogice utilizate în locuințe pentru a înregistra consumul electric. [9 ] Măsurarea
inteligentă a parametrilor electrici implică, în esență, un contor electronic,
suplimentat cu un co ntrol complet de la distanță , analiza pute rii și a consumului
energetic, a valorilor variabile în timp ale diverșilor parametri electrici, precum și
mecanisme anti -manipulare, alertă în caz de avarie și multe alte posibilități.
Utilizarea comunicațiilor prin linie de alimentare (PLC) sau a altor t ehnologii prin
cablu sau wireless pentru a conecta contorul la furnizorul de servicii permite ca
toate caracteristicile de mai sus să fie fezabile și compatibile cu viitoarele
protocoale de rețea inteligentă.
Un monitor de energie la domiciliu furnizează f eedback despre utilizarea
energiei electrice , precum și afișarea și înregistrarea diverșilor parametri ai
curentului electric . Diferite studii au arătat o reducere a consumului de energie
electrică între 4÷15% prin utilizarea afișării inteligente a energi ei la domiciliu. [9]
Utilizarea energiei electrice poate fi măsurată cu un senzor de curent
neinvaziv de tip clește, plasat în jurul centrului electric, comunicând cu un contor
inteligent care este conectat direct la sistemul electric. Partea de afișare po ate fi
realizată la distanță față de cea de măsurare, comunicația cu senzorul se face
utilizând un cablu, o rețea, o comunicație cu linia de alimentare sau folosind
comunicația radio. Sunt disponibile și afișaje online care permit utilizatorului,
conectat la internet, să utilizeze un afișaj online al consumului în timp real.
Pentru atingerea obiectivelor propuse și pentru prezentarea într -un mod cât
mai clar și ușor de înțeles, dar care să păstreze caracterul științific, lucrarea va fi
structurată pe șapte capitole.
În cadrul primul ui capitol sunt prezentate noțiuni introductive generale
referitoare la monitoarele inteligente de energie , precum și punct area obiectivelor
urmări te în cadrul fiecărui capitol.
Cel de -al doilea capitol evidențiază aspectele teore tice legate de parametrii
și mărimile caracteristice ale sistemului electric . Noțiunile prezentate în cadrul
acest ui capitol au rolul de a oferi o perspectivă amplă asupra funcționalității și
analizei regimurilor de funcționare specifice unui anumit tip de consumator .

NECLASIFICAT
NECLASIFICAT
11 din 105 În acest capitol s e face referire în special la regimurile de funcționare
nesimetrice ale circuitelor electrice , punându -se accentul pe factorii care
influențează aceste regimuri.
Capitolul trei caracterizează din punct de vedere tehnic eleme ntele
componente ale sistemului inteligent de masură , analiza componentelor
electronice , precum și configurarea modulelor LCD și Bluetooth.
În cadrul c apitolul ui patru este cuprinsă implementarea părții practice a
sistemului Smartmeter. Se detaliază modul cum a fost gândită proiectare
dispozitivului de măsură , anali za și interfațarea componentelor în sistem, precum
și precizia efectuării măsurătoriilor. Sunt prezentate interfețele grafice configurate
în Matlab și pe LCD, precum și crearea a trei aplicații s martphone , cu rolul de a
asigura flexibilitatea și simplitatea utilizării sistemului Smartmeter . Capitolul se
încheie cu descrierea sistemului și simularea aplicațiilor implementate .
În cel de -al cincelea capitol se analizează metodele de optimizare ale
consumurilor energetice pentru diferite tipuri de consumator . Se va analiza
sistemul de măsurare, achiziț ia și prelucrarea parametrilor electrici specifici
fiecărui tip de consumator. Sunt detaliate din punct de vedere teoretic principalele
medode de îmbună tățire al consumului energetic și anume compensarea factorului
de putere prin reducerea consumului de putere reactivă și metodele de filtrare ale
armonicilor de curent. Se va monitoriza puterea reactivă și factorul de distorsiune
și se va urmări o analiză riguroasă a acestor parametri .
Capitolul șase trece în revistă principalele neajunsuri cauzate de
constrângerile tehnice și dificultățile întampinate in realizarea proiectului.
Concluziile și direcțiile d e dezvoltare sunt prezentate în cadrul capitolul ui
șapte , care are r olul de a rezuma toate cele prezentate anterior în scopul accentuării
utilității conceptului de dispozitiv Smartmeter.
La finalul lucrării se găsește bibliografia care a fost st udiată pentru
elaborarea proiectului de diplomă , precum și ane xele aferente sistemului
Smartmeter implementat.

NECLASIFICAT
NECLASIFICAT
12 din 105 CAPITOLUL 2 – PARAMETRI ELECTRICI CARACTERISTIC I
SARCINILOR ÎN REȚELELE ELECTRICE
Puterea electrică a unui consumator reprezintă mărimea fizică scalară
numeric egală cu produsul dintre intensita tea curentului ce străbate consumatorul
și tensiunea electrică aplicată la bornele acestuia . Cu alte cuvinte puterea electrică
este definită ca energia consumată d e sarcina electrică în unitatea de timp. În
circuitele de curent alternativ, elementele de ab sorție a energiei electrice , cum ar
fi bobinele și condensatoarele, pot determina inversări periodice ale direcției
fluxului de energie. [1]
Partea de putere care, în medie pe un ciclu complet al formei de undă de
curent alternativ duce la transferul net a l energiei într -o direcție, este cunoscută
sub numele de putere activă (uneori numită și putere reală). Porțiunea de putere
datorată energiei absorbite, care revine la sursă în fiecare ciclu, este cunoscută
drept putere reactivă.
2.1 Tipuri de sarcini electrice
Un monitor de energie al întregii case măsoară energia utilizată de aparatele
conectate la rețeaua locuinței. Pentru a se înțelege cum funcționează acest lucru,
este util să se cunoască modul în care aparatele interacționează cu sistemul
electric.
Nu toate aparatele interacționează cu sistemul de electricitate în același
mod. În continuare voi discuta despre sarcinile rezistive și modul în care se
calculează puterea pe care o folosesc, apoi despre sarcinile reactive și despre cele
neliniare. În cel e din urmă, voi arăta modul în care se măsoară direcția fluxului de
putere, care este importantă dacă se generează și se consumă energie.
2.1.1 Sarcini rezistive
Becurile cu incandescență, fierul de călcat, caloriferul electric,
fierbătoarele electrice de apă, aragazul electric sunt consumato ri destul de simpli .
Acestea folosesc toată energia care le este dată. Ele sunt sarcini rezistive ceea ce
înseamnă că absorția de curent a lor este egală cu tensiunea împărțită la rezistența
acestora (Legea lui Ohm). O sarcină pur rezistivă oferă o ieșire de undă de
tensiune și curent similară cu cea din figura 2.1.
Puterea electrică reprezintă o mărime care indică rata de transfer a energiei
electrice într -un circuit electric. Aceasta este definită ca produsul dintre tensiune
electrică [V] și intens itatea curentului electric [A]:
𝑃=𝑄×𝑈
𝑡=𝑈×𝐼 (2.1)

NECLASIFICAT
NECLASIFICAT
13 din 105 În SI puterea electrică se măsoară în wați [W] sau în joule /secundă [J/s]. Se
exprimă în wați pentru putere activă, voltamperi [VA] pentru putere aparentă sau
vari [VAR] , volt-amper react iv, în cazul puterii reactive . [2]
Putere p (t)
Tensiune u (t)
Intensitate i (t)

Figura 2.1 – Relația fazei de tensiune și de curent într-o sarcină rezistivă
Linia galbenă reprezintă puterea la un moment dat (în orice moment) și se
numește puter e instantanee, care este egală cu produsul dintre tensiune și
intensitatea curentului la un moment dat. Se observă că puterea este întotdeauna
pozitivă, în acest caz, direcția pozitivă fiind fluxul de energie spre sarcină.
2.1.2 Sarcini parțial reactive
Cu toate acestea, în cazul consumatorilor cum ar fi frigidere, mașini de
spălat, burghie cu coloane sau sudori cu arc nu este la fel de simplu , aceste aparate
absorb o anumită cantitate de energie, apoi elibere ază o parte din energie înapoi
înspre rețeaua d e alimentare. Acestea au, pe lângă componenta rezistivă,
componente inductive (de exemplu la motoare) sau capacitive (de exemplu la
sudori cu arc). O sarcină parțial inductivă oferă o ieșire a formei de undă a
tensiunii și a curentului similară cu cea din figura 2.2.
Putere p (t)
Tensiune u (t)
Intensitate i (t)

Figura 2.2 – Relația fazei de tensiune și curent într-o sarcină parțial reactivă

NECLASIFICAT
NECLASIFICAT
14 din 105 Se poate observa că linia galbenă devine negativă pentru o perioadă de timp,
partea pozitivă este energia care circulă spre sarcină, i ar partea negativă este
energia care curge înapoi dinspre sarcină.
În circuitele de curent alternativ, reactanța inductivă sau capacitivă
provoacă un schimb bilateral de energie între sursă si circuit. Puterea reactivă,
definită ca viteză de scurgere a ene rgiei, este absorbita de bobinele si
condensatoarele din circuit intr -un sfert de perioada si apoi cedata inapoi sursei in
urmatorul sfert de perioada. Un alt lucru ce trebuie luat în considerare este că
formele de undă de tensiune și curent au fost defaz ate.
Dacă se ia ca exemplu încărcarea unui condensator destul de mare, care es te
pus în serie cu un rezistor, astfel încât acesta să n u se poată încărca instantaneu,
se trag următoarele observ ații [8]:
 Pentru început, condensatorul este descărcat. Tensiu nea de alimentare
crește și este mai mare decât tensiunea pe condensator, astfel încât curentul
trece în condensator (direcția pozitivă a graficului), ceea ce determină
creșterea tensiunii condensatorului.
 Tensiunea de alimentare începe să scadă . Acum, te nsiunea pe
condensatorul încărcat este mai mare decât tensiunea de alimentare.
Curentul începe să curgă înapoi în direcția alimentării (direcția negativă a
graficului). Acest lucru face ca forma de undă a curent ului să apară ca și
cum ar fi deplasată , fiind realizează schimbare a de fază , așa cum este
reprezentat în figura 2.2.
În România frecvența standardizată a curentul electric alternativ este de
50Hz, ceea ce înseamnă că într -o secundă polaritatea tensiunii trece de la plus la
minus și înapoi de 50 de ori.
Până acum am presupus că sarcina este consumatoare de putere. Dar dacă
totuși noi generăm putere, atunci direcția în care curentul electric circulă este
inversată. Dar, deoarece curentul este alternant, direcția oricum se inversează de
50 de ori în fi ecare secundă. Este nevoie de o referință față de care să se compare
direcția curentului, aceasta fiind forma de undă a tensiunii. În cadrul figurii 2.1
undele de tensiune și curent oscilează în fază . Când tensiunea este pozitivă
(deasupra axei x) intensit atea curentului este și ea pozitivă, dar atunci când
tensiunea este negativă (sub axa x) intensitatea curentului , urmărind tensiunea,
devine negativă. Puterea fiind egală cu produsul tensiunii și intensitații curentului
a fost întotdeauna p ozitivă, observâ nd din figura 2.1 că toată curba de putere este
deasupra axei x.
În cazul în care dispozitivul propriu generează putere, direcția curentului
este inversată în comparație cu exemplul precedent. Acum, când tensiunea este
pozitivă (deasupra axei x), curentul este negativ (sub axa x), iar atunci când
tensiunea este negativă, curentul este pozitiv. Rezultă astfel o put ere permanent
negativă – toată curba de putere este sub axa x. Prin urmare, semnul puterii indică
dacă puterea este consumată sau generată.

NECLASIFICAT
NECLASIFICAT
15 din 105
Putere p (t)
Tensiune u (t)
Intensitate i (t)
Figura 2.3 – Relația fazei de tensiune și curent când se generează energie
2.2 Putere activă, reactivă și aparentă
Într-un circuit simplu de curent alternativ (AC), constituit dintr -o sursă și o
sarcină liniară, atât curentul cât ș i tensiunea au formă sinusoidală. Dacă sarcina
este pur rezistentă, cele două mărimi electrice își inversează polaritatea în același
timp, deci putem spune că sunt în fază.
În fiecare moment produsul de tensiune și curent este pozitiv sau zero,
rezultând că direcția fluxului de energie nu se inversează. În acest caz, numai
puterea activă , puterea reală, este transferată.
Dacă sarcina este pur reactivă, atunci tensiunea și curentul sunt defazate cu
90. Pentru două pătrim i ale fiecărui ciclu, produsul î ntre tensiune și curent este
pozitiv, iar pentru celelalte două sferturi produsul celor două marimi este negativ,
ceea ce indică faptul că, în medie, cât de multă energie circulă în sarcină atât va
curge și înapoi. Nu există flux net de energie pe fiecare ju mătate de ciclu. În acest
caz, numai pentru fluxurile de putere reactivă, nu există transfer net de energie la
sarcină, cu toate acestea, energia electrică circulă de -a lungul firelor și se întoarce,
în sens invers, de -a lungul acelorași fire. În timpul tr ansferului său atât de la sursa
de alimentare la sarcina reactivă cât și înapoi la sursa de alimentare, acest flux pur
reactiv pierde energie la rezistența conductoarelor datorită efectului termic,
denumit și efect Joule -Lenz.
𝑄=𝐼2×𝑅×𝑡 (2.2)
În practică sarcinile au rezistență, precum și inductanță și / sau capacitate,
astfel încât atât puterea activă cât și cea reactivă vor curge spre sarcini.
Inginerii de putere analizează puterea aparentă ca fiind magni tudinea
sumelor vectoriale ale puterii active și reactive. Puterea aparentă este rezultatul
valorilor efective ale tensiunii și curentului. Electricienii țin seama de puterea
aparentă în proiectarea și funcționarea sistemelor de alimentare, deoarece, deși
curentul asociat cu puterea reactivă nu lucrează in sarcină (încălzește conductorii
și irosește energie), acesta trebuie încă alimentat de sursa de alimentare.

NECLASIFICAT
NECLASIFICAT
16 din 105 Conductorii, transformatoarele și generatoarele trebuie dimensionate
pentru a transporta curent ul total, nu doar curentul care lucrează util.
Nerespectarea furnizării unei puteri reactive suficiente în rețelele electrice poate
duce la scăderea nivelurilor de tensiune și, în anumite condiții de funcționare, la
colapsul complet al rețelei sau la între ruperea rețelei. O altă consecință este aceea
că adăugarea puterii aparente pentru două sarcini nu va da cu precizie puterea
totală decât dacă acestea au aceeași diferență de fază între curent și tensiune și în
consecință același factor de putere. [2]
În mo d convențional, condensatoarele sunt tratate ca și cum ar genera putere
reactivă și bobinele ca și cum ar consuma -o. Dacă un condensator și o bobină sunt
plasate în paralel, atunci curenții care curg prin condensator și bobină tind să se
reducă mai degrabă decât să se însumeze. Acesta este mecanismul fundamental
pentru controlul factorului de putere în transmisia de energie electrică,
condensatoarele (sau bobinele) fiind introduse într -un circuit pentru a compensa
parțial puterea reactivă "consumată" de sar cină.
Circuitele pur capacitive furnizează o putere reactivă cu forma de undă de
curent, determinând fo rma de undă de tensiune defazată cu 90 de grade, în timp
ce circuitele pur inductive absorb puterea reactivă cu forma de undă de curent
rămasă în întâ rziere cu 90 de grade. Rezultatul este că elementele de circuit
capacitive și inductive tind să se anuleze reciproc.
2.3 Triunghiul puterii
Se folosesc următorii termeni pentru a descrie fluxul de energie într -un
sistem și se atribuie fiecăruia o unitate diferită pentru a se diferenția între ele:
S
PQ
ReIm

Figura 2.4 – Triunghiul puterii
 Putere activă, P, sau putere reală are ca un itate de măsură in S.I. watt -ul[W];
 Putere complex ă, S, are ca unitate de măsură î n S.I. volt -amper -ul [VA];
 Puterea reactivă, Q, are ca unitate de măsură in S.I. volt -amper reactiv
[VAR];

NECLASIFICAT
NECLASIFICAT
17 din 105  Faza tensiunii relative la curent, φ, rep rezintă unghiul de diferență [ ] între
forma de undă de curent și forma de undă de tensiune;
 Factorul de putere este reprezentat ca ș i cos φ;
 Puterea aparentă, | S |,este dată de modulul puterii complexe S [VA].
Este important de observat faptul că, puterile activă, reactivă și
complexă nu sunt vectori rotitori , deoarece evoluțiile lor în timp nu sunt
sinusoidale; chiar dacă tensiune a și curentul sunt sinusoidale , pot fi reprezentate
prin vectori rotitori , puterile activă, reactivă ș i complexă au valori constante, prin
urmare nu pot fi reprezentate prin fazori rotitori .
Puterea reactivă nu lucrează, deci este reprezentată pe direcția si in sensul
axei imaginare a diagramei vectoriale. Puterea activă lucrează, deci ea este
reprezentată pe direcția si in sensul axei reale.
Unitatea de măsură pentru toate formele de putere este watt -ul (simbol: W),
dar această unitate este în general rezerv ată pentru putere activă. Puterea aparentă
este exprimată în mod convențional în volt -amperi [VA], deoarece este produsul
tensiunii RMS și a curentului RMS.
RMS reprezintă abrevierea de la Root Mean Square și se referă la
modalitatea matematică de măsurar e a valorii efective a mărimilor prin ridicarea
la pătrat a tuturor valorilor de pe graficul formei de undă, atât pozitive câ t și
negative, calcularea valori medii a acestora și introducerea lor sub radical pentru
obtinerea valorii efective finale.
Unita tea de măsură pentru puterea reactivă este exprimată ca VAR, ceea ce
înseamnă volt -amper reactiv. Deoarece puterea reactivă nu transferă energie netă
la sarcină, uneori se numește putere "wattless". Cu toate acestea, servește o funcție
importantă în rețele le electrice.
Înțelegerea relației dintre aceste trei cantități de putere se află în centrul
înțelegerii energiei electrice. Relația matematică dintre cele trei forme de puteri
poate fi reprezentată ca vectori sau exprimată folosind numere complexe:
𝑆=𝑃+𝑗𝑄 (2.3)
unde j reprezintă unitatea imaginară.
În continuare voi încerca să acopăr matematica din spatele calculului puterii
reale, puterii aparente, factorului de putere, valorilor efective ale tensiunii și
curentului realizate la măsurătorile instantanee. Ecuațiile în timp discret sunt
detaliate, calculele fiind efectuate în domeniul digital al lui Arduino.
Din punct de vedere matematic, putere activă este definită ca integrală a
produsului dintre tensiune a u(t) si curentul i(t) în funcție de timp, după cum
urmează:
𝑃=1
𝑇∫𝑢(𝑡)×𝑖(𝑡) 𝑑𝑡 ≡𝑈×𝐼×cos (𝜑) (2.4)
În ecuația 2.4 , U reprezint ă valoarea efectivă de tensiune, I reprezint ă
valoarea efectivă de curent iar cos (φ) este factorul de putere .

NECLASIFICAT
NECLASIFICAT
18 din 105 Echivalentul ecuației puterii reale în timp discret este:
𝑝(𝑛)=𝑢(𝑛) ×𝑖(𝑛) (2.5)

𝑃=∑ 𝑝(𝑛)𝑁−1
𝑛=0
𝑁 (2.6)
Astfel, u(n) reprezint ă valoarea eșantionată a tensiunii instantanee, u(t), i(n) este
valoarea eșantionată a curentului instantaneu , i(t), N reprezintând numărul de
eșantioane.
Puterea reală este calculată pur și simplu ca medie a puterii instantanee.
Această metodă este valabilă atât pentru formele de undă sinusoidale, câ t și pentru
cele distorsionate. Mai întâi se calculează puterea instantanee prin înmulțirea
valorii instantanee a tensiunii cu valoarea instantanee a curentului. Se însumează
valoarea instantanee a puterii pe numărul de eșantioane specific unei perioade
complete a formelor de undă și se îm parte la numărul de e șantioane.
2.4. Calcularea parametrilor electrici
Valoarea efectivă a tensiunii este definită ca rădăcina pătrată a valorii medii
a pătratelor valorilor instantanee ale tensiunilor, în medie pe o perioadă. Ecuația
în timp discret pentru calculul tensiunii efective este următoarea:
𝑈𝑒𝑓=√∑ 𝑢2(𝑛)𝑁−1𝑛=0
𝑁 (2.7)
Valoarea efectivă a curentului este definită ca rădăcina pătrată a valorii
medii a pătratelor valorilor instantanee ale curentului, în medie pe o per ioadă.
Ecuația în timp discret pentru calculul curentului efectiv este următoarea:
𝐼𝑒𝑓=√∑ 𝑖2(𝑛)𝑁−1𝑛=0
𝑁 (2.8)
Formula pentru puterea complexă sub formă de fazor este:
S=U×I∗=|S|∠φ , (2.9)
De asemenea, prin convenție, conjugatul complex al valorii efective a curentului
I este reprezentat ca I∗. Acest lucru se realizează astfel încât un curent de vârf
(sarcină capacitivă, reactanță negativă) duce la o putere reactivă ne gativă.
Alte forme de putere complexă (masurată în Volt -Amperi, VA) sunt derivate din
impedanța de sarcină, Z, măsurată în ohmi [Ω].
𝑆=|𝐼|2×𝑍=|𝑈|2
𝑍∗ (2.10 )
În consecință, referindu -se la triunghiul puterii , puterea activă măsurată în
wați [W] este definită ca:

NECLASIFICAT
NECLASIFICAT
19 din 105 𝑃=|𝑆|cos𝜑=|𝐼|2×𝑅=|𝑈|2
|𝑍|2×𝑅 (2.11 )
Pentru o sarcină pur rezistivă, puterea reală poate fi simplificată la:
𝑃=|𝑈|2
𝑅 (2.12 )
unde R reprezintă rezistența sarcinii măsu rată în ohmi [Ω].
Puterea reactivă, măsurată în Volt -Amper -Reactiv [VAR], este definită ca:
𝑄=|𝑆|sin𝜑=|𝐼|2×𝑋=|𝑈|2
|𝑍|2×𝑋 (2.13 )
unde X reprezintă reactanța sarcinii măsurată în ohmi [Ω].
Combinând, puterea complexă, măsurată în vol t-amperi [VA], este derivată
din nou ca:
𝑆=𝑃+𝑗𝑄 (2.14)

Și puterea aparentă, măsurată în volt -amperi [VA], ca modulul puterii complexe:
|𝑆|=√𝑃2+ 𝑄2 (2.15)
Acestea sunt simplificate schematic sub forma triunghiul ui puterii , în figura 2.4.
2.5 Factor de putere
Raportul dintre puterea activă și puterea aparentă într -un circuit electric este
numit factor de putere. Pentru două sisteme care transmit aceeași canti tate de
putere activă, sistemul cu factor de putere inferior va avea curenți mai mari de
circulație datorită energiei care revine sursei din absorția energiei din sarcină.
Acești curenți mai mari generează pierderi mai mari și reduc eficiența totală a
transmisiei energiei . Un circuit cu factor de putere mai mic va avea o putere
aparentă mai mare și pierderi mai mari pentru aceeași cantitate de putere activă.
Factorul de putere are valoarea 1.0 atunci când tensiunea și curentul sunt în
fază. El este zero c ând curentul conduce sau defazează tensiunea cu 90 de grade.
Factorul de putere este definit ca un parametru de măsură a capacității unui circuit
electric alternativ de a furniza sau absorbi putere activă, el fiind de obicei declarat
drept "conducător" sa u "încetinitor" pentru a arăta semnul unghiului de fază al
curentului în raport cu tensiunea. Tensiunea este desemnată ca baza la care este
comparat unghiul curentului, ceea ce înseamnă că ne gândim la forma de curent
ca formă de tensiune "de conducere" sa u de "întârziere". [8]
În cazul în care formele de undă sunt pur sinusoidale, factorul de putere este
cosinusul unghiului de fază,φ , dintre forma de undă sinusoidală de curent și cea
de tensiune. Din acest motiv în fișele de date ale echipamentelor și pe plăcuțele
de identificare adesea se abrevieză factorul de putere ca și "cos φ".

NECLASIFICAT
NECLASIFICAT
20 din 105 Din schema triunghiului puterilor, reprezentată în figura 2.4, puterea activă
este dată de produsul dintre puterea aparentă si cosinusul unghiului de fază,φ, iar
puterea react ivă se calculează ca produsul dintre puterea aparentă si sinusul
unghiului de fază, φ.
𝑃=|𝑆|×𝑐𝑜𝑠𝜑 (2.16 )
𝑄=|𝑆|×sin𝜑 (2.17)
Dacă î n relația de mai sus Q > 0 (φ > 0), circuitul este inductiv iar dacă Q<0
(φ < 0) circuitul este capacitiv. In aceste cazuri puterea reactivă se numeste
inductivă și respectiv, capacitivă.
Cu toate acestea, trebuie reținut că relația factorului de putere este valabilă
numai pentru sarci ni sinusoidale liniare. Majoritatea surselor de alimentare pentru
dispozitivele de curent continuu, cum ar fi laptop urile, prezintă o sarcină neliniară
la rețeaua de alimentare.
Deoarece laptop ul constituie o sarcină neliniară, formele de undă ale
tensiuni i si curentului nu mai sunt sinusoide pure astfel ca nu mai este valabilă
relația puterii aparente, deci implicit nici a factorului de putere, cos𝜑, deoarece
trebuie luate în considerare efectele armonicilor de ordin superior atât în forma de
undă de t ensiune cât și în cea de curent.
Valoarea factorului de putere măsoară cât de mult este afectată eficiența
rețelei atât de defazajul φ, cât și la conținutul armonic al curentului de intrare.
În acest caz este necesară punerea în fază a formei de undă de t ensiune cu cea de
curent, filtrarea numai a armonicilor I si III din spectrul de tensiune, întrucât aceste
sunt singurele semnificative în tot spectrul, precum si filtrarea armonicilor
semnificative (peste 20% din fundamentală) din spectrul de curent. Pute rea
reactivă se calculează prin suma mediilor produselor dintre valorile instantanee
de tensiune si cele ale curentului specifice fiecărei armonici filtrate.
În cele din urmă se poate calcula factorul de putere din următoarea ecuație:
cos𝜑=𝑃
|𝑆| (2.18 )
De cele mai multe ori a bsorția de curent arată precum ce din figura 2.5 ,
reprezentând absorția de curent într -o sarcină neliniară. Din forma de undă a
tensiunii și curentului în timp, reprezentate în cadrul figurii 2.5, se observă că
sarcina consum atoare de putere este aceea a unei surse tipice de alimentare pentru
laptop la care se adaugă un bec cu incandescență .

NECLASIFICAT
NECLASIFICAT
21 din 105
Tensiunea
instantanee
Curentul
instantaneu
Figura 2.5 – Absorția de curent într -o sarcină neliniară
Formele de undă au fost realizate prin eșantionarea tensiunii și curentului
la frecvența de eșantionare, realizându -se între 55 și 65 de măsurătri la fiecare 20
de milisecunde, limita constituind -o comanda de citire a convertorului analogic –
digital al plăcuței Arduino MEGA , precum și de viteza de calcul. Fiecare eșantion
în parte reprezintă o citire instantanee a tensiunii sau curentului.
2.6. Factorul total de distorsiune
Desco mpunerea curbelor de tensiune și curent pe componentele armonice
și fundamentala se realizează folosind analiza Fourier. Armonicele sunt forme de
undă cu frecvența multiplu întreg al frecvenței fundamentale fiind generate
îndeosebi de sarcini neliniare în rețea. [8]
În prezent, ca și indicatori de calitate pentru regimului periodic nesinusoidal
sunt determinați următorii parametri :
 Factorul total de distorsiune a tensiunii reprezintă raportul dintre valoarea
efectivă a armonicilor de tensiune și valoarea ef ectivă a fundamentalei
situată pe frecvența de 50Hz.
𝑇𝐻𝐷 𝑈=√∑ (𝑈𝑖
𝑈1)2 𝑁
𝑖=2 (2.19)
 Factorul total de distorsiune a curentul ui electric reprezintă raportul dintre
valoarea efectivă a armoni cilor de current și valoarea efectivă a
fundamentalei situată pe frecvența de 50Hz.
𝑇𝐻𝐷 𝐼=√∑ (𝐼𝑖
𝐼1)2 𝑁
𝑖=2 (2.20 )
 Nivelul armonicii, și în cadrul spectrului de tensiune și în cadrul spectrului
de curent reprezintă raportul dintre valoarea efectivă a armonicii respective
și valoarea efectivă a fundamentalei:

NECLASIFICAT
NECLASIFICAT
22 din 105 Niv Ui=Ui
U1×100 [%] (2.21 )
Niv Ii=Ii
I1×100 [%] (2.22 )
În analiza curbelor deformate de curent electric se c onsideră că intervalele
în care curentul absorbit este redus, să nu fie luate în considerare în analiza
statistică a factorului de distorsiune și a nivelului armonicii. În general, pentru
analiza statică a factorului total de distorsiune, în cadrul curbelo r deformate de
curent electric sunt eliminate curbele în care curentul absorbit este sub 20% din
valoarea sa normală.

PAGINĂ ALBĂ

NECLASIFICAT
NECLASIFICAT
23 din 105 CAPITOLUL 3 – ELEMENTELE COMPONENTE ALE SISTEMULUI
SMARTMETER

Pentru realizarea sistemu lui Smartmeter a fost necesară achiziționarea
urmatoarelor componente principale , care vor fi caracterizate în decursul acestui
capitol :
 Placa de dezvoltare Arduino Mega2560;
 Senzorul de curent non invaziv de 30 A, SCT -013-030;
 Adaptor ul de alimentare AC -AC;
 Modul LCD SPI de 3.5'' cu Touchscreen;
 Modulul Bluetooth HC -05.
3.1 Placa de dezvoltare Arduino Mega2560
3.1.1 Introducere în Arduino
Proiectul se bazează pe prelucrarea datelor achiziționate de la senzori de
către placa de dezvolt are MEGA 2560 R3 compatibilă cu Arduino, aceasta
utilizând microcontrolerele ATmega2560 si ATmega16u2, cel din urmă pentru
conectivitate USB. Astfel este nevoie de o înțelegere profundă a prelucrării și
procesării datelor în Arduino, a funcționării și mod ului de lucru al acestuia.
Arduino este o platformă electronică open source bazată pe un hardware și
un softwa re ușor de utilizat. Plăcuțele Arduino sunt capabile să citească intră ri
analogice sau digitale cum ar fi: datele preluate de la un senzor, o apa sare pe un
buton, și să le transforme î ntr-o acțiune de ieșire corespunzătoare – să activeze
un motor, să pornească un obiect etc.
Pentru a spune plăcuței ce sarcini trebuie să îndeplinească, se trimit un set
de instrucțiuni la microcontrolerul de pe bre adboard, utilizând limbajul de
programare Arduino (bazat pe platforma Wiring) și software -ul Arduino (IDE).
Platforma Wiring este un cadru de programare open source pentru
microcontrolere, ce permite scrierea de software aplicabil tuturor, pentru a
control a dispozitivele atașate la o gamă largă de plăci de microcontroler cu scopul
de a crea o multitudine de programe de cod creative, obiecte interactive, spații sau
experiențe fizice.
De-a lungul anilor, Arduino a fost creierul a mii de proiecte, de la obiec te
de zi cu zi până la instrumente științifice complexe. O comun itate mondială de
producători cum ar fi: studenți, pasionați de electronică, artiști și programatori
profesioniști s-au adunat în jurul acestei platforme open source, contribuțiile lor
adăugân du-se la o cantitate incredibilă de cunoștințe accesibile, care pot fi de mare
ajutor atât pentru începători, cât și pentru experți.
În funcție de nevoi și provocări, Arduino a diferențiat oferta sa de la plăcile
simple pe 8 biți până la produsele pentru aplicații IoT (Internetul Obiectelor),

NECLASIFICAT
NECLASIFICAT
24 din 105 dispozitive portabile, imprimante 3D și medii încorporate. Software -ul, de
asemenea, este open -source, și este în creștere prin contribuțiile utilizatorilor din
întreaga lume.
3.1.2 De ce Arduino?
Datorită experiențe i sale simple și accesibile de utilizare, Arduino a fost
utilizat în mii de proiecte și aplicații diferite. Software -ul Arduino este ușor de
utilizat pentru începători, dar suficient de flexibil pentru utilizatorii avansați.
Software -ul Arduino IDE rulează pe sitemele de operare: Mac, Windows și Linux.
Profesorii și studenții îl folosesc pentru a construi instrumente științifice cu un
cost scăzut, pentru a dovedi principiile fizicii și chimiei sau a păși în programare
și robotică.
ATMEGA 2560
Sursă 7-12V Port USB
Buton de resetPinii de alimentare Intrări analogiceComunicații
serialăI2CIeșiri PWM
Stabilizator 5VComunicație
USB
Intrări /
Ieșiri
digitale

Figura 3.1– Arduino MEGA 2560
Există multe alte microcontrolere și platforme de microcontroler
disponibile pentru calcul fizic care oferă funcții similare, dar acestea nu iau
detaliile dezordonate ale programării microcontrolerului și le redau într -un pachet
software ușor de utilizat. Arduino simplifică, de asemenea, procesul de lucru cu
microcontrolerele, oferind avantajul următoarelor aspecte:
 Prețul scăzut – plăcile Arduino sunt relativ ieftine în comparație cu alte
platforme de microcontroler;
 Acces ibilitate – Software -ul Arduino (IDE) rulează pe majoritatea
sistemelor de operare Windows, Macintosh OSX și Linux față de cele mai
multe sisteme de microcontroler, care sunt limitate doar la Windows.
 Mediu de programare simplu și clar – Software -ul Arduin o (IDE) este ușor
de utilizat pentru începători, dar suficient de flexibil pentru ca utilizatorii
avansați să profite de asemenea;

NECLASIFICAT
NECLASIFICAT
25 din 105  Software -ul open source și extensibil – Software -ul Arduino este publicat
ca un instrument open source, disponibil pentru a fi extins de către
programatorii experimentați. Limbajul de programare poate fi extins prin
biblioteci C++, se poate face saltul de la limpajul Arduino la limbajul de
programare AVR C pe care se bazează;
 Hardware -ul open source și extensibil – Planurile pl ăcilor Arduino sunt
publicate sub licență Creative Commons, astfel încât designerii de circuit
experimentați pot să -și creeze propria versiune a modulului, să o extindă și
să o îmbunătățească. Chiar și utilizatorii relativ lipsiți de experiență pot
constru i versiunea de breadboard a modulului pentru a înțelege cum
funcționează și pentru a economisi bani.
3.1.3. Caracteristici tehnice și funcționare Arduino MEGA
Caracteristici cile tehnice ale plăcuței de dezvoltare Arduino Mega 2560 :
 Tensiune de funcționare: 5V;
 Tensiune de alimentare prin mufa jack: 7V – 12V;
 Microcontrolere încorporate: ATmega2560 si ATmega16u2;
 Pini digitali I/O: 54, dintre care 15 pini PWM ;
 Pini analogici: 16;
 4 porturi seriale hardware UART;
 suportă de asemenea și comunicațiile SPI si TWI;
 Memorie flash: 256KB, din care 8KB ocupati de bootloader;
 Frecvența de funcționare: 16MHz.
 Dimensiuni: 5.3cm x 10cm.

Comunicația serială dintre microcontrolere sau cu circuitele integrate se
realizează prin intermediul TTL (Tranzistor -Tranzistor Logi c). Semnalele TTL
sunt cuprinse între 0 V, ce reprezintă un bit de START sau un bit de date de
valoare logica “0”, și 3,3 V sau 5 V, reprez entând un bit de STOP sau un bit de
date de valoare logică “1”.

Figura 3.2 – Reprezenta re semnal TTL 5V

NECLASIFICAT
NECLASIFICAT
26 din 105 UART (Universal Asynchronous Receiver/ Transmitter) este un dispozitiv
hardware pentru comunicații seriale asincrone, funcționând ca un intermediar
între interfețele paralele și interfețele seriale.
Microcontrolerul Atmega 2560 permite comunicația serială UART TTL
(5V) prin intermediul pinilor digitali Rx și Tx.
În cazul comunicației asincrone, sincronizarea la nivel de bit este asigurată numai
pe durata transmisiei efective a fiecărui caracter. O asemenea comunicație este
orientată pe c aractere individuale și are dezavantajul că necesită informații
suplimentare pentru identificarea fiecărui caracter.
Arduino MEGA suportă de asemenea și comunicațiile I2C (Inter -Integrated
Circuit), TWI (Two Wire Interface ) și SPI (Serial Peripheral Inter face) prin
utilizarea unor biblioteci specifice.
Magistrala I2C este compusă din doua linii:
– SCL – Serial C lock Line (linie de ceas serială ) pe pinul 20;
– SDA – Serial Data Line (li nie de date serială ) pe pinul 21.
SPI (Serial Peripheral Interface) este o interfață de comunicație serială
sincronă, utilizată în comunicațiile dintre microcontroler și echipamente aflate la
distanțe mici, în special în sistemele încorporate. Se folosește de obicei în aplicații
cu carduri SD (Secure Digital) și ecrane cu cristal e lichide (LCD).
Sincronizarea la nivel de bit se realizează cu ajutorul semnalelor de ceas
locale cu aceeași frecvență. Atunci când receptorul detectează începutul unui
caracter indicat prin bitul de START, pornește un oscilator de ceas local, care
permit e eșantionarea corectă a biților individuali ai caracterului. Eșantionarea
biților se realizează aproximativ la mijlocul intervalu lui corespunzător fiecărui bit.
3.2. Transformatorul de curent electric (CT)
Există multe tipuri de transformatoare de curent pe piață: CT cu miez
divizat, CT cu m iez solid (ex: cu miez inelar).
Transformatoarele de curent sunt senzori utilizați pentru măsurarea
curentului alternativ, având la bază fenomenul de inducție electromanetică,
fenomenul lui Faraday. CT -urile sunt utile în special pentru măsurarea
consumului de energie electrică a unei întregii locuințe.
Ca orice alt transformator, un transformator de curent are o înfășurare
primară, un miez magnetic și o înfășurare secundară.

NECLASIFICAT
NECLASIFICAT
27 din 105
Figura 3.3 – a) Transformator de cur rent cu miez divizat, YHDC SCT -013-000;
b) Transformatr de curent cu miez inelar
Operația de măsurare se realizează determinând intensitatea curentului din
primarul transformatorului prin efectuarea masurării intensitații curentul ui din
secundarul acestu ia. Impedanța circuitului secundar al transformatorul ui de curent
fiind foarte mică, acesta functionează in condiții aseman atoare cu cele de
scurtcircuit. Curentul alternativ care curge prin primarul CT -ului produce un câmp
magnetic în miez, care apoi indu ce un curent electric în circuitul din înfășurara
secundară.
Tipul senzorului de curent de tip cle ște, cum ar fi CT -ul din figura 3.3 a),
este deosebit de potrivit pentru utilizarea î n montajele proprii, putând fi fixat direct
pe firul de fază sau pe fir ul de nul care intră în montajul electric, fără a fi nevoie
să se lucreze cu rețeaua de înaltă tensiune.

3.2.1. Senzor ul curent non invaziv 30 A
SCT-013-030 este un senzor de curent non invaziv, care poate masura
curenti de maxim 30 A. Iesirea este o te nsiune direct proporțională cu valoarea
intensiății curentului detectat de senzor .

Figura 3.4 – Senzorul de curent non invaziv de 30 A, SCT -013-030
Transformatoarele de curent SCT -013-030 au două părți principale: un
miez feromagnetic, care reprezină c alea de inchidere a fluxului magnetic produs
de solenația de magnetizare a înfășuraii primare prin care circulă un curent
alternativ, și o înfășurare secundară, pe unde circulă curentul electric indus de
către câmpul magnetic din jurul miezului, condiția f iind ca fluxul magnetic să se

NECLASIFICAT
NECLASIFICAT
28 din 105 schimbe în mod con tinuu. Curentul electric indus î n circuitul secundar curge în
rezistorul de sarcină, care generează o tensiune pe care Smartmeter -ul o citește pe
intrarea sa analogică, iar în urma algoritmului de cal cul se o bține intensitatea
curentului electric pe rezistența de sarcină. Un transformator de curent nu va
măsura niciodată intensitatea curentului electric direct. [13]
Numărul de spire al unei bobine înmulțit cu intensitatea curentului electric, care
le strabate, se numește solenație de magnetizare.
Miezul transformatorului de curent fiind un material feromagnetic, fluxul
magnetic depinde liniar de forța de magnetizare a curentului la valori relativ
scăzute, la valori ridicate fluxul atingând o limită cunoscută sub denumirea de
"saturație". În mod normal, CT -ul este liniar în limitele acceptabile în raport cu
domeniul său normal de funcționare, transformatorul SCT -013-030 fiind liniar în
limita a 3% față de domeniul său nominal de curent. Peste o gamă limitată de
curent poate exista o eroare de raport, care poate fi însă compensată prin calibrare.
În cazul monitorizării parametrilor de curent electric ai unei instalații,
înfășurarea primară este firul de fază sau firul de nul (niciodată ambele!), care
transportă curentul electric ce trebuie măsurat, acesta trecând prin deschiderea
transformatoarului de curent. Înfășurarea secundară este realizată din mai multe
înfășurări de sârmă fină situate în carcasa transformatorului, în cazul senzorului
de curent non invaziv fiind vorba de 2000 de spire. În circuitului primar sarcina
este neglijabilă.
Dacă se fixează CT -ul în jurul unui cablu cu două sau mai multe
conductoare, atunci acesta va măsura suma curenților din fiecare dintre
conductori. În cazul unui cablu dublu cu fază si nul, același curent va curge în
direcții opuse, câmpurile magnetice create de fire se vor anula unul pe celălalt, iar
transformatorul de curent nu va avea o valoare de ieșire, suma curenților fiind
zero.

Figura 3.5 – Fixarea CT -ului pe firul de f ază
Transformatorul SCT -013-030, având un miez de ferită, nu trebuie
niciodată prins la cablu prin utilizarea vreunui material de împachetare, deoarece
natura fragilă a miezului de ferită îl transformă intr -un material casant, ceea ce îl
face ușor de spar t, distrugând astfel CT -ul.

NECLASIFICAT
NECLASIFICAT
29 din 105 Senzorii de curent cu clapă pentru prindere sunt neinvazivi și nu au contact
direct, metalic, cu rețeaua de curent alternativ , astfel circuitul secundar este izolat
galvanic de circuitul primar.
În general, un transformator de curent nu trebuie să fie niciodată deschis
după ce este atașat la un conductor care poartă curent electri c. Dacă circuitul este
deschis în timp ce curentul circulă în primar, transformatorul secundar va încerca
să continue să conducă curentul electric în c eea ce este efectiv o impedanță
infinită, producând astfel o tensiune ridicată și periculoasă pe secundar. Astfel,
unele transformatoare de curent au o protecție integrată, cum ar fi două diode
Zener protectoare care au ca scop limitarea tensiunii, ce poat e apărea pe întreaga
înfășurare secundară, la o valoare sigură.
3.2.2 Rezistența de sarcină
Transformatorul de curent SCT -013-030, recomandat pentru utilizare în
acest proiect, returnând la ieșire o tensiune proporțională cu valoarea intensiății
curentu lui din secundar, prezintă un rezistor de sarcină construit astfel încât să
închidă circuitul secundar al său.
Ca la orice alt transformator, intensitatea curentului în înfășurarea
secundară este proporțională cu valoarea intensiății curentului care curge prin
înfășurarea primară. Astfel avem relația solenației de magnetizare:
Iprimar x Nr_spire primar =Isecundar x Nr_spire secundar (3.1)
Numărul de înfășurări din secundarul transformatorului prezentat este de 2000,
deci intensitatea curentului din secundar este 1/2000 din intensitatea curentului
din primar. Raportul în amperi poate fi scris în mod normal ca 30: 0,015 (pentru
0.015A masurati, scalat în gama 0 -30A).
Senzorul de curent non -invaziv reprezintă o modalitate excelenta de a
măsura consumul energetic al unui aparat alimentat la rețeaua de 230V. Bobina
senzorului se trece in jurul unuia dintre firele de alimentare (nul sau faza), astfel
curentul elect ric din rețeaua de 230V induce î n bobina senzorului un curent
alternativ, care va fi măsurat pe un rezistor de sarcină cu ajutorul plăcii de
dezvoltare Arduino Mega.
Tensiunea indusă î n bobină este o tensiune alternativă, iar nivelele de
tensiune sunt centrate pe zero, existând atat tensiuni pozitive, cât si negative.
Deoarece Ardui no nu este capabil să lucreze cu tensiuni negative trebuie adăugat
un divizor de tensiune, alcătuit din două rezistoare cu rezistențe egale, astfel
tensiunea citită să fie centrată pe nivelul de 2.5V, obținut în urma divizorului de
tensiune.

NECLASIFICAT
NECLASIFICAT
30 din 105
Consumator 230V
nul
(230V)fază
(230V)
Pin Arduino A 1
R2R1
2.5V2.5V5V
GNDRsRezistor de
sarcină
C1Senzor de curent
Figura 3.6 – Schema de circuit a senzorului de curent
Atunci când senzorul de curent funcționează fără o rezistență de sarcină,
miezul feromagnetic va ajunge la saturație foarte repede. Valoarea curentului din
primar de câțiva amperi va c onduce saturație miezul în mod clar, iar erorile vor fi
mari. Aceast curent poate deteriora sau distruge microcontrolerul ATMega2560.
"Curentul de ieșire" al transformatorului trebuie măsurat pe un rezistor de
sarcină,care completează sau închide circuitu l secundar al CT -ului. Valoarea
rezistenței de sarcină este aleasă astfel încât să se poată furniza o tensiune direct
proporțională cu valoarea intensiății curentului prin secundar. În cazul unor
consumatori de puteri mai mari rezistența de sarcină trebuie să fie suficient de
mică pentru a preveni saturația miezul ui transformatorului de curent.
3.3. Transformatorul de tensiune
Pentru a calcula puterea activă, puterea aparentă, puterea reactivă și
celelalte mărimi electrice, este necesară măsurarea tensiuni i curentului alternativ
provenit din rețeaua de curent electric . Aceasta se poate realiza în siguranță, fără
a necesita lucrul cu rețeaua de înaltă tensiune, prin utilizarea unui adaptor de
alimentare AC -AC. Transformatorul de tensiune din adaptor asigură izolarea față
de la rețeaua de înaltă tensiune.
Semnalul de ieșire al adaptorului de curent alternativ are o forma de undă
a tensiunii aproape sinusoidală. Pentru transformatorul de tensiune de 6 V valoare
efectivă, vârful de tensiune pozitiv este de 8 .5V, iar vârful negativ de -8.5 V.

NECLASIFICAT
NECLASIFICAT
31 din 105 Cu toate acestea, datorită slabei reglări a tensiunii cu acest tip de adaptor, atunci
când adaptorul este cu ieșirea în gol , tensiunea de ieșire este deseori de 7.5÷8V
valoare efectivă, oferind o tensiune de vârf de 10.6÷11.4V.
Primul lucru care trebuie cunoscut la un adaptor de alimentare este gradul
de tensiune al său, astfel transformatorul de tensiune utilizat în realizarea
proiectului are o valoare efectivă a tensiunii de ieșire în gol de 8.1V.
Pentru măsurarea tensiunii curentului alternativ folosind intrarea analogică
a plăcuței de dezvoltare Arduino Mega trebuie să se îndeplinească cerințele
acesteia, adică să se introducă o tensiune pozitivă cuprinsă între 0V și tensiunea
de referință a convertorului analogic -digital al microcontrolerului ATmega2560.
Astfel trebuie să se reducă forma de undă a tensiunii și să se adăuge un offset
(compensare) astfel încât să nu existe nici o componentă negativă.
Forma de undă poate fi redusă cu ajutorul unui divizor de tensiune conectat
la bornele transformatorului de tensiune, iar offsetul poate fi adăugat utilizând
sursa de alimentare de 5V curent continuu a placuței Arduino conectată la un alt
divizor de tensiune.
Rețea Alimentare
230 V
Transformator de
tensiuneC1R3
R4=R32.5
Arduino GNDIeșire adaptor
Intrare Arduino Arduino 5 V c.c.
divizorR2
47 kΩ
6 V
10 uFR1
10 kΩ

Figura 3.7 – Schema de circuit a transformatorului de tensiune
Rezistoarele R1 și R2 formează un divizor de tensiune care coboară
tensiunea de ieșire a adaptorului de alimentare la o valoare potrivi tă gamei de
citire Arduino. Ca și î n cazul transformatorului de curent rezistoarele R3 și R 4
furnizează tensiune a de polarizare pentru offset -ul de curent con tinuu, asigură
tensiunea de bias, centrând astfel tensiunea citită pe nivelul de 2.5V în loc de 0V.
Tensiunea de ieșire a transformatorului va trece acum peste și sub nivelul de 2.5V,
rămânând pozitivă și putând fi astfel interpretată de convertorul analog ic-digital
al microcontrolerului ATmega2560.

NECLASIFICAT
NECLASIFICAT
32 din 105 3.4. Modul LCD SPI de 3.5'' cu Touchscreen
Specificații le tehnice ale modulului LCD :
 Tensiunea de alimentare: 3.3 V;
 Diagonală: 3.5 Inch ( ~ 8.9cm );
 Rezoluție: 320 * 480;
 Controller LCD: ILI9486;
 Controller t ouch: XPT2046;
 Protocol de comunicare: SPI (Serial Peripheral Interface) ;
 Curent consum: ~50 mA.
Modulul include circuitul de conversie a tensiunii 5V -3.3V si circuitul de
conversie a nivelului, modulul putând fi direct introdus în placa de dezvoltare
Arduino Mega2560.

Figura 3.8 – Modul LCD SPI de 3.5'' cu Touchscreen
Interfața serială SPI este o interfața sincronă standard de mare viteză, ce are
linii separate pentru transmitere și recepție. Operând în mod full duplex , se pot
transmite și recepționa date în același moment. Se poate opera doar cu un
dispozitiv master ș i unul sau mai multe dispozitive slave.
În SPI , doar o singură parte generează semnal de ceas ( CLK sau SLK ) și
este denumită „master”, iar cealaltă parte se numește „slave”. „Master” este
întotdeauna unul singur, de regulă microcontrolerul, în timp ce „ slave” pot exista
mai mulți. În momentul în care master -ul trimite date către slave, acestea sunt
transmise pe o linie numită MOSI (Master Out / Slave In), iar atunci când
dispozitivul slave trimite un răspuns către master, acesta este trimis pe linia
denu mită MISO ( Master In / Slave Out ).
Linia SS (Slave Select) este utilizată pentru a -i spune slave -ului să
recepționeze sau să transmită date și de asemenea este folosită atunci când există
mai mulți slave pentru a -l selecta pe c el căruia vrea să îi transm ită.

NECLASIFICAT
NECLASIFICAT
33 din 105

Figura 3.9 – Comunicație SPI
Unul dintre avantajele SPI este hardware -ul utilizat la recepție, care poate
fi un registru de deplasare, mai simplu și mai ieftin decât UART -urile folosite la
comunicația asincronă.

Modulul LCD utilizează 5 pini pentru funcționarea touchscreen -ului
(T_CLK,T_CS, MOSI, MISO, PEN) și 4 pini pentru afișarea datelor ( RS, WR,
CS, RST).

Figura 3.10 – Schema de conectare a modulului LCD la Arduino MEGA
Pentru f uncționarea afișorului LCD este necesară apelarea bibliotecii
<UTFT.h> iar pentru activarea touchscreen -ului trebuie apelată biblioteca
<URTouch.h> și apoi calibrat modulul prin rularea sketch -ului “Calibrate .ino” și
înlocuirea parametrilor returnați în ca drul bibliotecii <URTouch.h> pentru a avea
o precizie ridicată.
Se crează instanțele SMARTMETER și Touch , ce au ca parametri de intrare
pinii corespunzători plăcuței Arduino MEGA , pentru a apela diversele funcții
predefinite în cadrul bibliotecilor .
UTFT SMARTMETER (ILI9486,38,39,40,41);
URTouch Touch( 6, 5, 4, 3, 2).

NECLASIFICAT
NECLASIFICAT
34 din 105 3.5 Modulul Bluetooth HC -05
Dispozitivele HC serial Bluetooth constau într -un modul de interfață serială
și un adaptor Bluetooth, și au două moduri de funcționare: master și slave. [14]
Modu lul Bluetooth HC -05 este unul de înaltă performanță și are un consum
foarte mic de energie, fiind utilizat pentru a stabili o comunicație serială prin
Bluetooth . Prin setul de comenzi AT specifice acestuia se poate seta modul de
lucru ,master sau slave, al dispozitivului, viteza de transmisie a datelor , precum și
setarea adreselor dispozitivelor la care se dorește conectarea.

Figura 3.11 – Modulul Bluetooth HC -05
Caracteristici le tehnice ale modulului:
 Suportă o tensiune de alimentare cuprinsă în intervalul 3.6 – 6V;
 Este conceput pentru nivelul de 3,3V dar poate lucra într -o gama mai mare,
acceptând si nivelul TTL de 5V.
 În timpul conexiunii, curentul consumat este fluctuant în domeniul de 20 –
30mA. Curentul mediu este de aproximativ 25 mA. După c onectare, cu sau
fără comunicarea de procesare, curentul scade la 8mA, neavând obțiune de
sleep mode.
 Comunicare serială fără fir se realizează prin protocolul UART ( Universal
Asynchronous Receiver/Transmitter ) la frecvența de lucru de 2.4 GHz
banda ISM ( industrial, scientific and medical).
 Formatul de comunicație implicit este de 8 biți de date și 1 bit de stop.
 Modularea: GFSK (modulație cu deplasarea gaussiană de frecvență)
 Rată de comunicație implicită este de 9600 bps, dar suportă viteze de
transmi sie binară până la 460800 bps.
 Modurile master și slave pot fi comutate
 Putere de transmisie: +4dBm.
Senzitivitate recepție: -80dBm la 0.1% BER
 Modulul Bluetooth HC -05 este compatibil cu Arduino
Parola implicită pentru asocierea cu alte dispozitive Blueto oth este 1234.
 Dimensiuni mici: 35.7 mm x 15.2 mm x 2.35 mm.
În cazul interfețelor seriale asincrone, datele sunt transmise bit cu bit, fără
suport de la un semnal de ceas extern, această metodă de transmisie fiind eficientă
în ceea ce privește numărul fi relor necesare și al pinilor de I/O. Interfețele

NECLASIFICAT
NECLASIFICAT
35 din 105 asincrone sunt utilizate la scară largă în electronică, pentru conectarea unor
module ca Bluetooth, GPS, Xbee, GSM sau alte dispozitive externe .
Pentru asigurarea unor transferuri de date fără erori, protoc olul serial
asincron urmează un număr de reguli care vizează biții de date, biții de
sincronizare, bitul de paritate și rata de transfer.
Pentru a nu apărea erori este necesar ca cele două dispozitive de
comunicație să funcșioneze la aceeași rată de transf er. Viteze de transfer standard
sunt : 1200, 2400, 4800, 9600 ( este cea mai des folosită ), 19200, 38400, 57600,
115200. Există o limitare a vitezei de transfer la 115200 bps, deoarece această
viteză este destul de rapidă pentru majoritatea microcontroler elor. La viteze mai
mari vor apărea erori la primirea datelor.
Spre deosebire de comunicația serială sincronă, unde se folosește un semnal
de ceas extern, la comunicația serială asincronă, fiecare caracter trimis este
încadrat de către biții de sincronizar e, este precedat de un bit de START, cu
valoarea logică „0” și urmat de un bit de STOP, cu valoarea logică “1”, pentru a
se realiza sincronizarea între cele două echipamente de comunicație.
Bitul de paritate are scopul de a face o verificare a erorilor la nivel scăzut
și poate fi par sau impar. Pentru a calcula paritatea, se însumează toți cei 8 biți din
cadrul de date. Bitul de paritate este opțional și în cele mai multe cazuri nu este
folosit, deoarece încetinește transferul de date. Este util însă în me diile
zgomotoase.
Pentru comunicația serială asincronă, magistrala este alcatuită din două fire,
pentru transmiterea, respectiv recepționarea datelor, deci, dispozitivele de
comunicație trebuie să aibă câte 2 pini seriali, receptorul ( Rx ) și transmițător ul
(Tx). Spre deosebire de comunicația serială sincronă, la care firele se leagă între
aceeași pini ai celor două echipamente ( MOSI -MOSI, MISO -MISO, SCK -SCK
etc. ), în cazul comunicației asincrone receptorul unui dispozitiv se leagă la
transmițătorul c eluilalt dispozitiv și invers.

Figura 3.12 – Shield Bluetooth HC -05
Cei șase pini de conectare: VCC, GND, TXD, RXD, EN și STATE. În
principiu, modulul HC -05 poate funcționa atunci când sunt conectați doar patru
dintre aceștia: UART_TXD, UART_RXD, VCC și GN D.
Pinul EN este utilizat în cadrul dispozitivul master pentru stergerea din
memorie a informațiilor referitoare la adresele dispozitivelor asociate. După

NECLASIFICAT
NECLASIFICAT
36 din 105 stergere, dispozitivul master va căuta noul dispozitiv slave la întâmplare, apoi va
memora adresa ac estuia. La următoarea pornire, dispozitivul master va căuta
numai această adresă memorată.
Ledul de stare indică starea modulului :
 iluminare cu intermitență – nu există nici o conexiune Bluetooth;
 lent – se află în modul de comandă AT;
 iluminare cons tantă – modulul Bluetooth este conectat și portul este deschis.
Pentru a realiza conexiunea modulul ui Bluetooth cu laptopul am utilizat
programele pentru comunicații seriale Putty, Tera Term sau RealTerm, iar pentru
conexiunea cu un smartphone Android se f olosește aplicația S2 Terminal for
Bluetooth.

Figura 3.13 – Conectarea și a fișarea datelor transmise prin B luetooth
Pentru a se realiza comunicația între modulul Bluetooth HC-05 și laptopul
sau smartphone -ul personal , primul trebuie sa fie configurat în modul slave. Am
folosit laptopul ca dispozitiv master și am trimis parola 1234 la adresa MAC a
modulului Bluetooth .

NECLASIFICAT
NECLASIFICAT
37 din 105 3.5.1 Conectarea și configurarea modulului
Dispozitivul master HC -05 nu are memorie înainte de prima utiliz are. Dacă
parola este corectă, dispozitivul master se va conecta cu dispozitivul slave automat
la prima utilizare. În următoarea utilizare, dispozitivul master va reține adresa
Bluetooth a ultimului dispozitiv asociat și îl va căuta. Căutarea nu se va opri până
când dispozitivul nu este găsit.
Procedura modulului HC -05 pentru a intra in modul de comandă AT:
 se alimenteaza modulul de la placa Arduino MEGA 2560 ;
 se apasă butonul mic de pe modul, ledul începând să clipească cu
intermitență;
 modulul intră î n mo dul AT cu un baud rate implicit de 9600 bps, această
valoare poate fi modificată ulterior.
 din monitorul serial al lui Arduino se seteaza "Both NL & CR".
Configurarea modulului Bluetooth este urmatoarea:
 AT – verifica conexiunea – returnează OK;
 AT+RESET – se resetează dispozitivul ;
 AT+R OLE=0 – modulul e în modul de fu ncționare slave;
 AT+PSWD – parola predefinită este 1234;
 AT+ADDR – returnează adresa MAC a modulului, 98:D3:31:FB:6D:EF;
 AT+UART=115200,1,0 – setează rata de transmisie la 115200 bps, 1 bit
de stop și 0 de paritate;
 AT+CMODE=1 – astfel dispozitivul Bluetooth se poate conecta la orice
dispozitiv master.
1 bit de Start 8 biți de Date 0 biți de paritate 1 bit de Stop

Figura 3.14 – Formatul pachetelor de date transmise asincron prin Bluetooth
Nu am folosit bitul de paritate deoar ece acesta încetinește transferul de date,
iar o rată de transfer ridicată este un factor important în achiziția datelor provenite
de la Smartmeter.
Conectarea modulului Bluetooth HC-05 prin intermediul instrumentului de
control Toolbox Bluetooth al softwa re-ului MATLAB R2015a va permite
comunicația de date ASCII și binare. Interfața Bluetooth acceptă profilul portului
serial (SPP) al modulului și stabilește o conexiune bidirecțională cu acesta.

NECLASIFICAT
NECLASIFICAT
38 din 105
Figura 3.14 – Toolbox Bluetooth MATLAB R2015a
Profilul por tului serial definește cerințele pentru dispozitivele Bluetooth ,
necesare în configurarea conexiunii seriale prin cablu RS -232 peste legătura radio
Bluetooth, acestea fiind emulate utilizând protocolul RFCOMM ( radio frequency
communication ) între două di spozitive de tip peer. Protocolul RFCOMM suportă
aplicații derivate din aplicaț iile care utilizau portul COM pentru a realiza
comunicații peer -to-peer.

NECLASIFICAT
NECLASIFICAT
39 din 105 CAPITOLUL 4 – REALIZAREA PRACTICĂ A UNUI SISTEM
SMARTMETER
4.1 Proiectarea sistemului Sma rtmeter
Construirea Smartmeter se realizează utilizând componentele electronice
prezentate în capitolul anterior.
Pentru determinarea tuturor parametrilor electrici ai fiecărei intrări sau ieșiri
analogice a microcontrolerului , este necesară măsurarea doar a tensiunii,
intensității curentului precum si momentul de timp la care se realizează măsurarea.
Următoarea diagramă arată pe scurt conceptul de programare al
algoritmului ce sta la baza proiectării smartmeter -ului.
Trecerea prin
zero -tensiune
Citirea tuturor
pinilor de intrare ai
CAD
Trecerea prin
zero – curent
Pornire
Smartmeter
Inițializarea
comunicației
bluetooth
Inițializarea
funcției de timp
millis ()
Pornirea millis ()
t=0
Se iau câte 200 de
valori de la intrarea
analogică de
tensiune și de curent
Se calculează
valoarea efectivă a
curentului și a
tensiunii
Extragere putere
activă , reactivă și
aparentă
Trimiterea datelor
în interfața din
Matlab
Se calculează
factorul de
putere
Se resetează
funcția millis ()
Calculare (dt)
Start
Da
Nu
DaNu
Afișarea datelor
pe ecran

Figura 4.1 – Schema bloc generală a algoritmului Arduino

NECLASIFICAT
NECLASIFICAT
40 din 105 Un Smartmeter este construit pentru cercetare și pentru nevoia mai mare de
analiză a parametrilor curentului electric consumat față de nevoia obișnuită a unui
monitor de energie de a afișa consumul de energ ie electrică.
În continuare sunt prezentate câteva dintre caracteristicile sistemului Smartmeter:
 Intrări multiple:
Se pot măsura toți parametrii electrici pentru intrarea utilitară și se poate
face același lucru pentru mai multe sarcini electrice. Măsoa ră toți parametrii de
încărcare: valoarea efectivă de tensiune, valoarea efectivă de curent, timpul de
măsurare, puterea instantanee, puterea activă, puterea reactivă, puterea aparentă ,
factorul de putere, energia electrică consumată, frecvența, factorul de distorsiune,
nivelul armonicilor ș.a.m.d.
 Comunicații USB si wireless accesibile:
Este atât de ușor de interfațat și de asigurat o comunicație stabilă și sigură
prin USB într e smartmeter -ul bazat pe placa de dezvoltare Arduino Mega si
computer. Am rea lizat o interfață grafică in MATLAB R2015a pentru a prelucra
datele provenite de la Smartmeter prin intermediul comunicației Bluetooth .
Comunicația se realizează între dispozitiv și laptop sau smartphone, fiind posibilă
prin utilizarea mod ulului Bluetooth HC-05.
 Comenzi terminale de asistență:
După ce se conecteaza smartmeter -ul la computer, se poate cere să se trimită
orice măsurătoare de intrare sau ieșire prin intermediul monitorului serial. De
exemplu se pot configura o serie de algoritmi în urma cărora prin tastarea unor
comenzi se vor transmite toate măsurătorile din intrarea utilitară p e un afișor LCD
cu touchscreen.
 Monitor de energie:
Contorizează cantitatea de energie electrică [Wh] consumată de fiecare
sarcină și pentru fiecare sursă. Se pot salv a toate citirile, rezultate în urma
măsură rilor, împreuna cu momentul la care s -a facut masuratoarea din momentul
în care smartmeter -ul este pornit și până când se închide, precum și monitorizarea
energiei consumate și alertarea prin ema il.
 Plotarea datelo r folosind MATLAB:
Se pot compila și analiza toate măsurătorile utilizând softw -ul MATLAB,
Simulink, LabVIEW, tool -ul Serial Lab cu o modificare simplă și silențioasă, pur
și simplu instalând pachetul de suport Arduino în MATLAB. În plus plotarea
datelor este realizată și pe modulul LCD, dar și pe smartphone, interfațarea fiind
fezabilă datorită conexiunii dispozitivului cu modulul Bluetooth HC-05.

NECLASIFICAT
NECLASIFICAT
41 din 105 Schema de principiu a realizării sistemului Smartmeter a fost proiectată în
mediul de simulare software Fr itzing și dispune de aceleași componente
electronice ca și in realitate.
3.5'' TFT
480x320Transformator
de curent Transformator
de tensiune

Figura 4.2 – Schema de montare a componentelor Smartmeter -ului
4.2 Analiza și interfațarea componentelor în sistem ul de măsurare
4.2.1 Transformator ul de curent – Interfațarea în sistem
Senzorul de curent SCT -013-030 este prevăzut din fabrică cu o mufă jack
audio, cu trei pini de ieșire: central, mijloc si cămașă. Din cele trei fire, doar doua
sunt utile, conectate la bobina senzorului, al treilea nu este folosit. Pentru a -mi da
seama care sunt cele doua fire folositoare am măsurat rezistența între acestea
folosit un ohmetru. Perechea de fire folosită în circuit este cea între care se măsoră
o rezistență de cateva sute de ohm , rezistența bobinei. Între ori care alte doua fire
se măsoră o rezistență extrem de mare.
Pentru a conecta un senzor de curent la un Arduino, semnalul de ieșire de
la CT trebuie să fie condiționat, astfel încât să îndeplinească cerințele de intrare
ale intrărilor analogice Arduino, adi că o tensiune pozitivă între 0V și tensiunea de
referință a convertorului analogic -digital, ADC.

NECLASIFICAT
NECLASIFICAT
42 din 105 4.2.1.1 Analiza și calcularea parametrilor circuitului de curent
Calcularea unei mărimi adecvate a rezistorului de sarcină se realizează după
urmatorii pași:
a) Alegerea gamei de măsurare a curentului
SCT-013-030 are un domeniu curent de 0 până la 30 A, astfel pentru a calcula
rezistența de sarcină se alege valoarea maximă a gamei de măsură, 30 A.
b) Convertirea valorii efective a curentului maxim la valoarea de vârf prin
înmulțirea cu √2.
Ivprimar = 30 A × √2 = 30 A × 1.414 = 42.426 A (4.1)
c) Prin aplicarea relației pentru solenația de magnetizare ( 3.2.2 ), se împarte
curentul de vârf la numărul de înfășurari din transformatorul de curent pentru a
obține curentul de vârf în bobina secundară.
SCT-013-030 are 2000 de înfășurari, deci curentul secundar de vârf va fi:
Ivsecundar = Ivprimar
Nr_spire secundar=42.426 A÷2000 = 0.0212 A (4.2)
d) Pentru a maximiza rezoluția de măsurare, tensiunea pe rezistența de sarcină la
curentul de vârf ar trebui să fie egală cu jumătate din tensiunea de referință
analogică Arduino, A REF / 2.
Placa de dezvoltare MEGA 2560 R3 funcționează la 5V, astfel A REF =5V. Rezultă
că rezistența ideală l a sarcină va fi:
RS= A𝑅𝐸𝐹
2
Ivsecundar =2.5V÷0.0212A = 118 Ω (4.3)
Valoarea de 118 Ω nu este o valoare comună a rezistenței așa că am ales o
rezistență 100 Ω.
Pentru a mari rezoluția de măsurare a intensității curentului electric și
pentru a evita saturarea convertorului analogic -digital al lui Arduino, în cazul unor
fluctuații de tensiune, am ales o rezistență de sarcină de 1 kΩ.
Ivsecundar = A𝑅𝐸𝐹
2
RS=2.5V÷1000 = 2.5 mA (4.4)
Astfel, în acest caz valorea efectivă a curentului maxim este:
Ief=Ivprimar
√2=5 A÷1.414 =3.53 A (4.6)
Ivprimar =Ivsecundar ×Nr_spiresecundar =2.5 mA ×2000 =5 A (4.5)

NECLASIFICAT
NECLASIFICAT
43 din 105
RețeaRețea
Transformator de
curentC1RsR1
R2=R12.55
0
Arduino GNDIeșire C .T.
Intrare Arduino Arduino 5 V c.c.
divizor
Ieșirea transformatorului de curent : 1.765 mA valoare efectivă
= 2.5 mA valoare de vârf
= 5 mA valoare vârf -vârf
Generează pe rezistența de sarcină o tensiune de :
5 mA x 997 Ω = 4.985 V valoarea vârf -vârf la intrarea Arduino1 kΩ TensiuneCurent
2.5 mA
0
-2.5 mASarcină
Figura 4.3 – Schema de circuit detaliată a senzorului de curent
Dacă nive lul de curent electric se situează deasupra valorii maxime a
transformatorului, tensiunea de la intrarea analogică va depăși 5V, iar ADC -ul
Atmega2560 va fi saturat. Un rezistor din seria 1kΩ este utilizat pentru a limita
curentul de intrare în dispozitiv . Diodele interne ale Atmega2560 vor limita în
mod sigur tensiunea, prevenind deteriorarea.
Prin marirea rezistenței de sarcină am caștigat o rezoluție mai mare a
intensității curentului, dar a scăzut de 10 ori limita maximă a curentului pe care îl
pot măs ura.
Astfel, puterea maximă pe care o putem măsura este de:
Pmax = 240 ×AREF×Nr_spire secundar
2×√2×RS=240 ×5×2000
2×√2×1000= 850W (4.7)
Saturația și distorsiunile vor apărea dacă se depășește această putere limită.
Întrucât se dorește aco perirea majoritații consumatorilor electrocasnici, am decis
să folosesc urmatoarea gamă de rezistențe de sarcină:100 Ω, 1kΩ, 2.2kΩ, 4.7kΩ
și 10 kΩ rezultând urmatoarele limite de puteri măsurabile: 8550 W, 850 W,
390W, 185 W, 85 W.
Pentru a ajuta la prote cția internă a circuitului, pe lângă rezistorul de sarcină
am conectat un condensator de decuplare pentru a elimina componenta continuă
a semnalului de intrare, asigurând astfel doar amplificarea component ei
alternative, componentă utiă a semnalului de in trare.

NECLASIFICAT
NECLASIFICAT
44 din 105 Condensatorul de decuplare este folosit pentru a servi ca sursă de energie
electrică în momentele în care circuitul comută între cele două stări logice, situații
în care, pe timpul tranzițiilor, apare un consum ridicat de curent, respectiv o
scăde re a tensiunii la pinii de alimentare. Astfel, prezența condensatorului de
decuplare face ca la nivelul circuitului să existe o mică sarcină stocată, care poate
fi livrată la momentele de timp corespunzătoare. Lipsa condensatoarului de
decuplare poate duce la o scădere semnificativă a tensiunii de alimentare pe timpul
tranzițiilor.
Valoarea condensatorului ar trebui să fie suficient de mică pentru a nu
interfera cu semnalul, dar cu cât capacitatea este mai mare , cu atât protecția
tranzitorie va fi mai mare . Un semnal de frecvență mai mare va necesita un
condensator mai mic pentru a evita interferența semnalului. Valoarea capacității
de 10uF este potrivită în a reduce zgomotul și a stabiliza tensiunea de bias pentru
măsurarea curentului electric la 50Hz.
Tensiunea dată de transformatorul de curent pe rezistorul de sarcină variază
de la pozitiv la negativ în raport cu masa. Intrările analogice Arduino necesitând
o tensiune pozitivă, am recurs la înjumătațirea tensiunii cu un divizor de tensiune
alcătuit din d ouă rezistoare de 160kΩ, centrând astfel tensiunea citită pe nivelul
de 2.5V în loc de 0V. Tensiunea de ieșire a CT -ului va trece acum peste și sub
nivelul de 2.5 V, rămânând pozitivă și putând fi astfel interpretată de convertorul
analogic -digital al lui Arduino.
Calcularea coeficientului de calibrare a curentului electric se realizează prin
raportul dintre numărul de înfașurări ale transformatorului și rezistența la sarcină.
Calib CT=Nr_spire secundar
𝑅𝑠=2000
997=2 (4.8)
Dacă se dorește creșter ea sensibilității, implicit creșterea rezoluției de
măsurare a intensității curentului electric, rezistența de sarcină poate fi modificată
la o valoare mai mare de câțiva kiloohmi. Alternativ, rezistența de sarcină poate
fi redusă la o valoare de cateva su te de ohmi pentru a crește domeniul de măsură
către consumatori cu puteri mai mari, kilowați, dar scădea sensibilitatea
măsurătorilor.
Din simulările efectuate am observat că odată cu creșterea valorii rezistenței
de sarcină în scopul creșterii sensibilită ții și al rezoluției, eroarea de fază crește,
în special pentru curenții mai mici.
4.2.1.2 Precizia efectuării măsură rilor
Din foaia de catalog a senzorului de curent reiese că un factor major care
poate afecta în mod semnificativ precizia unui CT cu miez divizat este
neliniarizarea miezului, ceea ce poate introduce un gol de aer. Chiar și un decalaj
foarte mic ar putea duce la scăderea preciziei cu aproximativ 10% sau chiar mai
mult și este însoțită de o schimbare de fază mare, deci este important să se as igure

NECLASIFICAT
NECLASIFICAT
45 din 105 că fețele miezului magnetic sunt curățate și aliniate corespunzător l a instalarea
transformatorului. Pe lângă acest aspect mai trebuie luată în calcul și toleranța
rezistenței de sarcină a transformatorului de curent, ce are o valoare standard de
1%. Toleranța t (%) reprezintă abaterea maxim admisă a valorii reale, măsurate,
față de valoarea nominală marcată .
În tot circuitul, rezistorul de sarcină reprezintă singura componentă de
scalare și este necesar pentru a transforma ieșirea CT -ului într -o tensiune ce se
aplică intrării analogice a microcontrolerului Arduino. Valoarea rezistenței de
sarcină este dependentă de temperatură, coeficientul de temperatură al rezistorului
fiind de ± 100 ppm / ° C, ceea ce înseamnă că rezistența se poate modifica cu până
la 0.25% pentru o schimbare a temperaturii ambiante cu 25 ° C. [11]
Întrucat convertorul analogic -digital al plăcuței de dezvoltare Arduino
MEGA nu este perfect, acesta poate afișa eronat valori foarte mici ale intensității
curentului atunci cand în circuit nu există nici un consumator .
Întrebările care pot să apară în acest caz sunt:
 "De ce senzorul meu de curent citește x A atunci când în circuit nu există
curent electric?";
 "De ce Smartmeter -ul afișează y W când nimic nu este conectat la rețea?"
Trebuie precizat faptul că fiecare valoare din convertorul analogic -digital
nu reprezintă o tensiune, ci o bandă de tensiuni. ADC -ul va măsura forma de undă
în aproximativ 60 de eșantioane și dacă amplitudinea undei este suficient de mică,
fiecare eșantion al formei de undă va avea valoarea 511, cum se arată în prima
figură a valorilor medii ale eșantioanelor formei de undă.
a) b)

Figura 4.4 – Valorile medii ale eșantioanelor formei de undă
În cazul în care totuși tensiunea de polar izare se scurge puțin în circuit,
valoarea medie a eșantioanelor formei de undă se situează chiar deasupra
tranziției de la 511 la 512, cum se arată în cadrul figurii 4.4 b). De această dată,
când convertorul analogic -digita l măsoară forma de undă, eș antioanele din prima
jumătate a ciclului vor lua valoarea 512 și restul vor avea valoarea de 511.
Procesul de eșantionare a transformat undă sinusoidală într -o formă
dreptunghiulară, dupa cum putem o bserva și în figura 4.5.

NECLASIFICAT
NECLASIFICAT
46 din 105
Figura 4.5 – Citirea senzorilor în cazul neconectării niciunui consumator
Pe lâng ă precizia redusă a convertirii datelor provine de la senzorul de
curent de către convertorului analogic -digital al microcontrol erului Atmega2560,
pot apărea ș i alte erori de precizie provenite de la zgom otul digita l generat de
plăcuța de dezvoltare Arduino MEGA sau cauzate de zgomotul exterior ce apare
în placa de circuit imprimat sau în cablaj.
Cu toate acestea, transformatorul de curent non invaziv SCT -013-030 este
potrivit pentru utilizarea în cadrul p roiectului întrucât poate dezvolta o tensiune
suficientă pentru a utiliza în întregime rezoluția intrării analogice a
microcontrolerului Arduino, iar distorsiunea formei de undă datorată saturației la
această tensiune secundară este neglijabilă în scopul e fectuării măsurătorilor
normale ale aparatelor electrocasnice. Eroarea maximă de fază poate fi cu puțin
peste 5 ° la rezistența de sarcină de 1kΩ și este nesemnificativă, reprezentând o
eroare a factorului de putere mai mică de 0.0038 .
4.2.1.3 Funcționarea convertorului analogic -digital
Atmega2560 dispune de o conversie analogică -digitală de aproximare
succesivă pe 10 biți. ADC -ul este conectat la un multicadtru analogic cu 16 canale.
Astfel tensiunea de intrare între 0 și 5V va fi mapată în 210 valori î ntregi cuprinse
între 0 și 1023. Această mapare oferă o rezoluție în citirea valorilor de:
5V/1024 unități, adică 0.0049V (4.9 mV) pe unitate.
Citirea intrărilor analogice se face cu funcția analogRead(), ce are ca
parametru intrarea analogică corespunzat oare și returnează tensiunea citită pe
aceasta. Este nevoie de aproximativ 100 de microsecunde (0.0001 s) pentru a citi
o intrare analogică, deci rata maximă de citire este de aproximativ 10000 de ori
pe secundă. [15]

NECLASIFICAT
NECLASIFICAT
47 din 105
Condensator
14 pFIntrările analogice
Comparator
Ieșire LogicARef10
Bit
DACA0
A1
.
.
.
A15
Figura 4.6 – Schema bloc a convertorului analogic -digital
Conversia analogică -digitală presupune într -o primă fază selectarea unei
intrări analogice a microcontroler -ului, putând fi activ oricare din cele 16 canale
analogice de intrare, de la A0 la A15.
Canalul de i ntrare este conectat la un condensator, care se deschide odată
cu începerea conversiei analogice. Comutatorul se deschide după 1,5 cicluri ADC
(12 μs cu prescaler implicit de 128) astfel încât condensatorul să își păstreze citirea
curentă, tensiunea de int rare putându -se schimba fără să afecteze rezultatul. Acest
lucru este util pentru semnalele în tranziție rapidă, deoarece întreaga conversie
poate dura 104 μs, în funcție de prescaler.
Pentru a determina tensiunea de ieșire, blocul logic aplică tensiunea d e
referință analogică, Aref, divizată de convertor digital -analogic, DAC, sub
controlul logicii ADC. Ieșirea DAC este trimisă către comparator care determină
dacă tensiunea de intrare este mai mare sau mai mică în comparație cu tensiunea
de referință, în starea sa divizată. De exemplu, bitul de înaltă ordine (MSB) ar fi
setat sau șters prin setarea DAC pentru a diviza tensiunea de referință cu 2 (adică
2.5V dacă ARef este 5V). Dacă intrarea este mai mare decât 2.5V, atunci bitul de
înaltă ordine din rezult at este setat. Acest lucru necesită un ciclu ADC, 8 μs la
prescaler standard de 128 cu o frecveță de funcționare de 16 MHz.
Pentru a obține următorul bit de rezultat, DAC va fi setat la pasul următor,
adică 0,25 ARef sau 0,75 ARef în funcție de setarea sau nu a lui MSB, și urmează
o altă comparație făcută. Acest proces este repetat pentru toți cei 10 biți.

NECLASIFICAT
NECLASIFICAT
48 din 105 4.2.2 Transformatorul de tensiune – Interfațarea în sistem
Rezistoarele R1 și R2 trebuie să fie alese astfel încât să se obțină o valoare
de vârf a tensiunii de ieșire de aproximativ 1÷2 V în cazul adaptorului de
alimentare AC -AC, ce are valoarea tensiunii nominale de 6V.
Uv iesire = 𝑅1
𝑅1 + 𝑅2 x Uv AC−AC
⇨Uv iesire (𝑅1 + 𝑅2)=𝑅1 x Uv AC−AC (4.8)
⇨R2=Uv AC−AC− Uv iesire )
Uv iesirex R1 (4.9)
Întrucât doresc o valoare de vârf a tensiunii de ieșire de 1.5V, iar valoarea
de vârf a tensiunii de intrare este de 8.5V, atunci prin alegerea valoarii rezistenței
R1 de 10 kΩ rezultă o retistență R2 de 47 kΩ.
O combinație a valo rii rezistențelor, luând in calcul si toleranța acestora,
de 9.8kΩ pentru R1 și 46.4 kΩ pentru R2 dă o ieșire adecvată :
Uv iesire = 𝑅1
𝑅1 + 𝑅2 x Uv AC−AC = 10
10 + 47 x 8.5 V =1.5 V
⇨ Uvv iesire =2 x 1.5 V=3 V (4.10 )
Tensiune de bias furnizată de reziszențele R3 și R4 ar trebui să fie jumătate
din tensiunea de 5V furnizată de plăcuța Arduino, în concluzie R3 și R4 trebuie
să fie egale. O valoare mai mare a rezistențelor reduce consumul de energie, dar
crește zgomotul termic. Pentru sma rtmeter consumul redus de energie este
important, deci am folosit reziszențele de 160 kΩ pentru rezistoarele R3 și R4.
În cazul în care placuța Arduino funcționează la 5V, forma de undă rezultată
a circuitului are un vârf pozitiv de 2.5V + 1.5V = 4V și vârful negativ de 2.5V –
1.5V = 1V, satisfăcând necesitățile de tensiune la intrărea analogiceă a lui Arduino
MEGA și lăsând un interval suficient, astfel încât să nu existe n ici un risc de
supratensiune sau sub tensiune.
Combinația rezisențelor 10kΩ și 47kΩ pentru R1 și R2 funcționează bine și
pentru furnizarea tensiunii de 3.3V a placuței Arduino, cu un vârf pozitiv de 3.15V
și un vârf negativ de 0.15V, satisfăcând de asemen ea necesitățile de tensiune a
intrării analogice a microcontrolerului.
Condensatorul C1 oferă o cale de impedanță redusă pentru semnalul de
curent alternativ către masă. El reduce zgomotul indus de frecvența înaltă de
funcționare a microcontrolerului.Valo area capacității nu trebuie să fie critică, 10
μF fiind suficient de bună.
La proiectarea oricărui circuit este necesar să se ia în considerare variațiile
inevitabile care apar ca parte a procesului de fabricație și care conduc la valoarea
unei anumite car acteristici a componentei – rezistența rezistoarelor sau a tensiunii
transformatoarelor – ce diferă de valoarea nominală marcată pe componente.

NECLASIFICAT
NECLASIFICAT
49 din 105 Pentru a permite cea mai bună utilizare a domeniului de măsurare a
intrărilor analogice Arduino, tensiunea de in trare ar trebui să se rotească între 0V
și tensiunea de alimentare, nominal +5V. Pentru a face acest lucru cu succes,
trebuie să se ia în considerare cele mai grave condiții atunci când se efectuează
calculele.
Tensiunea provenită de la rețeaua de alimenta re nu este întotdeauna de
230V. În mod normal, tensiunea variază cu până la 10% pe fiecare parte a valorii
nominale. Pentru siguranță, ar trebui să se utilizeze în calule cea mai mare tensiune
posibilă, adică 253 V.
Adaptorul de tensiune nu funcționează la sarcină maximă, astfel că pentru
tipul de adaptor utilizat în mod normal se adaugă 20 -25% la tensiunea nominală.În
cazul adaptorului de alimentare AC -AC de 6 V tensiunea nominală, se măsoară o
valoare efectivă a tensiunii de ișire în gol de 8.1 V.
Sursa de tensiune a plăcuței Arduino, care este alimentată de la un
acumulator extern, nu poate fi exact de 5 V. Ieșirea regulatorului de tensiune poate
fi cuprinsă între 4.8 V și 5.2 V. Cel mai rău caz este atunci când tensiunea este
mai mică de 5V, în urma masurătorii cu voltmetrul obținându -se 4.9V, valoare ce
va fi folosită în calcule.
Din cauza toleranței fiecărui rezistor, rezistențele lanțului de polarizare ar putea
să nu fie egale. Valoarea rezistenței fiecărui rezistor poate fi eronată cu 1%, cel
mai rău caz fiind dacă acestea sunt modificate în direcții opuse, adică pentru R3
+1% iar pentru R4 -1% . În acest caz raportul de divizare va fi modificat cu 1%.
În cazul rezistențelor lanțului de separare cea mai defavorabilă situație este
atunci când R2 este scăzut cu 1% și R1 este mai mare cu 1%. Rezistențele R1 și
R2 fiind valori semnificativ diferite, tensiunea divizată va fi cu 2% mare.
Presupunând că ambele rezistențe au aceleași proporții datorate variațiilor de
temperatură, rezultă că raportul lor de divizare nu se schimbă din cauza
temperaturii.
Toleranța frecvenței este de ± 0,02 Hz. Transformatoarele, atât de curent,
cât și de tensiunea, vor avea pierderi ușor diferite și erori de fază, iar întârzierea
măsurării tensiunii și curentului va fi, de asemenea, diferită, toate acestea
implicând operații de filtrare pentru calibrarea fazelor.
Ce se întâmplă în practică?
Cel mai mare nivel de tensiune provenit de la rețea ua de alimentare este
230V + 6%, aproximativ 244 V. Adaptorul de tensiune purtând etichet a "Intrare:
230 V, ieșire 6 V", tensiunea de ieșire poate fi de 6 x 244 / 230 = 6.4V la care
trebuie să adăugăm 20% deoarece transformatorul are ieșirea în gol , deci
tensiunea de ieșire are valoarea efectivă de 8.1 V. Aceasta este, valoarea de vârf
este 8.1 V×√2=11.32 V.
Tensiunea pe care o dorim la intrarea Arduino este de 4.9 V vârf -la-vârf,
dar întreaga gamă este disponibilă numai dacă bias -ul este exact la punctul de
mijloc de 2.45 V. Punctul de mijloc poate fi la fel de scăzut ca 2.426V sau la fel

NECLASIFICAT
NECLASIFICAT
50 din 105 de mare ca 2.474V , deci tensiunea de vârf a curentului alternativ este limitată la
2.426V.
Alegând valoarile rezistențelor R1 și R2 de 10 kΩ respectiv de 47 kΩ, am
observat că la măsurarea rezistoarelor cu un ohmetru se obțin rezistențele
R1=9.8kΩ și R2=46 .5 kΩ întrucât trebuie să se țină seama și de toleranța
componentelor.
Uv iesire = 𝑅1
𝑅1 + 𝑅2 x Uv AC−AC = 9.8
9.8 + 46.5 x 8.1 x √2 V
Uv iesire =9.8
56.2 x 11.32 V=1.95 V
Uvv iesire =2 x 1.95 V=4 V
(4.11 )

În cazul în care p lacuța Arduino funcționează la 5V, forma de undă rezultată
a circuitului are un vârf pozitiv de 2.5V + 1.95V = 4.45V și vârful negativ de 2.5V
– 1.95V = 0.55V, satisfăcând necesitățile de tensiune la intrărea analogiceă a lui
Arduino MEGA și lăsând un inte rval suficient, astfel încât să nu existe nici un risc
de supratensiune sau sub -tensiune.
Pentru a măsura tensiunea rețelei aceasta trebuie mai întâi “transformată”
până la o tensiune sigură, apoi divizată înainte de a fi aplicată la una din intrările
analogice ale microcontrolerului.
Pentru adaptorul de tensiune 240V AC in – 8.1V AC out:
-Raportul de transformare: Kt = 235 ÷ 8.1 = 28.74
-Raportul de divizare:

Constanta de calibrare a tensiunii est e dată de produsul a celor două rapoarte:
Calib AC= Rt × Rd = 5.74 x 28.74= 164.96 (4.13)
Astfel putem ca lcula valoarea tensiunii furnizate de rețeaua de alimentare:

Uv rețea=Uv AC−AC x Rt = Rd x Uv ieșire x Rt
⇨ Uv rețea= ( 5 x 𝑈𝑎
1024−2.5) x Rt x Rd (4.15 )
Kr =𝑅1 + 𝑅2
𝑅1=9.8 + 46.5
9.8= 5.74 (4.12 )
Uv AC−AC= 𝑅1 + 𝑅2
𝑅1 x Uv ieșire
Uv ieșire =5 x 𝑈𝑎
1024−2. (4.14 )

NECLASIFICAT
NECLASIFICAT
51 din 105
RețeaTensiunea de
alimentare
230 V
Transformator de
tensiuneC1R1R3
R4=R32.5
0
Arduino GNDIeșire adaptor
Intrare Arduino Arduino 5 V c.c.
divizor
Ieșirea transformatorului de tensiune : 8 V valoare efectivă
= 11.31 V valoare de vârf
=22.34 V valoare vârf -vârf
Tensiunea in urma divizorului de tensiune la intrarea Arduino :
22.62 x 9.8/(46.5+9.8)= 4 V valoare vârf -vârf 9.8 kΩ Tensiune
R2
46.4 kΩ
8 V13.5
-8.510 uF
Figura 4.7 – Schema de circuit și formele de undă de tensiune
În sketch -ul Arduino calcularea valorii tensiunii furnizate de rețeaua de
alimentare și a intensității curentului electric măsurat în circuit se implementează
astfel:
U[Ne] = (5.0*analogRead(A0)/1024.0 -2.5)*Calib AC; ( 4.16)
I[Ne]=(5.0*analogRead(A1)/1024.0 -2.5)*Calib CT; (4.17)
Unde U[Ne] și I[Ne] reprezintă tensiunea instantanee a rețelei de alimentare
respectiv valoarea instantanee a intensității curentului electric, Ne constituind
eșantionul cure nt al celor două forme de undă.
Sursa relativ simplă a bias -ului de tensiune, u tilizată în măsurarea tensiunii
de curent alternativ cu adaptor de alimentare AC -AC, are unele limitări în cazul
în care este necesară o precizie ridicată a valorilor citite pe intrarea analogică a
microcontrolerului. Sursa de bias poate fi îmbunătățit ă prin adăugarea unui
amplificator operațional care separă divizorul rezistiv ce înjumătățește tensiunea
de referință a plăcuței Arduino și divizorul coborâtor de tensiune al adaptorului
AC-AC. Acest lucru reduce semnificativ impedanța sursei de tensiune, rezul tând
o performanță îmbunătățită. Este necesar un singur amplificator operațional,
senzorul de curent poate împărți bias -ul de alimentare și se poate conecta la ieșirea
amplificatorului.Însă î n simulările efectuate această metodă nu a adus nici o
schimbare pozitivă întrucât sursa de alim entare este o baterie de 5V DC.

NECLASIFICAT
NECLASIFICAT
52 din 105 Dacă se dorește citirea puterii active și direcția de curgere a puterii – dacă
se importă sau se exportă – atunci transformatorului de curent trebuie pus în
direcția de curgere a curentului.Inv ersarea sensului transformatorului de curent va
schimba semnul acelei intrări. Inversarea sensului transformatorului de tensiune
va schimba semnul tuturor intrărilor.

Figura 4.8 – Inversarea sensului transformatorului de curent
Din figura 4.8 reiese că i nversarea sensului transformatorului de curent va defaza
forma de undă a semnalului de curent electric cu 180  față de forma de undă a
semnalului de tensiune.
Utilizarea condensatorului de decuplare ajută la protecția internă a
circuitului, eliminând compo nenta continuă a semnalului de intrare și asigurând
astfel doar amplificarea componentei alternative a semnalului de intrare,
componenta utiă.
Principala caracteristică a celor două condensatoare electrolitice de capacitate
10uF este de a stabiliza tensiu nea de bias a celor două circuite ale senzorilor de
tensiune și de curent, oferind semnalului de curent alternativ o cale de impedanță
redusă la masă și reducând astfel zgomotul indus de frecvența înaltă de
funcționare a microcontrolerului.
Distorsionarea formelor de undă ,cauzată de prezența zgomotului intern în
lipsa celor două condensatoare din circuitele senzorilor, se evidențiază în cadrul
figurii 4.9, în care se arată că parametrii electrici ai unui consumator de tip laptop
sunt afectați de zgomot.

NECLASIFICAT
NECLASIFICAT
53 din 105
Figura 4.9 – Distorsionarea formelor de undă cauzate de zgomot
Fără a conecta condensatorul în circuitul senzorului de curent electric,
forma de undă a intensității curentului electric în cazul unui bec cu incandescență
de 60W arată astfel:

Figura 4.10 – Forma de undă de curent în lipsa condensatorului electrolitic
Pentru a reduce zgomotul se conectează condensatorul de 10uF între
divizorul rezistiv și masă, observându -se ulterior că fluctuațiile de zgomot au
dispărut, așa cum se arata în figura 4.11. Forma de undă de curent în prezenț a
condensatorului electrolitic.

NECLASIFICAT
NECLASIFICAT
54 din 105
Figura 4.11– Forma de undă în prezența condensatorului electrolitic
Diferența este și mai mare în cazul unui bec economic de 11W în cazul
căruia fluctuațiile de zgomot distorsionează în totalitate forma de undă a
semnalului de curent.

a) b)

Figura 4.12 – Forma de undă de curent a) în prezența condensatorului
electrolitic; b) în lipsa condensatorului electrolitic

NECLASIFICAT
NECLASIFICAT
55 din 105 4.3 Interfațarea aplic ațiilor și descrierea sistemului
4.3.1 Interfețele grafice
În primă instanță a m realizat o interfață grafică în mediul grafic de
dezvoltare al interfeței utilizatorilor MATLAB R2015a pentru a prelucra datele
provenite de la Smartmeter prin intermediul com unicației Bluetooth . Comunicația
se realizează între dispozitiv și laptop sau smartphone, fiind fezabilă datorită
conexiunii dispozitivului cu modulul Bluetooth HC-05.
Codul de implementar e Matlab al interfeței grafice “Smartmeter” se
găsește în cadrul a nexei 1.1 din capitolul Anexe .
Sketch -ul de implementare Arduino pentru achiziționare a și prelucrare a
datelor provenite de la senzori, precum și configurării modulelor LCD cu
touchscreen și Bluetooth se regăsește în cadrul anexei 1.2 a lucrării prezente . În
sketch este realizată și interf ața grafică a afișorului LCD , precum și configurarea
microcontrolerului XPT2046 pentru funcționarea ecranului tactil .
Scenariul de funcționare este următorul: dispozitivul Smartmeter este
alimentat de la un acumulator exter n de 5V curent continuu. Senzorul de curent și
transformatorul de tensiune sunt conectați la instalația de curent alternativ ce
trebuie monitorizată.
Interfața Smartmeter -ului cuprinde ecranul de start și meniul principal, plus
alte 3 pagini: Forme de undă , Monitor energie, Parametri electrici. Pentru alegerea
oricărei opțiuni se apasă pe butonul corespunzător acesteia și se pote vizualiza
pagina cu parametrii specifici opțiunii.

Figura 4.13 – Smartmeter cu transmisie Bluetooth

NECLASIFICAT
NECLASIFICAT
56 din 105 Pentru a transmite datele de la Smartmeter la laptop sau smartphone prin
intermediul conexiunii Bluetooth , se apasă pe butonul “ON” din cadrul
submeniului HC -05 Bluetooth. Din din submeniul HC -05 al interfeței grafice
dezvoltate în Matlab R2015a se selecte ază butonul “Conectare”, iar dacă parola
de audentificare a modulului Bluetooth a fost introdusă corect, se inițiază
transmisia serială asincronă a datelor. În acest moment se pot analiza și monitoriza
parametrii electrici specifici consumatorilor aflați în funcțiune.

Figura 4.14 – Meniu ri Bluetooth HC-05 ale interf ețelor grafice
Pe lângă afișarea valoarilor efective de tensiune și de curent, timpului de
măsurare, puterea instantanee, puterea activă, puterea reactivă, puterea aparentă,
factoru l de putere, energia electrică consumată, prețul consumului de energie,
frecvența semnalului, factorul de distorsiune al celor două forme de undă, nivelul
armonicilor de curent, rata de transfer a datelor ș.a.m.d, sunt afișate formel e de
undă ale acestor p arametri dar și filtrele FIR ce îmbunătațesc factorul de putere,
curbele Lissajous de tensiune în funcție de curent, graficul mesh al formei de undă
a curentului în funcție de tensiune și de timp.

Figura 4.15 – Interfața grafică în Matlab R2015 a sistem ului Smartmeter
Monitorizarea consumului de energie electrică constă în atenționarea prin
email/gmail a faptului că s -a depășit limita acceptată a energiei consumate,
precum și trimiterea unui fișier Excel ce conține forma de undă a intensității
curentului alternativ, energia electrică consumată , dar și momentele de timp la
care s -au înregistrat parametrii respectivi.

NECLASIFICAT
NECLASIFICAT
57 din 105

Figura 4.16 – Atenționarea prin email a stării consumului de energie
Încapsularea sistemului S martmeter într-un produs practic și complex din
punct de vedere al măsurării parametrilor electrici și al monitorizării energiei
electrice consummate , precum și interfațarea cu software -ul Matlab și sistemul de
operare Android fac di n acest sistem un dispozitiv esențial și de mare perspectivă
în viitoarea casă inteligentă (smart home).

Figura 4.17 – Încapsularea sistemului Smartmeter

NECLASIFICAT
NECLASIFICAT
58 din 105 4.3.2 Realizarea aplicațiilor pentru smartphone

Figura 4. 18 – Prezentarea sistemului Smartmeter
În cadrul anexei 1.3 se află codul QPython3, implementat pentr u a interfața
Smartmeter -ul cu smartphone -ul personal. Am creat trei aplicații smartphone
pentru a optimiza și a face utilizarea Smartmeter -ului cat mai simplă ș acc esibilă
de pe orice dispozitiv.
Prima Aplicație pentru smartphone -ul Android a fost realiza tă utilizând
software -ul de compilare QPython3. Codul îndeplinește funcția de stabilire a
comunicării cu modulul Bluetooth , și citirea datelor transmise de Arduino. Pentru
a realiza conexiunea Bluetooth este necesară adresa MAC a modulului Bluetooth
HC-05 (98:D3:31:FB:6D:EF) și parola de conectare (1234).
Interfața grafică a fost dezvoltată în HTML fiind afișată într -un WebView
ce se găsește în scriptul precizat în argumentul funcției droid.webViewShow().
Instrucțiunea eventWhite(1000) are ca rezultat aște ptarea timp de o secundă a unui
eveniment, de a ieși din terminal sau de a primi valoarile parametrilor energetici
transmiși de di spozitivul Smartmeter, pe care î i va adăuga ca eveniment în coada
pentru afișare în interfața grafică.
Citirea valorii energie i electrice consumate și ai celorlalți paramet ri
electroenergetici ai consumatorilor monitorizați se realizează prin apelarea
funcției droid.bluetoothReadLine().result
Dacă valoarea citită a energiei depașește 2Wh atunci se va trimite automat un mail
de în științare a atingerii energiei de prag.
Folosind HTML ca mecanism de afișare, acesta poate fi generat sau creat
folosind orice editor de text și apoi lansat utilizând funcția de apel API
webViewShow. Codul HTML include interfața de afișare și javascript -ul care
interacționează cu scriptul QPython3. Am ales să folosesc HTML deoarece
prezintă funcții mai detaliate pentru interfața grafică cum ar fi selectarea culorii,
fontului și afișării interactive. Funcția document.getElementById() returnează un
element ( Element), reprezentând elementul al cărui id corespunde șirului

NECLASIFICAT
NECLASIFICAT
59 din 105 specificat. Deoarece ID -urile elementelor trebuie să fie unice dacă sunt
specificate, ele sunt o modalitate utilă de a obține rapid accesul la un anumit
element.
Codul pentru trimiterea email -ului de monitorizare a energiei este unul
foarte simplu. Se apelează funcția AP I sendEmail ce are 3 parametri : adresa/lista
cu destinatari, titlul și mesajul separate prin virgulă. Serviciul SMTP Gmail
trimite mesajele noastre, iar biblioteca smtplib conț ine un număr mare de funcț ii
ce ne pot ajuta.

Figura 4.19 – Aplicația smartphone de monitorizare energie consumate
O altă aplicație pentru smartphone a fost realizată în mediul de dezvoltare
online a aplicațiilor mobile pentru sistemul de ope rare Android, MIT App
Inventor 2. Crearea aplicațiiei a fost posibilă prin interconectarea blocurilor de
funcții logice în cadrul interfețelor predefinite, algoritmul fiind prezentat în cadrul
anexei 1.4.
Principiul de funcționare este următorul: m ai întâi se conectează
smartphone -ul la modulul Bluetooth HC-05 al dispozitivului Smartmeter , fiind
necesară adresa MAC a modulului Bluetooth HC-05 (98:D3:31:FB:6D:EF) ,
precum și paro la de conectare (1234). Se afișează în timp real forma de undă a
intensității curentului alternativ împreună cu parametrii electroenergetici ai
consumatorului monitorizat, așa cum se prezintă în cadrul figurii 4.19.

NECLASIFICAT
NECLASIFICAT
60 din 105

Figura 4.20 – Aplicația a II -a a sistemului Smartmeter pe Android
A treia aplicație smartphone este una destul de simplă dar utilă, întrucât
afișează în timp real formele de undă de tensiune și curent, precum și puterea
activă, reactivă și energia consumată de sarcin ă.

Figura 4.21 – Aplicația a III -a a sistemului Smartmeter pentru Android
Aplicațiile prezentate au rolul de a asigura flexibilitatea și simplitatea
utilizării sistemului Smartmeter , astfel încât să poată fi folosit de către orice
persoană indiferent de vârstă, prin furnizarea unui feedback legat de utilizarea
consumului energetic , precum și afișarea și înregistrarea diverșilor parametri
electrici .

NECLASIFICAT
NECLASIFICAT
61 din 105 CAPITOLUL 5 – METODE DE OPTIMIZARE A CONSUMULUI
ENERGETIC
5.1 Optimizarea consumului energetic
Pentru a se evita supratensiunile sau sub tensiunile sistemului trebuie să se
țină cont, în mod special, pe lânga puterea maximă admisă și de raportul dintre
puterea activă și puterea reactivă a consumatorilor.
Metodele de optimizare ale consumului energetic studia te sunt:
– Compensarea factorului de putere;
– Filtrarea armonicilor de curent.
I. Compensarea factorului de putere
Un factor de putere mic respectiv o putere reactivă mare se traduc în valori
nejustificate ale consumului de energie electrică. Pentru a nu c onsuma inutil
energie , trebuie ca unghiul de fază, φ, sa fie cât mai apropiat de valoarea 0 .
Îmbunătățirea factorului de putere contribuie la creșterea randamentului
sistemului , asigurând o utilizare mai eficientă a energiei electrice prin diminuarea
puterii aparente a consumatorului respectiv. Practic odată cu îmbunătățirea
factorului de putere, cu rentul care circulă prin sistem scade, pentru aceeași
încărcare a rețelei.
II. Filtrarea armonicilor de curent
Este important de amintit faptul că, în special atunc i când este conectată o
sarcină monofazată, neliniară, pentru rețelele de 50 Hz, apar armonici începând
cu frecvența de 100 Hz și depășind frecvența de 1 kHz, încât rezultă un câmp larg
de rezonanțe care pot fi excitate. Rezonanța unui circuit este acea sta re a
sistemului, î n care î ntre sursă și rețea nu are loc schimb de putere reactivă. [6]
Prin eliminarea pe cât posibil a armonicilor caracteristice unui regim deformant,
se eficientizează într -o mare măsură consumul energetic și în aceleași timp se
elimină și efectele care au un impact negativ asupra calității energiei electrice.
Filtrarea armonicilor se referă practic la eliminarea pe cât posibil a tuturor
formelor de undă, altele decât fundamentala și armonica a treia, prezente în
sistemul de distribuție a l energiei electrice. Filtrarea va atenua spectrul armonic și
va îmbunătăți factorul de putere.
Metoda prin care se încearcă optimizarea consumului energetic se bazează
pe compensarea puterii reactive și pe filtrarea armonicilor din sistemul de
distribuție al consumatorului.
Pentru factorul de putere, puterea reactivă și ceilalți parametri electrici s -au
efectuat seturi de măsurători în care, pentru acești parametri s -a monitorizat
evoluția la filtrarea armonicilor de ordin superior.
În figura 5.1 s unt repr ezentate caracteristicile unui consumator de tip laptop
înainte de filtrarea armonicilor celor două forme de undă de tensiue și curent.

NECLASIFICAT
NECLASIFICAT
62 din 105
Figura 5.1 – Parametri i electrici ai laptop ului înainte de filtrarea armonicilor
Se observă că puterea reactivă este c omparabilă cu cea activă, factorul de
putere fiind 0.86. După implementarea filtrelor FIR pentru optimizarea factorului
de putere , prezentate în figura 5.2, spectrele de tensiune și de curent cu armonicile
de ordin superior filtrate sunt reprezentate în fi gura 5.3.

Figura 5.2 – Filtre FIR pentru o ptimizarea factorului de putere
După cum era de așteptat, în urma compensării factorului de putere prin
luarea în considerare doar a amonicilor de curent semnificative, forma de undă de
curent reduce defazajul fa ță de tensiune, astfel factorul de putere a fost îmbunătățit
de la 0,86 la 0,94, figura 5. 4. Puterea activă a crescut de la 24 W la 31.6 W în
pofida puterii reactive, care a scăzut de la 14 VAR la 11 VAR.

NECLASIFICAT
NECLASIFICAT
63 din 105
Figura 5.3 – Spectrele de tensiune și de curen t filtrate
Figurile Lissajous sau curbele Lissajous de tensiune în funcție de curent
sunt curbele în planul x -y obținute prin luarea formei tensiunii și curentului pentru
a varia sinusoidal în raport cu timpul. Ele sunt numite după matematicianul
francez al secolului al XIX -lea, Jules Antoine Lissajous.
După analizarea parametrilor din cadrul figurii 5.4 se observă că factorul de
putere este unul ridicat , fapt datorat liniarității ș i simetriei curbei Lissajous , dar
se constată existența unui mic defazaj între forma de undă a tensiunii și cea a
curentului, întrucât cele două drepte orizontale ale figurii Lissajous nu se
suprapun.

Figura 5.4 – Curba Lissajous după c ompensarea factorului de putere
După compararea parametrilor electroenergetici rezultă o clară
îmbunătățire a acestora, ceea ce conduce în mod direct la eficientizarea
consumului energetic al consumatorului analizat. Prin compararea valorilor
acestor parametri, se poate concluziona că metoda de compensare a factorului de

NECLASIFICAT
NECLASIFICAT
64 din 105 putere prin filtrarea armonicilor de curent este cea corectă iar modul de
implementare a fost bine ales.
În figura 5.5 este reprezentat mesh -ul formei de undă a curentului în funcție
de tensiunea aplicată la bornele circuitului și de timp.

Figura 5.5 – Grafic mesh I(U,t)
5.2. Monitorizarea puterii reactive și a factorului de distorsiune
Apariția puterii reactive, în mod obișnuit putere reactivă inductivă (Q>0),
determină o parte a energiei pe linie care nu este transmisă de la sursă la sarcină.
În unele intervale de timp, te nsiunea și curentul electric au polarități diferite, cele
două forme de undă fiind defazate cu 90 . Întrucât forma de undă a intensității
curentului alternativ urmărește mereu forma de undă a tensiunii, intensitatea
curentului va fi defazată cu 90  față de tensiunea aplicată la borne. Singurul lucru
rămas pentru a disipa puterea într -o sarcină reactivă este partea rezistivă a
impedanței de sarcină.
Puterea instantanee transferată se obține ca produsul dintre suma
armonicilor de curent și suma armonicilor de tensiune de pe linie. În cadrul
armonicilor de tensiune se ia în considerare, pe langă fundamentală, doar
armonica a treia, restul armonicilor fiind nesemnificative, întrucât forma de undă
de tensiune este aproape pur sinusoidală. Se poate observa că arii le suprafețelor
de deasupra axei absciselor sunt mult mai mari decât cele de sub axă, ceea ce
semnifică faptul că energia transferată este pozitivă, în acest fel armonicele de
curent transferă putere utilă.
Din figura 5. 6 reiese faptul că există mai multă putere absorbită de sarcină
decât este returnată sursei de alimentare, care apare datorită reactanței inductive.

NECLASIFICAT
NECLASIFICAT
65 din 105 Dezechilibrul dintre puterea pozitivă și cea negativă se datorează energiei disipată
de rezistență în afara circuitului, de obicei sub formă de căldură

Figura 5.6 – Puterea instantanee a unui laptop
Comparând forma de undă a puterii instantanee a unui laptop cu cea a unui
bec cu incandescență se observă că există diferențe mari între cei doi consumatori
cum ar fi că forma de undă a puterii ins tantanee a becului nu coboară niciodată
sub nivelul de 0 iar aceasta se apropie de cea sinusoidală, aspecte ce se regăsesc
în valoarea mică a puterii reactive în comparație cu cea activă. Toate acestea duc
spre un factor de putere ideal și un consum optim de energie, așa cu se poate
observa și în figura 5.7.

Figura 5.7 – Puterea activă și reactivă a unui bec cu incandescență

NECLASIFICAT
NECLASIFICAT
66 din 105 În acest caz, forma de undă a puterii active este întotdeauna pozitivă,
niciodată nu coboară sub valoarea de 0 pentru un circui t rezistiv. Aceasta
înseamnă că puterea activă este întotdeauna disipată de sarcina rezistivă și nu este
returnată niciodată la sursă, așa cum este cazul în sarcinile reactive.
5.2.1. Reglementările standardului IEC
Reglementările standardului IEC ( Inter national Electrotechnical
Commission) privind caracteristicile parametrilor electrici ai unui consumator
liniar sunt prezentate și comparate cu rezultatele obținute în cadrul t abelul ui 5.1.
Parametrul
monitorizat Limite acceptabile Valoarea măsurată Obser vații
Uef 230 V± 6% Uef min. = 233 V
Uef max = 243 V În limitele
impuse
Frecvența tensiunii 49.5 Hz ÷ 50.5 Hz Fmin. = 49.8 Hz
Fmax = 50.1 Hz În limitele
impuse
THD U < 8 % THD U max =1.9% În limitele
impuse
Armonica a III -a de
tensiune < 7.5% Uh3 max = 5.1 % În limitele
impuse

THD I
< 16 % THD Imax = 7.9% În limitele
impuse
Armonica a III -a de
curent < 21.6 % Ih3 max=2.6 % În limitele
impuse
Tabel 5.1 – Evaluarea parametrilor unui consumator liniar conform standardului
IEC
În cadrul formei de undă a pute rii reactive a becului cu incandesc ență, așa
cum reiese din cadrul figurii 5.7 , ariile suprafețelor de deasupra și de sub nivelul
de 0 sunt aproximativ egale, rezultând o valoare a puterii reactive ce tinde spre
zero și un factor de putere aproape de 1.
Acest lucru se schimbă în cadrul formei de undă a puterii reactive a
laptop ului, aceasta având ariile suprafețelor de sub nivelul de 0 aproape
nesemnificative, deci rezultă o putere reactivă mult mai mare, inductivă,
comparativ cu cea a becului cu incandesc ență.
Caracteristicile parametrilor electrici ai unui c onsumator neliniar sunt
prezentate și comparate cu r eglementările standardului IEC în cadrul tabelului 5.2.

NECLASIFICAT
NECLASIFICAT
67 din 105
Figura 5.8 – Puterea reactivă a laptop ului
Deoarece armonicile determină pierderi suplime ntare, tensiunea de la
rețeaua de alimentare nu poate fi perfect sinusoidală. Acest lucru ar fi imposibil,
deoarece atunci când circulă un curent cu frecvența de 150 Hz, el determină o
oarecare cădere de tensiune, activă și chiar reactivă de aceeași frecve nță, 150 Hz.
Atâta timp cât curentul electric include frecvențe suplimentare, tensiunea va
cuprinde componente de o anumită amplitudine, cu aceleași frecvențe, ceea ce se
poate observa în figura 5.9.

Figura 5.9 – Armonica a treia d e curent la frecvența d e 150 Hz
Numai dacă atât tensiunea cât și curentul cuprind aceeași frecvență poate să
rezulte putere activă, pe această frecvență. Rezistența existentă în circuit
determină căderi ale tensiunii în fază cu forma de undă a curentului și de aceea
apare o pute re activă pentru orice fel de de curent care o parcur ge: activ, reactiv
sau armonic.

NECLASIFICAT
NECLASIFICAT
68 din 105 Parametrul
monitorizat Limite acceptabile Valoarea măsurată Observații
Uef 230 V± 6% Uef min. = 233 V
Uef max = 243 V În limitele
impuse
Frecvența tensiunii 49.5 Hz ÷ 50 .5 Hz Fmin. = 49.79 Hz
Fmax = 50.05 Hz În limitele
impuse
THD U < 8 % THD U max =2.3% În limitele
impuse
Armonica a III -a
de tensiune < 7.5% Uh3 max = 4.7 % În limitele
impuse

THD I
< 16 % THD Imax = 27.4% În afara limitei
impuse
Armonica a III -a
de curen t < 21.6 % Ih3 max=76.6 % În afara limitei
impuse
Tabel 5.2 – Evaluarea parametrilor unui consumator neliniar conform
standardului IEC
În urma analizei evaluării parametrilor unui consumator neliniar conform
standardului IEC se observă că regimul deformant al acestui tip de consumator
neliniar este foarte puțin influențat de amplitudinea armonicilor de tensiune,
acestea reprezentând un procent nesemnificativ din amplitudinea fundamentalei.
În schimb situația se schimbă în cazul distorsiunii date de amplitu dinea
armonicilor de curent care depășesc limitele impuse în cadrul standardului IEC.
Există mulți parametri care pot fi măsurați în ceea ce privește utilizarea
energiei electrice în sistemele de curent curent alternativ, fiecare dintre aceștia
având merit ele sale. Dar pentru măsurarea energiei consumate în propria locuiță,
puterea activă poate fi considerată cea mai utilă mărime, deoarece ea arată cât de
multă putere consumă toate aparatele electrice aflate în funcțiune, taxare
realizându -se pe consumul d e energie electrică al utilizării acestora.
În urma analizării figurii 5.10 se ajunge la concluzia că un circuit combinat
rezistiv -reactiv disipă mult mai multă putere decât returnează la sursă, cu alte
cuvinte puterea activă este mult mai mare decât puter ea reactivă, astfel se asig ură
transferul de putere utilă.
Sarcina mixtă, ai cărei parametri sunt prezentați în figura de mai sus, este
compusă dintr -o rezistență și o reactanță capacitivă, forma de undă de putere
continuând să alterneze între pozitiv și n egativ, dar cantitatea de putere pozitivă
va depăși cantitatea de putere negativă. Tensiunea și curentul într -un astfel de
circuit mixt vor fi defazate cu un unghi cuprins în intervalul 0  ÷ 90.

NECLASIFICAT
NECLASIFICAT
69 din 105
Figura 5.10 – Caracteristici circuit combinat de consumat or rezistiv -reactiv
Forma de undă a curentului este distorsionată datorită armonicilor de rang
superior, care au valori destul de mari. Factorul de distorsiune al tensiunii, THD U,
este în medie de 2.1%, iar THD curent este în medie de 14.3%
După efectuarea analizei măsurătorilor și a comparări i parametrilor
monitorizaț i cu valorile impuse de standardele și reglementările de specialitate, se
poate concluziona faptul ca regimul deformant al consumatorilor încă mai permite
destul de multe îmbunatățiri dispozit ivelor de măs urare și monitorizare.

PAGINĂ ALBĂ

NECLASIFICAT
NECLASIFICAT
70 din 105 CAPITOLUL 6 – DIFICULTĂȚI ÎNTÂMPINATE ÎN REALIZAREA
PROIECTULUI
Din cauza constrângerilor tehnice, a echipamentelor și componentelor de
cost redus , dispozitivul Smar tmeter construit nu poate să aibă aceeași precizie ca
cea a unui dispozitiv inteligent de măsură profesional, certificat și standardizat de
către comisii speciale, pentru ca apoi să poată fi pus la vânzare de către proiectant.
În aceste condiții tehnice n u se poate menține același regim de funcționare
pentru o perioadă mai lungă de timp, puterea reactivă variind cu ±1VAR.
Rezultatele simulărilor au fost influențate și de fluctuația rețelei de alimentare,
care a furnizat tensiuni de alimentare diferite de l a 230V la 240 V.
Fiecare unitate de procesare are pe lângă merite și limitările sale, placa de
dezvoltare MEGA 2560 R3 nefiind tocmai suficient de rapidă și fiabilă pentru
achiziționarea și procesarea complexă a datelor provenite de la senzori.
Un alt min us îl constituie faptul că placa de dezvoltare Arduino MEGA2560
dispune de o conversie analogică -digitală pe 10 biți, rezoluția scăzută în citirea
valorilor se datorează faptului că ADC -ul mapează o valoare relativ mică de
eșantioane, 58, intr -o perioadă a semnalului. Astfel pentru reprezentarea formelor
de undă filtrate cum ar fi forma de undă a tensiunii nu se observă riplurile datorate
armonicii a treia, situată pe frecvența de 150 Hz, întrucât aceasta are amplitudinea
foarte mică comparativ cu cea a fun damentalei.
150 Hz

Figura 6.1 – Schema demonstrativă a rezoluției mici a armonicii a treia
Frecvența semnalului nu este exact 50 Hz dar se înregistrează o valoare
destul de apropiată, 49.9 Hz, la fel și în cazul valorilor efective ale tensiunii sau
ale intensității curentului alternativ. În medie, semnalele lungi, ideal infinite in
timp, generează aproximări mai bune ale parametrilor. Dar, î ntrucât dispozitivul

NECLASIFICAT
NECLASIFICAT
71 din 105 Smartmeter achiziționează în cadrul fiecărui ciclu doar trei perioade ale
semnalului, acestea sunt suficiente pentru aproximări cu o precizie ridicată ale
parametrilor, însă nu exacte.
Ținând cont de diversitatea si multitudinea diverșilor consumatori electrici,
gamele acestora de putere se dispun într -o marjă extinsă de valori , ceea ce
constituie un alt dezavantaj pentru precizia și calitatea rezoluției de achiziționare
a datelor. P entru a obține rezultate precise și a avea o rezoluție și sensibilitate
bună, rezistența de sarcină a transformatorului de curent ar trebui să variez e între
100 Ω și 10 kΩ. Astfel programarea unui potențiometru digital rep rezenta o soluție
optimă, î nsă în practică nu am reușit să acopăr gama de rezistețe dorită, neputâ nd
seta toate nivelele potențiometrului digital. Un alt neajuns a reprezentat -o lipsa
pinilor necesari configur ării potențiometrului digital, î ntrucât modulul LCD cu
touchscreen și modulul Bluetooth au ocupt majoritatea pinilor de date ai plăcuței
de dezvoltare Arduino Mega 2560.

NECLASIFICAT
NECLASIFICAT
72 din 105 CAPITOLUL 7 – CONCLUZII ȘI PERSPECT IVE DE DEZVOLTARE
7.1 Concluzii
În urma celor prezentate anterior se poate trage concluzia că obiectivele
propuse prin tema de proiect, și anume proiectarea unui sistem inteligent de
monitorizare în timp util al parametrilor electrici și consumului energet ic al
diferiților consumatori electrici , precum și realizarea și încapsularea fizică a
sistemului Smartmeter, au fost îndeplinite cu succes.
Dispozitivul realizat permite achiziționarea și prelucrarea datelor provenite
de la senzori, calcularea tuturor par ametrilor electrici specifici fiecărui tip de
consumator, afișarea datelor pe ecranul LCD al sistemului Smartmeter , asemenea
unui conto r inteligent, precum și transmiterea datelor prin intermediul
comunicației Bluetooth către interfața grafică din software -ul Matlab pentru o
analiză riguroasă a parametrilor electrici și a regim urilor de funcționare specifice
consumator ilor respectivi . Se monitorizează consumul de energie electrică și se
informează prin email starea actuală a sistemului , precum și statistica consumului
energetic . Pentru a asigura flexibilitatea și simplitatea utilizării sistemului
Smartmeter , astfel încât să poată fi folosit de către orice persoană indiferent de
vârstă, am realizat trei aplicații smartphone ce au rolul de a furniza feedback l egat
de utilizarea consumului energetic , dar și de afișarea și înregistrarea diverșilor
parametri electrici.
Pornind de la ideea că pentru a îmbunătăți substanțial un proces, trebuie să
se facă cercetări și studii în detaliu, consider că este un mare avant aj pentru
optimizarea consumului energetic dacă s -ar cunoaște de la bun început ce
caracteristică, ce tip de consum și cum este clasificat un anumit consumator în
funcție de standardele energetice. Astfel în cadrul capitolului doi am încercat să
ofer o pe rspectivă asupra funcționalității și analizei regimurilor de funcționare
specifice unui anumit tip de consumator, punând accentul în special pe regimurile
de funcționare nesimetrice.
Prin implementarea metodelor de optimizarea a consumului energetic, s -a
urmărit compensarea factorului de putere prin reducerea consumului puterii
reactive, precum și filtrarea armonicilor de ordin superior ale formei de undă a
curentului .
Pe baza referințelor de specialitate au fost analizate metodele de
optimizarea a consum ului energetic, s -a monitorizat puterea reactivă și factorul de
distorsiune și a urmat o analiză detaliată a rezultatelor obținute . S-a concluzionat
că amplitudinile c urenților armonici determină mai multe probleme în rețeaua
electrică decât puterea reacti vă, încât este de prevăzut să se ia în considerare
pierderile datorită armonicilor în aceeași proporție ca cele datorate puterii reactive
fundamental e.

NECLASIFICAT
NECLASIFICAT
73 din 105 În urma documentării științifice, a realizării sistemului Smartmeter și a
studiului măsurătorilor efectu ate cu acesta, au rezultat următoarele contribuții
personale:
– S-au analizat regimurile electroenergetice specifice caracteristicii de
funcționare a consumatorilor electrici , pe baza studiului unui număr semnificativ
de referințe din literatura de special itate;
– S-a creat un sistem Smartmeter complex care mă soară, monitorizează și
analizează parametrii electroenergetici ai consumatorilor electrici aflați în
funcțiune , urmărindu -se explicarea utilizării și punctarea utilității acestui sistem .
– Pe baza ana lizelor și măsurătorilor efectuate s -a analizat eficiența metod ei
de optimizare a consumului energetic , care s -a dovedit benefică , observându -se o
îmbunăt ățire a factorului de putere și o scădere a puterii reactive , diminuând astfel
consumul energetic suplimentar .
După efectuarea acestor analize și a comparări i parametrilor monitorizaț i
cu valorile impuse de standardele și reglementările de specialitate, se poate
concluziona faptul ca regimul deformant al consumatorilor încă mai permite
destul de multe îmbu natățiri dispoziti vului Smartmeter, de măsurare și
monitorizare a parametrilor electrici .

7.2 Perspective de dezvoltare
Prezentul proiect poate fi îmbunătățit și extins în continuare, planurile de
viitor în ceea ce privește dezvoltarea sistemului Smartmet er fiind multiple, atât
din punct de vedere harware, cât și software.
Întrucât componentele electronice utilizate în cadrul proiectului de diplomă
sunt în scop de cercetare, în funcție de bugetul alocat, sistemul poate fi îmbunătățit
prin utilizarea unor c omponente electronice mult mai performante, care să permită
achiziția datelor furnizate de senzori mult mai preciși, într -un timp mai scurt și cu
o mai mare exactitate.
O altă idee de dezvoltare a proiectului ar fi încărcarea datelor furnizate de
Smartmet er direct pe o pagină web și nu transmise prin Bluetooth , care este limitat
de distanță conexiunii. Astfel se poate cre a un site pe care datele să fie încărcate
și care poate fi accesat de oriunde există conexiune la I nternet prin intermediul
unui nume de utilizator și a unei parole, oferind posibilitatea ca la o simplă
accesare a acestei pagini web, fiecare utilizator poate urmări statistica consumului
de energie, parametri i electrici etc. Dar poate fi implementat și un set de funcții
care să furnizeze mai multe informații despre sistem, cum ar fi: înștiințarea dacă
alimentarea este slabă, eficiența economică, reducerea pierderi de putere,
securitata și siguranța alimentării cu energie electrică .
Monitorizarea parametrilor electrici poate fi afișată grafic și pe televizor ,
pentru aceasta fiind necesară instalarea bibliotecii TV pe placa de dezvoltare
Arduino. Afișarea gra fică a consumului de energie pe televizor este facilă pentru

NECLASIFICAT
NECLASIFICAT
74 din 105 a observa statistica utilizării energiei cu o rată de actualizare relativ rapi dă, ajutând
astfel utilizatorul să optimizeze și să reducă costul excesiv al consumului
energetic .
În viitor, r ețeaua electrică va fi dublată de o rețea informatică, ceea ce va
permite controlul tuturor dispozitivele conectate prin intermediul unei unice
centrale de supervizare , echipat ă cu un pachet software de monitoriz are a
sistemului.

PAGINĂ ALBĂ

NECLASIFIC AT
NECLASIFICAT
75 din 105 BIBLIOGRAFIE
[1] Mihai Antoniu, Măsurări electronice , Vol.1,2,3, E ditura SATYA, Iași,
2001,2002.
[2] Iacobescu, GH., Iordănescu, I., Tudose, M. – Rețele și sisteme electrice , Ed.
Didactică și Pedagogică, București, 1979
[3] Jack Purdum, Beginning C for Arduino , Second Edition, 2015.
[4] Agus Kurniawan, Arduino Programming using MATLAB, 1st Edition, 2015.
[5] Emil, C., Iosif, V.N., Sergiu, C. – Low Voltage Power Quality at the Level
of Harmonics -An Educational Perspective , EEA, 2011.
[6] Popescu, S., Stan, C., Sotri, S., Cîrstea, D., – Optimizări în rețelele electrice.
Ed. M acarie,Târgoviște, 2003.
[7] Toader, C., Postolache, P., Porumb, R., – Influența factorilor de nesimetrie
asupra pierderilor de putere și energie electrică regim armonic nesimetric .
SNCEE Târgoviște, 2011.
[8] Oprea, G. – Regimuri electroenergetice și mărimi caracteristice, Raport de
cercetare doctorală , Universitatea Valahia Târgoviște, 2014.
[9] https://create.arduino.cc/projecthub/Mr -Joe/smart -energy -monitor -based –
on-arduino
[10] C.Shanthi2 – An Automated Energy Metering System – Home Based
Approach Aswathy .
[11] https://en.wikipedia.org/wiki/AC_power – Power in Resistive and Reactive
AC circuits.
[12] "Reactive Power ". Continental Control Systems, LLC. Retrieved 4 April
2017.
[13] Robert Wall B.Sc – A Report on the properties of the Yhdc Current
Transformer , MIEE.
[14] Arduino con nected to an Android phone via Bluetooth (JY -MCU module)
Ref.
[15] https://www.arduino.cc/en/Main/Software
[16] http://www.instructables.com/id/Simple -Arduino -Home -Energy -Meter/
[17] http://crackeconcept.blogspot.com/2014/03/arduino -and-matlab –
interfacing -via.html
[18] Defin ition of Active Power – International Electrotechnical Vocabulary
Archived April 23, 2015, at the Wayback Machine.
[19] Arne Ellerbrock – Design and Building of a Cheap Smart Meter , Student
Member.

PAGINĂ ALBĂ

NECLASIFICAT
NECLASIFICAT
76 din 105 ANEXE
Anexa 1.1
Codul de implementare Matlab al interfeței grafice “Smartmeter”:

Smartmeter.m

function Smartmeter_OpeningFcn(hObject, eventdata, handles, varargin)
d=[];
d=cellstr(datetime,'dd -MMM -yyyy HH:mm');
set(handles.datatime,'String', d);
handles.output = hObject;
guidata(hObject, handles);
function varargout = Smartmeter_OutputFcn(hObject, eventdata, handles)
set(gcf, 'units','normalized','outerposition',[0 0 1 1]);
varargout{1} = handles.output;
function Conectare_Callback(hObject, eventdata, handles)
port_bluetoo th = instrfind('Type', 'bluetooth', 'Name', 'Bluetooth -HC-05:1', 'Tag', '');
%port_bluetooth = instrfind('Type', 'serial', 'Port', 'COM3', 'Tag', '');
if isempty(port_bluetooth) % verific daca port_bluetooth este o matrice goala
port_bluetooth = Blueto oth('HC -05', 1);
%port_bluetooth = serial('COM3');
else
fclose(port_bluetooth);
port_bluetooth = port_bluetooth(1);
end
a=[];c=[];m=[];mn=[];
i=1;indx=1;l=1;
I=[];d_m=[];
U=[];U3=[];
E=0;
Fp=0;
P_i=[];
timp=[];
Q=[];t=[];
stare=1;BaudRate=11520 0;
while stare
fopen(port_bluetooth);
%port_bluetooth.BaudRate=BaudRate;
if (port_bluetooth.Status=='open')
disp('Conectat')
stare=0;

NECLASIFICAT
NECLASIFICAT
77 din 105 set(handles.connected,'String', 'Conectat');
elseif (port_bluetooth.Status=='close d')
disp('Deconectat')
stare=1;
end
end
while (port_bluetooth.Status=='open')
d=cellstr(datetime,'dd -MMM -yyyy HH:mm');
set(handles.datatime,'String', d);
Su=0; Si=0;
Sp=0; Sp1=0;Sr=0;
S1=0; THDu=0; THDi=0;
a=str2num(fgets(port_bluetooth));
N=a(1);
for i=1:N
c=str2num(fgets(port_bluetooth));
U(i)=c(1);
I(i)=c(2);
t(i)=c(3);
mn=str2num(fgets(port_bluetooth)); mn=str2num(fgets(port_bluetooth));
end
E=str2num (fgets(port_bluetooth));
mn=str2num(fgets(port_bluetooth));mn=str2num(fgets(port_bluetooth));
mn=str2num(fgets(port_bluetooth));
T=t(end);
Ne=length(U);
dte=T/(Ne -1);
Fe=(1/dte).*1000;
set(handles.F_esantionare, 'String', Fe);
set(handles.BaudRate, 'String', BaudRate);
F=(1/T).*1000;
set(handles.frecventa, 'String', F);
set(handles.Ne, 'String', Ne);
TFU = abs(fft(U)/Ne);
TF_U=TFU(1:fix(Ne/2)+1);
TF_U(2:end -1)=2*TF_U(2:end -1);
TFI=abs(fft(I)/Ne);
TF_I=TFI(1:fix(Ne/2)+1);
TF_I(2:end -1)=2*TF_I(2:end -1);
f=F*(0:fix(Ne/2));
Ure=U;
for i=1:Ne
if (U(i)/max(U)==1)
jindex=i;
end

NECLASIFICAT
NECLASIFICAT
78 din 105 end
Ure= -[U(jindex:Ne), U(1:jindex -1)];
for i=1:Ne
if (I(i)/ma x(I)==1)
di=abs(jindex -i);
end
end
It=I;
It=[I(Ne -di+1:Ne), I(1:Ne -di)];
for i=1:Ne
if (It(i)/max(It)==1)
index=i;
end
end
Ir=-[It(index:Ne), It(1:index -1)];
%Filtrare armonici
fc1=5/(Fe/2);
fc2=95/(Fe/2);
yU1=fir1(300,[fc1 fc2],'bandpass');
Uh1=conv(U,yU1,'same');
TFUh1 = abs(fft(Uh1)/Ne);
TF_Uh1=TFUh1(1:fix(Ne/2)+1);
TF_Uh1(2:end -1)=2*TF_Uh1(2:end -1);
fc1=5/(Fe/2);
fc2=95/(Fe/2);
yI1=fir1(20 0,[fc1 fc2],'bandpass');
Ih1=conv(I,yI1,'same');
TFIh1 = abs(fft(Ih1)/Ne);
TF_Ih1=TFIh1(1:fix(Ne/2)+1);
TF_Ih1(2:end -1)=2*TF_Ih1(2:end -1);
for k=1:Ne
Su=Su+U(k).^2;
Si=Si+I(k).^2;
P_i(k)=U(k).*It(k);
Sp=Sp+P_i(k);
Sp1=Sp1+(Uh1(k).*Ih1(k));
end
Uef=sqrt(Su/Ne);
Ief=sqrt(Si/Ne);
P=Sp/Ne;
P1=Sp1/Ne;
set(handles.Irms, 'String',Ief );
set(handles.Vrms, 'String',Uef);
set(handles.P_a, 'String', P);
set(handles.E , 'String', E);

NECLASIFICAT
NECLASIFICAT
79 din 105 Pret=E*0.49/1000.; %1kWh=0.49 RON
set(handles.Price, 'String',Pret);

fc1=120/(Fe/2);
fc2=165/(Fe/2);
yU3=fir1(200,[fc1 fc2],'bandpass');
Uh3=conv(U,yU3,'same');
TFUh3 = abs(fft(Uh3)/Ne);
TF_Uh3=TFUh3(1:fix( Ne/2)+1);
TF_Uh3(2:end -1)=2*TF_Uh3(2:end -1);

TFUh = abs(fft(Uh1+Uh3)/Ne);
TF_Uh=TFUh(1:fix(Ne/2)+1);
TF_Uh(2:end -1)=2*TF_Uh(2:end -1);

THDu=(sqrt((Uh3/Uh1)^2))*1000;
set(handles.THDu, 'String', THDu);
fc1=105/(Fe/2);
fc2=195/(Fe/2);
yI3=fir1(300,[fc1 fc2],'bandpass');
Ih3=conv(I,yI3,'same');
TFIh3 = abs(fft(Ih3)/Ne);
TF_Ih3=TFIh3(1:fix(Ne/2)+1);
TF_Ih3(2:end -1)=2*TF_Ih3(2:end -1);

TFIh = abs(fft(Ih1+Ih3)/Ne);
TF_Ih=TFIh(1:fix(Ne/2)+1);
TF_I h(2:end -1)=2*TF_Ih(2:end -1);
[~,i_max] = findpeaks(Uh1);
Ur1=[Uh1(i_max(1):Ne) , Uh1(1:(i_max(1) -1))];
Ur=U;
Ur(1:fix(Ne/4))=U(Ne -fix(Ne/4)+1:Ne);
Ur(fix(Ne/4)+1:Ne)=U(1:Ne -fix(Ne/4));
U3=[U, U, U];Urx=U3;
Urx(1:fix(length(U3)/1 2))=U3(length(U3) -fix(length(U3)/12)+1:length(U3));
Urx(fix(length(U3)/12)+1:length(U3))=U3(1:length(U3) -fix(length(U3)/12));

fc1=205/(Fe/2);
fc2=290/(Fe/2);
yI5=fir1(200,[fc1 fc2],'bandpass');
Ih5=conv(I,yI5,'same');
TFIh5 = abs( fft(Ih5)/Ne);
TF_Ih5=TFIh5(1:fix(Ne/2)+1);
TF_Ih5(2:end -1)=2*TF_Ih5(2:end -1);

NECLASIFICAT
NECLASIFICAT
80 din 105 fc1=305/(Fe/2);
fc2=390/(Fe/2);
yI7=fir1(200,[fc1 fc2],'bandpass');
Ih7=conv(I,yI7,'same');
TFIh7 = abs(fft(Ih7)/Ne);
TF_Ih7=TFIh7(1:fix(Ne/2)+1 );
TF_Ih7(2:end -1)=2*TF_Ih7(2:end -1);

fc1=405/(Fe/2);
fc2=495/(Fe/2);
yI9=fir1(200,[fc1 fc2],'bandpass');
Ih9=conv(I,yI9,'same');
TFIh9 = abs(fft(Ih9)/Ne);
TF_Ih9=TFIh9(1:fix(Ne/2)+1);
TF_Ih9(2:end -1)=2*TF_Ih9(2:end -1);

fc1=510/(Fe/2);
fc2=590/(Fe/2);
yI11=fir1(200,[fc1 fc2],'bandpass');
Ih11=conv(I,yI11,'same');
TFIh11 = abs(fft(Ih11)/Ne);
TF_Ih11=TFIh11(1:fix(Ne/2)+1);
TF_Ih11(2:end -1)=2*TF_Ih11(2:end -1);

fc1=610/(Fe/2);
fc2=695/(Fe /2);
yI13=fir1(200,[fc1 fc2],'bandpass');
Ih13=conv(I,yI13,'same');
TFIh13 = abs(fft(Ih13)/Ne);
TF_Ih13=TFIh13(1:fix(Ne/2)+1);
TF_Ih13(2:end -1)=2*TF_Ih13(2:end -1);

fc1=715/(Fe/2);
fc2=790/(Fe/2);
yI15=fir1(200,[fc1 fc2],'b andpass');
Ih15=conv(I,yI15,'same');
TFIh15 = abs(fft(Ih15)/Ne);
TF_Ih15=TFIh15(1:fix(Ne/2)+1);
TF_Ih15(2:end -1)=2*TF_Ih15(2:end -1);

fc1=825/(Fe/2);
fc2=902/(Fe/2);
yI17=fir1(200,[fc1 fc2],'bandpass');
Ih17=conv(I,yI17,'sa me');
TFIh17 = abs(fft(Ih17)/Ne);

NECLASIFICAT
NECLASIFICAT
81 din 105 TF_Ih17=TFIh17(1:fix(Ne/2)+1);
TF_Ih17(2:end -1)=2*TF_Ih17(2:end -1);

fc1=935/(Fe/2);
fc2=1025/(Fe/2);
yI19=fir1(200,[fc1 fc2],'bandpass');
Ih19=conv(I,yI19,'same');
TFIh19 = abs(fft(Ih19)/N e);
TF_Ih19=TFIh19(1:fix(Ne/2)+1);
TF_Ih19(2:end -1)=2*TF_Ih19(2:end -1);

THDi=sqrt(((Ih3+Ih5+Ih7+Ih9+Ih11+Ih13+Ih15+Ih17+Ih19)/Ih1)^2)*1000;
set(handles.THDi, 'String', THDi);
for i=1:Ne
Sr=Sr+(U(i).*Ir(i));
S1=(Ur1(i). *Ih1(i))+S1;
end
Q1=S1/Ne;
Q=Sr/Ne; %Q=sqrt(S^2 -P^2);
set(handles.P_r, 'String', Q);
P_aprt=sqrt(P.^2+Q.^2);
set(handles.P_aparenta, 'String', P_aprt);
Fp=P/P_aprt;
set(handles.F_p, 'String', Fp);
P_aprt1=sqrt(P1^2+Q1^2) ;
DF=P1/P_aprt1;
defazaj=acos(Fp)*180/pi;
set(handles.defazaj, 'String', defazaj);

[Uah,~] = findpeaks(TF_U);
nhU=(Uah(2)/Uah(1))*100;
set(handles.niv_armcU, 'String', nhU);

[Iah,~] = findpeaks(TF_I);
nhI3=(Iah(2)/Iah(1) )*100;
nhI5=(Iah(3)/Iah(1))*100;
nhI7=(Iah(4)/Iah(1))*100;
nhI9=(Iah(5)/Iah(1))*100;
nhI11=(Iah(6)/Iah(1))*100;
set(handles.niv_armcI, 'String', nhI3);
% d_m(indx)=E; indx=indx+1;
m=get(handles.monitorizare, 'value'); % Monitor izare energie
if(m==1) %xlswrite('SmartmeterBlt.xlsx', d, 'A2:A2');
xlswrite('SmartmeterBlt.xlsx',[I, d_m]','A2:C200');
if E>2 %E>2Wh

NECLASIFICAT
NECLASIFICAT
82 din 105 %Nu functioneaza pe WifiStudenti; protectie Web mail -Antivirusul trebuie
dezactivat
set(handles.monitorizare,'value', 0);
email_user ='smartmeter.energy111@gmail.com';
email_send='smartmeter_energy@yahoo.com';
setpref('Internet','E_mail',email_user);
setpref('Internet','SMTP_Server','smtp .gmail.com');
setpref('Internet','SMTP_Username',email_user);
setpref('Internet','SMTP_Password','ipoteza111');
props = java.lang.System.getProperties;
props.setProperty('mail.smtp.auth','true');
props.setProperty('mail.smtp.socketFactory.class',
'javax.net.ssl.SSLSocketFactory');
props.setProperty('mail.smtp.socketFactory.port','465');

text2=' Consum ridicat de energie!!! Valoarea energiei electrice înregistratã
de Smartmeter a atins limita de: ';
text3=num2str(E);
text4=sprintf(' Wh! \n\n\n\n\n sent by Smartmeter_Matlab2015a R2');
mesaj=strcat(text2, text3, text4);
sendmail(email_send,…
'SMARTMETER R2',mesaj); % {'SmartmeterBlt.xlsx'});
end
end
subplot(2,2,1), plot(t,U,'b','linewidth',2);
title('Forma de undã de tensiune');
ylabel('Amplitudine');
xlabel('Timp [ms]');
grid on
axis on
xlim auto
ylim([ -400 400]);
legen d('U');

subplot(2,2,2), plot(t,I,'r','linewidth',2);
title('Forma de undã de curent');
ylabel('Amplitudine');
xlabel('Timp [ms]');
grid on
axis on
xlim auto
legend('I');

subplot(2,2,3), stem(f,TF_U,'b','linewidth',2 );
title('Spectrul de tensiune');

NECLASIFICAT
NECLASIFICAT
83 din 105 xlabel('Frecventa');
ylabel('Magnitudine');
%xlim ([0 750]);
xlim auto
grid on
axis on
legend('FFT(U)');

subplot(2,2,4), stem(f,TF_I,'r','linewidth',1);
title('Spectrul de curent' );
ylabel('Magnitudine');
xlabel('Frecventa');
xlim auto;
grid on
axis on
legend('FFT(I)');

if(get(handles.button_P_a, 'value')==1)
set(handles.buton_Filtru,'value', 0);
set(handles.buton_Dfj_U,'value', 0);
set(handles.buton_Armonici,'value', 0);
set(handles.button_P_r,'value', 0);
set(handles.buton_P_i,'value', 0);
Pactiva=[P_i/Ne,P_i/Ne,P_i/Ne];
subplot(1,1,1), plot(Pactiva,'y','linewidth',1);
set(gca,'color',[0 0 0],'GridColor','w');
title('Puterea activa');
ylabel('Amplitudine');
xlabel('Nr. esantioane');
lgd = legend('P activa'); lgd.TextColor='white';
grid on
axis on
end
if(get(handles.button_P_r, 'value' )==1)
set(handles.buton_Filtru,'value', 0);
set(handles.buton_Dfj_U,'value', 0);
set(handles.buton_Armonici,'value', 0);
set(handles.button_P_a,'value', 0);
set(handles.buton_P_i,'value', 0);
Qrp=(U.*Ir)/Ne; Qr=[Qrp, Qrp, Qrp];
subplot(2,2,1), plot(Qr,'y','linewidth',1);
set(gca,'color',[0 0 0],'GridColor','w');
title('Puterea reactiva');
ylabel('Amplitudine');
xlabel('Nr. esantioane');

NECLASIFICAT
NECLASIFICAT
84 din 105 lgd = legend('P reactiva') ; lgd.TextColor='white';
grid on
axis on

subplot(2,2,3), plot(t,U,'b','linewidth',2);
title('Forma de undã de tensiune');
ylabel('Amplitudine');
xlabel('Timp [ms]');
grid on
axis on
xlim auto
ylim([ -400 400]);
legend('U');

subplot(2,2,4), plot(Ir,'r','linewidth',2);
title('Forma de undã de curent defazata cu pi/2 ');
ylabel('Amplitudine');
xlabel('Nr. esantioane');
grid on
axis on
xlim auto
legend('Ir');
end
if(get(handles.Lissajous, 'value')==1)
set(handles.buton_Filtru,'value', 0);
set(handles.buton_Dfj_U,'value', 0);
set(handles.buton_Armonici,'value', 0);
set(ha ndles.button_P_r,'value', 0);
set(handles.button_P_a,'value', 0);
set(handles.buton_P_i,'value', 0);
subplot(1,1,1), plot(U3,[It,It,It],'y','linewidth',3)
set(gca,'color',[0 0 0],'GridColor','w');
title('Curbe Lissaj ous');
ylabel('Curent');
xlabel('Tensiune');
lgd = legend('I(U)'); lgd.TextColor='white';
grid on
axis on
end
if(get(handles.mesh, 'value')==1)
subplot(1,1,1), plot3(t,meshgrid(U),I);
title('G rafic mesh');
ylabel('Tensiune');
xlabel('Timp');
zlabel('Curent');

NECLASIFICAT
NECLASIFICAT
85 din 105 grid on
axis on
end

if(get(handles.buton_P_i, 'value')==1)
set(handles.buton_Filtru,'value', 0);
set(handles.buton_Dfj_U,' value', 0);
set(handles.buton_Armonici,'value', 0);
set(handles.button_P_r,'value', 0);
set(handles.button_P_a,'value', 0);

subplot(1,1,1), plot(P_i,'y','linewidth',2);
set(gca,'color',[0 0 0],'GridColor','w');
title('Puterea instantanee');
ylabel('Amplitudine');
xlabel('Nr. esantioane');
lgd = legend('P instant'); lgd.TextColor='white';
grid on
axis on
elseif(get(handles.buton_Filtru, 'value')==1)
set(hand les.buton_P_i,'value', 0);
set(handles.buton_Dfj_U,'value', 0);
set(handles.buton_Armonici,'value', 0);
set(handles.button_P_r,'value', 0);
set(handles.button_P_a,'value', 0);

subplot(2,2,1), plot(yU1,'b','l inewidth',1);
title('Filtru pentru armonica I de tensiune');
ylabel('Amplitudine');
grid on
legend('yU1');

subplot(2,2,2), plot(yU3,'m','linewidth',1);
title('Filtru pentru armonica a III -a de tensiune');
ylabel('Amplitudine');
grid on
legend('yU3');

subplot(2,2,3), plot(yI1,'r','linewidth',1);
title('Filtru pentru armonica I de curent');
ylabel('Amplitudine');
grid on
legend('yI1');

subplot(2,2,4), plot(yI3,'g','linewidth',1);

NECLASIFICAT
NECLASIFICAT
86 din 105 title('Filtru pentru armonica a III -a de curent');
ylabel('Amplitudine');
grid on
legend('yI3');

elseif(get(handles.buton_Armonici, 'value')==1)
set(handles.buton_ P_i,'value', 0);
set(handles.buton_Filtru,'value', 0);
set(handles.buton_Dfj_U,'value', 0);
set(handles.button_P_r,'value', 0);
set(handles.button_P_a,'value', 0);

subplot(2,2,1), plot(f,TF_Uh,'b','linewidth',1);
title('Spectrul de tensiune filtrat');
xlabel('Frecventa');
ylabel('Magnitudine');
xlim auto;
grid on
axis on
legend('FFT(Uh1+Uh3)');

subplot(2,2,2), plot(f,TF_Ih,'r','linewidth',1);
title('Spectrul de curent filtrat');
ylabel('Magnitudine');
xlabel('Frecventa');
xlim auto;
grid on
axis on
legend('FFT(Ih1+Ih3)');

subplot(2,2,3), plot(f,TF_U,'b','linewidth',1);
title(' Spectrul de tensiune');
xlabel('Frecventa');
ylabel('Magnitudine');
xlim auto;
grid on
axis on
legend('FFT(U)');

subplot(2,2,4), plot(f,TF_I,'r','linewidth',1);
title('Spectrul de curent');
ylabel('Magnitudine');
xlabel('Frecventa');
xlim auto;
grid on

NECLASIFICAT
NECLASIFICAT
87 din 105 axis on
legend('FFT(I)');

elseif(get(handles.buton_Dfj_U, 'value')==1)
set(handles.buton_P_i,'value', 0);
set(handles.b uton_Filtru,'value', 0);
set(handles.buton_Armonici,'value', 0);
set(handles.button_P_r,'value', 0);
set(handles.button_P_a,'value', 0);

subplot(2,2,3), plot([t, 20+t, 40+t],Urx ,'m','linewidth',2);
title('Forma de unda de tensiune defazata cu pi/2');
ylabel('Amplitudine');
xlabel('Timp [ms]');
grid on
axis on
ylim auto;
legend('Ur');

subplot(2,2,4), plot(t,Ir,'Color',[1 0.5 0],'linewidth',2);
title('Forma de unda de curent defazata cu pi/2');
ylabel('Amplitudine');
xlabel('Timp [ms]');
grid on
axis on
% xlim ([0 59]);
ylim auto;
legend('Ir');

elseif(get(handles.selectare_armonici, 'va lue')~=1)
set(handles.buton_P_i,'value', 0);
set(handles.buton_Filtru,'value', 0);
set(handles.buton_Armonici,'value', 0);
set(handles.buton_Dfj_U,'value', 0);
set(handles.button_P_r,'value', 0);
set(handles. button_P_a,'value', 0);

subplot(2,2,3), plot(f,TF_U,'b','linewidth',1);
title('Spectrul de tensiune');
xlabel('Frecventa');
ylabel('Magnitudine');
grid on
axis on
legend('FFT(U)');
subpl ot(2,2,4), plot(f,TF_I,'r','linewidth',1);

NECLASIFICAT
NECLASIFICAT
88 din 105 title('Spectrul de curent');
ylabel('Magnitudine');
xlabel('Frecventa');
grid on
axis on
legend('FFT(I)');

if(get(handles.selectare_armonici, 'valu e')==2)
subplot(2,2,1), plot(f,TF_Uh1,'b','linewidth',1);
title('Arminica I de tensiune');
ylabel('Magnitudine');
xlabel('Frecventa');
grid on
axis on
legend('FFT(Uh1)');
elseif(get(handles.selectare_armonici, 'value')==3)
subplot(2,2,1), plot(f,TF_Uh3,'b','linewidth',1);
title('Arminica a III -a de tensiune');
ylabel('Magnitudine');
xlabel('Frecventa');
grid on
axis on
legend('FFT(Uh3)');

elseif(get(handles.selectare_armonici, 'value')==4)
subplot(2,2,2), plot(f,TF_Ih1,'m','linewidth',1);
title('Arminica I de curent');
ylabel('Magnitudin e');
xlabel('Frecventa');
grid on
axis on
legend('FFT(Ih1)');
elseif(get(handles.selectare_armonici, 'value')==5)
subplot(2,2,2), plot(f,TF_Ih3,'m','linewidth',1);
title('Armi nica a III -a de curent');
ylabel('Magnitudine');
xlabel('Frecventa');
grid on
axis on
legend('FFT(Ih3)');
set(handles.niv_armcI, 'String', nhI3);

elseif(get(handles.selectare _armonici, 'value')==6)
subplot(2,2,2), plot(f,TF_Ih5,'m','linewidth',1);
title('Arminica a V -a de curent');

NECLASIFICAT
NECLASIFICAT
89 din 105 ylabel('Magnitudine');
xlabel('Frecventa');
grid on
axis on
legend('FFT(Ih5)');
set(handles.niv_armcI, 'String', nhI5);

elseif(get(handles.selectare_armonici, 'value')==7)
subplot(2,2,2), plot(f,TF_Ih7,'m','linewidth',1);
title('Arminica a VII -a de curent');
ylabel('Magnitudine');
xlabel('Frecventa');
grid on
axis on
legend('FFT(Ih7)');
set(handles.niv_armcI, 'String', nhI7);

elseif(get(handles.selectare_armonici, 'value')==8)
subplot(2,2,2), plot(f,TF_Ih9,'m','linewidth',1);
title('Arminica a IX -a de curent');
ylabel('Magnitudine');
xlabel('Frecventa');
grid on
axis on
legend('FFT(Ih9)');
set(han dles.niv_armcI, 'String', nhI9);

elseif(get(handles.selectare_armonici, 'value')==9)
subplot(2,2,2), plot(f,TF_Ih11,'m','linewidth',1);
title('Arminica a XI -a de curent');
ylabel('Magnitudine');
xlabel('Frecventa');
grid on
axis on
legend('FFT(Ih11)');
set(handles.niv_armcI, 'String', nhI11);
end
end
drawnow;

dec=get(handles.Deconectare, 'value');
if(dec==1)
disp('Deco nectat')
set(handles.connected,'String', 'Deconectat');
fclose(port_bluetooth);

NECLASIFICAT
NECLASIFICAT
90 din 105 delete(instrfind('Type', 'bluetooth', 'Name', 'Bluetooth -HC-05:1', 'Tag', ''));
set(handles.Deconectare,'value', 0);
end
end
fclose(port_blu etooth);

function grafic_CreateFcn(hObject, eventdata, handles)
set(gca,'color',[0 0 0],'GridColor','w')
title('Smartmeter');
grid on
axis on
datacursormode on
Anexa 1.2
Sketch -ul de implementare Arduino pentru configurarea dispozitivului
Smartmeter:

Sma rtmeter.ino

#include <UTFT.h>
#include <URTouch.h>
UTFT SMARTMETER (ILI9486,38,39,40,41);
URTouch Touch( 6, 5, 4, 3, 2);
#define N 140
int Ne,ne, i, j, k, l, index, jndex, flag, stare;
int treceri_0;
float Rs=4610.0; //997.0; //99.4; //2170.0; // 4600.0; //9870.0;
float U[N], I[N];
float Up[70], Ur[70];
float Ip[70], Ir[70], Ire[70];
float tc[N],te[70], tc_p[70];
float P_i[70];
float F,Uef, Ief, P, E, Ei,Pret,P_aprt, F_p, Q, dte, Fe;
unsigned long t, ti, tf, Dt;
int x,y,Input=0;
byte Sample[320] , SampleI[320], OldSample[320],OldSampleI[320];
float StartSample = 0, EndSample = 0;
int Max = 0, Min = 500, mode = 0;
int dgvh, back=1;
int hpos = 105; //pune 0V pe orizontală
int vsens = 3; // mișcarea pe verticală
extern uint8_t Sm allFont[];
extern uint8_t BigFont[];

NECLASIFICAT
NECLASIFICAT
91 din 105 extern uint8_t SevenSegNumFont[];
char currentPage;

void setup() {
Serial.begin(115200);
SMARTMETER.InitLCD();
SMARTMETER.InitLCD(LANDSCAPE);
SMARTMETER.clrScr();
Touch.InitTouch();
Touch.setPrecision(PREC_ MEDIUM);
drawHomeScreen(); // Ecran de start
currentPage = '0'; // Pagina curentă -ecranul de start
}
void loop() {
// Home Screen
if (currentPage == '0') {
if (Touch.dataAvailable()) {
Touch.read();
x=Touch.getX(); // returnează coordonata pe x unde a fost apăsat ecranul
y=Touch.getY(); // returnează coordonata pe y unde a fost apăsat ecranul
if ((x>=2) && (x<=315) && (y>=120) && (y<=160)) {
drawFrame(2, 120, 315, 160); // Evidențiere buton câ nd este apăsat
currentPage = '1';
SMARTMETER.clrScr(); // Ștergere ecran
grafic();
}
if ((x>=2) && (x<=315) && (y>=170) && (y<=210)) {
drawFrame(2, 170, 315, 210);
currentPage = '2';
SMARTMETER.clrScr();
drawEnergie();
}
if ((x>=2) && (x<=315) && (y>=220) && (y<=260)) {
drawFrame(2, 220, 315, 260);
currentPage = '3';
SMARTMETER.clrScr();
drawParametri();
} } }
if (currentPage == '1') {
if (Touch.dataAvailable()) {
Touch.read();
x=Touch.getX();
y=Touch.getY();
//Butonul de back
if ((x>=300) && (x<=330) &&( y>=1) && (y<=15)) {

NECLASIFICAT
NECLASIFICAT
92 din 105 drawFrame(300, 1, 330, 15);
currentPage = '0';
SMARTMETER.clrScr();
drawHomeScreen();
} } }
if (currentPage == '2') {
SMARTMETER.setFont(BigFont);
SMARTMETER.setColor(0, 255, 0);
SMARTMETER.setBackColor(0, 0, 0);
SMARTMETER.printNumF(E,5,130,145,46,3,48);
SMARTMETER.setFont(BigFont);
SMARTMETER.print("Wh ", 245, 145);
SMARTMETER. setFont(BigFont);
SMARTMETER.setColor(0, 255, 0);
SMARTMETER.setBackColor(0, 0, 0);
SMARTMETER.printNumF(Pret,5,130,220,46,3,48);
SMARTMETER.setFont(BigFont);
SMARTMETER.print("RON ", 245, 220);
if (Touch.dataAvailable()) {
Touch.read();
x=Touch.getX();
y=Touch.getY();
// Apăsare buton de back
if ((x>=10) && (x<=60) &&(y>=10) && (y<=36)) {
drawFrame (10, 10, 60, 36);
currentPage = '0';
SMARTMETER.clrScr();
drawHomeScreen(); // Ecran de start
} } }
if (currentPage == '3') {
SMARTMETER.setFont(BigFont);
SMART METER.setColor(0, 255, 0);
SMARTMETER.setBackColor(0, 0, 0);
SMARTMETER.printNumF(P,3,260,110,46,3,48);
SMARTMETER.setFont(BigFont);
SMARTMETER.print("W ", 380, 110);
SMARTMETER.printNum F(Q,3,290,160,46,3,48);
SMARTMETER.setFont(BigFont);
SMARTMETER.print("VAR ", 390, 160);
SMARTMETER.printNumF(P_aprt,3,290,210,46,3,48);
SMARTMETER.setFont(BigFont);
SMARTMETER.print("VA ", 390, 210);
SMARTMETER.printNumF(F_p,3,290,260,46,3,48);
SMARTMETER.setFont(BigFont);
if (Touch.dataAvailable()) {

NECLASIFICAT
NECLASIFICAT
93 din 105 Touch.read();
x=Touch.getX();
y=Touch.getY();
if ((x>=10) && (x<=60) &&(y>=10) && (y<=36)) {
drawFrame(10, 10, 60, 36);
currentPage = '0';
SMARTMETER.clrScr();
drawHomeScreen();
} } }
if (curr entPage == '0') {
if (Touch.dataAvailable()) {
Touch.read();
x=Touch.getX();
y=Touch.getY();
//ON HC -05
if ((x>=330) && (x<=400) && (y>=220) && (y<=260)) {
drawFram e(330, 220, 400, 260);
stare=1;
while(stare){
SMARTMETER.setColor(0, 255, 0);
SMARTMETER.setBackColor(0, 0, 0);
SMARTMETER.print("CONECTAT", 330, 270);
Calcul_arduino();
Serial.println(ne);
delay(1000);
for (j = 0; j < ne; j++){
Serial.print(Up[j] );
Serial.print(" ");
Serial.print(Ip[j]);
Serial.print(" ");
Serial.println((tc_p[j] -tc_p[0])/1000.,3);
Serial.println((String)" U " + Up[j] );
Serial.println((String)" I " + Ip[j] );
te[j]=(tc_p[ j]-tc_p[0])/1000.;
}
delay (2500);
tf=micros();
Dt=tf -ti;
ti=tf;
//Serial.println(Dt/1000000.,5);
F=(1/te[ne -1])*1000.;
dte=te [ne-1]/(ne -1);
Fe=(1/dte)*1000;
float a=0,c=0, Sr=0; int b=0,d=0;;
for (j = 0; j < ne; j++){

NECLASIFICAT
NECLASIFICAT
94 din 105 a=max(Ip[j], a);
c=max(Up[j], c);
}
for (j = 0; j < ne; j++){
if(Ip[j]==a){
index=j;
}
if(Up[j]==c){
jndex=j;
} }
for (j = 0; j < ne -index; j++){
Ir[j]=Ip[index+j];
}
for (j = 0; j < ne -jndex; j++){
Ur[j]=Up[jndex+j];
}
for (j = ne -index; j < ne; j++){
Ir[j]=Ip[b];
b=b+1;
}
for (j = ne -jndex; j < ne; j++){
Ur[j]=Up[d];
d=d+1;
}
for (j = 0; j < ne; j++){
Ire[j]= -Ir[j];
Sr=Sr+(Up[j]*Ire[j]);
}
Q=Sr/ne;
float Su=0, Si=0, Sp=0;
for (j = 0; j < ne; j++){
Su=Su+pow(Up[j],2);
Si=Si+pow(Ip[j],2);
P_i[j]=Ur[j]*Ir[j];
Sp=Sp+P_i[j];
}
Uef=sqrt(Su/ne);
Ief=sqrt(Si/ne) ;
P=Sp/ne;
//E= E + P*(Dt/1000000.); //W*s
Ei=P*((Dt/1000000.)/3600.);
if(isnan(Ei)){
Ei=0.00;
}
if(isnan(P)){

NECLASIFICAT
NECLASIFICAT
95 din 105 P=0.00;
}
E= E +Ei; //Wh
Pret=E *0.49/1000.; //1kWh=0.49 RON
P_aprt=sqrt(pow(P,2)+pow(Q,2));
F_p = P/P_aprt;
if(isnan(Q)){
Q=0.00;
}
if(isnan(P_aprt)){
P_aprt=0.00;
}
if(isnan(F_p)){
F_p=0.00;
}
Serial.println(E,5);
Serial.println((String)" P " + "Puterea activa: " + P +" W" );
Serial.println((String)" Q " + "Puterea reactiva: "+ Q +" VAR" );
Serial.println((String)" E " + "Energie consumata: "+ E +" Wh" );
delay(100);
if (Touch.dataAvailable()) {
Touch.read();
x=Touch.getX(); // X coordinate where the screen has been pressed
y=Touch.getY(); // Y coordinates where the screen has been pressed
if ((x>=405 ) && (x<=475) && (y>=220) && (y<=260)) {
drawFrame(405, 220, 475, 260);
stare=0;
SMARTMETER.setBackColor(0, 0, 0);
SMARTMETER.setColor(255, 0, 0);
SMARTMETER.print("DECONECTAT", 320, 270);
delay( 100);
SMARTMETER.clrScr();
drawHomeScreen();
}}}}}}
Calcul_parametri();
delay(2000);
}
void Calcul_arduino(){
ti=micros();
Ne=0;
t=micros();
do {
Ne=Ne+1;
U[Ne] = (5.0*analogRead(0)/1024.0 -2.5)*28.74*5. 74;

NECLASIFICAT
NECLASIFICAT
96 din 105 I[Ne]=(5.0*analogRead(1)/1024.0 -2.5)*2000.0/Rs; //997.0; //99.4;
//2170.0; // 4600.0; //9870.0;
tc[Ne]=(micros() -t);
}while (tc[Ne]<=40000);
flag=0;
treceri_0=0;
ne=0;
for (i=0;i<Ne;i++){
if (U[i]<0 an d U[i+1]>=0){
flag=1;
treceri_0=treceri_0+1;
}
if ((flag==1)and(treceri_0<2)){
Up[ne]=U[i+1];
Ip[ne]=I[i+1];
tc_p[ne]=tc[i+1];
ne=ne+1;
}
if ((flag==1)and(treceri_0 >=2)){
flag=0;
Up[ne]=U[i+1];
Ip[ne]=I[i+1];
tc_p[ne]=tc[i+1];
ne=ne+1;
}
}
}
void Calcul_parametri(){
Calcul_arduino();
tf=micros();
Dt=tf -ti;
ti=tf;
dte=te[ne -1]/(ne -1);
Fe=(1 /dte)*1000;
F=(1/te[ne -1])*1000.;
for (j = 0; j < ne; j++){
te[j]=(tc_p[j] -tc_p[0])/1000.;
}
float a=0,c=0, Sr=0; int b=0,d=0;;
for (j = 0; j < ne; j++){
a=max(Ip[j], a);
c=max(Up[j], c);
}
for (j = 0; j < ne; j++){
if(Ip[j]==a){

NECLASIFICAT
NECLASIFICAT
97 din 105 index=j;
}
if(Up[j]==c){
jndex=j;
}
}// Defazare forme de undă cu 90 grade
for (j = 0; j < ne -index; j++){
Ir[j]=Ip[index+j];
}
for (j = 0; j < ne -jndex; j++){
Ur[j]=Up[jndex+j];
}
for (j = ne-index; j < ne; j++){
Ir[j]=Ip[b];
b=b+1;
}
for (j = ne -jndex; j < ne; j++){
Ur[j]=Up[d];
d=d+1;
}
for (j = 0; j < ne; j++){
Ire[j]= -Ir[j];
Sr=Sr+(Up[j]*Ire[j]);
}
Q=Sr/ne;
float S u=0, Si=0, Sp=0;
for (j = 0; j < ne; j++){
Su=Su+pow(Up[j],2);
Si=Si+pow(Ip[j],2);
P_i[j]=Ur[j]*Ir[j];
Sp=Sp+P_i[j];
}
Uef=sqrt(Su/ne);
Ief=sqrt(Si/ne);
P=Sp/ne;
if(isnan(P)){
P=0;
}
//E= E + P *(Dt/1000000.); //W*s
Ei=P*((Dt/1000000.)/3600.);
if(isnan(Ei)){
Ei=0;
}
E= E +Ei; //Wh
Pret=E*0.49/1000.; //1kWh=0.49 RON

NECLASIFICAT
NECLASIFICAT
98 din 105 P_aprt=sqrt(pow(P,2)+pow(Q,2));
delay(100);
}
void drawHomeScreen() {
// Titluri
SMARTMETER.s etBackColor(0,0,0); // background negru
SMARTMETER.setColor(255, 255, 255); // setează culoarea alb
SMARTMETER.setFont(BigFont); // Sets font to big
SMARTMETER.print("* SMARTMETER R2 *", CENTER, 10);
SMARTMETER.setColor(255, 0, 0); // roșu
SMARTM ETER.drawLine(0,32,480,32); // linie roșie
SMARTMETER.setColor(255, 255, 255);
SMARTMETER.setFont(SmallFont);
SMARTMETER.print("Author:stud.plt.maj. RADOI Mihai", LEFT, 41);
SMARTMETER.setFont(BigFont);
SMARTMETER.print("Selectare optiune", CEN TER, 80);
// Buton – Afisare forme de unda
SMARTMETER.setColor(16, 167, 103);
SMARTMETER.fillRoundRect (2, 120, 315, 160); // perimetru buton
SMARTMETER.setColor(0, 0, 0);
SMARTMETER.drawRoundRect (2, 120, 315, 160);
SMARTMETER.setFont(BigFont) ;
SMARTMETER.setBackColor(16, 167, 103);
SMARTMETER.print("Forme de unda", 23, 130);
// Buton – Monitor energie
SMARTMETER.setColor(16, 167, 103);
SMARTMETER.fillRoundRect (2, 170, 315, 210);
SMARTMETER.setColor(0, 0, 0);
SMARTMETER.drawRound Rect (2, 170, 315, 210);
SMARTMETER.setFont(BigFont);
SMARTMETER.setBackColor(16, 167, 103);
SMARTMETER.print("Monitor energie", 23, 180);
// Buton – Parametri electrici
SMARTMETER.setColor(16, 167, 103);
SMARTMETER.fillRoundRect (2, 220, 315, 260);
SMARTMETER.setColor(0, 0, 0);
SMARTMETER.drawRoundRect (2, 220, 315, 260);
SMARTMETER.setFont(BigFont);
SMARTMETER.setBackColor(16, 167, 103);
SMARTMETER.print("Parametri electrici", 5, 230);
// Buton – HC-05
SMARTMETER.setColor(50, 100 , 255);
SMARTMETER.fillRoundRect (330, 165, 475, 215);
SMARTMETER.setColor(0, 0, 0);
SMARTMETER.drawRoundRect (330, 165, 475, 215);

NECLASIFICAT
NECLASIFICAT
99 din 105 SMARTMETER.setFont(BigFont);
SMARTMETER.setBackColor(50, 100, 255);
SMARTMETER.print("HC -05", 363, 175);
SMARTMETER.setFont(SmallFont);
SMARTMETER.print("BLUETOOTH", 366, 198);

SMARTMETER.setColor(0, 255, 0);
SMARTMETER.fillRoundRect (330, 220, 400, 260);
SMARTMETER.setColor(0, 0, 0);
SMARTMETER.drawRoundRect (330, 220, 400, 260);
SMARTMETER.se tFont(BigFont);
SMARTMETER.setBackColor(0, 255, 0);
SMARTMETER.print("ON", 350, 230);
SMARTMETER.setColor(255, 0, 0);
SMARTMETER.fillRoundRect (405, 220, 475, 260);
SMARTMETER.setColor(0, 0, 0);
SMARTMETER.drawRoundRect (405, 220, 475, 260 );
SMARTMETER.setFont(BigFont);
SMARTMETER.setBackColor(255, 0, 0);
SMARTMETER.print("OFF", 415, 230); //
}
void drawFrame(int x1, int y1, int x2, int y2) {
SMARTMETER.setColor(255, 0, 0);
SMARTMETER.drawRoundRect (x1, y1, x2, y2);
while (To uch.dataAvailable()){
Touch.read();
SMARTMETER.setColor(255, 255, 255);
SMARTMETER.drawRoundRect (x1, y1, x2, y2);
}
}
void drawgrafic() {
SMARTMETER.setColor( 0, 200, 0);
for( dgvh = 0; dgvh < 4; dgvh ++){
SMARTMETER.drawLine( dgv h * 50, 0, dgvh * 50, 150);
SMARTMETER.drawLine( 0, dgvh * 50, 241 ,dgvh * 50);
}
SMARTMETER.drawLine( 200, 0, 200, 150);
SMARTMETER.drawLine( 241, 0, 241, 150);
SMARTMETER.setColor(100, 155, 203);
SMARTMETER.fillRoundRect (300, 1, 330, 15);
SMARTMETER.setColor(255, 255, 255);
SMARTMETER.drawRoundRect (300, 1, 330, 15);
SMARTMETER.setFont(BigFont);
SMARTMETER.setBackColor(100, 155, 203);
SMARTMETER.setColor( 0, 0, 0);

NECLASIFICAT
NECLASIFICAT
100 din 105 SMARTMETER.setBackColor(255,255,255);
SMARTMETER.print("< -", 300, 1);
SMARTMETER.setFont(SmallFont);
SMARTMETER.print("Back to Main Menu", 340, 1);
SMARTMETER.setColor(0, 0, 0);
SMARTMETER.setBackColor(0, 0, 0);
SMARTMETER.setColor(255, 255, 255);
SMARTMETER.setFont(BigFont);
SMARTMETER.print("Frecvent a:", 280, 70);
SMARTMETER.setFont(BigFont);
SMARTMETER.setBackColor(0, 0, 0);
SMARTMETER.setColor(255, 255, 255);
SMARTMETER.setFont(BigFont);
SMARTMETER.print("Tensiune efectiva:", 10,185);
SMARTMETER.print("Curent efectiv:", 10, 225);
SMART METER.print("F esantionare:", 20, 265);
}
void drawEnergie(){
SMARTMETER.clrScr();
SMARTMETER.setColor(100, 155, 203);
SMARTMETER.fillRoundRect (10, 10, 60, 36);
SMARTMETER.setColor(255, 255, 255);
SMARTMETER.drawRoundRect (10, 10, 60, 36);
SMA RTMETER.setFont(BigFont);
SMARTMETER.setBackColor(100, 155, 203);
SMARTMETER.print("< -", 18, 15);
SMARTMETER.setBackColor(0, 0, 0);
SMARTMETER.setFont(SmallFont);
SMARTMETER.print("Back to Main Menu", 70, 18);
SMARTMETER.setFont(BigFont);
SMA RTMETER.print("* Smartmeter R2 *", CENTER, 50);
SMARTMETER.setColor(255, 0, 0);
SMARTMETER.drawLine(0,80,480,80);
SMARTMETER.setBackColor(0, 0, 0);
SMARTMETER.setColor(255, 255, 255);
SMARTMETER.setFont(BigFont);
SMARTMETER.print("Energie consu mata:", 10, 110);
SMARTMETER.setColor(255, 0, 0);
SMARTMETER.drawLine(0,80,480,80);
SMARTMETER.setBackColor(0, 0, 0);
SMARTMETER.setColor(255, 255, 255);
SMARTMETER.setFont(BigFont);
SMARTMETER.print("Pret consum:", 10, 190);
}
void drawParam etri() {

NECLASIFICAT
NECLASIFICAT
101 din 105 SMARTMETER.clrScr();
SMARTMETER.setColor(100, 155, 203);
SMARTMETER.fillRoundRect (10, 10, 60, 36);
SMARTMETER.setColor(255, 255, 255);
SMARTMETER.drawRoundRect (10, 10, 60, 36);
SMARTMETER.setFont(BigFont);
SMARTMETER.setBackColor(1 00, 155, 203);
SMARTMETER.print("< -", 18, 15);
SMARTMETER.setBackColor(0, 0, 0);
SMARTMETER.setFont(SmallFont);
SMARTMETER.print("Back to Main Menu", 70, 18);
SMARTMETER.setFont(BigFont);
SMARTMETER.print("* Smartmeter R2 *", CENTER, 50);
SMA RTMETER.setColor(255, 0, 0);
SMARTMETER.drawLine(0,80,480,80);
SMARTMETER.setBackColor(0, 0, 0);
SMARTMETER.setBackColor(0, 0, 0);
SMARTMETER.setColor(255, 255, 255);
SMARTMETER.setFont(BigFont);
SMARTMETER.print("Puterea activa:", 10, 110);
SMARTMETER.print("Puterea reactiva:", 10, 160);
SMARTMETER.print("Puterea aparenta:", 10, 210);
SMARTMETER.print("Factor de putere:", 10, 260);
}
void grafic(){
SMARTMETER.clrScr();
while (currentPage == '1'){
drawgrafic();
StartSample = mi cros();
for( int xpos = 0; xpos < 240; xpos ++) {
Sample[ xpos] = analogRead(0)*5/102;
SampleI[ xpos] = analogRead(1)*5/102;
delayMicroseconds(1);
}
EndSample = micros();
// Afișarea formelor de undă
for( int xpos = 0; x pos < 239; xpos ++){
SMARTMETER.setColor( 0, 0, 0);
SMARTMETER.drawLine (xpos + 1, 255 -OldSample[ xpos + 1]* vsens -hpos,
xpos + 2, 255 -OldSample[ xpos + 2]* vsens -hpos);
SMARTMETER.drawLine (xpos + 1, 255 -OldSampleI[ xpos + 1]* vsens -hpos,
xpos + 2, 255 -OldSampleI[ xpos + 2]* vsens -hpos);
if (xpos == 0){
SMARTMETER.drawLine (xpos + 1, 1, xpos + 1, 239);
}

NECLASIFICAT
NECLASIFICAT
102 din 105 SMARTMETER.setColor( 255, 255, 255);
SMARTMETER.drawLine (xpos, 255 -Sample[ xpos]* vsens -hpos, xpos + 1,
255-Sample[ xpo s + 1]* vsens -hpos);
SMARTMETER.setColor( 255, 0, 0);
SMARTMETER.drawLine (xpos, 255 -SampleI[ xpos]* vsens -hpos, xpos + 1,
255-SampleI[ xpos + 1]* vsens -hpos);
}
// Determinarea maximelor formelor de undă
Max = Sample[ 100];
Min = Sample[ 100];
Max = SampleI[ 100];
Min = SampleI[ 100];
for( int xpos = 0; xpos < 240; xpos ++){
OldSample[ xpos] = Sample[ xpos];
if (Sample[ xpos] > Max){
Max = Sample[ xpos];
}
if (Sample[ xpos] < Min){
Min = Sample[ xpos];
}
OldSampleI[ xpos] = SampleI[ xpos];
if (SampleI[ xpos] > Max){
Max = SampleI[ xpos];
}
if (SampleI[ xpos] < Min){
Min = SampleI[ xpos];
}
}
Calcul_parametri();
SMARTMETER.setColor(0, 255, 0);
SMARTMETER.set BackColor(0, 0, 0);
SMARTMETER.printNumF(F,3,295,100,46,3,48);
SMARTMETER.setFont(BigFont);
SMARTMETER.print("Hz ", 410, 100);
SMARTMETER.setColor(150, 150, 0);
SMARTMETER.printNumF(Uef,2,310,185,46,3,48);
SMARTMETER.print("V ", 420 , 185);
SMARTMETER.printNumF(Ief,3,275,225,46,3,48);
SMARTMETER.print("A ", 370, 225);
SMARTMETER.setColor(50, 50, 250);
SMARTMETER.printNumF(Fe,3,280,265,46,3,48);
SMARTMETER.print("Hz ", 390, 265);
delay(1000);
if (Touch.dataA vailable()) {
Touch.read();

NECLASIFICAT
NECLASIFICAT
103 din 105 x=Touch.getX();
y=Touch.getY();
//Back button
if ((x>=300) && (x<=330) &&(y>=1) && (y<=15)) {
drawFrame(300, 1, 330, 15);
currentPage = '0';
SMARTMETER.clrScr ();
drawHomeScreen(); } } } }

Anexa 1.3
Codul QPython3 implementat pentru a interfața dispozitivul Smartmeter
cu smartphone -ul personal.

smartmeter_energy.py

import android
import time
import sys, string, os
droid = android.Android()
droid.t oggleBluetoothState(True)
droid.bluetoothConnect('00001101 -0000 -1000 -8000 -00805F9B34FB',
'98:D3:31:FB:6D:EF')
print ("Conectare…")
time.sleep(1)
droid.webViewShow('file:///storage/emulated/0/qpython/proiect/smartmeter_energy
.html')
while True:
event = droid.eventWait(1000).result
if(event!=None):
if event['data'] == 'exit':
sys.exit()
time.sleep(0.1)
Uef= droid.bluetoothReadLine().result
droid.eventPost('Tensiune_efectivă', Uef)
Ief= droid.bluetoothReadLine().result
droid.eventPost('Curen t_efectiv', Ief)
P= droid.bluetoothReadLine().result
droid.eventPost('Putere_activă', P)
Q= droid.bluetoothReadLine().result
droid.eventPost('Putere_reactivă', P)
F_p= droid.bluetoothReadLine().result
droid.eventPost('Factor_putere', F_p)

NECLASIFICAT
NECLASIFICAT
104 din 105 E= droid.blue toothReadLine().result
droid.eventPost('Energie_consumata', E)
if (E>2):
os.system( '/storage/emulated/0/qpython/proiect/ Trimitere_monitorizare.py');
print (E)

Trimitere_monitorizare.py

import smtplib
from email.mime.text import MIMEText
from email. mime.multipart import MIMEMultipart
Subiect = 'SMARTMETER'
email_user ="smartmeter.energy111@gmail.com"
email_send="smartmeter_energy@yahoo.com"
msg =MIMEMultipart()
msg['from'] = email_user
msg['to'] = email_send
msg['subject'] = Subiect
mesaj=" Consum de energie ridicat!!! Peste 2Wh!!"
sent by Pyt hon 2.7.14"
msg.attach(MIMEText(mesaj,'plain'))
text=msg.as_string()
server= smtplib.SMTP('smtp.gmail.com', 587)
server.ehlo()
server.starttls()
server.login(email_user,'ipoteza111')
server.sendmail(email_user,email_send,text)
server.quit()

smartmeter_ene rgy.html

<html>
<body style = "background -color: black">
<p style="text -align: center; color:#ffffff; font -size:70px" >Energie consumata
[Wh]: </p>
<p style="text -align: center; color:#ffffff; font -size:70px"
id="id_exit">xxxxxxx</p>
<button onclick="Ene rgie_con sumata_ exit ()">Exit </button>
<script type="text/javascript">
var i ="xxx";
var droid = new Android();
document.getElementById("id_ ex it ").innerHTML = "12345678";
droid.registerCallback(' Energie_consumata ', function(e) {
var citire = e.data;
var Energy= citire.toPrecision(3);

NECLASIFICAT
NECLASIFICAT
105 din 105 document.getEle mentById('id_exit').innerHTML = Energy;
});
function Energie_consumata ()
{
droid.eventPost(' mesaj ', document.getElementById("textul_meu").value)
}
function Energie_consumata_ exit ()
{
droid.eventPost(' mesaj ', "exit")
}
</script>
</body>
</html>

Anexa 1.4
Crearea aplicațiiei a doua pentru smartphone a fost realizată în mediul de
dezvoltare online al aplicațiilor mobile pentru sistemul de ope rare Android, MIT
App Inventor 2.

Figura A1.4 – Implementarea aplicației Smartmeter pentru Android

Similar Posts