Комментарии 11
Для отсеивания случайных выбросов берётся среднее арифметическое 10 последовательных измерений.
Для отсеивания случайных выбросов обычно берется медиана, а не среднее. Тогда даже сбойное значение в миллион градусов не повлияет на результат.
23мкА - от очень большое потребление для батареечных датчиков.
Возьмите NRF52 - хороший МК сразу с радиомодулем. Если нормально работать с датчиком температуры, то вполне можно уложиться 1-2мкА в режиме сна
Да даже на ESP32C3 можно уложиться в 5-6мкА
Статья интересная, но используемое решение странное. Можно вместо атмеги использовать NRF52 как советуют выше. Еще смущает что вы не выводите графики, и не логгируете данные, а ограничиваетесь текущими показаниями на экране. Это далеко не так интеесно, как график. Впрочем это мелочи, главное - датчики.
А теперь вопрос по датчикам: вы не проводили замеры, насколько колпак стивенсона спасает от систематической ошибки на солнце? Можно увеличить частоту замеров, выносить прибор из тени и заносить и смотреть на изменение температуры. Еще немного смущает крепление датчика на массивном основании. Это добавляет приток тепла от опоры, хотя для медленных измерений это не так критично. Просто я знаю что голый датчик висящий на тонких проводках очень быстро реагирует на изменение температуры по сравнению с датчиком в корпусе: постоянная времени реакции меняется с нескольких секунд до единиц - десятков минут.
Никакой колпак Стивенсона не спасает от солнца на 100%.
Я у себя дома поставил два датчика на северную и южную сторону и беру минимальное значение температуры в систему.
Если ночью разница температур между датчиками редко бывает больше 1 градуса, то в солнечный день 6 градусов разницы - это норма
Спасибо за развёрнутый комментарий!
Atmega и nRF24 использовал, потому что ранее не слышал о nRF52 — присмотрюсь к нему в следующих проектах.
По графикам Вы правы, это добавило бы наглядности. Я делал акцент на локальной индикации: посмотрел на экран и забыл.
Замеры с выносом из тени не проводил, но понимаю, что на солнце любой корпус будет нагреваться, особенно в безветренную погоду, а показания — отклоняться от реальной температуры.
Датчик не хотел крепить только на проводах, поэтому сделал для него минимальную площадку и опору, внутри которой спрятаны провода. Это добавило тепловой инерции, но при интервале измерений 30 минут я не считаю это критичным — датчик успевает адаптироваться к изменению температуры, впрочем, как Вы и упомянули
Аtmega328 и NRF24L01
Недавно начал использовать esp32c6, и wifi/bluetooth/zigbee и экономное ядро 20мгц в одном корпусе
... и подключение аккумулятора ещё обычно делают на плате сразу.
Как и ожидалось, минимальное потребление в активном режиме достигнуто на частоте 1 МГц.
"Неправильно ты, дядя Фёдор, ..." считаешь. Надо считать не ток, а энергию (ток*время). Тогда получится, что выгоднее "быстро пробежать и раньше лечь спать".
23 мкА в режиме сна
В коде Meteo TX - не вижу настроек портов ATmega328. После сброса - они все настроены как входы и могут давать лишнее потребление при флуктуациях входного уровня. Можно, например, в начале настройки записать 0xFF во все регистры PORTx (включение встроенных подтягивающих резисторов).
модель рассчитывалась как монолитная деталь из ABS-пластика
...который боится УФ-излучения от солнца. Кроме того, в расчете не предусмотрена ситуация, если на верхушку колпака Стивенсона сядет птица или накопится и отяжелеет снег.
Конденсатор решает две задачи одновременно: он шунтирует на землю помехи, наведенные на сигнальный провод, и принудительно удерживает вход АЦП на том же потенциале, что и земля при её скачках, превращая помеху в синфазную.
Конденсатор на выводе (а не входе) AREF АЦП не имеет никакого отношения к сигнальному проводу от фоторезистора: см. datasheet, figure "Analog to Digital Converter Block Schematic Operation".


Метеостанция на Аtmega328 и NRF24L01 с выносным датчиком