جدول المحتويات:

مؤقت ذكي ESP8266-01 IoT لأتمتة المنزل: 9 خطوات (بالصور)
مؤقت ذكي ESP8266-01 IoT لأتمتة المنزل: 9 خطوات (بالصور)

فيديو: مؤقت ذكي ESP8266-01 IoT لأتمتة المنزل: 9 خطوات (بالصور)

فيديو: مؤقت ذكي ESP8266-01 IoT لأتمتة المنزل: 9 خطوات (بالصور)
فيديو: Turn on and Turn off your home load using ESP 8266 WIFI module |Home Automation | 2024, يونيو
Anonim
مؤقت ذكي ESP8266-01 IoT لأتمتة المنزل
مؤقت ذكي ESP8266-01 IoT لأتمتة المنزل
مؤقت ذكي ESP8266-01 IoT لأتمتة المنزل
مؤقت ذكي ESP8266-01 IoT لأتمتة المنزل
مؤقت ذكي ESP8266-01 IoT لأتمتة المنزل
مؤقت ذكي ESP8266-01 IoT لأتمتة المنزل

التحديثات

2018-09-30: تم تحديث البرنامج الثابت إلى الإصدار 1.09. الآن مع دعم Sonoff الأساسي

2018-10-01: الإصدار التجريبي 1.10 من البرنامج الثابت متاح للاختبار على ESP8266-01 مع وجود مشكلات

نظرًا لأن الكلمات الطنانة الجديدة هي Internet Of Things (IoT) و Home Automation ، فقد قررت إلقاء نظرة على العناصر الحالية في منزلي وحوله والتي يتم التحكم فيها عبر نوع من الأجهزة. العناصر التي تميزت هي التالية:

  • مضخة حمام السباحة
  • حشو مياه حمامات السباحة
  • حمام السباحة والأضواء المحيطة
  • تلفزيون / نظام الترفيه أضواء مجلس الوزراء

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

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

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

نظرًا للأسباب المذكورة أعلاه ، قررت اختبار إمكانية استبدال أجهزة ضبط الوقت بـ IoT Smart Timer ، المتصل بشبكتي المنزلية المحلية.

كانت الفكرة هي تصميم مؤقت مستقل يمكنه:

  • ضبط الوقت الحالي تلقائيًا باستخدام الإنترنت (IoT)
  • تعمل بدون أي إجراءات من قبل المستخدم (ذكي)
  • قم بتشغيل / إيقاف تشغيل الإخراج وفقًا للأوقات المحددة (Timer)
  • قابلة للبرمجة والتحكم عبر الشبكة (أتمتة المنزل)

الخطوة 1: تصميم ESP8266-01

تصميم ESP8266-01
تصميم ESP8266-01
تصميم ESP8266-01
تصميم ESP8266-01

تم التصميم باستخدام وحدة ESP8266-01 WiFi ، لأن هذا ما كان متاحًا لدي. في أبسط أشكاله ، يحتوي ESP8266-01 على أربعة منافذ إدخال / إخراج:

  • GPIO0
  • GPIO2
  • TX
  • RX

ESP8266-01 أوضاع الطاقة

تُستخدم الحالة المنطقية لدبابيس الإدخال / الإخراج لتحديد الوضع الذي سيتم فيه تشغيل ESP8266-01. كانت الخطوة الأولى هي تحديد أي من دبابيس الإدخال / الإخراج يمكن استخدامه لقيادة مرحل الإخراج.

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

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

يبدء تشغيل الأجهزة

لضمان وضع التمهيد الصحيح لـ ESP8266-01 أثناء زيادة الطاقة ، يتم سحب المسامير التالية عالياً باستخدام مقاومات 10K:

  • GPIO0
  • GPIO2
  • RST
  • CH_PD

هذا يضمن تشغيل الوحدة بشكل صحيح في كل مرة.

تتابع الإخراج

RX هو الدبوس الوحيد المناسب لاستخدامه كمخرج. وبالتالي ، يتم استخدام هذا الدبوس لدفع مرحل الإخراج عبر ترانزستور NPN. تمت إضافة صمام ثنائي دولاب الموازنة القياسي ومقاومات قاعدة الترانزستور.

زر MODE / SET

الزر متصل بـ GPIO2 ، ومع تحرير الزر ، فإن المقاوم 10K سوف يسحب GPIO2 للأعلى. أثناء الضغط على الزر ، يتم سحب GPIO2 إلى 0 فولت.

