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

12V LED PWM باهتة مع ESP8266: 3 خطوات
12V LED PWM باهتة مع ESP8266: 3 خطوات

فيديو: 12V LED PWM باهتة مع ESP8266: 3 خطوات

فيديو: 12V LED PWM باهتة مع ESP8266: 3 خطوات
فيديو: ESP32 PWM alternative 2024, يوليو
Anonim
12V LED PWM باهتة مع ESP8266
12V LED PWM باهتة مع ESP8266

أثناء محاولتي جعل منزلي أكثر استدامة ، كنت أستبدل مصابيح الهالوجين بمصابيح LED. هناك الكثير من البدائل المتاحة لاستبدال أي نوع من المصابيح الكهربائية. أثناء القيام بذلك ، صادفت المشكلة التالية: كان لديّ جهاز إضاءة يستخدم 7 لمبات هالوجين بجهد 12 فولت ، كل منها 10 واط. تم التحكم في هذا الضوء من خلال باهتة ، والتي تعمل بشكل جيد. عندما استبدلت المصابيح بمصابيح led 12 فولت ، كل 1 وات ، كان الخافت يعمل بشكل سيئ: كان الضوء يتأرجح ، وكان التعتيم غير منتظم إلى حد ما. هذه مشكلة مع الكثير من المخفتات الكلاسيكية: لديهم الحد الأدنى من تصنيف الطاقة ، والتي يحتاجون إليها للعمل.

لذلك ، بناءً على نظام الدوموتيك الخاص بي ، قررت استبدال هذا الخافت اليدوي بآخر جديد ، والذي سيكون له ميزة إضافية تتمثل في القدرة على التحكم فيه عن بُعد. لقد قمت بالفعل ببناء باهتة باستخدام N-channel MOSFET (IRF540) ، وهو مثالي لهذا النوع من الأشياء: يمكن التحكم فيه عن طريق إشارة PWM ، وهو غير قابل للتدمير تقريبًا ، مع درجات قصوى تبلغ 100 فولت و 33 أمبير ، يكفي بشكل كافٍ لهذا الغرض (فحص سريع: 7 × 1 وات = 7 وات ، مقسومًا على 12 فولت يعطي أقصى تيار يبلغ حوالي 0.58 أمبير). أريد استخدام هذا الخافت لتركيب آخر يحتوي على 12 مصباحًا ، كل 2 واط ، والتي تعطي حدًا أقصى قدره 2 أمبير ، وهذا يكفي أيضًا. الشيء الوحيد الذي يجب الانتباه إليه هو تردد إشارة PWM ، لكن القيم المعتادة لـ Arduino أو ESP8266 (500 هرتز أو 1 كيلو هرتز) ليست مشكلة.

الخطوة 1: الخطوة 1: المكونات

الخطوة 1: المكونات
الخطوة 1: المكونات
  1. برنامج تشغيل LED (محول 230 فولت تيار متردد إلى 12 فولت تيار مستمر) لغرضي ، أريد استخدام 24 وات كحد أقصى ، لذلك بدأت مع مشغل LED بقوة 12 فولت و 2 أمبير. لقد وجدت واحدة في موقع موزع صيني. تم تصنيف هذا المحرك بجهد 12 فولت و 28 واط ، لذلك كان كافيًا لقيادة الوحدة بمفردها. بالنسبة لموقفك الخاص ، يمكنك استخدام إصدار أخف أو أثقل ، اعتمادًا على تركيباتك.
  2. IRF540 n قناة MOSFET
  3. Adafruit Huzzah ESP8266 Breakout لأنني كنت أرغب في استخدام WiFi ، وأنا أحب تمامًا منتجات Adafruit ، فقد اخترت هذه اللوحة: فهي تعطيني ESP8266 مع دبوس برمجة مناسب ، ومنظم طاقة داخلي ، وعامل شكل أنيق. إنه مبالغة قليلاً في هذا المشروع ، لكنه يجعل الاختبار وتصحيح الأخطاء أسهل بكثير.
  4. محول DC-DC القائم على LM2596 من أجل اشتقاق الطاقة للوحة ESP من 12 فولت ، كنت بحاجة إلى منظم ؛ هذه المحولات الصغيرة فعالة جدًا ورخيصة جدًا.
  5. جهاز تشفير دوار مع وظيفة الزر ، مع ضوء LED مدمج:

    www.sparkfun.com/products/10596

    أي برنامج تشفير دوار سيفي بالغرض ، لكنني أحببت الميزة المضافة اللطيفة لمصباح LED مدمج.

  6. مقبض بلاستيكي شفاف

    www.sparkfun.com/products/10597

  7. المقاوم 4K7
  8. المقاوم 1 كيلو

الخطوة 2: الخطوة 2: الدائرة

الخطوة 2: الدائرة
الخطوة 2: الدائرة

هذه هي الدائرة التي استخدمتها: لقد استخدمت المسامير 4 و 5 كمدخلات لجهاز التشفير الدوار ، ودبوس 0 للزر. يتصل الدبوس 0 أيضًا بالمصباح الأحمر الموجود على اللوحة ، لذلك يمكنني التحقق من وظيفة الزر الموجود في الترميز من خلال مشاهدة هذا المؤشر.

يتم استخدام Pin 16 لإخراج PWM ، وقد قمت بتوصيل هذا مباشرة بالمؤشر الأخضر على مشفر Sparkfun. إن ESP8266 هو 3 ، 3 فولت ، وحتى مع 100٪ ، قمت بقياس ناتج 2 ، 9 فولت فقط ، لذلك قمت بتوصيله مباشرة بدون المقاوم المتسلسل. يذهب هذا الناتج نفسه إلى بوابة MOSFET ذات القناة n ، عن طريق المقاوم 1 كيلو أوم ، يتم سحب هذه البوابة إلى 12 فولت بواسطة المقاوم 4.7 كيلو أوم.

لقد استخدمت محول DC-DC لتحويل 12 فولت إلى 5.5 فولت ، وهذا متصل بمدخل V + من اندلاع Adafruit. كان بإمكاني استخدام 3.3 فولت وتوصيله مباشرة ، لكن هذا أكثر أمانًا قليلاً.

مصباح LED 12 فولت في الدائرة هو تركيباتي.

الخطوة 3: الخطوة 3: الكود

الخطوة الثالثة: الكود
الخطوة الثالثة: الكود

أضع الكود على جيثب:

رسم تخطيطي لـ ESP8266 LED PWM باهتة

يعتمد على فكرة أخرى قابلة للتوجيه:

www.instructables.com/id/Arduino-PWM-LED-D…

لكن هذا كان تحكمًا محليًا بحتًا ، لذلك أضفت حل domotics القائم على MQTT الخاص بي. إنه يفعل نفس الشيء بشكل أساسي ، لكن الاختلافات الرئيسية هي:

  • العدد الافتراضي لخطوات PWM مع Arduino هو 255 ، مع ESP8266 هو 1023 (كما اكتشفت لاحقًا ، تحاول جميعًا معرفة سبب عدم ارتفاع تركيبات LED الخاصة بي إلى 100٪ سطوع …)
  • لم أستخدم دائرة "Totempole" مع الترانزستورات 2 ، لأن PWM كان DC على أي حال ، وعمل بشكل جيد مع IRF 540.
  • لم أستخدم مقاومات السحب 10 كيلو للتشفير ، لقد وثقت في عمليات السحب المضمنة في ESP8266.
  • يستخدم ESP8266 منطق 3.3 فولت بدلاً من 5 فولت لـ Arduino ، والذي أثبت عدم وجود مشكلة بالنسبة لـ IRF540

يحتوي البرنامج على الميزات التالية:

  • سيؤدي تحويل المشفر إلى تعتيم الضوء (CW) أو خفضه (CCW) ، من 0 إلى 100٪ ، في 1023 خطوة ، مع تسريع بعض المستويات في المستويات الأدنى.
  • سيؤدي الضغط على الزر إلى تشغيل الضوء عند إيقاف تشغيله ، باستخدام آخر مستوى سطوع محفوظ ، أو إيقاف تشغيله عندما يكون قيد التشغيل.
  • سيؤدي الضغط على الزر لفترة أطول أثناء تشغيل الضوء إلى حفظ السطوع الحالي باعتباره المستوى الافتراضي.
  • سيؤدي الضغط على الزر لفترة أطول أثناء إيقاف تشغيل الضوء إلى تشغيل الضوء إلى سطوع 100٪ ، دون تغيير المستوى الافتراضي.
  • سيتصل بإعدادات WiFi المحددة بواسطة السلاسل "SECRET_SSID" و "SECRET_PASS" ، والتي يتم حفظها في ملف منفصل في الرسم الخاص بي ، يسمى "secrets.h"
  • سيتم توصيله بخادم MQTT في شبكة WiFi ، باستخدام سلاسل "MQTTSERVER" و "MQTTPORT" في نفس الملف.
  • يمكنك استخدام موضوع MQTT الوارد "domus / esp / in" لإصدار أوامر: "تشغيل" أو "إيقاف" لتشغيل الضوء أو إيقاف تشغيله ، أو استخدام قيمة من 0 إلى 1023 لتغيير السطوع.
  • سيبلغ عن الحالة في موضوعات MQTT 'domus / esp / uit' (حالة التشغيل أو الإيقاف) و 'domus / esp / uit / brightness' (قيمة السطوع).

موصى به: