An open API service indexing awesome lists of open source software.

https://github.com/octaprog7/sgp4x

Модуль MicroPython для работы с датчиком качества окружающего воздуха SGP40/SGP41 от Sensirion.
https://github.com/octaprog7/sgp4x

i2c micropython nox voc

Last synced: about 1 month ago
JSON representation

Модуль MicroPython для работы с датчиком качества окружающего воздуха SGP40/SGP41 от Sensirion.

Awesome Lists containing this project

README

          

# SGP4X
Модуль MicroPython для работы с датчиком качества окружающего воздуха SGP40/SGP41 от Sensirion.

# Назначение
SGP40 представляет собой цифровой датчик газа, предназначенный для контроля качества воздуха в помещениях!
Его основная задача — измерение уровня летучих органических соединений (ЛОС) в воздухе.

## Особенности SGP40:
* интерфейс I2C
* встроенный микронагреватель
* показания качества воздуха с компенсацией влажности
* устойчивость к загрязняющим веществам

# Применение
1. Очистители воздуха.
2. Системы вентиляции с автоматическим управлением.
3. Умные системы контроля микроклимата.

# SGP41
## Особенности SGP41:
1. Два датчика в одном корпусе.
2. Возможность автоматического управления очистительными системами.
3. Мониторинг потенциально опасных концентраций загрязняющих веществ.

## Технические характеристики SGP41:
* Диапазон измерения ЛОС: до 1000 ppm (эквивалент этанола)
* Диапазон измерения NOx: до 10 ppm (эквивалент NO2)
* Время отклика: менее 10 секунд для ЛОС, менее 250 секунд для NOx

## Области применения SGP41:
* Профессиональные очистители воздуха
* Системы вентиляции и воздухообмена
* Кухонные вытяжки
* Умные системы контроля качества воздуха

# Дополнительная обработка данных
Без дополнительной обработки, показания SGP40 и SGP41 использовать нельзя!
Требуется программная обработка сырых(!) данных для получения индекса VOC/NOx, пригодного для анализа и отображения пользователю.
Рекомендуется реализовать компенсацию по влажности и температуре для повышения точности.

На данный момент дополнительную обработку сырых данных от SGP40/41 в программах, использующих Micropython, сделать невозможно!
Так как Sensirion Gas Index Algorithm использует полноценный Python 3.6 и выше!

## Sensirion’s Gas Index Algorithm
https://pypi.org/project/sensirion-gas-index-algorithm/

# Питание
Напряжение питания SGP4X 1,7..3,6 Вольта!

# Прошивка
Загрузите прошивку MicroPython на плату NANO, PICO RP2040 (ESP и т. д.), а затем файлы: main.py, sgp4Xmod.py и папку sensor_pack_2 полностью.
Затем откройте main.py в своей IDE и запустите его.

# Подключение
Просто подключите плату c SGP4X к Arduino, ESP или любой другой плате с прошивкой MicroPython.

# Внимание
Я использовал плату с датчиком SGP41. В ответе на команду sgp40_measure_raw_signal с датчика было считано шесть
байт. Первые три байта содержат ЛОС, вторая тройка содержит NOx.
С первой тройкой было все в порядке, CRC, принятый от датчика и рассчитанный CRC совпали.
Вторая тройка байт была 0xFF, 0xFF, 0xFF. Естественно, код выбросил исключение о неверном CRC.
Возможно мой датчик поддельный, поэтому, если у вас подобная ситуация,
в конструкторе указывайте sensor_id = 0 (как будто это SGP40) а check_crc должен быть в Истина всегда!

# Картинки

## Результат работы
![alt text](https://github.com/octaprog7/sgp4x/blob/master/pics/meas_vals.png)