החורף קרב, Winter is coming! הגיע הזמן לטפל בתאורת החירום.

בית חכם, עוזרות חכמות, חשמל חכם, מערכות שליטה ובקרה, Amazon Echo, Alexa, Google home, Control4, RTI, מנעולים חכמים ועוד.
שלח תגובה
Catskinner פותח השרשור
סמל אישי של משתמש
חבר במועדון HT
חבר במועדון HT
תגובות: 16019
הצטרף: נובמבר 2006
מיקום: הוד השרון
נתן תודות: 123 פעמים
קיבל תודות: 940 פעמים

שליחה #1 

בא לי הרעיון לשתף משתמשים אחרים בכל מיני טריקים שעוזרים להפוך את הבית לבאמת חכם ולא סתם לבית שבו אפשר לשלוט על אביזרים מרחוק. ההשקפה שלי היא שתמיד עדיף להכניס את החוכמה לבית ולא לסמוך על שירותים חיצוניים ובוא החורף נתן לי הזדמנות טובה להדגים זאת בקטנה.

יש לי במטבח גוף תאורת חירום גדול של 120 לדים ובכל חורף אני מגלה שהמצברים התרוקנו ואי אפשר להטעין אותם מחדש. כמובן שמקור הבעיה זה אני שעצלן ולא עוקב אחר ההוראות המנחות לפרוק את הסוללות אחת ל 3 חודשים כדי לשמור על תקינות ההטענה.

אבל בשביל מה יש בית חכם אם זה לא בשביל לדאוג לכל המטלות המייגעות האלו? כל מה שצריך זה שקע חכם, חיבור למערכת בית חכם וכמה שורות קוד.

ראשית, אנחנו צריכים שקע חכם. היה לי שקע Z-Wave שפעם חובר למנורת לילה והחלטתי שהוא יהיה מעולה למטרה שלי.
[imgurpng]AYOjmwu[/imgurpng]

אחר כך צריך להחליט באיזה תדירות לפרוק את מצבר התאורה ולכמה זמן. שרירותית החלטתי שפעם בחודש נפסיק את החשמל לאותו שקע שאליו התאורה מחוברת למשך 4 שעות, לדעתי זה די והותר ולכן גם נבחר יום ושעה שבהם הדלקת תאורת החירום לא תפריע לאף אחד - נניח ביום שבת בשעה 5 בבוקר.

לשקע עצמו אין שום פרמטרים המגדירים תזמונים, מכאן שצריך כבר לכתוב קצת קוד. אני עובד עם openHAB אבל העקרון אמור להיות אפשרי ליישום בכל מערכת שיש לה שפת סקריפט לכתיבת חוקים. אז בוא נתחיל:

ראשית קביעת התדירות, את זה נעשה באמצעות פקודת cron

קוד: בחירת הכל

rule "Emergency Lights Schedule"
when
    Time cron "0 0 5 ? * 7L *"   // At 05:00:00am, the last Saturday of the month, every month
אחר כך נבדוק אם בכלל צריך להמשיך עם ביצוע החוק. כאן מגיע החלק שבו נציב את כל התנאים שאם הם מתקיימים אין צורך להמשיך בביצוע החוק. במקרה שלי התנאי היחיד שחשבתי עליו זה שאולי התאורה כבר דולקת?

קוד: בחירת הכל

then
    // 1. determine if you need to run at all and if not exit
   	
	if (EmergencyLamp.state == OFF ) {
        logInfo("Emergency Light.rule", "The emergency power outlet is already switched off. No further action.")
        return;
	}
ה return בסוף עוצר את הפעלת החוק כך שהוא לא מגיע כלל לחלקים המפעילים את הטיימר. במקרה שלי אני משתמש בטיימר שקראתי לו Emergency4H.

ה Emergency4H הוא סוויץ וירטואלי המחובר לטיימר (קיים ב openHAB תחת Expiry Binding) שלו אפשר לקבוע משך זמן שבו הסוויץ פעיל. במקרה שלי מדובר בטיימר של 4 שעות.

ועכשיו ההפעלה של הטיימר:

קוד: בחירת הכל

Emergency4H.sendCommand(ON)
    logInfo("Emergency Light.rule","A command to switch off the power outlet for 4Hr was sent")

מהרגע שהסוויץ הווירטואלי החליף מצב, כל מה שנותר לנו לעשות זה לזהות את החלפת המצב ולנתק את אספק החשמל לגוף התאורה אם הטיימר במצב ON ולהחזיר את אספקת החשמל לגוף התאורה ברגע שהטיימר מסיים וחוזר ל OFF.

קוד: בחירת הכל

rule "Switch OFF the emergency power outlet"
when
	Item Emergency4H changed to ON//Watch when the emergency power outlet OFF timer is switched to ON for 240 minutes by the expire binding
then
	Emergency4H.sendCommand(OFF)
end	

rule "Switch ON the emergency power outlet"
when
	Item Emergency4H changed to OFF//Watch when the emergency power outlet OFF timer is switched back to OFF by the expire binding
then
	EmergencyLamp.sendCommand(ON)
end	
אם הגעתם עד כאן ומחלחל אליכם לראש שעם קצת שינויים אפשר לנהל כך גם תזמונים אוטומטיים עבור דוד המים אז אתם צודקים. אבל על זה נדבר בפעם אחרת.

jagheadg
חבר ותיק
חבר ותיק
תגובות: 1185
הצטרף: דצמבר 2010
מיקום: כפר הדרדסים
נתן תודות: 63 פעמים
קיבל תודות: 100 פעמים

שליחה #2 

מעניין שזה בדיוק מה שאני עושה אצלי עם OH כבר כמה חודשים לתאורת החירום.
רק לפשט את התהליך יצרתי cron rule אחד לכיבוי ב 1 לפנות בוקר ואחד נוסף להדלקה בשעה 6 בבוקר. בלי טיימר.

Catskinner פותח השרשור
סמל אישי של משתמש
חבר במועדון HT
חבר במועדון HT
תגובות: 16019
הצטרף: נובמבר 2006
מיקום: הוד השרון
נתן תודות: 123 פעמים
קיבל תודות: 940 פעמים

שליחה #3 

האמת שאני לא אוהב לעבוד עם cron ומתי שאפשר אני מעדיף להשתמש ב Expire Binding ובסוויצים ווירטואלים. אבל גם הפתרון שלך יעבוד יפה וכנראה שגם עם פחות שורות.
מעצבן אותי כשאומרים "אני ילך, אני יקנה". מעצבן אותי עוד יותר כשכותבים את זה.

jagheadg
חבר ותיק
חבר ותיק
תגובות: 1185
הצטרף: דצמבר 2010
מיקום: כפר הדרדסים
נתן תודות: 63 פעמים
קיבל תודות: 100 פעמים

שליחה #4 

@Catskinner
·
התמונה ששמת למעלה, זה שקע zwave או סתם תמונה?
אם זה zwave, איפה קונים כזה?

HarelM
חבר פעיל
חבר פעיל
תגובות: 68
הצטרף: יולי 2018
נתן תודות: 4 פעמים
קיבל תודות: 9 פעמים

שליחה #5 

jagheadg כתב:@Catskinner
·
התמונה ששמת למעלה, זה שקע zwave או סתם תמונה?
אם זה zwave, איפה קונים כזה?
...
יש אחד של Neo coolcam שאפשר למצוא גם באיביי וגם באליאקספרס, תחפש GC00AM NAS-WR01ZE.

Catskinner פותח השרשור
סמל אישי של משתמש
חבר במועדון HT
חבר במועדון HT
תגובות: 16019
הצטרף: נובמבר 2006
מיקום: הוד השרון
נתן תודות: 123 פעמים
קיבל תודות: 940 פעמים

שליחה #6 

jagheadg כתב:@Catskinner
·
התמונה ששמת למעלה, זה שקע zwave או סתם תמונה?
אם זה zwave, איפה קונים כזה?
...
·

זה שקע Z-Wave של חברה בשם BeNext. הוא נרכש בזמנו מ Vesternet אבל הם כבר לא משווקים אותו די הרבה זמן.

jagheadg
חבר ותיק
חבר ותיק
תגובות: 1185
הצטרף: דצמבר 2010
מיקום: כפר הדרדסים
נתן תודות: 63 פעמים
קיבל תודות: 100 פעמים

שליחה #7 

@Catskinner
·
תודה. חשבתי אולי זה יהיה יותר זול מהפלאגים הרגילים שכולם מוכרים (הוא נראה קומפקטי) ואחרי שקראתי עליו (זה דימר עד 150W) וראיתי את המחיר ויתרתי.

קצת מחוץ לנושא:
אתה משתמש באפליקציה של OH באנדרואיד עם עברית?

תרגום:
https://www.hometheater.co.il/vp2758748#2758748

גרסת בטא אחרונה:
https://github.com/openhab/openhab-andr ... 2.3.9-beta
נערך לאחרונה על ידי jagheadg ב 02/11/2018 19:06, נערך 2 פעמים בסך הכל.

Chura
סמל אישי של משתמש
חבר מביא חבר
חבר מביא חבר
תגובות: 4777
הצטרף: ינואר 2005
מיקום: Privilege 15
נתן תודות: 162 פעמים
קיבל תודות: 278 פעמים

שליחה #8 

קצת Off Topic אבל תיאורת חירום מומלצת ?
Configure Terminal
Write Erase
reload
(6)

ahiel
חבר ותיק
חבר ותיק
תגובות: 1306
הצטרף: פברואר 2016
נתן תודות: 40 פעמים
קיבל תודות: 110 פעמים

שליחה #9 

@Catskinner
·הייתי מגדיר על הסוויצ׳ עצמו כבר את הטיימר שברגע שמכבים אותו הוא נדלק אחרי 4 שעות, זה יחסוך הרבה קוד..

Catskinner פותח השרשור
סמל אישי של משתמש
חבר במועדון HT
חבר במועדון HT
תגובות: 16019
הצטרף: נובמבר 2006
מיקום: הוד השרון
נתן תודות: 123 פעמים
קיבל תודות: 940 פעמים

שליחה #10 

@jagheadg
·אני אלרגי לעברית בממשקי תוכנה. אני יודע שהשקיעו עבודה בתרגום הממשק של ה Basic UI לעברית אבל אין לי מושג מה עשו עם האפליקציה.

Catskinner פותח השרשור
סמל אישי של משתמש
חבר במועדון HT
חבר במועדון HT
תגובות: 16019
הצטרף: נובמבר 2006
מיקום: הוד השרון
נתן תודות: 123 פעמים
קיבל תודות: 940 פעמים

שליחה #11 

@ahiel
·יש בעיה עם ה Expiry Binding שתגרום לאיתחול מחדש של הטיימר בכל פעם שהפלאג ו openHAB יחליפו ביניהם מסרים. לכן עדיף להפעיל את הטיימר על סוויץ ווירטואלי שאינו מנהל דו-שיח תמידי על מזג האוויר ברשת ה Z-Wave ולעקוב על החלפת המצב שלו.

ahiel
חבר ותיק
חבר ותיק
תגובות: 1306
הצטרף: פברואר 2016
נתן תודות: 40 פעמים
קיבל תודות: 110 פעמים

שליחה #12 

@Catskinner
·אגב קוד קצת יותר קצר...:

קוד: בחירת הכל

 rule "emergency light timer on-off"
 when
   Item Emergency4H changed
 then
   sendCommand(EmergencyLight, Emergency4H.state.toString)
 end

שלח תגובה

חזור אל “בית חכם ובקרה”