الحلول
Search Icon

    وصفات أتمتة عملية مع مستشعر الإشغال في home assistant

    وصفات أتمتة عملية مع مستشعر الإشغال في home assistant

    الساعة السابعة مساء يوم خميس. الطابق الثالث مضاء بالكامل، وحدات التهوية تعمل بأقصى طاقتها، وفي القاعة المفتوحة يجلس موظفان فقط يكملان تقريراً. في اليوم التالي يسألك مدير المرفق لماذا فاتورة الكهرباء لم تتغير رغم أن نصف الفريق يعمل عن بُعد. إذا كان لديك مستشعر الإشغال في home assistant يعطيك عدد الأشخاص الفعلي في كل منطقة، فالمشكلة ليست في البيانات بل في أنك لم تبنِ عليها قواعد بعد. هذه المقالة لا تشرح ما هو التكامل ولا لماذا تحتاجه؛ إن كنت تبحث عن الصورة الكاملة فراجع الدليل الكامل لتكامل بيانات الإشغال مع Home Assistant. هنا نكتب الوصفات نفسها: المشغّل، الشروط، الإجراء، وما يفسد كل واحدة منها في الميدان.

    نقطة الانطلاق: شكل مستشعر الإشغال في home assistant

    كل الوصفات التالية تفترض أن المستشعر لديك كيان رقمي (sensor) بوحدة قياس "شخص"، وليس binary sensor يقول "حركة/لا حركة". النمط الشائع هو نشر العدد من منصة مثل VemSpace عبر MQTT بموضوع لكل منطقة، على نحو building/floor3/zone-a/occupancy، ثم تعريفه في Home Assistant كمستشعر MQTT. إذا كان لديك عدة مناطق في طابق واحد، أنشئ مستشعر قالب (template sensor) يجمعها في قيمة واحدة للطابق؛ ستحتاجه في وصفة التهوية تحديداً. من هذه النقطة فصاعداً، نسمّي الكيان في الأمثلة sensor.floor3_zone_a_occupancy.

    الوصفة الأولى: إضاءة تتبع الأشخاص لا الحركة

    الخطأ الكلاسيكي مع حساسات PIR هو إطفاء الإنارة على شخص جالس يقرأ. مع عدّاد حقيقي لا تحتاج مهلة طويلة "تحسباً"، لأن القيمة صفر تعني أن المنطقة فارغة فعلاً. الوصفة من ثلاث قواعد منفصلة:

    • الإطفاء: المشغّل numeric_state على المستشعر، الشرط below: 1، مع مدة استمرار (for) قصيرة من خمس إلى عشر دقائق لامتصاص الخروج المؤقت إلى دورة المياه. الإجراء: إطفاء مجموعة إنارة المنطقة.
    • التشغيل: المشغّل numeric_state above: 0 بدون مدة استمرار، لأن التأخير هنا يلاحظه الناس فوراً. أضف شرطاً بمستوى الإضاءة الطبيعية إن كان لديك مستشعر سطوع، كي لا تضيء قاعة مشمسة.
    • الخفض الجزئي: في المساحات المفتوحة الكبيرة، لا تكتفِ بتشغيل/إطفاء. قاعدة ثالثة تخفض السطوع عندما يهبط العدد تحت حد معين بعد ساعة محددة، مثلاً أقل من ثلاثة أشخاص بعد السابعة مساء، فتبقى المنطقة مضاءة لمن فيها دون إنارة كاملة لمكاتب فارغة.

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

    الوصفة الثانية: تهوية حسب الطلب بنطاقات لا بعتبة واحدة

    هنا يظهر الفارق المالي الأكبر، وهنا أيضاً يقع أكثر المكاملين في فخ "العتبة الواحدة": إذا تجاوز العدد 20 ارفع التهوية، وإذا هبط دونه اخفضها. النتيجة وحدة VAV تتذبذب كل دقيقتين لأن العدد يتأرجح حول 20. الحل نطاقات مع هامش تباطؤ (hysteresis):

    • عرّف ثلاثة أو أربعة مستويات تهوية في المشغّل الخاص بك (منخفض، متوسط، مرتفع)، على أن تكون الحدود مجرد افتراضات توضيحية هنا؛ القيم الحقيقية يحددها مهندس الميكانيكا حسب مساحة المنطقة والكود المعمول به.
    • اجعل حد الصعود أعلى من حد الهبوط. مثال افتراضي: انتقل إلى "مرتفع" عند 25 شخصاً، لكن لا تعد إلى "متوسط" إلا تحت 18. الفجوة بين الرقمين هي ما يمنع التذبذب.
    • أضف مدة استمرار (for) من عشر دقائق على الأقل لكل انتقال نحو الأسفل. الهواء لا يحتاج استجابة فورية عند انخفاض الإشغال، لكنه يحتاجها عند الارتفاع.
    • إن كان لديك مستشعر CO2 في المنطقة نفسها، أضفه كشرط تجاوز: مهما كان العدد، لا تخفض التهوية إذا تجاوز CO2 حداً تضعه أنت. العدّاد يخبرك بالطلب، وCO2 يؤكد أن النظام يلبّيه فعلاً.

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

    الوصفة الثالثة: تنبيهات تصل مرة واحدة إلى الشخص الصحيح

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

    • حد السعة: المشغّل numeric_state above على الحد المعتمد للقاعة. الإجراء إشعار لفريق التشغيل وتغيير لون شاشة عند المدخل. آلية الكبح: لا تُرسل الإشعار مجدداً إلا بعد أن يهبط العدد تحت الحد ثم يتجاوزه من جديد؛ استخدم وضع single في الأتمتة ومساعد input_boolean يُعاد تصفيره عند الهبوط.
    • قاعة الاجتماعات الشبحية: المشغّل بداية حدث في تقويم القاعة، تأخير عشر دقائق، ثم شرط: الإشغال لا يزال صفراً. الإجراء إشعار للحاجز وتحرير القاعة في نظام الحجز. آلية الكبح: شرط إضافي يتحقق أن العدد كان صفراً طوال العشر دقائق، لا في لحظة الفحص فقط.
    • قائمة التنظيف اليومية: أتمتة مجدولة في المساء تمر على مستشعرات المناطق وتجمع قائمة بالمناطق التي تجاوز إجمالي دخولها اليومي حداً تحدده أنت، ثم ترسلها في رسالة واحدة لفريق النظافة. إشعار واحد يومياً بدل عشرة.

    الشروط الاحتياطية التي لا تحذفها من أي أتمتة home assistant

    كل وصفة أعلاه تعمل ممتازاً يوم التشغيل الأول، ثم تبدأ المفاجآت. أربعة شروط تُضاف إلى كل قاعدة تقريباً:

    • شرط الحالة غير المتاحة: إذا انقطع MQTT أو توقف الحساس، تصبح قيمة الكيان unavailable أو unknown. قاعدة إطفاء الإنارة قد تفسّر ذلك كصفر. أضف شرطاً يتحقق أن الحالة رقمية قبل أي إجراء، أو اربط أتمتة منفصلة ترسل إشعاراً عند فقدان الاتصال.
    • شرط زمني احتياطي: أي عدّاد يعمل بمنطق "داخل ناقص خارج" يتعرض لانجراف تراكمي خلال اليوم. المنصات الاحترافية تعالجه بإعادة تصفير مجدولة، لكن لا تبنِ تسليح الإنذار على "المبنى فارغ" وحدها؛ اجعل الشرط "العدد صفر وتجاوزت الساعة وقت الإغلاق المعتاد".
    • استبعاد الموظفين: جولات الأمن والنظافة ليلاً ستُبقي الإنارة والتهوية تعمل إذا احتُسبوا كزوار. فعّل استبعاد الموظفين في منصة العدّ قبل بناء أتمتة نهاية اليوم، وإلا فستظل تطارد "أشخاصاً" في الثانية صباحاً.
    • وضع التجاوز اليدوي: مساعد input_boolean باسم واضح مثل "صيانة الطابق الثالث" يُدرج كشرط في كل الأتمتات. عندما يأتي فني التكييف، يُفعَّل بنقرة واحدة بدل تعطيل عشر قواعد.

    وتذكّر أن دقة المصدر تحدد سقف كل ما سبق: حلول Vemco Group تعمل بدقة تعاقدية لا تقل عن 96% وتصل عادة إلى 98 إلى 99% عندما تسمح ظروف الإضاءة وتخطيط المساحة. حتى عند هذا المستوى، الشروط الاحتياطية ليست خياراً.

    الأسئلة الشائعة

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

    ما الفرق في أتمتة home assistant بين مستشعر رقمي وbinary sensor؟ المستشعر الرقمي يتيح لك مشغّل numeric_state بعتبات ونطاقات، وهو ما تحتاجه للتهوية وحدود السعة. المستشعر الثنائي يصلح فقط لمنطق "موجود/غير موجود"، ولا يمكنك بناء نطاقات تباطؤ عليه.

    كيف أختبر الوصفة دون انتظار إشغال حقيقي؟ استخدم أداة تطوير الحالات في Home Assistant لتعيين قيمة المستشعر يدوياً وراقب تنفيذ الأتمتة في سجل التتبع (trace). اختبر الحالات الحدية تحديداً: الصفر، القيمة عند العتبة بالضبط، والحالة unavailable.

    إذا كنت تريد مراجعة بنية MQTT لديك أو مناقشة ربط أعداد الإشغال بأنظمة HVAC والأمن على مستوى المبنى كاملاً، سواء عبر Home Assistant أو عبر VemFusion مباشرة، تواصل مع فريق Vemco Group عبر صفحة التواصل للحصول على تقييم عملي لحالتك.

    Join Our Newsletter Community Today!

    Form-right