गृह स्वचालन eHouse decoding CommManager स्थिति – स्रोत कोड

eHouse गृह स्वचालन , बिल्डिंग प्रबंधन – बाइनरी कोड में डाटा प्रारूप CommManager स्थिति . CommManager है नियंत्रक eHouse की गृह स्वचालन प्रणाली , जो संचार कार्यों इकट्ठा और है ” दुनिया के लिए प्रवेश द्वार ” इस प्रणाली के लिए प्रणाली नियंत्रकों eHouse संस्करण 1 (485) के आधार पर .
यह आप अपने पीसी के साथ वितरित करने की अनुमति देता है, जबकि उच्च कार्यक्षमता (मानक बनाया को बनाए रखने – नियंत्रकों में) .
इसके अलावा , प्रणाली से ExternalManager के पुराने संस्करण की जगह ” 1 eHouse ” 3 InputExtenders , अभिनय रोलर: पूरी तरह कार्यात्मक नियंत्रक , गेट्स और awnings . यह भी एक चेतावनी है कि अनुमति देता है के साथ एकीकृत है नियंत्रण एसएमएस या लैन .
यह भी एक निर्मित – अलार्म अधिसूचना एसएमएस में – ईथरनेट गृह स्वचालन – रोलर , गेट्स , Gateways – नियंत्रकों और सुरक्षा प्रणालियों
नियंत्रक एक संकर संस्करण (CommManager की देखरेख में eHouse 1) में RoomManagers की सभी स्थितियों में से एक को इकट्ठा ( गृह स्वचालन – कक्ष नियंत्रक ) HeatManager ( बॉयलर नियंत्रक , वसूली , स्वचालित हरी ऊर्जा ) और उन्हें भेजता है पर नियंत्रण कक्ष के माध्यम से टीसीपी / आईपी या UDP .
इसके अलावा , आप स्थिति को भेजने के लिए के रूप में UDP लैन पर सभी उपकरणों को प्रसारण की अनुमति देता है , आप नियंत्रण पैनल के किसी भी संख्या और outputs के दृश्य से स्थिति और संयोजन प्रणाली स्थिति eHouse ट्रैक करने की अनुमति , जानकारी और मापा मूल्यों .
प्रसारण के इस प्रकार का चार्ज नहीं CommManager के अतिरिक्त सीपीयू , कोई बात नहीं कितना पैनलों ऊपर डेटा प्राप्त .
नियंत्रक 1 eHouse (RS485 पर काम कर रहा है) से प्राप्त आंकड़ों के अलावा , CommManager अपनी वर्तमान स्थिति देते , जो अलार्म प्रणाली की स्थिति है .
बाइनरी कोड में फ्रेम स्थिति पदों में विचार – विमर्श किया गया:
” स्मार्ट होम , बाइनरी कोड में इंटेलिजेंट बिल्डिंग eHouse फ्रेम स्थिति ”
” स्मार्ट होम , इंटेलिजेंट बिल्डिंग eHouse – फ्रेम decoding स्थिति – स्रोत कोड ”
अब तक हम ' ; ve फ्रेम प्रारूप को कवर , एक फ्रेम में और प्रस्तुत करने के लिए तैयार सभी नियंत्रकों eHouse से स्रोत कोड decoding डेटा की सुविधा बिट्स और बाइट्स के महत्व को एक CommManager या आवेदन eHouse से जुड़े . exe (eHouse 1 के लिए) .

यह ' ; सॉफ्टवेयर बढ़े फ्रेम CommManager की स्थिति को डिकोड करने के लिए समय है .
हालांकि स्थिति एक ही रूप में दोनों टीसीपी / आईपी और UDP भेजा जा सकता है , हम केवल UDP प्रसारण किया जाएगा , नियंत्रक करने के लिए लॉग ऑन करें और CPU लोड में वृद्धि होने की कमी के कारण .
टीसीपी संचार / IP सॉकेट सर्वर हम दूरस्थ मोबाइल पैनलों को मुक्त छोड़ने की जरूरत है , लैन (Smartphones के बाहर काम , जीएसएम फोन) , इंटरनेट के संचरण के रूप में UDP का उपयोग करने के लिए मुश्किल हो सकता है और त्रुटियों की एक बहुत शामिल कर सकते हैं , सही decoding स्थिति को रोकने के , लिंक की खराब गुणवत्ता के कारण , और तंत्र UDP सत्र के पुष्टियों और repetitions की कमी .
यह अंत करने के लिए , अंतिम टेम्पलेट डेल्फी नियंत्रण कक्ष है कि पदों में पहले विचार – विमर्श किया गया: ” स्मार्ट घर eHouse , गोली के लिए स्रोत कोड नियंत्रण पैनल Windows XP पर काम , विस्टा , 7 ”
Bundled द्विआधारी की स्थिति बदलने के समर्थन CommManager जोड़कर UDP के माध्यम से डाटा प्राप्त
TForm1 प्रक्रिया . binaryDataReceived (प्रेषक: TComponent ; NumberBytes: पूर्णांक ; FromIP: स्ट्रिंग ; पोर्ट: पूर्णांक) ;
var सी: सरणी [0 . . चार के 1024] ;
MyStream: TMemoryStream ;
numberb: पूर्णांक ;
शुरू करना
अगर filesystem_status फिर से बाहर निकलें ; / / केवल जब udp सक्रिय है
MyStream: = TMemoryStream . बनाना ;
द्विचर . ReadStream (MyStream) ;
numberb: = NumberBytes ;
अगर numberb> ; 1023 तो numberb: प्राप्त = / / 1023 बाइट्स की संख्या को सीमित – हम डेटा बफर के आकार के लिए काटा
MyStream . पढ़ें (सी [0] , numberb) ;
set_rm (सी , 1) ; / / समझाना स्थिति eHouse 1 नियंत्रकों – RM decode नियंत्रक स्थिति , एचएम
set_status_commmanager (सी , 0 , २५४) ; / / समझाना commanager नियंत्रक स्थिति – स्थिति commmanagera व्याख्या करना
Test_save ; / / टेस्ट एक आर एम के लिए पाठ फ़ाइलों को डेटा को बचाने , एचएम – परीक्षण के परिणाम के लिए सभी नियंत्रकों 1 eHouse (आरएम के लिए एक पाठ फ़ाइल को बचाने , एचएम)
Test_save_eth ; / / टेस्ट CommManager और प्रत्येक ईथरनेट नियंत्रक के लिए पाठ फ़ाइल में डेटा को बचाने – परीक्षण के परिणाम के लिए. CommManagera के लिए एक पाठ फ़ाइल और सभी नियंत्रकों EtherneteHouse को बचाने के लिए
update_panel ; / / चयनित नियंत्रक के लिए पैनल के लिए डेटा अपडेट – डेटा नियंत्रक पैनल अद्यतन
अंत ; :
CommManagera फ्रेम और अन्य नियंत्रकों के लिए decoding प्रक्रिया की स्थिति का पूर्ण कार्यान्वयन प्रक्रिया ईथरनेट eHouse प्रदर्शन
set_status_commmanager (सी , 0 , २५४) ; / / पैरामीटर आप डेटा बफर नियंत्रक (आईपी पते के पिछले दो घटकों) के नाम और पते निर्दिष्ट .
इस प्रक्रिया फ्रेम के द्विआधारी स्थिति के decoding करता है और फिर लोड डीकोड डेटा ईथरनेट नियंत्रक जो एक रिकार्ड का एक उदाहरण है रिकॉर्ड ” ethernet_rm_hm_cm_lm ” कहा जाता है ” ethrm ” .
सूचकांक स्वचालित रूप से खोज की है एक आईपी पता करने की स्थिति में जुड़े .
यह हमारे लिए अनुमति देता है:

  • सभी नियंत्रकों के डेटा के प्रत्यक्ष विश्लेषण
  • outputs की स्थिति के आधार पर अपने खुद के एल्गोरिदम बनाने , निविष्टियां , माप सेंसर
  • नियंत्रण प्रणाली के कार्यान्वयन के लिए मौजूदा प्रणाली के मानकों के किसी भी संख्या का विश्लेषण करने के लिए समर्पित
  • लॉग विश्लेषक सॉफ्टवेयर विकास और eHouse प्रणाली की स्थिति
  • सॉफ्टवेयर बिजली की खपत की गणना की अनुमति देता है
  • एक टेम्पलेट के आधार पर व्यक्ति के नियंत्रण पैनल के निष्पादन की अनुमति देता है और सभी नियंत्रकों के लिए दृश्य
  • संचार और डेटा फ्रेम के तरीके के ज्ञान के लिए कोई जरूरत नहीं
  • उच्च लेखन – eHouse सिस्टम सॉफ्टवेयर पुस्तकालयों के कार्यान्वयन के माध्यम से स्तर सॉफ्टवेयर (स्रोत कोड की कुछ लाइनों) .