سحابة منزلية لاسلكية لأشياء الإنترنت

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

وبعبارة أخرى ، يجب عليك دعم مكتبات ضخمة من المواصفات والرموز. وهناك حاجة إلى مزيد من الوقت للتعامل مع جميع أجهزتهم. من المؤكد أن البعض أكثر تنظيما مني ، ولكن ، على الأرجح ، حققت الأغلبية في المعركة ضد الإنتروبيا نجاحا ضئيلا. لا جريمة.

ماذا تفعل للحد من غزو الروبوتات في منزلك (وهذا أمر لا مفر منه على أي حال)؟ .. إنها بسيطة. الأمور أسهل. السحابة أذكى.

المفهوم

  1. الأجهزة بسيطة بقدر الإمكان: وحدة قياسية للتواصل مع سحابة خاصة. وهو يتألف من وحدة لاسلكية ونصوص التهيئة (في كل من الوحدة النمطية وعلى الخادم). إذا فشلت الوحدة ، تخلص منها واستبدلها بوحدة قياسية قياسية جديدة.
  2. يقع كل المنطق والذكاء على الخادم. موجه لينكس بسيط.


الأمور أسهل. سحابة أذكى

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

يوجد نوعان من الأجهزة على شبكتي:

  • أجهزة الاستشعار والضوابط (المدخلات) و
  • المرحلات والصمامات ، إلخ. (نهاية الأسبوع)

جميعهم يتواصلون مع الخادم عبر وحدات wifi (ESP8266 من متجر صيني معروف). ترسل المدخلات معلومات الحالة إلى خادم قاعدة البيانات. تلقي المخرجات وتنفيذ الأوامر من الخادم. كما ذكرت بالفعل ، لا يوجد سبب للأجهزة.

الهدف هو جعل الأمور بسيطة قدر الإمكان.

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

نواة سحابة ذكية


الصورة

الصورة

استخدمت جهاز توجيه لاسلكي صغير مزود بـ OpenWRT وذاكرة موسعة يمكن أن تحتوي على خادم ويب وخادم قاعدة بيانات - لا يزيد Gl-iNet 6416A عن 25 دولارًا أمريكيًا.

جهاز صغير مثير للدهشة يعطينا:

  1. خادم ويب Lighttpd لاستضافة صفحات الواجهة (مثبتة مسبقًا)
  2. php بحيث تكون تفاعلية (مثبتة مسبقًا)
  3. خادم قاعدة بيانات MySQL لتخزين البيانات (مثبت). شخص ما يستخدم SQlite ، لكنه غير قادر على التعامل مع الطلبات المتزامنة إلى صندوق الإطفاء.

هذه سحابي الخاص يقوم بإنشاء شبكة الشبكة الفرعية الخاصة به (192.168.8.1) ، وشبكة wifi الخاصة به ، والتي لا يمكن الوصول إليها إلا لأشيائي. كما أن لديها واجهة خارجية (WAN) متصلة بجهاز التوجيه المنزلي العادي (بالعنوان المعين 192.168.1.100). هناك حاجة للوصول إلى لوحة التحكم من شبكة wifi المنزلية.

البرامج التطبيقية المستخدمة في المشروع:

  • WinSCP - عميل FTP البياني للوصول إلى الملف
  • HeidiSQL - عميل SQL الرسومية للوصول إلى قاعدة البيانات
  • PuTTy - عميل SSH لإرسال الأوامر إلى نظام التشغيل OpenWRT

يتم تخزين التكوين الحالي على GitHub .

ونعم ، لإلقاء اللوم ، استخدمت محرك أقراص USB محمول كمخزن للملفات ، على الرغم من أنه لا ينبغي لي استخدام ذاكرة NAND كشخص بالغ (متطلبات mySQL).

الوحدة القياسية


الصورة

تم تجهيز وحدة wifi (ESP8266) برسم قياسي. باختصار ، يقرأ معلمات آخر وصول إلى نقطة الوصول ، ويحاول الاتصال بها ، إذا فشل ، يقوم بتشغيل نقطة الوصول الخاصة به وصفحة مع نموذج لمعلمات الوصول الجديدة. وإذا تمكن من الاتصال ، فإنه يقوم بتنزيل البرامج النصية المعدة لهذه الوحدة من الخادم وتشغيلها. تختلف الوحدات حسب عنوان MAC.

يوجد في سحابي لكل عنوان MAC مجلد مخصص يحتوي على نصوص برمجية عاملة على العنوان 192.168.8.1:86

لذا ، في البداية تحتوي الوحدة على ثلاثة نصوص فقط:

AP_config - سطرين: SSID وكلمة المرور.

init.lua - التوصيل بنقطة الوصول باستخدام معلمات محفوظة من AP_config. إذا لم تنجح ، قم بتشغيل ("ap_request.lua"). في حالة النجاح ، قم بتنزيل البرامج النصية العاملة وتشغيلها.

ap_request.lua - طلب معلمات جديدة للوصول إلى نقطة الوصول ، وكتابتها في ملف AP_config (في حالة فشل الاتصال مع تلك المثبتة مسبقًا).

مخطوطات الوحدة

الأجهزة المدارة


الصورة

الصورة

الصورة

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

  • التيار الكهربائي AC-DC
  • 3.3V استقرار امدادات الطاقة
  • ESP8266 (في هذه الحالة ، ESP-01 بدبابيس محكومة)
  • وحدات التتابع
  • الجسم

كل شيء عن كل شيء - 7 دولار أمريكي.

أجهزة الاستشعار (المدخلات)


الصورة

الصورة

يتكون الجهاز المزود بجهاز استشعار من:

  • مصدر الطاقة
  • مكيف الطاقة
  • وحدة Wifi (مرة أخرى ESP01)
  • DHT11 استشعار درجة الحرارة والرطوبة الرقمية

جميعها لا تزيد عن 5 دولارات أمريكية.

يقيس قراءات درجة الحرارة والرطوبة ويرسلها إلى الخادم كل 3 دقائق ، حيث يتم تخزينها في قاعدة بيانات mySQL.

الإدارة


الصورة

الصورة

الصورة

الصورة

الصورة



كل المرح على الخادم!


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

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

لقد استخدمت خرائط الارتباط مع الصور المضمنة في برنامج بسيط SweetHome 3D لتنظيم التنقل في المنزل.

قم بتشغيل خيالك


يعرف العديد من الأشخاص كيفية البرمجة على الويب (PHP ، Javascript ، HTML) أكثر من وحدات التحكم (C ++ ، Lua). باستخدام هذه البنية ، يمكننا استلام البيانات والأوامر وطلبها وإرسالها باستخدام نصوص php أو js بسيطة. يمكننا بناء نظام تعليمي يمكنه التكيف مع عاداتنا وإعلامنا عن الحوادث.

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


All Articles