Olika temperatursensorer har analyserats i andra artiklar. Ett av elementen eller enheterna som du kan använda för att mäta denna temperatur är just den termistor, på engelska termistor (termiskt känsligt motstånd eller temperaturkänsligt motstånd). Som namnet antyder är det baserat på ett material som ändrar sitt elektriska motstånd i enlighet med den temperatur det utsätts för.
På detta sätt, med hjälp av en enkel formel, som känner till spänningen och intensiteten som den utsätts för, kan motståndet analyseras till bestäm temperaturen enligt dess skala. Men det används inte bara som temperatursensor, det kan också användas för att ändra vissa egenskaper hos kretsen baserat på dess temperatur, som ett skyddselement mot överström etc.
La val av sensortyp Vad du ska använda för ditt projekt beror på dina behov. Andra artiklar som kan intressera dig om temperatursensorer:
- LM35: temperatur- och luftfuktighetssensor.
- DS18B20: temperaturgivare för vätskor.
- DHT22: precisionstemperatur- och luftfuktighetssensor.
- DHT11: billig temperatur- och luftfuktighetssensor.
Introduktion till termistorn
På marknaden kan du hitta mycket termistorer med olika inkapslingar och av olika typer. Alla är baserade på samma princip, deras halvledarmaterial (nickeloxid, koboltoxid, järnoxid, ...) kommer att ändras när temperaturen varierar och därmed förändra dess inre motstånd.
Typ
Bland de termistortyper vi kan lyfta fram två grupper:
- NTC (negativ temperaturkoefficient) termistor: dessa termistorer med negativ temperaturkoefficient, när temperaturen ökar, ökar också koncentrationen av laddningsbärare, därför minskas deras motstånd. Detta gör dem praktiska så att de kan användas som:
- Temperaturgivare som är ganska frekventa i många kretsar, såsom låg temperatur resistiv detektor, inom fordonsindustrin för mätningar på motorer, i digitala termostater etc.
- Startströmbegränsare vid användning av ett material med högt initialt motstånd. När strömmen passerar genom dem när kretsen slås på värms den här enheten upp på grund av det motstånd den ger och när temperaturen ökar kommer motståndet att minska gradvis. Detta förhindrar att strömflödet till kretsen blir mycket högt i början.
- PTC-termistorer (positiv temperaturkoefficient): de är andra termistorer med en positiv temperaturkoefficient, med mycket höga dopningsmedelskoncentrationer som ger dem motsatt effekt till NTC. Det vill säga istället för att sänka motståndet med ökande temperatur uppstår motsatt effekt hos dem. Av denna anledning kan de användas som säkringar för att skydda överströmskretsar, som en timer för att avmagnetisera CRT- eller katodstråleskärmar, för att reglera motorns ström etc.
Förväxla inte termistorn med RTD (motståndstemperaturdetektor)Eftersom till skillnad från dem, ändrar INTE motståndet nästan linjärt. RTD är en typ av motståndstermometer för att detektera temperatur baserat på variationen i ledarens motstånd. Metallen av dessa (koppar, nickel, platina, ...), när den värms upp, har en större termisk omrörning som sprider elektronerna och minskar deras genomsnittliga hastighet (ökar motståndet). Därför, ju högre temperatur, desto större motstånd, som med NTC.
Både RTD, NTC och PTC är ganska vanliga, särskilt NTC. Anledningen är att de kan utföra sin roll med en mycket liten storlek och ett mycket billigt pris. Ni förvärva NTC-termistorer som den populära MF52 till lågt pris i butiker som Amazon, precis som Inga produkter hittade., liksom i andra specialiserade elektronikbutiker.
Beträffande pinout, den har bara två stift, precis som vanliga motstånd. Dess sätt att ansluta det är detsamma som för vilket motstånd som helst, bara motståndsvärdet förblir inte stabilt, som du redan borde veta. För mer information om de accepterade temperaturområdena, den maximala spänningen som stöds etc., kan du läsa informationen omarkblad av komponenten du har köpt.
Integration med Arduino
till integrera en termistor med ditt Arduino-kort, anslutningen kunde inte vara enklare. Det är bara nödvändigt att anpassa den teorin och beräkningarna för koden som du måste generera i din Arduino IDE. I vårt fall har jag antagit att jag använder en NTC-termistor, speciellt MF52-modellen. Om du använder en annan termistormodell måste du variera värdena A, B och C för att anpassa dem enligt Steinhart-Hart-ekvationen:
vara T den uppmätta temperaturen, T0 är värdet på omgivningstemperaturen (du kan kalibrera den som du är intresserad, t.ex. 25 ° C), R0 skulle vara värdet på motståndet hos NTC-termistorn (i vårt fall den som tillhandahålls av databladet MF52, och du bör förväxla det inte med motståndet jag har lagt till kretsen), och koefficienten B eller Beta finns i tillverkarens tekniska datablad.
El kod det skulle därför vara så här:
#include <math.h> const int Rc = 10000; //Valor de la resistencia del termistor MF52 const int Vcc = 5; const int SensorPIN = A0; //Valores calculados para este modelo con Steinhart-Hart float A = 1.11492089e-3; float B = 2.372075385e-4; float C = 6.954079529e-8; float K = 2.5; //Factor de disipacion en mW/C void setup() { Serial.begin(9600); } void loop() { float raw = analogRead(SensorPIN); float V = raw / 1024 * Vcc; float R = (Rc * V ) / (Vcc - V); float logR = log(R); float R_th = 1.0 / (A + B * logR + C * logR * logR * logR ); float kelvin = R_th - V*V/(K * R)*1000; float celsius = kelvin - 273.15; Serial.print("Temperatura = "); Serial.print(celsius); Serial.print("ºC\n"); delay(3000); }
Jag hoppas att den här guiden har hjälpt dig ...