Vizitator Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 (editat) Aceasta intrebare de fapt nu e stric legat de arduino. Totusi, o sa pastrez tema. Doresc sa citesc temperatura cu ajutorul unui senzor de temperatura. Plaja de citire ce ma intereseaza este 20-280°C, dar ca punct de referinta este Max 280°C. Cu siguranta nu voi putea folosi cunoscutul LM35 in aceasta situatie, si nici nu doresc sa folosesc o sonda K. Pana acum am citit temperaturi cu NTC sau sonda K. Dar.. Am ales sensorul PT106053 ceramic, care are totusi urmatoarele specificatii: Tip: senzor de temperaturăRezistenţă: 1kΩ Toleranţă cl.B 0,2% Dimensiuni exterioare: Ø3 x 6mm Coeficient de temperatură 3.85nppm/°C Temperatura de lucru -50...500°C Cam asta este tot despre el. Am facut niste masuratori la ~25°C si am 1,100kΩ; creste rezistenta la cald. Intrebare. Care este demersul in cazul unui senzor, cum si ce trebuie calculat sa pot folosi acest senzor folosind datele tehnice sau nu neaparat. Nota: probabil e nevoie si de LM324N ..? Sa presupunem totusi ca vrem sa limitam intervalul citit de 100-280°C. In asa caz cum procedez fara AO? Editat Octombrie 9, 2014 de Vizitator Link spre comentariu
UDAR Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 Se folosește în principiu similar cu un termistor. Injectezi un curent constant prin el suficient de mic încât să-l încălzească neglijabil și citești tensiunea la borne - cu sau fără operațional , în funcție de ce-ți iese, respectiv ce gamă vrei să folosești penttru ADC. Pentru conversia tensiune astfel obținută - temperatură ai mai multe soluții : - să calculezi simplu cu coeficientul mediu dat , presupunând o variație liniară - să implementezi un polinom de gradul doi sau trei cu coeficienții din DS - să creezi un ”look-up-table” cu valorile din DS Link spre comentariu
godFather89 Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 Fara o sursa de curent constant (doar o rezistenta + ADC): http://www.maximintegrated.com/en/app-notes/index.mvp/id/1753 Link spre comentariu
ventzel Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 Daca vrei NTC exista termistori care merg pana la 300C. http://www.robofun.ro/docs/termistor-datasheet.pdf Nu am incercat inca nici unu sa pot zice ce fiabilitate are in timp, numa asa ca idee. Link spre comentariu
Depanatoru Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 (editat) Depinde ce precizie vrei si daca ai timp de probe si cu ce-l etalona , neavand macar o foaie de catalog . Variatia 3,85 nppm/grad ca la orice senzor de genul asta nu e ceva constant in toata gama , mai trebuie si alte corectii Operational nu trebuie daca alegi corespunzator sursa de curent sau rezistenta inseriata cu el , pentru ca nu e sursa de tensiune care trebuie amplificata ca la un termocuplu Editat Octombrie 9, 2014 de Depanatoru Link spre comentariu
Vizitator Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 (editat) ok, ne-am lamurit pana acum din punct de vedere electronic. intrebarea era mai mult pe latura programarii..la nivel de "laborator" adica, ce ati face voi daca ati vrea sa folositi acest senzor. Exemplu: as masura la 25 de grade rezistenta, la 50, si 100. as calculat asa, sau bla bla. pana una alta nu am gasit niciodata termistori mai mult de 125 grrade. daca cei recomandati merg, m-as bucura. nu am lucrat niciodata la temperaturi mai joase de 200 , si ma dispera pretul sondelor K Editat Octombrie 9, 2014 de Vizitator Link spre comentariu
XAN77 Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 sunt așa scumpe sondele K de nu vrei să folosești una? Recuperezi una dintr-un letcon de 25 de lei eventual. Aia sigur merge la 300 grade și un LM358 e de ajuns. Link spre comentariu
godFather89 Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 (editat) In primul rand trebuie sa decizi ce ai nevoie: ce precizie, pe ce domeniu de temperatura, pe tot domeniul, doar intre 100-150C sa fie precizia maxima, etc. Dupa ce ai stabilit asta trebuie sa stabilesti schema: cu o rezistenta simpla (ce valoare?), cu o sursa de curent, cu op-amp, ce ADC, ce erori sunt tolerate, etc. Pe urma se discuta si softul (eventual se ajusteaza si schema daca mai e nevoie): ce compensari sunt necesare, ce viteza de conversie, etc. Evident ca daca nu te intereseaza precizie si vrei doar sa afisezi o temperatura (asa in mare) atunci poti folosi parametrii standard (Pt1000) pt ecuatie (Callendar-Van Dusen) si obtii temperatura din rezistenta. http://en.wikipedia.org/wiki/Resistance_thermometer http://en.wikipedia.org/wiki/Callendar%E2%80%93Van_Dusen_equation Editat Octombrie 9, 2014 de godFather89 Link spre comentariu
Vizitator Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 (editat) plaja temperatura: 150-190C precizie: 1grad e ok Editat Octombrie 9, 2014 de Vizitator Link spre comentariu
godFather89 Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 Deci avem valori tipice pt1000: 150C: 1573 ohmi 200C: 1758 ohmi Daca faci cu divizor rezistiv R = 1600 ohmi, Vadc = 5V 150C -> 2.479V 200C -> 2.618V Diferenta de 139mV pentru 50 C (aprox 2.78 mV/C). Daca ADC-ul e pe 12 biti, avem LSB = 5V / 4096 = 1.22 mV. Suficient pentru 1C. Daca faci un singur montaj: Trebuie masurata valoarea la 150C si la 200C (pe intervalul acela va fi suficient de liniara caracterstica rezistenta/temperatura pentru valori exacte). Trebuie filtrare buna la alimentare (separat analogica), rezistenta de precizie buna (sau masurata pentru o precizie cat mai buna), mai multe masurari + mediere. Link spre comentariu
Vizitator Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 (editat) sunt așa scumpe sondele K de nu vrei să folosești una? Recuperezi una dintr-un letcon de 25 de lei eventual. Aia sigur merge la 300 grade și un LM358 e de ajuns. Letcon ? Poate o statie de lipit...letconul nu are nici o sonda, e legat direct. Oricum nu prea ajunge o statie de lipit la vechituri. Doar pentru ca e pe fix mana unui electronist. Parerea mea. Si daca te refereai prin cutia cu maimute a mea, nu am asa ceva, am doar una...cu care lucrez.. Am testat varianta asta pana acum cu cu un LMC6482 configurat asa: sau cu varianta cu R2 = 100K sau R2 = 9k in ambele variante ADC mi-a citit doar aiureli..la 23C aveam 2 / 1023. sau 0 / 1023 In plus, termocupla K nu este lineara, si nu am gasit inca un exemplu (in arduino) ceva sa ma lamuresc cum trebuie facut.. Am folosit pana acum pe valoarea ADC pur si simplu, sau mapate 2 valori , pentru ca am nevoie decat de un anume prag, dar asta nu este prea ok. Editat Octombrie 9, 2014 de Vizitator Link spre comentariu
UDAR Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 (editat) Nu ai ținut cont de offset și de tensiunea de ieșire nenulă a amplificatorului. Normal , la o astfel de schemă se adaugă un offset pozitiv ( dacă offsetul AO este negativ , dar se poate adăuga pentru orice eventualitate ) care se compensează apoi din soft . Amplificarea trebuie , evident , să fie destul de mare încât la 1°C de exemplu să avem o variație de minim 1 LSB la intrarea ADC . Exemplu Vcc = 5V , 10 biți deci 1LSB = 5mV ; termocuplu K cu 41µV / °C rezultă amplificare de minim 125 deci în niciun caz 9kΩ pentru R2. Și încă ceva ADC-urile ( sunt sigur că și cele de la Atmel ) au și ele un offset care poate fi de 2-3 LSB . Dacă aceasta este pozitiv se poate compensa software , dacă este negativ - nu . Unele ADC-uri sunt făcute să nu aibă offset negativ - cu prețul unui offset pozitiv mai mare , PIC16F886 de exemplu , cu care am acum un proiect , are offset de la 0 la 3LSB în loc de +/- 1,5LSB de plidă. Editat Octombrie 9, 2014 de UDAR Link spre comentariu
Vizitator Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 (editat) Nu ai ținut cont de offset și de tensiunea de ieșire nenulă a amplificatorului. Normal , la o astfel de schemă se adaugă un offset pozitiv ( dacă offsetul AO este negativ , dar se poate adăuga pentru orice eventualitate ) care se compensează apoi din soft . Vrei te rog sa dezvolti ? E vorba de hardware ? de soft ? Daca te referi la OP unde sa-i fac offset ? PS: poate sunt eu prea necunoscator, dar uneori chiar nu inteleg nimic... Editat Octombrie 9, 2014 de Vizitator Link spre comentariu
UDAR Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 Offset-ul unui OpAmp este o eroare de simetrie a etajului de intrare care se traduce în schema echivalentă cu o tensiune de la fracțiuni de mV ( sau chiar mai puțin la OpAmp de precizie ) la zeci de mV. Aceasta face ca , deși avem zero la intrare ( legată la masă ) să avem la ieșire o tensiunea care reprezintă offset-ul * amplificarea . În cazul schemei pe care ai postat-o amplificarea este 331 . La un offset chiar foarte bun cum are LMC6482 , de 0,1mV putem avea la ieșire +/- 33 mV. La asta se adaugă sau se scade offset-ul ADC. Acum , problema este că la schemele cu o singură alimentare nu putem avea ieșire negativă. De aceea offset-ul negativ se traduce printr-un interval ”orb” la intrare. Pot să cresc tensiunea la intrare fără să observ creșterea ieșirii până când înving offset-ul. La schema ta , cel mai simplu adaugi un offset pozitiv punând o rezistență de , să zicem 100Ω în serie cu intrarea pozitivă și una de 1MΩ de la intrarea pozitivă la +5V . ai adăugat astfel un offset de 0,5mV . Asta la ieșire se va traduce prin 165 mV - dacă OpAmp nu are offset , în realitate va fi între 100 și 200mV , sau ceva pe-acolo. Se subânțelege că suntem cu intrarea în scurt . Măsori cu µC această valoare și o memorezi în EEPROM - asta va fi corecția de offset . La măsurătorile reale , scazi valoarea asta. Mai sus am prezentat doar ideea . Desigur forma de implementare poate diferi atît hard , cât , mai ales , soft. Link spre comentariu
XAN77 Postat Octombrie 9, 2014 Partajează Postat Octombrie 9, 2014 Mă refeream bineînțeles la un letcon de stație de lipit. Ia caută pe un sait de anunțuri cît costă un letcon de gordak. Link spre comentariu
Postări Recomandate
Creează un cont sau autentifică-te pentru a adăuga comentariu
Trebuie să fi un membru pentru a putea lăsa un comentariu.
Creează un cont
Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!
Înregistrează un nou contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum