Temperatursensorer sammenlignet: Termistor, termopar og digitale

Middels6 min lesetid

Skal du måle temperatur i ditt neste elektronikkprosjekt, står du raskt overfor et valg: termistor, termopar, DS18B20 eller en kontaktløs IR-sensor? Alle fire løser samme grunnleggende oppgave, men de gjør det på svært forskjellige måter – og valget påvirker både nøyaktighet, pris og hvor mye kode du må skrive. La oss se på dette sammen, slik at du kan velge riktig sensor første gang.

Hva du trenger

  • NTC-termistor (f.eks. 10k med B-verdi 3950)
  • Termopar type K med forsterkermodul (MAX6675 eller MAX31855)
  • DS18B20 digital temperatursensor (TO-92 eller vanntett probe)
  • MLX90614 IR-temperatursensor (I2C)
  • Mikrokontroller (Arduino, ESP32 eller tilsvarende)
  • Motstander til termistor (fast referansemotstand) og 4,7kΩ pull-up til DS18B20
  • Jumperkabler og breadboard

Alle komponentene over finner du typisk i sensorsortimentet hos RoboNordic, så du slipper å lete på flere steder.

NTC-termistor: Den analoge klassikeren

NTC står for Negative Temperature Coefficient, og prinsippet er enkelt: motstanden synker når temperaturen stiger. En NTC-termistor er billig, rask og krever kun en spenningsdeler for å lese av verdien på en analog inngang.

Slik regner du ut temperaturen

  1. Koble termistoren i serie med en fast referansemotstand (gjerne samme verdi som termistorens nominelle motstand ved 25°C).
  2. Les spenningen over termistoren med en ADC.
  3. Regn ut motstanden ut fra spenningsdeleren.
  4. Bruk Steinhart-Hart-ligningen eller en forenklet beta-formel for å konvertere motstand til temperatur.
float lesTemperaturNTC(int adcVerdi) {
  float R_fast = 10000.0;
  float beta = 3950.0;
  float T0 = 298.15; // 25°C i Kelvin

  float spenningsforhold = (float)adcVerdi / 1023.0;
  float R_termistor = R_fast * (1.0 / spenningsforhold - 1.0);

  float temperaturKelvin = 1.0 / (1.0/T0 + (1.0/beta) * log(R_termistor/10000.0));
  return temperaturKelvin - 273.15;
}

Tips: Beta-formelen er god nok for de fleste hobbyprosjekter, men hvis du trenger høy nøyaktighet over et bredt temperaturområde, bør du bruke full Steinhart-Hart-ligning med tre koeffisienter fra databladet.

Termopar-prinsipp: Når du trenger ekstreme temperaturer

En termopar type K består av to ulike metalltråder (vanligvis chromel og alumel) sveiset sammen i én ende. Når det oppstår en temperaturforskjell mellom måleskjøten og referansepunktet, genereres det en liten spenning – dette kalles Seebeck-effekten. Spenningen er i mikrovolt-området, så du trenger alltid en forsterkerkrets som MAX6675 eller MAX31855 for å lese den av digitalt.

Termoparer tåler temperaturer opp mot 1350°C, noe som gjør dem uunnværlige i 3D-printer-hotends, ovner og industrielle prosesser der termistorer og DS18B20 rett og slett smelter.

Tips: Hold termoparkablene unna sterke strømførende ledninger. De tynne signalene er svært følsomme for elektrisk støy, og dårlig skjerming gir ustabile avlesninger.

DS18B20 og 1-Wire: Digital enkelhet

DS18B20 fra Maxim/Analog Devices er en digital sensor som kommuniserer over 1-Wire-protokollen. Det betyr at du kan koble flere sensorer til samme databus og lese dem individuelt via en unik 64-bit adresse som er brent inn i hver krets fra fabrikk.

Kobling og oppsett

  1. Koble VDD til 3,3–5V og GND til jord.
  2. Koble datapinnen til en digital pinne på mikrokontrolleren.
  3. Legg en 4,7kΩ pull-up-motstand mellom data og VDD.
  4. Installer biblioteket OneWire og DallasTemperature i Arduino IDE.
#include 
#include 

#define ONE_WIRE_BUS 4
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensorer(&oneWire);

void setup() {
  Serial.begin(9600);
  sensorer.begin();
}

