DS18B20: датчик температури для рідин

DS18B20

Доступні різні датчики вологості та температури, такі як LM35. Деякі вбудовані в модулі для спеціального використання з Arduino. Але загалом вони мають вимірювати суху температуру, тобто температуру повітря. Але є конкретна модель, яка працює вимірюють температуру в рідинах і називається DS18B20. Особливість, яка може стати в нагоді для деяких з ваших більш екзотичних проектів "зроби сам", де ти також граєш із типом рідини, для якого ти повинен знати цей параметр.

Насправді DS18B20 не тільки вимірює температуру всередині рідин, але може бути дуже корисним для вимірювання температури в вологому середовищі, а також під деякою рідиною. Тож ви також можете використовувати його для вимірювання температури повітря, якщо навколишнє середовище досить завантажене вологістю. І як я вже сказав, особливість можливості занурити його в рідину для вимірювання температури - одна з особливостей, яка робить її неймовірно практичною.

Що таке DS18B20?

Ну, я думаю, це вже стало цілком зрозуміло, це електронний датчик, здатний вимірювати температуру газоподібних або рідких середовищ. Крім того, є інша упаковка або упаковка DS18B20, такий як основний, який ви бачите на основному зображенні, або його також можна інтегрувати в деякі друковані плати, занурювальні зонди тощо. Для вашого проекту слід вибрати найбільш підходящий формат відповідно до того, що ви хочете.

Наприклад, крім типового ТО-92, існує ще і microSOP. Можливо, інтегрувати з Arduino найбільш підходящим є TO-92, оскільки за допомогою трьох штифтів його дуже легко вставити в макет для підключення.

терморегулятори

DS18b20 шпильки

El Розпіновка DS18B20 це легко визначити. Наприклад, взявши в якості посилання пакет Dallas TO-92, який є одним з найпопулярніших, ви можете бачити, що він має три штифти. Якщо покласти його спереду, тобто із закругленим перетином назад, і дивитись на плоску грань, де з’являються написи, шпилька зліва - 1, а справа - 3. Отже, 1 буде для GND або заземлення, 2 - для даних, а 3 - для напруги живлення.

Тут ми повинні сказати, що цінності, які ви повинні знати:

  • Висновок 1: ви повинні підключити його до виводу GND Arduino, тобто до 0v.
  • Висновок 2: цей висновок - це DQ або дані, той, який передаватиме виміряні датчиком температури в Arduino за допомогою конкретного протоколу, відомого як 1-Wire, і який потребуватиме спеціальної бібліотеки та функцій для IDE Arduino. Це дозволить використовувати лише один штифт Arduino для підключення декількох датчиків за цим протоколом ...
  • Контакт 3: його можна живити від 3 до 5,5 в, тому ви можете підключити його до виходу 5 в Arduino.

Технічні характеристики DS18B20 та технічний паспорт

Як завжди, це так цікаво знати технічні характеристики сенсора, щоб знати, як він працює, щоб не пошкодити його, і перш за все, щоб ми знали, де знаходяться його межі вимірювання, оскільки якщо значення, які ми хочемо виміряти, не знаходяться між ними, це не допоможе нам і слід шукати іншу альтернативу.

Для цього найкраще завантажити файл таблиця виробника, як той у Далласі Ви можете побачити тут. Там ви знайдете всю необхідну інформацію. І пам’ятайте, що хоча всі DS18B20 можуть бути схожими, залежно від виробника або упаковки ви можете знайти деякі зміни ...

Але незалежно від примх, ось кілька основні технічні дані:

  • Температурний діапазон: -55 до 125ºC, отже, він може вимірювати в газі або рідині при дуже низьких, а також високих температурах.
  • Помилки: DS18B20 чутливий до зовнішніх шумів або порушень, які можуть дати помилкові значення при вимірах. Похибка становить плюс мінус 2ºC, хоча при температурах від -10ºC до 85ºC, тобто коли ми не близькі до меж, це може бути лише півградуса.
  • Роздільна здатність: Ви можете працювати з декількома роздільною здатністю або мінімальними варіаціями, які можна виявити за допомогою аналогових штифтів Arduino. Підтримує 9-біт, 10-біт, 11-біт і 12-біт (за замовчуванням). Тобто він може вимірювати від півтора до півтора градусів, від чверті до чверті градусів, від 0,125 до 0,125 ° С або від 0,0625 ° С відповідно. Ви можете змінити це програмування за допомогою коду програмування.
  • Напруга живлення: Від 3 до 5,5 в
  • ціна: Від 1 до 3 €

Інтеграція з Arduino

Схема підключення Arduino - DS18B20

Хоча є різні способи його підключення, найбільш підходящим є той, який ви бачите на цій схемі. Це досить просто, із штифтом GND у відповідному підключенні плати Arduino, джерело живлення однакове, а потім дані аналогового Arduino, які ви вибрали в коді програмування в IDE Arduino. Але також добре встановити підтягуючий резистор 4,7k (якщо відстань кабелю датчика датчика більше, опір повинен бути меншим, наприклад, для 5 м 3,3k, для 10 з 2,2, XNUMXk, ...) для штифта даних і, таким чином, підтримуйте його завжди високим.

Для програмування в IDE Arduino та його хорошу інтеграцію з 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. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.