universitatea politehnia din ucureşti -...
TRANSCRIPT
Universitatea POLITEHNICA din Bucureşti
Facultatea de Automatică şi Calculatoare
Master: Automatică şi Informatică Industrială
LUCRARE DE DISERTAŢIE
Coordonator ştiinţific:
Prof. Dr. Ing. Sgârciu Valentin
Masterand:
Ing. Cosmin Constantin Butănescu
BUCUREŞTI
2013
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
2
Sistem automat de acționare la schimbările
nivelului iluminatului natural
- controlul unei jaluzele -
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
3
Contents
1. Introducere ........................................................................................................................... 4
1.1. Obiectiv .................................................................................................................................... 4
1.2. Scopul sistemului automat de acționare la schimbările nivelului iluminatului natural .......... 4
2. Noțiuni introductive privind sistemele de actionare [7][8][9][12] ........................................... 5
2.1. Prezentarea motoarelor pas cu pas ........................................................................................ 5
2.2. Construcția și funcționarea motoarelor pas cu pas ................................................................ 7
2.3. Mărimi caracteristice ale motoarelor pas cu pas .................................................................. 11
2.4. Metode de comandă a motoarelor pas cu pas ..................................................................... 14
2.4.1. Variante de comandă a MPP ......................................................................................... 14
3. Convertoare electronice pentru alimentarea motorului pas cu pas [10][11] .......................... 17
3.1. Tehnici de comandă și reglare moderne a motoarelor pas cu pas ....................................... 17
4. Circuite electronice [13] ...................................................................................................... 20
5. Fundamentare teoretica. Prezentarea conceptelor de bază ale controlului automat
[1][2][3][4][5][6] ........................................................................................................................ 22
5.1. Noțiuni și definiții utilizate în automatizările din construcții ................................................ 22
6. Elemente de câmp. Senzori și dispozitive de control [13] ...................................................... 24
6.1. Arduino Uno breadboard ...................................................................................................... 24
6.2. Senzorul de lumină – Fotorezistența ..................................................................................... 25
6.3. Driver motor – Easy Driver .................................................................................................... 26
7. Concluzii ............................................................................................................................. 27
8. Bibliografie ......................................................................................................................... 28
9. Anexe ................................................................................................................................. 29
9.1. Anexa 1 – Model schemă de conexiuni motor pas cu pas – EasyDriver – Arduino Uno ....... 29
9.2. Anexa 2 – Model schemă de conexiuni display – Arduino Uno ............................................ 29
9.3. Anexa 3 – Model schemă de conexiuni fotorezistenta – Arduino Uno ................................. 30
9.4. Anexa 4 – Program ................................................................................................................ 30
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
4
1. Introducere
1.1. Obiectiv
Prezenta lucrare iși propune realizarea unui sistem automat de acționare la schimbările
nivelului iluminatului natural, constând în controlului unei jaluzele prin intermediul unui
motor pas cu pas bipolar, care este acționat în urma preluării și interpretării unei valori
analogice de la o foto-rezistență. Acționarea motorului pas cu pas se realizeaza prin
intermediul unui driver de motor, compatibil cu orice dispozitiv care îi poate furniza un
impuls digital de 0 și 5V, in cazul acestui proiect fiind folosită o placă de dezvoltare Arduino
Uno. În vederea prezentării sistemului automat de acționare a fost realizată o macheta.
1.2. Scopul sistemului automat de acționare la schimbările nivelului
iluminatului natural
Condițiile luminii naturale exterioare și utilizarea spațiului într-o clădire se schimbă.
Controlul automat al jaluzelelor, prin intermediul unui motor pas cu pas, trebuie să
îndeplineasca urmatoarele:
Să asigure confortul vizual dorit al ocupanților spațiului;
Să asigure crearea unui mediu dinamic, cel pe care ocupanții incintei îl doresc.
Diferite cerințe ale mediului vizual sunt necesare pentru diferite activități sau funcții.
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
5
2. Noțiuni introductive privind sistemele de actionare [7][8][9][12]
Pentru realizarea mişcărilor în sistemele automate se utilizează sisteme de acţionare de
cele mai diferite tipuri şi forme de energie. Pentru cuprinderea tuturor acestor dispozitive
tehnice într-o singură noţiune, se utilizează termenul de actuator (de la verbul englez „to act”
= a acţiona), care include toate elementele de ieşire, destinate producerii de forţe şi mişcări.
2.1. Prezentarea motoarelor pas cu pas
Motorul pas cu pas (MPP) este un convertor electromecanic care realizează
transformarea unui tren de impulsuri digitale într-o mişcare proporţională a axului său.
Mişcarea rotorului MPP constă din deplasări unghiulare discrete, succesive, de mărimi egale
şi care reprezintă paşii motorului. În cazul unei funcţionări corecte, numărul paşilor efectuaţi
trebuie să corespundă cu numărul impulsurilor de comandă aplicate fazelor motorului.
Unghiul de rotatie pe care il executa rotorul, la aplicarea unui impuls de comanda,
reprezinta unghiul de pas al motorului ( ). La fiecare impuls de comanda rotorul executa un
pas unghiular, apoi se opreste pana la sosirea urmatorului impuls de comanda.
Deplasarea unghiulară totală, constituită dintr-un număr de paşi egal cu numărul de
impulsuri de comandă aplicat pe fazele motorului, determină poziţia finală a rotorului.
Această poziţie se păstrează, adică este memorată, până la aplicarea unui nou impuls de
comandă. Proprietatea de univocitate a conversiei impulsuri «deplasare, asociată cu aceea de
memorare a poziţiei, fac din MPP un excelent element de execuţie, integrat în sistemele de
reglare a poziţiei în circuit deschis. MPP mai prezintă proprietatea de a putea intra în
sincronism faţă de impulsurile de comandă chiar din stare de repaus, funcţionând fără
alunecare, frânarea efectuându-se, de asemenea, fără ieşirea din sincronism. Datorită acestui
fapt se asigură porniri, opriri si reversări bruşte fără pierderi de paşi în tot domeniul de lucru.
Viteza unui MPP poate fi reglată în limite largi prin modificarea frecvenţei
impulsurilor de intrare. Astfel, dacă pasul unghiular al motorului este 1,8° numărul de
impulsuri necesare efectuării unei rotaţii complete este 200, iar pentru un semnal de intrare cu
frecvenţa de 400 impulsuri pe secundă turaţia motorului este de 120 rotaţii pe minut. MPP pot
lucra până la frecvenţe de 1000 - 20000 paşi / secundă, având paşi unghiulari cuprinşi între
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
6
180° si 0,3°. Aplicaţiile acestora sunt limitate la situaţiile în care nu se cer puteri mari (puteri
uzuale cuprinse între domeniile microwaţilor si kilowaţilor). MPP sunt utilizate în aplicaţii de
mică putere, caracterizate de mişcări rapide, precise, repetabile: plotere x-y, unităţi de disc
flexibil, deplasarea capului de imprimare la imprimante serie, acţionarea mecanismelor de
orientare si prehensiune la roboti, deplasarea axială a elementelor sistemelor optice, mese de
poziţionare 2D pentru maşinile de găurit etc.
Utilizarea MPP conferă următoarele avantaje:
asigură univocitatea conversiei număr de impulsuri – deplasare, putandu-se
utiliza cu succes in circuit deschis (lipsa traductorului numeric de pozitie face ca sistemele de
comanda in circuit deschis a MPP sa fie in prezent cele mai ieftine sisteme de pozitionare);
admit gamă largă a frecvenţelor de comandă;
precizie de poziţionare şi rezoluţie mari (numar de pasi pe rotatie);
permit porniri, opriri, reversări fără pierderi de paşi;
dezvolta cuplu relativ mare la viteze relativ mici;
comanda lor este simpla, fara regulatoare;
memorează poziţia;
sunt compatibile cu comanda numerică.
Principalele dezavantaje ale utilizării MPP sunt:
unghi de pas, deci increment de rotaţie, de valoare fixă pentru un motor dat;
viteză de rotaţie relativ scăzută;
putere dezvoltată la arbore de valoare redusă;
randament energetic scăzut;
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
7
2.2. Construcția și funcționarea motoarelor pas cu pas
MPP sunt de mai multe feluri: rotative sau liniare, numărul înfăşurărilor de comandă
variind între unu si cinci. Din punct de vedere al construcţiei circuitului magnetic sunt trei
tipuri principale:
cu reluctanţă variabilă (de tip reactiv);
cu magnet permanent (de tip activ);
hibride.
Reluctanta reprezinta rezitenta magnetica, marime egala cu raportul dintre tensiunea
magnetica de-a lungul unui circuit si fluxul magnetic care strabate circuitul.
MPP cu reluctanţă variabilă are atât statorul cât si rotorul prevăzute cu dinţi uniform
distribuiţi, pe cei ai statorului fiind montate înfăşurările de comandă. Rotorul este pasiv. La
alimentarera unei/unor faze statorice, el se roteşte de aşa manieră, încât liniile de câmp
magnetic să se închidă după un traseu de reluctanţă minimă, adică dinţii rotorici să se
găsească, fie faţă în faţă cu cei statorici (fig. I şi II), fie plasaţi după bisectoarea unghiului
polilor statorici (fig. III). Acest tip de motor asigură paşi unghiulari mici şi medii şi poate
opera la frecvenţe de comandă mari, însă nu memorează poziţia (nu asigură cuplu
electromagnetic în lipsa curentului prin fazele statorului – respectiv, nu are cuplu de
menţinere).
Fig. 1. Schema de principiu a unui MPP cu reluctanta variabila
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
8
Figura 1 permite deducerea unor concluzii deosebit de importante, legate de modurile
de comandă a MPP. Astfel, în poziţiile I şi II este alimentată câte o singură fază statorică,
AA’, respectiv BB’. Rotorul se va deplasa în paşi întregi:
(1)
unde, f reprezintă numărul de faze ale statorului (f=3 – AA’, BB’, CC’), iar z, numărul de
dinţi ai rotorului (z = 2 – un nord şi un sud). Acest mod de comandă poartă denumirea de
comandă în secvenţă simplă. Tabelul 1 prezintă succesiunea de impulsuri de comandă a
înfăşurărilor statorului:
Tabel 1 – Comanda in secventa simpla
AA’ BB’ CC’
1 0 0
0 1 0
0 0 1
1 0 0
Poziţia III prezintă posibilitatea de comandă a mişcării rotorului prin alimentarea
simultană a câte 2 faze: AA’+BB’; BB’+CC’; CC’+AA’. Rotorul se va poziţiona în paşi
întregi (formula 1), la jumătatea unghiului dintre polii statorici. Creşte momentul dezvoltat de
motor. Acest mod de comandă se numeşte în secvenţă dublă.
Tabel 2 – Comanda in secventa dubla
AA’ BB’ CC’
1 1 0
0 1 1
1 0 1
1 1 0
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
9
O ultimă posibilitate de comandă presupune alimentarea, succesivă a unei faze, AA’,
urmată de alimentare a 2 faze, AA’+BB’, apoi a unei faze, BB’, urmată de alte 2 faze,
BB’+CC’ etc. Rotorul se va poziţiona, iniţial, în dreptul polilor statorici AA’, apoi după
diagonala polilor AA’+BB’, pe urmă, în drepul polilor BB’ etc., deplasându-se în jumătăţi de
pas, cu unghiuri de 30°. Este comanda în secvenţă mixtă, sintetizată în tabelul 3.
Tabel 3 – Comanda in secventa mixta
AA’ BB’ CC’
1 0 0
1 1 0
0 1 0
0 1 1
0 0 1
1 0 1
1 0 0
Pentru fiecare dintre cele 3 tabele, 1, 2 şi 3, aplicarea secvenţelor de impulsuri,
începând cu prima linie spre ultima, va determina deplasarea rotorului în sens orar (clockwise
= CW), după cum sunt concepute şi poziţiile din figura 1. Dacă secvenţele de impulsuri se
aplică începând cu configuraţia din ultima linie a tabelelor spre prima linie, deplasarea
rotorului se va efectua în sens invers acelor de ceas (counterclockwise = CCW).
O altă concluzie importantă, care se poate desprinde din principiul de funcţionare a
MPP cu reluctanţă variabilă, este aceea că nu trebuie schimbat sensul în înfăşurările statorului,
pentru ca rotorul să se deplaseze într-un anumit sens. Acest tip de comandă, în care sensul
curentului printr-o înfăşurare se menţine neschimbat, se numeşte comandă unipolară.
MPP cu magnet permanent are dinţii rotorului constituiţi din magneţi permanenţi, cu
polii dispuşi radial (în figura 1, poziţia I, se va imagina un pol rotoric S în dreptul polului N al
statorului şi un pol rotoric N în dreptul polului S generat de înfăşurarea AA’). Când se
alimentează fazele statorului se generează câmpuri magnetice, care interactionează cu
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
10
fluxurile magneţilor permanenţi, dând naştere unor cupluri de forţe, care deplasează rotorul.
Aspectele legate de comanda în secvenţe, simplă, dublă şi mixtă, sunt similare cu cele de la
MPP cu reluctanţă variabilă. În schimb, în măsura în care rotorul execută un număr de paşi şi
polul sud al rotorului se apropie de polul A’ al statorului, curentul prin înfăşurarea AA’
trebuie să-şi schimbe sensul, pentru a-i opune acestuia un pol nord şi a menţine sensul
cuplului de forţe. Alimentarea fazelor se face cu impulsuri de polaritate alternată, lucru care
complică structura dispozitivului de comandă, numită comandă bipolară.
Acest tip de motor asigură momente motoare mai mari şi un cuplu de menţinere a
rotorului, chiar în lipsa alimentării fazelor Paşii unghiulari obţinuţi sunt mari (între 45° si
120°), întrucât numărul de magneţi permanenţi, care pot fi dispuşi de-a lungul circumferinţei
rotorului este mult mai mic decât numărul de dinţi accesibil pentru rotorul uni MPP cu
reluctanţă variabilă.
MPP hibrid este o combinaţie a primelor două tipuri, îmbinând avantajele ambelor şi
fiind varianta de MPP utilizată în marea majoritate a aplicaţiilor. În cazul unui MPP hibrid,
rotorul este constituit dintr-un magnet permanent, dispus longitudinal, la ale cărui extremităţi
sunt fixate două coroane dinţate din material feromagnetic (fig.2, a). Dinţii unei coroane
constituie polii nord, iar dinţii celeilalte coroane, polii sud. Dinţii celor două coroane sunt
decalaţi spaţial, astfel încât, dacă un dinte al unei coroane se găseşte în dreptul unui dinte
statoric, dintele rotoric de pe cealaltă coroană să se afle la jumătatea unghiului dintre doi dinţi
statorici.
Fig. 2 – Motor pas cu pas hibrid cu 2 faze
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
11
MPP hibrid cu 2 faze, are 2 înfăşurări statorice, A şi B (fig.5.5, a) şi un rotor cu două
coroane dinţate cu câte 50 de dinţi, decalaţi spaţial, cei ai unei coroane fiind poli nord, cei ai
coroanei opuse fiind poli sud (fig. 2, a). Sunt, deci, în total 100 de dinţi rotorici şi utilizând
formula (1) se obţine unghiul de pas:
= 1,8°, pentru paşi întregi, respectiv: 0,9° - pentru jumătăţi de pas.
O rotaţie complectă a rotorului este realizată în:
N = 200 paşi ( = 1,8°) sau N =400 paşi ( = 0,9°).
Din figura 1, b, se observă că înfăşurările A şi B sunt dispuse, fiecare, pe câte 4 poli
statorici, care au dinţi, pentru a asigura un traseu optim pentru liniile de câmp magnetic. De
asemenea, se observă că, pe fiecare pol o înfăşurare, A sau B, este împărţită în două jumătăţi,
care pot fi accesibile la ieşire prin firul (priza) lor median, sau pot fi separate şi accesibile,
fiecare, la exterior cu câte 2 fire, situaţie în care, practic, motorul are 4 faze. Acest mod de
dispunere a înfăşurărilor înlesneşte unui MPP cu 2 faze o comandă unipolară, dacă aceasta
este preferată celei bipolare.
2.3. Mărimi caracteristice ale motoarelor pas cu pas
Printre cele mai importante mărimi caracteristice, mecanice şi electrice, ale MPP se
definesc (vezi pentru unele dintre ele, figura 2):
1. Unghiul de pas ( ) este unghiul cu care se deplasează rotorul la aplicarea unui
impuls de comandă.
2. Frecvenţa maximă de start-stop în gol este frecvenţa maximă a impulsurilor de
comandă, la care motorul poate porni, opri sau reversa fără pierderi de paşi (fAm - fig. 2).
3. Frecvenţa limită de pornire reprezintă frecvenţa maximă a impulsurilor de comandă,
cu care MPP poate porni, fără pierderi de paşi, pentru un cuplu rezistent şi un moment de
inerţie date (fAm – fig. 2).
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
12
4. Cuplul limită de pornire reprezintă cuplul rezistent maxim la arbore, cu care MPP
poate porni, la o frecvenţă si un moment de inerţie date, fără pierderi de paşi (ML* – fig. 2).
5. Caracteristica limită de pornire defineşte domeniul cuplu-frecvenţă de comandă
limită, în care MPP poate porni fără pierderi de paşi (curba Start-Stop pentru pornire în gol –
JL = 0, respectiv curba cu linie întreruptă pentru pornire în sarcină – JL ≠ 0).
6. Frecvenţa maximă de mers în gol este frecvenţa maximă a impulsurilor de comandă
pe care o poate urmări motorul, fără pierderea sincronismului (fBom – fig. 2).
7. Frecvenţa limită de mers reprezintă frecvenţa maximă cu care poate funcţiona un
MPP, pentru un cuplu rezistent si un moment de inerţie date.
8. Cuplul limită de mers reprezintă cuplul rezistent maxim, cu care poate fi încărcat un
MPP pentru un moment de inerţie dat şi o frecvenţă de comandă cunoscută.
9. Caracteristica de mers defineşte domeniul cuplu limită de mers-frecvenţă limită de
mers (curba Betriebsgrenzmoment MBm – fig. 2), în care MPP poate funcţiona în sincronism,
fără pierderi de pasi.
10.Viteza unghiulară (w) poate fi calculată ca produs dintre unghiul de pas si frecvenţa
de comandă:
(2)
11.Puterea la arbore este puterea utilă la arborele motorului, corespunzătoare punctului
de funcţionare de pe caracteristica de mers, punct caracterizat de cuplul limită de mers şi de
frecvenţa maximă de mers.
12.Cuplul de menţinere este egal cu cuplul rezistent maxim, care poate fi aplicat la
arborele motorului cu fazele nealimentate, fără ca să provoace rotirea continuă a rotorului.
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
13
Fig. 2 - Curbe si marimi caracteristice ale MPP
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
14
2.4. Metode de comandă a motoarelor pas cu pas
Fig. 3 – Sistem de poziționare cu motor pas cu pas; comanda unui motor în buclă deschisă
Marele avantaj al motoarelor pas cu pas constă în faptul că pot fi comandate în buclă
deschisă (fig. 3), fără a fi necesară o buclă de reglare a poziţiei, care să compare, permanent,
poziţia programată cu cea curentă, furnizată de un senzor de poziţie.
Aceast mod de comandă impune, însă, funcţionarea în sincronism a MPP, respectiv
numărul de paşi efectuaţi de motor trebuie să coincidă, pe tot parcursul funcţionării, cu
numărul de impulsuri de comandă, transmise de unitatea de comandă. Este motivul pentru
care alegerea unui MPP, pentru o anumită aplicaţie, trebuie făcută cu mult discernământ,
urmărind anumite etape.
2.4.1. Variante de comandă a MPP
Comanda paşilor MPP poate realiza în mai multe moduri. Astfel, se utilizează:
Comandă în secvenţă simplă (tabel 1);
Comandă în secvenţă dublă (tabel 2);
Comandă în secvenţă mixtă (tabel 3);
Comandă prin micropăşire. Aceasta este o metodă specială de control al
poziţiei MPP în poziţii intermediare celor obţinute prin primele trei metode. De
exemplu, pot fi realizate poziţionări la 1/10, 1/16, 1/32, 1/125 din pasul
motorului, prin utilizarea unor curenţi de comandă a fazelor cu valori diferite
de cea nominală, astfel încât suma curenţilor de comandă prin cele două faze
alăturate, comandate simultan să fie constantă, egală cu valoarea nominală. Cu
ajutorul acestei metode sunt asigurate atât poziţionări fine, cât si operări line,
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
15
fără şocuri, însă cuplul dezvoltat este mai mic decât în primele trei cazuri.
Presupune un sistem de comandă mult mai complex, cu convertoare numeric-
analogice, pentru a obţine profilele de curenţi în trepte.
Dintr-un alt punct de vedere, respectiv cel al menţinerii/inversării sensului, sunt două moduri
de comandă distincte:
Comandă unipolară, cu menţinerea sensului curentului;
Comandă bipolară, cu alternarea sensului curentului.
MPP cu 2 faze pot fi comandate în ambele variante, bipolar şi unipolar, întrucât cele două
înfăşurări ale lor au configuraţia prezentată în figura 4, lit. b). Important este numărul de fire
accesibil la ieşirea motorului, existând motoare cu 4, 5, 6 şi 8 fire ( fig. 4). Dintre aceste
variante, MPP cu 4 fire poate fi comandat numai în varianta bipolară, iar cel cu 5 fire numai
în varainta unipolară. Cele cu 6 fire şi cu 8 fire pot fi comandate în ambele variante, cu
diferenţa că, în cazul motorului cu 8 fire, în varianta de comandă biplolară, înfăşurările pot fi
legate şi în paralel.
Fig. 4 – Variante de MPP cu 2 faze
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
16
a) cu 8 fire, cu înfăşurări în paralel;
b) cu 4/8 fire, cu înfăşurări în serie;
c) cu 5 fire;
d) cu 6 fire);
e) cu 8 fire, cu indicarea culorii corespunzătoare fiecărui fir, pentru identificare.
În cazul MPP cu 5 faze, fiecare fază este accesibilă la ieşire cu cîte 2 fire, deci un total
de 10 fire, fiecare cu o culoare diferită, iar singura variantă de comandă posibilă este comanda
bipolară. Din punct de vedere al secvenţelor de comandă, se utilizează numai secvenţe duble,
cu alimentarea simultană a câte 4 faze şi deplasarea în paşi întregi (0,72°) şi secvenţe mixte,
cu alimentarea, succesivă, a câte 4, respectiv 5 faze, şi deplasarea în jumătăţi de pas (0,36°).
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
17
3. Convertoare electronice pentru alimentarea motorului pas cu
pas [10][11]
Convertoarele electronice folosite pentru alimentarea motoarelor pas cu pas sunt de o
varietate deosebită, structura lor depinzând de tipul motorului alimentat, de numarul de faze
ale motorului, de secvența de alimentare, de strategia de comandă urmarită. Ultimele tendințe
din acest domeniu indică cu claritate că la convertoarele electronice folosite pentru
alimentarea motoarelor pas cu pas s-a generalizat tehnica de comandă prin modularea în
durată a impulsurilor (PWM).
Convertoarele electronice de c.c., bazate pe principiul modulării în durată a impulsurilor, au
putut fi construite numai odata cu apariția dispozitivelor electronice capabile să functioneze la
frecvente înalte de comutatie. Acestea sunt tranzistoarele bipolare, cele MOS-FET și, cu
deosebire, tranzistorul bipolar cu comandă prin câmp IGBT.
Punerea la punct a tehnologiilor de fabricație a acestor ventile electronice a condus la tendința
firească de realizare a unor convertoare PWM integrate, caracterizate prin simplitate și
fiabilitate deosebită in funcționare.
Se constată că, deși sunt performante și foarte fiabile în exploatare, invertoarele PWM
integrate fabricate în prezent nu satisfac integral toate aplicațiile cu MPP. Rezulta că pentru
aplicații foarte pretențioase, având ca element de executie MPP, apare necesitatea implicită a
proiectării unor invertoare PWM cu componente discrete adecvate strategiei de comandă si
reglare urmărite. Această dinamică impetuasă si continuă în domeniul electronicii și mediilor
software obligă cercetatorul la o permanentă reorientare, la găsirea soluțiilor și rezolvarea lor
cu mijloace tehnice de ultimă oră.
3.1. Tehnici de comandă și reglare moderne a motoarelor pas cu pas
Se cunoaste că domeniul principal de utilizare al motoarelor pas cu pas este cel de comandă si
reglare incrementală a mișcării. Aplicațiile convenționale cu MPP necesită doar comanda
clasică in circuit deschis, oferind performanțe bune la un preț de cost relativ redus.
Comanda în circuit deschis reprezintă cea mai simplă posibilitate de comandă a unui motor
pas cu pas, în care motorul execută pașii ca răspuns la o secvența de impulsuri aplicate fazelor
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
18
acestuia. Oprirea și reversarea fară pierdere de pași presupune o frecvență de comandă
inferioara frecvenței limită corespunzatoare regimului respectiv de funcționare. De asemenea,
în situația unei funcționari normale, cuplul de încărcare de la arborele motorului nu determină
pierderea sincronismului impuls – pas. Totuși, acest sincronism poate fi pierdut la o anumită
valoare critică, valoare ce este dependentă de viteza instantanee a motorului. În general, în
practica forțele de frecare precum și cele de inerție sunt variabile, astfel că se impune ca încă
din faza de proiectare să se aleaga un punct de funcționare sub valoarea critică de cuplu la
care s-ar produce ieșirea din sincronism. Această cerința impune alegerea unor MPP
supradimensionate în comparație cu cerințele aplicațiilor, ceea ce implică obținerea unor
performanțe sub cele potențiale.
Simplitatea relativă a sistemelor de comandă în circuit deschis, datorată absenței
traductoarelor de reacție și a regulatoarelor, au determinat utilizarea MPP în diferite aplicații
unde nu se pune un accent deosebit pe performanta dinamică a sistemului în ansamblu,
caracterizat de variații în domenii largi a vitezei și accelerațiilor. În aceste aplicații vitezele
sunt reduse, iar cuplul rezistent la arborele motorului este relativ constant.
Progresele tehnologice deosebite din ultimii ani au adus modificări structurale și funcționale
deosebite în domeniul automatizărilor și al controlului miscării. Evoluțiile spectaculoase in
domeniul tehnologiei și a fabricării circuitelor integrate pe scara largă, al microprocesoarelor
au deschis perspectiva unor performanțe remarcabile pentru sistemele de acționare și implicit
în domeniul de comandă si reglare al motoarelor pas cu pas.
Cele mai importante modificari au apărut în industria fabricării de microprocesoare. În acest
context au aparut arhitecturi noi de procesoare care au permis atât integrarea unor noi
dispozitive în același chip, cât și facilități privind viteza de execuție a unor calcule complexe,
care au facut posibilă implementarea unor algoritmi de comandă și reglare moderni. O
clasificare sumară a acestor procesoare permite identificarea următoarelor tipuri:
Procesoare de uz general;
Microcontrollere;
Procesoare avansate (procesoare cu set redus de instrucțiuni și procesoare paralele);
Procesoare specializate – ASIC (application specific integrated circuit).
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
19
Semnalele analogice din proces sunt achiziționate prin intermediul unor senzori ce furnizează
semnale electrice, dupa care sunt preprocesate și convertite în semnale digitale.
Microcontroller-ului îi revine rolul de a le prelucra după un algoritmul implementat, după care
semnalele de comanda rezultate vor fi reconvertite în semnale analogice. Arhitectura
specializată a microcontroller-elor permite prelucrarea usoară a datelor achiziționate din
proces, execuția în paralel a mai multor instrucțiuni, execuția operațiilor aritmetice,
implementarea altgoritmilor.
Cunoasterea celor mai noi tendințe în acest domeniu, precum și a celor mai recente evoluții
tehnologice și strategii de comandă și reglare, sunt factori indispensabili pentru evaluarea
corectă a cerințelor pe care trebuie să le satisfacă un sistem de acționare performant cu
motoare pas cu pas. Tendințele de modernizare și perfecționare a sistemelor de acționare
bazate pe aceste tipuri de motoare se manifestă prin mentinerea modificărilor spectaculoase
din domeniul fabricării MPP și prin aplicarea unor noi metode de proiectare și optimizare a
circuitelor magnetice.
Tendința generala este acum de a se fabrica motoare modularizate, denumite „motoare
inteligente”, care au posibilitatea cuplării directe la sistemele de comandă digitale bazate pe
microprocesoare și care pot cuprinde în structura lor traductorul optic incremental, reductorul
de turatie.
În ceea ce privește comanda și alimentarea MPP, în ultimii ani s-a generalizat folosirea
convertoarelor electronice bazate pe tehnicile de modulare în durata PWM. Din punct de
vedere tehnologic, marea majoritate a acestor convertoare includ într-un singur chip partea de
comandă si logică, cât și comutatoarele electronice.
Prin utilizarea microcontroller-elor tehnologia acționărilor cu MPP a facut un mare pas
înainte, permițând implementarea în timp real a unor altgoritmi de reglare.
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
20
4. Circuite electronice [13]
Circuitele electrice reprezintă conexiuni ale conductorilor electrici cu elemente de
circuit, în cadrul cărora are loc o deplasare uniformă de electroni. Circuitele electronice
adaugă o nouă dimensiune circuitelor electrice, prin faptul că deplasarea electronilor este
controlată, într-o oarecare măsură, de un semnal electric adiţional, fie sub formă de curent, fie
sub formă de tensiune.
Circuitul electronic reprezinta sistemul considerat ca fiind un model fizic realizabil al
unui ansamblu de obiecte în care unele mărimi reprezintă cauza ( mărime de intrare - i) iar
altele efectul (mărime de ieşire - e). În cazul circuitelor electronice mai intervin perturbaţiile
(p) şi condiţionările (c), precum şi alimentarea cu energie (sursă de alimentare).
Fig. 5
Circuitelor electronice se pot caracteriza din punct de vedere funcţional şi din punct de
vedere constructiv sau tehnologic. În cazul proiectării unui circuit electronic, trebuie să se ţină
cont simultan de parametri pe care îi ţintim dar şi de tehnologia disponibilă.
Din punct de vedere funcţional, circuitele electronice se caracterizează prin funcţia de
transfer ce reprezintă legătura existentă între mărimea de ieşire şi mărimea de intrare.Funcţia
de transfer se poate defini:
analitic: e=f(i,c,p…); Pentru a defini funcţia de transfer pe cale analitică
circuitul electronic (elementele circuitului) trebuie să fie reprezentat printr-un
model adecvat.
grafic calitativ sau cantitativ, construit pe cale experimentală
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
21
Fig. 6
În general, circuitele electronice sunt caracterizate prin mărimi de genul tensiune şi
curent. După caracterul lor, tensiunea şi curentul pot fi mărimi purtătoare de energie sau
mărimi purtătoare de informaţie. În cazul tensiunii, ca şi mărime purtătoare de energie,
parametrii care caracterizează tensiunea nu se modifică în timp. În cazul tensiunii interpretat
ca semnal electric parametrii tensiunii se modifică, iar informaţia este transpusă tocmai în
aceşti parametri.
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
22
5. Fundamentare teoretica. Prezentarea conceptelor de bază ale
controlului automat [1][2][3][4][5][6]
5.1. Noțiuni și definiții utilizate în automatizările din construcții
Un sistem este o mulţime de elemente care interacţionează, relaţiile dintre acestea şi o
mulţime de scopuri. Elementele sistemului sunt formate din obiecte, idei sau evenimente, de
multe ori putând fi chiar ele sisteme. Elementele sunt în legatură unul cu altul în diferite
moduri, prin relaţii fizice, spaţiale, temporale sau logice. Relaţiile contribuie la atingerea
scopurilor sistemului prin limitarea comportarii elementelor.
Teoria sistemelor reprezintă un ansamblu de metode generale, de tehnici și algoritmi
speciali pentru rezolvarea problemelor de analiză, sinteză, identificare, optimizare, etc,
indiferent dacă sistemul la care se aplică este electric, mecanic, etc. Teoria sistemelor stă la
baza științei conducerii, care se ocupă cu activitatea conștientă desfășurată într-un sistem în
vederea îndeplinirii unui anumit scop, în condițiile influenței unor sisteme exterioare
sistemului condus.
Sistemele cu conducere automată, pe scurt sistemele automate, sunt un tip particular de
sisteme al caror scop este să funcționeze fără intervenția omului.
Prin sistem automat se ințelege un ansamblu de abiecte interconectate într-o structură
astfel realizată încat permite efectuarea unor decizii de comandă și conducere pe baza
informațiilor culese cu mijloace proprii.
Un sistem automat este format din obiectul sau procesul automatizat și din echipamentele
de conducere automată.
Sistemele automate au elemente și structure specifice. Principalele probleme referitoare la
sistemele automate sunt: analiza, sinteza, testarea, optimizarea, identificare și proiectarea.
Analiza funcţională este o metodă de reprezentare a elementului printr-un bloc (cutie
neagră sau dipol) atunci când nu se doreşte descompunerea sa în subsisteme.
Dinamica sistemelor constă în faptul că sistemele se modifică în timp datorită mediului
înconjurator şi relaţiilor între elemente.
Variabilele interne care definesc dinamica sistemului se numesc variabile de stare.
Acestea sunt, de obicei, legate de elementele care depozitează energie, materie sau informaţie.
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
23
Variabilele externe care determină schimbarea sistemului se numesc perturbaţii. Acestea
pot fi aditive, atunci când se adună la variabilele de stare, sau parametrice, dacă schimbă
parametrii elementelor.
Sistemele de conducere sunt sistemele în circuit deschis în care procesul controlat nu
influenţează semnalul de control (adică nu există feedback). Un exemplu ar fi un semnal
digital trimis de la controller pentru rotirea axului unui motor pas cu pas.
Mărimile analogice sunt mărimile ale căror valori se pot găsi în orice punct din domeniul
lor de variaţie. Ele variază continuu în timp, liniar sau non-liniar (cum e cazul temperaturilor)
şi pot lua orice valori cuprinse într-un interval.
Mărimile digitale posedă numai o variaţie în trepte. Astfel, întreg domeniul de variaţie
este divizat într-un număr finit de „cuante" (trepte elementare) de mărime determinată de
rezoluţia sistemului.
Senzorii sunt dispozitive tehnice care reacţionează la anumite proprietăţi fizice sau
chimice ale mediului din preajma lui. Ca parte componentă a unui aparat sau sistem poate
măsura/înregistra de exemplu presiunea, umiditatea, câmpul magnetic, acceleraţia, forţa,
intensitatea sonoră, intensitatea luminoasă, radiaţiile. Informaţia calitativă/cantitativă livrată
de senzori, dupa o eventuală amplificare şi prelucrare, serveşte la controlul şi reglarea
sistemului automat.
Controllerele sunt dispozitive electronice automate, ce au în componenţă un
microprocesor şi care au implementaţi algoritmi moderni de funcţionare.
Controllerele liber programabile reprezintă controllere care se pot programa cum doreşte
proiectantul. Programatorul trebuie să le implementeze funcţiile şi sa le seteze numeroasele
intrări şi ieşiri, după aplicaţia la care se lucrează.
Controllerele specializate sunt dispozitive electronice automate dotate cu inteligenţă
artificiala, dedicate conducerii unor anumite sisteme. Ele nu se pot programa liber, ci au deja
implementată o serie de programe (funcţii predefinite) cu parametrii ajustabili, care pot fi
selectate în funcţie de aplicaţia concretă.
Configuraţia de sistem constă în modul de conectare şi interacţie a elementelor
sistemului, din punct de vedere fizic şi software.
Programarea controlerului reprezintă realizarea de programe în diverse limbaje de
programare specifice controllerelor (programul C), care să implementeze funcţiile unui sistem
de reglare automată.
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
24
6. Elemente de câmp. Senzori și dispozitive de control [13]
În cadrul proiectului s-au folosit o serie de senzori și elemente de acționare și de
control, în vederea realizării sistemului automat de acționare a unei jalulele, prin intermediul
unui motor pas cu pas (care a fost prezentat în cadrul capitolelor anterioare).
6.1. Arduino Uno breadboard
Fig. 7
Pentru început voi prezenta placa de dezvoltare Arduino, fiind partea componentă a
sistemului care se ocupă cu asigurarea controlului automat al acestuia.
Arduino este o platformă de procesare open-source, bazata pe software si hardware
flexibil și simplu de folosit. Constă într-o platformă de mici dimensiuni (6.8 cm / 5.3 cm – in
cea mai des întalnită variantă) construită în jurul unui procesor de semnal și este capabilă de a
prelua date din mediul înconjurător printr-o serie de senzori și de a efectua acțiuni asupra
mediului prin intermediul luminilor, motoarelor, servomotoare, și alte tipuri de dispozitive
mecanice. Procesorul este capabil să ruleze cod scris într-un limbaj de programare care este
foarte similar cu limbajul C++.
In cadrul proiectului, aceasta are si rolul de achiziție a datelor, prin pinii de intrare
analogici, de la senzorul de lumină (fotorezistența), date care sunt interpretate și prelucrate
prin intermediul programului existent în memoria microcontroller-ului, ulterior fiind
responsabil cu transmiterea semnalului de comandă (care este un semnal digital) driver-ului
de motor în vederea acționării motorului pas cu pas pentru executarea procesului de mișcare a
jaluzelei.
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
25
6.2. Senzorul de lumină – Fotorezistența
Fig. 8
Fotorezistența reprezintă un conductor electric a carui rezistentă variază in funcție de
radiația luminoasă, funcționând pe baza efectului fotoelectric intern.
Prin fenomenul de fotoconducţie se înţelege creşterea conducţiei unui material (metal,
semiconductor) datorita generării de purtători de sarcină suplimentari sub influenţa radiaţiei
luminoase.
Printr-un semiconductor supus unei diferenţe de potenţial U va trece un curent electric
slab (de întuneric), care creşte, atunci când semiconductorul este iluminat, datorită
fotoconducţiei. Intensitatea fotocurentului, diferită de cea a curentului de întuneric, depinde
de temperatură, tensiunea electrică aplicată şi de durata iluminării.
În cazul sistemului prezent citirea intensitătii luminoase este posibilă prin utilizarea
unei rezistențe care depinde de radiația luminoasă, o fotorezistenăa, caracterizata mai sus.
Calcularea intensității luminoase se face astfel:
pe unul din porturile analogice ale placuței de dezvoltare Arduino se citește
valoarea semnalului analogic furnizat la bornele fotorezistenței. (valoarea
analogică maximă aferentă portului este 1023, care reprezintă și pragul maxim
al semnalului de la bornele fotorezistenței care poate fi citit – 100%);
la o citire care se aproprie de 0, valoarea intensității luminoase va fi direct
proporțională cu aceasta.
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
26
6.3. Driver motor – Easy Driver
Fig. 9
EasyDriver este un driver pentru actionarea motoarelor pas cu pas simplu de utilizat,
compatibil cu orice dispozitiv/modul poate scoate un semnal digital de 0 si 5V. EasyDriver
are nevoie de la 7V până la 30V pentru a alimenta motorul. Prin intermediul unui
potențiometru aflat pe placută, se poate realiza control curentului, putând lua valori de la
150mA/faza la 750mA/faza. EasyDriver suportă motoare bipolare și motoare cablate ca
bipolare. De exemplu, motoarele stepper cu 4,6 sau 8 fire.
În cadrul proiectului s-a realizat conexiunea driver-ului cu motorul pas cu pas bipolar,
care are 4 fire si cu platforma Arduino Uno, obținându-se un sistem de acționare de mare
precizie. Cu ajutorul acestui driver se realizează reglarea turației și pasului de rotație ale
motorului prin PWM, cu ajutorul unui pin, care emite un semnal digital, de pe placuta de
dezvoltare Arduino Uno, iar sensul de rotație este dat de alti doi pini digitali.
În vederea afișării valorilor intensitații luminoase citite de fotorezistență și a valorii
pasilor de rotație, s-a montat un display 16x2. Conectarea acestuia s-a realizat prin
intermediul pinilor digitali aflați pe placa de dezvoltare Arduino Uno, în vederea afișării
parametrilor aferenți sistemului automat de acționare a jaluzelei.
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
27
7. Concluzii
În această lucrare am prezentat un exemplu, bazat pe controlul automat, pentru a
demonstra că platforma de dezvoltare Arduino Uno reprezinta o soluţie ideală pentru
comanda şi controlul oricărui sistem de actionare. O singură secvenţă scurtă de program,
introdusă in mediul de programare aferent placutei, poate înlocui mai multe aparate electrice
utilizate într-o schemă clasică.
Controlul iluminatul natural, prin intermediul sistemelor de actionare, este foarte
important pentru societatea actuală, acesta fiind menit să asigure confort, sanatate, securitate,
concepția sistemelor de control bazându-se și pe echipamente de înaltă calitate.
Aplicarea soluției conducerii automate asupra sistemului de acționare a jaluzelelor la
schimbările nivelul iluminatului natural prezintă urmatoarele beneficii:;
• furnizarea iluminatului natural atunci când este necesar;
• furnizarea cantității corecte de lumină;
• folosirea luminii naturale cat mai mult posibil.
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
28
8. Bibliografie
[1] C. Ionescu, V. Vlădescu, S. Larionescu, D. Ionescu (1993) – Automatizări în instalațiile
pentru construcții
[2] C. Ionescu, S. Larionescu, S. Caluianu, D. Popescu (2004) – Automatizarea instalațiilor.
Comenzi automate
[3] D. Popescu (2006) – Automatizări în construcții
[5] S. Larionescu (2007) – Automate și microprogramare (note de curs)
[6] S. Caluianu – Acționari electrice și sisteme de automatizare a fluxurilor (note de curs),
UTCB
[7] Kelemen A., Crivii M - Motoare electrice pas cu pas (Editura tehnica)
[8] Kuo B.C., Kelemen A, Crivii M, Trifa V - Sisteme de comanda si reglare incrementala a
pozitiei (Editura tehnica)
[9] Morar A – Echipamente de comanda a motoarelor pas cu pas implementate pe
calcuatoare personale (Editura Universitatii „Petru Maior” – Targu Mures, 2002)
[10] Morar A. – Sisteme electronice de comanda si alimentare a motoarelor pas cu pas
implementate pe calculatoarele personale – Teza de doctorat (Universitatea tehnica, Cluj
Napoca, 2001)
[11] Voiculescu E. – Sisteme electronice de comanda a motoarelor pas cu pas – Teza de
doctorat (I.P. Cluj Napoca, 1992)
[13] Tony R. Kuphaldt – Introducere in circuite electrice si electronice (vol. 1, vol. 3, vol. 4)
[12] http://webbut.unitbv.ro – Carti on-line
[13] http://www.arduino.cc/
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
29
9. Anexe
9.1. Anexa 1 – Model schemă de conexiuni motor pas cu pas –
EasyDriver – Arduino Uno
9.2. Anexa 2 – Model schemă de conexiuni display – Arduino Uno
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
30
9.3. Anexa 3 – Model schemă de conexiuni fotorezistenta – Arduino Uno
9.4. Anexa 4 – Program
//librarii incluse #include <LiquidCrystal.h> //definire variabile #define DIR_PIN 2 #define STEP_PIN 3 LiquidCrystal lcd(12, 11, 10, 9, 8, 7); const int buttonPin1 = 4; const int buttonPin2 = 5; const int modcontrol = 6; const int manaut = 13; boolean manFlag = 1; boolean autFlag = 1; boolean update1 = 0; boolean update2 = 0; int buttonState1 = 0; int buttonState2 = 0; int stepCounter = 0; int modcontrolState = 0;
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
31
int Intrare, Setpoint; int outputValue = 0; int oldSetpoint, oldIntrare; // initializare parametrii void setup() { Serial.begin(9600); pinMode(manaut, OUTPUT); pinMode(buttonPin1, INPUT); pinMode(buttonPin2, INPUT); pinMode(modcontrol, INPUT); lcd.begin(20, 2); lcd.print("Reglare jaluzea ->"); lcd.setCursor(0, 1); lcd.print("Cosmin Butanescu"); delay(5000); pinMode(DIR_PIN, OUTPUT); pinMode(STEP_PIN, OUTPUT); stepCounter = 0; lcd.clear(); } void loop(){ modcontrolState = digitalRead(modcontrol); //modul de control AUTOMATIC/MANUAL if (modcontrolState == 0) { if (autFlag == 1) { lcd.clear(); lcd.setCursor(0, 0); lcd.print("Lum act: "); lcd.setCursor(0, 1); lcd.print("Setpoint: "); autFlag = 0; } // Citire Stare senzor si setpoint Intrare = analogRead(0); Setpoint = analogRead(1); if(Intrare >= oldIntrare+10 || Intrare <= oldIntrare-10 || Setpoint != oldSetpoint) update2 =1; //afisare pe LCD if (update2 ==1) { lcd.setCursor(9, 0); lcd.print(" "); lcd.setCursor(9, 0); lcd.print(Intrare); if(Setpoint != oldSetpoint) { lcd.setCursor(10, 1);
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
32
lcd.print(" "); lcd.setCursor(10, 1); lcd.print(Setpoint); } // Afisare parametrii prin RS232 Serial.print("Senzor = " ); Serial.print(Intrare); Serial.print("\t Setpoint = " ); Serial.print(Setpoint); Serial.print("\t Output = "); Serial.print(outputValue); Serial.print("\t Grade efectuate in total = "); Serial.print(stepCounter); Serial.print("\t Grade executate = "); Serial.println(outputValue); delay(100); update2 = 0; } //scalare valoare iesire outputValue = Setpoint - Intrare; if (outputValue<50 && stepCounter>=950) outputValue = 0; else if (outputValue>50 && stepCounter<=-950) outputValue = 0; if(stepCounter<=1000 && stepCounter >= -1000 && outputValue>50) { rotateDeg(-10, 0.1); stepCounter = stepCounter - 10; } else if(stepCounter<=1000 && stepCounter >= -1000 && outputValue<-50) { rotateDeg(10, 0.1); stepCounter = stepCounter + 10; } oldSetpoint = Setpoint; oldIntrare = Intrare; manFlag = 1; } else if (modcontrolState == 1) { if( manFlag == 1 ) { rotateDeg(-1*stepCounter, 0.4); stepCounter = 0; manFlag = 0; lcd.clear(); lcd.setCursor(0, 0); lcd.print("MOD MAN rDeg->"); lcd.setCursor(0, 1); lcd.print("Lum act: ");
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
33
digitalWrite(manaut, HIGH); delay(100); digitalWrite(manaut, LOW); delay(100); } Intrare = analogRead(0); if(Intrare >= oldIntrare+10 || Intrare <= oldIntrare-10) { lcd.setCursor(9, 1); lcd.print(" "); lcd.setCursor(9, 1); lcd.print(Intrare); delay(100); } if (update1 == 1) { update1 = 0; Serial.print("\t Grade efectuate = "); Serial.println(stepCounter); lcd.setCursor(14, 0); lcd.print(" "); lcd.setCursor(14, 0); lcd.print(stepCounter); } buttonState1 = digitalRead(buttonPin1); buttonState2 = digitalRead(buttonPin2); if (buttonState1 == HIGH ) { rotateDeg(10,0.5); stepCounter = stepCounter + 10; update1 = 1; digitalWrite(manaut, HIGH); delay(200); digitalWrite(manaut, LOW); } else if (buttonState2 == HIGH ) { update1 = 0; rotateDeg(-10,0.5); stepCounter = stepCounter - 10; update1 = 1; digitalWrite(manaut, HIGH); delay(200); digitalWrite(manaut, LOW); } autFlag = 1; oldIntrare = Intrare; //stepCounter = 0; } } void rotate(int steps, float speed){
UNIVERSITATEA POLITEHNICĂ BUCUREŞTI
FACULTATEA DE AUTOMATICĂ ŞI CALCULATOARE
Sistem automat de acționare la schimbările nivelului iluminatului natural – controlul unei jaluzele
34
//rotate a specific number of microsteps (8 microsteps per step) - (negitive for reverse movement) //speed is any number from .01 -> 1 with 1 being fastest - Slower is stronger int dir = (steps > 0)? HIGH:LOW; steps = abs(steps); digitalWrite(DIR_PIN,dir); float usDelay = (1/speed) * 70; for(int i=0; i < steps; i++){ digitalWrite(STEP_PIN, HIGH); delayMicroseconds(usDelay); digitalWrite(STEP_PIN, LOW); delayMicroseconds(usDelay); } } void rotateDeg(float deg, float speed){ //rotate a specific number of degrees (negitive for reverse movement) //speed is any number from .01 -> 1 with 1 being fastest - Slower is stronger int dir = (deg > 0)? HIGH:LOW; digitalWrite(DIR_PIN,dir); int steps = abs(deg)*(1/0.225); float usDelay = (1/speed) * 70; for(int i=0; i < steps; i++){ digitalWrite(STEP_PIN, HIGH); delayMicroseconds(usDelay); digitalWrite(STEP_PIN, LOW); delayMicroseconds(usDelay); } }