Hőmérséklet mérés termisztorral

Termisztorokról általánosságban

termisztor egy olyan két kivezetésű áramköri elem, amely hő hatására számottevően megváltoztatja elektromos ellenállását – az ellenállás-változás nagysága milliószorosa a fémeknél tapasztalt változásnak. Minden termisztor a termorezisztivitás jelenségén, azaz az elektromos ellenállás hőmérséklet-függőségének felhasználásán alapszik. Az ellenállás változás kétirányú lehet, ha a termisztor ellenállása

• csökken a hőmérséklet emelésével akkor negatív, ha (Negative Temperature Coefficient or NTC)

• ha nő a hőmérséklet emelésével akkor pozitív karakterisztikájú termisztorról beszelünk (Positive Temperature Coefficient or PTC).

 

Hőmérséklet mérés

Ezt egy Arduino modulal fogjuk megoldani. Ellenállást nem, feszültséget viszont tudunk mérni Arduinoval. Két ellenállással feszültségosztót hozunk létre, aminek az egyik ellenállása fix (10K) a másik a termisztor aminek ellenállása a hőmérséklet függvényében változik. A feszültségosztó egy olyan négypólus, amelyet legegyszerűbb esetben két sorba kapcsolt ellenállás alkot. Ha az osztóra feszültséget kapcsolunk, akkor az ellenállásokon átfolyó áram azokon feszültségesést hoz létre. A két feszültség összege megegyezik a bemenő feszültséggel.

Us = I(R + Rt)

A feszültség esés a fix ellenálláson pedig

U0 = I⋅R

A fenti két egyenletet megoldva Rt-re a következőt kapjuk (részletek itt)

Rt = R((Us/U0) -1)

A továbbiakban ezt az egyenletet használjuk majd a termisztor ellenállásának a kiszámítására.

Kapcsolás

kapcsolás

A Temperature Measurement with a Thermistor and an Arduino cikkből

U0 mérése és a Rt kiszámítása

 

Vo = analogRead(ThermistorPin); eredménye egy egész szám (integer) 0-1023 között, tehát ha az eredmény 1023, akkor az 5V-nak felel meg. 

Az Rt = R*( 1023.0 / float(Vo) – 1.0 );  kiszámításánál lebegőpontos számot (float) használunk, hogy százados jegy pontossággal kapjuk meg az ellenállás értéket.  

A kimeneti értékek így néznek ki

U0 Rt
487 10863.08
488 10820.59
488 10820.59
487 10863.08
488 10820.59
489 10778.28

 

A hőmérséklet számítása Rt-ből

Steinhart-Hart egyenlet

steinhart-hart equation

A c1, c2, c3 a termisztorra jellemző értékek, amit az egyes termisztorok adatlapja tartalmaz, ezt majd egyszerűen csak be kell helyettesíteni az egyenletbe.

 

folyt. köv….

31-05-2016

Néhány tesztelésre váró termisztor

thermistor

NTC modstand – 1 Kohm 500mW Ø5mm

For temperatur compensation, temperatur measurement og control.

Egenskaber:

• Materiale: epoxy-coated

Tekniske detaljer:

• Nominel modstand: 1 kohm (ved 25°C)
• B-constant (±7%): 3700°K
• Maks. permissible strøm: 80mA
• thermal dissipation constant: 6mW/°C
• thermal time constant: 17sec.
• Størrelse: Ø5mm
• EAN Barcode: 5410329270308

 

NTC modstand – 10 Kohm 500mW Ø5mm

For temperatur compensation, temperatur measurement og control.

Egenskaber:

• Materiale: epoxy-coated

Tekniske detaljer:

• Nominel modstand: 10 kohm (ved 25°C)
• B-constant (±7%): 4100°K
• Maks. permissible strøm: 30mA
• thermal dissipation constant: 6mW/°C
• thermal dissipation constant: 15sec.
• Størrelse: Ø5mm
• EAN Barcode: 5410329270285

 

NTC modstand – 100 Ohm 500mW Ø5mm

For temperatur compensation, temperatur measurement og control.

Egenskaber:

• Materiale: epoxy-coated

Tekniske detaljer:

• Nominel modstand: 100 ohm (ved 25°C)
• B-constant (±7%): 3100°K
• Maks. permissible strøm: 200mA
• thermal dissipation constant: 6mW/°C
• thermal dissipation constant: 19sec.
• Størrelse: Ø5mm
• EAN Barcode: 5410329270261

 

NTC modstand – 100 Kohm 500mW Ø5mm

For temperatur compensation, temperatur measurement og control.

Egenskaber:

• Materiale: epoxy-coated

Tekniske detaljer:

• Nominel modstand: 100 kohm (ved 25°C)
• B-constant (±7%): 4400°K
• Maks. permissible strøm: 15mA
• thermal dissipation constant: 6mW/°C
• thermal dissipation constant: 16sec.
• Størrelse: Ø5mm
• EAN Barcode: 5410329270278

 

folyt. köv….

05-06-2016

10 Kohm 500mW Ø5mm teszt. A kapcsolás a cikk elején, csak itt A0-t használunk A1 helyett. A c1, c2, cértékeket természetesen a használt termisztortól függően változtatni kell.

forrás: http://computers.tutsplus.com/tutorials/how-to-read-temperatures-with-arduino–mac-53714

Arduino 1.6.8 soros plotterével felvett grafikon, ez maximum szemléltetésre jó, mivel nincs idő tengely, és a hőmérséklet létpék sem túl részletes.

termisztor teszt

Az első csúcs, amikor megdörzsöltem a termisztort, azonnal reagált, majd kb. 2 perc alatt visszaállt az eredeti hőmérsékletre. A második esetben jégkockát érintettem hozzá, itt a víz rövidre zárta az áramkört, gyorsan letöröltem. A harmadik esetben szintén jégkockát érintettem hozzá, kicsit körültekintőbben.

 

Már csak a megfelelő ház kiválasztása maradt hátra.

THERMISTOR HOUSINGS

folyt. köv…

2016-07-02

Szenzorkalibrálás

Így első körben ez inkább csak egy összehasonlítás egy megbízható pontosságú referencia szenzorral. Végre lehetőségem nyílt méréseket végezni egy precíz 0,1 oC pontosságú szenzorral. A kapott eredmények igen biztatóak.

photo (11)

Egyelőre a szenzort még az acéltokozás nélkül teszteltem, így válaszideje, és hőmérséklet értékei, a fűtés, hűtés után eléggé különbözőek voltak. Stabilizálódás után 0,1oC eltérést mutattak, ami a céljainknak tökéletesen megfelel, a korrekciót majd egy megfelelő faktorral való szorzással korrigálom. Természetesen majd, ha a tokozás elkészül, akkor egy kétpontos kalibrációval fogjuk tökéletesíteni.

termisztor_teszt

Mérési eredmények →excel

A referencia szenzor egy 15cm-es acéltokozású szenzor, amihez hozzáragasztottam a termisztort, ami csak a natúr epoxi réteggel volt borítva, így érthető, hogy másképp reagáltak, az eltérő hővezetési, hőátadási tulajdonságaik miatt.
Néhány érték a hőmérséklet stabilizálódása után:

t(h) Termisztor T(oC) Referencia T(oC)
2,400556 25,71 25,6
2,403333 25,71 25,6
2,406111 25,71 25,6
2,408889 25,71 25,6
2,411667 25,71 25,6
2,414444 25,71 25,6
2,417222 25,71 25,6
2,42 25,71 25,6
2,422778 25,8 25,6
2,425556 25,71 25,6

 

Még ami fontos, hogy a kábelhossz 76cm, ami a két láb miatt 152cm, ennek szintén van ellenállása, így ezt is figyelembe kell venni.

Felhasznált irodalom

Temperature Measurement with a Thermistor and an Arduino

Class Notes for EAS 199B Gerald Recktenwald ∗ May 25, 2013 cod-pdf-C

http://www.mikeelektronika.hu/elektrotechnika/eltech/12_a_feszltsgoszt.html

Share This:

 
Loading Facebook Comments ...

COMMENTS

  • Guttmann Krisztián Guttmann Krisztián

    problémák a kapcsolással és a kóddal:
    * a kapcsolás folyamatosan fogyaszt még akkor is amikor nem akarok mérétst végetni (termisztor egy eálláson keretszul foldre van kötve)
    * mivel állandóan áram folyik a kapcsoláson a termisztor fűti magát igy meghamisítja a mérést
    * a mérés végtelen ciklusban van, akkor is konverziót csinál amikor éppen nem is akarok mérni (megszakításban kéne működnie)
    * fermentorhoz nekünk i2c kell
    * delay 1000 miatt ha pl közvetlen a delay 1000után megszólítom akkor várni kell

    ntc 10k termisztor ok, ezek alapján én bármilyen termisztort választhatok (több gyártó is készít 10ks ntc termisztort) csak az a lényeg, hogy ntc 10k-s legyen?

    bármilyet választok az megfelelően beilleszhető majd a fermentorba?

  • Az enyém ilyen: https://www.elextra.dk/main.aspx?page=article&artno=H13417

    Azonosítója alapján egy holland cég gyártja. A típus nem igazán fontos, az adatlapja alapján majd át kell írni a c1, c2, c3 értékeket és akkor jó lesz. Az tok átmérője 0,62cm, a termisztoré pont 0,5cm, nem gondolom, hogy ennél nagyobbat gyártanának. Szóval ha a termisztor átmérője max. 0,5cm akkor ok. Jaja a 10K az a lényeg

    De majd ha lesz időm akkor tesztelek majd smd termisztort is.

  • Szigetelt kabelt hasznalva azert mar nem annyira zajos a jel. A nagy szakadas akkor volt, amikor csereltem a szenzort.
    szenzor kabel szigeteles

Leave a Comment