يستخدم هذا الزر لوظيفتين:

  • الإعداد الأولي لتوصيل الوحدة بشبكة WiFi محلية
  • للتحكم يدويًا في الإخراج أثناء العمليات العادية

مؤشر LED

مؤشر LED متصل بـ GPIO0 ويشير إلى ما يلي:

  • عند بدء التشغيل الأولي ، يومض بسرعة للإشارة إلى وضع إعداد WiFi
  • يومض ببطء عندما لا يتم ضبط وقت الوحدة
  • يشير إلى حالة تشغيل / إيقاف ترحيل الإخراج

الخطوة 2: مزود الطاقة

إمدادات الطاقة
إمدادات الطاقة
إمدادات الطاقة
إمدادات الطاقة
إمدادات الطاقة
إمدادات الطاقة

سأستخدم IoT Smart Timer على مستويات جهد مختلفة ، لذلك هناك خياران متاحان لإمداد الطاقة:

12-24 فولت تيار مستمر

محول DC-DC المستخدم مناسب للإمدادات حتى 28 فولت تيار مستمر. يمكن ضبط خرج المحول على 5V. يجب القيام بذلك قبل توصيل وحدة ESP8266.

تمت إضافة الصمام الثنائي للحماية من القطبية العكسية على إدخال العرض.

220 فولت تيار متردد بالنسبة لهذا الخيار ، تمكنت من الحصول على مصدر طاقة صغير لوضع التبديل 220 فولت / 5 فولت على موقع eBay.

بغض النظر عن جهد الدخل ، يحتاج IoT Smart Timer إلى مزودين للطاقة:

5V السكك الحديدية

مع كلا الخيارين ، يتم الحصول على 5V DC من مصدر طاقة بنمط التبديل ، وليس من منظم خطي. هذا يعني أن هناك حدًا أدنى من الحرارة المتولدة عن مصدر الطاقة. يستخدم 5V لقيادة تتابع الإخراج

3.3 فولت السكك الحديدية

تم الحصول على 3.3 فولت لـ ESP8266-01 من منظم ASM1117 3.3. ASM1117 3.3 عبارة عن منظم خطي ، ويمكنه التعامل مع ما يصل إلى 500 مللي أمبير. ومع ذلك ، سيتم تحديد الحرارة المتولدة بواسطة جهد الدخل لـ ASM1117. لتقليل الحرارة ، يتم تشغيل ASM1117 من سكة 5 فولت.

تصفية الضوضاء

لتقليل تموج الجهد إلى ESP8266-01 ، تم تجهيز سكة 3.3 فولت بمكثف 100-1000 فائق التوهج. كل من القضبان 5V و 3.3V محمية أيضًا من التداخل عالي التردد بواسطة مكثفات 0.1 فائق التوهج.

الخطوة 3: تجميع لوحة الكمبيوتر الشخصي

تجميع لوحة الكمبيوتر الشخصي
تجميع لوحة الكمبيوتر الشخصي
تجميع لوحة الكمبيوتر الشخصي
تجميع لوحة الكمبيوتر الشخصي
تجميع لوحة الكمبيوتر الشخصي
تجميع لوحة الكمبيوتر الشخصي

تم تصميم لوحة الكمبيوتر الشخصي باستخدام الإصدار المجاني من Eagle. إنها لوحة من جانب واحد ، يمكن صنعها بسهولة في المنزل باستخدام طريقة نقل الحبر.

بمجرد إنشاء لوحة الكمبيوتر الشخصي ، قم بتجميع لوحة الكمبيوتر الشخصي بالترتيب التالي:

  • قم بلحام منظم ASM1117 وثلاثة مكونات SMD 0.1 فائق التوهج إلى جانب اللحام باللوحة
  • أضف وصلة مرور واحدة إلى جانب مكون اللوحة
  • جندى المقاومات والثنائيات في مكانها
  • أضف الرؤوس للوحدة النمطية ESP8266-01
  • أضف دبابيس الرأس لمصباح LED والزر
  • أضف المحطات اللولبية
  • باستخدام دبابيس الرأس ، قم بتوصيل محول DC / DC باللوحة.
  • جندى التتابع في مكانه
  • أكمل اللوحة عن طريق لحام الترانزستور ومكثف 100 فائق التوهج.

