Проблема с датчиком влажности Si7021(HTU21)

Kurzenev
Offline
Зарегистрирован: 17.09.2014

Уважаемые коллеги,

датчик влажности Si7021 (HTU21) в случаях высокой влажности (на улице в закрытом корпусе) дает показания более 100%.

Это его нормальный режим или я должен программно ограничивать такие показания планкой в 100%?

Кто-нибудь встречался с подобным?

IVAN222
Offline
Зарегистрирован: 19.04.2017

Точность измерения у этого датчика от 0 до 80 %, а рабочий диапазон от 0 до 100 %. Больше 100 он вообще не должен показывать. Попробуйте поставьте его не в закрытом корпусе, а в проветриваемом.

Kurzenev
Offline
Зарегистрирован: 17.09.2014

Корпус проветривается, доступ наружного воздуха через маленькие отверстия имеется.

IVAN222
Offline
Зарегистрирован: 19.04.2017

Больше 100 он не должен показывать. Если питаете его 3.3 в и скеч у Вас написан правильно то замените датчик.

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

Откалибруйте датчик. Это первое, что делается при измерительных работах.

rkit
Offline
Зарегистрирован: 23.11.2016

Для начала датчик нужно пропечь по даташиту.

Kurzenev
Offline
Зарегистрирован: 17.09.2014

mykaida пишет:

Откалибруйте датчик. Это первое, что делается при измерительных работах.

Датчик калибруется на заводе, процедур для его калибровки, как для серий bmp180, нет.

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

Kurzenev пишет:

Датчик калибруется на заводе, процедур для его калибровки, как для серий bmp180, нет.

У как все запущено. Т.е. влажность более 100% все равно оставляет Вас во мнении про "калибровку на заводе"? А может он температуру неверно считывает? А может Вы создаете движения воздуха?

А калибровка покажет все эти косяки.

Kurzenev
Offline
Зарегистрирован: 17.09.2014

mykaida пишет:
Т.е. влажность более 100% все равно оставляет Вас во мнении про "калибровку на заводе"? А может он температуру неверно считывает? А может Вы создаете движения воздуха?

А калибровка покажет все эти косяки.

Про калибровку на заводе пишут в описании на датчик. Насколько это правда- мне трудно сказать.

Температура, я могу полагать, измеряется верно. В параллель HTU у меня стоит BMP180, разница в показаниях двух этих термометров отличается на 0.4 С. Какой из них точнее - трудно сказать.

Повторяю, что открытых и доступных данных на разных языках (мне, по крайней мере) о калибровке HTU пользователем нет.

Если у вас есть какие-то идеи на этот счет- поделитесь.

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

Еще одна безумная идея - может Вы очень часто обращаетесь к датчику и он перегревается? Сократите обращения до раза в секунду.

Программу не видел - поэтому, вопреки политики форума, гадаю на ромашках.

Или на ромашках можно?

И, кстати, в примечаниях к табл. 4 даташита написано (переведу для ленивых):

Рекомендуемый рабочий диапазон влажности составляет от 20% до 80% RH (без конденсации) от -10 °C до 60 °C.

Работа за пределами этих диапазонов может привести к смещению показаний датчиков с медленным временем восстановления.

rkit
Offline
Зарегистрирован: 23.11.2016

rkit пишет:

датчик нужно пропечь по даташиту.

rkit пишет:

датчик нужно пропечь по даташиту.

rkit пишет:

датчик нужно пропечь по даташиту.

Kurzenev
Offline
Зарегистрирован: 17.09.2014

rkit пишет:

датчик нужно пропечь по даташиту.

Простите, не понял смысл вашей фразы.

rkit
Offline
Зарегистрирован: 23.11.2016

Даташит прочитай, там всё написано. Конкретно про твою проблему. 12 часов при 125 градусах.

Kurzenev
Offline
Зарегистрирован: 17.09.2014

mykaida пишет:

Еще одна безумная идея - может Вы очень часто обращаетесь к датчику и он перегревается? Сократите обращения до раза в секунду.

Программу не видел - поэтому, вопреки политики форума, гадаю на ромашках.

Обращение к датчику через 10 сек. "Мгновенная влажность"- только для гиков. За глаза хватит и 10-15 мин.

Библиотека - обычная Adafruit Si7021. Вызов значения - sensor.ReadHumidity().

Ничего, что могло привлечь внимание.

В описаниях на датчик встречаю диапазон влажностей 0-100%. График в даташите говорит о линейности характеристики от 20 до 80 %, за границами уже начинается рост погрешностей.

Kurzenev
Offline
Зарегистрирован: 17.09.2014

rkit пишет:

Даташит прочитай, там всё написано. Конкретно про твою проблему. 12 часов при 125 градусах.

Не, все равно не понял.

Как выглядит датчик, ты знаешь. Мне выпаивать его с платы, греть его непонятно чем непонятно как полсуток, контролируя температуру (могу ж перегреть, да?), затем запаять и радоваться жизни?

