Acasă de automatizare eHouse de decodare CommManager statutul – codul sursă

eHouse Home Automation , Clădire de gestionare – Datele CommManager statutul de formatul în cod binar . CommManager este controlor de eHouse Home Automation sistem , care aduna funcțiile de comunicare și este ” poarta de acces la lumea ” pentru sistem bazat pe versiunea sistemului de eHouse controlorilor de 1 (485) .
Acesta vă permite să renunțe la PC-ul dvs. menținând în același timp funcționalitatea ridicată (construit de iarnă – în controlere) .
În plus, , sistem înlocuiește vechea versiune a ExternalManager din ” eHouse 1 ” și 3 InputExtenders , Hotărând controler complet funcțională de: role , porți și copertine . Acesta este, de asemenea, integrat cu o alarmă care permite Controlați prin SMS sau LAN .
Ea are, de asemenea, un built – în SMS de notificare de alarmă – Ethernet Home Automation – Tavaluguri , Gates , Gateway-uri – controlere și sisteme de securitate
Controler intr-o versiune hibrida (eHouse 1 sub supravegherea CommManager) colectează toate stările de RoomManagers ( Home Automation – Cameră de controler ) Și HeatManager ( Controler de cazan , recuperare , Automată energie verde ) Și le trimite pe la panoul de control prin intermediul TCP / IP sau UDP .
În plus, , vă permite să trimiteți statutul de UDP difuzate la toate dispozitivele pe LAN , permițându-vă să urmăriți starea și statutul de conexiune eHouse sistem de către orice număr de panouri de control și vizualizare a rezultatelor , intrări și valorile măsurate .
Acest tip de difuzare nu percepe CPU suplimentar de CommManager , indiferent de cât de mult panourile primește datele de mai sus .
În plus față de datele primite de la eHouse operator 1 (lucru pe RS485) , CommManager atașați statutul său actual , care este starea sistemului de alarmă .
Statutul de cadru în cod binar a fost discutat in mesaje:
” Smart Acasă , Intelligent Frame eHouse starea cladirii in cod binar ”
” Smart Acasă , Intelligent Building eHouse – cadru de decodare starea – codul sursă ”
Până în prezent am " ; acoperite am formatul cadrului , Importanța de biți și bytes într-un cadru și a prezentat pentru a facilita gata de cod sursă de date de decodare din toate eHouse controlere cea legată de CommManager sau eHouse aplicarea . exe (pentru eHouse 1) .

Acesta " ; e timpul pentru software-ul pentru a decoda statutul cadrului CommManager extinsă .
Deși statutul pot fi trimise atât TCP / IP și UDP în aceeași formă , vom difuza numai UDP , din cauza lipsei de a avea de a conecta la controler și de a crește încărcarea procesorului .
Comunicații de peste TCP / IP servere socket ne lăsând liber la panouri mobile de la distanță are nevoie de , de lucru în afara LAN (smartphone-uri , GSM telefoane) , folosesc UDP ca transmiterea Internetul poate fi dificilă și implică o mulțime de erori , prevenirea corect starea de decodare , din cauza calității proaste a link-urile , și lipsa de confirmări mecanismelor si repetari ale sesiunii UDP .
În acest scop , în finală șablonul panoul de control Delphi, care a fost discutat mai devreme în posturi: ” inteligent acasă eHouse , Cod panourile de control sursă pentru tableta de lucru pe Windows XP , Perspectivă , 7 ”
Balotati schimba starea binare primi date prin UDP prin adăugarea de suport CommManager
Procedura de TForm1 . binaryDataReceived (Expeditor: TComponent ; NumberBytes: Integer ; FromIP: String ; Port: Integer) ;
var C: array [0 . . 1024] de char ;
MyStream: TMemoryStream ;
numberb: integer ;
începe
în cazul în care filesystem_status apoi ieșiți ; / / Numai când UDP este activ
MyStream: = TMemoryStream . Crea ;
binar . ReadStream (MyStream) ;
numberb: = NumberBytes ;
în cazul în care numberb> ; 1023, apoi numberb: = 1023 / / limitarea numărului de octeți primit – am tăiat la dimensiunea buffer de date
MyStream . Citește (C [0] , numberb) ;
set_rm (C , 1) ; / / Decode eHouse Stare 1 controlere – RM decodare controler de stare , HM
set_status_commmanager (C , 0 , 254) ; / / Decode commanager statutul de operator – decoda commmanagera statutul
Test_save ; / / Test salva datele în fișiere de text pentru fiecare RM , HM – cu excepția rezultatele testelor într-un fișier text pentru toate eHouse controlere 1 (RM , HM)
Test_save_eth ; / / Test salva date la fișier text pentru fiecare controler de CommManager și Ethernet – cu excepția rezultatele testelor într-un fișier text pentru CommManagera și toate EtherneteHouse controlorilor
update_panel ; / / Actualizarea datelor la panoul operator pentru selectia – actualizarea panoului operator de date
capăt ; :
Punerea în aplicare completă a statutului procesului de decodare pentru cadru CommManagera și alte controlere efectua procedura Ethernet eHouse
set_status_commmanager (C , 0 , 254) ; / / Parametrul le specificați numele și adresa operatorului tampon de date (ultimele două componente ale adresei IP) .
Această procedură realizează decodarea statutului binar al cadru și apoi încarcă datele decodate pentru a înregistra controler Ethernet, care este o instanta a unei înregistrări ” ethernet_rm_hm_cm_lm ” denumit ” ethrm ” .
Indicele este cautat automat legat la o adresă IP în stare .
Acest lucru ne permite să:

  • Analiza directă a datelor de toate controlerele
  • crea algoritmi proprii, în funcție de starea ieșirilor , Intrări , măsurători senzori
  • punerea în aplicare a sistemelor de control dedicate pentru a analiza orice număr de parametri de sistem existent
  • autentifica analizor de dezvoltare de software și starea sistemului eHouse
  • Software-ul permite calcularea consumului de energie electrică
  • permite executarea de panouri de control individuale și vizualizare pentru toate controlerele pe baza unui șablon
  • nu este nevoie de cunoaștere a modalităților de comunicare și de cadre de date
  • scris mare – software-ul de nivel (câteva linii de cod sursă), prin punerea în aplicare a sistemului de biblioteci software eHouse .