गृह स्वचालन प्रणाली eHouse के लिए अपने स्वयं के नियंत्रण एल्गोरिदम बनाने के रूप में

बिल्डिंग प्रबंधन eHouse आप अपने खुद के उपरिशायी (आवेदन एक पीसी पर जो प्रणाली eHouse सर्वर चल रहा है) बनाने की अनुमति देता है , जो इसे आसान बनाने के लिए अपने व्यक्तिगत प्रोग्रामिंग एल्गोरिदम डेल्फी के लिए हमारे सॉफ्टवेयर EhouseLogAnalizer टेम्पलेट का उपयोग करता है . इस सॉफ्टवेयर में चर्चा की गई है ” लॉग विश्लेषक स्मार्ट घर eHouse ” प्रणाली eHouse की कार्यक्षमता का एक विस्तार गृह स्वचालन .
आज 'की स्थिरता के साथ ; एस पीसी , और Windows बुद्धिमान घर प्रबंधन सॉफ्टवेयर eHouse की निर्बाध और निरंतर आपरेशन भी आवेदन द्वारा निगरानी KillExec हो सकता है . exe .
आवेदन त्रुटि के निलंबन के मामले में बंद है और उपयोगकर्ता के हस्तक्षेप प्रणाली के बिना फिर से शुरू .
Windows और प्रणाली eHouse निरंतरता के उचित पीसी पर कई महीनों के लिए स्मार्ट घर सॉफ्टवेयर काम कर सकते हैं .
उचित लेखन सॉफ्टवेयर स्मार्ट घर नियंत्रण प्रणाली अनुक्रमिक परीक्षण eHouse बदलने (माप की आवश्यकता है और उचित नियंत्रण घटनाओं को भेजने के लिए आवश्यक अगर – समय) .
जब अपने ही नियंत्रण एल्गोरिदम लिखने के लिए सॉफ्टवेयर बनाने – उदाहरण के लिए: घटना के पूरा करने के लिए अचेतना में बार – बार एक ही घटना नहीं भेज attesting झंडे , हर 2 सेकंड के अंधा कर रही है कि पहले से ही बंद कर रहे हैं बंद .
आवेदन कई टाइमर को सौंपा जा सकता है:
पहले – डेटा चालक 10 सेकंड अद्यतन के रूप में अग्रणी .
एक और – मूल्यों के साथ â € <â € <घटना की परिवर्तनशीलता के आधार पर:
जैसे . अंधा की नियंत्रण के लिए , बाहरी तापमान और प्रकाश का स्तर के लिए awnings कुछ मिनट हो सकता है .
ड्राइव नियंत्रण अंधा कर रही है के मामले में , फाटकों , मार्की , विंडोज़ , आदि . ईख स्मार्ट घर नियंत्रक eHouse डिजिटल आदानों से जुड़ा जा सकता है , उनके पास सबूत और इनपुट डेटा RoomManager के राज्य पर नियंत्रण अभियानों , जो बहुत अच्छा और ध्वज सॉफ्टवेयर से सच्ची है , जिसका मूल्य गलत सॉफ्टवेयर कीड़े या त्रुटियों को ड्राइव करने के लिए कारण (नहीं बंद करने का एक परिणाम के रूप में सेट किया जा सकता है , मशीनी , खंड , आदि . ) .

उदाहरण आवेदन eHouseLogAnalizer में नियंत्रकों से डेटा का उपयोग (दोहराव अंतराल पर हर कुछ सेकंड ऑपरेटिंग loops में) .

/ / नियंत्रक बायलर HeatManagera से डेटा इनिशियलाइज़
TzewnetrznaPN: = HADC [HM_ZEWNPN] ; / बाहरी / तापमान उत्तर
TemperaturaGWC: = HADC [HM_GWC] ; / GWC के लिए / तापमान – ग्राउंड अच्छा हो जानेवाला के लिए गर्मी eXchanger
TemperaturaKominekPlaszcz: = HADC [HM_KOM1] ; / / चिमनी 1 सेंसर में पानी का तापमान
TemperaturaKominekKonvekcja: = HADC [HM_KOMKONV] ; / / तापमान संवहन चिमनी – चिमनी के वास्तविक कार्य की चिमनी पर सेंसर
TemperaturaKominekPlaszcz: = HADC [HM_KOM2] ; / / आग पानी जैकेट तापमान 2 सेंसर – (बैकअप)
TemperaturaWewnÄ ™ trzna: = HADC [HM_TWEWN] ; / / आंतरिक कमरे के तापमान – सीओ
TemperaturaSolar: = HADC [HM_SOLAR] ; / तापमान / सौर कलेक्टर पाइप शिखर (गर्म)
TzewnetrznaPD: = HADC [HM_ZEWNPD] ; / / बाहर तापमान दोपहर
Tkociol: = HADC [HM_KOC] ; / / बॉयलर ट्यूब तापमान शिखर (गर्म)
TemperaturaBuforaCODol: = HADC [HM_BANDOL] ; CO / / तापमान / गर्म पानी की टंकी के नीचे
TemperaturaRecuIn: = HADC [HM_REQIN] ; / / इनपुट अच्छा हो जानेवाला तापमान स्वच्छ हवा
TemperaturaRecuOut: = HADC [HM_REQOUT] ; / / आउटपुट हवा के तापमान अच्छा हो जानेवाला घर
TemperaturaZaworTrojDrozny: = HADC [HM_NAG] ; / / तापमान तीन नियंत्रित – एक हीटर के रूप में या radiators के लिए जिस तरह से वाल्व
TemperaturaRecuWyciog: = HADC [HM_REQWYC] ; घर / गंदी हवा / निकालें अच्छा हो जानेवाला तापमान
TemperaturaBuforaCOGora: = HADC [HM_BANGORA] ; हीटिंग / तापमान / / गर्म पानी के टैंक के ऊपर
TemperaturaBuforaCOSrodek: = HADC [HM_BANSRO] ; हीटिंग / तापमान / / गर्म पानी के टैंक केंद्र
/ सेंसरों से RoomManager / माप
TzewWschod: = RMGetTempNr (get_index_rm ( ‘ 55 – 2 ‘ ) , ८) ; / / आरएम नहीं के बाहरी तापमान सेंसर पूर्व . 55 पते के लिए 8 – 2
TzewZachod: = RMGetTempNr (get_index_rm ( ‘ 55 – 3 ‘ ) , ८) ; / नहीं के साथ पश्चिम के बाहर / तापमान सेंसर . 55 पते के साथ आर एम के लिए 8 – 3
TzewPolnoc: = RMGetTempNr (get_index_rm ( ‘ 55 – 4 ‘ ) , ८) ; उत्तर / बाहर / तापमान सेंसर नहीं . 55 पते के साथ आर एम के लिए 8 – 4
TzewPoludnie: = RMGetTempNr (get_index_rm ( ‘ 55 – 5 ‘ ) , ८) ; / दक्षिण बाहर / तापमान सेंसर नहीं . 55 पते के साथ आर एम के लिए 8 – 5
LNaslonecznienieWschod: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 2 ‘ ) , 1) ; / / परिवेश प्रकाश संवेदक के पूर्व के स्तर पर नहीं . 1 से 55 पते के साथ आर एम के लिए – 2
LNaslonecznienieZachod: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 3 ‘ ) , 1) ; / / परिवेश प्रकाश स्तर सेंसर पश्चिम नहीं . 1 से 55 पते के साथ आर एम के लिए – 3
LNaslonecznieniePolnoc: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 4 ‘ ) , 1) ; / / परिवेश प्रकाश स्तर सेंसर उत्तर नहीं . 1 से 55 पते के साथ आर एम के लिए – 4
LNaslonecznieniePoludnie: = RMGetInvPercentNr (get_index_rm ( ‘ 55 – 5 ‘ ) , 1) ; / / परिवेश प्रकाश स्तर सेंसर दक्षिणी नहीं . 1 से 55 पते के साथ आर एम के लिए – 5
SilaWiatru: =: = RMGetPercentNr (get_index_rm ( ‘ 55 – 5 ‘ ) , 7) ; / / परिवेश प्रकाश स्तर सेंसर दक्षिणी नहीं . 1 से 55 पते के साथ आर एम के लिए – 5
नियंत्रण एल्गोरिदम मनमाने ढंग से हो सकता है और मानकों और माप की किसी भी अब तक इस्तेमाल किया है और सेंसर स्थापित कुछ भौतिक मात्रा कर सकते हैं .
/ / धीमी गति पुनरावृत्ति इस तरह के टाइमर में निहित एल्गोरिथ्म . हर 10 मिनट में
ऊर्जा का उदाहरण / / – रोलर shutters और awnings (सूरज के कारण महत्वपूर्ण लागत बचत में जिसके परिणामस्वरूप के कुशल नियंत्रण ' ; सर्दियों में घर में गर्मी रे) और मुफ्त सौर ऊर्जा के संचय
/ / भवन के पूर्वी तरफ सूर्य के प्रकाश के कमरों की नि: शुल्क और पारिस्थितिक हीटिंग
(नहीं RoletyWschod) अगर / फिर / अगर वे अब खुले हैं
अगर (LNaslonecznienieWschod> ; 80) / / फिर अगर सूरज – empirically के मूल्य की जाँच करें.
अगर (महीना < ; ; ) 5 महीने और> ; 8) तो / / यदि सितंबर से अप्रैल महीने
अगर (TzewWschod> ; ) 0 / / तो धूप में तापमान संवेदक गरम 0C की तुलना में अधिक
अगर (समय> ; 8) और (समय < ; ; 11) / / सुबह में तो जब सूरज पूरब से सीधे चमकता
शुरू करना
RoletyWschod = सच ; / / ध्वज shutters पूर्व खोलने के लिए
OtworzRoletyWschod ; / सिस्टम चालकों eHouse एक घटना भेजने के / समारोह
ZamknijMarkizyWschod ; / / कुछ भी नहीं देना होता है क्योंकि सूरज भी कम है
अंत ;
/ / भवन के दक्षिण की ओर पर कमरों की नि: शुल्क और पारिस्थितिक हीटिंग , 'सूरज ; किरणें
अगर (नहीं RoletyPoludnie) / / फिर अगर वे अब खुले हैं
अगर (LNaslonecznieniePolodnie> ; 80) / / फिर अगर सूरज – empirically के मूल्य की जाँच करें.
अगर (महीना < ; ; ) 5 महीने और> ; 8) तो / / यदि सितंबर से अप्रैल महीने
अगर (TzewPoludnie> ; ) 0 / / तो धूप में तापमान संवेदक गरम 0C की तुलना में अधिक
अगर (घंटा> ; 10) और (समय < ; ; 14) / / सुबह में तो जब सूरज सीधे दक्षिण से चमकता
शुरू करना
RoletyPoludnie = सच ; / / बंद दक्षिणी झंडा खोलें
OtworzRoletyPolodnie ; / सिस्टम चालकों eHouse एक घटना भेजने के / समारोह
ZamknijMarkizyPolodnie ; / / कुछ भी नहीं देना होता है क्योंकि सूरज भी कम है
अंत ;
/ / भवन के पश्चिम की ओर पर कमरों की नि: शुल्क और पारिस्थितिक हीटिंग , 'सूरज ; किरणें
(नहीं RoletyZachod) अगर / फिर / अगर वे अब खुले हैं
अगर (LNaslonecznienieZachod> ; 80) / / फिर अगर सूरज – empirically के मूल्य की जाँच करें.
अगर (महीना < ; ; ) 5 महीने और> ; 8) तो / / यदि सितंबर से अप्रैल महीने
अगर (TzewZachod> ; ) 0 / / तो धूप में तापमान संवेदक गरम 0C की तुलना में अधिक
अगर (घंटा> ; 14) और (समय < ; ; 18) / / फिर सुबह में जब सूरज पश्चिम से सीधे चमकता
शुरू करना
RoletyZachod = सच ; / / ध्वज shutters पश्चिमी खोलने के लिए
OtworzRoletyZachod ; / सिस्टम चालकों eHouse एक घटना भेजने के / समारोह
ZamknijMarkizyZachod ; / / कुछ भी नहीं देना होता है क्योंकि सूरज भी कम है
अंत ;
/ / पारिस्थितिक और आर्थिक गर्मियों में सूरज की रोशनी से मुक्त अंतरिक्ष हीटिंग के प्रभाव सीमित – नियंत्रण awnings
/ / शामियाना नियंत्रण – awnings खोलने के लिए सौर विकिरण को कम करने और गर्मियों में घर हीटिंग – पूर्व
अगर (नहीं MarkizaWschodA) / / फिर अगर वे अब खुले हैं
अगर (SilaWiatru < ; ; 5) / / फिर अगर कोई हवा
(अगर (महीना> ; 4) और (महीना < ; ; 9)) / / फिर गर्मियों के महीनों
अगर (LNaslonecznienieWschod> ; 50) तो / / यदि सूर्य चमकता
अगर (समय> ; ) 6 और समय (< ; ; 12) तो / / यदि सुबह के घंटे
अगर (TwewnWschodA> ; 25) तो / / यदि कमरे में भी गर्म है
शुरू करना
MarkizaWschodA = सच ; / / खुले कमरे में एक शामियाना झंडा
OtworzMarkizeWchodA ; / / सिस्टम चालकों eHouse एक घटना भेजें
अंत ;
/ इसी तरह / , आप awnings के स्वतंत्र नियंत्रण के लिए एक अलग मूल्य के लिए एक को बदलने के पूर्वी मुखौटा के अन्य क्षेत्रों में कोड की नकल कर सकते हैं
/ / शामियाना नियंत्रण – awnings खोलने के लिए सौर विकिरण को कम करने और गर्मी की दोपहर में घर हीटिंग
अगर (नहीं MarkizaPoludnieA) / / फिर अगर वे अब खुले हैं
अगर (SilaWiatru < ; ; 5) / / फिर अगर कोई हवा
(अगर (महीना> ; 4) और (महीना < ; ; 9)) / / फिर गर्मियों के महीनों
अगर (LNaslonecznieniePoludnie> ; 50) तो / / यदि सूर्य चमकता
अगर (समय> ; 8) और (समय < ; ; 18) / / फिर अगर घंटे में जो सबसे मुश्किल सूरज दक्षिण से संचालित
अगर (TwewnPoludnieA> ; 25) तो / / यदि कमरे में भी गर्म है
शुरू करना
MarkizaPoludnieA = सच ; / / खुले कमरे में एक शामियाना झंडा
OtworzMarkizePoludnieA ; / / सिस्टम चालकों eHouse एक घटना भेजें
अंत ;
/ इसी तरह / , आप awnings के स्वतंत्र नियंत्रण के लिए एक अलग मूल्य को बदलने दक्षिण ऊंचाई के अन्य क्षेत्रों में कोड की नकल कर सकते हैं
/ / शामियाना नियंत्रण – खुले awnings सौर विकिरण को कम करने के लिए और पश्चिम की ओर की गर्मियों में घर हीटिंग
अगर (नहीं MarkizaZachodA) / / फिर अगर वे अब खुले हैं
अगर (SilaWiatru < ; ; 5) / / फिर अगर कोई हवा
(अगर (महीना> ; 4) और (महीना < ; ; 9)) / / फिर गर्मियों के महीनों
अगर (LNaslonecznieniePoludnie> ; 50) तो / / यदि सूर्य चमकता
अगर (समय> ; 8) और (समय < ; ; 18) / / फिर अगर घंटे में जो सबसे मुश्किल सूरज दक्षिण से संचालित
अगर (TwewnZachodA> ; 25) तो / / यदि कमरे में भी गर्म है
शुरू करना
MarkizaZachodA = सच ; / / खुले कमरे में एक शामियाना झंडा
OtworzMarkizeZachodA ; / / सिस्टम चालकों eHouse एक घटना भेजें
अंत ;
/ इसी तरह / , आप awnings के स्वतंत्र नियंत्रण के लिए एक अलग मूल्य के लिए एक को बदलने के पश्चिमी मुखौटा के अन्य क्षेत्रों में कोड की नकल कर सकते हैं
/ / बंद Marquis भी ज्यादा हवा
अगर (LNaslonecznieniePoludnie < ; ; 20) तो / अगर सूरज चमक नहीं है / (empirically वर्षा और वर्षा के लिए चुना है)
अगर (MarkizaPoludnieA) तो / / यदि खुला शामियाना
शुरू करना
MarkizaPoludnieA झूठी = ; / / ध्वज बदलें
ZamknijMarkizePoludnieA ; / / माइक्रोप्रोसेसर नियंत्रकों eHouse घटनाओं भेजें
अंत ;
अगर (LNaslonecznienieZachod < ; ; 20) तो / अगर सूरज चमक नहीं है / (empirically लिए चुना है)
अगर (MarkizaZachodA) तो / / यदि खुला शामियाना
शुरू करना
MarkizaZachodA झूठी = ; / / ध्वज बदलें
ZamknijMarkizeZachodA ; / / माइक्रोप्रोसेसर नियंत्रकों eHouse घटनाओं भेजें
अंत ;
अगर (LNaslonecznienieWschod < ; ; 20) तो / अगर सूरज चमक नहीं है / (empirically लिए चुना है)
अगर (MarkizaWschodA) तो / / यदि खुला शामियाना
शुरू करना
MarkizaWschodA झूठी = ; / / ध्वज बदलें
ZamknijMarkizeWschodA ; / / माइक्रोप्रोसेसर नियंत्रकों eHouse घटनाओं भेजें
अंत ;
अगर (SilaWiatru> ; ) 5 / तो / हवा अंधा बंद करने के लिए
अगर (MarkizaZachodA या MarkizaWschodA या MarkizaPoludnieA) तो / / यदि एक खुला है
शुरू करना
ZamknijWszystkieMarkizy ; / / सिस्टम चालकों eHouse एक घटना भेजें
MarkizaZachodA झूठी = ;
MarkizaWschodA झूठी = ;
MarkizaPoludnieA झूठी = ;
अंत ;
/ / कलोजिंग स्वत: तापमान नियंत्रण बंद गर्मी के लिए बहुत कम है खिड़की के बाहर प्रतिबंधात्मक उद्घाटन के माध्यम से बाहर से बचने के
/ / दक्षिण – ठंड और धूप के अभाव में दक्षिण ऊंचाई के लिए shutters बंद
अगर (RoletyPoludnie) तो / / यदि यह खुला है
अगर (TzewPoludnie < – 10) then // temperature sensor smaller than the southern – 10C indicating the large cold and lack of sun heating the sensor on the south side

