Sensor – NTC/PTC – Temperatuur sensor

Hardware

NTC 103 10KohmTemperatuur sensor NTC-3470 waterdicht

BESTELLEN

Een NTC-weerstand is een weerstand met een negatieve temperatuurcoëfficiënt. Dit betekent dat de elektrische weerstand afneemt als de temperatuur toeneemt.

De NTC kan gebruikt worden als sensor voor een weerstandsthermometer, waarbij de niet-lineaire karakteristiek gecompenseerd dient te worden voor een voldoende nauwkeurige meting. Het meetbereik is niet bijster groot, gewoonlijk van -40 tot 150 °C, maar voor huis-, tuin- en keukentoepassingen kan het voldoen

De NTC is een halfgeleider-component. Het materiaal is gewoonlijk een metaaloxide, waaraan sporen van metaaloxiden met een andere valentie zijn toegevoegd. Vaak zijn de NTC’s uitgevoerd in een schijfvorm met de twee parallelle aansluitdraden in het vlak van de schijf. Soms is de uitvoering zwaarder, van metaal en met een stukje draadeind eraan om een betrouwbare bevestiging (thermisch contact) op een koelplaat mogelijk te maken
Bron: Wiki

Een PTC/NTC weerstand kan je doormiddel van een spanningsbrug uitlezen.

Hoe werkt het?

Je bouwt een spanningsdeler met dezelfde (maximale) weerstand als de NTC, en sluit de “middelste” poot aan op een analoge ingang van de Arduino.

arduino thermistor schema

Voorbeeld:
Omdat we spreken van een NTC weerstand wordt de weerstand lager naarmate de temperatuur toeneemt, dat wil zeggen (voor deze NTC):
– Is de temperatuur 120 graden dan is de weerstand 0 ohm en valt over de analoge ingang 5V.
– Is de temperatuur -30 graden dan is de weerstand 10 Kohm en valt over de analoge ingang 2,5V

Ik heb zelf een NTC gebruikt die veel in computers worden gebruikt om de temperatuur te monitoren, deze is ongeveer 10.000 Ohm bij 25 graden:

ptc_weestand_ttf103

Steinhart-Hart berekening

De waarden van deze warmte gevoelige weerstanden zijn meestal LOGARITMISCH, maar modernere weerstanden kunnen ook LINEAIR zijn, bij logaritmische weerstanden heb je een formule nodig om de curve te berekenen (en de daarbij behorende waarde), hiervoor wordt de Steinhart-Hart berekening gebruikt:
steinhart-Hart_formule

T = de temperatuur (in kelvin)
R = de weerstand op T (in ohm)
A, B, and C zijn de Steinhart-Hart coëfficiënten

De coëfficiënten worden vaak door de fabrikant van deze weerstand aangeleverd, heb je deze niet, dan is er een mogelijkheid om deze uit te rekenen.

Steinhart-Hart berekening:
– Internet, http://www.thermistor.com
– Excel sheet: zie onderaan deze pagina

Hoe kom je aan 3 temperaturen en waarden?, pak een multimeter en zet deze op de ohm stand (niet te laag)
1) Temperatuur laag: plaats de weerstand in de koelkast (meestal is deze 7 graden, anders lees de thermostaat af), meet de ohmse waarde.
2) Temperatuur gemiddeld: plaats de weerstand in de huiskamer (meestal is deze 20 graden, anders lees de thermostaat af), meet de ohmse waarde.
3) Temperatuur hoog: houd de weerstand tussen duim en vinger (dit is meestal rond de 34 graden), meet de ohmse waarde.

 Ps. deze waarden niet helemaal accuraat, maar het is een indicatie / voorbeeld.
Steinhart-Hart excel voorbeeld (NTC weerstand):
steinhart-Hart_excel_voorbeeld

Pinout

GEEN GEGEVENS

Arduino

Sluit de sensor aan volgens onderstaand overzicht:

arduino_ptc_uitlezen_schema

 

Script met bibliotheek

Wat heb je nodig?

1) Arduino Thermistor bibliotheek

Ps. Deze bibliotheek is specifiek geschreven voor 10Kohm sensoren

Onderstaand script leest een NTC-3470 sensor uit en geeft het aantal graden weer via de seriële console.

Arduino NTC console met bibliotheek

Meer informatie garagelab.com / hacktronics.com

Script met Steinhart-Hart berekening
De code is veelal te vinden op het internet, in verschillende vormen, ik heb deze code geperfectioneerd met alle voorbeelden die ik kon vinden, zie hieronder het resultaat:

Als je nu via de Arduino software de “serial monitor” opent, is dit het resultaat:

arduino_ptc_uitlezen_com_readout

Arduino Library

Installatie van Arduino IDE libraries: Arduino info

Deze bibliotheek geeft ondersteuning om NTC weerstanden uit te lezen met behulp van de Steinhart-Hart berekening.

Raspberry Pi

Uitlezen op de Raspberry Pi met behulp van de MCP3008 chip.

Sluit de sensor aan zoals aangegeven op onderstaand schema:

Raspberry-Pi-met-MCP3008-en-NTC-schema

Script: NTC uitlezen (steinhart-hart coeficient)

Met onderstaand python script kun je de NTC uitlezen via de MCP3008:

Ps. pas de eventuele coeficienten aan die voor jou situatie gelden, meer info hier.

Start het script met:  sudo python ntc.py , druk op CTRL+C om het script te stoppen!

Dit is de output in de console:

Bron:
paulschow.com

ESP8266

Aansluiten op de ESP-12 module

Sluit de sensor aan volgens onderstaand schema:

esp8266 esp-12 met MCP3008 en NTC-PTC

Script: NTC uitlezen (steinhart-hart coeficient)

Wat heb je nodig?
1) ArduinoIDE software
2) ESP8266 ArduinoIDE board/omgeving
3) Arduino MCP3008 bibliotheek
4) Een weerstand 10K ohm (afhankelijk van je NTC waarde)

Met onderstaande script kun je de NTC uitlezen via de MCP3008:

Ps. pas de eventuele coeficienten aan die voor jou situatie gelden, meer info hier.

Als je nu via de Arduino software de “serial monitor” opent, is dit het resultaat:

arduino_ptc_uitlezen_com_readout

Afmetingen

GEEN GEGEVENS

Schema

GEEN GEGEVENS

Teardown

GEEN GEGEVENS

Datasheet

Temperatuur sensor 10K NTC-3470 tabel


Temperatuur sensor 10K NTC-3950 tabel

Fritzing

GEEN GEGEVENS

Downloads