بمجرد أن يتم لحام جميع المكونات باللوحة ، تحقق من جميع نقاط اللحام ، وتأكد من عدم وجود دوائر قصيرة بين الفوط.

! ! ! ملاحظة مهمة ! ! ! للتأكد من أن لوحة الكمبيوتر الشخصي يمكنها التعامل مع التيارات الكبيرة على جهات اتصال الإخراج ، قم بتطبيق كمية مناسبة من اللحام على المسارات بين جهات اتصال الترحيل وأطراف التوصيل اللولبية

الخطوة 4: اختبار لوحة الكمبيوتر الشخصي

اختبار لوحة الكمبيوتر الشخصي
اختبار لوحة الكمبيوتر الشخصي

! ! ! قبل تطبيق السلطة! ! !

قم بإزالة وحدة ESP8266-01 من الوحدة. هذا لمنع ارتفاع درجة حرارة منظم ASM1117 قبل تعديل إمداد 5 فولت.

لا يوجد الكثير من الاختبارات التي يمكن إجراؤها بعد التجميع. أهم خطوة هي التأكد من مستويات الجهد الصحيحة.

  • قم بتطبيق 12-24V DC على الوحدة.
  • قم بقياس جهد الخرج لمحول DC / DC
  • اضبط خرج المحول إلى ما بين 5.0 و 5.5 فولت.
  • بعد ذلك ، قم بقياس العرض 3.3 فولت.
  • إذا كانت الإمدادات على ما يرام ، فقم بإزالة الطاقة من الوحدة

يمكنك الآن إدخال الوحدة النمطية ESP8266-01 في الرؤوس المتوفرة.

! ! ! ملحوظة !

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

الخطوة 5: الضميمة

الضميمة
الضميمة
الضميمة
الضميمة
الضميمة
الضميمة

العلبة ليست بهذه الأهمية ، طالما أن لوحة الكمبيوتر الشخصي وجميع الأسلاك تناسبها بدقة وأمان.

لتسهيل البناء ، صنعت كبلًا مع توصيل زر LED و MODE / SETUP به. لقد منحني هذا مزيدًا من المرونة في تركيب مصباح LED والزر على العلبة. ثم يتم توصيل هذا الكبل بالرأس الموجود على لوحة الكمبيوتر الشخصي.

تُظهر الصور إحدى وحدات 12 فولت المستخدمة لمصابيح LED.

الخطوة 6: برمجة ESP8266-01 / NodeMCU

برمجة ESP8266-01 / NodeMCU
برمجة ESP8266-01 / NodeMCU
برمجة ESP8266-01 / NodeMCU
برمجة ESP8266-01 / NodeMCU
برمجة ESP8266-01 / NodeMCU
برمجة ESP8266-01 / NodeMCU

لبرمجة ESP8266-01 ، تحتاج إلى إعداد Arduino IDE أولاً. لن أخوض في هذه التفاصيل ، حيث يوجد الكثير من Instructables الرائعة المتاحة حول هذا الموضوع. لقد اخترت الروابط التالية في Instructables للرجوع إليها ، دون أي ترتيب محدد للمؤلفين. شكرا ل Instructables الفردية الخاصة بهم.

اتبع هذا ESP8266 و Arduino IDE لإعداد Arduino IDE لوحدة ESP8266.

بعد ذلك ، ستحتاج إلى مبرمج لبرمجة ESP8266. إليك رابطان:

باستخدام Arduino Uno

لوحة برمجة DIY

مكتبات

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

تثبيت واستخدام مكتبات Arduino

لا أستطيع أن أتذكر المكتبات التي اضطررت إلى تثبيتها ، لكنني أعرف أنه يجب تنزيل WiFiManager بشكل منفصل.. لقد قمت بتضمينها في ملف Libraries.zip.

الخطوة 7: الإعداد لأول مرة

الإعداد لأول مرة
الإعداد لأول مرة
الإعداد لأول مرة
الإعداد لأول مرة
الإعداد لأول مرة
الإعداد لأول مرة

عند استخدامه لأول مرة ، يجب توصيل IoT Smart Timer بشبكة WiFi. تتم هذه المهمة باستخدام مكتبة WiFiManager ، لذلك لا يلزم كتابة SSID أو كلمات مرور في الكود.

