- المكونات مطلوبة
- مستشعر الجاذبية بالأشعة تحت الحمراء CO2
- 0.96 'OLED Display Module
- مخطط الرسم البياني
- كود اردوينو لقياس تركيز ثاني أكسيد الكربون
- اختبار التفاعل بين مستشعر الجاذبية بالأشعة تحت الحمراء لثاني أكسيد الكربون
أصبح التركيز المتزايد لثاني أكسيد الكربون في الهواء مشكلة خطيرة الآن. وفقًا لتقرير NOAA ، وصل تركيز الأوزون CO2 إلى 0.0385 بالمائة (385 جزء في المليون) وهو أعلى كمية في 2.1 مليون سنة. هذا يعني أنه في مليون جزء من الهواء ، هناك 385 جسيمًا من ثاني أكسيد الكربون. لقد أثر هذا المستوى المرتفع من ثاني أكسيد الكربون على البيئة بشكل سيء وقادنا إلى مواجهة وضع مثل تغير المناخ والاحتباس الحراري. هناك العديد من أجهزة قياس جودة الهواء المثبتة على الطرق لمعرفة مستوى ثاني أكسيد الكربون ، ولكن يمكننا أيضًا بناء جهاز قياس CO2 DIY ويمكن تثبيته في منطقتنا.
في هذا البرنامج التعليمي ، سنقوم بربط مستشعر Gravity Infrared CO2 مع Arduino لقياس تركيز CO2 في PPM. مستشعر الجاذبية بالأشعة تحت الحمراء CO2 هو مستشعر CO2 تناظري عالي الدقة. يقيس محتوى ثاني أكسيد الكربون في نطاق من 0 إلى 5000 جزء في المليون. يمكنك أيضًا التحقق من مشاريعنا السابقة حيث استخدمنا مستشعر الغاز MQ135 ومستشعر Sharp GP2Y1014AU0F ومستشعر Nova PM SDS011 لبناء جهاز لمراقبة جودة الهواء.
المكونات مطلوبة
- اردوينو نانو
- مستشعر الجاذبية بالأشعة تحت الحمراء CO2 V1.1
- أسلاك توصيل
- 0.96 'SPI OLED Display Module
- اللوح
مستشعر الجاذبية بالأشعة تحت الحمراء CO2
مستشعر الجاذبية بالأشعة تحت الحمراء CO2 V1.1 هو أحدث مستشعر CO2 التناظري عالي الدقة الذي تم إصداره بواسطة DFRobot. يعتمد هذا المستشعر على تقنية الأشعة تحت الحمراء غير المشتتة (NDIR) ولديه انتقائية جيدة واعتماد خالٍ من الأكسجين. إنه يدمج تعويض درجة الحرارة ويدعم إخراج DAC. يتراوح نطاق القياس الفعال لهذا المستشعر من 0 إلى 5000 جزء في المليون بدقة تبلغ ± 50 جزء في المليون + 3٪. يمكن استخدام مستشعر ثاني أكسيد الكربون بالأشعة تحت الحمراء في HVAC ، ومراقبة جودة الهواء الداخلي ، والعمليات الصناعية ، ومراقبة حماية الأمن ، والزراعة ، ومراقبة عملية إنتاج تربية الحيوانات.
Pinout مستشعر ثاني أكسيد الكربون بالأشعة تحت الحمراء :
كما ذكرنا سابقًا ، يأتي مستشعر ثاني أكسيد الكربون بالأشعة تحت الحمراء مزودًا بموصل ذي 3 سنون. يوضح الشكل والجدول أدناه تعيينات الدبوس لمستشعر ثاني أكسيد الكربون بالأشعة تحت الحمراء:
رقم الدبوس |
اسم الدبوس |
وصف |
---|---|---|
1 |
الإشارة |
الإخراج التناظري (0.4 ~ 2 فولت) |
2 |
VCC |
VCC (4.5 ~ 5.5 فولت) |
3 |
GND |
GND |
مواصفات وميزات مستشعر الأشعة تحت الحمراء CO2 :
- كشف الغاز: ثاني أكسيد الكربون (CO2)
- جهد التشغيل: 4.5 ~ 5.5 فولت تيار مستمر
- وقت التسخين: 3 دقيقة
- وقت الاستجابة: 120 ثانية
- درجة حرارة التشغيل: 0 ~ 50 درجة مئوية
- رطوبة التشغيل: 0 ~ 95٪ RH (بدون تكاثف)
- مقاوم للماء ومضاد للتآكل
- دورة حياة عالية
- تدخل مضاد لبخار الماء
0.96 'OLED Display Module
OLED (الثنائيات العضوية الباعثة للضوء) هي تقنية انبعاث للضوء ذاتيًا ، يتم إنشاؤها عن طريق وضع سلسلة من الأغشية الرقيقة العضوية بين موصلين. يتم إنتاج ضوء ساطع عند تطبيق تيار كهربائي على هذه الأفلام. تستخدم OLEDs نفس التكنولوجيا المستخدمة في أجهزة التلفزيون ، ولكن بها عدد بكسلات أقل من معظم أجهزة التلفزيون لدينا.
بالنسبة لهذا المشروع ، نستخدم شاشة OLED أحادية اللون ذات 7 أسنان SSD1306 0.96 بوصة. يمكن أن تعمل على ثلاثة بروتوكولات اتصالات مختلفة: SPI 3 Wire mode و SPI four-wire mode و I2C mode. يتم شرح المسامير ووظائفها في الجدول أدناه:
لقد قمنا بالفعل بتغطية OLED وأنواعه بالتفصيل في المقالة السابقة.
اسم الدبوس |
اسماء اخرى |
وصف |
Gnd |
أرض |
الدبوس الأرضي للوحدة |
Vdd |
Vcc ، 5 فولت |
دبوس الطاقة (3-5V مقبول) |
SCK |
D0 ، SCL ، CLK |
بمثابة دبوس الساعة. تستخدم لكل من I2C و SPI |
SDA |
D1 ، MOSI |
دبوس البيانات للوحدة. تستخدم لكل من IIC و SPI |
RES |
RST ، إعادة تعيين |
يعيد تعيين الوحدة (مفيد أثناء SPI) |
العاصمة |
أ 0 |
دبوس أمر البيانات. يستخدم لبروتوكول SPI |
CS |
اختيار رقاقة |
يكون مفيدًا عند استخدام أكثر من وحدة واحدة بموجب بروتوكول SPI |
مواصفات OLED:
- سائق OLED IC: SSD1306
- الدقة: 128 × 64
- زاوية بصرية:> 160 درجة
- جهد الإدخال: 3.3 فولت ~ 6 فولت
- لون البكسل: أزرق
- درجة حرارة العمل: -30 درجة مئوية ~ 70 درجة مئوية
تعرف على المزيد حول OLED وتفاعله مع ميكروكنترولر مختلفة باتباع الرابط.
مخطط الرسم البياني
مخطط الدائرة للتفاعل مع مستشعر الجاذبية التناظري بالأشعة تحت الحمراء لثاني أكسيد الكربون لاردوينو موضح أدناه:
الدائرة بسيطة للغاية حيث أننا نربط فقط مستشعر Gravity Infrared CO2 ووحدة عرض OLED مع Arduino Nano. مستشعر ثاني أكسيد الكربون بالأشعة تحت الحمراء ووحدة العرض OLED كلاهما يعملان بـ + 5V و GND. يتم توصيل دبوس الإشارة (خرج تناظري) لمستشعر ثاني أكسيد الكربون بالدبوس A0 في Arduino Nano. نظرًا لأن وحدة عرض OLED تستخدم اتصال SPI ، فقد أنشأنا اتصال SPI بين وحدة OLED و Arduino Nano. التوصيلات موضحة في الجدول أدناه:
لا |
دبوس وحدة OLED |
اردوينو دبوس |
1 |
GND |
أرض |
2 |
VCC |
5 فولت |
3 |
د 0 |
10 |
4 |
D1 |
9 |
5 |
RES |
13 |
6 |
العاصمة |
11 |
7 |
CS |
12 |
بعد توصيل الجهاز وفقًا لمخطط الدائرة ، يجب أن يبدو كما يلي:
كود اردوينو لقياس تركيز ثاني أكسيد الكربون
يتم تقديم الكود الكامل لمستشعر Gravity Analog Infrared CO2 لمشروع Arduino في نهاية المستند. نحن هنا نوضح بعض الأجزاء المهمة من الكود.
يستخدم رمز Adafruit_GFX ، و Adafruit_SSD1306 المكتبات. يمكن تنزيل هذه المكتبات من Library Manager في Arduino IDE وتثبيتها من هناك. لذلك ، افتح Arduino IDE وانتقل إلى Sketch> Include Library> Manage Libraries . ابحث الآن عن Adafruit GFX وقم بتثبيت مكتبة Adafruit GFX بواسطة Adafruit.
وبالمثل ، قم بتثبيت مكتبات Adafruit SSD1306 بواسطة Adafruit. لا يتطلب مستشعر ثاني أكسيد الكربون بالأشعة تحت الحمراء أي مكتبة لأننا نقرأ قيم الجهد مباشرة من الدبوس التناظري في Arduino.
بعد تثبيت المكتبات على Arduino IDE ، ابدأ الكود بتضمين ملفات المكتبة المطلوبة. لا يتطلب مستشعر الغبار أي مكتبة حيث أن القراءة مأخوذة مباشرة من دبوس Arduino التناظري.
#تضمن
ثم حدد عرض وارتفاع OLED. في هذا المشروع ، نستخدم شاشة OLED مقاس 128 × 64 SPI. يمكنك تغيير SCREEN_WIDTH ، و SCREEN_HEIGHT المتغيرات وفقا لشاشة العرض.
#define SCREEN_WIDTH 128 # تعريف SCREEN_HEIGHT 64
ثم حدد دبابيس اتصال SPI حيث يتم توصيل شاشة OLED.
# تعريف OLED_MOSI 9 # تعريف OLED_CLK 10 # تعريف OLED_DC 11 # تعريف OLED_CS 12 # تعريف OLED_RESET 13
بعد ذلك ، قم بإنشاء مثيل عرض Adafruit بالعرض والارتفاع المحددين مسبقًا باستخدام بروتوكول الاتصال SPI.
عرض Adafruit_SSD1306 (SCREEN_WIDTH ، SCREEN_HEIGHT ، OLED_MOSI ، OLED_CLK ، OLED_DC ، OLED_RESET ، OLED_CS) ؛
بعد ذلك ، حدد دبوس Arduino حيث يتم توصيل مستشعر CO2.
حساس int = A0 ؛
الآن داخل وظيفة setup () ، قم بتهيئة Serial Monitor بمعدل باود 9600 لأغراض التصحيح. أيضًا ، قم بتهيئة شاشة OLED باستخدام وظيفة البدء () .
Serial.begin (9600) ؛ display.begin (SSD1306_SWITCHCAPVCC) ، التناظرية المرجع (الافتراضي) ؛
داخل وظيفة الحلقة () ، اقرأ أولاً قيم الإشارة في الدبوس التناظري في Arduino عن طريق استدعاء الوظيفة analogRead () . بعد ذلك ، قم بتحويل قيم الإشارة التناظرية هذه إلى قيم الجهد.
حلقة فارغة () {int sensorValue = analogRead (sensorIn) ؛ الجهد العائم = قيمة المستشعر * (5000 / 1024.0) ؛
بعد ذلك ، قارن بين قيم الجهد. إذا كان الجهد الكهربي 0 فولت ، فهذا يعني حدوث مشكلة في المستشعر. إذا كان الجهد أكبر من 0 فولت ولكنه أقل من 400 فولت ، فهذا يعني أن المستشعر لا يزال في عملية التسخين المسبق.
إذا (الجهد == 0) {Serial.println ("خطأ") ؛ } else if (الجهد <400) {Serial.println ("التسخين المسبق") ؛ }
إذا كان الجهد يساوي أو أكبر من 400 فولت ، فقم بتحويله إلى قيم تركيز ثاني أكسيد الكربون.
وإلا {int voltage_diference = voltage-400؛ تركيز الطفو = انتشار الجهد * 50.0 / 16.0 ؛
بعد ذلك ، قم بتعيين حجم النص ولون النص باستخدام setTextSize () و setTextColor () .
display.setTextSize (1) ، display.setTextColor (WHITE) ،
ثم في السطر التالي ، حدد الموضع الذي يبدأ فيه النص باستخدام طريقة setCursor (x، y) . وقم بطباعة قيم ثاني أكسيد الكربون على شاشة OLED باستخدام وظيفة display.println () .
display.println ("CO2") ؛ display.setCursor (63،43) ؛ display.println ("(PPM)") ؛ display.setTextSize (2) ، display.setCursor (28،5) ؛ display.println (تركيز) ؛
وفي النهاية ، اتصل بطريقة العرض () لعرض النص على شاشة OLED.
display.display () ، display.clearDisplay () ،
اختبار التفاعل بين مستشعر الجاذبية بالأشعة تحت الحمراء لثاني أكسيد الكربون
بمجرد أن يصبح الجهاز والرمز جاهزًا ، فقد حان الوقت لاختبار المستشعر. لذلك ، قم بتوصيل Arduino بالكمبيوتر المحمول ، وحدد اللوحة والمنفذ ، واضغط على زر التحميل. ثم افتح جهاز العرض التسلسلي وانتظر بعض الوقت (عملية التسخين المسبق) ، ثم سترى البيانات النهائية.
سيتم عرض القيم على شاشة OLED كما هو موضح أدناه:
ملاحظة: قبل استخدام المستشعر ، اترك المستشعر يسخن لمدة 24 ساعة تقريبًا للحصول على قيم PPM الصحيحة. عندما قمت بتشغيل المستشعر لأول مرة ، كان تركيز ثاني أكسيد الكربون الناتج من 1500 جزء في المليون إلى 1700 جزء في الدقيقة وبعد 24 ساعة من عملية التسخين ، انخفض تركيز ثاني أكسيد الكربون الناتج إلى 450 جزء في المليون إلى 500 جزء في المليون وهي قيم PPM الصحيحة. لذلك من الضروري معايرة المستشعر قبل استخدامه لقياس تركيز ثاني أكسيد الكربون.
هذه هي الطريقة التي يمكن بها استخدام مستشعر ثاني أكسيد الكربون بالأشعة تحت الحمراء لقياس تركيز ثاني أكسيد الكربون الدقيق في الهواء. يتم إعطاء الكود الكامل وفيديو العمل أدناه. إذا كانت لديك أي شكوك ، فاتركها في قسم التعليقات أو استخدم منتدياتنا للحصول على المساعدة الفنية.