Sisällysluettelo:

DS18B20 -anturin kalibrointi Arduino UNO: lla: 3 vaihetta (kuvilla)
DS18B20 -anturin kalibrointi Arduino UNO: lla: 3 vaihetta (kuvilla)

Video: DS18B20 -anturin kalibrointi Arduino UNO: lla: 3 vaihetta (kuvilla)

Video: DS18B20 -anturin kalibrointi Arduino UNO: lla: 3 vaihetta (kuvilla)
Video: Arduino DS18B20 temperature sensor tutorial 2024, Marraskuu
Anonim
DS18B20 -anturin kalibrointi Arduino UNO: n kanssa
DS18B20 -anturin kalibrointi Arduino UNO: n kanssa
DS18B20 -anturin kalibrointi Arduino UNO: n kanssa
DS18B20 -anturin kalibrointi Arduino UNO: n kanssa
DS18B20 -anturin kalibrointi Arduino UNO: n kanssa
DS18B20 -anturin kalibrointi Arduino UNO: n kanssa

VASTUUVAPAUSLAUSEKE:

Kuvissa näkyvää laitetta käytetään toisessa projektissa kalvonkehitysprosessin termostaattina. Löydät projektin täältä. Jotta voit kalibroida anturin tai useamman kuin yhden, tarvitset vain sen, mitä löydät tästä projektista, ei mitään muuta, ja se on myös melko yksinkertainen! Mennään!

Vaihe 1: Valmistele laite

Valmistele laite
Valmistele laite

Tässä on luettelo siitä, mitä tarvitset:

  1. Arduino UNO (tai MEGA)
  2. DS18B20 -anturi (t)
  3. 4kOhm - 5kOhm vastus (käytin 5k1Ohm)
  4. LCD -näyttö arvojen lukemiseen (voit myös käyttää kannettavaa tietokonetta ja lukea niitä vain sarjamonitorista)
  5. Luonnos, joka käyttää anturia ja näyttää jotenkin arvot

Ensinnäkin sinun on liitettävä moduulit ja anturi ohjaimeen. Jätän nestekidenäytön monimutkaisen osan voit etsiä verkosta, ja kerron vain, miten anturi kytketään.

Yleensä näissä antureissa on kolme värillistä johtoa: musta, punainen, keltainen. Kaksi ensimmäistä ovat energiaa ja kolmas dataa. Liitä musta GNN: ään, punainen Vcc: hen (5 V) ja keltainen analogituloon, sanotaan esimerkiksi A0.

Liitä nyt vastus keltaisen ja punaisen väliin liitäntöjen viimeistelemiseksi.

Liitä myös nestekidenäyttö (suosittelen yksinkertaista 16x2 LCD -näyttöä, jossa on i2c -liitäntä, jotta voit käyttää vain 4 johtoa) ja olet valmis johtimilla ja kaapeleilla.

Nyt luonnos, joka on erittäin yksinkertainen:

#include "OneWire.h"

#include "DallasTemperature.h" #define ONE_WIRE_BUS_1 A0 OneWire ourWire1 (ONE_WIRE_BUS_1); DallasLämpötila -anturi1 (& ourWire1); #include "LiquidCrystal_I2C.h"

LiquidCrystal_I2C lcd (0x27, 16, 2); float RawValue = 0;

void setup () {lcd.init (); lcd.taustavalo (); anturi1.alku (); sensor1.setResolution (11); } void loop () {sensor1.requestTemperatures (); float RawValue = sensor1.getTempCByIndex (0); lcd.setCursor (0, 0); lcd.print ("Sens. 1"); lcd.print (RawValue, 1); }

Kuten näette, käytämme Dallas Temperature -kirjastoa ja LCD -näyttöä, jossa on i2c -yhteys.

Asetuksissa aloitamme nestekidenäytön ja anturin käytön, ja silmukassa pyydämme vain lämpötilaa ja tallennamme arvon muuttujan RawValue sisään näyttämään sen nestekidenäytössä.

Jos haluat tehdä siitä yksinkertaisemman, käytä vain sarjamonitoria seuraavan luonnoksen kanssa

#Sisällytä "Wire.h" #Sisällytä "OneWire.h" #Sisällytä "DallasTemperature.h" #define ONE_WIRE_BUS_1 A0 OneWire ourWire1 (ONE_WIRE_BUS_1); DallasLämpötila -anturi1 (& ourWire1);

float RawValue = 0;

void setup () {

viive (1000); Sarja.alku (9600); anturi1.alku (); sensor1.setResolution (11);

}

void loop () {sensor1.requestTemperatures (); float RawValue = sensor1.getTempCByIndex (0); Serial.print ("Sens. 1"); Serial.println (RawValue, 1); }

Seuraa nyt minua projektin ytimessä kalibroidaksesi anturin.

Vaihe 2: Kahden pisteen kalibrointi

Kahden pisteen kalibrointi
Kahden pisteen kalibrointi
Kahden pisteen kalibrointi
Kahden pisteen kalibrointi
Kahden pisteen kalibrointi
Kahden pisteen kalibrointi

Jotain tietää ensin

Lämpöanturin kalibroimiseksi sinun on mitattava jotain, jonka lämpötila tiedät. Yksinkertainen tapa tehdä se kotona on käyttää kiehuvaa vettä ja sulaa jäätä, jota kutsutaan myös "kolmoispisteiseksi" kylpyksi. Näissä tapauksissa tiedämme, että vesi kiehuu 100 ° C: ssa merenpinnalla. Muista, että tarkan mittauksen tekemiseksi sinun on tiedettävä korkeutesi ja laskettava oikea kiehumislämpötila siellä.

Voit tarkistaa sen täältä!

Ollakseni rehellinen, sinun pitäisi tarkistaa ilmanpaine eikä korkeus. Mutta tämä tapa on riittävän tarkka.

Kolmen pisteen kylpy tai jäähaude on lämpötila, jossa vesi esiintyy kolmessa tilassa: kiinteä, neste ja kaasu, jolloin lämpötila on 0, 01 ° C. Käytämme yksinkertaistamiseksi 0 ° C.

Tietäen anturin lukeman arvon ja arvon, jonka pitäisi olla, voimme muuttaa DS18B20: n raaka -arvon oikeaksi.

HUOMAUTUS: voit myös käyttää enemmän lämpötilaa anturin kalibroimiseen vain asettamalla sen johonkin muuhun aineeseen, jonka kiehumispiste tiedät, kuten eetteri (35 ° C), pentaani (36, 1 ° C), asetoni (56 ° C) tai Etanoli (78, 37 ° C), mutta nämä kiehuvat aineet tuottavat helposti syttyviä kaasuja! Joten älä tee sitä!

Kiehuvaa vettä:

Laita vettä kattilaan ja kuumenna, kunnes se kiehuu (kaasukuplia kehittyy ja vesi sekoittaa itseään). Upota anturi paikkaan, jossa se ei kosketa mitään muuta kuin vettä. Odota muutama minuutti ja lue lcd tai sarjamonitori

Lämpötilan tulee pysyä samana vähintään minuutin ajan. Jos on, kirjoita arvo ylös. Tämä on sinun: RawHigh -arvo.

Kolmen pisteen kylpy:

Ota nyt iso lasi (et tarvitse mitään valtavaa eikä kattilaa) ja täytä se rajalle jääkuutioilla. Yritä käyttää pienikokoisia jääpaloja. Täytä nyt 80% lasista kylmällä vedellä. Täytä jäällä, jos vipu yrittää laskea alas.

Aseta anturi nyt vesi/jää -esineen sisään ja odota puolitoista minuuttia. Lue lämpötila, jonka pitäisi pysyä samana vähintään 30 sekuntia. Jos on, kirjoita se muistiin, jotta se on RawLow -arvo.

Vaihe 3: Käytä saamiasi arvoja oikealla tavalla

Joten nyt sinulla on tärkeitä arvoja:

  • RaakaKorkea
  • RawLow
  • Viite Korkea
  • ViiteLow

Vertailuarvo on ilmeisesti 99,9 ° C kiehuvalle vedelle (22 m korkeudessa) ja 0 ° C sulamisjäähauteelle. Laske nyt näiden arvojen alueet:

  • RawRange = RawHigh - RawLow
  • ReferenceRange = ReferenceHigh - ReferenceLow

Nyt olet valmis käyttämään tätä anturia missä tahansa muussa projektissa varmistaen, että se antaa sinulle oikean mittauksen. Miten? Käyttämällä täällä hankittua arvoa projektissa, jonka luot tällä anturilla.

Tulevassa projektissasi sinun on käytettävä tässä lukemiasi arvoja, ja ehdotan, että teet sen käyttämällä samoja nimiä kuin tässä.

Ilmoita muuttujat ennen void setup () -osaa seuraavasti:

float RawHigh = 99,6; float RawLow = 0,5; float ReferenceHigh = 99,9; float ReferenceLow = 0; float RawRange = RawHigh - RawLow; float ReferenceRange = ReferenceHigh - ReferenceLow;

Joka kerta, kun käytät anturia, voit laskea CorrectedValue -arvon seuraavan kaavan avulla:

float CorrectedValue = ((((RawValue - RawLow) * ReferenceRange) / RawRange) + ReferenceLow;

RawValue on tietysti anturin lukema.

Se siitä!

Nyt tiedät kuinka kalibroida DS18B20 -anturi tai mikä tahansa muu käyttämäsi anturi! Pidä hauskaa!

Suositeltava: