Датчик углекислого газа MG 811
Я использую датчик углекислого газа MG811 с модулем ESP8266. Значения CO2 считываются в закрытом помещении. Значение составляет около 400 частей на миллион. Использование генератора CO2 не приводит к увеличению показаний. Проверено с помощью портативного измерителя pSense RH co2 Temp. Он показывает около 750-800 частей на миллион. Но ESP8266 по-прежнему показывает около 420 ppm на OLED-дисплее.
#include "CO2Sensor.h"
CO2Sensor co2Sensor(A0, 0.99, 100);
void setup() {
Serial.begin(9600);
Serial.println("=== Initialized ===");
co2Sensor.calibrate();
}
void loop() {
int val = co2Sensor.read();
Serial.print("CO2 value: ");
Serial.println(val);
delay(1000);
}
Что означает (A0, 0,99, 100) во второй строке кода. Нужно ли выполнять какую-либо калибровку для правильного значения?
@Jashanjot Kaur, 👍-1
Обсуждение1 ответ
Ваш код взят из примера в библиотеке, которую вы используете https:/ /github.com/solvek/CO2Sensor/blob/master/examples/ReadCO2/ReadCO2.ino
Чтобы ответить на ваши вопросы:
Что означает (A0, 0,99, 100) во второй строке кода. Проверка исходного кода библиотеки показывает: CO2Sensor::CO2Sensor(int AnalogPin, float inertia, int trys)
Конечно, если вы не понимаете, как библиотека использует переменные inertia и try, одно это не будет иметь для вас никакого смысла.
Необходима ли калибровка для правильного значения?
На мой взгляд, ответ ДА. Кроме того, я думаю, что калибровка необходима, но недостаточна для правильного использования датчика в той степени, в которой вы можете иметь хорошее представление о том, что такое «правильное значение». значит.
Мне нравится, что вы понимаете основную идею тестирования или проверки датчика. Мне нравится идея, что вы используете другой монитор (при условии, что он хороший) в качестве "стандартного" монитора. и мне нравится, что вы используете генератор CO2 — при условии, что вы делаете это безопасно.
Чего не хватает, опять же, на мой взгляд, так это понимания того, как работает датчик. Не то чтобы я эксперт по этому конкретному датчику, но даже краткий обзор того, что проходит как техпаспорт https ://sandboxelectronics.com/files/SEN-000007/MG811.pdf и текст использования библиотеки https://github .com/solvek/CO2Sensor и несколько других источников, находящихся в свободном доступе; дает мне понять, что вам нужно гораздо больше вникать в это, прежде чем вы добьетесь успеха в понимании и правильном использовании этого датчика.
Это сложно. Я надеюсь, что мой ответ не сбивает с толку, а вместо этого указывает вам правильное направление.
- Передача функции-члена класса в качестве аргумента
- Как работать с аналоговыми контактами в цикле?
- контент» не захватывается
- esp32 Stack canary watchpoint срабатывает
- Преобразование byte* в int в Arduino
- Как передать нестатический член класса в обратный вызов?
- ESP8266: ошибка: 'getLocalTime' was not declared in this scope
- Какова цель F() и FPSTR() в ESP8266WebServer -> FSBrowser?
Вам, вероятно, потребуется показать, что эта штука подключена и какой источник вы используете для питания нагревательного элемента., @timemage
проверить документацию библиотеки, @jsotola