ehouse 1 – Domotique – des états de contrôleur sous forme binaire

ehouse Domotique , Building Management version 1 – cadre de l'état de commande de système Domotique .
Pour créer une fonction totalement , efficace propre logiciel pour les panneaux de contrôle qui nécessitent une visualisation besoin de mettre en œuvre directe de décodage ehouse l'état du conducteur 1 sous forme binaire . Selon le choix du mode de fonctionnement normal ou adressage étendu (Extended_address) , cadre d'envoyer l'état du pilote est la suivante (entre parenthèses différence marquée de l'adresse en mode étendu) .
Ce mode est nécessaire de travailler sous la supervision du pilote CommManager et envoie l'adresse de destination message en dehors des événements , Propre adresse pour le périphérique de destination ne peut dire à l'expéditeur pour recevoir des événements (à la main – secouer) .
Si l'interface RS – 485 ne le recommanderais tentatives directes pour se connecter au pilote , que l'envoi de commandes peut provoquer une telle mémoire de programme de nettoyage (firmware) Contrôleurs ce qui pourrait mettre fin à leur vie .
D'autres commandes ou signaux aléatoires RS – 485 peut compromettre la stabilité du système ou certainement ralentir son travail .
Ehouse natif Contrôleurs d'automatisme devraient travailler sous la supervision de l'application producteur ” ehouse . exe ” .
Pour plus de sécurité , vous pouvez lire l'état des conducteurs sans se connecter à eux à travers l'application de ehouse . Exe (le protocole UDP et LAN) .
Il s'agit non – lecture invasive , pas de chargement ni le logiciel, ni les contrôleurs , et ce qui est plus , ne dénote pas dans un protocole de transfert de manière via RS – 485 .
La situation est différente lorsque eHouse_1 contrôleurs travaillent sous la supervision d'CommManager .
CommManager contrôleur peut envoyer l'état (ehouse 1 et CommManager dans un ensemble intégré) , le réseau local UDP et l'accès à ces données est sans connexion et non – invasive ainsi que directement à partir de CommManager ou d'autres contrôleurs Ethernet ehouse .
Réception de données sur le statut UDP nous ne pouvons pas porter atteinte pilotes , et un maximum de données entrantes mal interpréter .
Système ehouse de ne rien envoyer à la sécurité du conducteur UDP , un pilote n'est pas grave si le client reçoit les données envoyées via UDP ou non , ou si le nombre de clients est de 0 ou 250 .
Réception des données du système d'automatisation ehouse maison , UDP est sans danger et ne charge pas de quelque façon les contrôleurs ou les logiciels ehouse , envoyant des diffusions (UDP_broadcast) au réseau local .
Boîte de dialogue Etat a le format suivant:
< ; ; data_size> ; ; (< ; ; The_destination_address_H> ; ; < ; ; The_destination_address_L> ; ; ) < ; ; Local_addres_H> ; ; < ; ; Local_address_L> ; ; < ; ; commande> ; ; < ; ; Data_1> ; ; . . . . . < ; ; Données> ; ; < ; ; Data_N> ; ; < ; ; data_size> ; ; (< ; ; The_destination_address_H> ; ; < ; ; The_destination_address_L> ; ; ) < ; ; Local_address_H> ; ; < ; ; Local_address_L> ; ; < ; ; commande> ; ; < ; ; Data_1> ; ; . . . . . < ; ; Données> ; ; < ; ; Data_N> ; ; < ; ; 0> ; ;
Mode Normal / vs . (Adresse étendue)
1 . taille des données (taille des données)
2 . Address_H_target (Address_H_target)
3 . Address_L_target (Address_L_target)
4 . Control_command (Address_H_of_local_controller_return_path)
5 . Data_1_byte (Address_L_of_local_controller_return_path)
6 . Data_2_byte (Control_Command)
7 Data_3_byte (Data_1_byte)
8 . . le reste des données pour une commande donnée .
Si vous envoyez le statut du conducteur ; s de contrôle commande ‘ s ‘ .
Continuer à suivre les données sous forme binaire pour réduire au minimum le transfert d'informations par le biais d'une interface série RS – 485 .
Pour plus de sécurité , aux données est attachée vérifier – une somme égale à éliminer les diffusions incorrectes effectuer .
État de la commande Envoyer est ‘ s ‘ ,
Statut cadre des conducteurs Domotique ehouse 1 et une description du numéro d'octet (index de déplacement en fonction du mode de fonctionnement (normal ou extended_address) .
Cette alternance constante nommée ci-dessous TCP_INDEX_INC . Selon le mode de , il peut adopter une valeur de 3 à l'adresse 0 ou étendue pour la transmission normale . Lors de l'écriture de logiciels , vous pourriez envisager ce paramètre comme une variable , car il nous permet de manipuler facilement les données dans les versions ultérieures, si le cadre est déplacé d'une manière ou d'une autre .
Indices de l'état de chaque octet de la trame ehouse pilotes 1 (début de trame):
STATUS_ADC = 1 +2 + TCP_INDEX_INC ; / / La valeur de A/D_converters_2_bytes_1B = MSB , 2B = LSB! .
STATUS_OUT = 17 + 2 TCP_INDEX_INC ; / / Sortie numérique précise premier indice

