طريقة أخرى لتحديد جودة الهواء في Arduino هي من خلال نقل البيانات إلى الشبكة.

اسمي يوجين وأنا مطور ويب. هناك بالفعل العشرات من المنشورات حول محطات الطقس المختلفة على اردوينو ، لكني أردت أن أكتب أنه في عام 2016 يمكنك تجميع ، بسرعة وسهولة ودون معرفة الهندسة الكهربائية ، مستشعرًا مفيدًا يدعي أنه IoT ، والذي يمكن أن يعمل بسهولة مع بنيتك التحتية المكتوبة على أي شيء.

إذا كنت تتساءل عن سبب قياس ثاني أكسيد الكربون على الإطلاق ، فيمكنك العثور على روابط مفيدة في نهاية المنشور.

لذا ، فإن هدفنا هو جعل جهاز استشعار درجة الحرارة والرطوبة وثاني أكسيد الكربون مع البيانات المعروضة على الشاشة وإرسالها إلى خادم الويب. ما نحتاجه لهذا:

مكونات


1. اردوينو. أخذت Wemos D1 ، لوحة متوافقة مع Arduino تعتمد على متحكم ESP-8266EX. Wemos متوافق مع Arduino IDE ، ولديه واي فاي خاص به ، ويكلف 6.3 دولار.

كيف تبدو


2. جهاز استشعار CO2. في وقت سابق جربت MQ-135 المعتاد ، ولكن حتى بعد الحرق والمعايرة ومع مراعاة تصحيحات درجة الحرارة والرطوبة ، كانت الأخطاء ملحوظة تمامًا - حوالي 300 جزء في المليون. لذلك لضمان قياسات دقيقة ، أخذت MH-Z19 - أغلى مكون للدائرة ، 27 دولارًا.

كيف تبدو


3. جهاز استشعار درجة الحرارة والرطوبة. يستخدم المعيار ويحبه جميع DHT11 مقابل 1.44 دولار. تشير التعليقات إلى أنه من الأفضل تناول DHT22 ، ولكن بالنسبة للمخطط والتكلفة ، هذا ليس مهمًا:

كيف تبدو


4. عرض متوافق I2C. أخذت أرخص hd44780 مقابل 3.06 دولار.

كيف تبدو


5. لجعلها لا تبدو رهيبة للغاية ، وتكون متحركًا ، من الجيد أيضًا أن يكون لديك جسم. من أجل عدم الإزعاج من القطع ، أخذت علبة 8 دولارات مع فتحات وحوامل لـ USB وشاشة عرض. انتباه - يجب أن تكون هناك ثقوب في حالة التهوية ، وإلا فإنه سيقيس جوها الخاص فقط.

كيف تبدو


6. تصحيح الكبل USB وحوالي 10 الأسلاك. لن أفكر في السعر.

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

أمرت ، انتظرت شهرًا - انتقل إلى التجمع! لا يوجد شيء أسهل.

التجمع


1. قم بتوصيل مستشعر درجة الحرارة والرطوبة. الأرض إلى الأرض ، الغبار إلى الغبار ، بالإضافة إلى خمسة فولت لكل اردوينو ، الإخراج الرقمي إلى الإخراج الرقمي (استخدمت D5).

2. قم بتوصيل مستشعر CO2. لديها مجموعة واسعة من الواجهات - PWM ، الإخراج التناظري والرقمي. العنصر الوحيد في اللحام هو إرفاق الأرجل بالمخرجات المطلوبة. فحص شخصي - يعمل الجميع. توقفت عند تلقي البيانات الرقمية - بدقة وجمال ودقة ، وهناك أيضًا فرصة لإرسال أوامر للمعايرة ، لم أكن بحاجة إليها. مرة أخرى - من الأرض إلى الأرض ، بالإضافة إلى الفولتات الخمسة الأخرى ، دبابيس TX و RX إلى دبابيس رقمية - في حالتي ، إلى D6 و D7.

3. قم بتوصيل الشاشة. ومرة أخرى - الأرض إلى الأرض ، بالإضافة إلى آخر إخراج متبقي من خمسة فولت ، SDA على الشاشة إلى SDA على اردوينو ، SCL وكذلك SCL.

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

البرامج الثابتة


حسنًا ، علينا فقط كتابة برنامج. تحتوي الروابط أدناه على مستودع جيثوب يمكنك ببساطة تحميله واستخدامه. النقطة الدقيقة الوحيدة هي أن شاشتك قد يكون لها عنوان مختلف. استخدم البرنامج المصغر من الروابط لفحص عناوين i2c وقم بالتغيير إلى العنوان الذي تحتاجه إذا لم يعمل على الفور. افصل الأجهزة الأخرى قبل المسح ، وإلا يمكنك الحصول على الكثير من القمامة.

نعم ، Wemos D1 متوافق مع Arduino ، وتحتاج فقط إلى إضافة اللوحة المناسبة إلى Arduino IDE. قم بتوصيل الكبل القصير القياسي عبر micro USB واملأ البرنامج الثابت. إذا قمت بكل شيء بشكل صحيح ، فسيحاول الجهاز أولاً الاتصال بشبكة Wi-Fi (يتم أخذ الشبكة وكلمة المرور من ملف الإعدادات) ، ثم ينتظر لبعض الوقت "لتسخين" أجهزة الاستشعار ، وأخيرًا يعرض البيانات على الشاشة. إذا فشلت الشبكة في إرسال البيانات ، فستقوم بالإبلاغ عنها. إذا كان مستوى ثاني أكسيد الكربون مقبولًا ، فسيتم بعد ذلك إيقاف تشغيل الإضاءة الخلفية وتشغيله فقط إذا كنت بحاجة إلى فتح النافذة.

النتيجة


يبدو لي هذا (بعناية ، حركة المرور):

مجمعة غير

مجمعة ، مع إيقاف تشغيل الإضاءة الخلفية

حان الوقت للتهوية!

ولكن ماذا عن الشبكة؟


الآن عن العمل مع الشبكة. بدون مزيد من اللغط ، أقوم بجمع البيانات في JSON وإرسالها إلى الخادم مع طلب POST المعتاد ، حيث يضعها نص PHP بسيط في قاعدة بيانات MySQL. ثم يمكنك أن ترى كيف تغيرت ظروفك المعيشية على مدار اليوم باستخدام PHP و Google Charts - جزء الخادم بالكامل موجود أيضًا في الروابط.

ونتيجة لذلك ، وبسعر مثير للسخرية ، وبدون معرفة مطلقة بالهندسة الكهربائية وبأقل استثمار للوقت ، يمكننا الحصول على مثل هذه الرسومات الرائعة :
الحذر ، المرور

لا أستطيع أن أقول أن هذا يمزق الغلاف مباشرة من الحقيقة البسيطة التي تقول "عدد أقل من الناس - المزيد من الأكسجين" ، وأنك تحتاج إلى تهوية دورية ، وتحدثوا عنها عدة مرات - بما في ذلك ضرر النوافذ البلاستيكية. لكن هذا المثال يوضح مدى بساطة وسرعة وموثوقية وجمال من الممكن عمل أي مستشعر تقريبًا يوفر البيانات لبعض الأنظمة الأكثر تعقيدًا.

نعم ، قارنت القراءات بمستشعر Green Green الصيني هذا - القراءات متطابقة تقريبًا ، فقط استجابتي أسرع قليلاً للظروف المتغيرة:

كيف تبدو
— , :


الاستنتاجات


بالطبع ، يمكن عمل الكثير بشكل أفضل. مرتجلا ، أرى العيوب التالية:

  1. شاشة العرض لديها تباين منخفض للغاية. من الأفضل أن تأخذ آخر ، كسر 10 سنتات أخرى.
  2. . , , . , .
  3. , , , .
  4. . , . , .
  5. , ( ) — 5 .
  6. , , , , (, Wemos ), , — .
  7. Wemos D1 , ( 2-3 ) , . , . - , , , ( RESET).
  8. , 2 , . — , , . , .
  9. , — . , - .
  10. , JSON . JSON , GET/POST, . Wemos — , . .
  11. — . — .
  12. . , — — .



ثم أريد أن أخذ استراحة من أيام العمل وألعب بطاقة ليزر مع الأصدقاء. مشكلة واحدة - اللعبة تكلف 500 روبل في الساعة للشخص الواحد. هذا في حالة الغياب التام للمواد الاستهلاكية. وشراء عدة للعبة سيكلف نوعًا من الأموال عالية - من حوالي 8000. لذا من أجل لعب بطاقة الليزر ، يجب عليك أولاً جمعها. أخطط للقيام بشيء مثل Skirmos - حيث سيكلف نوع من المال البرميل نفسه فقط ، والذي يجب أن يكون صلبًا جدًا. مثيرة للاهتمام؟ اتبع المنشورات! ماذا تفعل في اردوينو؟

المراجع


الرئيسية


  1. كود اردوينو
  2. جانب الخادم
  3. يمكنك رؤية الهواء في مكتبي هنا
  4. يمكنك استئجار لي (نعم ، أنا أبحث عنها) هنا


مفيد


  1. إذا كنت لا تعرف أي شيء عن CO2 - geektimes.ru/company/tion/blog/269134
  2. معلومات عن wemos d1
  3. MH-Z19
  4. , , , , PWM Arduino nano
  5. i2c
  6. Tion ( )
  7. ESP8266
  8. ESP, Lua CO2
  9. . , . .


  1. JSON
  2. DHT

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


All Articles