Aparat Pentru Evaluarea și Testarea Senzorilor de Temperatură
FUNDAȚIA PENTRU CULTURĂ ȘI ÎNVĂȚĂMÂNT “IOAN SLAVICI” TIMIȘOARA
UNIVERSITATEA “IOAN SLAVICI” TIMIȘOARA
FACULTATEA DE INGINERIE
DOMENIUL CALCULATOARE ȘI TEHNOLOGIA INFORMAȚIEI
FORMA DE ÎNVĂȚĂMÂNT – ZI
Aparat pentru evaluarea
și testarea
senzorilor de temperatură
CONDUCĂTOR ȘTIINȚIFIC
Conf.univ. dr. STANCIU RAREȘ
ABSOLVENT
PAULESCU DANIEL – ALIN
2016
Capitolul I
1. Noțiuni Generale
1.1. Introducere
Titlul proiectului meu este “Aparat pentru evaluarea si testarea senzorilor de temperatura”. Am ales această temă deoarece, la firma în care lucrez, m-am lovit de necesitatea verificării senzorilor de temperatură folosiți în fabricația repartitoarelor de costuri, pentru energie termică.
Repartitorul de costuri este un aparat care are rolul de a măsura consumul de energie termică, la nivelul fiecărei încăperi dotate cu radiator de căldură, din cadrul unui imobil cu încălzire centrală. Principiul de măsura se bazează pe estimarea transferului de energie termică dintre sursa de căldura (radiator) si aerul din încăperea respectivă, atunci când sunt cunoscute temperaturile celor două. Pentru o estimare corectă este necesară și o cunoaștere cât mai exactă a caracteristicilor termice ale radiatorului pe care se montează repartitorul respectiv. Precizia de măsurare a celor două temperaturi are și ea un rol determinant în acuratețea măsurătorilor.
. Deoarece repartitoarele de costuri sunt produse din categoria celor de larg consum, în fabricarea acestora se urmărește obținerea unui preț de cost cât mai scăzut, cu condiția păstrării performanțelor tehnice impuse de normele in vigoare. În mod uzual, pentru măsurarea temperaturilor în cazul repartitoarelor de costuri, se folosesc elemente a căror rezistență electrică depinde de temperatura la care sunt expuse, cum ar fi termistoarele sau termo-rezistoare cu pelicule metalice.
Termistoarele prezintă, pe de-o parte anumite avantaje, cum ar fi sensibilitatea ridicată și prețul de cost scăzut. În schimb, dependența rezistenței electrice funcție de temperatură este puternic neliniară iar precizia de fabricație este destul de redusă.
Termo-rezistoarele sunt mai scumpe dar mult mai precise, atât ca toleranțe inițiale de fabricație cât și ca stabilitate a parametrilor în timp. Cele mai cunoscute sunt cele cu platină, unde elementul rezistiv este fie un fir sau o pelicula din aliaj pe baza de platină. Acest tip de senzor de temperatură se caracterizează prin dependența aproape liniara a variației rezistenței electrice cu temperatura. Deoarece repartitoarele, pe care le produce firma în cadrul căreia lucrez, sunt echipate cu traductori de temperatură din aceasta din urmă categorie, voi insista asupra acestui tip de senzori.
1.2. Temperatura. Scări de temperatură. Măsurarea temperaturii
1.2.1. Temperatura
Temperatura este mărimea fizică ce caracterizează încălzirea materiei (corpurilor), măsurând gradul de agitație termică a particulelor care formează acel corp.
Temperatura termodinamică face parte dintre cele șapte mărimi fundamentale care formează Sistemul Internațional de Unități (SI). În tehnică, unitatea de măsură a temperaturii termodinamice este kelvinul, iar simbolul este K.
Pe baza principilor termodinamicii, temperatura se poate definii cu ajutorul unei scări având un singur punct fix. Wiliam Thomson a propus această scară în anul 1854, sub denumirea de scara termodinamică de temperatură.
Gradul Kelvin [K] are ca interval aceeași mărime pe scara temodinamicii ca și gradul Celsius. Pentru scara de temperatură Kelvin valorii 273,15 îi corespunde punctul de topire al gheții iar valorii 373,15 îi corespunde punctul de fierbere al apei.
Relația de legătură între gradul Kelvin și gradul Celsius este :
Gradul Celsius reprezintă unitatea de diviziune a scării Celsius, unde valoarea zero o reprezintă punctul de topire a gheții, iar valorii 100 i s-a atribuit punctul de fierbere al apei, ambele la o presiune de o atmosferă.
Gradul Fahrenheit reprezintă unitatea scării de temperatură Fahrenheit, unde temeratura de 32 grade Fahrenheit reprezintă punctul de topire al gheții iar temperaturii de 212 grade Fahrenheit îi corespunde punctul de fierbere al apei.
Relația de legătură între gradul Celsius și gradul Fahrenheit este :
1.2.2. Scări de temperatură
Scara Celsius această scară a fost stabilită în anul 1736 de Anders Celsius, în urma a numeroase încercări. Această scară a fost adusă la forma actuală de către Carl von Linne’ dar a rămas sub numele de Celsius, iar temperatura măsurată cu această scară este în grade Celsius
Scara Kelvin sau scara temperaturii absolute a fost introdusă în anul 1892 de către Lord Kelvin of Largs, în scopul eliminării particularităților termometrelor care se foloseau până atunci. Temperatura absolută este una din mărimile fizice fundamentale ale Sistemului Internațional de Unități. Valoarea zero a scării absolute reprezintă -273,15 , temperatura la care moleculele unui gaz nu mai au energie cinetică de translașie.
Scara Internațională de Temperatură (SIPT – 68 ) a apărut în urma nevoii de a exista o scară practică în care măsurarea temperaturii să fie: ușor de relizat, mai exactă și foarte ușor de reprodus. Conține temperaturi cumprinse între 13,8 K și 6300 K.
1.2.3. Măsurarea temperaturii
Temperatura a două sau mai multe corpuri poate fi comparată, fără a le pune în contact termic direct, ci folosind un alt corp care se numește corp termometric. Dispozitivul care are în componența sa un corp termometric, poartă denumirea de termometru sau în sens mai larg îl putem numi instrument termometric.
Instrumentul termometric trebuie să aibă următoarele caracteristici:
-să fie comod de utilizat
-să aibă o precizie ridicată
-să nu aducă modificări asupra temperaturii sistemului pe care vrem să o măsurăm
Câteva exemple de instrumente termometrice în funcție de proprietatea corpului termometric :
a) Termometre care au la bază variația cu temperatura a volumului corpului termometric.
b) Termometre care au la baza principiului de funcționare variația cu temperatura a presiunii corpului termometric, care poate să fie volum de gaz, vapori sau lichid.
c) Termometre care au la baza principiului de funcționare variația cu temperatura a proprietăților eletrice care caracterizează corpul termometric: variașia rezistenței electrice în funcție de temperatură.
d) Termometre care au la baza principiului de funcționare variația cu temperatura a vitezei sunetului în corpul termometric.
În acest proiect pentru măsurarea temperaturii s-au folosit corpuri termometrice care la baza principiului de funcționare stă variația rezistenței în raport cu temperatura.
Pentru verificarea funcționării și punerea la punct a aparatului, precum și la efectuarea verificărilor ulterioare asupra diferiților traductori care au fost testați cu ajutorul acestuia, am folosit un termometru electronic de înalta precizie de tip Testo 735-2 .
1.3. Termometrul Testo 735
Testo 735-2 (figura 1.1) este un termometru digital, multi-canal și poate fi utilizat într-o varietate de domenii. Acesta poate măsura temperatura de suprafață, temperatura aerului și temperatura unei game largi de medii, cu o precizie de până la 0,05 °C (folosind traductorul de mare precizie) si o rezoluție a măsurătorii de 0.002 °C. Poate fi conectat in rețea wireless cu încă trei senzori de temperatură externi, ale căror valori sunt receptionate si afisate pe ecran.
Termometrul Testo 735-2 permite efectuarea de măsurători rapide și precise de temperatură, putând totodată să salveze rezultatele a până la 10.000 de măsurători care pot fi efectuate la intervale programabile intre 0,5 secunde și 24 de ore. Cu ajutorul sofware-lui care este oferit de către producător se pot salva și analiza datele sub formă de tabele sau grafice.
1.4. Traductori de temperatură
Majoritatea traductorilor de temperatură cu platină se fabrica astăzi prin tehnologia peliculelor subțiri, fapt care permite, pe lângă un preț de cost rezonabil pentru producția de serie mare, si o miniaturizare a acestora, făcându-i compatibili cu tehnicile moderne de fabricare și asamblare (SMD) a plăcilor electronice.
De exemplu un traductor PT1000 in tehnologie SMD, capsula 1206 are dimensiunile de 3 x 1.5mm si grosimea de 0,5mm, fiind considerat totuși o componentă de dimensiuni mari pentru gradul actual de miniaturizare (figura 1.2).
Dependența rezistenței electrice cu temperatura
Așa cum am amintit, la acest tip de traductor, dependența rezistenței electrice cu temperatura este aproape liniară. O descriere mai exacta a acestei dependențe , valabilă pentru traductoarele cu platină și pentru temperaturile care depasesc 0°C este data de ecuația Callendar–Van Dusen:
Unde
este rezistenta corespunzatoare temperaturii t [°C]
este rezistenta nominala definită la 0°C.
În cazul temperaturilor sub 0 °C relația se complică prin introducerea unui termen de gradul al treilea. Pentru temperaturi pozitive acesta poate fi neglijat.
Se observa din figura 1.3 că deși curba care descrie dependența rezistenței funcție de temperatură, corespunde unei funcții de gradul al doilea, deoarece coeficientul B, corespunzător termenului de gradul al doilea are o valoare foarte mică , graficul dependenței se apropie destul de mult de o dreaptă. Deoarece estimarea temperaturii se face pornind de la măsurarea valorii Rt, aflarea lui t presupune aflarea uneia din rădăcinile ecuației corespunzătoare de gradul al doilea.
Pentru aplicațiile care necesită o precizie de măsurare mai redusă se poate folosi un coeficient mediu de temperatură, valabil pe un interval de temperatura relativ îngust. De exemplu, dacă se dorește măsurarea temperaturilor intre 0°C si 100°C se poate folosi un coeficient de temperatură mediu de aproximativ 3850 ppm/°C sau 0,38%/°C. În acest caz expresia temperaturii devine:
iar calculul temperaturii corespunzătoare unei anumite rezistente măsurate se face mult mai simplu. Datorită acestei aproximări sunt însă de așteptat erori absolute de temperatura de până la -0,4°K, in jurul valorii de 50°C unde distanța între dreaptă și curba reală este maximă.
Deoarece coeficientul de temperatură a unui traductor cu platină este relativ mic, este necesară o precizie destul de mare de măsurare a rezistenței electrice a acestuia. Micile erori de măsură în cazul rezistenței electrice pot duce la estimări mult eronate ale temperaturii reale a traductorului.
Cu toate că măsurarea cu precizie acceptabilă a mărimilor electrice nu este un lucru dificil la stadiul actual al tehnicii din domeniu, aflarea si verificarea dependenței acestora cu temperatura, impune o cunoaștere si un control permanent al acesteia din urmă, fapt mult mai dificil de realizat în practica.
Astfel, chiar dacă se dispune de un termometru de laborator foarte performant pentru măsurarea temperaturii, măsurarea acestei temperaturi exact in locul si la momentul potrivit, poate deveni un fapt greu de pus in practică. Deoarece, în cazul unui anumit mediu în care se desfășoară procesul de măsurare, temperatura nu este uniformă, apărând așa numite gradiente de temperatura care pot fi importante chiar între puncte aflate uneori doar la milimetri distanță unul față de celălalt și deoarece traductorul aparatului martor și cel care trebuie evaluat nu pot ocupa același loc in spațiu in același timp, este greu de spus dacă valoarea raportată de aparatul de referința reflecta cu adevărat condițiile resimțite de senzorul aflat sub test.
1.5. Metode de testare a senzorilor
Pentru a crea un volum cu o temperatura cât mai uniform distribuită este necesară utilizarea unui mediu special. În practică se folosesc in acest scop :
a) băi lichide (apa, uleiuri, săruri în soluție sau în stare topită care sunt agitate permanent cu ajutorul unui sistem de pompare pentru uniformizarea temperaturii)
b) corpuri solide de obicei din metale bune conductoare de căldura (cupru sau aluminiu) care pot sa asigure un gradient neglijabil de temperatură între diferitele zone ale volumului acestora, tehnica fiind denumită prin termenul de „dry block system”.
În ambele cazuri este neapărat necesară și o izolare termică cât mai bună față de mediul înconjurător, pierderile de căldura fiind de fapt cauza apariției neuniformitaților in distribuția temperaturii.
Pe de altă parte, trebuie luată în considerare și viteza de răspuns a diferitelor traductoare de temperatură. La introducerea unui traductor de temperatură într-un mediu a cărui temperatură trebuie măsurată va avea loc un schimb de căldură între mediu și traductor până ce temperatura acestuia din urmă va fi aproximativ egală cu ce a mediului respectiv. Am folosit exprimarea „aproximativ egală” deoarece, cel puțin teoretic, cele două temperaturi nu vor ajunge niciodată sa fie egale. Acest fapt se datorează faptului ca transferul de căldura dintre două corpuri depinde de diferența de temperatura intre acestea.
Pe măsura ce temperaturile se egalizează, intensitatea transferului de căldura scade și de fapt temperatura traductorului tinde asimptotic la cea a mediului respectiv. Acest lucru duce, chiar dacă după un anumit timp această diferență de temperatură între mediu și traductor poate fi neglijată, la o creștere semnificativă a timpului de răspuns al traductorului, timp care poate ajunge la câteva minute.
Deoarece va exista întodeauna o diferență între timpul de răspuns, al traductorului de referință și a celui aflat în curs de testare ( masa, construcție, cuplaj termic diferit), valorile de temperatură raportate de aceștia vor caracteriza temperatura măsurata la momente de timp diferite de fiecare în parte.
Pentru a face posibilă o comparație corectă între cei doi senzori este absolut necesar ca temperatura mediului sa ramană stabilă un timp suficient de lung încât timpul de răspuns al traductoarelor să nu afecteze măsurătorile. În concluzie, este necesară atât o uniformitate cât mai bună a temperaturii în mediul folosit pentru măsurare cât și o stabilitate excelentă a acesteia.
Pentru calibrarea senzorilor de temperatură este nevoie de un aparat ce poate ridica temperatura unei incinte la valoarea specificată/dorită. Un asemenea aparat se poate vedea în figura 1.4. Acest lucru poate fi realizat doar prin folosirea unui sistem automat, performant, de reglare si control al temperaturii dorite pentru efectuarea verificărilor.
Pe piața de profil, există o ofertă bogată de aparate, mai mult sau mai puțin performante, care pot fi folosite la evaluarea si verificarea traductoarelor de temperatură. Prețul acestora este destul de ridicat, fiind considerate aparate de laborator si echipamente de înalta precizie.
Deoarece firma pentru care lucrez are intenția de a fabrica prin mijloace proprii un stand pentru calibrarea senzorilor de temperatură, s-a hotărât ,în prima fază, realizarea unui prototip de mici dimensiuni și mai simplu din punct de vedere constructiv, care sa testeze fezabilitatea unui aparat de dimensiuni mai mari.
Pentru controlul precis al temperaturii am hotărât sa folosim un sistem de reglaj de tip PID, de concepție proprie , implementat pe un sistem cu microcontroler și o soluție mecanică de tip „DRY BLOCK”.
Capitolul II
2. Noțiuni teoretice
2.1. Introducere
Sistemul de reglare de temperatură realizat în cadrul acestui proiect urmărește realizarea unei valori de temperatură dorite într-o incintă izolată termic și menținerea acesteia la o valoarea constantă.
Întregul ansamblu este controlat numeric de către un microcontroller din familia PIC18F (PIC18F4620). Pentru menținerea temperaturii la valoarea dorită se utilizează o lege de reglare de tip Proporțional-Integrator-Derivativ (PID). În acest capitol se prezintă cunoștiințele teoretice necesare realizării acestui dispozitiv.
2.2. Microcontrollerul PIC 18F4620
În acest subcapitol este descris un microcontroller din familia PIC 18. Aceasta familie a fost preferata pentru ca asigura un compromis intre complexitatea chipurilor și capabilitatile acestora. S-a dorit descrierea unui chip puternic (in comparatie cu Intel8051) dar nu foarte complicat din punct de vedere constructive.
Dezvoltată de către Microchip, familia PIC 18 este destinată utilizării în proiecte de o complexitate mai ridicată. Echipate cu memorie flash si oferind posibilitatea programării direct pe placă (asa-numita “in-chip programming”) microcontrollerele acestei serii sunt de preferat lui Intel 8051 in multe proiecte. Existența magistralei SPI utilizată și de multe alte chipuri (termometre, memorii, convertoare analog-digitale si digital-analogice, atenuatoare de semnal, etc.) asigură o interfațare ușoară a acestuia. Pentru a veni și mai mult in sprijinul inginerilor, Microchip a dezvoltat o serie de microcontrollere foarte apropiată ca performanțe de un processor de semnal (seria dsPIC). Materialele bibliografice pentru acest paragraf includ cartile lui Ibrahim, Sanchez, Canton si Wilmshurst. O excelenta referinta este reprezentata de cartea a lui Di Jasio (si altii).
Trăsăturile familiei PIC 18 includ:
77 de instructiuni,
Compatibilitate a codului cu seria PIC 16,
Spațiu de memorie program pana la 2Mbytes,
Spațiu de memorie de date pana la 4Kbytes,
Nivele de prioritate de întreruperi,
Instrucțiuni pe 16-biti,
Întreruperi externe,
Convertor analog digital de 10 biti,
Porturi paralele,
Power-up timer (PWRT),
Power-on-reset (POR),
Oscillator start-up timer (OST),
Watchdog timer (WDT),
On-chip RC oscillator,
Programare “in-circuit”.
Unii membrii ai familiei pot oferi:
Interfața CAN 2.0,
USB,
TCP/IP,
Controlul motoareler electrice.
Microcontrelerul 18F4620 este un membru al familiei PIC 18. Are 40 de pini și 64KB de memorie flash. Microcontrollerul beneficiază de o arhitectura Harvard (cu magistrale separate pentru memoriile de program si de date), aceasta permitand accesutl la ambele zone de memorie in acelasi timp.
2.2.1.Memoria Program
Membrii familiei PIC 18 contin trei tipuri de memorie:
Memoria program,
Memoria de date RAM,
Memoria de date EEPROM.
Această familie are un registru Program Counter de 21 de biți. Microcontrollerul este capabil sa adreseze un spațiu de memorie de 2MB. În eventualitatea în care se încearcă accesarea unei locații de memorie ce nu este cuprinsă în intervalul 0-2MB va returna 0. Harta memoriei de program este prezentată în Figura 2.1.
Registrul PC specifică adresa instrucției ce urmeaza sa fie executată. Acesta este format din trei register numite PCL (PC – Low), PCH (PC – High) si PCU (PC – Upper). Pentru înscrierea unei valori in PC se utilizează registrul PCLATH (registrul PC nu este accesabil direct).
2.2.2.Memoria de date
Memoria de date este implementată ca RAM static. Fiecare locație are o adresa pe 12 biți. Numărul maxim de locatii de memorie este 4096. Acest spatiu este impartit in bancuri de memorie (fiecare avand 255 de locatii). Exista doua tipuri de registrii: Registrii cu Functii Speciale (SFR) si Registre cu destinație specială (General Purpose Register – GPR). Registrele SFR sunt utilizați pentru periferice (control si stare). Registrele GPR se utilizează pentru stocare de date și pentru operații. Accesarea unei locații de memorie neimplementate are ca rezultat valoarea 0. Memoria de date poate fi accesată direct, indirect sau indexat. Pentru a asigura accesarea celor două seturi de register (SFR si GPR) într-un singur ciclu-mașină Microchip a implementat asa-numitul Access Bank.
Registrul Bank Select
Pentru a asigura o cale facilă de acces al datelor familia PIC 18 implementează o schemă cu bancuri. Spațiul de memorie este împărțit în 16 bancuri de 256 locații. Fiecare locație este adresabilă cu o adresă de 12 biti. O adresă de 8 biți determină adresa în interiorul bancului în vreme ce restul de 4 biți vor specifica bancul în care se află adresa de memorie ce se dorește a fi accesată. Pentru accesarea memoriei de date cele mai multe instrucțiuni utilizează așa-numitul Bank Select Pointer (BSP). Numai biții BSR3 – BSR0 sunt implementați (ceilalti biti nefiind utilizati). Registrul BSR poate fi încărcat utilizând instrucțiunea MOVLB.
2.2.3.Memoria Flash
Memoria flash poate fi citită, scrisă și ștearsă. La citire se citește câte un octet. Scrierea se face în blocuri de 64KB. Aducerea instrucției (așa-numitul ciclu de fectch) este oprită în timpul citirii și scrierii memoriei pentru că memoria nu poate fi accesată înaceste momente. Microcontrollerul poate transfera date între memoria program și memoria de date RAM cu ajutorul a două instrucțiuni: Table Read (TBLRD) și Table Write (TBLWT). TBLWT utilizează un registru pentru a stoca dată în memoria RAM. TBLRD este plasează datele cu ajutorul registrului TABLAT. Modul de lucru al acestuia poate fi văzut în Figurile 2.2 și 2.3.
Regiștrii de Control
Microcontrollerul PIC utilizeaza cateva registre de control impreuna cu TBLRD si TBLWT:
EECON1,
EECON2,
TABLAT
TBLPTR
Registrul EECON1 este registrul de control pentru accesul memoriei (citire si scriere). Citirea registrului EECON2 are ca rezultat 0. Registrul TABLAT, localizat în spațiul destinat SFR, este utilizat pentru a reține octetul în procesul de transfer. Adresa de memorie este specificată de către registrul TBLPTR. Aceasta se formeaza (ca in figurile 2.2 si 2.3) cu ajutorul a trei regiștrii: TBLPTR LOW (TBLPTRL), TBLPTR HIGH (TBLPTRH) și TBLPTR UPPER (TBLPTRU). Microchip a implementat două instrucțiuni care utilizează registrul TBLPTR: TBLRD si TBLWT.
2.2.4. Porturile de intrare ieșire
Membrii familiei PIC 18 posedă până la 5 porturi paralele. Unele linii de port sunt multiplexate cu o funcție alternativă. Funcționarea fiecărui port paralel este guvernată de trei regiștrii:
• Registrul TRIS,
• Registrul PORT,
• Registrul LAT.
Registrul TRIS este utilizat pentru a specifica direcția în care circulă datele pe port (intrare sau ieșire). Registrul Data Latch (LAT) este utilizat de instrucțiunile de tip “read-modify-write” (citește-modifică-scrie). O structură tipică a unei linii de port se poate vedea in Figura 2.4.
Portul A
Acest port este bidirecțional pe 8 biți. Se utilizează împreună cu registrul de date TRIȘA și cu latch-ul sau LATĂ. Un bit 1 plasat în registrul TRIȘA că configura linia de port aferentă că o intrare în vreme ce un zero o va configura că ieșire. Citirea pinilor portului se face prin citirea efectivă a pinilor acestuia. Trimitera unei valori la port se face prin scrierea acesteia în registrul LATĂ.
Pinii portului A sunt multiplexati cu alte funcții. Astfel, pinii RA6 și RA7 ai portului A sunt multiplexati cu intrările oscilatorului. Pînul RA4 al portului A este multiplexat cu intrarea externă a temporizatorului T0. Ceilalți pini ai portului mai pot fi utilizați că intrări analogice ale convertorului analog digital.
Portul B
La fel că și portul POETĂ și PORTB este bidirecțional pe 8 biți. Se utilizează împreună cu registrul de direcționare TRISB și cu registrul latch LATB. Un bit al registrului TRISB setat pe 1 indică faptul că linia de port corespondență aceestui bit este o intrare. Un bit al registrului TRISB setat pe 0 indică faptul că linia de port corespondență aceestui bit este o ieșire. PORTB are module pull-up interne slabe. Acestea pot fi activate prin ștergerea bitului (bitul 7 din registrul INTCON2).
La configurarea liniilor de port că ieșiri, modulele de pull-up sunt activate automat. Liniile RB0-RB7 pot fi folosite pentru sursele de întreruperi externe. Pentru a genera o întrerupere externă pinii trebuie configurati că intrări. Valorile pinilor de intrare sunt comparate cu valorile vechi (reținute în registrul latch la ultima citire a portului). O diferența va genera o întrerupere prin schimbarea fanionului RBIF în registrul INTCON (INTCON.0).
Portul C
Similar cu porturile A și B și portul C este bidirecțional pe 8 biți. Se utilizează împreună cu registrul de direcționare TRISC și cu registrul latch LATC. Un bit al registrului TRISC setat pe 1 indică faptul că linia de port corespondență aceestui bit este o intrare. Un bit al registrului TRISC setat pe 0 indică faptul că linia de port corespondență aceestui bit este o ieșire. Liniile portului PORTC sunt multiplexate cu alte funcții. Bufferul portului are intrări Trigger-Schmidt.
Portul D
Similar cu porturile A și B și C, portul D este bidirecțional pe 8 biți. Se utilizează împreună cu registrul de direcționare TRISD și cu registrul latch LATD. Un bit al registrului TRISD setat pe 1 indică faptul că linia de port corespondență aceestui bit este o intrare. Un bit al registrului TRISD setat pe 0 indică faptul că linia de port corespondență aceestui bit este o ieșire. Bufferul portului are intrări Trigger-Schmidt. Trei dintre liniile portului PORTD sunt multiplexate cu alte funcții (Enhanced CPP).
Portul E
Pentru microcontrollere având 44 de pini, portul PORTE are 4 biți. Primii trei biți se pot configura ca intrări sau ieșiri. Bufferele posedă intrări Trigger Schmidt. Trei pini ai portului pot juca rol de intrări analogice. Citirea unei linii de port atunci când aceasta este configurată că intrare analogică are că rezultat 0.
2.2.5. Temporizatoarele
Temporizatorul T0
Temporizatorul T0 se poate folosi ca si temporizator sau ca numarator. Modulul este controlat din registrul T0CON. Structura acestui registru este prezentata in Figura 2.5.
Bitul TMR0CON activeaza (când este pus pe 1) sau dezactivează (când este pus pe 0) timerul T0. Bitul T08BIT configurează timerul pe 8 biți (când este pus pe 1) sau pe 16 biti (când este pus pe 0). Bitul T0CS selectează sursa de clock a timerului. Astfel cand T0CS este pus pe 1 sursa este o tranziție ce are loc la pin. Când T0CS este pus pe 0 sursa este oscilatorul intern.
Bitul T0SE selectează frontal (o tranzitie 1->0 atunci cand T0SE este setat pe 1 sau o tranziție 0->1 atunci cand T0SE este pe 0).
Bitul PSA selectează modulul de prescalare. Astfel când PSA este 1 nu există prescalare. Cand PSA este 0 modulul de prescalare este present (coeficientul de prescalare stabilindu-se din bitii T0PS2 – T0PS0). Modul în care lucrează acești biți este exemplificat în Tabelul 2.1.
În cazul în care prescalerul nu este introdus, temporizatorul își incrementează conținutul la fiecare ciclu-mașină. Modurile de lucru pe 8 biți și pe 16 biți sunt exemplificate in Figurile 2.6 si 2.7 (tot aici poate fi vazut si efectul bitilor din registrul T0CON).
Tabelul 2.1: Biții de selecție a prescalerului timerului T0
Modulul de prescalare
Modulul de prescalare este de fapt un numărător pe 8 biți. Valoarea acestuia este setată utilizând biții T0PS2 – T0PS0 din registrul T0CON (cum se poate vedea in Tabelul 2.1). Atunci când modulul lucrează împreună cu temporizatorul T0, toate instrucțiunile care scriu în registrul temporizatorului șterg conținutul modulului de prescalare.
Când temporizatorul T0 este plin se generează o întrerupere prin setarea bitului TMR0IF. Întreruperea temporizatorului poate fi mascată prin ștergerea bitului TMR0IE aflat în registrul INTCON. Dacă întreruperea este reactivată bitul TMR0IE trebuie șters de către software.
Temporizatorul T1
Temporizatorul T1 poate fi folosit pentru temporizare sau ca numărător sincron sau asincron. Modulul de temporizare incorporează un oscilator propriu. Acesta poate fi utilizat și în cazul în care se dorește trecerea microcontrollerului în modul “idle” sau “sleep” pentru a micșora consumul de energie. T1 este controlat de catre registrul T1CON. Structura acestui registru este prezentată in Figura 2.8.
Atunci când este setat, bitul RD16 permite scrierea/citirea registrului temporizatorului T1 într-o operație pe 16 biti. Când este șters, bitul RD16 permite scrierea/citirea registrului temporizatorului T1 in doua operatii pe 8 biti.
Bitul T1RUN precizeaza sursa de oscilatie a temporizatorului T1. Setarea acestui bit activează oscilatorul propriu al temporizatorului T1 iar resetarea comută intrarea de clock pe o altă sursă de oscilație.
Bitii T1CKPS1-T1CKP0 sunt destinati modulului de prescalare al temporizatorului T1. Modul în care aceștia lucrează este prezentat in Tabelul 2.2.
Bitul T1OSCEN activează oscilatorul temporizatorului T1 atunci când este setat. Oscilatorul este dezactivat daca T1OSCEN este șters.
Tabelul 2.2: Selecția prescalării pentru temporizatorul T1
Bitul este bitul de sincronizare cu tactul extern. Acesta lucrează atunci când bitul TMR1CS este setat (nefiind activ în caz contrar). Atunci când este active, bitul cauzează sincronizarea semnalului de tact extern dacă este 0.
Bitul TMR1ON activează/dezactivează temporizatorul dacă este setat/șters.
Bitul TMR1CS stabilește modul de lucru al temporizatorului T1. Astfel dacă TMR1CS este setat, temporizatorul își incrementează conținutul la fiecare front crescător al semnalului adus la pînul RC0/T1OSO/T13CKI. Dacă TMR1CS este șters, atunci sursă de oscilație a temporizatorului este internă având frecvența Fosc/4.
Temporizatorul este pornit/oprit cu ajutorul bitului TMR1ON. Setarea acestui bit pornește temporizatorul în vreme ce ștergerea acestuia oprește unitatea de temporizare. Structura temporizatorului T1 este prezentată în Figura 2.9.
Temporizatorul T1 poate fi configurat pentru citiri si scrieri pe 16 biti. Pentru aceasta programatorul trebuie sa seteze bitul T1OSCEN.
Temporizatorul T2
Temporizatorul T2 este un alt modul capabil de a genera o întrerupere. Ieșirea acestuia este conectată la intrarea unui modul de post-scalare de 4 biți. Schema bloc a temporizatorului T2 este prezentată în Figura 3.25. Acest temporizator este controlat cu ajutorul registrului T2CON. Acest registru permite activarea sau dezactivarea temporizatorului precum și configurarea modulelor de prescalare și post-scalare. Registrul T2CON este prezentat în Figura 2.11
Bitul cel mai semnificativ al registrului T2CON nu este implementat. Citirea acestuia produce rezultatul 0.
Biții T2OUTPS3, 2, 1, 0 sunt biții de configurare ai rmodulului de post-scalare (Tabelul 2.3). Bitul TMR2ON pornește (când este setat) sau oprește (când este șters) temporizatorul T2.
Bitii T2CKPS1, 0 sunt biții de configurare ai modulului de prescalare (Tabelul 2.4). Așa cum se arată în tabelul 2.3, modulul de post-scalare ofera 16 optiuni.
Temporizatorul T2 poate fi utilizat pentru generarea semnalul de tact pentru portul serial (Master Synchrounous Serial Port – MSSP).
Tabelul 2.3: Modul de lucru al modulului de post-scalare al temporizatorului T2
Tabelul 2.4: Modul de lucru al modulului de prescalare al temporizatorlui T2
Temporizatorul T3
La fel ca și temporizatorul T1 si temporizatorul T3 poate fi folosit pentru temporizare sau ca numărător sincron sau asincron. Acesta este controlat de catre registrul T2CON. Acest registru poate fi vazut in Figura 2.12.
Bitul RD16 bit de activarea citirii/scrierii pe o instrucțiune de 16 biti (atunci cand este setat) sau pe două instrucțiuni de 8 biți (când este șters),
Biții T3CCP2 si T3CCP2 sunt bitii de activare a Capturării/Comparării pentru modulele de temporizatare T1 si T3 (vezi Tabelul 2.5),
Biții T3CKPS1 si T3CKPS 0 sunt biții de selecție a modulului de prescalare a modulului de temporizare T3 (vezi Tabelul 2.6),
Bitul T3SYNC este bitul de sincronizare externă a modulului de temporizarer T3 (sincronizarea nu are loc cand acest bit este setat și are loc când este șters; nu este utilizabil atunci când semnalul de tact vine de la modulul de temporizare T1),
Bitul TMR3CS selecteaza semnalul de tact pentru modulul de temporizare T3 (front crescător al semnalului provenit de la modulul de temporizare T1 dacă este setat si semnal de tact intern dacă bitul este șters,
Tabelul 2.5: Modulele de temporizare și modulele de comparare
Bitul TMR3ON este bitul de pornire/oprire al modulului de temporizare T3 (activează modulul de temporizare când este setat si il dezactivează atunci când este șters).
Tabelul 2.6: Bitii de selecție a prescalarii pentru modulul de temporizare T1
2.2.6.Modul de Captură/Comparare/PWM
În aceast proiect se utilizează modularea în lățime de puls PWM pentru încălzirea incintei. Așa cum este sugerat in titlu, acest modul este capabil sa genereze un semnal PWM ce poate fi utilizat pentru varierea puterii de încălzire a aparatului prezentat.
Microcontrollerul PIC are inglobate doua asemenea CCP module. Fiecare modul are in component sa un registru de 16 biti si poate opera ca si modul de captura, de comparare sau PWM. Fiecare modul are un registru de control (CCP1CON si CCP2CON). Unii membrii au un al treilea modul denumit Enhanced CPP (acest modul nu este insa descris in aceasta carte). Registrul CCPxCON este prezentat in Figura 2.13.
Tabelul 2.7: Configurația modulului CCP
Cei mai semnificativi doi biti nu sunt implementați în acest registru. Bitii DCxB1 si DCxB0 asa-numitii biti de “duty cycle”. Sunt utilizati numai in cazul in care modulul lucreaza ca modulator in latime de puls pe 10 biti si in acest caz sunt cei mai putin semnificativi biti (ceilalti 8 biti provin din registrul CCPRxL).
Biti CCPxM3, 2, 1, 0 selectează modulul de lucru al CCP (vezi Tabelul 2.7). Bitii DCxB1, 0 sunt utilizati numai in modul PWM.
Modul Captură
În acest mod regiștrii CCPRxH si CCPRxL captureaza valoarea pe 16 biti ai registrilor TMR1 si TMR3 atunci când un eveniment are loc la pinul CCPx. Pinul CCPx trebuie configurat ca o intrare. Captura poate fi făcută pe:
– Fiecare front căzător,
– Fiecare front crescător,
– Fiecare al patrulea front crescător,
– Fiecare al 16-lea crescător.
Acest mod de lucru poate fi selectat așa cum se arată în Tabelul 2.7 . Unitățile de temporizare ce se utilizeaza cu acest mode trebuie sa lucreze in modul de temporizare sau numarare sincronizata.
În modul de captură există patru setări pentru modulul de prescalare. Modulul de prescalare este șters atunci când modul captură este dezactivat sau cand modulul CCP este oprit.
Modul Comparare
În acest mod registrul CCPRx este comparat cu modulele de temporizare T1 sau T3. Când acestea sunt egale, pinul CCPx corespondent poate:
– Rămâne nemodificat,
– Oscila intre 0 si 1;
– Trece pe 1,
– Trece pe 0.
Modulele de temporizare ce se utilizează cu acest mod trebuie sa fie setate in modul temporizator sau numărător sincronizat (capturarea nu poate lucră în modul de numărare asincron). Pinul CCPx corespondent trebuie să fie configurat ca ieșire în registrul TRIS corespunzător.
Declanșatorul este un modul ce permite CCP aflat în modul comparare să pornească alte module (spre exemplu CCP2 poate declanșa o conversie analog numerică). Funcționarea în acest mod se poate vedea in Figura 2.15
Modul PWM
În acest mod de lucru modulul CCPx produce un semnal PWM cu o rezolutie de 10 biti. Pinul este multiplexat cu un latch si din această cauză, utilizatorul trebuie sa se asigure că acesta este setat in modul de ieșire. Perioada PWM este indicată de registrul PR2. Aceasta se poate calcula utilizând ecuația 2.1.
Registrul CCPRxL reprezintă valoarea de “duty cycle” (perioada activă) a semnalului PWM. Rezoluția maximă este 10 biti. Registrul CCPRxL conține 8 din cei 10 biți, ceilalti doi biți provenind din registrul CCPxCON. Perioada duty cycle se poate calcula dupa relația arătată în ecuația 2.2.
Registrul CCPRxH poate fi doar citit in modul PWM. O diagram-bloc reprezentând modul PWM este prezentată în Figura 2.15.
2.3. Controlerul de tip PID
2.3.1.Introducere
În cazul sistemelor de reglaj controlate nemijlocit prin gândirea si acțiunea directă a omului, acțiunile acestuia au un caracter preponderent intuitiv, dificil de transpus in limbaj matematic. De exemplu, în acțiunea de conducere a unui automobil pe drumul public, pe care multa lume o considera un fapt banal in ziua de astăzi, reușim sa menținem automobilul pe banda corespunzătoare de circulație, la viteza dorita si păstrând totodată o distanta de siguranța fata de celelalte vehicule din trafic precum si fata de eventualele obstacole apărute pe drum. O asemenea activitate este, în fapt, deosebit de complexă și necesita un număr impresionant de decizii care trebuie luate în fiecare clipă, lucru pe care creierul omenesc îl face, la prima vedere, fara eforturi deosebite.
Atunci când s-a încercat realizarea unor sisteme de reglare si control autonome, care să acționeze eficient fără intervenția directă a omului, a fost nevoie de găsirea unor principii teoretice care să guverneze acțiunea control si totodată sa poată fi definite prin relații clare, matematice. Unul din cele mai cunoscute astfel de sisteme imaginate este sistemul PID.
Acronimul PID vine de la cele trei prinipii constitutive ale acestui tip de regulator si anume „ Proportional – Integral – Derivativ”.
Controlerul de tip PID este cel mai des întâlnit sistem de reglaj în buclă închisă. Tehnicile PID au fost folosite în cadrul primelor regulatoare de turație mecanice încă de la apariția primelor motoare termice dar au devenit instrumente odată cu apariția regulatoarelor de proces, prin anii 1940.
Regulatoarele de tip PID reprezintă astăzi circa 95% din totalul buclelor de reglaj folosite în lume, în toate domeniile în care se folosesc regulatoare de proces. Regulatoarele PID pot există în variate forme constructive. Acestea pot există fie sub formă unor aparate dedicate, fabricate în sute de mii de unități în fiecare an, sau pot fi integrate că parte a unor sisteme speciale de control. formă unor. Controlul de tip PID este adeseori combinat cu funcții de tip logic, secvențial, de selecție și alte funcții simple în realizarea unor sisteme complicate folosite în producerea de energie, transporturi, industrie, etc. Se poate afirmă că tehnicile de reglaj PID constituie unul din elementele de baza din „ trusa de scule” a fiecărui inginer automatist. Controlerele PID au supraviețuit nenumăratelor schimbări care au avut doc, pe plan tehnologic, în decursul anilor, de la sisteme pur mecanice și pneumatice și până la microprocesoare, trecând prin tehnologiile bazate pe tuburi electronice, apoi transistoare și în cele din urmă circuite integrate. Apariția microprocesoarelor și apoi a microcontrolerelor a avut o influență dramatică asupra controlerelor PID, care sunt practic toate bazate, astăzi, pe utilizarea acestora.
Așa cum am arătat mai sus, un sistem de reglaj PID conține cele trei componente care îi dau și numele. În fapt, există multe sisteme de control în care coexistă doar unele din elementele de baza ale acestuia. Astfel, pot există sisteme de reglaj de tip doar proporțional, doar integral, precum și combinații ale acestora cum ar fi PI sau PD, sistemul Proporțional – Integral – Derivativ fiind cel mai complex dintre ele.
2.3.2.Componentele sistemului PID
a. Regulatoare cu acțiune proporțională (de tip P)
“Aceste regulatoare stabilesc între mărimea de ieșire xc(t) și mărimea de intrare ε(t) o relație de dependență proporțională descrisă de :
,
unde KR este factorul de amplificare al regulatorului.
În figura 2.16. este reprezentat răspunsul la intrare treaptă al unui regulator de tip P. Mărimea de comandă va avea o variație tot sub formă de treaptă, dar amplificată cu factorul KR.
b. Regulatoare cu acțiune integrală (de tip I)
Aceste regulatoare stabilesc între mărimea de ieșire xc(t) și mărimea de intrare ε(t) o relație de dependență descrisă de :
.
Mărimea xc(t) depinde de integrala în timp a erorii ε(t). Constanta Ti se numește constantă de integrare și are dimensiunea timp.
În figura 2.17 este reprezentat răspunsul la intrare treaptă al unui regulator de tip I.
Derivând în funcție de timp relația , se obține:
Rezultă că la regulatorul de tip I viteza de variație a mărimii de comandă este proporțională cu eroarea, factorul de proporționalitate fiind inversul timpului de integrare.
Răspunsul regulatorului de tip I la intrare treaptă este un semnal rampă cu coeficientul unghiular:
.
Parametrul ajustabil al regulatorului I este timpul de integrare care poate fi variat în diverse limite, de la ordinul fracțiunilor de secundă până la zeci de minute, în funcție de tipul regulatorului, pentru procese rapide sau procese lente.
Regulatoarele de tip I sunt rar utilizate datorită întârzierilor pe care le introduc. Se aplică atunci când se dorește eroare staționară nulă și nu există alte elemente ale sistemului de reglare automată care să permită aceasta.
c. Regulatoare cu acțiune proporțional integrală (de tip PI)
Aceste regulatoare reprezintă o combinație între un regulator de tip P și unul de tip I și stabilesc între mărimea de ieșire xc(t) și mărimea de intrare ε(t) o relație de dependență descrisă de :
.
Factorii KR și care caracterizează cele două componete ale răspunsului regulatorului pot fi modificați independent unul de celălalt.
Relația mai poate fi scrisă și:
,
unde este constanta de timp de integrare a regulatorului. Ea prezintă avantajul că factorul de proporționalitate KR intervine atât în componenta proporțională cât și în componenta integrală, astfel că modificarea lui KR permite modificarea ambelor componente. Aceasta corespunde condițiilor constructive reale ale celor mai multe regulatoare de tip PI.
În figura 2.18 este reprezentat răspunsul la intrare treaptă al unui regulator de tip PI.
Datorită posibilității de combinare a celor două acțiuni, proporțională și integrală, prin modificarea simultană a celor două constante, regulatoarele PI permit obținerea de caracteristici superioare în realizarea legilor de reglare.
d. Regulatoare cu acțiune proporțional derivativă (de tip PD)
Aceste regulatoare, similar celor de tip PI, reprezintă o combinație între un regulator de tip P și unul de tip D și stabilesc între mărimea de ieșire xc(t) și mărimea de intrare ε(t) o relație de dependență descrisă de :
,
unde factorul Td se numește constantă derivativă și are dimensiunea timp.
Similar ca la regulatoarele PI, relația poate fi scrisă și:
,
unde factorul se numește constantă de timp derivativă a regulatorului și are dimensiunea timp.
În figura 2.19 este reprezentat răspunsul la intrare treaptă al unui regulator de tip PD.
Din aceleași considerente ca la regulatoarele PI, se preferă ca dependența determinată de regulatoarele PD să fie exprimată prin a doua relație, deoarece din punct de vedere constructiv, prin modificarea factorului KR este permisă și modificarea constantei de timp derivative. Unele regulatoare sunt prevăzute cu dispozitive care permit variația simultană a lui KR și a lui TD, astfel ca produsul KR·TD să rămână constant.
Analizând răspunsul la intrare treaptă al unui regulator PD se observă ca acțiunea componentei derivative se manifestă numai la momentul inițial, când are loc saltul mărimii de la intrare. Prezența componentei derivative care apare la momentul inițial și este de scurtă durată, are ca efect o accelerare a regimului tranzitoriu și deci o reducere a acestuia. Comparativ cu regulatoarele de tip P sau cele de tip I, aceste regulatoare permit posibilități mai largi de realizare a legilor de reglare.
e. Regulatoare cu acțiune proporțional integrală derivativă (de tip PID)
Aceste regulatoare sunt cele mai complexe regulatoare cu acțiune continuă, care asigură performanțe de reglare superioare, atât în regim staționar cât și în regim tranzitoriu. Ele înglobează efectele proportional P, integral I și derivativ D expuse mai sus, conform legii de reglare:
+.
Dacă se ține seama de realizarea constructivă a regulatorului, relația poate fi scrisă:
.
Răspunsul la intrare treaptă al unui regulator de tip PID este reprezentat în figura 2.20. în care se observă prezența celor trei componente P, I și D:
Regulatoarele PID au trei parametri ajustabili KR, TI, TD, ceea ce asigură posibilități mult mai largi în asigurarea legilor de reglare decât la oricare din regulatoarele descrise anterior și explică performanțele superioare ale sistemelor de reglare automată prevăzute cu aceste regulatoare. Evident că regulatoarele PID au construcții mai complexe și necesită o acordare atentă a valorilor celor trei parametri.
Pentru a evidenția influența tipului de regulator asupra comportării SRA, în figura 2.21 au fost trasate răspunsurile în timp ale mărimii de ieșire dintr-un SRA, xe(t), pentru o variație treaptă a mărimii de intrare xi, în condițiile în care sunt utilizate regulatoarele P, PI, PD și PID.
Comparându-se curbele de răspuns din figura 8, se pot face următoarele aprecieri:
• regulatorul de tip P reduce apreciabil suprareglajul, conduce la un timp tranzitoriu scurt, dar introduce o eroare staționară εst mare;
• prin introducerea componentei I, regulatorul de tip PI anulează eroarea staționară la intrare treaptă, însă duce la un suprareglaj mai mare decât la regulatorul P și la o valoare mare a timpului de răspuns;
• prin introducerea componentei D regulatorul de tip PD îmbunătățește comportarea dinamică (suprareglajul σ și durata regimului tranzitoriu sunt mici), însă menține o eroare staționară mare;
• regulatorul de tip PID, combinând efectele P, I și D, oferă performanțe superioare atât în regim stationar, cât și în regim tranzitoriu."
În Fig. 2.22 se poate vedea o schemă bloc care explică funcționarea unui sistem de control PID
Pentru o funcționare corectă, un regulator PID trebuie configurat în mod corespunzător. Acest lucru presupune o ponderare optima a celor trei factori de amplificare corespunzători celor trei componente: P, I si D. O configurare defectuoasă poate duce la efecte nedorite, cum ar fi un timp de stabilizare mult prea lung al valorii de la ieșirea sistemului, supracreșteri sau oscilații ale acesteia, saturarea ieșirii la o valoare maximă sau minimă, etc.
Operația de punere la punct a parametrilor de funcționare, așa numitul „tuning” este adeseori dificilă si impune, adeseori, un număr important de încercări si re-iterații ale acesteia.
Se impune, de asemenea si o cunoaștere bună atât a teoriei de funcționare a regulatorului PID cat si a parametrilor si particularităților sistemului care trebuie controlat de acesta.
De exemplu, există diferențe majore între reglarea temperaturii unui ciocan de lipit cu o masă termică relativ mică și ținerea sub control a temperaturii mediului dintr-o încăpere de mari dimensiuni, unde fenomenele care pot să apară sunt mult mai complexe și timpii de răspuns sunt dependenți de o multitudine de factori, uneori imprevizibili. În anumite cazuri se dorește o reacție cât mai rapidă a sistemului la schimbarea factorilor determinanți ai procesului. În alte situații, se urmărește o funcționare cât mai precisă, adică o valoare de ieșire cât mai apropiată de cea prescrisă precum și lipsa oscilațiilor în funcționare.
2.4. Conversia în format numeric a unei legi de reglare analogice
Pentru aplicația de reglare a sistemului de încălzire a fost ales un controller de tip Proportional-Integrator-Derivativ. Motivul principal în alegerea acestui controller este posibilitatea de asigurare a unei erori cât mai mici, atfel încât eroarea să tindă la zero. Simularea funcționării sistemului cu acest controller s-a facut in Matlab dar și în mod practic. Valorile pentru constantele controllerului s-au stabilit cu ajutorul simulării, acestea fiind : , și . Funcția de transfer a controllerului este reprezentată de ecuația de mai jos:
(2.4.1)
Pentru a putea fi implementat în limbajul C, controllerul trebuie exprimat în formă discretă. Iar pentru transformarea în formă discretă se utlizează ecuația:
(2.4.2)
Pentru controllerul ales:
(2.4.3)
Deci:
În ultima ecuație T este intervalul de ețantionare. Ca urmare:
(2.4.5)
Deci:
(2.4.6)
Considerând că ieșirea controllerului este :
(2.4.7)
Ieșirea controllerului depinde de prezența erorii calculate (ecuația 2.4.7). În fiecare perioadă, microcontrolerul PIC va calcula eroarea existentă și tensiunea necesară, ce trebuie să fie aplicată asupra sistemului de încălzire (becul), în scopul reducerii acestei erori.
2.5. Comanda în tehnica Pulse Width Modulation (modulare în lățime de puls
Ca element de încălzire s-a folosit un bec cu halogen, miniatural, cu incandescență de 12V/50W. S-a optat pentru acest mod de încălzire deoarece prezintă o serie de avantaje cu ar fi:
timp de răspuns foarte mic
inerție termică neglijabilă
dimensiuni reduse
preț de cost foarte mic, fiind disponibil în orice magazin de profil
Pentru a putea aplica un control proporțional al temperaturii, este necesară o putere variabilă la ieșirea regulatorului, acest lucru a fost realizat prin tehnica modulației în durată a impulsurilor (PWM).
Ideea este de a aplica becului pulsuri periodice de tensiune egală cu tensiunea de alimentare (Fig.2.23). Modificarea lățimii acestor pulsuri va determina modificarea tensiunii medii aplicate becului și deci a puterii acestuia.
Curentul ce trece prin bec nu va fi constant în cazul utilizării tehnologiei PWM. În perioada tON acesta va crește. În timpul rămas până la încheierea unei perioade T curentul se va închide prin elemente de putere prevăzute în circuit (tranzistoare de putere). Ca valoare, acesta va scădea în timp. Tensiunea aplicată becului va fi deci:
(2.5.1)
În ecuația 2.5.1 s-a notat tensiunea aplicată becului cu U, iar tensiunea de alimentare a întregului ansamblu cu V. Se poate vedea ușor că tensiunea aplicată becului este direct proporțională cu durata de timp tON. Metoda de alimentare bazată pe tehnica PWM presupune tocmai modificarea acestui interval de timp care va conduce la modificarea tensiunii aplicate becului. Când tON= 0, tensiunea aplicată becului va fi nulă. Când tON= T, ea va fi V.
Practic, becul este alimentat cu o succesiune de impulsuri cu frecventa de 1.2 KHz si amplitudinea de 13V. In funcție de factorul de umplere al acestor impulsuri, puterea medie radiata de bec poate fi variata de la 0 la 100%.
Generarea unui semnal PWM se poate realiza digital, analog sau combinat. O metodă simplă de generare a lui presupune programarea corectă a unui modul PWM specializat existent într-un microcontroler. În cazul în care modulul PWM lipsește, el se poate genera prin mai multe metode, o parte din acestea fiind descrie mai jos.
Folosirea a două module de temporizare dintr-un microcontroler
Generarea unui semnal PWM este posibilă cu ajutorul a doua module de temporizare dintr-un microcontroler. Unul dintre temporizatoare este responsabil pentru cronometrarea perioadei T în vreme ce al doilea este responsabil de cronometrarea duratei tON. Programul ce folosește modulele de temporizare lucrează în tehnica întreruperilor. Când se dorește modificarea tensiunii aplicate becului se acționează asupra conținutului numărătorului responsabil de durata tON. Modul de lucru se poate vedea în Fig.2.24 (modulul de temporizare T0 este responsabil de generarea perioadei PWM).
La momentul marcat cu 1 (Fig.2.24) T1 va genera o cerere de întrerupere. În subrutina de deservire a acesteia, T1 va fi oprit și becul va fi alimentat (pinul/pinii responsabili de pornirea acestora sunt activați). Ambele module de temporizare se vor încarcă și vor porni. Modulul de temporizare T0 va termina temporizarea mai repede fiind destinat să temporizeze o durată mai mică (momentul 2 în Fig.2.24). În acest moment va genera o întrerupere. În subrutina de deservire a acesteia, T0 va fi oprit și pinii responsabili de alimentarea becului vor fi dezactivați.
Generarea unui semnal PWM utilizând scheme hardware
Un al doilea mod de generare a unui semnal PWM folosește un microcontroler (sau PC) împreuna cu o parte hardware externă. Un convertor digital analogic va fi folosit pentru a transforma o secvență numerică într-un semnal analogic. Semnalul analogic este comparat cu un semnal în dinți de fierăstrău de către un comparator. Ieșirea acestui comparator este folosită spre a comanda elementele de putere. Tensiunea obținută la ieșire variază prin modificarea secvenței numerice aplicată la intrarea convertorului numeric analogic (Fig.2.25). Este important de subliniat faptul ca în acest caz ieșirea blocului ce reprezintă convertorul numeric analogic este o tensiune.
Datorită faptului ca aceste cipuri ce realizează conversia numeric analogică au ca mărime de ieșire un curent, este important de reținut faptul că se poate utiliza un amplificator operațional pentru a transforma mărimea de ieșire într-o tensiune (Fig.2.26 consideră că acest lucru este deja implementat).
În ceea ce privește alimentarea becului care încălzește întreg sistemul semnalul PWM este generat de către microcontroler prin unul din porturile sale specializate. Ca element de putere care să comute curentul consumat de bec se folosește un tranzistor MOS cu canal N. Avantajul acestui mod de control al puterii consta in faptul ca se poate realiza un reglaj foarte fin al puterii de ieșire cu un randament energetic foarte bun.
Odată programat pentru a genera o anumită frecvență și factor de umplere, blocul PWM funcționează complet autonom, fără intervenția programului, până când se dorește schimbarea parametrilor semnalului la ieșirea acestuia.
În cazul acestei aplicații, frecvența rămâne întodeauna constantă, la 1.2KHz. Schimbarea factorului de umplere se face printr-o singură instrucțiune din program, de regula la fiecare 10 secunde, atunci cand funcția PID efectuează o nouă ajustare a sistemului.
Un al doilea canal PWM , împreună cu tranzistorul MOS de putere corespunzător, a fost prevăzut pentru comanda elementului de răcire. Pentru răcire s-a folosit un dispozitiv static de tip PELTIER, asemănător cu cele folosite la frigiderele auto si de voiaj. Deși funcția de răcire a fost testată cu succes din punct de vedere funcțional, acest mod de lucru nu a fost inca implementat in software, deoarece necesită un studiu mai amănunțit al problemelor care apar în acest caz. În stadiul actual, aparatul poate crea condiții de temperatura controlată doar pentru valori care depășesc temperatura ambiantă și care pot fi atinse doar prin procese de încălzire controlată și răcire liberă.
Atât pentru funcționarea in regim de răcire cu ajutorul dispozitivului PELTIER cât și pentru cazul in care se dorește o răcire prin ventilație forțata a sistemului termic, s-a prevăzut si un sistem de control a turației unor ventilatoare. În acest caz, deoarece există doar două canale PWM dedicate disponibile la acest tip de microcontroler, s-a emulat un semnal PWM folosind un „timer” intern si o funcție software corespunzătoare Deși este perfect funcțional nici sistemul de ventilație nu este încă utilizat în actuala implementare software.
Capitolul III
3. Realizarea practică a aparatului pentru evaluarea și testarea senzorilor de temperatură
3.1. Schema bloc a aparatului
Microcontrollerul este „creierul” aparatului de testare, el comandă întreg procesul de măsurare și reglare a temperaturii. Prin intermediul interfeței seriale microcontrollerul comunică cu PC-ul, primind de la acesta software-ul cu toate instrucțiunile necesare funcționării aparatului.
Microcontroler-ul are memorat un program de tip „bootloader” într-o pagină protejată a memoriei FLASH a acestuia. Programul respectiv, numit Tiny Bootloader de către autorul acestuia, este o aplicație deosebit de compactă (tot codul are 100 de bytes) care la pornirea sistemului încearcă să se conecteze la un calculator (PC) prin intermediul interfeței seriale, intrând in legătura cu aplicația parteneră care rulează pe acesta. Dacă se dorește încărcarea microcontrolerului cu un firmware nou, bootloaderul preia noul cod obiect prin portul serial și-l inscrie în memoria FLASH. După aceasta se lansează în execuție codul nou încărcat. Dacă calculatorul nu trimite nimic spre microcontroler în primele secunde, acesta lansează în execuție vechiul program memorat. Încărcarea unui nou program in microcontroler durează cel mult câteva secunde, fapt care permite testarea rapidă, aproape interactivă, a oricărei modificări adusa codului sursă.
Următorul pas îl reprezintă setarea temperaturii, acest lucru se face folosind tastatura minimală formată din 4 butoane. Două dintre butoane permit creșterea temperaturii prescrise in pași de câte un grad, respectiv câte o zecime de grad Celsius, până la o valoare maximă (impusă prin software) de 110°C. Celelalte două butoane permit reglarea in jos a temperaturii, după același principiu, pana la 0°C.
Apăsarea oricărei taste va iniția si o operațiune de reîmprospătare a informației afișate pe LCD deoarece se poate presupune că s-a modificat, prin aceasta acțiune, temperatura prescrisă (care este vizibilă in mod permanent pe LCD).
După ce s-a setat temperatura la care va ajunge aparatul, un prim pas îl implică măsurarea temperaturii inițiale a corpului, apoi este acționat sistemul de încălzire al aparatului (în cazul în care temperatura dorită este mai mare decât temperatura mediului ambiant), aplicându-se sistemul de reglare PID.
Element de încălzire care s-a folosit un bec cu halogen, cu incandescență de 12V/50W. Practic încălzirea se face prin radiație infraroșie, fără contact direct între elementul de încălzire si cilindrul metalic din aluminiu ( corpul termic) care trebuie adus la temperatura dorită.
3.1.1 Măsurarea și reglarea temperaturii aparatului
Măsurarea temperaturii reale a corpului termic se face cu ajutorul unui traductor de temperatura tip PT500. După cum sugerează si denumirea acestuia, este vorba de un termo-rezistor cu platină care are valoarea nominală de 500Ω la 0. Din punct de vedere constructiv acesta este o componenta de foarte mici dimensiuni, având o masa termica infima si un timp de răspuns foarte scurt.
Pentru a reduce cât mai mult întârzierile in măsurarea temperaturii corpului termic, acest traductor a fost cuplat cât mai strâns, din punct de vedere termic, cu acesta. Pentru evaluarea precisă a temperaturii este necesară o măsurare precisă a rezistenței electrice a acestui traductor. În acest scop s-a folosit un circuit de măsura realizat cu ajutorul unui convertor analog digital de înaltă precizie de tip MCP3551, fabricat de MICROCHIP.
Schema de principiu a acestui circuit este prezentata in Fig 3.2.
Convertorul MCP3551
Circuitul MCP3551 este un convertor analog digital delta-sigma cu o rezoluție de 22 de biți (inclusiv semnul). Schema de aplicație aleasa se caracterizează prin simplitate si prin faptul ca este insensibilă la valoarea si variațiile tensiunii de referință, constituind un așa numit sistem de măsura ratiometric. Singurul element care trebuie dimensionat si cunoscut cu precizie, in acest circuit, este rezistorul .
Microcontrolerul comunică cu circuitul integrat MCP3551 prin interfata SPI. În principiu, aceasta comunicație se rezumă la inițierea unei noi măsurători printr-o comandă dată de către microcontroler, urmată, după finalizarea conversiei, de citirea rezultatului. Deoarece timpul de conversie al lui MCP3551 este sub 100ms, se pot efectua circa 10 măsurători pe secundă. În fapt, valoarea măsurata de către convertorul analog-digital este cea corespunzătoare căderii de tensiune pe traductorul de temperatură, . Aflarea valorii rezistenței traductorului de temperatura se face folosind formula urmatoare:
Unde code este rezultatul conversiei analog digitale iar n = 22 (rezolutia exprimata in biti a convertorului).
Deoarece rezultatele măsurătorilor sunt afectate, într-o oarecare măsura, de tensiunile de zgomot, inerente in toate circuitele electrice, s-a procedat la o filtrare a valorilor măsurate prin tehnica medierii acestora. Se știe ca zgomotul alb, care se face simțit (in mai mare sau mai mică măsura) în toate sistemele existente in lumea reală, are proprietatea ca, din punct de vedere statistic, are medie nulă.
Prin calcularea mediei unui număr suficient de mare de eșantioane de măsura ale valorii măsurate se poate elimina, în mare măsura, incertitudinea cauzată de asemenea perturbații. Exista numeroase metode, mai mult sau mai puțin complexe, care se utilizează in implementarea filtrării prin mediere, una din cele mai cunoscute fiind cea denumită in literatura de specialitate ca „moving average”. In Fig. 3.3 se poate vedea efectul unei asemenea filtrări asupra unei colecții de eșantioane de măsură.
Deoarece sistemul de control al temperaturii se caracterizează printr-un timp de răspuns relativ lung, existând o întârziere substanțială între momentul modificării puterii din circuitul de încălzire si modificarea propriu-zisa a temperaturii efective, s-a apelat la una din cele mai simple metode de filtrare a zgomotului și anume s-a folosit valoarea medie a 32 de valori măsurate in mod consecutiv la (intervale de circa 105 de ms intre măsurători), făcând de fapt o mediere urmată de o decimare.
Astfel, acțiunea de reglaj si control a temperaturii se face conform unui ciclu cu durata de 10 secunde. In primele circa 3,3 secunde se iau cele 32 de eșantioane de măsura care reflecta tensiunea la bornele senzorului, după care se calculează media acestor valori iar pe baza valorii medii obținute astfel se estimează temperatura reala a corpului termic si se ia o decizie de ajustare a puterii conform algoritmului PID. După aceasta se mai așteaptă circa 6.7s pana la terminarea celor 10s care compun un ciclu de reglaj. Aceasta întârziere permite traductorului de temperatura să „ia act” de eventualele efecte cauzate de modificarea puterii din circuitul de încălzire, contribuind, prin aceasta, la eliminarea posibilelor oscilații din sistemul de control.
Funcția propriu-zisa de control PID determină, la fiecare 10 secunde, pe baza ultimei măsurători de temperatura disponibile, valoarea celor 3 componente P, I si D, suma acestora precum si puterea necesară la ieșire pentru un reglaj corespunzător al temperaturii. Aceasta putere calculată este folosită pentru ajustarea factorului de umplere a semnalului PWM care controlează elementul de încălzire. Pentru preîntâmpinarea fenomenului de saturație al ieșirii, care poate fi cauzat de exemplu de cresterea exagerata a componentei integrale , s-au prevazut si masuri de evitare a acestui fenomen prin limitarea magnitudinii fiecarei componente in parte.
3.1.2. Observații
Funcția de reglaj PID folosita in cazul acestui aparat trebuie sa răspundă unor condiții de funcționare mai deosebite fata de cele care se întâlnesc in mod uzual. In primul rând, s-a urmărit obținerea unei precizii excepționale si o funcționare fara oscilații (stabilitatea urmarita este de ordinul a 0,05°C!). Domeniul de lucru impus pentru temperatura de ieșire a fost de asemenea foarte larg, fiind cuprins intre 30 si 100°C (daca se va utiliza si funcția de răcire se va putea merge in jos pina cca. 5°C).
Deoarece nu s-a folosit nici un mijloc de răcire forțată, controlul temperaturii se poate face doar prin creșterea acesteia, deci supracreșterile de temperatura trebuie evitate pe cât posibil deoarece nu pot fi corectate prin acțiunea sistemului de reglaj ci doar printr-o răcire libera. Din aceasta cauza, s-a încercat anticiparea cat mai buna tendinței de creștere a temperaturii de ieșire, in detrimentul timpului de stabilizare al sistemului.
Pe de alta parte, s-a constatat ca pierderile de căldura, in pofida izolației termice foarte bune folosite, afectează mult stabilitatea in funcționare. Aceste pierderi sunt cu atât mai mari cu cat se dorește obținerea unei temperaturi mai înalte, fiind aproximativ proporționale cu puterea a treia a temperaturii de la iesire. In vederea compensării efectului acestui fenomen, s-a introdus si un factor de control global buclei PID. Acesta tine cont de temperatura urmărita la ieșire si ponderează puterea de încălzire in mod corespunzător.
3.2. Implementare sistemului (partea electrică)
Aparatul are la bază o placă de dezvoltare pentru microcontrolere din familiile PIC16 sau PIC18 de la Microchip. Deși inițial aceasta placă a fost construita pentru a experimenta diferite proiecte bazate pe microcontrollerul PIC16F877, datorită faptului că folosesc aceiași capsulă și sunt compatibile „pin to pin”, a fost posibilă experimentarea unor montaje cu microcontrolere din familia PIC18, care au performanțe mai bune, atât ca resurse interne cât și ca viteză de lucru. Schema de baza a plăcii de dezvoltare este prezentată in Anexa 1.
Se observă ca este vorba de o schemă cu o structură tip conexiune deschisă, care permite implementarea a nenumărate configurații de funcționare, în funcție de necesități. Placa de dezvoltare dispune de propriul său stabilizator de tensiune de alimentare, o interfață RS232 pentru legătura cu calculatorul sau cu alt dispozitiv compatibil și oscilator configurabil pentru generarea frecvenței de tact.
Fiecare port al microcontrolerului poate fi conectat după dorință la anumite dispozitive periferice cum ar fi: afișaj cu cristale lichide, tastatură cu până la 16 taste, 4 butoane incluse pe placă, o memorie de tip I2C, beeper piezoelectric,etc. Pentru monitorizarea activității și stărilor logice de pe porturi, pe fiecare din acestea poate fi conectată o diodă luminiscentă (LED). De asemenea este prevăzută și o arie de „paduri” neconectate, care poate fi folosită pentru realizarea unor montaje adiționale.
Folosind această placă de dezvoltare și substituind microcontrolerul PIC16F877 cu un PIC18F4620 s-a implementat sistemul a cărui schema este prezentată în Anexa 2.
S-a adăugat un număr de 3 transistoare MOS de putere, ca elemente de control finale pentru circuitele de încălzire, răcire si ventilație ale aparatului. Pentru măsurarea temperaturii s-a folosit o plăcuță separată conținând convertorul analog digital de tip delta-sigma MCP3551, care convertește semnalul primit de la termo-rezistorul cu platină Pt500.
Pentru afișarea valorilor relevante s-a folosit un modul extern LCD. Alimentarea întregului sistem se face de la o sursă de tensiune, în comutație, capabilă să furnizeze un curent de până la 8A la o tensiune de 13V. Ca element de încălzire s-a folosit un bec cu halogen, cu incandescență de 12V/50W.
3.3. Programul de control. Schema logică
Programul de control al aparatului a fost dezvoltat în limbajul C (vezi Anexa 3), având avantajul că microcontrolerul PIC18F4620 este compatibil cu acest limbaj de programare.
Ca și compilator s-a folosit compilatorul CCS. Acest compilator oferă câteva functii scrise și gata de utilizare. De exemplu în codul folosit pentru aparatul de testare am inclus driverul lcd.c care conține funcțiile necesare folosirii modulului LCD și fișierul 18F4620 care conține instrucțiunile care configurează microcontrollerul.
În partea de început a programului de control se inițializeză parametrii apoi are loc configurarea Microcontrollerului, a modului SPI, Sunt configurate timerele – timerul0 este folosit pentru controlul măsurătorii făcute de circuitul MPC3551, timerul 0 se activează la fiecare 104,8 ms.
Urmează definirea funcție de interpretare a apăsării tastarurii, apoi definierea funcție de reglare PID, urmată de funcția de măsurare (interpretare) a temperaturii.
Urmeză funcția principală, al cărei principiu de funcționare este prezentat în figura 3.4.
În timpul execuție funcției principale la fiecare 104,8 ms se generează o întrerupere, prin intermediului modulului intern TIMER0, care este astfel configurat.
Rutina de întrerupere respectivă coordonează funcționarea unui automat de stare care implementează cate un ciclu de 10s care guvernează reglajul PID. Astfel, primele 32 de întreruperi determină cumularea rezultatului a tot atâtea măsurători de tensiune la bornele traductorului de temperatură . După a 34-a întrerupere se calculează media celor 32 de măsurători cumulate, se calculează rezistența traductorului, temperatura reala , apoi se ia următoarea decizie de modificare a puterii de încălzire pe baza algoritmului PID și se reîmprospăteaza valorile pe LCD. Urmează apoi un timp de așteptare până la întreruperea cu numărul 95, care semnalizeaza expirarea unui ciclu de 10s, dupa care secvența de măsurare se reia de la 0.
3.4. Partea mecanică
Piesa de bază a părții mecanice a aparatului este așa numitul corp termic, realizat din aliaj de aluminiu. Acesta îndeplinește doua importante funcții:
asigura un suport mecanic stabil si un cuplaj termic cat mai bun atât pentru traductorii de temperatura care trebuie testați, cat si pentru traductorul de temperatura de referința.
Asigură o distribuție uniformă a temperaturii in întregul său volum, asigurând aceleași condiții de temperatură pentru toate traductoarele testate cat si pentru cel de referință
În figura 3.6 este reprezentat desenul tehnic al acestei piese, atât in vedere de sus cat si in secțiune longitudinala. Materialul ales pentru realizarea acestei piese a fost un aliaj de aluminiu.
Aluminiul are o conductibilitate termica foarte buna printre metale, de 250 W/m °C , fiind intrecut din acest punct de vedere doar de către câteva alte metale cum ar fi aurul (310 W/m °C), argintul (420 W/m °C) si cuprul (401 W/m °C). Din cauza costurilor prea mari, aurul si argintul nu sunt o opțiune fezabila iar cuprul este mai scump si mai greu de prelucrat din punct de vedere mecanic. Se poate observa din desen ca in centrul piesei exista un orificiu cilindric de diametru mai mare (17mm) in care se montează sursa de căldura reprezentata de becul cu halogen. In jurul acestuia exista un număr de 9 orificii cu diametrul de 5mm cu rolul de a adăposti traductoarele care urmează a fi testate, precum si alte trei orificii de 4mm pentru traductorul termometrului de referința.
S-a optat pentru aceasta configurație perfect simetrica pentru ca toate eventualele traductoare montate in corpul termic sa se afle la aceiași distanta fata de centrul acestuia ( unde se afla montată și sursa de căldura) ,având deci, pe cât posibil, aceleași condiții de temperatură.
Adâncimea acestor locașuri pentru traductorii de temperatura este de asemenea suficient de mare incat aerul din încăpere sa nu influenteze comportamentul acestora. Pe peretele exterior al corpului termic este fixat si traductorul PT500 care are rolul de a furniza „feedback-ul” către regulatorul de temperatura. Folosind această soluție tehnică se pot testa un număr de pana la 9 traductoare de temperatura simultan.
O alta măsura constructivă care are rolul de permite atât o repartizare uniformă a temperaturilor în tot volumul corpului termic cat si o stabilitate a temperaturii dorite, este izolarea termica a acestui corp din aluminiu cu un înveliș suficient de gros din polistiren extrudat, identic cu cel folosit la termoizolarea clădirilor. Aspectul final al parții mecanice se poate vedea in figura 3.7 care reprezintă corpul termic montat in interiorul blocului izolator din polistiren.
Construcția părții mecanice este în realitate puțin mai complicată decât rezultă din desen, deoarece a fost prevăzuta atât cu un sistem interior de circulație a aerului cât și cu componentele care vor putea sa asigure și o funcționare in regim de răcire, pentru a putea lucra si cu temperaturi mai coborâte decât cea a mediului ambiant din laborator. Așa cum am amintit anterior, acest mod de funcționare nu este încă implementat și nu face obiectul acestei lucrări.
Capitolul IV
4. Testare și rezultate
4.1. Testarea aparatului
Testarea aparatului am făcut-o astfel : am conectat aparatul la sursa de tensiune, am încărcat firmwer-ul apoi am setat de la tastatura din dotarea aparatului. Am început testarea de la temperatura de 25 am continuat cu temepratura de 30 , de la această temperatură am continuat testul crescând la fiecare pas cu 2 .
Nu întâmplător am ales temperatura de 25 , ci odată cu testarea aparatului am făcut un studiu și asupra dependenței rezistenței electrice cu temperatura a traductorilor cu nichel, iar rezistența nominală a cestor traductori este dată la 25 de grade. Am folosit 2 serii a câte 9 traductori care au fost introduși în aparat pe tot parcursul testului, iar rezistența le-a fost măsurată la fiecare prag de temperatură.
Pentru ca temperatura sistemului să ajungă de la un prag de temperatură la altul și să se stabilizeze s-a așteptat în medie circa 15 minute. Pentru fiecare serie de traductori au avut loc 35 de setări de temperatură și s-au făcut în jur de 300 de măsurători ale rezistenței traductorilor.
Pe tot parcursul testului am verificat temperatura aparatului cu ajutorul temometrului de precizie Testo 735, introducând sonda termometrului în blocul de aluminiu, prin orificiile special create. Iar rezultate obținute au fost notate întru-un tabel, vezi tabelul 4.1.
Am observat că până în jurul temperaturii de 80 eroarea de măsurare a aparatului în raport cu temperatura măsurată de Testo 735 a fost de 0 . Mai apoi vedem că a apărut o eroare de 0,1 ca mai târziu această eroare să crească la 0,15 . Această eroare s-a eliminat, calibrând aparatul cu o rezistență de înaltă precizie.
În ce constă studiul făcut asupra traductorilor cu nichel, s-a observat că aceștia spre deosebire de traductorii cu platină, au o dependență a rezistenței electrice cu temperatura, total neregulată nepuntându-se aproxima această dependeță.
În concluzie aparatul a fost testat și s-a observat că aparatul pentru testarea și evaluarea senzorilor funcționează cu succes.
Capitolul V
5. Bibliografie
Ciugudean M., Tiponut V., Tanase M. E., Bogdanov I., Carstea H., Filip A. – Circuite integrate liniare: Aplicatii, Editura Facla, Timisoara, 1986,
Ciugudean M., Muresan T., Carstea H., Tanase M. E. – Electronica aplicata cu circuite integrate analogice: dimensionare, Editura Biriescu M. – Masini Electrice Rotative, Editura de Vest, Timisoara, 1997, ISBN 973-36-0299 – X,
Bogdanov I. – Microprocesoare in comanda actionarilor electrice, Editura Facla, Timisoara, 1989, ISBN -973-36-0030-X,
Di Jasio L., Wilmshurst T., Ibrahim D., Morton J., Bates M. P., Smith J., Smith D. W., Hellebuyck C., – PIC Microcontrollers: Know It All, Newnes Know It All Series, Burlington MA, USA, ISBN 978-0-7506-8615-0,
Ibrahim D. – Advanced PIC Microcontroller Projects in C: From USB to ZIGBEE with the PIC 18F series, Newnes Press, London, 2008,
Jamsa K, Jamsa’s C/C++/C# Programmer’s Bible, 2nd ed., Onword Press, 2002, ISBN 0-76684682-2,
Phillips, Ch.L., Nagle, H. T., Digital Control System Analysis and Design, third edition, Prentice Hall, ISBN 0-13-309832-X, 1995
Kernigan B., Ritchie D. – Programming in C,
Muntean N. – Convertoare Statice, Editura Politehnica, Timisoara, 1998, ISBN 973-9389-12-0,
Ogata K., – Modern Control Engineering,
Sanchez J., Canton M. P. – Microcontroller Programming: The Microchip PIC, CRC Press Taylor & Francis Group, 2007 Boca Raton, FL USA, ISBN 978-0-8493-7189-9,
Toma L., – Sisteme de Achizitie si Prelucrare Numerica a Semnalelor, Editura de Vest, Timisoara, 1996, ISBN 973-36-0272-8,
Wilmshurst T., – Designing Embedded Systems with PIC Microcontrollers,
Stanciu, I., R., Molnar-Matei, F., Sistemem de Monitorizare si Control in Timp Real, Eurostampa, ISBN: 978-606-569-542-9, Editura Fundatiei I. Slavici, ISBN 978-606-8480-12-1, 2013.
Diaconu, Gabriela, Sisteme de reglare automată Parte a II a , București: Editura Didactică și Pedagogică, 2009, p 16 – p 22
http://www.microchip.com/wwwproducts/en/PIC18F4620/Documentation
http://ctms.engin.umich.edu/CTMS/ ControlPID
I.Mădărășan,I.Teberan,B.Apahidean,P.Ungureșan,M.Bălan. Îndrumător pentru lucrări de termotehnică și mașini termice, Cluj-Napoca, 2002
Hirak Patangia, Sri Nikhil Gupta Gourisetti, “A Novel Strategy for Selective Harmonic Elimination Based on a Sine-Sine PWM Model”, MWSCAS, U.S.A, Aug 2012
Borza Paul, Gerigan Carmen, Ogrutan Petre, Toacse Gheorghe. Microcontrollere – Aplicatii. Bucuresti: Editura Tehnica, 2000
J. Huang, K. Padmanabhan, and O. M. Collins, “The sampling theorem with constant amplitude variable width pulses”, IEEE transactions on Circuits and Systems, vol. 58, June 2011
Milan, Verle, PIC Microcontrollers – Programing in C, Editura MikroElektronika, Ianuarie 2009
Capitolul VI
6. Anexe
6.1.Anexa1
Schema de bază a plăcii de dezvoltare
6.2.Anexa2
Schema electrică a circuitului
6.3.Anexa3
Codul sursă al programului de control
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Aparat Pentru Evaluarea și Testarea Senzorilor de Temperatură (ID: 109872)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
