Published On Nov 20, 2020
👉 Pula kodów na -50% została już wykorzystana! Tutaj dodatkowy kod:
10% rabatu* dla 100 osób z kodem VGQNKQK7 ► https://tiny.pl/72zxt
👉 7% rabatu z kodem WD9683LZ na czujnik i sugerowane akcesoria ► https://tiny.pl/72zxw
*bez Arduino! Uwaga! Jeśli nie masz miernika uniwersalnego to dodaj go do zestawu (sekcja proponowane akcesoria)!
👕 Nasze koszulki ► https://naukowybelkot.shoplo.com/
📚 Moja książka ► https://altenberg.pl/geny/
🎵 Mix audio ► http://ratstudios.pl/
===
Kurs Forbot
👉 https://forbot.pl/blog/kursy
===
Prokrastynatorium:
👉 https://botland.com.pl
===
Subskrypcja ► / uwaganaukowybelkot
Facebook ► / uwaganaukowybelkot
Twitter ► / naukowybelkot
Instagram ► / naukowybelkot
Grupa na facebooku ► https://goo.gl/HP8J83
===
Kod do pomiaru czujnikiem:
//pin, do którego podłączony jest czujnik
int analogPin = A0;
float co2;
float w_ppm;
//wartości napięcia punktów kalibracyjnych (w moim przypadku) - przy nowej kalibracji należy zmienić wartości w nawiasie
#define AMBIENT (1.94)
#define WYDECH (0.92)
//parametry krzywej kalibracyjnej do której odwołuje się pomiar wartość 2.60959 to logarytm z 410 (jeden punkt kalibracyjny), a 3.69897 to logarytm z 5000 (drugi punkt kalibracyjny)
float CO2Curve[3] = {2.609594409225220037, (AMBIENT/8.5), (((AMBIENT - WYDECH)/8.5)/(2.60959-3.69897))};
void setup() {
pinMode(analogPin, INPUT);
Serial.begin(9600);
}
void loop() {
//co dwie sekundy nastąpi pomiar i wypisanie w konsoli wartości analogowej, napięcia (może się przydać do klaibracji) i stężenia w ppm na podstawie krzywej kalibracyjnej
Serial.println("===nowy pomiar===");
co2 = analogRead(analogPin);
Serial.print(co2);
Serial.println(" analogowo");
co2 = co2 * 5.0 / 1024;
Serial.print(co2);
Serial.println(" V");
w_ppm = ((co2/8.5) - CO2Curve[1])/CO2Curve[2] + CO2Curve[0];
w_ppm = pow(10, w_ppm);
Serial.print(w_ppm);
Serial.println(" ppm");
delay(2000);
}