الشروع في العمل مع OpenHAB Home Automation على Raspberry Pi

الشروع في العمل مع OpenHAB Home Automation على Raspberry Pi
هذا الدليل متاح للتنزيل كملف PDF مجاني. قم بتنزيل هذا الملف الآن . لا تتردد في نسخ هذا ومشاركته مع أصدقائك وعائلتك.

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





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





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





يغطي هذا الدليل ثلاثة مواضيع تمهيدية ، وموضوع أكثر تقدمًا قليلاً.

  • الحصول على OpenHAB وتشغيله على Pi ، وتثبيت تكوين المنزل التجريبي للتحقق من عمل الأنظمة الأساسية.
  • كيفية إضافة روابط وملفات تعريف للأجهزة. سأعمل مع Philips Hue.
  • تمكين الوصول عن بعد والاتصال بـ IFTTT.
  • إضافة مستشعر وجود DIY باستخدام Bluetooth ، ومقدمة لواجهة REST.
  • تكوين تطبيق OpenHAB للجوال.

ماذا ستحتاج

على الأقل ، ستحتاج إلى Raspberry Pi (الإصدار 2 ، ويفضل) ، ومحول Ethernet أو لاسلكي (يفضل Ethernet ، لن يتضمن هذا الدليل إرشادات حول كيفية عمل محول Wi-Fi). كل شيء آخر اختياري. لاحظ أن OpenHAB سيعمل على Raspberry Pi الأصلي أيضًا ، ولكن هناك مشكلة معروفة في المعالجة البطيئة وأجهزة Z-Wave. إذا لم تكن بحاجة إلى Z-Wave ، فيمكنك تجاهل هذا التحذير بأمان والمضي قدمًا في نموذج Raspberry Pi B أو B + ، لأن كل شيء آخر يبدو أنه يعمل بشكل جيد. يمكنك دائمًا الترقية إلى أحدث إصدار من Pi إذا قمت بإضافة Z-Wave.



يمكن أن يكون هذا الشيء الصغير أفضل مركز منزلي ذكي على الإطلاق!

في وقت كتابة هذا التقرير ، كان أحدث إصدار مستقر من OpenHAB هو الإصدار 1.71 ؛ من المتوقع أن يكون الإصدار 1.8 قريبًا ، ويجب أن يظل كل شيء في هذا الدليل ذا صلة ، على الرغم من أن بعض الروابط قد تحتوي على المزيد من الميزات. يتوفر الإصدار 2 حاليًا أيضًا كمعاينة ألفا مبكرة جدًا ، ولكنه يتبنى بنية مختلفة تمامًا لسلسلة OpenHAB 1: هذا الدليل غير متوافق مع الإصدار 2.





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

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





تثبيت OpenHAB

لا توجد صورة مسبقة التكوين لـ OpenHAB ، لذلك يتم التثبيت بالطريقة القديمة عبر سطر أوامر. أقترح عليك العمل بلا رأس على RPi - النفقات العامة لإدارة واجهة المستخدم الرسومية التي نادرًا ما تستخدمها لا تستحق العناء.

ابدأ بامتداد أحدث صورة Raspbian SD (كاملة) (ليس الإصدار 'البسيط' ، فهذه لا تتضمن Java Virtual Machine). قم بتوصيل كابل الشبكة ، ثم قم بالتمهيد ، وتنقل عبر SSH. يركض:

sudo raspi-config

قم بتوسيع نظام الملفات ؛ ومن القائمة المتقدمة ، قم بتغيير تقسيم الذاكرة إلى 16. عند الانتهاء ، أعد التشغيل ، وكممارسة جيدة ، قم بتشغيل تحديث كامل

sudo apt-get update
sudo apt-get upgrade

أسهل طريقة لتثبيت وقت تشغيل OpenHAB هي عبر apt-get ، ولكن علينا أولاً إضافة مفتاح آمن ومستودع جديد:

wget -qO - 'https://bintray.com/user/downloadSubjectPublicKey?username=openhab' |sudo apt-key add -
echo 'deb http://dl.bintray.com/openhab/apt-repo stable main' | sudo tee /etc/apt/sources.list.d/openhab.list
sudo apt-get update
sudo apt-get install openhab-runtime
sudo update-rc.d openhab defaults

من الغريب أن كل شيء تم تثبيته على أنه مملوك لـ 'الجذر'. نحن بحاجة إلى إصلاح ذلك بالأوامر التالية.

sudo chown -hR openhab:openhab /etc/openhab
sudo chown -hR openhab:openhab /usr/share/openhab

بعد ذلك ، سنقوم بتثبيت Samba ومشاركة التكوين ومجلدات المستخدم - وهذا سيجعل من السهل تثبيت الوظائف الإضافية وتغيير خريطة الموقع عن بُعد.

sudo apt-get install samba samba-common-bin
sudo nano /etc/samba/smb.conf

قم بتغيير اسم مجموعة العمل إذا لزم الأمر ، ولكن بخلاف ذلك قم بتمكين دعم WINS:

wins support = yes

(ستحتاج إلى إلغاء التعليق على السطر وتغيير 'لا' إلى 'نعم')

ثم أضف ما يلي إلى قسم تعريفات المشاركة (قم بالتمرير لأسفل حتى نهاية الملف الطويل):

[OpenHAB Home]
comment= OpenHAB Home
path=/usr/share/openhab
browseable=Yes
writeable=Yes
only guest=no
create mask=0777
directory mask=0777
public=no
[OpenHAB Config]
comment= OpenHAB Site Config
path=/etc/openhab
browseable=Yes
writeable=Yes
only guest=no
create mask=0777
directory mask=0777
public=no

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

حفظ وخروج. نحتاج أخيرًا إلى تعيين كلمة مرور Samba لمستخدم openhab:

sudo smbpasswd -a openhab

أقترح 'openhab' ككلمة مرور لسهولة الاستخدام ، لكن هذا لا يهم حقًا.

بفضل القارئ David L - يبدو أن طريقة إعادة تشغيل Samba قد تغيرت في أحدث Raspian. فيما يلي التعليمات المحدثة:

sudo update-rc.d smbd enable
sudo update-rc.d nmbd enable
sudo service smbd restart

بعد إعادة تشغيل Samba (تستخدم التثبيتات الأقدم إعادة تشغيل sudo service samba ) ، اختبار يمكنك الوصول إلى مساحة Drive المشتركة. قد لا يتم اكتشافه تلقائيًا على جهاز Mac ؛ ولكن يمكنك استخدام مكتشف -> يذهب -> اتصل بالخادم والعنوان

smb://openhab@raspberrypi.local

قم بالمصادقة باستخدام اسم المستخدم openhab وكلمة المرور التي اخترتها ، ثم افتح كلا السهمين لإلقاء نظرة. يجب أن تكون قادرًا على فتح http: //raspberrypi.local: 8080 / في متصفح الويب الخاص بك ، ولكنك ستواجه خطأً لأننا لم ننشئ خريطة موقع بعد. هذا امر عادي.

سيكون الآن هو الوقت المناسب لتعلم الأمر الخاص بسجل OpenHAB حتى تتمكن من مراقبة الأخطاء.

tail -f /var/log/openhab/openhab.log

استمر في تشغيل ذلك وافتحه في نافذة SSH منفصلة في جميع الأوقات أثناء متابعة الدليل.

تثبيت البيت التجريبي

قبل الخوض في تعقيدات ملفات التكوين وإضافة الأجهزة والربط وما إلى ذلك ؛ دعنا نتحقق من أن كل شيء يعمل عن طريق إضافة المحتوى التجريبي. ستجد 'إعداد العرض التوضيحي' ضمن قسم التنزيلات في OpenHAB.org.

بمجرد فك ضغطه ، يوجد مجلدين: الإضافات و التكوينات .

