Home Automation eHouse decodifica CommManager stato – codice sorgente

eHouse Home Automation , Building Management – Dati CommManager stato formato in codice binario . CommManager è controllore di eHouse Home Automation sistema , che raccolgono funzioni di comunicazione ed è il ” porta sul mondo ” per il sistema basato sul sistema eHouse versione controller 1 (485) .
Ti permette di fare a meno con il PC, pur mantenendo alta funzionalità (integrato di serie – nei controller) .
Inoltre , il sistema sostituisce la vecchia versione di ExternalManager da ” eHouse 1 ” e 3 InputExtenders , Agire controller completamente funzionale di: rullo , cancelli e tende da sole . È inoltre integrato con un allarme che permette Controllo via SMS o LAN .
Essa ha anche un built – in SMS di notifica della sveglia – Ethernet Home Automation – Rulli , Gates , Gateway – controllori e sistemi di sicurezza
Il controllore in una versione ibrida (eHouse 1 sotto la supervisione di CommManager) raccoglie tutti gli stati di RoomManagers ( Home Automation – Sala di controllo ) E HeatManager ( Caldaia controller , recupero , Automatico di energia verde ) E li invia al pannello di controllo tramite TCP / IP o UDP .
Inoltre , consente di inviare lo status di UDP trasmesso a tutti i dispositivi sulla LAN , che consente di monitorare lo stato e la connessione eHouse stato del sistema da un qualsiasi numero di pannelli di controllo e visualizzazione delle uscite , ingressi e valori di misura .
Questo tipo di trasmissione non applica CPU extra di CommManager , non importa quanto i pannelli riceve i dati sopra .
Oltre ai dati ricevuti dal controllore eHouse 1 (lavorando RS485) , CommManager presentare anche il suo stato attuale , che è lo stato del sistema di allarme .
Stato Struttura in codice binario è stato discusso nel post:
” Smart Home , Intelligent Building cornice stato eHouse in codice binario ”
” Smart Home , Edificio intelligente eHouse – Telaio decodifica stato – codice sorgente ”
Così lontano ' ; ho riguardato il formato di frame , importanza di bit e byte in una cornice e presentato per facilitare pronti codice sorgente la decodifica dei dati di tutti i controller di eHouse quello collegato da CommManager o eHouse applicazione . exe (per eHouse 1) .

E ' ; tempo di s per il software per decodificare lo stato del CommManager telaio allargata .
Sebbene lo stato possono essere inviati sia TCP / IP e UDP nella stessa forma , ci sarà solo in onda UDP , a causa della mancanza di dover accedere al controller e aumentare il carico sulla CPU .
Comunicazioni su TCP / IP server socket che lasciando liberi di pannelli mobili a distanza ha bisogno di , di lavoro al di fuori delle (Smartphone LAN , Telefoni GSM) , utilizzare UDP come la trasmissione di Internet può essere difficile e comporta un sacco di errori , impedendo di stato corretto decodifica , a causa della scarsa qualità dei collegamenti , e la mancanza di conferme meccanismi e ripetizioni di sessione UDP .
A tal fine , in finale pannello di modello di controllo Delphi che è stato discusso in precedenza nei post: ” eHouse casa intelligente , pannelli di controllo del codice sorgente per la tavoletta funziona su Windows XP , Vista , 7 ”
Bundle modificare lo stato del binario ricevere dati tramite UDP con l'aggiunta di CommManager supporto
procedura TForm1 . binaryDataReceived (Sender: TComponent ; NumberBytes: Integer ; FromIP: String ; Porta: Integer) ;
var C: array [0 . . 1024] di char ;
MyStream: TMemoryStream ;
NumberB: integer ;
iniziare
se filesystem_status quindi uscire ; / / Solo quando udp è attivo
MyStream: = TMemoryStream . Creare ;
binario . ReadStream (MyStream) ;
NumberB: = NumberBytes ;
se NumberB> ; 1023 poi NumberB: = 1023 / / limitazione del numero di byte ricevuti – abbiamo tagliato alla dimensione del buffer di dati
MyStream . Leggi (C [0] , NumberB) ;
set_rm (C , 1) ; / / Decode eHouse stato 1 controller – RM decodifica stato del controllore , HM
set_status_commmanager (C , 0 , 254) ; / / Decode stato del controllore commanager – decodificare commmanagera stato
Test_save ; / / Test di salvare i dati in file di testo per ogni RM , HM – salvare i risultati dei test in un file di testo per tutte le eHouse controller 1 (RM , HM)
Test_save_eth ; / / Test di salvare i dati in un file di testo per CommManager e ogni controller Ethernet – salvare i risultati dei test in un file di testo per CommManagera e tutti i controllori EtherneteHouse
update_panel ; / / Aggiorna i dati al pannello di controllo selezionato – aggiornare il controllore dei dati del pannello
fine ; :
L'attuazione completa dello stato del processo di decodifica per il telaio CommManagera e altri controller eseguire la procedura Ethernet eHouse
set_status_commmanager (C , 0 , 254) ; / / Il parametro si specifica il nome e l'indirizzo del responsabile del buffer di dati (gli ultimi due componenti dell'indirizzo IP) .
Questa procedura esegue la decodifica di stato binario del telaio e quindi carica i dati decodificati per registrare il controller Ethernet che è un esempio di un record ” ethernet_rm_hm_cm_lm ” detto ” ethrm ” .
L'indice viene ricercato automaticamente collegato a un indirizzo IP nello stato .
Questo ci permette di:

  • analisi diretta dei dati di tutti i controllori
  • creare i propri algoritmi a seconda dello stato delle uscite , Ingressi , misure sensori
  • realizzazione di sistemi di controllo dedicati ad analizzare qualsiasi numero di parametri del sistema esistente
  • accedere sviluppo software analizzatore e lo stato del sistema eHouse
  • Il software consente di calcolare il consumo di energia elettrica
  • consente la realizzazione di pannelli di controllo individuali e visualizzazione per tutti i controllori sulla base di un modello
  • nessuna necessità di conoscenza dei modi di frame di comunicazione di dati e
  • scrittura alta – livello di software (poche righe di codice sorgente) attraverso l'implementazione delle librerie eHouse del software di sistema .