Home Automation eHouse Decodierung CommManager Status – Quellcode

eHouse Home Automation , Building Management – Datenformat CommManager Status im Binär-Code . CommManager ist Regler eHouse Home Automation System , die Kommunikations-Funktionen zu sammeln und die ” Tor zur Welt ” für das System auf dem System-Controller eHouse Version 1 (485) auf der Grundlage .
Es ermöglicht Ihnen, mit Ihrem PC zu verzichten und gleichzeitig hohe Funktionalität (serienmäßig eingebaute – in Controller) .
Außerdem , Das System ersetzt die alte Version von ExternalManager aus ” eHouse 1 ” und 3 InputExtenders , Acting voll funktionsfähige Steuerung: roller , Tore und Markisen . Es ist auch mit einem Alarm, die ermöglicht integriert Steuern per SMS oder LAN .
Es hat auch ein eingebautes – in Alarmierung SMS – Ethernet Home Automation – Rollers , Gates , Gateways – Steuerungen und Sicherheitssysteme
Der Controller in einer Hybrid-Version (eHouse 1 unter der Aufsicht von CommManager) sammelt alle Zustände RoomManagers ( Home Automation – Room Controller ) Und HeatManager ( Boiler-Controller , Erholung , Automatische grüne Energie ) Und sendet sie an das Control Panel über TCP / IP oder UDP .
Außerdem , ermöglicht es Ihnen, den Status zu senden, wie UDP Broadcast an alle Geräte im LAN , so dass Sie den Status und die verbindungslose Systemstatus eHouse durch eine beliebige Anzahl von Bedien-und Visualisierungs-Ausgänge zu verfolgen , Eingänge und Meßwerte .
Diese Art der Sendung nicht extra berechnet CPU CommManager , egal wie viel die Platten die obigen Daten erhält .
Zusätzlich zu den Daten vom Controller eHouse 1 (der auf RS485) übermittelt , CommManager befestigen Sie den aktuellen Status , das ist der Zustand des Alarmsystems .
Frame-Status im Binär-Code wurde in Beiträgen diskutiert:
” Smart Home , Intelligent Building eHouse Frame-Status im Binärcode ”
” Smart Home , Intelligent Building eHouse – Dekodierung Status – Quellcode ”
Bisher haben wir ' ; ve deckte den Frame-Format , Bedeutung der Bits und Bytes in einem Rahmen und präsentiert bereit Quellcode Decodieren von Daten von allen Controllern eHouse Erleichterung ein, indem CommManager oder Anwendung eHouse verbunden . exe (für eHouse 1) .

Es ; Zeit für die Software, um den Status des erweiterten Rahmens CommManager decodieren .
Obwohl Status kann sowohl TCP / IP und UDP in der gleichen Form gesendet werden , wir werden nur gesendet UDP , aufgrund des Fehlens von vorherige Anmeldung an den Controller und die CPU-Last zu erhöhen .
Kommunikation über TCP / IP-Socket-Server verlassen wir frei entfernten mobilen Panels muss , Arbeiten außerhalb der LAN (Smartphones , GSM-Telefone) , verwenden UDP als Übertragung des Internet kann schwierig und erfordert eine Menge von Fehlern , verhindert korrekte Dekodierung Status , aufgrund der schlechten Qualität der Links , und das Fehlen von Mechanismen Bestätigungen und Wiederholungen von UDP-Sitzung .
Hierzu , in der endgültigen Vorlage Delphi Bedienfeld, die früher in den Beiträgen diskutiert wurde: ” smart home eHouse , Quellcode Bedienfelder für die Tablett arbeiten unter Windows XP , Aussicht , 7 ”
Gebündelte ändern Sie den Status der binären Empfangen von Daten über UDP durch die Unterstützung CommManager
Verfahren TForm1 . binaryDataReceived (Sender: TComponent ; NumberBytes: Integer ; FromIP: String ; Port: Integer) ;
var C: array [0 . . 1024] of char ;
MyStream: TMemoryStream ;
NumberB: integer ;
beginnen
wenn filesystem_status beenden ; / / Nur wenn udp ist aktiv
MyStream: = TMemoryStream . Schaffen ;
binär . ReadStream (MyStream) ;
NumberB: = NumberBytes ;
wenn NumberB> ; 1023 dann NumberB: = 1023 / / Begrenzung Anzahl der empfangenen Bytes – schneiden wir auf die Größe des Datenpuffers
MyStream . Lesen (C [0] , NumberB) ;
set_rm (C , 1) ; / / Decode Status eHouse 1 Controller – RM Decodiercontroller Status , HM
set_status_commmanager (C , 0 , 254) ; / / Decode ComManager Controller-Status – dekodieren Status commmanagera
Test_save ; / / Test speichern Daten in Text-Dateien für jeden RM , HM – sparen für Testergebnisse in eine Textdatei für alle Steuerungen eHouse 1 (RM , HM)
Test_save_eth ; / / Test speichern Daten in Text-Datei für CommManager und jeder Ethernet Controller – sparen für Testergebnisse in eine Textdatei für CommManagera und alle Controller EtherneteHouse
update_panel ; / / Aktualisieren von Daten an der Platte für ausgewählte Controller – Aktualisierung der Daten im Controller Panel
Ende ; :
Die vollständige Umsetzung der Decodierung Status für CommManagera Rahmen und anderen Controllern führen Sie das Verfahren Ethernet eHouse
set_status_commmanager (C , 0 , 254) ; / / Die Parameter geben Sie den Namen und die Adresse des Daten-Puffer-Controller (die letzten beiden Komponenten der IP-Adresse) .
Diese Prozedur führt die Dekodierung von binären Status des Rahmens und lädt dann die decodierten Daten an den Ethernet-Controller, die eine Instanz eines Datensatzes aufnehmen ” ethernet_rm_hm_cm_lm ” namens ” ethrm ” .
Der Index wird automatisch eine IP-Adresse durchsucht verknüpft im Status .
Dies ermöglicht es uns zu:

  • direkte Analyse der Daten aller Regler
  • erstellen Sie Ihre eigenen Algorithmen je nach Status der Ausgänge , Eingänge , Messungen Sensoren
  • Umsetzung von Steuersystemen zur Analyse beliebig viele Parameter des bestehenden Systems gewidmet
  • Log Analyzer Software-Entwicklung und eHouse System-Status
  • Software erlaubt die Berechnung des Stromverbrauchs
  • erlaubt die Ausführung der einzelnen Bedienfelder und Visualisierung für alle Steuerungen auf der Basis einer Schablone
  • keine Notwendigkeit für die Kenntnis der Art der Kommunikation und Datenrahmen
  • Schreiben hohen – Level-Software (ein paar Zeilen Quellcode) durch die Umsetzung der eHouse System-Software-Bibliotheken .