واي فاي تحكم مروحة العادم

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

الصورة

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

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

الميزات الجديدة


  • عرض جميع المؤشرات على WiFi من جهاز كمبيوتر / جهاز لوحي / هاتف.
  • معالجة المعلمات الإضافية - وقت تشغيل المروحة ووقت حرق المصباح في الحمام.
  • التحكم في مروحة WiFi من الكمبيوتر / الجهاز اللوحي / الهاتف.
  • إعداد وحدة التحكم عبر WiFi مع حفظ القيم في الذاكرة غير المتطايرة.
  • تسجيل قيم جميع المؤشرات بشكل دوري على خادم على الإنترنت.
  • حسنًا ، نظرًا لأنه لا يزال هناك الإنترنت ، يتم عرض الوقت بالتزامن عبر بروتوكول NTP.

كل هذه الوظائف تجعل من الممكن تحليل تشغيل وحدة التحكم ، وفي المستقبل ، تحسين معلمات خوارزمية التحكم. حسنًا ، ستدخل وحدة التحكم هذه في النظام العام للمنزل الذكي مع مراقبة المعايير البيئية للحمام.
الصورة
لم يتغير المخطط كثيرًا عن الإصدار السابق:
  • تم استبدال Atmega328 بـ ESP8266
  • استبدل مؤشر الأجزاء السبعة وحدة العرض النهائية بـ TN1637
  • يتم استبدال الترياك مع optocoupler بترحيل الحالة الصلبة (نفس الشيء ، ولكن في الحالة).

جميع الاختلافات الرئيسية في برنامج التحكم.

قائمة المكونات


  • وحدة ESP8266 ESP07 مع لوحة محول ~ 2.3 دولار
  • عرض مكون من أربعة أرقام من سبعة أجزاء على شريحة TM1637 مع اتصال I2C ~ $ 1
  • ترحيل الحالة الصلبة OMRON G3MB-202P ~ $ 1
  • مزود الطاقة 220 فولت / 3.3 فولت 600 مللي أمبير ~ 2.2 دولار
  • مستشعر درجة الحرارة والرطوبة (دقة منخفضة ، لكنها كافية لمهماتي) DHT11 ~ 0.7 دولار
  • حقيبة بلاستيك صك 110x73x34 ~ 1 دولار
  • مقاوم للضوء ومقاومات فقط ولوح توصيل وأسلاك

إجمالي حوالي 9 دولارات
تم شراؤها جميع الأجزاء باستثناء القضية ومصدر الطاقة على aliexpress.com. أطلب الحالات وإمدادات الطاقة بأسعار معقولة من taobao.com
الصورة

تجميع وحدة التحكم


وحدة التحكم هذه هي نموذج أولي للأجهزة المستقبلية على ESP8266 ، لذلك تم التثبيت على لوحة توصيل.
الصورة
أقوم بعمل مرشح ضوئي تحت المؤشر من زاوية مجلد للأوراق ، يتم شراؤها في متجر القرطاسية. نافذة شفافة لمقاوم الضوء - فيلم واقية متبقي من بعض الهاتف (أمرته مرة واحدة بهامش ، وهو الآن مستلقٍ).
الصورة
هذه هي وحدة التحكم القديمة التي عملت في الحمام لمدة عامين.
الصورة
عند تصحيح الأخطاء ، تم اكتشاف عيب تكنولوجي - تلقى الصمام الثنائي الضوئي خلف النافذة في الحالة القليل من الضوء وبدون مضخم الصوت لم يعمل عندما تم إشعال المصباح في الحمام ، كان علي أن أخرجه إلى المصباح
الصورة
الصورة

الآن سأخبرك عن ميزات البرنامج وخوارزميات التحكم وإعدادات وحدة التحكم هذه.

يحتوي ESP8266 ، على عكس Atmega328 ، الذي تم تنفيذ الإصدار السابق عليه ، على ذاكرة أكبر بكثير (ذاكرة الوصول العشوائي ، ROM. EEPROM) ، والتي ، إلى جانب شبكة WiFi مدمجة ، تنفذ وظائف خادم WEB المدمج دون حفظ الذاكرة لسلاسل النص.

ولكن مع GPIO ، فإن ESP8266 سيئ جدًا ، وبالتالي ، فإن مثل هذا الترف مثل إدارة مؤشر من سبعة أجزاء لا يمكن الوصول إليه مباشرة. لذلك ، تم تحديد المؤشر الموجود على شريحة TM1637 ، الأمر الذي يتطلب ناتجين فقط للتوصيل.

بيئة التطوير


لقد لعبت بما يكفي مع العديد من البرامج الثابتة ESP8266 التي تسمح لي بكتابة البرامج على المترجمين المدمجين LUA و JC والبرنامج بشكل عام من خلال WEB. حاولت الكتابة على SDK واحد. استقر على خيار تسوية - البرمجة في Arduino IDE.
تركيب بسيط إلى حد ما ، برمجة وعدد كبير من المكتبات الجاهزة ، والتي تعمل في الغالب على ESP. سمحت هذه البيئة باستخدام الكثير من التعليمات البرمجية القديمة التي توفر المنطق الأساسي لتشغيل وحدة تحكم التحكم في المروحة ، المحفوظة من الإصدار السابق.

بشكل أساسي ، كان من المثير للاهتمام نقل الخوارزمية المثبتة جيدًا التي تنفذ آلة الحالة القطعية المحدودة الموضحة في جدول انتقال الحالة:
الصورة
ظهرت مكتبات Arduino دون مشاكلDHT للاستخدام مع أجهزة استشعار الرطوبة / درجة الحرارة من Adafruit و للعمل مع مؤشرا على DigitalTube TM1637 .

يتم وصف تفاصيل استخدام Arduino IDE لبرمجة ESP8266 جيدًا في هذه المقالة.

تطبيق الميزات الجديدة


من غير الملائم للغاية إنشاء وحدات تحكم WiFi يتم فيها خياطة معلمات اتصال الشبكة. تخيل ما سيؤدي إليه تغيير اسم نقطة الوصول أو كلمة المرور إذا كان هناك عشرات من وحدات التحكم هذه في المنزل؟

لذلك ، يقوم هذا البرنامج بتنفيذ وظائف تخزين معلمات الاتصال في ذاكرة EEPROM غير المتطايرة وتعيينها عبر الشبكة. يتم تنفيذ هيكل حفظ المعلمات ، وكذلك قراءتها وكتابتها ، في ملفات WC_EEPROM.h و WC_EEPROM.cpp لمشروعي. يتم التحقق من القراءة والكتابة عن طريق حساب المجموع الاختباري للتكوين ومقارنته مع المكتوب في EEPROM.

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

يتم عرض أوضاع التشغيل وتكوين جهاز التحكم بالإضافة إلى التحكم المباشر في المروحة باستخدام خادم WEB المدمج (ملفات WC_HTTP.h و WC_TTP.cpp)

وتكون خوارزمية تكوين نقطة الوصول على النحو التالي:

إذا تعذر على خزانة ESP الاتصال بنقطة الوصول المحددة في تكوين EEPROM ، ثم يرفع نقطة الوصول الخاصة به وعلى العنوان 192.168.4.1 ، يسمح لك بالتكوين.
حسنًا ، إذا كان متصلاً ، فإنه يعمل كالمعتاد.
تعرض الصفحة الرئيسية لخادم WEB المعلمات الأساسية لوحدة التحكم وتسمح لك بتشغيل / إيقاف تشغيل وحدة التحكم يدويًا (تناظريًا بالضغط على زر التحكم اليدوي)
الصورة
هنا يمكنك أيضًا الانتقال إلى
الصورة
صفحة إعدادات الشبكة وصفحة الإعدادات لخوارزمية تشغيل وحدة التحكم
الصورة
من هاتين الصفحتين ، يمكنك إعادة تشغيل وحدة التحكم وإعادة تعيين جميع الإعدادات "الافتراضية".

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

وظيفة أخرى يتم تنفيذها في هذا البرنامج هي ساعة الوقت الحقيقي تتم مزامنتها عبر بروتوكول NTP على الإنترنت. (ملفات WC_NTP.h و WC_NTP.cpp)

لن أصف الخوارزمية الرئيسية ، لقد عمل منطق العمل بشكل جيد وبقي كما هو ، يمكنك القراءة عنه في المقالة السابقة. لقد أثرت التغييرات الرئيسية على الشاشة. أريد أن ألفت الانتباه إلى "ميزة" واحدة - وظيفة DisplayecialChar () ، التي تسمح لك بعرض أي حرف يمكنك التفكير فيه لعرضه على مؤشر من سبعة أجزاء باستخدام قناع بت. توصلت إلى رمز "النسبة المئوية" في شاشة الرطوبة
الصورة
ورمز "الدرجة" في شاشة درجة الحرارة ،
الصورة
وتتوافق البتات في قناع البت مع مقاطع المؤشر.

حسنًا ، آخر الميزات الجديدة هو حفظ المعلمات إلى خادم على الإنترنت للعرض والتحليل اللاحق. يتم حفظ قيم الرطوبة ودرجة الحرارة ومنفذ تناظري مزود بمقاوم ضوئي لضبط عتبة الإضاءة ووقت المروحة ووقت حرق الضوء ووقت UPTIME لوحدة التحكم من آخر إعادة تشغيل.

التسجيل إلى الخادم يحدث في وضعين. يتم تسجيل المعلمات بتردد أكبر ، عندما "يحدث شيء" في الحمام ، في هذا الوقت إما أن يكون الضوء قيد التشغيل أو تعمل المروحة. يتم تكوين جميع المهلات عبر واجهة WEB.

يتم تخزين البيانات على الخادم الخاص بي على الإنترنت. يمكن تكوين عنوان الخادم ، ولكن تنسيق التسجيل لا يزال مخيطًا في البرنامج. مرة أخرى ، حتى أفضل الأوقات مفهوم ustanivaniya))). الآن يتم حفظ المعلمات بأبسط سكربت PHP إلى جدول بهيكل بسيط.
الصورة
من السهل جدًا إعادة ضبط إعدادات الحفظ على "المراقبة العامة" نفسها. أنا شخصياً لا يناسبني هذا الخادم بالقيود المفروضة على وتيرة تخزين البيانات وعمق الأرشيف.

تحسين إعدادات وحدة التحكم


بعد "العملية التجريبية" ، يمكنك تحديد ما إذا كانت عتبات الإضاءة والرطوبة مضبوطة بشكل صحيح ، بالإضافة إلى مهلات الأحداث المختلفة. في التنفيذ السابق ، قمت بتعيين وقت الاستجابة إلى 20 دقيقة ، والجلوس في الحمام مع ساعة توقيت. بعد ملاحظة الرسم البياني للمعلمات خلال عدة حمامات ، رأيت ما يلي:
الصورة
  • الرطوبة في الشتاء تتغير بنسبة 35-40٪
  • زمن تطبيع الرطوبة مع التهوية الطبيعية 20-25 دقيقة
  • وقت تطبيع الرطوبة مع مروحة تعمل 10-12 دقيقة
  • تضاعف المروحة كفاءة التهوية

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

الآن ، بعد التحليل ، يمكنك زيادة فترة كتابة المعلمات إلى الخادم.

الاستنتاجات



  • وحدة التحكم في ESP8266 مستقرة ، تؤدي وظائفها.
  • لقد توسعت وظائفه ، والآن أصبح من السهل إدارته وهو يتكامل بشكل طبيعي في نظام المنزل الذكي
  • يجب تحسين بعض الأشياء ، على سبيل المثال ، واجهة WEB ، وتفويض الوصول ، وجزء الخادم وبعض عدم الدقة في حساب المروحة وساعات التشغيل الخفيفة. قد يتم الكشف عن رغبات التحسين الأخرى.
  • يمكن اعتبار المشروع التجريبي لـ Smart Home on WiFi ناجحًا ؛)

يمكن تنزيل الرسم هنا. سأكون ممتنا للغاية إذا أبلغت عن أي أخطاء.

رسم تخطيطي لوحدة تحكم المروحة على WiFi

الوقت المستغرق في المشروع هو يومان خارج

PS I أجيب على الفور على السؤال ، لماذا هو صعب جدًا؟ هل يمكنني الجلوس بالتوازي مع المفتاح أو على المؤقت؟
- نعم تستطيع. لكن إدراج المؤقت والضوء لم يناسبني. بالإضافة إلى أنها هواية تنفيذ بعض الأفكار التي يتم استخدامها في مشاريع أخرى.

كان مرفق التخزين عربات التي تجرها الدواب مرة أخرى ، لذلك كانت الصور من مدونتي . هناك يمكنك أن ترى تطوراتي في المنزل الذكي

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


All Articles