Cuprins:
- Pasul 1: Aparat
- Pasul 2: Despre PT100
- Pasul 3: Podul Wheatstone
- Pasul 4: Simularea circuitului
- Pasul 5: Rezultate simulate
- Pasul 6: Crearea circuitului
- Pasul 7: Rezultate măsurate
- Pasul 8: pentru intervale de temperatură mult mai mari
- Pasul 9: Prezentare generală: Etapa amplificatorului diferențial
- Pasul 10: Despre amplificatorul diferențial
- Pasul 11: Beneficii și limitări
- Pasul 12: Selectarea câștigului de ieșire dorit
- Pasul 13: MICROCONTROLLER ARDUINO
- Pasul 14: Depanare
- Pasul 15: Redescalare
- Pasul 16: Configurarea Arduino
Video: Măsurarea temperaturii folosind un PT100 și un Arduino: 16 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:43
Scopul acestui proiect este de a proiecta, construi și testa un sistem de detectare a temperaturii. Sistemul a fost proiectat pentru a măsura un interval de temperatură de la 0 la 100 ° C. Un PT100 a fost folosit pentru a măsura temperatura și este un detector de temperatură de rezistență (RTD) care își schimbă rezistența în funcție de temperatura din jur.
Pasul 1: Aparat
1x PT100
1x placă de pâine
Rezistențe 2x 2,15 kohmi
1x rezistență de 100 ohmi
Fire
Alimentare electrică
Amplificator diferențial
Pasul 2: Despre PT100
Ca parte a proiectului nostru, suntem însărcinați cu măsurarea temperaturii ambientale cuprinse între 0 grade și 100 grade Celsius. Am decis să folosim PT100 din următoarele motive:
PT100 este un detector de temperatură de rezistență (RTD), care poate măsura temperaturi de la -200 de grade până la maximum 850 de grade Celsius, dar nu este de obicei folosit pentru a măsura temperaturi de peste 200 de grade. Această gamă respectă cerințele noastre.
Acest senzor produce o rezistență pentru o anumită temperatură înconjurătoare. Relația dintre temperatură și rezistența senzorului este liniară. Acest lucru, împreună cu setarea minimă necesară senzorului, facilitează lucrul cu altarul dacă sunt necesare alte intervale de temperatură în viitor.
PT100 are, de asemenea, un timp de răspuns lent, dar este precis. Aceste caracteristici nu au un impact prea mare asupra obiectivului nostru și, prin urmare, nu au fost la fel de influente atunci când s-a decis ce senzor de temperatură să utilizeze.
Pasul 3: Podul Wheatstone
Podul de grâu este utilizat pentru a măsura o rezistență electrică necunoscută prin echilibrarea a două picioare ale unui circuit de pod, dintre care un picior include componenta necunoscută.
Principalul beneficiu al circuitului este capacitatea sa de a obține o gamă de tensiune de ieșire care începe la 0V.
Un simplu divizor de tensiune ar putea fi folosit, dar nu ne-ar permite să scăpăm de orice offset prezent, ceea ce ar face ca amplificarea tensiunii de ieșire să fie mai puțin eficientă.
Rezistența la un PT100 variază de la 100 la 138.5055 pentru o temperatură de la 0 la 100 de grade Celsius.
Formula pentru o punte de grâu este mai jos, poate fi utilizată pentru redimensionarea podului de grâu pentru diferite game obținute din tabelul pdf atașat.
Vout = Vin (R2 / (R1 + R2) - R4 / (R3 + R4))
În scenariul nostru:
R2 va fi rezistența noastră PT100.
R1 va fi egal cu R3.
R4 trebuie să fie egal cu 100 ohmi pentru a produce 0V la 0 grade Celsius.
Setarea Vout la 0V și Vin la 5V ne permite să obținem valori pentru rezistență pentru R1 și R2 = 2,2k ohmi.
Putem apoi sub 138.5055 ohmi pentru rezistența senzorului pentru a obține tensiunea de ieșire la 100 grade Celsius = 80mV
Pasul 4: Simularea circuitului
Un instrument pentru simularea circuitelor, OrCAD Capture a fost folosit pentru a simula circuitul nostru și pentru a găsi ieșirile de tensiune așteptate la diferite temperaturi. Acest lucru va fi folosit mai târziu pentru a compara cât de exact a fost sistemul nostru.
Circuitul a fost simulat prin efectuarea unei analize temporare tranzitorii cu o analiză paramatică care a variat rezistența pt100 de la 100 ohmi la 138.5055 ohmi în trepte de 3.85055 ohmi.
Pasul 5: Rezultate simulate
Rezultatele de mai sus arată relația liniară a tensiunii de ieșire a circuitului și a valorilor rezistenței.
Rezultatele au fost apoi introduse în Excel și reprezentate grafic. Excel oferă formula liniară asociată acestor valori. Confirmarea liniarității și a gamei de tensiune de ieșire a senzorului.
Pasul 6: Crearea circuitului
Circuitul a fost pus împreună folosind două rezistențe de 2,2 k ohmi și un rezistor de 100 ohmi.
Rezistențele au o toleranță de + -5%. Diferitele valori ale rezistenței determină dezechilibrarea punții la 0 grade.
Rezistoarele paralele au fost adăugate în serie la rezistorul de 100 ohmi pentru a adăuga cantități nominale de rezistență pentru a obține R4 cât mai aproape de 100 ohmi.
Aceasta a produs o tensiune de ieșire de 0,00021V, care este extrem de aproape de 0V.
R1 este 2, 1638 ohmi și R3 este 2, 1572 ohmi. S-ar putea conecta mai mult rezistor pentru a face R1 și R3 exact egali, oferind o punte perfect echilibrată.
posibile erori:
cutia de rezistență variabilă utilizată pentru a testa diferite valori de temperatură ar putea fi inexactă
Pasul 7: Rezultate măsurate
Rezultatele măsurate pot fi văzute mai jos.
Modificarea temperaturii a fost măsurată folosind o cutie de rezistență variabilă, pentru a seta rezistența lui R2 la diferite rezistențe care pot fi găsite în foaia tehnică PT100.
Formula găsită aici va fi utilizată ca parte a codului pentru a determina temperatura de ieșire.
Pasul 8: pentru intervale de temperatură mult mai mari
O termocuplă de tip K ar putea fi introdusă în circuit dacă trebuie înregistrate temperaturi foarte ridicate. Termocuplul de tip K poate măsura un interval de temperatură de -270 până la 1370 grade Celsius.
Termocuplurile funcționează pe baza efectului termoelectric, o diferență de temperatură produce o diferență de potențial (tensiune).
Deoarece termocuplurile funcționează pe baza diferenței de două temperaturi, temperatura la joncțiunea de referință trebuie cunoscută.
Există două metode de măsurare cu termocupluri pe care le-am putea folosi:
Un senzor PT100 ar putea fi amplasat la joncțiunea de referință și măsura tensiunea de referință
Joncțiunea de referință a termocuplului ar putea fi plasată într-o baie de gheață care ar fi constantă 0 grade Celsius, dar nu ar fi practic pentru acest proiect
Pasul 9: Prezentare generală: Etapa amplificatorului diferențial
Amplificatorul diferențial este o parte integrantă a construcției. Amplificatorul diferențial combină ceea ce este în esență un amplificator fără inversare și inversare într-un singur circuit. Bineînțeles, ca și în cazul oricărei versiuni, vine cu propriile limitări, totuși, așa cum se va arăta în următorii pași, ajută cu siguranță la obținerea unei ieșiri corecte de 5V.
Pasul 10: Despre amplificatorul diferențial
Amplificatorul diferențial este un amplificator operațional. Acesta joacă un rol cheie în acest proiect de circuit de amplificare a tensiunii de ieșire de la podul Wheatstone în mV la V și este apoi citit ca o intrare de tensiune de către Arduino. Acest amplificator ia două intrări de tensiune și amplifică diferența dintre cele două semnale. Aceasta se numește intrarea diferențială a tensiunii. Intrarea de tensiune diferențială este apoi amplificată de amplificator și poate fi observată la ieșirea amplificatorului. Intrările amplificatorului sunt obținute din divizoarele de tensiune ale punții Wheatstone din secțiunea anterioară.
Pasul 11: Beneficii și limitări
Amplificatorul diferențial vine cu partea proprie de pro și contra. Principalul beneficiu al utilizării unui astfel de amplificator este ușurința construcției. Ca urmare a acestei construcții ușoare, face ca problemele de depanare întâmpinate cu circuitul să fie mai ușoare și mai eficiente.
Dezavantajele utilizării unui astfel de circuit sunt că, pentru a regla câștigul amplificatorului, rezistențele care determină câștigul (rezistorul de feedback și rezistorul conectat la masă) trebuie să fie deconectate, ceea ce poate consuma timp. În al doilea rând, amplificatorul operativ are un CMRR (raport de respingere în mod comun) relativ scăzut, care nu este ideal pentru atenuarea influenței tensiunii de compensare de intrare. Astfel, într-o configurație ca a noastră, a avea un CMRR ridicat este esențial în atenuarea efectelor tensiunii offset.
Pasul 12: Selectarea câștigului de ieșire dorit
Amplificatorul opțional are 4 rezistențe conectate la circuit. 2 rezistențe potrivite la intrările de tensiune, altul conectat la masă, precum și un rezistor de feedback. Aceste două rezistențe servesc drept impedanță de intrare a amplificatorului op. De obicei, un rezistor în intervalul de 10-100 kilohmi ar trebui să fie suficient, totuși, odată ce aceste rezistențe au fost setate, câștigul poate fi determinat lăsând câștigul de ieșire dorit să fie egal cu raportul dintre rezistența de feedback și rezistența de intrare la una dintre intrări (Rf / Rin).
Rezistorul conectat la masă, precum și rezistorul de feedback, sunt potrivite. Acestea sunt rezistențele care determină câștigul. Având o impedanță de intrare ridicată, aceasta minimizează efectele încărcării pe circuit, adică împiedică cantitatea mare de curent să circule prin dispozitiv, ceea ce poate avea efecte devastatoare dacă este necontrolat.
Pasul 13: MICROCONTROLLER ARDUINO
Arduino este un microcontroler programabil cu porturi I / O digitale și analogice. Microcontrolerul a fost programat să citească tensiunea de la amplificator printr-un pin analogic de intrare. În primul rând, Arduino va citi tensiunea din gama de ieșire a circuitului 0-5 V și o va converti în 0-1023 DU și va imprima valoarea. Apoi, valoarea analogică va fi înmulțită cu 5 și împărțită la 1023 pentru a obține valoarea tensiunii. Această valoare va fi înmulțită cu 20 pentru a da scala exactă pentru intervalul de temperatură de la 0 la 100 C.
Pentru a obține valorile de compensare și sensibilitate, citirile de la pinul de intrare pe A0 au fost luate cu valori diferite pentru PT100 și graficul a fost reprezentat pentru a obține ecuația liniară.
Codul care a fost utilizat:
void setup () {Serial.begin (9600); // porniți conexiunea serială cu computerul
pinMode (A0, INPUT); // ieșirea din amplificator va fi conectată la acest pin
}
bucla nulă ()
{float offset = 6.4762;
sensibilitate la plutire = 1,9971;
int AnalogValue = analogRead (A0); // Citiți intrarea pe A0
Serial.print ("Valoare analogică");
Serial.println (AnalogValue); // tipăriți valoarea de intrare
întârziere (1000);
float DigitalValue = (AnalogValue * 5) / (1023); // mul cu 5 pentru a da intervalul 0-100 grade
Serial.print ("Valoare digitală:");
Serial.println (DigitalValue); // valoarea tensiunii analogice
float temp = (AnalogValue - offset) / sensibilitate;
Serial.print ("Valoarea temperaturii:");
Serial.println (temp); // imprimare temp
întârziere (5000);
}
Pasul 14: Depanare
Alimentarea de 15V la amplificatorul opțional și 5V la podul de grâu și arduino trebuie să aibă o bază comună. (toate valorile 0v trebuie conectate împreună.)
Un voltmetru poate fi utilizat pentru a vă asigura că tensiunea scade după fiecare rezistor pentru a vă asigura că nu există scurtcircuite.
Dacă rezultatele variază și sunt inconsistente, firele utilizate pot fi testate folosind voltmetrul pentru a măsura rezistența firului, dacă rezistența spune „offline” înseamnă că există o rezistență infinită și firul are un circuit deschis.
Cablurile trebuie să fie mai mici de 10 ohmi.
Diferența de tensiune pe podul de grâu ar trebui să fie 0V la intervalul minim al intervalului de temperatură, dacă podul nu este echilibrat, ar putea fi din cauza:
rezistențele au o toleranță, ceea ce înseamnă că ar putea avea o eroare care ar putea duce la dezechilibrarea podului de grâu, rezistențele pot fi verificate cu un voltmetru dacă este îndepărtat din circuit. rezistențe mai mici ar putea fi adăugate în serie sau paralel pentru a echilibra podul.
Rseries = r1 + r2
1 / Rparalel = 1 / r1 + 1 / r2
Pasul 15: Redescalare
Formula și metoda pentru redimensionarea sistemului la o temperatură diferită pot fi găsite în secțiunea podului de grâu. Odată ce aceste valori sunt găsite și circuitul este configurat:
PT100 ar trebui înlocuit cu o cutie de rezistență, valorile rezistenței ar trebui să fie ajustate din noul interval de temperatură utilizând valorile de rezistență corespunzătoare obținute din fișierul pdf atașat.
Tensiunea și rezistențele măsurate și ar trebui să fie reprezentate grafic în excel, cu temperatura (rezistența) pe axa x și tensiunea pe y.
Din acest grafic se va da o formulă, decalajul va fi constanta care se adaugă și sensibilitatea va fi numărul înmulțit cu x.
Aceste valori ar trebui modificate în cod și ați reechivalat cu succes sistemul.
Pasul 16: Configurarea Arduino
conectați ieșirea amplificatorului de circuit la pinul de intrare A0 al Arduino
Conectați Arduino Nano prin portul USB de pe un computer.
lipiți codul în spațiul de lucru schiță Arduino.
Compilați codul.
Selectați Instrumente> Placă> Selectați Arduino Nano.
Selectați Instrumente> Port> Selectați port COM.
Încărcați codul pe Arduino.
Valoarea digitală emisă este tensiunea de ieșire a amplificatorului operațional (ar trebui să fie 0-5V)
Valoarea temperaturii este temperatura citită de sistem în grade Celsius.
Recomandat:
Măsurarea temperaturii folosind STS21 și Arduino Nano: 4 pași
Măsurarea temperaturii utilizând STS21 și Arduino Nano: senzorul digital de temperatură STS21 oferă performanțe superioare și o amprentă de economisire a spațiului. Oferă semnale calibrate, liniarizate în format digital, I2C. Fabricarea acestui senzor se bazează pe tehnologia CMOSens, care se atribuie superiorului
Măsurarea temperaturii folosind ADT75 și Arduino Nano: 4 pași
Măsurarea temperaturii utilizând ADT75 și Arduino Nano: ADT75 este un senzor digital de temperatură extrem de precis. Acesta cuprinde un senzor de temperatură de bandă și un convertor analogic digital pe 12 biți pentru monitorizarea și digitalizarea temperaturii. Senzorul său extrem de sensibil îl face suficient de competent pentru mine
Măsurarea umidității și temperaturii folosind HIH6130 și Arduino Nano: 4 pași
Măsurarea umidității și temperaturii folosind HIH6130 și Arduino Nano: HIH6130 este un senzor de umiditate și temperatură cu ieșire digitală. Acești senzori oferă un nivel de precizie de ± 4% HR. Cu stabilitate pe termen lung lider în industrie, I2C digital cu adevărat compensat de temperatură, fiabilitate lider în industrie, eficiență energetică
Măsurarea temperaturii și a umidității folosind HDC1000 și Arduino Nano: 4 pași
Măsurarea temperaturii și a umidității folosind HDC1000 și Arduino Nano: HDC1000 este un senzor digital de umiditate cu senzor de temperatură integrat care oferă o precizie excelentă de măsurare la o putere foarte mică. Dispozitivul măsoară umiditatea pe baza unui nou senzor capacitiv. Senzorii de umiditate și temperatură sunt fac
Măsurarea temperaturii de la PT100 folosind Arduino: 6 pași (cu imagini)
Măsurarea temperaturii de la PT100 folosind Arduino: PT100 este un detector de temperatură de rezistență (RTD) care își schimbă rezistența în funcție de temperatura înconjurătoare, este utilizat pe scară largă pentru procese industriale cu dinamică lentă și intervale de temperatură relativ largi. Este folosit pentru dinamism lent