M5Atom_airqa/README.md

10 KiB
Raw Blame History

M5Atom_airqa

https://savjee.be/2019/12/esp32-tips-to-increase-battery-life/


1. Подключить питание в USB
2. Зажать кнопку сверху на 40 секунд (не боковую. Боковая кнопка - это рестарт)
3. Начнет мигать зеленый светодиод
4. Зайти в телефона в точку доступа "AirQaPortal" c паролем "12345678"
5. Выбрать нужную Wifi точку и ввести пароль. Нажать сохранить
6. После перезагрузки устройство подключится к точке доступа и начнется отправка информации в топики
7. Если данные в топики не побежали то это значит что у провайдера нет кольцевого проброса запросов из локальной сети по внешнему ip внутрь этой сети - починим другим способом.
8. Отправка данных в топики 1 раз в минуту
9. Запрос обновления прошивки раз в 7 минут
10. Можно взять данные из COM порта через ttylog -b 115200 -d /dev/ttyACM*
11. Датчик необходимо установить на не холодной (не внешней) стене, на высоте от 1.5 до 1.8
метра, от дверей и проходов не менее 30 см. Не устанавливать напротив солнечных окон, не
устанавливать над обогревающими или под охлаждающими приборами.



17:31:54.570 -> HDC1080 Configuration Register
17:31:54.615 -> ------------------------------
17:31:54.615 -> Software reset bit: 0 (0=Normal Operation, 1=Software Reset)
17:31:54.705 -> Heater: 0 (0=Disabled, 1=Enabled)
17:31:54.750 -> Mode of Acquisition: 0 (0=T or RH is acquired, 1=T and RH are acquired in sequence, T first)
17:31:54.841 -> Battery Status: 0 (0=Battery voltage > 2.8V, 1=Battery voltage < 2.8V)
17:31:54.930 -> T Measurement Resolution: 0 (0=14 bit, 1=11 bit)
17:31:54.975 -> RH Measurement Resolution: 0 (00=14 bit, 01=11 bit, 10=8 bit)



Если устройство находится в рекомендуемом рабочем диапазоне (относительная влажность от 10% до 70% и температура от -20 до 70 ° C), то не нужно часто калибровать (длительный дрейф составляет ± 0,25% относительной влажности / год). Датчик CCS811 не может измерять концентрацию СО2 непосредственно и выдает рассчитанные "эквивалентные" значения СО2, которые при высокой концентрации ЛОВ оказываются сильно завышенными. Датчики настроены на точность 14 бит.

Характеристики HDC1080:
• Робоча температура: -20 ° C ~ 70 ° C
• Діапазон вимірювання датчика вологості: 0 ~ 100% RH
• Точність датчика вологості: похибка 14 біт ± 2% відносної вологості
• Точність повторюваності вологості: ± 0.1% RH
• Час відгуку датчика вологості: 15с
• Час вимірювання вологості: 8 біт 2,5 мс, 11 біт 3,85 мс, 14 біт 6,5 ms
• Точність датчика температури: ± 0,4 ° C (температура навколишнього середовища Температура 5 ° C ~ 60 ° C)
• Повторюваність вимірювання температури: ± 0,1 ° C
• Час вимірювання температури: 11 біт 3,85 мс, 14 біт 6,5 мс
• Напруга живлення: рекомендується 3,3 В
Характеристики CCS811:
• Напруга живлення: рекомендується 3,3 V
• Робоча частота інтерфейсу I2C: 400 кГц
• Діапазон виявлення eTVOC: 0 ~ 32768ppb
• Діапазон виявлення eCO2: 400 ~ 32768ppm
• Автоматичний час корекції вихідних умов для чутливого шару оксиду металу: 24 години
• Можливість налаштування і зчитування часу датчика після включення: не менше 20 хвилин



Информация для датчика 1080 https://www.terraelectronica.ru/news/5287

https://pubsubclient.knolleary.net/api.html

https://ipc2u.ru/articles/prostye-resheniya/chto-takoe-mqtt/#kachestvo

https://www.hivemq.com/blog/mqtt-essentials-part-9-last-will-and-testament/

САМАЯ ПРАВИЛЬНАЯ СТАТЬЯ ПРО СПЯЩИЙ РЕЖИМ https://savjee.be/2019/12/esp32-tips-to-increase-battery-life

https://savjee.be/2019/12/esp32-tips-to-increase-battery-life/

Прежде всего, вы заметите, что два датчика дают разные показания. Вы должны знать (цитируя лист данных) «датчики оксидов металлов не дают абсолютных показаний». Да, они делают вид, что используют регистры CO2 и TVOC, но это не так. Они измеряют сопротивление своего слоя оксида металла, а затем проверяют, насколько оно отклоняется от нормального сопротивления, и это отклонение отображается на показаниях CO2 / TVOC. Проблема заключается в этом нормальном сопротивлении, снова цитируя лист данных: «Сопротивление RS изменяется от датчика к датчику (производственные вариации), от варианта использования к варианту использования и с течением времени». В итоге все датчики дают разные показания CO2 / TVOC, но когда они повышаются, по крайней мере, мы знаем, что воздух стал хуже.

Вторая проблема, которую вы поднимаете, - это падение показаний после включения и выключения питания. Это имеет аналогичную предысторию. Снова процитируем таблицу данных о том, что сопротивление чистого (нормального) воздуха изменяется: «Чтобы смягчить эту проблему, выходной сигнал датчика нормализован: RS делится на RA. Значение RA известно как базовое значение. RA не может быть определено с помощью однократной калибровки, она поддерживается на лету в программном обеспечении ». Посредством включения и выключения питания вы эффективно удаляете информацию о чистом воздухе, накопленную датчиком: если вы включаете датчик в плохом воздухе, он имеет это только как эталон и считает его чистым.

См. Раздел «Ручная коррекция базовой линии» в таблице данных.

Тест должен быть:

датчик включен более 20 мин (обкатка) на чистом воздухе, получить базовый уровень возьмите пустую бутылку и налейте в нее каплю спирта выключите датчик, положите в бутылку и снова включите. Внутренняя базовая линия сбрасывается, но не нужно ждать приработки, потому что датчик был всего несколько секунд прочитал tvoc, будет сообщено как нет / чистый воздух (потому что датчик проснулся в грязной бутылке) Установите базовый уровень и прочтите снова tvoc, теперь он должен быть очень высоким.

https://learn.adafruit.com/adafruit-ccs811-air-quality-sensor?view=all

INT - это вывод прерывания-вывода. Это логика 3 В, и вы можете использовать ее, чтобы определить, когда готово новое показание или когда показание становится слишком высоким или слишком низким. WAKE - это штифт для пробуждения датчика. Для связи с датчиком его необходимо заземлить. Этот вывод смещен по уровню, поэтому вы можете использовать логику 3-5 В постоянного тока. RST - это вывод сброса. Когда его тянут на землю, датчик сбрасывается. Этот вывод смещен по уровню, поэтому вы можете использовать логику 3-5 В постоянного тока.

Лучший способ откалибровать HDC1080 - держать его в контролируемой среде (например, в климатической камере) вместе с эталонным датчиком высокой точности (например, с зеркалом точки росы RH Systems 473), оценивать смещение между HDC1080 и эталонный датчик и удалите это смещение в микропрограмме микроконтроллера.