
Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-23 15:05

Это краткое руководство о том, как получить индивидуальные серийные номера однопроводных датчиков температуры DS18B20.
Это удобно для проектов, требующих нескольких датчиков.
Вещи, которые нужно:
- Arduino 5v (UNO, Mega, Pro Mini и т. Д.) - Arduino UNO R3 - AliExpress - eBay
- Датчик температуры DS18B20 - AliExpress - eBay
- Резистор THT 4,7 кОм - 1 / 4Вт - AliExpress - eBay
- Макетная плата - AliExpress - eBay
- Провода перемычки - мужчина к мужчине - AliExpress - eBay
- Компьютер с установленной Arduino IDE
Шаг 1. Добавьте необходимую библиотеку в Arduino IDE

- Откройте Arduino IDE (я использую 1.8.1)
- Нажмите «Эскиз» -> «Включить библиотеку» -> «Управление библиотеками…»
- Выберите строку поиска и введите "dallas".
- Щелкните "DallasTemperature" и щелкните "Установить".
В качестве альтернативы вы можете загрузить библиотеку отсюда:
Эта библиотека включает в себя библиотеку OnWire.
Шаг 2: Подключите DS18B20


Используя макетную плату, подключите + 5V, GND и цифровой контакт 2 (контакт 2 уже установлен в примерном эскизе) от Arduino, используя перемычки макетной платы Male to Male.
Подключите DS18B20 параллельно 3 клеммным колодкам на макетной плате.
- Контакт 1 (GND) -> GND (Земля 0 В)
- Контакт 2 (ДАННЫЕ) -> Цифровой контакт 2
- Контакт 3 (Vdd) -> + 5 В
Для нормального режима питания подключите резистор 4,7 кОм от +5 В к проводу цифрового контакта 2 на макетной плате.
Следующая ссылка является отличным ресурсом для однопроводного датчика температуры DS18B20.
www.tweaking4all.com/hardware/arduino/ardu…
Шаг 3: Загрузите образец эскиза «Одиночный»


После того, как вы его подключили, вы готовы загрузить Dallas Temperature "Single" SketchOpen Arduino IDE (я использую 1.8.1). Нажмите "File" -> "Примеры" -> "Dallas Temperature" -> "Single" Я добавил в опоздании (5000); в строке 103, чтобы дать мне время скопировать серийный номер. Выберите подходящую форму платы "Инструменты" -> "Плата". Выберите соответствующий порт "Инструменты" -> "Порт". Теперь "Загрузить" эскиз "Эскиз" -> "Загрузить" Нажмите «Инструменты» -> «Монитор последовательного порта», убедитесь, что скорость передачи данных соответствует моей 9600. Если вы не загрузили скетч, проверьте вашу плату, порт, драйверы USB и т. Д.
Шаг 4. Скопируйте серийный номер


В «Serial Monitor» вы увидите 4-ю строку «Device 0 Address: xxxxxxxxxxxxxxxx».
Это серийный номер DS18B20.
Если это «0000000000000000», значит, существует проблема с чтением вашего DS18B20.
Выделите его с помощью мыши и нажмите CTRL + C на клавиатуре, а затем вставьте его в Блокнот.
Для других моих проектов мой код использует массив этих чисел. Я переформатировал строку HEX в следующий формат.
DeviceAddress tempSensorSerial [9] = {
{0x28, 0xFF, 0x07, 0xA6, 0x70, 0x17, 0x04, 0xB5}, {0x28, 0xFF, 0xB2, 0xA6, 0x70, 0x17, 0x04, 0x28}, {0x28, 0xFF, 0x42, 0x984x, 0x70, 0x70, 0x42, 0x984x, 0x70, 0x70, 0xD3}, {0x28, 0xFF, 0x86, 0xA8, 0x70, 0x17, 0x04, 0xA6}, {0x28, 0xFF, 0x2B, 0x65, 0x71, 0x17, 0x04, 0x76}, {0x28, 0xFF, 0x66, 0x62, 0x17, 0x04, 0xF5}, {0x28, 0xFF, 0xD9, 0x9B, 0x70, 0x17, 0x04, 0x9C}, {0x28, 0xFF, 0x98, 0x6A, 0x71, 0x17, 0x04, 0xED}, {0x28x, 0x28, 0x99, 0x42, 0x71, 0x17, 0x04, 0x4C}};
Шаг 5: Готово

Теперь вы можете идентифицировать каждый отдельный однопроводный датчик температуры DS18B20 в своем коде и использовать такую функцию:
float getTemperature (byte j) {
sensor.requestTemperaturesByAddress (tempSensorSerial [j]);
float tempC = сенсоры.getTempC (tempSensorSerial [j]);
return tempC;
}
Рекомендуемые:
(Проект IOT) Получение данных о погоде с помощью ESP8266 и Openweather API: 5 шагов

(Проект IOT) Получение данных о погоде с помощью ESP8266 и Openweather API: в этом руководстве мы собираемся создать простой проект IOT, в котором данные о погоде в нашем городе будут извлекаться из openweather.com/api и отображаться с помощью программного обеспечения для обработки
Получение времени из Интернета с помощью ESP8266 - Проект часов NTP с ESP8266 Nodemcu: 5 шагов

Получение времени из Интернета с помощью ESP8266 | Проект часов NTP с ESP8266 Nodemcu: в этом руководстве мы увидим, как узнать время с помощью ESP8266 / nodemcu с Arduino IDE. Определение времени особенно полезно при регистрации данных для отметки времени ваших показаний. Если ваш проект ESP8266 имеет доступ к Интернету, вы можете получить время с помощью Network T
Visuino - получение точного времени с сервера NIST в Интернете с помощью NodeMCU: 8 шагов

Visuino - получение точного времени с сервера NIST в Интернете с помощью NodeMCU: в этом руководстве мы будем использовать NodeMCU Mini, OLED Lcd и Visuino для отображения реального времени в Интернете с сервера NIST на ЖК-дисплее. Посмотрите демонстрационное видео. Заслуга за вдохновение принадлежит пользователю YouTube «Чиприан Балалау»
Получение музыки с IPod с помощью Mac OS X !: 5 шагов

Получение музыки с iPod с помощью Mac OS X! Существует множество инструкций о том, как получить музыку с iPod с помощью «параметров просмотра»; трюк в проводнике Windows. как этот! Как вернуть музыку обратно с вашего Ipod БЕСПЛАТНО! К сожалению для тех из нас, кто использует Mac, Finder i
Температура HRV до OpenHAB через ESP8266 (пример серийного кода!): 3 шага

Температура HRV для OpenHAB через ESP8266 (пример серийного кода!): HRV - Wireless to OpenHAB Эта инструкция специально предназначена для тех, у кого есть система HRV (вентиляция с рециркуляцией отопления) - хотя части печатной платы, конфигурация openhab или код Arduino (например, чтение Последовательные данные TTL) может быть h