DS18B20: teplotný senzor pre kvapaliny

DS18B20

K dispozícii sú rôzne snímače vlhkosti a teploty, ako napr LM35. Niektoré sú zabudované do modulov na konkrétne použitie s Arduino. Spravidla však majú merať suchú teplotu, to znamená teplotu vzduchu. Existuje však konkrétny model, ktorý funguje meria teplotu v kvapalinách a nazýva sa DS18B20. Zvláštnosť, ktorá môže byť užitočná pre niektoré z vašich exotickejších kutilských projektov, kde hráte aj s nejakým typom kvapaliny, pre ktorú potrebujete tento parameter poznať.

DS18B20 v skutočnosti nemeria iba teplotu vo vnútri kvapalín, ale môže byť veľmi užitočné merať teplotu v vlhkom prostredí a tiež pod určitou tekutinou. Môžete ho teda použiť aj na meranie teploty vzduchu, ak je prostredie dosť zaťažené vlhkosťou. A ako som už povedal, vlastnosť byť ponorený do kvapaliny na meranie jeho teploty je jednou z vlastností, vďaka ktorým je neuveriteľne praktický.

Čo je to DS18B20?

Myslím si, že to už bolo celkom jasné, jedná sa o elektronický snímač schopný merať teplotu plynných alebo kvapalných médií. Okrem toho existujú rôzne balíčky alebo balíčky DS18B20, napríklad základnú, ktorú vidíte na hlavnom obrázku, alebo ju možno integrovať aj do niektorých dosiek plošných spojov, ponorných sond atď. Pre svoj projekt by ste si mali zvoliť najvhodnejší formát podľa toho, čo chcete.

Napríklad okrem typického TO-92 existuje aj microSOP. Možno integrovať s Arduino je najvhodnejší TO-92, pretože s jeho tromi kolíkmi sa dá veľmi ľahko zasunúť do kontaktnej dosky na pripojenie.

pinov

Piny Ds18b20

El Vývod DS18B20 je ľahko identifikovateľný. Napríklad, keď si vezmeme ako referenciu balík Dallas TO-92, ktorý je jedným z najpopulárnejších, môžete vidieť, že má tri piny. Ak ho dáte spredu, to znamená so zaoblenou časťou dozadu a pri pohľade na plochú tvár, kde sa nachádzajú nápisy, je špendlík na ľavej strane 1 a pravý na 3. Preto 1 by platil pre GND alebo zem, 2 je pre dáta a 3 pre napájacie napätie.

Tu musíme povedať, že hodnoty, ktoré by ste mali poznať:

  • Pin 1: musíte ho pripojiť k GND pinu Arduina, to znamená k 0v.
  • Pin 2: tento pin je DQ alebo dáta, ten, ktorý bude odosielať teploty namerané senzorom do Arduina prostredníctvom konkrétneho protokolu známeho ako 1-Wire a ktorý bude vyžadovať špeciálnu knižnicu a funkcie pre Arduino IDE. To umožní použiť iba jeden pin Arduino na pripojenie viacerých senzorov s týmto protokolom ...
  • Pin 3: Môže byť napájaný od 3 do 5,5 V, takže ho môžete pripojiť k 5V výstupu Arduina.

Technické parametre a technický list DS18B20

Ako vždy je zaujímavé poznať technické vlastnosti senzora, aby sme vedeli, ako to funguje, aby sme ho nepoškodili, a hlavne aby sme vedeli, kde sú jeho limity merania, pretože ak hodnoty, ktoré chceme merať, nie sú medzi nimi, nepomôže nám to a mali by ste hľadať inú alternatívu.

Najlepšie je stiahnuť si a údajový list výrobcu, ako ten v Dallase môžete vidieť tu. Nájdete tam všetky potrebné informácie. Pamätajte, že aj keď všetky modely DS18B20 môžu byť podobné, v závislosti od výrobcu alebo balenia môžete nájsť určité zmeny ...

Ale bez ohľadu na vtipy, tu je niekoľko základné technické údaje:

  • Teplotný rozsah: -55 až 125 ° C, preto môže merať v plyne alebo kvapaline pri veľmi nízkych a tiež vysokých teplotách.
  • chyby: DS18B20 je citlivý na vonkajší hluk alebo rušenie, ktoré môže pri meraniach spôsobiť chybné hodnoty. Rozpätie chyby je plus mínus 2 ° C, hoci pri teplotách medzi -10 ° C a 85 ° C, to znamená, keď nie sme blízko hraníc, môže to byť iba pol stupňa.
  • Riešenie: Môžete pracovať s niekoľkými rozlíšeniami alebo minimálnymi variáciami, ktoré môžete zistiť pomocou analógových pinov Arduino. Podporuje 9-bit, 10-bit, 11-bit a 12-bit (predvolené). To znamená, že môže merať od pol do pol stupňa, od štvrtiny do štvrtiny stupňa, od 0,125 do 0,125 ° C alebo od 0,0625 ° C. Toto programovanie môžete zmeniť pomocou programovacieho kódu.
  • Napájacie napätie: 3 až 5,5 v
  • cena: 1 až 3 €

Integrácia s Arduino

Schéma pripojenia Arduino - ds18b20

Aj keď existujú rôznymi spôsobmi, najvhodnejší je ten, ktorý vidíte na tomto diagrame. Je to celkom jednoduché, s pinom GND v príslušnom zapojení dosky Arduino, rovnakým zdrojom napájania a potom s údajmi do analógu Arduino, ktoré ste si vybrali vo svojom programovacom kóde v Arduino IDE. Je ale tiež dobré nastaviť 4,7k pull-up rezistor (ak je vzdialenosť kábla sondy snímača väčšia, odpor by mal byť nižší, napríklad pri 5 m pri 3,3 k, pri 10 z 2,2, XNUMX k, ...) pre dátový pin, a tým ho udržiavať vždy na vysokej úrovni.

Pre programovanie v Arduino IDE a jeho dobrá integrácia s DS18B20 a týmto veľmi konkrétnym protokolom sa odporúča stiahnuť si knižnice Dallasova teplota y OneWire z prostredia. A základný kód, môže to byť niečo ako tento príklad, ktorý ukážem:

#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); 
}

Viac informácií - Programovací manuál Arduino (PDF zadarmo)


Buďte prvý komentár

Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Zodpovedný za údaje: Miguel Ángel Gatón
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.