void loop() {
  sensorer.requestTemperatures();
  float temp = sensorer.getTempCByIndex(0);
  Serial.println(temp);
  delay(1000);
}

Fordelen med DS18B20 er at du slipper kalibrering og analog støy – sensoren gir deg et ferdig temperaturtall direkte. Ulempen er noe lavere oppdateringsfrekvens og et mer begrenset temperaturområde enn termopar.

MLX90614: Kontaktløs måling med infrarødt lys

MLX90614 måler infrarød stråling fra en overflate og regner om til temperatur uten fysisk kontakt. Sensoren kommuniserer over I2C og har faktisk to målinger innebygd: omgivelsestemperatur og objekttemperatur.

Dette gjør den ideell når du skal måle temperaturen på noe som roterer, er farlig å berøre, eller befinner seg i vakuum eller bak glass. Vær oppmerksom på at målingen påvirkes av objektets emissivitet – blanke, reflekterende overflater gir mindre pålitelige avlesninger enn matte overflater.

Tips: Standard emissivitet på MLX90614 er satt til 0,95, som passer godt for de fleste organiske materialer og malte overflater. Skal du måle på blank metall, bør du justere emissivitetsverdien i registeret eller dekke overflaten med matt tape.

Nøyaktighet sammenlignet

Her er en oversikt over hvordan de fire sensortypene stiller seg mot hverandre på sentrale egenskaper:

Sensor Omrade Nøyaktighet Grensesnitt Beste bruk NTC-termistor -55 til 150°C ±0,5-2°C Analog (ADC) Rimelig, rask respons Termopar type K -200 til 1350°C ±1-2°C Analog + forsterker Industri, høy varme DS18B20 -55 til 125°C ±0,5°C Digital 1-Wire Enkel, multi-sensor MLX90614 IR -70 til 380°C ±0,5°C Digital I2C Kontaktløs måling

Som tabellen viser, er DS18B20 og MLX90614 ganske like i nøyaktighet, men løser helt ulike problemer – én krever fysisk kontakt, den andre ikke. Termistoren vinner på pris og responstid, mens termoparen er det eneste alternativet når temperaturen overstiger noen hundre grader.

Vanlige feil

  • Glemmer pull-up-motstand på DS18B20: Uten 4,7kΩ mellom data og VDD får du ustabile eller manglende avlesninger på 1-Wire-bussen.
  • Bruker termopar uten kaldpunkt-kompensasjon: MAX6675 og MAX31855 håndterer dette automatisk, men kobler du termoparen direkte til en ADC uten forsterker, får du helt feil verdier.
  • Feil beta-verdi på termistor: Mange tror alle 10k NTC-termistorer er like, men beta-verdien varierer mellom produsenter og påvirker nøyaktigheten betydelig.
  • Ignorerer emissivitet på IR-sensor: Måling på blanke eller reflekterende overflater uten justert emissivitet gir ofte temperaturer som er 10-20°C feil.
  • For lang kabel på analoge sensorer: Lange ledninger til termistor eller termopar fanger opp støy. Hold kablene korte eller bruk skjermet kabel ved behov.

Tips: Skal du bygge et prosjekt med flere temperaturpunkter samtidig, er DS18B20 ofte det enkleste valget – du kan kjede sammen opptil flere titalls sensorer på én enkelt datapinne.

Oppsummering: Hvilken sensor passer deg?

Velg NTC-termistor når du trenger rask og billig måling innenfor et moderat temperaturområde. Velg termopar type K når du skal måle ekstreme temperaturer, som i en 3D-printer hotend eller ovn. Velg DS18B20 når du vil ha en robust digital løsning med minimal kalibrering, gjerne med flere sensorer på samme buss. Og velg MLX90614 når kontaktløs måling er et krav – for eksempel ved roterende deler eller farlige overflater.

Uansett hvilken løsning du lander på, finner du komponentene og tilhørende moduler i sensorutvalget hos RoboNordic, klare til å kobles inn i ditt neste prosjekt.

Kilder

  • Maxim Integrated / Analog Devices: DS18B20-datablad
  • Melexis: MLX90614-datablad
  • NIST: Temperature-Electromotive Force Reference Tables for Type K Thermocouples
  • Vishay/EPCOS: NTC Thermistor Application Notes

Mer om elektronikk og sensorer

Se alle →