باستخدام مشاركات الشبكة ، نسخ التكوينات الى تكوين OpenHAB مشاركة والكتابة فوق المجلد الموجود. ينسخ الإضافات للاخر صفحة OpenHAB الرئيسية مشاركة ، مرة أخرى ، الكتابة فوق المجلدات الموجودة. إذا لم تتم مطالبتك بالكتابة فوق شيء ما ، فأنت تفعله بشكل خاطئ. إذا كنت قد ألقيت نظرة على ملف سجل تصحيح الأخطاء ، فمن المفترض أن ترى رفرفة في النشاط حيث يلاحظ الارتباطات الجديدة والدوران في العمل. افتح raspberrypi.local: 8080 / openhab.app؟ sitemap = demo لمشاهدة العرض التوضيحي.

إنها نظرة أساسية إلى حد ما في الوقت الحالي ، لكن الطبيعة المفتوحة لـ OpenHAB تعني أنه يمكننا تثبيت سمة جديدة جميلة لاحقًا أو واجهة بديلة تمامًا. في الوقت الحالي ، نحتاج فقط إلى معرفة أن كل شيء يعمل. لاحظ أن ما نبحث عنه يسمى أ خريطة الموقع (لا علاقة لها بخريطة موقع الويب). يصف خريطة الموقع واجهة المستخدم - وليس الأجهزة الفعلية على شبكتك أو أجهزة الاستشعار - فقط الواجهة لعرضها. كل جزء منه قابل للتخصيص بالكامل. لإلقاء نظرة على كيفية إنشاء هذا ، افتح ملف ملفات sitemap / demo.sitemap ملف على مشاركة OpenHAB Config.

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

أثناء وجودك هناك ، افتح العناصر / demo.items جدا. مرة أخرى ، يبدو الأمر مخيفًا ، ولكن هذا هو المكان الذي تنشئ فيه عناصر للتحكم في أجهزة الاستشعار وتحديدها لتتبعها.

إذن كيف يعمل OpenHAB؟

الآن بعد أن حصلت على نظرة سريعة على ملف Sitemap ومجلد العناصر ، دعنا نفصل بالضبط ما هي هذه الملفات والمكونات الرئيسية الأخرى لـ OpenHAB التي تتحد لإنشاء منزلك الذكي الكامل. ستجد أدلة فرعية لكل منها في المجلد المشترك OpenHAB Config.

العناصر عبارة عن جرد لكل جهاز تحكم أو مستشعر أو عنصر معلومات تريده في نظامك. لا يلزم أن يكون جهازًا ماديًا أيضًا - يمكنك تحديد مصدر ويب مثل الطقس أو أسعار الأسهم. يمكن تسمية كل عنصر ، وتعيين مجموعات متعددة (أو لا شيء) ، وربطها بربط محدد. (نصيحة للمبتدئين: الكتابة بالأحرف الكبيرة مهمة عندما يتعلق الأمر بالربط. لقد قضيت وقتًا طويلاً في محاولة معرفة سبب عدم عمل مصابيح 'Hue' الخاصة بي ؛ كان ذلك لأنه كان يجب أن تكون 'hue' بدلاً من ذلك).

خرائط المواقع معني فقط بالواجهة التي ستراها عند فتح تطبيق OpenHAB للجوال أو الويب. يمكنك التحكم بدقة في الطريقة التي تريد بها وضع الأزرار وتقديم المعلومات. يمكنك تحديد مجموعات المستوى الأعلى لكل غرفة في منزلك ؛ سيؤدي النقر فوق كل منها إلى إظهار قائمة بكل جهاز في تلك الغرفة. أو قد تفضل عرض مجموعات لكل نوع من الأجهزة: زر للأضواء وآخر للمنافذ الكهربائية. قد تكون هناك بعض الأجهزة التي تستخدمها كثيرًا لدرجة أنك تريد فقط تبديلها مباشرة على الشاشة الرئيسية.

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

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

تحول يحتوي على تعيينات لقيم البيانات للتسميات. على سبيل المثال ، ملف مقياس هيوميدكس يعرّف الملف مجموعة من قيم مؤشر الرطوبة وكيف يجب عرضها باللغة الإنجليزية: 29-38 يمثل 'بعض الانزعاج'.

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

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

ابدأ بإنشاء ملف جديد (فارغ) home.items ملف وملف الصفحة الرئيسية ملف في الدلائل ذات الصلة. افتح الصفحة الرئيسية والصق الكود التالي. يعمل هذا فقط كهيكل أساسي سنضيف إليه بتات لاحقًا.

sitemap home label='My Home'
{

}

يجب أن ترى إشعارًا للإبلاغ عن أن OpenHAB قد حدد ملف خريطة موقع جديد وملف عناصر.

محاذاة بحجم كبير wp-image-496593

تمكين وضع التصحيح

بينما لا تزال تحاول جعل OpenHAB يعمل بشكل صحيح ، قد يكون من المفيد تمكين سجل تصحيح مطول أكثر يسرد كل شيء ، وليس الأشياء المهمة فقط. لتمكين هذا الوضع ، افتح المجلد المشترك OpenHAB Config وقم بتحرير ملف logback.xml . في السطر 40 ، قم بتغيير السطر التالي لقراءة DEBUG بدلاً من INFO. ستحتاج إلى إعادة التشغيل بعد تغيير هذا.

يعد هذا تغييرًا عالميًا ، لذا ستحصل على الكثير من المعلومات بمجرد الانتهاء من ملف السجل.

مضيفا فيليبس هيو

سأبدأ مع Philips Hue. مثل معظم الأشياء التي تريد التفاعل معها في OpenHAB ، تتطلب مصابيح Hue منك تثبيت ملف ربط - فكر في الارتباطات مثل برنامج تشغيل الجهاز. في وقت كتابة هذا التقرير ، كان هناك حوالي 160 ارتباطًا متاحًا لـ OpenHAB 1 ، ولهذا السبب يعد OpenHAB نظامًا قويًا للغاية - يمكنه التفاعل مع أي شيء ، ويجمع كل أنظمة التحكم المتباينة هذه في واجهة واحدة موحدة. إليك عرضًا توضيحيًا ونظرة عامة سريعة على الخطوات المتضمنة.

يجب أولاً تنزيل الروابط ، وأسهل طريقة للقيام بذلك على Pi هي استخدام apt-get ، ثم فرض الملكية على مستخدم openhab.

sudo apt-get install openhab-addon-binding-hue
sudo chown -hR openhab:openhab /usr/share/openhab

بعد ذلك ، عليك إخبار OpenHAB بالتحميل في هذا الربط ، وتكوين أي متغيرات مطلوبة. استعرض للوصول إلى مجلد التكوينات وقم بعمل نسخة منه openhab-default.cfg ، تسميته openhab.cfg . افتح ذلك ، ابحث عن مسحة واستبدل القسم بأكمله بالكود التالي. الشيء الوحيد الذي تحتاج إلى تغييره هو قيمة IP للجسر الخاص بك - إذا كنت لا تعرف ذلك بالفعل ، فجرّب أداة الاكتشاف عبر الإنترنت. لا تهم القيمة السرية حقًا ، إنها مجرد نوع من اسم المستخدم الذي سيستخدمه OpenHAB لتعريف نفسه بالجسر.

معلومات سريعة : لتمكين السطر ، ما عليك سوى إزالة # من البداية. افتراضيًا ، يتم تعطيل السطر الذي يحدد عنوان IP للجسر (أو 'تم التعليق عليه' تقنيًا). أيضًا ، إذا كنت تحاول تكوينًا بديلًا ، فقد يكون من المفيد نسخ السطر الحالي ووضع # في البداية لتمييزه كتعليق ، حتى تتمكن من الرجوع بسهولة إذا ساءت الأمور.

################################ HUE Binding ######################################### # IP of the Hue bridge
hue:ip=192.168.1.216
hue:secret=makeuseofdotcom
hue:refresh=10000

حفظ وخروج. مثل أي تطبيق Hue تابع لجهة خارجية ، ستحتاج إلى الموافقة على OpenHAB على جسر Hue بالضغط على الزر الموجود في المقدمة - ما عليك سوى القيام بذلك مرة واحدة. سترى رسالة حول في انتظار الاقتران إذا كنت تقوم بتلبيس ملف السجل ، ولكن إذا نسيت أو فاتك العد التنازلي ، فما عليك سوى إعادة تعيين Pi - ستحصل على مؤقت 100 ثانية من وقت بدء ربط Hue. تأكد من نجاح الاقتران قبل المتابعة.

بعد ذلك ، افتح ملف home.items الملف ، الذي سنضيف إليه بعض لمبات Hue. فيما يلي مثال على تعريف العنصر:

Color Bedroom_Hue 'Bedroom Hue' (Bedroom) {hue='1'}
  • ال لون كلمة تحدد نوع السيطرة التي لدينا على هذا العنصر. مصابيح RGB Hue هي 'Color' ، نظرًا لأن لدينا تحكمًا كاملاً في الألوان بها. قد تكون الأضواء الأخرى مجرد مفتاح.
  • التالي هو الاسم الرمزي للعنصر: اخترت غرفة نوم_هوي ، ولكن كل شيء على ما يرام حرفياً - مجرد شيء وصفي يبدو طبيعياً بالنسبة لك ، لأنك ستحتاج إلى تذكره لاحقًا عند إنشاء خريطة الموقع. يجب ألا يحتوي الاسم الرمزي على مسافات.
  • بين علامات الاقتباس هو التسمية. منطقتنا بسيطة في هذه الحالة ، ولكن بالنسبة لبعض العناصر مثل درجة الحرارة أو شيء يُبلغ عن قيمة ، ستضيف بعض التعليمات البرمجية الخاصة التي تخبرها بكيفية عرض هذه القيمة أو استخدام ما تحول. التسمية للواجهة ، ويمكن أن تحتوي على مسافات.
  • يوجد بين قوسي الزاوية اسم الأيقونة. ستجد جميع الرموز المتاحة في مشاركة OpenHAB ، ضمن ملف webapps / الصور الدليل. هناك بالفعل مجموعة كاملة من أيقونات التدرج التي تمثل سطوعًا مختلفًا أو تشغيل / إيقاف. ما عليك سوى تحديد اسم الرمز الأساسي - سيعرف OpenHAB تلقائيًا البحث عن رموز التشغيل / الإيقاف المختلفة إذا كان هذا عنصرًا تم تبديله. هذا اختياري.
  • في الأقواس المستديرة ، نخبرها عن المجموعات التي يجب أن تكون جزءًا منها - في هذه الحالة ، فقط غرفة نوم مجموعة.
  • أخيرًا وبشكل حاسم ، نقوم بتوصيل العنصر بالربط المناسب بأي متغيرات مطلوبة. في هذه الحالة ، فإن مسحة ملزم ، ورقم اللمبة هو 1. يمكنك العثور على الرقم من خلال فتح تطبيق Hue الرسمي والنظر إلى علامة تبويب الأضواء. كل لمبة لها رقم فريد.

لقد أضفت ما مجموعه أربع لمبات ، بالإضافة إلى إعلان بسيط للمجموعات التي سنتوسع فيها لاحقًا. ها هو بلدي الكامل home.items عند هذه النقطة:

Group Bedroom
Group Office
Group Kai
Group Living_Room
Group Cinema
Group Secret
Group Lights /* Lights */
Color Bedroom_Hue 'Bedroom Hue' (Bedroom,Lights) {hue='1'}
Color Office_Hue 'Office Hue' (Office, Lights) {hue='2'}
Color Secret_Hue 'Secret Hue' (Secret, Lights) {hue='3'}
Color Kai_Hue 'Kai's Hue' (Kai, Lights) {hue='4'}

ال / * أضواء * / النص مجرد تعليق ، وليس له وظيفة سوى مساعدتنا في فحص الملف لاحقًا عندما يكبر. الآن قمنا بإضافة الأجهزة ، ولكن فتح http: //raspberrypi.local: 8080 /؟ sitemap = الصفحة الرئيسية يؤدي إلى واجهة فارغة - بالطبع ، لأننا لم نقم بالفعل بإنشاء عناصر واجهة في خريطة الموقع حتى الآن. لنبدأ بالفعل بسيطًا الآن. افتح الصفحة الرئيسية .

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

sitemap home label='My Home'
{
Frame {
Group item=Lights label='All lighting' icon='hue'
Group item=Bedroom label='Bedroom' icon='bedroom'
Group item=Office label='Office' icon='desk'
}
}

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

انقر فوق كل الإضاءة لرؤية كل ضوء Hue ، نظرًا لأننا حددناهم جميعًا على أنهم ينتمون إلى مجموعة الأضواء الشاملة هذه.

لاحظ أن عنصر Office Hue يُعرض بأيقونة مختلفة - وذلك لأن مصباح مكتبي قيد التشغيل بالفعل ، و OpenHAB يعرف ذلك عندما تحدث إلى جسر Hue وكان ذكيًا بدرجة كافية لضبط الرمز على إصدار الملف 'تشغيل'. لسوء الحظ ، لا يعكس اللون ، ولكن إذا كان لديك تطبيق جوال مثبتًا ، فسيعكس ذلك اللون الحالي.

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

الوصول عن بعد و IFTTT مع My.OpenHAB

الآن ، يجب أن تكون على نفس الشبكة المحلية للوصول إلى نظام OpenHAB الخاص بك ، ولكن ماذا لو كنت تريد التحكم في أجهزتك والتحقق من أجهزة الاستشعار عندما تكون خارج نطاق شبكة Wi-Fi الخاصة بك؟ لذلك سنحتاج إلى إعداد الوصول عن بُعد - وسنفعل ذلك بالطريقة السهلة ، مع خدمة الويب My.OpenHAB [إزالة عنوان URL المكسور] ، والتي تتجاوز الحاجة إلى العبث بإعادة توجيه المنفذ وتكوينات جهاز التوجيه. على سبيل المكافأة ، تحتوي خدمة My.OpenHAB أيضًا على قناة IFTTT ، مما يمنحك إمكانيات لا حصر لها للتحكم عن بُعد والأتمتة.

أولاً: تثبيت التجليد. نصيحة سريعة: إذا كنت لا تعرف الاسم الدقيق لحزمة تثبيت معينة ، فحاول البحث عنها باستخدام apt-cache.

sudo apt-get install openhab-addon-io-myopenhab
sudo chown -hR openhab:openhab /usr/share/openhab

قبل أن تتمكن من التسجيل في موقع My.OpenHAB ، ستحتاج إلى إنشاء مفتاح سري والعثور على UUID الخاص بك ، والذي يحدد بشكل فريد التثبيت الخاص بك. تحقق تحت مشاركة OpenHAB الرئيسية -> تطبيقات الويب -> ثابتة ويجب أن تجد ملف UUID يحتوي على معرفك الفريد. في هذه المرحلة ، اكتشفت أن Pi كان يستخدم إصدارًا قديمًا من Java لا يقوم بإنشاء المفتاح السري بشكل صحيح. نوع

java -version

للتأكد. إذا لم يذكر 1.7 أو أعلى ، فلديك الإصدار الخطأ. من الغريب أن أحدث إصدار من Raspbian يأتي مع Oracle Java 8 مثبتًا ، ولكن لم يتم تعيينه كإعداد افتراضي.

sudo update-بدائل --config java

كيف تجد كلاب للبيع

اختر الخيار الذي يشير إلى jdk-8-أوراكل ، ثم أعد تشغيل OpenHAB. المكافأة: Oracle Java 8 أسرع من OpenJDK الافتراضي!

الآن يجب أن تجد أيضًا ملفًا سريًا في ملف webapps / ثابت مجلد. افتح كلا الملفين سر و uuid ، وكن جاهزًا لنسخ اللصق.

انتقل الآن لإنشاء حساب My.OpenHAB ، باستخدام هذه التفاصيل ، ثم عد - ستحتاج أيضًا إلى تأكيد بريدك الإلكتروني قبل أن يعمل أي شيء. هناك بضع خطوات أخرى لهذه الخطوة. أولاً ، نحتاج إلى تعيين محرك الثبات الافتراضي على myopenhab (المثابرة شيء يستخدم في دليل لاحق ، ولكن بغض النظر ، نحتاج إلى إعداد شيء أساسي من أجل 'تصدير' بياناتنا إلى الخدمة عبر الإنترنت وجعلها مرئية لـ IFTTT) . للقيام بذلك ، افتح openhab.cfg ، وابحث عن المتغير الذي يقول المثابرة: الافتراضي = وتغييره إلى المثابرة: افتراضي = myopenhab . يحفظ.

أخيرًا ، قم بإنشاء ملف جديد بتنسيق التكوينات / المثابرة مجلد يسمى عضلي عضلي ، والصق القاعدة التالية.

Strategies {
default = everyChange
}
Items {
* : strategy = everyChange
}

لست بحاجة إلى فهم هذا في الوقت الحالي ، ولكن تعلم أنه يقول 'احفظ كل حالة عنصر عندما تتغير'.

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

مستشعر وجود البلوتوث باستخدام REST

منذ فترة وجيزة ، أوضحت لك كيفية عمل قفل تلقائي لباب المكتب باستخدام مسح Bluetooth لاكتشاف وجود المستخدم - كنت أرغب في إحضار شيء من هذا القبيل إلى OpenHAB.

على أي نظام أساسي بخلاف Raspberry Pi ، سيكون هذا أمرًا بسيطًا بفضل ربط Bluetooth الجاهز ؛ لسوء الحظ ، لا يعمل على Pi نظرًا لوجود ملف Java مهم يحتاج إلى إعادة تجميعه من أجل بنية ARM ، وإضافته إلى الربط ، ثم إعادة إنشاء الربط. يكفي القول ، لقد حاولت ذلك ، وكان الأمر معقدًا بشكل بشع ولم ينجح. ومع ذلك ، هناك حل أسهل بكثير يعمل أيضًا كمقدمة جيدة لقابلية التوسع الهائلة لـ OpenHAB: سنقوم ببساطة بتكييف نص Python السابق لجعله يقدم تقريرًا مباشرةً إلى واجهة OpenHAB RESTful.

جانبا: واجهة RESTful تعني أنه يمكنك التفاعل مع نظام باستخدام خادم الويب المدمج ، ببساطة عن طريق الاتصال بعناوين URL وتمرير البيانات أو جلبها. يمكنك زيارة عنوان URL هذا لمشاهدة مثال بسيط على ذلك على الخادم الخاص بك: http: //raspberrypi.local: 8080 / rest / items - والذي ينتج عنه قائمة مشفرة لجميع العناصر المحددة الخاصة بك. هذا قوي بشكل لا يصدق ، لأنه يعرض الإمكانات الكاملة لـ OpenHAB ويسمح لك بكتابة واجهات مخصصة ؛ أو العكس المستخدم ، للإبلاغ عن حالة المستشعرات دون وجود ارتباط محدد. سنستخدم هذه الإمكانية للإبلاغ عن وجود جهاز Bluetooth معين دون اللجوء إلى ربط Bluetooth.

ابدأ بإضافة ملف يحول عنصر لك home.items ملف. لقد اتصلت بي 'JamesInOffice' ، وقمت بجعله مفتاحًا بدلاً من جهة اتصال بسيطة للتشغيل / الإيقاف حتى أتمكن من التحكم يدويًا في تواجدي في حالة وفاة هاتفي.

Switch JamesInOffice 'James in Office' (Office)

لاحظ أنني لم أقم بتعريف رمز أو ربط ارتباط معين. إنه مجرد مفتاح عام.

بعد ذلك ، أدخل دونجل USB Bluetooth متوافقًا ، وقم بتثبيت بعض الأدوات الأساسية للتفاعل معه.

sudo apt-get install bluez python-bluez python-pip
sudo pip install requests
hcitool dev

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

wget https://pybluez.googlecode.com/svn/trunk/examples/simple/inquiry.py
python inquiry.py

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

من الدليل الرئيسي لمستخدم Pi الخاص بك ، قم بإنشاء برنامج نصي جديد لـ Python و الصق هذا الرمز .

هناك بعض الأشياء التي ستحتاج إلى تعديلها ، بدءًا من عنوان جهازك المحدد:

result = bluetooth.lookup_name('78:7F:70:38:51:1B', timeout=5)

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

r = requests.put('http://localhost:8080/rest/items/JamesInOffice/state',data=payload)

الخطوة الأخيرة هي إخبار هذا البرنامج النصي بالتشغيل في وقت التمهيد.

sudo nano /etc/rc.local

قم بالتمرير لأسفل إلى أسفل وقبل الخروج 0 مباشرة ، أضف الأسطر التالية:

python /home/pi/detect.py &

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

تطبيق OpenHAB للهواتف المحمولة

على الرغم من أنه يمكنك بالطبع استخدام واجهة الويب من جهاز محمول ، فإن OpenHAB لديه تطبيقات أصلية لكليهما دائرة الرقابة الداخلية و ذكري المظهر - وهم يبدون أ قطعة أرض أجمل من واجهة المتصفح الافتراضية. في شاشة الإعدادات ، أدخل عنوان URL المحلي كعنوان IP الداخلي الذي كنت تستخدمه حتى الآن ، بما في ذلك رقم المنفذ. بالنسبة لعنوان URL البعيد ، أدخل https://my.openhab.org ، واسم المستخدم (البريد الإلكتروني) وكلمة المرور اللذين أدخلتهما عند التسجيل. إذا لم تكن قد قمت بالتسجيل في MyOpenHAB حتى الآن ، فما عليك سوى ترك المصادقة وعنوان URL البعيد فارغين ، ولكنك ستصل إلى نظامك فقط من شبكة Wi-Fi المحلية.

المضي قدما والحصول على المساعدة

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

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

ابق على اتصال مع MakeUseOf للحصول على دليل متقدم يغطي Z-Wave وغيرها من الحيل الرائعة التي يمكنك إعدادها.

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

يشارك يشارك سقسقة بريد الالكتروني 5 نصائح لزيادة كفاءة أجهزة VirtualBox Linux الخاصة بك

هل سئمت من الأداء الضعيف الذي تقدمه الأجهزة الافتراضية؟ إليك ما يجب عليك فعله لتعزيز أداء VirtualBox الخاص بك.

اقرأ التالي
مواضيع ذات صلة
  • افعلها بنفسك
  • المنزل الذكي
  • أتمتة المنزل
  • وثيقةطويلة
  • دليل Longform
  • محاور ذكية
نبذة عن الكاتب جيمس بروس(تم نشر 707 مقالات)

جيمس حاصل على درجة البكالوريوس في الذكاء الاصطناعي وهو معتمد من CompTIA A + و Network +. عندما لا يكون مشغولاً كمحرر مراجعات الأجهزة ، فإنه يستمتع بألعاب LEGO و VR وألعاب الطاولة. قبل انضمامه إلى MakeUseOf ، كان فني إضاءة ومدرس لغة إنجليزية ومهندس مركز بيانات.

المزيد من James Bruce

اشترك في نشرتنا الإخبارية

انضم إلى النشرة الإخبارية لدينا للحصول على نصائح تقنية ومراجعات وكتب إلكترونية مجانية وصفقات حصرية!

انقر هنا للاشتراك