Цена:
Датчик углекислого газа MH-Z19B — датчик, который детектирует уровень СО2 по принципу недисперсионного инфракрасного излучения (NDIR). Данный датчик имеет внутреннюю температурную компенсацию, может подключаться по 3-м интерфейсам (аналоговый, ШИМ, UART), имеет малые размеры и большой срок службы.
Приблизительные нормы содержания уровня CO2 в помещениях:
Уровень CO2, ppm | Качество воздуха |
300-400 | Эталонное качество воздуха |
400-600 | Нормальное качество воздуха |
600-800 | Среднее качество воздуха |
800-1000 | Предельно допустимое качество воздуха |
Свыше 1000 | Низкое качество воздуха |
Свыше 2000 | Критически низкое качество воздуха |
Характеристики:
Подключение:
Датчик подключается по шине UART.
На плате Arduino UNO напряжение на выходах TX и RX равно 5В. Напряжение на входах TX и RX датчика не должно превышать 3,3В. В связи с этим подключение необходимо использовать делитель напряжения или преобразователь логического уровня.
Питание
Входное напряжение питания от 4.5В до 5В постоянного тока, подаётся на выводы VCC и GND модуля.
Управляющие команды
Датчик имеет несколько режимов работы, которые зависят от управляющего байта:
Отправка
Байт 0 | Байт 1 | Байт 2 | Байт 3 | Байт 4 | Байт 5 | Байт 6 | Байт 7 | Байт 8 |
0xFF | 0x01 | 0x86 | 0x00 | 0x00 | 0x00 | 0x00 | 0x00 | 0x79 |
Приём
Байт 0 | Байт 1 | Байт 2 | Байт 3 | Байт 4 | Байт 5 | Байт 6 | Байт 7 | Байт 8 |
0xFF | 0x86 | HIGH | LOW | -- | -- | -- | -- | 0х79 |
Отправка
Байт 0 | Байт 1 | Байт 2 | Байт 3 | Байт 4 | Байт 5 | Байт 6 | Байт 7 | Байт 8 |
0xFF | 0x01 | 0x87 | 0x00 | 0x00 | 0x00 | 0x00 | 0x00 | CRC |
Отправка
Байт 0 | Байт 1 | Байт 2 | Байт 3 | Байт 4 | Байт 5 | Байт 6 | Байт 7 | Байт 8 |
0xFF | 0x01 | 0x88 | HIGH | LOW | 0x00 | 0x00 | 0x00 | CRC |
Пример:
Отправка
Байт 0 | Байт 1 | Байт 2 | Байт 3 | Байт 4 | Байт 5 | Байт 6 | Байт 7 | Байт 8 |
0xFF | 0x01 | 0x88 | HIGH | LOW | 0x00 | 0x00 | 0x00 | CRC |
Пример:
Диапазон задаётся в (6) и (7) байтах.
Для диапазона 2000ppm (2000 в 10-ной кодировке = 07D0 в 16-ной кодировке):
Отправка
Байт 0 | Байт 1 | Байт 2 | Байт 3 | Байт 4 | Байт 5 | Байт 6 | Байт 7 | Байт 8 |
0xFF | 0x01 | 0x99 | 0х00 | 0х00 | 0х00 | 0х07 | 0хD0 | CRC |
Для диапазона 5000ppm (5000 в 10-ной кодировке = 1388 в 16-ной кодировке):
Отправка
Байт 0 | Байт 1 | Байт 2 | Байт 3 | Байт 4 | Байт 5 | Байт 6 | Байт 7 | Байт 8 |
0xFF | 0x01 | 0x99 | 0х00 | 0x00 | 0x00 | 0x13 | 0x88 | CRC |
CRC
Во всех командах в последнем (8) байте указана контрольная сумма - CRC. Для её подсчёта используется указанная производителем функция:
char getCheckSum(char *packet) {
char i, checksum;
for( i = 1; i < 8; i++){
checksum += packet[i];
}
checksum = 0xff – checksum;
checksum += 1;
return checksum;
}
г. Москва, Пятницкое ш. д. 18, пав. 566
zakaz@compacttool.ru
8-495-752-55-22
Информация представленная на данном информационном ресурсе преследует исключительно рекламные цели и не является договором-офертой !
© Все права защищены 2015 - 2024г https://compacttool.ru