Как стать автором
Обновить

Комментарии 64

Напишите статью про программирование под cyppress'овские чипы. Не нашел в интернете почти ничего на эту тему

Тема программирования чипов Cypress очень обширная. В планах была статья про создание компонента на UDB для реальной конструкции, так как в этом и есть их главная изюминка.
Мой первый датчик влажности был HIH-3610.
Прибор лежал на подоконнике и капля конденсата вывела датчик из строя.
В следующем приборе влажность мерил по сухому и влажному DS18B20, написал математику на asm, получилось очень близко к показаниям ВИТ-2.
Да, во всех datasheet пишут что без конденсации влаги на поверхности датчика. Я изучал вопрос по измерению влажности по сухому и мокрому датчику. По такому методу, сложно сделать достаточно точный датчик. У него долгое время отклика, и им просто неудобно пользоваться.
Спасибо за статью, очень основательно сделан проект. Я правильно понимаю что основной целью было именно запустить HIH4010? Остальная элементная база позволяет получить малое энергопотребление а вот датчик потребляет 200-500мка от 5В, это много.

Со своей стороны могу порекомендовать датчики SHT20/21/25. Работают от 3В, i2c, термодатчик внутри. В даташите тоже много написанно про то что это нежный компонент, и есть масса ограничений на мойку, приклеивание, и.т.п. Рекомендют заклеивать окошко каптоновой лентой во время мойки. У меня датчики в нескольких DIY приборах живут много лет, вроде бы сильно показания не дрейфуют если на датчик не садится пыль. Конденсата не боятся.
Да, HIH-4010-004, был в наличии. Посмотрел на SHT20/21/25, SHT21/25 вполне достойные датчики, у SHT20 слишком большая ошибка измерения температуры. Кстати по области нормальной работы SHT20/21/25 с HIH-4010 сильно отличаются в районе отрицательных температур. У SHT20/21/25 чем ниже температура, тем больше влажность должна быть, чтобы не произошёл дрейф показаний у датчика, что в жизни редко бывает. Обычно наоборот, чем ниже температура, тем суше. HIH-4010 имеет как раз такую зону нормальной работы.
Возможно sht2x не очень подойдет для уличного термометра, но если устройство портативное и иногда заносится в дом то проблем с измерениями при отрицательных температурах быть не должно. Там указано 60 часов для деградации в сторону +3%RH.
Я уж думал, вы на 580-й серии все это сделали:)
Была такая мысль, но решил, что аккумулятор будет великоват:)
У меня только один вопрос. А была какая то объективная причина, почему решение такое сложное по схемотехнике? Может быть какие то особые требования по точности/диапазону измерений?
Просто я делал аналогичное (как я думаю) решение на одном ATTINY13A, LED-дисплее на TM1637 и датчике влажности-температуры DHT-22. Собственно других компонентов в схеме и не было, ну ещё 3.7 вольтовый LIon аккумкулятор, при питании от которого устройство работает неделю без выключения.
Как по мне, так у меня простое решение, не вижу ничего сложного. В принципе, не понятно, что такое проще. Есть требования к конструкции, у меня они были такие, использовать элементную базу которая есть в наличии, устройство должно питаться от аккумулятора, мало потреблять, быть носимым. Я все свои требования в данной конструкции удолетворил. Если бы стоял вопрос стоимости изготовления и элементной базы при установленных критериях точности и времени автономной работы, может быть получилось бы совсем другая конструкция.
Посмотрел даташит на TM1637, он при выключенных светодиодах 5 мА потребляет. Плюс 2мА микроконтроллер, предположил, что он работает от внутреннего RC генератора 4.8 МГц. Получается 7 мА * 7 дней *24 часа = емкость аккумулятора 1176мА/ч, и это еще не включали светодиоды LED индикатора.
В моём случае Attiny13a работает на частоте 1 мГц с тактованием от внутреннего RC-генератора. Плюс нужно добавить потребление от датчика, хотя он в ждущем режиме потребляет слёзы, а опрос у меня идёт всего несколько раз в минуту. Питание от NONAME-LiION аккумулятора типоразмера 18650 неизвестной ёмкости (промаркирован 4000 мАч, но веры этой маркировке нет). В итоге прибор работает в режиме «в выходные зарядили — всю неделю работаем без отключения». В принципе дольше и не нужно.
Аккумулятор 4000 мА/ч объясняет такую долгую работу. Значит светодиоды у вас потребляют около 16 мА, в принципе теория с практикой сходится.
18650 максимально может иметь емкость что-то вроде 3000 — 3200 мА*ч. А аккумуляторы, промаркированные такими цифрами, обычно имеют очень маленькую емкость, меньше 1,5 А*ч.
Обычно в таких индикаторах выставляют ток светодиодов 5 мА, в среднем горит 4 сегмента, получаем 20 мА. Можно долго философствовать на эту тему, слишком много неизвестных. Я лишь написал, что это похоже на правду.

А про eagle… "мыши плакали, кололись, но упорно продолжали есть кактус". Попробуйте kicad

А по факту, чем Eagle не устраивает?
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
А вы какую версию пробовали?
НЛО прилетело и опубликовало эту надпись здесь
В стандартной библиотеке transistor.lbr есть такой элемент как «*-NPN-», в нем выбираете DEVICE «-NPN-TO092», ставите нужный вам номинал на схеме, например 2N2222. Хотя у меня старенькая версия, может AUTODESK что-то поменял.
НЛО прилетело и опубликовало эту надпись здесь
Специально загрузил новую версию Eagle. Она оказалась 9.6.2, как и в моей старенькой версии Eagle, транзистор 2N2222 присутствует в четырех библиотеках, transistor, transistor-neo-to90, transistor-npn, transistor-small-signal, корпус TO-18. Если вы хотите добавить новый корпус, это делается буквально за пару минут в месте с поиском даташита в интернете.
Скачал и установил kicad, как оказалось там из коробки нет такого компонента компонента 2N2222. Но это конечно не повод ругать CAD систему.
НЛО прилетело и опубликовало эту надпись здесь
Так это вы вроде ругали Eagle, причем версию 5.1.7 более чем 10 летней давности.
НЛО прилетело и опубликовало эту надпись здесь
А вы, если не секрет, на чем платы разрабатываете? Altium за $10 000?
НЛО прилетело и опубликовало эту надпись здесь
Отличный проект!

Микроконтроллер потребляет в режиме «STOP» всего 80 нА
. Правда? Круто, если так. STM32L жрет несколько мкА в том же режиме (с сохранинием памяти).

Впрочем, step-up все равно съест намного больше (из даташита на TPS61040: 28-µA Typical No-Load Quiescent Current). Кто-нибудь может порекомандовать хороший step-up преобразователь для работы от батареек?
С сохранением памяти CY8C4245 «жрет» 16-17 µA. В режиме «STOP» содержимое памяти не сохраняется. У TPS61040 ток потребления в выключенном состоянии 1µA.
С сохранением памяти CY8C4245 «жрет» 16-17 µA. В режиме «STOP» содержимое памяти не сохраняется.
А, понятно. Значит, это разница в названиях режимов. У STM32 такой режим называется «STANDBY».

У TPS61040 ток потребления в выключенном состоянии 1µA.
А вот тут можно поподробнее? Как я вижу, у вас MK запитан от +5V. То есть он выключает сам себя? Или на +5V остается VBAT при выключении преобразователя?

UPD: А, вижу, остается. Выходит, и HIH-4010-004 тогда стоит под напряжением?
Кстати, на самом деле у STM32L (во всяком случае, L151) в режиме Standby память сохраняется, если ее не затирать при инициализации и если не пропадало питание.
Возможно, Standby там гибкий, и можно выбирать, что оставить (часть памяти, часы). На L4 есть две области памяти, и одну из них, действительно, можно сохранить в режиме STANDBY. Но тогда и потребление будет порядка 500 nA вместо ~100 nA.
Никакой гибкости, просто сохраняется и все. Недокументированная особенность. Видимо, не гасится питание на ОЗУ в режиме стендбай, а то, что память в STM32 переживает NRST — давно известно.
Интересно, надо будет поэкспериментировать. Но я бы не стал на это рассчитывать в серьезном проекте — а то мало ли, пофиксят в новых партиях, разбирайся потом.
Ключик VT1 при выключении стабилизатора отключает оба датчика от земли.
Понял. Смотрел на шину +5V, а вы их от земли отрываете. :-)
НЛО прилетело и опубликовало эту надпись здесь
Как это обычно бывает, в 00-00 не запустил DRC после коррекции. Так как я плату не на производство отдавал, не включил у себя режим бдительности.

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

сноска 11 относится к параметрам тестирования в условиях отсутствия конденсации, вообще рабочий диапазон этого сенсора 0-100%. в моей системе если сенсор находился при температуре близкой к дью пойнту я запускаю внутренний нагреватель, после минуты работы и пары-тройки минут остыть, сенсор снова готов. А жидкости, которые приведены в первом документе способны уничтожить любой сенсор, являясь либо мощными окислителями либо сольвентами, либо кислотами…
Не знаю как вы перевели сноску 11: «Recommended humidity operating range is 20 to 80% RH (non-condensing) over 0 to 60°C. Prolonged operation beyond these ranges may result in a shift of sensor reading, with slow recovery time.», но я его перевел так: Рекомендуемый рабочий диапазон, влажность от 20% до 80% (без конденсации) при температуре от 0° до 60°. Продолжительная работа вне этих диапазонов может привести к сдвигу показаний датчика, с медленным временем восстановления.

Про первый документ, я лишь писал, что производитель настоятельно рекомендует при пайке использовать только безотмывочные паяльные пасты: «NOTE: It is important that “no-clean” solder paste is used and no board wash is applied once the sensor is assembled onto the PCB.»

так вы посмотрите в каком месте даташита это написано. это параметры для снятия проверочных значений, а вот первой строчкой
Relative humidity range: 0% to 100%
понятно, что в реальной работе при влажности более 80% показания будут плыть.


насчёт безотмывочной пасты, согласен, там по другому и не получится, если вы паяли wson6 или ещё хуже 8 пиновый корпус 2х2.5, то знаете, что из под него ничего не вымыть.

Эта сноска написана напротив строчки в таблице «Рабочий диапазон». Где вы взяли слова: «для снятия проверочных значений» и почему вы решили, что она относиться к «параметрам тестирования» мне непонятно.

если вы посмотрите на таблицу, то увидите рабочий диапазон мин, мах от 0 до 100, условия тестирования, не конденсирующаяся и сноска что такие тестирования рекомендуем проводить притаких то параметрах 20-80%.

Покажите мне слово "тестирования".

вы таблицу только по строкам читаете? столбец называется «test conditions» в нем написано «non-condensing», на что дана ссылка поясняющая, что «non-condensing» означает ограничение оперативного уровня влажности в пределах 20-80% при 0-60С. Это означает что больше влажности будет «condensing», но это никак не относится к рабочему диапазону. Следующая колонка MIN MAX — operation range, где написано, 0 — 100%, показывает рабочий диапазон, для (последняя kолонка RH) релятиве хумидити — что означает относительная влажность.
Надеюсь объяснил)
В сноске четко сказано: «Рекомендуемый РАБОЧИЙ диапазон влажности от 20% до 80% при температуре от 0°до 60°». Я привык трактовать datasheet буквально, а не придумывать новые слова в предложении.
Точка росы зависит от влажности, температуры воздуха и температуры поверхности. Если вы датчик занесли с улицы домой, и на улице +5°, а дома +21° и 35% влажности, на холодном датчике, для данных условий, будет эта самая «точка росы» и на нем может успеть сконденсироваться влага. Хотя все условия соответствуют рабочему диапазону датчика. «Надеюсь объяснил.»
дискуссия прекращает быть продуктивной, я искренне пытался убедить, что датчик хороший и я работаю с ними продолжительное время, особенно в условиях близких к точке росы и активно использую внутренний нагревательный элемент для «рефреша» датчика.
Вам хотелось, чтобы датчик работал в диапазоне RH от 0% до 100%, и вы нашли способ как прочитать это в datasheet. Я понимаю, что убедить вас в том, что производитель рекомендует использовать датчик при влажности от 20% до 80% и при температуре от 0° до 60°, дабы избежать долговременного дрейфа показаний, не представляется возможным. А с тем, что датчик хороший, для определенных условий работы, никто не спорит.

P.S. Хотя, где логика? Если при тестировании, как вы говорите, дрейф есть при выходе за указанный диапазон, то почему бы ему не быть при обычном использовании?
вы уж меня извините, но в даташите так прямо и написано, что датчик работает в диапазоне 0-100, причем в нескольких местах и прямым текстом. Остальное, для любителей читать между строк )
Вот датчик HIH-4010, у него в таблице указан рабочий диапазон от 0% до 100%, но «между строк» есть такой график: В случае hdc2080 графика нет, но есть сноска мелким шрифтом, где указан рабочий диапазон для того, чтобы избежать дрейфа.
какой вы однако, читайте сноски внимательно, в вашем же мануале. Помочь с переводом?
5. Non-condensing environment. When liquid water falls on the
humidity sensor die, output goes to a low rail condition
indicating no humidity.
я могу прогреть 2080 и он испарит влагу и продолжит правильно показывать влажность, а этому придется ждать просушки…
А как рабочий диапазон связан с конденсацией? Я вам показал выше, что условия для конденсации могут возникать и в рабочем диапазоне влажности и температуры.
напрямую, вам четко написали, что при точке росы сенсор ваш работать не будет. как вы правильно написали, точка росы есть функция относительной влажности и температуры.
Следовательно во всем диапазоне измерений при образовании росы ваш сенсор работать не будет, а мой будет.
Вы плавно перевели разговор от рабочего диапазона датчика, в сторону возможности работы в случае выпадения конденсата на датчике.
я думаю что у всех CMOS-MEMS сенсоров примерно одна судьба, по причинам своего строения они не могут работать когда на них конденсируется влага, их внутренние канальцы просто коротит. И одни производители прямо пишут это другие завуалированно.
Некоторые делают варианты, которые таки позволяют избавится от влаги, некоторые не хотят удорожать свои сенсоры.
Если вы интересуетесь сенсорами, вот интересный обзор. Я не хочу сказать, что он качественный, но много инфы в одном месте бывает полезно.
wiki.liutyi.info/display/ARDUINO/Test+i2c+humidity+sensors

Спасибо, я видел этот обзор.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории