DS18B20: суюктуктар үчүн температура сенсору

DS18B20

Сыяктуу ар кандай нымдуулук жана температура сенсорлору бар LM35. Айрымдары Arduino менен конкреттүү колдонуу үчүн модулдарга курулган. Бирок жалпысынан алар кургак температураны, башкача айтканда, абанын температурасын өлчөшү керек. Бирок иштей турган конкреттүү модель бар суюктуктагы температураны өлчөө жана DS18B20 деп аталат. Айрым экзотикалык DIY долбоорлоруңузда пайдалуу болушу мүмкүн, анда сиз ушул параметрди билишиңиз керек болгон кандайдыр бир суюктук түрүн ойнойсуз.

Чындыгында DS18B20 суюктуктардагы температураны гана өлчөп койбостон, температураны өлчөө өтө пайдалуу болушу мүмкүн нымдуу чөйрөдө жана ошондой эле суюктуктун астында. Ошентип, аны айлана-чөйрө нымдуулукка толуп калса, абанын температурасын өлчөө үчүн колдонсоңуз болот. Жогоруда айткандай, анын температурасын өлчөө үчүн суюктукка батыра алуу өзгөчөлүгү аны укмуштай практикалык кылган өзгөчөлүктөрдүн бири.

DS18B20 деген эмне?

Менин оюмча, ал буга чейин эле ачык-айкын болуп калды, бул газ же суюк чөйрөнүн температурасын өлчөөгө жөндөмдүү электрондук сенсор. Мындан тышкары, бар ар кандай пакеттер же DS18B20 таңгактары, мисалы, негизги сүрөттө көрсөткөн негизги, же болбосо кээ бир ПКБларга, суу астындагы зонддорго ж.б. Долбооруңуз үчүн каалаганыңызга ылайыктуу форматты тандашыңыз керек.

Мисалы, типтүү TO-92ден тышкары microSOP дагы бар. Интеграциялоо мүмкүн Arduino менен эң ылайыктуусу TO-92, анткени үч түйрөөчү менен нан тактасына туташуу үчүн киргизүү оңой.

Кадап чыгып

Ds18b20 төөнөгүчтөр

El DS18B20 бекиткичи аны аныктоо оңой. Мисалы, эң популярдуу пакеттердин бири болгон Даллас TO-92 пакетин алып карасак, анын үч сайгычы бар экендигин байкасаңыз болот. Эгерде сиз аны алдыңкы жактан, башкача айтканда, тегеректелген бөлүктү артка таштап, жазуулар пайда болгон жалпак жүздү карасаңыз, сол жагыңыздагы төөнөгүч 1, ал эми оң жагыңыз 3 болсо, демек, GND үчүн 1 болмок же жер, 2 маалымат үчүн, ал эми 3 чыңалуу үчүн.

Бул жерде биз ушуну айтууга тийишпиз, Сиз билишиңиз керек болгон баалуулуктар:

  • 1-төөнөгүч: сиз аны Arduino'нун GND пинине, башкача айтканда, 0vге туташтырыңыз.
  • 2-төөнөгүч: бул PIN - бул DQ же маалымат, ал сенсор менен өлчөнгөн температураны Arduinoго 1-Wire деп аталган белгилүү протокол аркылуу жөнөтөт жана Arduino IDE үчүн атайын китепканага жана функцияларга муктаж болот. Бул бир нече сенсорду ушул протокол менен туташтыруу үчүн бир гана Arduino пинин колдонууга мүмкүнчүлүк берет ...
  • 3-төөнөгүч: Ал 3төн 5,5 в чейин иштей алат, андыктан аны Arduino компаниясынын 5v кубаттуулугуна туташтыра аласыз.

DS18B20 техникалык мүнөздөмөлөрү жана маалымат жадыбалы

Адаттагыдай эле техникалык мүнөздөмөлөрүн билүү кызыктуу Анын иштешин билүү үчүн, сен ага зыян келтирбеши үчүн, жана баарынан мурда анын өлчөө чектери кайда экендигин билишибиз керек, анткени эгер биз өлчөөчү маанилер алардын ортосунда болбосо, анда ал бизге жана башка альтернатива издеш керек.