А производитель это "пропекание" в свой техпроцесс включить не может, экономит ресурс?

rkit
Offline
Зарегистрирован: 23.11.2016

Прочитай. Даташит.Там ответы на все вопросы.

Kurzenev
Offline
Зарегистрирован: 17.09.2014

rkit пишет:

Прочитай. Даташит.Там ответы на все вопросы.

Every sensor is individually calibrated and tested. 

Это цитата из даташита. Может, разные даташиты?

sadman41
Offline
Зарегистрирован: 19.10.2016

У меня есть модуль 7021 с Али. Поначалу показывал херню. На ixbt писали, то она наблюдается для экземпляров, хранившихся в неподходящих (слишком влажных, азиатских) условиях. Через полгода лежания в коробке всё нормализовалось. Селяви, как говорится. Купил дёшево и страдал долго.

Хотя я бы ещё, конечно, глянул что он там по I2C отдаёт. Может тупо ошибка соединения.

rkit
Offline
Зарегистрирован: 23.11.2016

Kurzenev пишет:

rkit пишет:

Прочитай. Даташит.Там ответы на все вопросы.

Every sensor is individually calibrated and tested. 

Это цитата из даташита. Может, разные даташиты?

Прочитай. Весь. Даташит. ВЕСЬ. ОТ НАЧАЛА ДО КОНЦА. На этом разговор с идиотом заканчиваю, чесслово. Вполне очевидно, что ты хочешь трахать людям мозги, а не решать свою проблему.

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

sadman41 пишет:

Хотя я бы ещё, конечно, глянул что он там по I2C отдаёт. Может тупо ошибка соединения.

А софтина где? Опять по хрустальным шарам гадать?

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

И в принципе, чего вы так боитесь выкладывать свой программазм? Своруют - да не смешите мои тапки - эта херня Ваша никому не нужна. Есть тут на форуме 10-15 человек, которые сразу увидят косяки.  Остальные и не поймут- о чём Вы. Или как целка стесняюсь? Так у нас тут как у врача - всё наружу.

Kurzenev
Offline
Зарегистрирован: 17.09.2014

rkit пишет:

Прочитай. Весь. Даташит. ВЕСЬ. ОТ НАЧАЛА ДО КОНЦА. На этом разговор с идиотом заканчиваю, чесслово. Вполне очевидно, что ты хочешь трахать людям мозги, а не решать свою проблему.

Все ясно.

По этой ссылке есть даташит на датчик.

https://www.compel.ru/item-pdf/907304cc6fafd38e6771b89824b0878f/ps/msi~htu21d.pdf

Скажи мне, в каком месте сказано, что надо датчик "пропекать". Возможно, что у меня проблемы с головой etc.

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

Kurzenev
Offline
Зарегистрирован: 17.09.2014

sadman41 пишет:

Поначалу показывал херню. На ixbt писали, то она наблюдается для экземпляров, хранившихся в неподходящих (слишком влажных, азиатских) условиях. Через полгода лежания в коробке всё нормализовалось. Селяви, как говорится.

Ну, не в гараже ж их делают, да?

Брак, правда, случается у всех, но, вероятно, причина в другом.

 

sadman41
Offline
Зарегистрирован: 19.10.2016

mykaida пишет:

sadman41 пишет:

Хотя я бы ещё, конечно, глянул что он там по I2C отдаёт. Может тупо ошибка соединения.

А софтина где? Опять по хрустальным шарам гадать?

Если вопрос ко мне, то вся софтина - писнуть в регистр 0xE6 байт конфигурации, потом дать датчику команду 0xE3, подождать и читкануть 3 байта. Потом, конечно, некоторая магия с вычислением CRC нужна... Но проще глянуть в либу и натыкать туда принтов. Даже у адафрута бывает код как с похмелья. 

sadman41
Offline
Зарегистрирован: 19.10.2016

Kurzenev пишет:

sadman41 пишет:

Поначалу показывал херню. На ixbt писали, то она наблюдается для экземпляров, хранившихся в неподходящих (слишком влажных, азиатских) условиях. Через полгода лежания в коробке всё нормализовалось. Селяви, как говорится.

Ну, не в гараже ж их делают, да?

Делают, может, и не в гараже. А вот перепродавцы неизвестно где скупают и хранят. Алишка - это обычный базар без обязательства. Мне приходили модули с непропаянными сетевыми чипами, имеющими отпечатки пальцев, но заваренные в антистатик.

Duino A.R.
Offline
Зарегистрирован: 25.05.2015

Kurzenev пишет:

rkit пишет:

Прочитай. Весь. Даташит. ВЕСЬ. ОТ НАЧАЛА ДО КОНЦА. На этом разговор с идиотом заканчиваю, чесслово. Вполне очевидно, что ты хочешь трахать людям мозги, а не решать свою проблему.

... Скажи мне, в каком месте сказано, что надо датчик "пропекать". Возможно, что у меня проблемы с головой etc.

...

https://www.silabs.com/documents/public/data-sheets/Si7021-A20.pdf

стр. 17, пункт 4.6

Kurzenev
Offline
Зарегистрирован: 17.09.2014

Duino A.R. пишет:

https://www.silabs.com/documents/public/data-sheets/Si7021-A20.pdf

стр. 17, пункт 4.6

Да, спасибо.

В моих условиях нет там "длительного воздействия экстремальных влажностей и температур". Водой датчик не заливает и жаром на него не пышет.

А разработчик пытается свои косяки переложить на потребителя, которым всем этим рекомендациям следовать не может.

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Kurzenev пишет:

В моих условиях нет там "длительного воздействия экстремальных влажностей и температур". Водой датчик не заливает и жаром на него не пышет

А как он, до того как к тебе приехать, у китайца хранился, ты знаешь?  Можешь поручицца, что не в сыром подвале?

Kurzenev
Offline
Зарегистрирован: 17.09.2014

DetSimen пишет:

до того как к тебе приехать, у китайца хранился, ты знаешь?  Можешь поручицца, что не в сыром подвале?

Дед, пока он ко мне доехал, он сто раз высох. Тут соленый огурец из бочки превратится в сушеный банан, видел, наверное?

Какой маленький антистатический пакетик, китайцы свое дело туго знают.

Проблема в чем-то другом.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Kurzenev пишет:

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

С точки зрения здравого смысла, потребителю нахрен не нужен автомобиль, которому мало того, что  ежегодно проходить ТО, так еще и бензин в бак заливать регулярно! Почему это все не сделают заранее на заводе?

Kurzenev
Offline
Зарегистрирован: 17.09.2014

Kurzenev
Offline
Зарегистрирован: 17.09.2014

andriano пишет:

... так еще и бензин в бак заливать регулярно! Почему это все не сделают заранее на заводе?

Это расходники, а вечного двигателя еще, слава богу, не придумали.

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

По показаниям термометра и гигрометра похоже, что прошли "точку росы".

Cague
Offline
Зарегистрирован: 20.05.2020

Kurzenev пишет:

Обращение к датчику через 10 сек. "Мгновенная влажность"- только для гиков. За глаза хватит и 10-15 мин.

Библиотека - обычная Adafruit Si7021. Вызов значения - sensor.ReadHumidity().

Подскажите, пожалуйста, а как реализовать опрос датчика раз в 10-20 секунд при использовании библиотеки Adafruit Si7021?

sadman41
Offline
Зарегистрирован: 19.10.2016

А в чем проблема с опросом датчика раз в 10-20 секунд?

Cague
Offline
Зарегистрирован: 20.05.2020

sadman41 пишет:
А в чем проблема с опросом датчика раз в 10-20 секунд?

Да я просто с ардуиной знаком где-то месяц только.

В принципе все сделал, что мне от нее требовалось, но единственная проблема осталась это в опросе датчика.

Проблема в том, что я в принципе не особо понимаю, как его опрашивать раз в 10 сек.

В свое коде я просто вызываю значение влажности - sensor.ReadHumidity().

Я так понимаю, что править нужно в библиотеке?

sadman41
Offline
Зарегистрирован: 19.10.2016

http://arduino.ru/tutorials/BlinkWithoutDelay

Вместо переключения светодиода - опрос датчика.

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Cague пишет:

как реализовать опрос датчика раз в 10-20 секунд при использовании библиотеки Adafruit Si7021?

Надо просто опросить даччик и подождать 10-20 секунд. 

Cague
Offline
Зарегистрирован: 20.05.2020

sadman41 пишет:

http://arduino.ru/tutorials/BlinkWithoutDelay

Вместо переключения светодиода - опрос датчика.

Как все просто оказывается. 
Большое спасибо.

ArtHome
ArtHome аватар
Offline
Зарегистрирован: 19.05.2018

https://ibb.co/Mk16hG8

Как видно, данные о заводской точности этого датчика слегка преувеличены. Все 8 подключены через мультиплексор, витой парой одинаковой длины через патч-панель. При перетыкании датчиков в другие гнёзда соответственно получаю изменение результатов. То есть это именно сами датчики стали так безбожно врать спустя год эксплуатации в комнатных условиях. Физически они находились всегда все вместе, это собственно тестовый стенд.

 

C температурой всё нормально, разброс менее градуса.

b707
Offline
Зарегистрирован: 26.05.2017

ArtHome. может вам тоже свои датчики прожарить пора? - см сообщение 25

ArtHome
ArtHome аватар
Offline
Зарегистрирован: 19.05.2018

Да пора, конечно, мой пост про то, что технически вопрос достоверного измерения влажности без регулярного ТО так и не решён.