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

بصراحة ، ليس لدي أي خبرة في إنشاء أجهزة تكييف قوية. لذلك ، عند تطوير هذا الجهاز ، حاولت تشغيله بأمان إلى أقصى حد - مانعات الصواعق ، مسارات واسعة مصممة لحام الإطارات النحاسية القوية ، التدريع في الطبقات المتوسطة من اللوحة. في الإصدار الأول ، كانت هناك بعض التجاوزات والأخطاء (على سبيل المثال ، في ورقة البيانات لوحدة إمداد الطاقة ، تبين أن ناتج الجهد 1 و Vout1 ليسا متشابهين ، لذلك اضطررت إلى قطع المسارات ، وقمت ببساطة بتوجيه موصل microUSB بحيث لم يكن المنفذ الموجود عليه يعمل).
للتبديل ، تم اختيار مرحلات 80-ampere bistable EW80. يجب أن أقول إن الاختيار لم يكن ناجحًا جدًا - الحالة متسربة وفي الظروف المحلية ذات الرطوبة العالية قد تكون غير مناسبة. لسوء الحظ ، فإن اختيار المرحلات القوية المزدوجة من الموردين المتاحين ليس كبيرًا جدًا ، لذلك سيكون عليك إما إغلاق كل مرحل على حدة أو الحالة بأكملها. كمفاتيح تحكم ، قمت بأخذ سواقات ADP3624 للسائقين المتوفرة في متناول اليد (واحدة لكل زوج من المرحلات) ، والتي تتيح تنشيط اللفات في كل من القطبين وإلغاء تنشيطها بعد التعثر. تقوم مستشعرات القاعة ACS759-100 بقياس الاستهلاك ، وخط الجهد من خلال محول منخفض الطاقة. كما ADC و متحكم التحكم هو STM32F373CBT6.
لتبسيط توصيل الجهاز النهائي ، يتم توفير جهد الإدخال إلى موصل واحد ، وسيتم تمديد الحافلات النحاسية 7 × 3 مم الملحومة على مسارات اللوحة إلى جميع قنوات التبديل. في ظروف الأسلاك الطويلة جدًا للحمل (عشرات الأمتار) ، تقرر تبديل كل من الصفر والمرحلة في نفس الوقت لتجنب مشاكل التداخل والتشوهات ومجرد السلامة. نظرًا لأن اللوحة غير مصممة للعمل بدون أجهزة حماية خارجية ("المقابس" ، و RCDs) ، فلا توجد عناصر أمان عليها ، ولا يوجد سوى مانعات صواعق للحماية من النبضات عالية الجهد. تحتوي كل قناة على مؤشر LED ، وهناك أيضًا دائرة إشارات ("مكبر الصوت" وترحيل لـ 10 أمبير من الحمل الخارجي) ، ولكن لم يتم تنفيذها بعد في البرامج.
يتم التحكم في الجهاز عبر منفذ تسلسلي مع عزل كلفاني (من الممكن نظريًا استخدام منفذ USB) ، مع بروتوكول بسيط مشابه للبروتوكول المستخدم في جهاز باهتة. سأستبدلها بـ MQTT over-serial لاحقًا.

يجب أن أقول على الفور أن الدائرة تبين أنها غير ناجحة للغاية وستتغير قليلاً في الإصدار التالي - استقرار الجهد 3.3 فولت لتشغيل أجهزة الاستشعار الحالية ووحدة التحكم لا تصمد أمام الانتقاد ، مما يؤدي إلى أخطاء في قياس الطاقة في بضع عشرات من الواط (حتى بدون تحميل) على الأرجح سأقوم بتوفير مصادر مستقرة للجهد المرجعي 3.3 فولت لكل مستشعر على حدة. قد يكون من المفيد أيضًا استخدام ADC 16 بت في وحدة التحكم ، ولكن للأسف ، سرعته ليست عالية جدًا - الآن يتم قياس التيار والجهد حوالي 5000 مرة في الثانية ، وهو ما يمكن نظريًا إجراؤه باستخدام 16 بت ، لكنني لم أتمكن من تحقيق استقرار عمله مع العديد من القنوات من خلال DMA.
يعرض البرنامج الثابت لوحدة التحكم مرة واحدة كل عشر ثوانٍ بيانات حول استهلاك الحمل في كل قناة والجهد الرئيسي ، ويتلقى أوامر لتشغيل القنوات وإيقافها. البرنامج خام للغاية ، كما يجب إعادة بنائه من أجل إضافة وظائف تحكم مختلفة (على سبيل المثال ، الجهد الزائد في الشبكة ، الحمل الزائد ، ارتفاع درجة حرارة اللوحة ، إلخ).
→
كود على جيثب