مشروع · غرفة ذكيّة · سلامة
لوحة واحدة تراقب الغرفة كلّها
أربع قطع رخيصة تغطّي الغرفة تمامًا: DHT22 للمناخ، وPIR للحركة، وMQ-2 للغاز والدخان، ومرحّل بقناتين للمصباح والمروحة. ESP32 واحد يربطها في لوحة سلامة بسلسلة إنذار — شارة وجرس وسجلّ وتهوية تلقائيّة — تتحكّم بها من لوحة يقدّمها الشريحة بنفسها.
القطع وطبائعها
| القطعة | الدور | ما يجب معرفته |
|---|---|---|
| DHT22 | حرارة + رطوبة | قراءة كلّ ثانيتين، بروتوكول سلك واحد |
| PIR (HC-SR501) | حركة | يثبّت خرجه نافذة إعادة قدح — عامله كذلك |
| MQ-2 | غاز / دخان | يحتاج إحماءً ومعايرة لكلّ وحدة |
| مرحّل بقناتين | مصباح + مروحة | لوحات العزل الضوئيّ تريد 5 V؛ تحقّق من قطبيّة IN |
| جرس | إنذار محلّيّ | النشط يكفيه GPIO مرتفع |
سلسلة الإنذار — أولويّات لا معكرونة
للّوحة حالة واحدة والغاز يفوز دائمًا: GAS! > Motion > All clear. إصابة الغاز تُطلق الجرس وتشغّل المروحة قسرًا للتهوية وتكتب الحدث؛ الحركة تقلب الشارة وتُسجَّل فحسب. منطق الأولويّات كلّه خمسة أسطر:
// Alarm chain: gas beats motion; the buzzer follows the gas state, fan auto-vents.
bool gasBad = gas > 350; // real: calibrate to your MQ-2
if (gasBad && roomState != 2 && evlog) evlog->print("GAS/SMOKE - venting");
roomState = gasBad ? 2 : (motion ? 1 : 0);
alarmOut = gasBad;
if (gasBad) fan = true; // auto-vent on gas
// PIR: the module holds its output ~3 s per trigger — treat it as a window.
motion = millis() < motionUntil; اللوحة
صفحتان: Room (قراءات + حالة + سجلّ) وControl (مصباح، مروحة، إنذار). إعدادا
dht22 وmq2 يختاران الأدوات والمديات بنفسيهما:
dash.layout("Room", RICON_HOME);
dash.sensor("dht22", &temp, &hum); // temp gauge + humidity metric
dash.sensor("mq2", &gas); // smoke/LPG gauge with the right range
dash.badge("Status", &roomState).labels("All clear", "Motion", "GAS!");
dash.led("Motion", &motion); // PIR state, live
evlog = &dash.log("Events", 6);
dash.layout("Control", RICON_BULB);
dash.toggle("Light", &light); // relay channel 1
dash.toggle("Fan", &fan); // relay channel 2
dash.led("Alarm", &alarmOut); // buzzer output
dash.beginAP("RisalDash-Room", "12345678"); المثال المرفق (examples/04_Templates/RoomMonitor) يعمل بلا عتاد — MQ-2 الوهميّ «يشمّ دخانًا» أحيانًا وPIR يقدح عشوائيًّا، فترى السلسلة كاملة: شارة ← جرس ← سجلّ ← مروحة. ثمّ صِل القطع الحقيقيّة واحذف الوهميّات. وكلّ أداة هي أيضًا أداة MCP: يسأل وكيل الذكاء الاصطناعيّ «هل في الغرفة أحد؟» أو يشغّل المروحة — هذا نمط الوكيل الذكيّ.
بناءات قريبة
تحتاج الحراسة فقط؟ قالب MotionSecurity يضيف مناطق ومفتاح تسليح. الغاز فقط؟ GasSafety يجمع MQ-2 + MQ-7 مع مؤشّرات قدح. الشقّة كاملة؟ SmartHome يوسّع النمط نفسه إلى مشاهد وغرف — هذه اللوحة خلاصة الثلاثة لغرفة واحدة.
شاهد سلسلة الإنذار تعمل على الوهميّات الليلة — ووصّل الغرفة في العطلة.