نقيس تركيز ثاني أكسيد الكربون في الشقة باستخدام MH-Z19

يمكن لأي محطة أرصاد جوية تقريبًا ، بما في ذلك النماذج الصينية الرخيصة مقابل بضعة دولارات ، قياس المعلمات الأساسية لدرجة حرارة الهواء والرطوبة. أصبح ثاني أكسيد الكربون أكثر صعوبة: لا توجد أجهزة متاحة تجاريًا يمكنها قياسه. ومما يضاعف الموقف أن ثاني أكسيد الكربون هو غاز بدون لون ورائحة ، لذا يكاد يكون من المستحيل الشعور بتركيزه مع "الأنف".

التفاصيل والقياسات تحت القطع.

لقد تم بالفعل وصف مستشعر MH-Z19 نفسه هنا على الموقع. تم أخذ مقالة " نظرة عامة على مستشعر ثاني أكسيد الكربون بالأشعة تحت الحمراء " كأساس ، وهذه المادة هي استمرارها المنطقي. حول قياس تركيز ثاني أكسيد الكربون في الشارع تم كتابته هنا ، ولكن لم تكن هناك بيانات حول التركيز في الشقة. املأ هذه الفجوة.

حديد


أول الأشياء طلبت أولاً المكونات التالية على موقع eBay:
- Arduino Micro ATmega32U4 3.3V (سعر الإصدار 5 دولارات). لأن يحتوي المستشعر على منطق 3 فولت ، من الأفضل عدم استخدام Arduino العادي.
- شاشة OLED LCD I2C 0.91 "128x32 (سعر الإصدار 7 دولارات). تتصل الشاشة بدبابيس Arduino i2c القياسية.
- في الواقع المستشعر MH-Z19 (سعر الإصدار 28 دولارًا).
- مجموعة من الأسلاك مع موصلات لجهات اتصال الدبوس (سعر الإصدار 1-2 دولار)
وبالتالي ، كانت التكلفة الإجمالية ~ 40 دولارًا أو 2600r. يكلف جهاز ذو علامة تجارية من شركة معروفة حوالي ضعف هذا المبلغ ، على الرغم من أنه هنا على الأرجح لا يتعلق الأمر بالتوفير ، ولكن بالاهتمام التقني.

تم استعارة رمز Arduino من المقالة أعلاه .، تمت إضافة إخراج البيانات إلى الشاشة ، ولتحليل البيانات بشكل أكثر ملاءمة ، تم تحويل الإخراج إلى تنسيق خط بسيط باستخدام فاصل. كما تمت إضافة طوابع زمنية ، كل منها يقابل 10 ثوانٍ.
كود المصدر
#include <SoftwareSerial.h>
#include <Wire.h>

// I2C OLED
#include "SSD1306Ascii.h"
#include "SSD1306AsciiWire.h"
#define I2C_ADDRESS 0x3C
SSD1306AsciiWire oled;

// CO2 sensor:
SoftwareSerial mySerial(8,9); // RX,TX
byte cmd[9] = {0xFF,0x01,0x86,0x00,0x00,0x00,0x00,0x00,0x79}; 
unsigned char response[9];

void setup() {
  // Serial
  Serial.begin(9600);
  mySerial.begin(9600);

  // OLED
  Wire.begin();         
  oled.begin(&Adafruit128x32, I2C_ADDRESS);
  oled.set400kHz();  
  oled.setFont(ZevvPeep8x16);  

  oled.clear();  
  oled.println("setup::init()");
}

long t = 0;

void loop() 
{
  mySerial.write(cmd, 9);
  memset(response, 0, 9);
  mySerial.readBytes(response, 9);
  int i;
  byte crc = 0;
  for (i = 1; i < 8; i++) crc+=response[i];
  crc = 255 - crc;
  crc++;

  oled.clear();  
  if ( !(response[0] == 0xFF && response[1] == 0x86 && response[8] == crc) ) {
    Serial.println("CRC error: " + String(crc) + " / "+ String(response[8]));
    oled.println("Sensor CRC error");
  } else {
    unsigned int responseHigh = (unsigned int) response[2];
    unsigned int responseLow = (unsigned int) response[3];
    unsigned int ppm = (256*responseHigh) + responseLow;
    Serial.print(String(t)); Serial.print(","); Serial.print(ppm); Serial.println(";");
    if (ppm <= 400 || ppm > 4900) {
      oled.println("CO2: no data");          
    } else {
      oled.println("CO2: " + String(ppm) + " ppm"); 
      if (ppm < 450) {   
        oled.println("Very good");
      }
      else if (ppm < 600) {   
        oled.println("Good");
      }
      else if (ppm < 1000) {   
        oled.println("Acceptable");
      }
      else if (ppm < 2500) {   
        oled.println("Bad");
      }
     else {   
        oled.println("Health risk");
      }
    }
  }
  delay(10000);
  t += 10;
}


تم وضع كل هذا معًا ، وتم صب الرسم في اردوينو ، والنتيجة شيء من هذا القبيل:
الصورة

بالطبع ، هذا ليس الجزء العلوي من التصميم الصناعي (يخطط للعثور على نوع من السكن) ، ولكن لمهمة جهاز العرض الذي يمكن أن يعمل بشكل مستقل ونقل البيانات عبر USB ، الجهاز تتواءم تماما. لتلقي البيانات عبر USB ، ما عليك سوى فتح شاشة المنفذ في Arduino IDE ، وسيتم عرض البيانات فيه. يمكن نسخ النص من هناك وفتحه في أي برنامج ، على سبيل المثال في Excel.

القياسات


السؤال التالي: ما الذي نقيسه بالفعل؟ يوفر الجهاز بيانات في المليون (أجزاء لكل مليون ، أجزاء لكل مليون). 1000 جزء في المليون = 0.1٪ محتوى CO2. على الإنترنت ، يمكنك العثور على الجدول التالي للتركيزات المسموح بها:
- 350 - 450 جزء في المليون : المستوى العادي في الهواء الطلق.
- <600 جزء في المليون : المستويات المقبولة. المستوى. يوصى به لغرف النوم ورياض الأطفال والمدارس.
- 600 - 1000 جزء في المليون : شكاوى من الهواء القديم ، وربما انخفاض في التركيز.
- 1000 جزء في المليون : أعلى معايير ASHRAE (الجمعية الأمريكية لمهندسي التدفئة والتبريد وتكييف الهواء) و OSHA (إدارة السلامة والصحة المهنية).
- 1000 - 2500 جزء في المليون: خمول عام ، تركيز منخفض ، صداع ممكن.
- 2500 - 5000 جزء في المليون : الآثار السلبية المحتملة على الصحة.

وأخيرًا ، النتائج. تم تركيب المستشعر في المطبخ ، والنوافذ من المعدن والبلاستيك ، ووقت القياس حوالي 8 ساعات.

كانت النتائج مثيرة جدا للاهتمام. الوقت الأفقي بالثواني ، 3600 ثانية تتوافق مع ساعة واحدة.

يتم فك تشفير المنحنيات على الرسم البياني كما يلي:
0h: قراءات حوالي 420 جزء في المليون (يتوافق مع الشارع) ، لم يكن هناك أحد في المنزل ، عدت إلى المنزل من العمل وفي نفس الوقت قمت بتشغيل المستشعر.
0-2 ساعات: أنا في المطبخ ، ويمكن ملاحظة أنه في وجود شخص يرتفع تركيز ثاني أكسيد الكربون ببطء في مكان ما إلى 900 جزء في المليون.
2-4 ساعات: غادرت الغرفة ، يمكنك أن ترى كيف ينخفض ​​التركيز ببطء.
4-6 ساعات: عدت وبدأ التركيز ينمو مرة أخرى.
الساعة السادسة: يوضع وعاء من الرافيولي على الموقد. من المثير للاهتمام أن نرى كيف زاد التركيز على الفور تقريبًا إلى 1700 جزء في المليون ، ثم بدأ في الانخفاض ببطء. على الرغم من أن الغاز لم يحترق لمدة طويلة (10-15 دقيقة) ، فإن المستويات العالية> 1000 جزء في المليون تبقى لمدة ساعة على الأقل.
نهاية الرسم البياني: تم فتح نافذة وانخفض مستوى ثاني أكسيد الكربون على الفور تقريبًا.

الاستنتاجات


اتضح أن الجهاز مثير للاهتمام للغاية ، وذات صلة خاصة بالأشخاص الذين يعملون في المنزل على الكمبيوتر. لذلك ، على سبيل المثال ، أثناء كتابة هذه المقالة ، زاد مستوى ثاني أكسيد الكربون في الداخل من 500 إلى 770 جزء في المليون. إن النظر إلى الشاشة إما يفرض عليك فتح النافذة أكثر من مرة ، أو يفكر في النهاية في الجهاز الموجود في المنزل مع التهوية العادية (ربما لن يكون وضع التهوية الدقيقة في النافذة غير ضروري ، بل نوعًا من غطاء المحرك). إذا كنت أشتري نوافذ جديدة الآن ، ربما كنت سأفكر في نموذج عالي الجودة نوعًا ما مع تهوية طبيعية.

من المهم أيضًا ملاحظة أهمية التهوية الجيدة في المطبخ: كما يوضح الرسم البياني ، حتى في غضون 10 دقائق ، يمكن لموقد غاز واحد "حرق" الإمداد الكامل من الأكسجين ، وبذلك يصل تركيز ثاني أكسيد الكربون إلى مستوى عالٍ جدًا. أظهرت القياسات في غرفة النوم أنه من حيث التهوية أيضًا ، كل شيء ليس جيدًا جدًا: في الصباح ، يكون تركيز ثاني أكسيد الكربون أكثر من 1000 جزء في المليون ، وبالنسبة للعمل العقلي ، فإن النوم الجيد مهم جدًا.

بشكل عام ، يسمح لك هذا الجهاز البسيط وغير المكلفة بفحص جودة الهواء بشكل فعال للغاية في شقة أو مكتب.
يرغب المؤلف في صحة جيدة للجميع ومزاج جيد. حسنًا ، بالطبع ، الهواء جيد أيضًا.

Source: https://habr.com/ru/post/ar395755/


All Articles