اتبع هذه الخطوات القليلة:

  • قم بتشغيل الوحدة
  • سيبدأ مؤشر LED في الوميض بسرعة
  • اضغط على زر MODE / SETUP
  • عندما ينطفئ مؤشر LED ، حرر الزر
  • انتظر بضع ثوانٍ ، ثم افتح هاتفك الذكي أو اتصالات WiFi الخاصة بجهازك
  • ستكون كلمة شبكة WiFi جديدة تسمى IoT Timer مرئية
  • حدد نقطة الوصول هذه
  • قم بتسجيل الدخول إلى IoT Timer (لا يلزم إدخال كلمة مرور)
  • انتظر حتى يتصل جهازك بشبكة IoT Timer
  • افتح أي متصفح إنترنت
  • في شريط العنوان ، اكتب عنوان IP التالي - 192.168.4.1
  • سيتم فتح وحدة تحكم WiFiManager
  • حدد تكوين WiFi
  • سيتم عرض قائمة بنقاط شبكات WiFi المتاحة
  • حدد شبكة WiFi المطلوبة ، واكتب كلمة المرور
  • بعد ذلك ، أدخل عنوان IP الذي تريد استخدامه للاتصال بـ IoT Timer
  • أدخل عنوان IP الخاص بالبوابة الافتراضية ، متبوعًا بالقناع
  • بمجرد الانتهاء من جميع الإعدادات ، انقر فوق الزر حفظ
  • ستفتح نافذة جديدة لتأكيد حفظ بيانات الاعتماد الجديدة
  • أغلق المستعرض الخاص بك

بمجرد الحفظ ، سيتم إغلاق شبكة IoT Timer ، وستحاول الوحدة الاتصال بشبكة WiFi الخاصة بك.

  • قم بتوصيل هاتفك الذكي أو جهازك بنفس شبكة WiFi المستخدمة في IoT Timer.
  • افتح متصفحك
  • في شريط العنوان ، اكتب عنوان IP الخاص بجهاز IoT Timer
  • سيتم فتح صفحة تكوين IoT Timer

مؤقت إنترنت الأشياء الخاص بك جاهز الآن للاستخدام

الخطوة 8: إعداد IoT Timer

إعداد IoT Timer
إعداد IoT Timer
إعداد IoT Timer
إعداد IoT Timer
إعداد IoT Timer
إعداد IoT Timer
إعداد IoT Timer
إعداد IoT Timer

تتكون صفحة الويب المدمجة في IoT Timer من خمسة أقسام:

حالة

يعرض هذا اسم الجهاز ، بالإضافة إلى الوقت الحالي وحالة الإخراج للمؤقت

بالإضافة إلى ذلك ، يتم تعيين وضع تشغيل المؤقت في هذا القسم. هناك ثلاثة أوضاع:

  • تلقائي - سيتم التحكم في الإخراج بواسطة برامج المؤقت المختلفة
  • تشغيل - يتم فرض الإخراج على "تشغيل" ، وسيظل قيد التشغيل حتى يتم تغيير الوضع
  • مطفأ - يتم إجبار الخرج على إيقاف التشغيل ، وسيظل متوقفًا حتى يتم تغيير الوضع.

البرامج

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

قبل تغيير البرنامج التالي ، اضغط على زر حفظ لحفظ أي تغييرات تم إجراؤها على البرنامج الحالي.

وظيفة الزر

يمكن استخدام زر MODE / SETUP للتحكم في مرحل الإخراج أثناء التشغيل العادي. هنا ، حدد ما يجب أن يفعله الزر عند الضغط عليه.

حدد مربع "تحديث وظيفة الزر" قبل الضغط على الزر "حفظ" لحفظ الإعدادات الجديدة.

إعدادات

هنا ، يمكنك تغيير اسم IoT Timer. هذا يجعل من السهل التعرف بين أجهزة ضبط الوقت المتعددة.

يتم الحصول على الوقت على الوحدة من الإنترنت عبر خادم وقت NTP. لعرض الوقت الصحيح ، يرجى تحديث المنطقة الزمنية لمنطقتك.

إذا كنت ترغب في الاستفادة من خادم وقت NTP مختلف ، أدخل عنوان IP الجديد في المساحة المتوفرة.

حدد مربع "تحديث التكوين" قبل الضغط على الزر "حفظ" لحفظ الإعدادات الجديدة.

ملاحظة

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

الوقت ضبط

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

ضع علامة على مربع "وقت التحديث" قبل الضغط على زر حفظ لحفظ الوقت والتاريخ الجديدين.

تزامن الوقت

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

موصى به: