Оглавление:

Блок датчика температуры DS18B20: 5 шагов
Блок датчика температуры DS18B20: 5 шагов

Видео: Блок датчика температуры DS18B20: 5 шагов

Видео: Блок датчика температуры DS18B20: 5 шагов
Видео: Датчики температуры которые не нужно калибровать (DS18B20) 2024, Ноябрь
Anonim
Коробка датчика температуры DS18B20
Коробка датчика температуры DS18B20

Простой датчик температуры на базе DS18B20 с коробкой для 3D-печати с открытым исходным кодом и прототипом печатной платы.

Коробка и прототип печатной платы не являются обязательными, требуется только один микроконтроллер на базе ESP8266 и один датчик температуры DS18B20. Я предлагаю вам WEMOS D1 mini, но этот пример также работает с ESP-01.

В этом примере объясняется, как написать и загрузить программу Arduino в MCU ESP8266, поэтому ознакомьтесь с этим навыком, прежде чем следовать за мной.:)

Запасы

Должно быть: - ESP8266 MCU; - DS18B20; - один резистор 4,7 кОм; - какой-то провод.

Опционально: - WEMOS D1 mini в качестве MCU; - прототип печатной платы для WEMOS D1 mini; - коробка для 3D-печати.

Шаг 1: Как подключить провода?

Как подключить провода?
Как подключить провода?

Все просто, проверьте схемы подключения на картинке…:)

1. В случае голой платы ESP8266 подключите RX и TX к вашему последовательному USB-устройству, в случае любой платы со встроенным USB в этом нет необходимости.

2, подключите GND и VCC к плате ESP8266 и к датчику DS18B20.

3, подключите резистор между VCC и проводом данных датчика DS18B20.

4. Подключите провод данных датчика DS18B20 к одному GPIO MCU (например, GPIO 2).

Шаг 2: Настройте ArduinoIDE

Вам потребуются три дополнительные библиотеки: - OneWire: https://www.arduinolibraries.info/libraries/one-wire- DallasTemperature: https://www.arduinolibraries.info/libraries/dallas-temperature- Интеграция IoT Guru:

Шаг 3. Зарегистрируйтесь и создайте устройство, узел и поле

Облако IoT Guru - это бесплатная облачная серверная часть, вы можете использовать его для очень простого сохранения и отображения измерений.

Вам необходимо создать устройство, узел и поле: - Имя устройства - ESP8266: https://iotguru.cloud/tutorials/devices - Имя узла - DS18B20: https://iotguru.cloud/tutorials/ Узлы - Имя поля - температура:

Чтобы подключиться к облаку, вам необходимо собрать пять идентификаторов: - userShortId: короткий идентификатор вашего устройства; deviceShortId: короткий идентификатор вашего устройства; deviceKey: секретный ключ вашего устройства; nodeShortId: короткий идентификатор вашего устройства; fieldName.: название поля

Шаг 4: Код Arduino

Вот пример кода, вам нужно заменить идентификаторы на свой идентификатор, заменить SSID и пароль на свои учетные данные WiFi и проверить номер GPIO на проводе данных DS18B20.

#включают

#include #include #include const char * ssid = "iotguru.cloud"; const char * пароль = "********"; Строка userShortId = "l4jLDUDDVKNNzx4wt2UR6Q"; Строка deviceShortId = "uAjbSzf8LvlrofvwYU8R6g"; Строка deviceKey = "hacfIjPn6KbBf2md8nxNeg"; IoTGuru iotGuru = IoTGuru (userShortId, deviceShortId, deviceKey); Строка nodeKey = "tGib1WSRvEGJ98rQYU8R6g"; Строка fieldName = "температура"; #define ONE_WIRE_BUS 2 OneWire oneWire (ONE_WIRE_BUS); Датчики температуры Даллас (& oneWire); установка void (void) {Serial.begin (115200); задержка (10); WiFi.begin (ssid, пароль); в то время как (WiFi.status ()! = WL_CONNECTED) {задержка (50); Serial.print ("."); } Serial.println (""); iotGuru.setCheckDuration (60000); iotGuru.setDebugPrinter (& серийный); sensor.begin (); } недействительный цикл (недействительный) {iotGuru.check (); sensor.requestTemperatures (); float измеренное значение = сенсоры.getTempCByIndex (0); Serial.println ("Температура первого датчика:" + Строка (измеренное значение) + "° C"); iotGuru.sendHttpValue (nodeKey, fieldName, измеренное значение); задержка (30000); }

Шаг 5. Запустите и проверьте

Выполнить и проверить
Выполнить и проверить

Если все в порядке, ваш термометр будет отправлять измерения датчика в облако, и вы увидите такие красивые графики с течением времени, если будет накоплено достаточно измерений.

Живые примеры: -

Расширенный проект GitHub: -

Рекомендуемые: