DS18b20 + диагностика
- Войдите на сайт для отправки комментариев
Сб, 15/02/2014 - 14:31
Добрый день соконфетники)) Возникла вот такая причуда...все используют для подключения библиотеку OneWire.h для подключения датчика температуры. Все замечательно, много примеров с выводом на экран и все такое. Но вот хочется немного диагностики, в частности: если датчик отвалился то регулирование будет происходить по 85гр. ( откидываю провод получаю это значение). Но дело не в этом, можно было написать условие и все такое, но вот я думаю должно быть в библиотеке средства для диагностики. Вот например с часами все ясно:
if (! rtc.isrunning()) {
Serial.println("RTC is NOT running!");
return;
}
Подскажите куда копать. Заранее благодарен)
В нормальных условиях, они не отваливаются. Так что - нет смысла в таком коде. Тем более, что если действительно отвалился - то не будет идентификатора 1-wire на шине.
в примерах, которые идут с библиотекой DallasTemperature, есть код диагностики - см. Multiple
а если эти глюки постоянны? Tp = 27, 27, 26, 27, 85, 85, 85, 85, 85, 85...
Тогда система и не узнает о неисправности и будет использовать старое значение темрературы черт знает сколько времени.
Уж лучше так:
При таком раскладе система не будет реагировать на случайные отклонения: 27, 27, 26, 85, 27, 25, 23...
Но среагирует на перманентное отклонение: 27, 27, 26, 85, 27, 25, 23, 85, 85, 85, 85, 85, 85...
P.S. надо еще проверить, как правильно: 85 или 85.0
код диагностики - см. Multiple
DS18b20 отследить отказ измерения
Спасибо за материал для размышления. Хочется именно силами библиотеки...по уму все сделать, а не условиями границы ставить.