/ / Plus petit numéro de bit LSB Chaque sortie 1 , MSB plus grand
STATUS_IN = 20 + 2 TCP_INDEX_INC ; / / Entrée numérique états LSB petit nombre , MSB plus grand
STATUS_INT = 21 + 2 TCP_INDEX_INC ; / / Etats des entrées numériques (alarme) plus petit nombre LSB , MSB plus grand
STATUS_OUT25 = 22 + 2 TCP_INDEX_INC ; / / Sorties de 25 pays . . 32 de la même manière que la sortie
STATUS_LIGHT = 23 + 2 TCP_INDEX_INC ; / / État d'un gradateur 1B gradateur
STATUS_ZONE_PGM = 26 + 2 TCP_INDEX_INC ; / / Pas de zone en cours pour EM
STATUS_PROGRAM = 27 + 2 TCP_INDEX_INC ; / / Pas de programme en cours
STATUS_INPUTEXT_A_ACTIVE = 28 + 2 TCP_INDEX_INC ; / / Inputextender Entrée A dans l'état actif
STATUS_INPUTEXT_B_ACTIVE = 32 + 2 TCP_INDEX_INC ; / / B inputextender entrée dans l'état actif
STATUS_INPUTEXT_C_ACTIVE = 36 + 2 TCP_INDEX_INC ; / C inputextender / Entrée dans l'état actif
STATUS_INPUTEXT_A = 40 + 2 TCP_INDEX_INC ; / / Entrée inputextender A Alarmes et avertissements
STATUS_INPUTEXT_B = 50 + 2 TCP_INDEX_INC ; / / Entrée B Alarmes et avertissements inputextender
STATUS_INPUTEXT_C = 60 + 2 TCP_INDEX_INC ; / / Entrée inputextender Alarmes et avertissements C
/ / Gestionnaire de chaleur Statut
STATUS_ADC_HEART = 1 +2 + TCP_INDEX_INC ; / / Les mesures de température de 16 sondes de la même manière que pour le RM
STATUS_OUT_HEART = 33 + 2 TCP_INDEX_INC ; / / Sortie numérique indique la même façon RM
WENT_MODE = 51 + TCP_INDEX_INC ;
RECU_MODE: = 50 + TCP_INDEX_INC ;
CURRENT_PGM: = 38 + TCP_INDEX_INC ;
/ / CommManager Statut – intégrée avec le statut des drivers ehouse 1 (système hybride) ehouse 1 sous le contrôle de CommManager
STATUS_EHOUSE1_DEVS = 0 ; / / Placez l'état des périphériques connectés à l'interface RS485 (eHouse_1) ci-dessus 71 octets
STATUS_ADC_ETH = 72 ; / / ADC_measurements_16_inputs * 2B A / D_notation_as_for_RM_Vcc = 3V3
STATUS_ADC_ETH_END = 32 STATUS_ADC_ETH ; / / Fin de la mesure A / D
STATUS_OUT_I2C = STATUS_ADC_ETH_END ; / / 2 fois i2c 10 * 8 / / max = 160 sorties du module sur le module d'extension
STATUS_INPUTS_I2C = 20 STATUS_OUT_I2C ; / / 2 fois i2c 6 * 8 / / max 96 entrées sur le module d'extension
STATUS_ALARM_I2C = 12 STATUS_INPUTS_I2C ; / / Input_in l'état d'alarme (par rapport au masque de la zone de sécurité actuel)
STATUS_WARNING_I2C = 12 STATUS_ALARM_I2C ; / / Input_warning état (par rapport au masque de la zone de sécurité actuel)
STATUS_MONITORING_I2C = 12 STATUS_WARNING_I2C ; / / Input_condition surveillance (par rapport au masque de la zone de sécurité actuel)
STATUS_PROGRAM_NR = 12 STATUS_MONITORING_I2C ; / / Program_number_CommManager
STATUS_ZONE_NR = 1 STATUS_PROGRAM_NR ; / / Number_CommManager_zone
STATUS_ADC_PROGRAM = 1 STATUS_ZONE_NR ; / / ADC_program_number
STATUS_ADC_PROGRAM STATUS_LIGHT_LEVEL = 2 ; / / État 3 gradateurs / / Dimmer 3 * 2B
Exemple de calcul de la température sur l'état de HM
i = indice analogique d'entrée 0 . . 15 pour HM gettemplm fonction (msb , lsb) ;
TEMPHM [i]: = gettemplm (str [STATUS_ADC_HEART + i * 2 + TCP_INDEX_INC] , str [STATUS_ADC_HEART + i * 2 +1 + TCP_INDEX_INC]) eHouse_Home_Automation_OpenSource_Delphi