Бул үчүн, жүктөп алуу жакшы маалымат баракчасы, Далластагыдай сиз бул жерден көрө аласыз. Ал жерден сиз бардык керектүү маалыматтарды таба аласыз. Бардык DS18B20 окшош болгонуна карабастан, өндүрүүчүгө же пакетке жараша кандайдыр бир өзгөрүүлөрдү тапканыңызды унутпаңыз ...

Бирок, кызыккан нерселерге карабастан, бир нече негизги техникалык маалыматтар:

  • Температура диапазону: -55 ден 125ºСге чейин, ал газ же суюктукта өтө төмөн, ошондой эле жогорку температурада өлчөй алат.
  • Ката: DS18B20 тышкы ызы-чууга же бузууларга сезгич, алар өлчөөдө ката көрсөткүчтөрдү берет. Ката катасы минус 2ºCди түзөт, бирок -10ºC менен 85ºC температурада, башкача айтканда, биз чектерге жакын болбогондо, ал жарым градуска гана жетиши мүмкүн.
  • токтому: Сиз Arduino аналогдук төөнөгүчтөрү аркылуу аныктай турган бир нече чечим же минималдуу вариациялар менен иштей аласыз. 9-бит, 10-бит, 11-бит жана 12-бит (демейки) колдойт. Башкача айтканда, ал жарымынан жарым градуска чейин, төрттөн төрттөн төрттөн бир градуска чейин, 0,125тен 0,125ºСке чейин же 0,0625ºС чейин өлчөй алат. Бул программалоону программалоо коду аркылуу өзгөртө аласыз.
  • Берүү чыңалуусу: 3 - 5,5v
  • баа: 1 ден 3 € чейин

Arduino менен интеграциялоо

Arduino байланыш диаграммасы - ds18b20

Бар да аны туташтыруунун ар кандай жолдору, эң ылайыктуусу бул диаграммада көрсөтүлгөн. Бул Arduino тактасынын тийиштүү туташуусундагы GND төөнөгүчү менен бир аз жөнөкөй, андан кийин Arduino IDEдеги программалоо кодуңузда тандап алган Arduino аналогунун маалыматтары ошол эле учурда. Бирок 4,7к тартылуу резисторун орнотуу жакшы (эгер сенсордун зонд кабелинин аралыгы чоңураак болсо, каршылык төмөн болушу керек, мисалы, 5м 3,3к үчүн, 10 үчүн 2,2, XNUMXк,… үчүн) маалыматтын төөнөгүчү үчүн жана аны ар дайым бийик кармаңыз.

үчүн Arduino IDEде программалоо жана анын DS18B20 протоколу менен жакшы интеграцияланышы жана китепканаларды жүктөп алуу сунушталат Даллас температурасы y OneWire айлана-чөйрөдөн. Ал эми негизги код, мен көрсөткөн мисал сыяктуу болушу мүмкүн:

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

Кошумча маалымат - Arduino программалоо боюнча колдонмо (Акысыз PDF)


Макаланын мазмуну биздин принциптерге карманат редакциялык этика. Ката жөнүндө кабарлоо үчүн чыкылдатыңыз бул жерде.

Комментарий биринчи болуп

Комментарий калтырыңыз

Сиздин электрондук почта дареги жарыяланбайт. Милдеттүү талаалар менен белгиленет *

*

*

  1. Маалыматтар үчүн жооптуу: Мигель Анхель Гатан
  2. Маалыматтын максаты: СПАМды көзөмөлдөө, комментарийлерди башкаруу.
  3. Мыйзамдуулук: Сиздин макулдугуңуз
  4. Маалыматтарды берүү: Маалыматтар үчүнчү жактарга юридикалык милдеттенмелерден тышкары билдирилбейт.
  5. Маалыматтарды сактоо: Occentus Networks (ЕС) тарабынан уюштурулган маалыматтар базасы
  6. Укуктар: Каалаган убакта маалыматыңызды чектеп, калыбына келтирип жана жок кыла аласыз.