Страница 1 из 3
Датчики температуры и влажности типа DHT(для ESP8266 и Ардуино)
Добавлено: 09 сен 2018, 14:37
aidar_i
Во время процесса чтения сигнала любые прерывания повредят результат. В реализации Arduino Adafruit они отключают все прерывания во время процесса чтения. ESP8266 не может отключить все прерывания, поэтому, если прерывание действительно происходит, ожидайте плохой результат.
Нашел библиотеку без них.
Скачать
Статьи о применении его
Здесь
Проверил на Wemos D1 mini. Для датчиков DHT11, DHT21 (AM2301), DHT22 (A8M2302).
Gpio 0, 2, 4, 5, 12-15 работают. Если использовать пин 15, датчик, при загрузке программы, нужно отключить с этого контакта, а то ошибка.
Попробовал создать точку доступа и через веб браузер получать данные с DHT22. Все работает хорошо! Делал пример по видеоуроку ArduinoProm.
DHT_ESP8266_1_(CODE).ubi
Пример DHT+ESP+WEB_4.flp
Вывел дополнительно выход параметра - температура точки росы.
t - температура, в С.
р - влажность в %.
d - температура точки росы.
time - время опроса в миллисекундах.
DHTPIN - пины ESP8266, куда подключаете.
DHTTYPE - тип датчика, DHT11, DHT21, AM2301, DHT22, AM2302.
Наш форумчанин проверил и на ESP32
здесь.
dizzyy испытал на ESP-01, его сообщение
ниже.
Еще один блок для работы с ESP8266
DHT____ESP3266_(CODE).ubi
Библиотека DHTesp
здесь.
Блок для Ардуино
здесь.
Работа датчиков с библиотекой TickerScheduler
здесь.
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 09:55
dizzyy
блок работает , тестил с esp01, в юарт шлет
в связи с тм1637 жрутся ...по отдельности работают, вместе нет.
буду пробовать другой блок для 1637..
просто удобно - есп+1637+дшт11 (может реле) все компактно ..
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 11:29
aidar_i
Это блок тм1637 мешает. Какой блок использовали?
Отправлено спустя 1 час 2 минуты 21 секунду:
Можете проект выложить?
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 14:49
dizzyy
Пользовательский блок TM1637Full(beta6)
сейчас попробую последнюю версию блока для 1637..если непоможет то выложу
Отправлено спустя 49 минут 49 секунд:
вот проект часов малым в комнату (правда там под вемос сейчас, на нем наботает вот так ) а надо но есп на 1 и 3 пины и датчик на 00
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 16:34
stypler
[ref]dizzyy[/ref], Просто я решил отписаться, т.к. задавал вопрос на счет блоков пользователей.
Взял из вышеприведенной ссылки на схему. Заменил на ESP01 датчик оставил китайский на GPIO-2,
ТМ1637 посадил на GPIO-1 и GPIO-3, добавил реле на GPIO-0. всё работает. Раньше хотел видеть
знак после запятой, но для личного пользования на мой взгляд всё отлично.
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 18:35
aidar_i
У Вас на Wemos работает? Новый датчик DHT попробуйте ПБ из первого сообщения - DHT_ESP8266.Вы использовали старый для Ардуино stDHT.
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 18:54
stypler
aidar_i писал(а): 10 сен 2018, 18:35попробуйте ПБ из первого сообщения - DHT_ESP8266
Да, я пробовал вчера, но выводил в каскаду флоат, что то не получилось. Просто не разобрался, в каскаде изменился
вывод флоат из холдинг регистра. В следующие выходные попробую ещё. Из ESP01 нет выводов что бы подключить LCD.
NodeMcu все перевел.
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 19:21
aidar_i
Переведите флоат в интежер штатным блоком.
Попробуйте подключить CDA - к 2, SCL - к 0,(Сюда можно подключить и LCD). DATA DHT - к 1 (ТХ), дополнительно еще попробуйте его к CH PD (вместе с Gpio- 1).
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 19:51
SerOv
Стал проверять пример. Пример DHT+ESP+WEB_1.flp и обнаружил интересную особенность. Если после прошивки убрать ножку (DHT22) с которой считываются показания. Значения в мониторе порта не обнуляются. Продолжается вывод температуры. Хотя ножка пустая. Это как?
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 20:18
dizzyy
stypler писал(а): 10 сен 2018, 16:34 Заменил на ESP01 датчик оставил китайский на GPIO-2,
ТМ1637 посадил на GPIO-1 и GPIO-3
такая же схема , по отдельности работает а в паре нет
можно ваш проект
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 20:31
aidar_i
SerOv писал(а): 10 сен 2018, 19:51Продолжается вывод температуру
Вывод не продолжается, прежнее значение сохраняется в EEPROM (включен)и изображается на экране. Попробуйте изменить температуру, отключите EEPROM.
Применяйте DHT_ESP8266!
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 21:05
SerOv
aidar_i писал(а): 10 сен 2018, 20:31
прежнее значение сохраняется в EEPROM и изображается на экране.
А для чего его надо сохранять в EEPROM? Так ведь не понятно что с датчиком? А если он накрылся.
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 21:23
dizzyy
aidar_i писал(а): 10 сен 2018, 20:31Применяйте DHT_ESP8266!
работает
теперь я понял...старая то была с + сериал что и мешало
так что можно спокойно добавить в описание работа с есп01 на 0 пине совмесно с тм1637 на пинах 1 и3 ..
Отправлено спустя 15 минут 6 секунд:
вот схема
[spoiler]
1.JPG
[/spoiler]
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 21:31
SerOv
Вот по этой схеме. Все равно температура продолжает показываться. EEPROM здесь нет и все равно. показывает.
[spoiler]
NS.jpg
[/spoiler]
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 21:41
aidar_i
Проверил, ошибка была в ПБ, исправил и перезалил в первый пост.
В проекте можно добавить , если все выходы 0, вывод надписи на браузер"Неисправен датчик"
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 22:09
SerOv
Да все работает адекватно. Спасибо за блок.
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 22:29
aidar_i
Перезалил пример, добавил исправность датчика и оформил чуть получше.
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 10 сен 2018, 23:36
Rovki
stypler писал(а): 10 сен 2018, 18:54aidar_i писал(а): 10 сен 2018, 18:35попробуйте ПБ из первого сообщения - DHT_ESP8266
Да, я пробовал вчера, но выводил в каскаду флоат, что то не получилось. Просто не разобрался, в каскаде изменился
вывод флоат из холдинг регистра. В следующие выходные попробую ещё. Из ESP01 нет выводов что бы подключить LCD.
NodeMcu все перевел.
В каскаде сделали последовательность передачи байт и слов флоат по модбасу такой же как в FLProg 1,2,3,4 .
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 11 сен 2018, 15:10
stypler
[ref]dizzyy[/ref], Вот сдесь схема, второй день работает без сбоев.
viewtopic.php?p=54303#p54303
Отправлено спустя 5 минут 17 секунд:
[ref]Rovki[/ref], Я использовал блок Swap
Датчики температуры и влажности типа DHT и ESP8266
Добавлено: 12 сен 2018, 18:03
stypler
[ref]aidar_i[/ref],
aidar_i писал(а): 10 сен 2018, 22:29Перезалил пример, добавил исправность датчика и оформил чуть получше.
Кокой вывод указать в настройках ПБ DHT_ESP8266_1 что бы он работад с ESP01 У меня свободный только GPIO-2