DS18B20: skysčių temperatūros jutiklis

DS18B20

Yra įvairių drėgmės ir temperatūros jutiklių, tokių kaip LM35. Kai kurie iš jų yra įmontuoti moduliuose, skirti naudoti su „Arduino“. Bet paprastai jie turi matuoti sausą temperatūrą, tai yra, oro temperatūrą. Tačiau yra konkretus modelis, kuris tinka matuoti temperatūrą skysčiuose ir vadinama DS18B20. Ypatumas, kuris gali būti naudingas kai kuriems jūsų egzotiškesniems „pasidaryk pats“ projektams, kuriuose jūs taip pat žaidžiate su tam tikru skysčiu, kuriam jums reikia žinoti šį parametrą.

Tiesą sakant, DS18B20 matuoja ne tik temperatūrą skysčiuose, bet ir gali būti labai naudinga matuoti temperatūrą drėgnoje aplinkoje ir po skysčiu. Taigi jūs taip pat galite naudoti oro temperatūrai matuoti, jei aplinkoje yra daug drėgmės. Ir, kaip sakiau, savybė, kad galima panardinti jį į skystį, kad būtų galima išmatuoti jo temperatūrą, yra viena iš savybių, dėl kurių jis yra nepaprastai praktiškas.

Kas yra DS18B20?

Na, manau, kad tai jau tapo visiškai aišku, tai yra elektroninis jutiklis, galintis matuoti dujinių ar skystų terpių temperatūrą. Be to, yra skirtingas DS18B20 kapsuliavimas ar pakavimas, pavyzdžiui, pagrindinį, kurį matote pagrindiniame paveikslėlyje, arba jis taip pat gali būti integruotas į kai kuriuos PCB, povandeninius zondus ir kt. Savo projektui turėtumėte pasirinkti tinkamiausią formatą pagal tai, ko norite.

Pavyzdžiui, be tipiško TO-92, yra ir „microSOP“. Galbūt integruotis tinkamiausias su „Arduino“ yra TO-92, nes su trimis kaiščiais jį labai lengva įkišti į duoną.

pinout

Ds18b20 kaiščiai

El DS18B20 kištukas ją lengva atpažinti. Pavyzdžiui, atsižvelgiant į Dallas TO-92 paketą, kuris yra vienas iš populiariausių, galite pamatyti, kad jis turi tris kaiščius. Jei įdėsite jį iš priekio, ty suapvalinta dalimi atgal ir žiūrėdami į plokščią veidą, kuriame rodomi užrašai, kaištis kairėje yra 1, o dešinėje - 3. Todėl 1 būtų skirtas GND arba žemė, 2 yra duomenys ir 3 - maitinimo įtampa.

Čia turime pasakyti, vertybes, kurias turėtumėte žinoti:

  • 1 kaištis: turite prijungti jį prie „Arduino“ GND kaiščio, ty prie 0v.
  • 2 kaištis: šis kaištis yra DQ arba duomenys, tie, kurie jutiklio matuojamas temperatūras nusiųs „Arduino“ per tam tikrą protokolą, vadinamą „1-Wire“ ir kuriam reikės specialios „Arduino IDE“ bibliotekos ir funkcijų. Tai leis naudoti tik vieną „Arduino“ kaištį, kad su šiuo protokolu sujungtumėte kelis jutiklius ...
  • 3 kaištis: Jis gali būti maitinamas nuo 3 iki 5,5 V, todėl galite jį prijungti prie „Arduino“ 5 V išėjimo.

DS18B20 techninės charakteristikos ir duomenų lapas

Kaip visada, taip yra įdomu sužinoti technines charakteristikas jutiklio, kad žinotume, kaip jis veikia, kad jo nepažeistumėte, ir visų pirma, kad žinotume, kur yra jo matavimo ribos, nes jei norimos matuoti vertės nėra tarp jų, tai mums ir jums nepadės turėtų ieškoti kitos alternatyvos.

Norėdami tai padaryti, geriausia atsisiųsti gamintojo duomenų lapas, kaip tas Dalase galite pamatyti čia. Čia rasite visą reikalingą informaciją. Nepamirškite, kad nors visi DS18B20 gali būti panašūs, atsižvelgiant į gamintoją ar pakuotę, galite rasti tam tikrų pakeitimų ...

Nepaisant keistenybių, čia yra keletas pagrindiniai techniniai duomenys:

  • Temperatūros diapazonas: Nuo -55 iki 125 ° C, todėl jis gali matuotis dujose ar skystyje esant labai žemai ir aukštai temperatūrai.
  • Klaidos: DS18B20 yra jautrus išoriniam triukšmui ar trikdžiams, kurie gali suteikti klaidingas matavimų reikšmes. Klaidos riba yra plius minus 2ºC, nors esant temperatūrai nuo -10ºC iki 85ºC, tai yra, kai nesame arti ribų, ji gali būti tik pusė laipsnio.
  • Nutarimas: Galite dirbti su keliomis raiškomis arba minimaliais variantais, kuriuos galite aptikti naudodami „Arduino“ analoginius kaiščius. Palaiko 9 bitų, 10 bitų, 11 bitų ir 12 bitų (numatytasis). Tai reiškia, kad jis gali matuoti nuo pusės iki pusės laipsnio, nuo ketvirčio iki ketvirčio laipsnio, atitinkamai nuo 0,125 iki 0,125ºC arba nuo 0,0625ºC. Galite pakeisti šį programavimą naudodami programavimo kodą.
  • Maitinimo įtampa: Nuo 3 iki 5,5v
  • kaina: Nuo 1 iki 3 €

Integracija su „Arduino“

„Arduino“ ryšio schema - ds18b20

Nors yra įvairiais būdais jį prijungti, tinkamiausias yra tas, kurį matote šioje diagramoje. Tai gana paprasta, kai GND kaištis yra atitinkamoje „Arduino“ plokštės jungtyje, maitinimo šaltinis yra tas pats, o tada duomenys į „Arduino“ analogą, kurį pasirinkote programavimo kode „Arduino IDE“. Bet taip pat gerai nustatyti 4,7 k traukimo rezistorių (jei jutiklio zondo kabelio atstumas didesnis, varža turėtų būti mažesnė, pavyzdžiui, 5 m 3,3 k, 10 iš 2,2, XNUMX k,…) duomenų smeigtuką ir taip išlaikyti jį visada aukštą.

programavimas „Arduino IDE“ Gerą integraciją su DS18B20 ir tuo pačiu protokolu rekomenduojama atsisiųsti bibliotekas Dalaso temperatūra y „OneWire“ nuo aplinkos. Tai gali būti kažkas panašaus į šį pavyzdį, kurį parodau:

#include <OneWire.h>
#include <DallasTemperature.h>

// Pin donde se conecta el bus 1-Wire (DQ)
const int pinDatosDQ = 9;

// Instancia a las clases OneWire y DallasTemperature
OneWire oneWireObjeto(pinDatosDQ);
DallasTemperature sensorDS18B20(&oneWireObjeto);
 
void setup() {
    // Iniciamos la comunicación serie a 9600 baudios
    Serial.begin(9600);
    // Iniciamos el bus 1-Wire del sensor
    sensorDS18B20.begin(); 
}
 
void loop() {
    // Indicamos que tome la temperatura
    Serial.println("Midiendo temperatura");
    sensorDS18B20.requestTemperatures();
 
    // Lee y muestra la temperatura (recuerda que puedes conectar más de uno con 1-wire)
    Serial.print("La temperatura del sensor 0 es de: ");
    Serial.print(sensorDS18B20.getTempCByIndex(0));
    Serial.println(" C");
    Serial.print("La temperatura del sensor x es de: ");
    Serial.print(sensorDS18B20.getTempCByIndex(1));
    Serial.println(" ºC");
    
    delay(1000); 
}

Daugiau informacijos - „Arduino“ programavimo vadovas (nemokamas PDF)


Būkite pirmas, kuris pakomentuos

Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Atsakingas už duomenis: Miguel Ángel Gatón
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.