جعل الميكروويف التقليدي أكثر ذكاءً مع IFTTT و OpenHAB


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

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

على ماذا؟


حدث ذلك أن هناك عدة غرف في مكتبنا ، وهناك ميكروويف واحد فقط. في الواقع ، أنت بحاجة إلى إبلاغ زملائك بطريقة أو بأخرى أن الطعام قد تحسّن وأنه حان وقت الذهاب إلى الغداء (كلنا نذهب للغداء ، ولا يقوم سوى شخصان بتدفئة الطعام).

في جميع المكاتب ، نعلق على جهاز تلفزيون متصل بجهاز كمبيوتر عادي (Mac Mini). لذا يمكن أن يكون بمثابة "لسان حال" ، يخطر متى بدأ الميكروويف ومتى أنهى عمله. بالإضافة إلى ذلك ، سيكون من الممكن ربط نوع من الإنذار بالضوء ، مثل إضاءة إنارة Phillips Hue. حسنًا ، أو أرسل إشعارًا إلى الرسول.

ماذا تحتاج؟


كما قلت سابقًا ، لا تحتاج إلى حام الحديد. ونحتاج إلى شيء يمكنه قياس الحمل على منفذ 220 عادي ، والذي يتصل به الميكروويف ، والإبلاغ عنه عند الضرورة. إلى أين؟ هذا صحيح - إلى مشغل IFTTT عبر الإنترنت ، والذي يمكنه إرسال أي شيء إلى أي مكان .

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

قابس كهرباء


الآن دعنا نذهب إلى أي متجر عبر الإنترنت للمنازل الذكية ونشتري هناك منفذ Z-Wave عادي وجهاز تحكم لذلك.

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

المخرج نفسه - على سبيل المثال ، هذا (على الرغم من أنه يمكنك شراء خيار أرخص بكثير ، ولكن هذا يضيء بشكل جميل :))

هناك حاجة إلى وحدة التحكم لتلقي البيانات من المنفذ. باستخدامه ، يمكنك أيضًا التحكم في الأجهزة الذكية ، ولكن الآن لا يتعلق الأمر بذلك.
سنقوم بتوصيل منفذنا بوحدة تحكم MiCasa Vera Lite (أو من الممكن Vera 3).


تتصل وحدة التحكم بالشبكة المحلية عبر Ethernet أو Wi-Fi (لـ Vera3). يتم مزامنة المقبس معه مرة واحدة بزر واحد ، وهذا كل شيء - الآن بمساعدة وحدة التحكم يمكنك التحكم في المقبس واستقبال البيانات منه. قم بتشغيله على الفور من خلال وحدة تحكم الويب الخاصة بوحدة التحكم واتركه قيد التشغيل.

Openhab


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

لماذا نحتاجه؟ الأمر بسيط - سيراقب حالة منفذنا ويرسل طلبًا إلى IFTTT في الوقت المناسب ، بحيث يقوم بدوره بإرسال البيانات إلى قناة الإعلام التي نحتاجها.

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

التركيب


لذا ، قم بتنزيل OpenHAB والوظائف الإضافية التي سنجد من بينها ملفات jar مع كلمة "mios" في الاسم ووضعها في مجلد "addons" في OpenHAB الخاص بنا.

ستحتاج أيضًا إلى أحدث إصدار من Oracle JDK ، نظرًا لأن OpenHAB مكتوب بلغة Java

تكوين OpenHAB


كل شيء بسيط هنا. نذهب إلى مجلد "تكوينات" ونعيد تسمية "openhab_default.cfg" إلى "openhab.cfg" ونفتحه في المحرر.
في نهاية الملف ، اكتب السطر
mios: house.host = 192.168.1.22

من الطبيعي استبدال عنوان IP بعنوان التحكم الخاص بك فيرا . بالمناسبة ، يمكنك الحصول عليها بسرعة كبيرة عن طريق فتح الرابط التالي في المتصفح http://cp.mios.com/detect_unit.php

وصف مفصل لتكوين Vera وعملية التكوين في OpenHAB موصوف في صفحة إضافة github .

بعد ذلك ، انتقل إلى مجلد "العناصر" واكتب الإعدادات في ملف "test.items" حتى يعرف OpenHAB حالة المنفذ الذي نحتاج إلى مراقبته:
الميكروويف الرقمي {mios = "unit: house، device: 11 / service / urn: micasaverde-com: serviceId: EnergyMetering1 / Watts"}

بدلاً من الرقم 11 ، اكتب معرف المنفذ الخاص بك ، والذي يمكن رؤيته في وحدة تحكم الويب الخاصة بجهاز تحكم Vera الخاص بك.

حسنًا ، والأخير - نكتب قاعدة صغيرة ستراقب حالة المنفذ وترسل طلبًا إلى IFTTT الخاص بنا.
في مجلد "القواعد" ، قم بإنشاء ملف "test.rules" واكتب فيه:
import org.openhab.core.library.types.*
import org.openhab.model.script.actions.*

rule "Microwave"
 when 
  Microwave received update 0
 then
  sendHttpGetRequest("http://maker.ifttt.com/trigger/microwave/with/key/<      IFTTT>")
end


تستجيب القاعدة عندما يصبح الحمل من الميكروويف صفرًا ويرسل طلب IFTTT. يجب الحصول على عنوان الطلب في وحدة تحكم IFTTT الخاصة بك ، والآن سنذهب إلى هناك.

IFTTT



يوفر IFTTT القدرة على إرسال طلبات إليه من أي أنظمة وإعادة توجيهها إلى القناة التي تحتاجها باستخدام قناة Maker . هناك يمكنك الحصول على المعرف الفريد الخاص بك ، والذي يمكن استبداله في برنامج OpenHAB النصي أعلاه.
في الواقع ، هذا هو عنوان URL الذي تحتاج إلى إرسال طلب GET أو POST إليه ، وفي نفس الوقت يمكنك تمرير المعلمات هناك (في هذا المثال ، هذا ليس ضروريًا). يتلقى IFTTT مثل هذا الطلب وينفذ "ثم" - أي أنه يطلق القناة التي تحتاجها بالمعلمات الضرورية.

سيقول شخص ما بالتأكيد أن كل شيء اخترع لنا ، وأن OpenHAB تعمل مع IFTTT لفترة طويلة ، لماذا نحتاج إلى عكاز من Maker؟
سأجيب على الفور - نادرًا ما يتلقى IFTTT حالات من OpenHAB (كل 15 دقيقة) ، وهو أمر غير مقبول بالنسبة لنا. لذلك ، سوف OpenHAB "سحب" صانع نفسها - وبعد ذلك لن يكون هناك تأخير ، كل شيء سيحدث على الفور.


لذا ، فإننا نصنع وصفة:

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

ستكون إعدادات مشغل Maker نفسها كما يلي: في


الواقع ، كل شيء! في Maker ، يمكنك التحقق من كيفية عملها - في صفحة Maker نفسها ، يمكنك النقر فوق الزر اختبار والحصول على النتيجة.

لا تنس تسجيل مفتاح Maker كقاعدة في OpenHAB!

إطلاق!


يبقى فقط لتشغيل OpenHAB باستخدام أحد البرامج النصية "start.sh" أو "start.bat" ، اعتمادًا على نظام التشغيل الذي قمت بتثبيته عليه.
الآن ، في كل مرة ينهي الميكروويف تسخين الطعام ، ستتلقى إشعارًا من IFTTT الذي قمت بتكوينه في وصفتك. وعلى الفور.
لذلك صنعنا جهازًا ذكيًا من الميكروويف التقليدي ، والذي يمكن أن يفعل أكثر من مجرد تسخين الطعام :)

Source: https://habr.com/ru/post/ar384605/


All Articles