בדיקת טמפרטורה בדוד - מאיפה מתחילים?

בית חכם, עוזרות חכמות, חשמל חכם, מערכות שליטה ובקרה, Amazon Echo, Alexa, Google home, Control4, RTI, מנעולים חכמים ועוד.
שלח תגובה
razserv2010 פותח השרשור
חבר פעיל במיוחד
חבר פעיל במיוחד
תגובות: 806
הצטרף: אוקטובר 2013
נתן תודות: 114 פעמים
קיבל תודות: 67 פעמים

שליחה #1 

יש לי כבר מוצרים של shelly שמותקנים בבית
האם זה יעבוד?
https://shop.shelly.cloud/temperature-s ... mation#315
איפה בדיוק שמים אותו בדוד?

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

שליחה #2 

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

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

שליחה #3 

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

razserv2010 פותח השרשור
חבר פעיל במיוחד
חבר פעיל במיוחד
תגובות: 806
הצטרף: אוקטובר 2013
נתן תודות: 114 פעמים
קיבל תודות: 67 פעמים

שליחה #4 

@jagheadg
.
מעניין.. השאלה היא כמה זה באמת מדייק

@Catskinner
·
לא הבנתי מה עשית בשביל למדוד טמפרטורה של הדוד?

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

שליחה #5 

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

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

שליחה #6 

@Catskinner
·יש מצב שאתה משתף את הrule?

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

שליחה #7 

@razserv2010
·המטרה שלי היא להחליט האם להדליק את הדוד או לא ובשביל זה אני לא צריך למדוד את הטמפרטורה של המים בדוד כי עם מערכת סולארית זה פשוט פונקציה של כמה אנשים יש בבית, מה העונה ומה הטמפרטורה בחוץ.

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

יש עוד כמה התניות, כמו בדיקת נוכחות של באי הבית, בדיקה האם האוטומציה של הדוד בכלל מופעלת וכו'. שום דבר לא יוצא דופן האמת.

להלן חלק מהקוד המתייחס אלי. יש עוד מקטעים שלא אפרסם המתייחסים ליתר בני הבית.





[left]
rule "Switch Boiler ON for 60mn"
when
Item Boiler60M received command //operate the boiler through a virtual switch with a 60 minutes countdown timer enabled by the expire binding
then
switch (receivedCommand) {
case ON : {
sendCommand(Boiler,"ON")

}
case OFF : {
sendCommand(Boiler,"OFF")

}
}
end

rule "Automate Boiler for Claude at 04:00"
when
Time cron "0 0-15 4-4 ? * SUN,MON,TUE,WED,THU *" // every minute between :00 and :15, every hour at 04:00 local time, on every Sunday, Monday, Tuesday, Wednesday and Thursday, every month
then
// 1. determine if you need to run at all and if not exit
if (ClaudeHome.state == OFF) {
logInfo("boiler.rules", "Claude isn't home. No further action.")
return;
}
if ((Netatmo_Outdoor_Temperature.state as DecimalType).intValue > 20.0) {
logInfo("boiler.rules", "Current outside temperature (" + Netatmo_Outdoor_Temperature.state.toString + "C) is higher than 20.0C. No further action.")
return;
}
if (Boiler.state == ON) {
logInfo("boiler.rules", "The boiler is alreay switched on. No further action.")
return;
}
if (AutBoiler.state == OFF) {
logInfo("boiler.rules", "The boiler automation is switched off. No further action.")
return;
}

// 2. calculate what needs to be done
var Number newState
if (Boiler.state != ON) {
newState=ON // Set a local variable to use later every minute to check that the boiler is still on
}
if (newState == ON && Boiler.state == ON) {
logInfo("boiler.rules", "The boiler is already switched on. No further action")
return;
}

// 3. do it switch the boiler on for 60 minutes
if (newState == ON && Boiler.state != ON) {
logInfo("boiler.rules", "Boiler is currently off. A Command to switch it on was sent")
Boiler60M.sendCommand(ON) //Send a ON command to the 60 minutes virtual switch timer.
}
end

rule "Automate Boiler for Claude at 05:00"
when
Time cron "0 0-15 5-5 ? * SUN,MON,TUE,WED,THU *" // every minute between :00 and :15, at 05:00 local time, on every Sunday, Monday, Tuesday, Wednesday and Thursday, every month
then
// 1. determine if you need to run at all and if not exit
if (ClaudeHome.state == OFF) {
logInfo("boiler.rules", "Claude isn't home. No further action.")
return;
}
if ((Netatmo_Outdoor_Temperature.state as DecimalType).intValue > 25.0) {
logInfo("boiler.rules", "Current outside temperature (" + Netatmo_Outdoor_Temperature.state.toString + "C) is higher than 25.0C. No further action.")
return;
}
if (Boiler.state == ON) {
logInfo("boiler.rules", "The boiler is alreay switched on. No further action.")
return;
}
if (AutBoiler.state == OFF) {
logInfo("boiler.rules", "The boiler automation is switched off. No further action.")
return;
}

// 2. calculate what needs to be done
var Number newState
if (Boiler.state != ON) {
newState=ON // Set a local variable to use later every minute to check that the boiler is still on
}
if (newState == ON && Boiler.state == ON) {
logInfo("boiler.rules", "The boiler is already switched on. No further action")
return;
}

// 3. do it switch the boiler on for 60 minutes
if (newState == ON && Boiler.state != ON) {
logInfo("boiler.rules", "Boiler is currently off. A Command to switch it on was sent")
Boiler60M.sendCommand(ON) //Send a ON command to the 60 minutes virtual switch timer.
}
end[/left]
מעצבן אותי כשאומרים "אני ילך, אני יקנה". מעצבן אותי עוד יותר כשכותבים את זה.

שלח תגובה

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