Innholdsfortegnelse:

Måling av temperatur ved hjelp av en PT100 og en Arduino: 16 trinn
Måling av temperatur ved hjelp av en PT100 og en Arduino: 16 trinn

Video: Måling av temperatur ved hjelp av en PT100 og en Arduino: 16 trinn

Video: Måling av temperatur ved hjelp av en PT100 og en Arduino: 16 trinn
Video: ОБОГРЕВАТЕЛЬ БОЛЬШЕ НЕ НУЖЕН! Адский экокамин! 2024, November
Anonim
Måling av temperatur ved hjelp av en PT100 og en Arduino
Måling av temperatur ved hjelp av en PT100 og en Arduino

Målet med dette prosjektet er å designe, bygge og teste et temperatursensorsystem. Systemet ble designet for å måle et temperaturområde på 0 til 100 ° C. En PT100 ble brukt til å måle temperaturen, og det er en motstandstemperaturdetektor (RTD) som endrer motstanden avhengig av omgivelsestemperaturen.

Trinn 1: Apparat

1x PT100

1x brødbrett

2x 2,15 kohms motstander

1x 100 ohm motstand

Ledninger

Strømforsyning

Differensialforsterker

Trinn 2: Om PT100

Om PT100
Om PT100

Som en del av prosjektet har vi som oppgave å måle omgivelsestemperaturen fra 0 grader til 100 grader Celsius. Vi bestemte oss for å bruke PT100 på grunn av følgende årsaker:

PT100 er en motstandstemperaturdetektor (RTD), som kan måle temperaturer fra -200 grader til maksimalt 850 grader Celsius, men brukes vanligvis ikke til å måle temperaturer over 200 grader. Denne serien oppfyller våre krav.

Denne sensoren produserer en motstand for en gitt omgivelsestemperatur. Forholdet mellom temperatur og motstand til sensoren er lineært. Dette, sammen med det minimale oppsettet sensoren krever, gjør det enkelt å jobbe med og alteret hvis det er behov for andre temperaturområder i fremtiden.

PT100 har også en treg responstid, men er nøyaktig. Disse egenskapene har ikke stor innvirkning på målet vårt og var derfor ikke like innflytelsesrike når de bestemte hvilken temperatursensor som skulle brukes.

Trinn 3: Wheatstone Bridge

Wheatstone Bridge
Wheatstone Bridge

Wheatstone Bridge brukes til å måle en ukjent elektrisk motstand ved å balansere to bein i en brokrets, hvorav det ene benet inneholder den ukjente komponenten.

Den primære fordelen med kretsen er dens evne til å få et område med utgangsspenning som begynner på 0V.

En enkel spenningsdeler kan brukes, men vil ikke tillate oss å kvitte oss med noen offset, noe som vil gjøre forsterkning av spenningsutgangen mindre effektiv.

Motstanden i en PT100 varierer fra 100 til 138.5055 for en temperatur på 0 til 100 grader Celsius.

Formelen for en hvetesteinbro er nedenfor. Den kan brukes til å skalere hvetesteinbroen for forskjellige områder hentet fra pdf -tabellen vedlagt.

Vout = Vin (R2/(R1+R2) - R4/(R3+R4))

I vårt scenario:

R2 vil være vår PT100 -motstand.

R1 vil være lik R3.

R4 må være lik 100 ohm for å kunne levere 0V ved 0 grader Celsius.

Ved å sette Vout til 0V og Vin til 5V kan vi motstand oppnå verdier for R1 og R2 = 2,2k ohm.

Vi kan deretter legge inn 138.5055 ohm for sensorens motstand for å få utgangsspenningen vår ved 100 grader Celsius = 80mV

Trinn 4: Simulering av kretsen

Simulering av kretsen
Simulering av kretsen

Et verktøy for å simulere kretser, OrCAD Capture ble brukt til å simulere kretsen vår og finne forventede spenningsutganger ved forskjellige temperaturer. Dette vil bli brukt senere for å sammenligne hvor nøyaktig systemet vårt var.

Kretsen ble simulert ved å perfeksjonere en forbigående tidsanalyse med et paramatisk sveip som varierte pt100 -motstanden fra 100 ohm til 138.5055 ohm i trinn på 3.85055 ohm.

Trinn 5: Simulerte resultater

Simulerte resultater
Simulerte resultater

Resultatene ovenfor viser det lineære forholdet mellom kretsens utgangsspenning og motstandsverdiene.

Resultatene ble deretter lagt inn i excel og plottet. Excel gir den lineære formelen knyttet til disse verdiene. Bekrefter sensorens linearitet og utgangsspenningsområde.

Trinn 6: Opprette kretsen

Opprette kretsen
Opprette kretsen