शुरू करना
RoletyPoludnie झूठी = ; / / बंद दक्षिणी झंडा खोलें
ZamknijRoletyPolodnie ; / सिस्टम चालकों eHouse एक घटना भेजने के / समारोह
/ / ZamknijMarkizyPolodnie ; / / कुछ भी नहीं देना होता है क्योंकि सूरज भी कम है
अंत ;
/ घर / पूर्वी मुखौटा के लिए पूर्व ठंड और धूप के अभाव में बंद अंधा
अगर (RoletyWschod) तो / / यदि यह खुला है
अगर (TzewWschod < – 10) then // temperature sensor lower than the Eastern – 10C indicating the large cold and lack of sun heating the sensor on the east side

शुरू करना
RoletyWschod झूठी = ; / / ध्वज shutters पूर्व खोलने के लिए
ZamknijRoletyWschod ; / सिस्टम चालकों eHouse एक घटना भेजने के / समारोह
/ / ZamknijMarkizyWschod ; / / कुछ भी नहीं देना होता है क्योंकि सूरज भी कम है
अंत ;
/ / अंधा पश्चिमी ओर पश्चिम ऊंचाई ठंड और सूरज की कमी
अगर (RoletyZachod) तो / / यदि यह खुला है
अगर (TzewZachod < – 10) then // temperature sensor below the western – 10C indicating the large cold and lack of sun heating the sensor on the west side

शुरू करना
RoletyZachod झूठी = ; / / ध्वज shutters पश्चिमी खोलने के लिए
ZamknijRoletyZachod ; / सिस्टम चालकों eHouse एक घटना भेजने के / समारोह
/ / ZamknijMarkizyZachod ; / / कुछ भी नहीं देना होता है क्योंकि सूरज भी कम है
अंत ;