Kretsen ble satt sammen ved hjelp av to 2,2 k ohm motstander og en 100 ohm motstand.

Motstandene har en toleranse på +-5%. De forskjellige motstandsverdiene gjør at broen er i ubalanse ved 0 grader.

Parallelle motstander ble lagt i serie til 100 ohm motstanden for å legge til nominelle mengder motstand for å få R4 så nær 100 ohm som mulig.

Dette ga en utgangsspenning på 0,00021V som er ekstremt nær 0V.

R1 er 2, 1638 ohm og R3 er 2, 1572 ohm. Mer motstand kan kobles til for å gjøre R1 og R3 nøyaktig like, noe som gir en perfekt balansert bro.

mulige feil:

En variabel motstandsboks som brukes til å teste forskjellige temperaturverdier kan ha vært unøyaktig

Trinn 7: Målte resultater

Målte resultater
Målte resultater

De målte resultatene kan sees nedenfor.

Endring i temperatur ble målt ved hjelp av en variabel motstandsboks for å sette motstanden til R2 til forskjellige motstander som finnes i PT100 -databladet.

Formelen som finnes her, vil bli brukt som en del av koden for å bestemme temperaturutgangen.

Trinn 8: For mye større temperaturområder

For mye større temperaturområder
For mye større temperaturområder

Et termoelement av type K kan innføres i kretsen hvis svært høye temperaturer må registreres. Termoelementet type K kan måle et temperaturområde på -270 til 1370 grader Celsius.

Termoelementer opererer basert på den termoelektriske effekten. En temperaturforskjell gir en potensiell forskjell (spenning).

Siden termoelementer opererer basert på forskjellen på to temperaturer, må temperaturen ved referansekrysset være kjent.

Det er to måter å måle med termoelementer vi kan bruke:

En PT100 -sensor kan plasseres ved referansekrysset og måle referansespenningen

Termoelementets referansekryss kan plasseres i et isbad som vil være konstant 0 grader Celsius, men som ville være upraktisk for dette prosjektet

Trinn 9: Oversikt: Differensialforsterkerstadium

Oversikt: Differensialforsterker Stage
Oversikt: Differensialforsterker Stage

Differensialforsterkeren er en integrert del av bygget. Differensialforsterkeren kombinerer det som egentlig er en ikke-inverterende og inverterende forsterker i en enkelt krets. Selvfølgelig, som med alle bygninger, kommer det med sine egne begrensninger, men som vist i de neste trinnene, hjelper det definitivt med å oppnå riktig effekt på 5V.

Trinn 10: Om differensialforsterkeren

Om differensialforsterkeren
Om differensialforsterkeren

Differensialforsterkeren er en operasjonsforsterker. Den spiller en nøkkelrolle i denne kretsdesignen for å forsterke spenningsutgangen fra Wheatstone -broen i mV til V og blir deretter lest inn som en spenningsinngang av Arduino. Denne forsterkeren tar to spenningsinnganger og forsterker forskjellen mellom de to signalene. Dette kalles differensialspenningsinngangen. Differensialspenningsinngangen forsterkes deretter av forsterkeren og kan observeres ved forsterkerens utgang. Forsterkerinngangene er hentet fra spenningsdelerne til Wheatstone -broen i forrige seksjon.

Trinn 11: Fordeler og begrensninger

Differensialforsterkeren har sin egen andel av fordeler og ulemper. Hovedfordelen med å bruke en slik forsterker er enkel konstruksjon. Som et resultat av denne enkle konstruksjonen, gjør det enklere og mer effektivt å feilsøke problemer som oppstår med kretsen.

Ulempene med å bruke en slik krets er at for å justere forsterkningen til forsterkeren, må forsterkningsbestemmende motstander (tilbakemeldingsmotstand og jordtilkoblet motstand) begge slås av, noe som kan være tidkrevende. For det andre har op-amp en relativt lav CMRR (common-mode rejection ratio) som ikke er ideell for å dempe påvirkningen av input offset-spenning. I en konfigurasjon som vår er det derfor viktig å ha høy CMRR for å dempe effekten av offset -spenning.

Trinn 12: Velge ønsket utgangsøkning

Op-amp har fire motstander koblet til kretsen. 2 matchede motstander ved spenningsinngangene, en annen koblet til jord samt en tilbakemeldingsmotstand. Disse to motstandene fungerer som op-forsterkerens inngangsimpedans. Vanligvis bør en motstand i området 10-100 kilohms være tilstrekkelig, men når disse motstandene er satt, kan forsterkningen bestemmes ved å la den ønskede utgangsforsterkningen være lik forholdet mellom tilbakemeldingsmotstanden og inngangsmotstanden ved en av inngangene (Rf/Rin).

Den jordtilkoblede motstanden, så vel som tilbakemeldingsmotstanden, er tilpasset. Dette er forsterkningsbestemmende motstander. Ved å ha en høy inngangsimpedans minimerer den effekten av belastning på kretsen, dvs. at den forhindrer at store mengder strøm kjøres gjennom enheten, noe som kan ha ødeleggende effekter hvis den er ukontrollert.

Trinn 13: ARDUINO MIKROKONTROLLER

ARDUINO MIKROKONTROLLER
ARDUINO MIKROKONTROLLER

Arduino er en programmerbar mikrokontroller med digitale og analoge I/O -porter. Mikrokontrolleren ble programmert til å lese spenningen fra forsterkeren via en analog inngangspinne. Først vil Arduino lese spenningen fra kretsutgangsområdet 0-5 V og konvertere den til 0-1023 DU, og den vil skrive ut verdien. Deretter vil den analoge verdien bli multiplisert med 5 og dividert med 1023 for å få spenningsverdien. Denne verdien vil bli multiplisert med 20 for å gi den eksakte skalaen for temperaturområdet fra 0-100 C.

For å få forskyvnings- og følsomhetsverdiene, ble avlesningene fra inngangspinnen på A0 tatt med forskjellige verdier for PT100 og grafen ble plottet for å få den lineære ligningen.

Koden som ble brukt:

ugyldig oppsett () {Serial.begin (9600); // start den serielle tilkoblingen med datamaskinen

pinMode (A0, INNGANG); // utgang fra forsterkeren vil bli koblet til denne pinnen

}

hulrom ()

{float offset = 6.4762;

flytefølsomhet = 1,9971;

int AnalogValue = analogRead (A0); // Les innspillet på A0

Serial.print ("Analog verdi:");

Serial.println (AnalogValue); // Skriv ut inngangsverdien

forsinkelse (1000);

float DigitalValue = (AnalogValue * 5) / (1023); // mul med 5 for å gi området 0-100 grader

Serial.print ("Digital verdi:");

Serial.println (DigitalValue); // analog spenningsverdi

flyte temp = (AnalogValue - offset)/sensitivitet;

Serial.print ("Temperaturverdi:");

Serial.println (temp); // utskriftstemperatur

forsinkelse (5000);

}

Trinn 14: Feilsøking

15V-forsyningen til op-amp og 5V til wheatstone bridge og arduino må ha en felles grunn. (alle 0v -verdiene må kobles sammen.)

Et voltmeter kan brukes til å sikre at spenningen synker etter hver motstand for å sikre at det ikke er kortslutninger.

Hvis resultatene er varierende og inkonsekvente, kan ledningene som brukes, testes ved å bruke voltmeteret til å måle trådens motstand, hvis motstanden sier "offline" betyr det at det er uendelig motstand og ledningen har en åpen krets.

Ledninger bør være mindre enn 10 ohm.

Spenningsforskjellen over hvetesteinbroen bør være 0V ved minimumsområdet for temperaturområdet, hvis broen ikke er balansert kan det være fordi:

motstander har en toleranse, noe som betyr at de kan ha en feil som kan føre til at hvetesteinbroen er i ubalanse, motstandene kan kontrolleres med et voltmeter hvis den fjernes fra kretsen. mindre motstander kan legges til i serie eller parallelt for å balansere broen.

Rserier = r1+r2

1/Rparallell = 1/r1 + 1/r2

Trinn 15: Omskalering

Formelen og metoden for å skalere systemet for en annen temperatur finnes i delen av hvetesteinbroen. Når disse verdiene er funnet og kretsen er satt opp:

PT100 bør erstattes med en motstandsboks. Motstandsverdiene bør justeres fra det nye temperaturområdet ved å bruke passende motstandsverdier hentet fra vedlagte pdf.

Den målte spenningen og motstandene og bør plottes i excel med temperatur (motstand) på x -aksen og spenning på y.

En formel vil bli gitt fra dette plottet, forskyvningen vil være konstanten som legges til og sensitiviteten vil være tallet multiplisert med x.

Disse verdiene bør endres på koden, og du har omskaleret systemet.

Trinn 16: Sette opp Arduino

koble utgangen til kretsforsterkeren til A0 -inngangspinnen på Arduino

Koble Arduino Nano via USB -porten på en PC.

lim inn koden i Arduino sketch -arbeidsområdet.

Kompiler koden.

Velg Verktøy> Brett> Velg Arduino Nano.

Velg Verktøy> Port> Velg COM -port.

Last opp koden til Arduino.

Den digitale verdien som sendes ut er spenningsutgangen til op-amp (skal være 0-5V)

Temperaturverdien er systemene som leser temperaturen i Celsius.

Anbefalt: