Protocole d'intégration (AMX, Lutron, Crestron, Control4, Clipsal)
Le système TapHome peut s'intégrer à d'autres systèmes via un simple protocole d'intégration ASCII. Cela permet à d'autres systèmes d'obtenir des informations et de contrôler les appareils TapHome.
Couches de communication prises en charge
- RS485
- TCP / IP
- UDP / IP
Description du protocole
Le protocole prend en charge les commandes suivantes: AIDE, LISTE, OBTENIR, RÉGLER, ACTION, EN-TÊTE, ENVOI AUTOMATIQUE
Chaque commande doit se terminer par des caractères CRLF (0x0D 0x0A, \r \n ).
Commande AIDE
La commande HELP <\r> <\n> affichera des informations de base sur les commandes prises en charge. HEADER [ON / OFF] active ou désactive les informations d'en-tête. <\r> <\n>
LIST affiche tous les appareils exposés. <\r> <\n>
GET [ID] récupère l'appareil avec des valeurs d'ID. <\r> <\n>
SET [ID ST VAL1 .. VALN] définit l'appareil avec le statut ID ST et les valeurs VAL1 à VALN. <\r> <\n>
ACTION [ID NUM VAL] Effectuer sur l'appareil avec le numéro d'action ID NUM avec la valeur VAL. <\r> <\n>
Le commutateur PUSHALL [ON / OFF] permet d'activer ou de désactiver tous les appareils. <\r> <\n>
Command HEADER
La commande HEADER <\r> <\n> basculer entre deux sorties de données possibles. Si l'en-tête est activé, des informations de description sont envoyées avec les données. Si l'en-tête est désactivé, il n'envoie que des données. HEADER sans paramètres envoie des informations sur l'état actuel du commutateur. HEADER ON activera les informations d'en-tête. HEADER OFF désactive les informations d'en-tête.
LISTE des commandes
La LISTE des commandes affiche tous les appareils exposés.
Les informations suivantes sont affichées:
L'ID d'appareil est l'ID d'appareil numérique.
Type d'appareil est une description textuelle du type d'appareil (aveugle, interrupteur, ...).
Nom du périphérique tel que défini dans le système TapHome.
État de l'appareil sous forme d'informations textuelles
Exemple de sortie de la commande LIST <\r> <\n> :
ID: 137, Type: Store, Nom: Store virtuel, Statut: OK <\r> <\n> ID: 51, type: commutateur, nom: commutateur Ex, état: OK <\r> <\n> ID: 2, Type: MultiValueSwitch, Nom: Chauffage et refroidissement, État: OK <\r> <\n> ID: 205, Type: bouton-poussoir, nom: bouton-poussoir, état: OK <\r> <\n> ID: 242, Type: Gradateur, Nom: Sortie analogique, Etat: OK <\r> <\n> ID: 68, Type: Thermostat, Nom: Thermostat 1, Statut: UnknownError <\r> <\n> ID: 145, Type: Variable, Nom: KNXVariable, Statut: OK <\r> <\n> ID: 143, Type: Variable, Nom: Azimut du soleil, Statut: OK <\r> <\n>
Commande GET
La commande GET nécessite un paramètre - l'ID de l'appareil. Il renvoie l'état et les valeurs de l'appareil sous forme de nombres. Exemple de sortie de la commande GET 137 <\r> <\n>
ID: 137, DeviceStatus: 0, BlindsLevel: 41, BlindsSlope: 41 <\r> <\n>
Exemple lorsque l'en-tête est désactivé:
137,0,41,41 <\r> <\n>
Commande SET
La commande SET nécessite au moins trois paramètres. Il s'agit d'abord de l'ID de l'appareil, puis du nouvel état de l'appareil à définir, puis d'au moins une valeur à définir. Pour les appareils avec plus d'une valeur, toutes les valeurs doivent suivre - par exemple, aveugles nécessitent l'envoi des deux paramètres - nouveau niveau et nouvel angle.
Exemple de sortie de la commande SET 137 0 35 80 <\r> <\n> avec puis sans informations d'en-tête:
ID: 137, DeviceStatus: 0, BlindsLevel: 35, BlindsSlope: 80 <\r> <\n>
137,0,35,80 <\r> <\n>
Commande ACTION
L'action de commande exécutera l'action sur l'ID d'appareil avec une valeur d'envoi. Les actions sont définies uniquement pour les stores. Il existe trois numéros d'actions pour les stores:
0 arrêt aveugle
1 ajuster le niveau de la position réelle + -valeur
2 ajustez l'angle mort de la position réelle + -valeur
Exemple de sortie de la commande ACTION 137 1 -20 <\r> <\n> : ID: 137, AdjustBlindsLevel: -20 <\r> <\n>
Commande PUSHALL
La commande PUSHALL permet d'envoyer tous les changements de périphériques. Les informations sont envoyées dans le même format que la réponse à la commande GET. Veuillez noter que lorsqu'il est utilisé sur la ligne RS485, il peut y avoir un conflit possible sur le bus qui résout une incompatibilité de données. Nous suggérons donc d'utiliser cette commande uniquement dans les lignes en duplex intégral / comme RS232 ou RS422. Il est possible de l'activer également sur la ligne RS485 dans les systèmes où aucune commande SET ou ACTION ne sera utilisée - cela signifie uniquement dans les systèmes de surveillance. Dans les lignes RS485 où les commandes SET et ACTION sont requises, nous suggérons d'utiliser le regroupement périodique via la commande GET au lieu de la surveillance automatique.
Mode d'adresse
Lorsque l'ID d'interface unique est défini, il est possible d'utiliser toutes les commandes en mode adresse. Dans ce mode, l'en-tête d'adresse procédant à la commande elle-même. Les en-têtes d'adresse sont des séquences! InterfaceID: où InterfaceID est défini dans la configuration de l'interface. Chaque ligne de réponse est ensuite traitée avec le même en-tête. Seule l'interface avec l'adresse correcte répondra - un adressage incorrect ne peut pas être reconnu par la réponse.
Exemple de demande de mode d'adresse avec la commande! 2: LISTE <\r> :
! 2: ID: 2, Type: Commutateur, Nom: Commutateur Ex, État: OK <\r> <\n> ! 2: ID: 3, Type: MultiValueSwitch, Nom: Chauffage et refroidissement, État: OK <\r> <\n> ! 2: ID: 4, Type: Bouton-poussoir, Nom: Bouton-poussoir, État: OK <\r> <\n> ! 2: ID: 5, Type: Variateur, Nom: Sortie analogique, Etat: OK <\r> <\n> ! 2: ID: 6, Type: Thermostat, Nom: Thermostat 1, État: OK <\r> <\n> ! 2: ID: 7, Type: Variable, Nom: KNXVariable, Statut: OK <\r> <\n> ! 2: ID: 8, Type: Variable, Nom: Azimut du soleil, Statut: OK <\r> <\n> ! 2: ID: 11, Type: Store, Nom: Store virtuel, Statut: OK <\r> <\n>
Pour exposer les appareils dans le protocole d'intégration, accédez d'abord à Exposer les appareils et choisissez Ajouter une nouvelle interface . Parmi les interfaces proposées, choisissez l'un des protocole d'intégration RS485, protocole d'intégration TCP ou protocole d'intégration UDP :
Après avoir ajouté l'interface selon le type, remplissez les autres paramètres. Définissez un ID d'interface unique pour chaque interface si vous souhaitez utiliser le mode d'adresse.
Choisissez le terminal pour la communication et remplissez les paramètres de communication pour RS485. Définissez tous les paramètres de ligne série comme requis par le client connecté.
Définissez le port TCP de l'interface esclave:
Définissez le port UDP de l'interface esclave:
Utilisez ensuite Ajouter un appareil pour ajouter vos appareils dans les appareils exposés:
Choisissez l'appareil dans la liste des appareils proposés. Veuillez noter que les appareils déjà ajoutés sont masqués.
Après avoir ajouté un périphérique, il s'affiche dans la liste des périphériques pour l'interface du protocole d'intégration:
Cliquez sur l'appareil pour afficher des informations à ce sujet, modifier l'ID d'appareil généré automatiquement ou supprimer l'appareil des appareils exposés.
Debugging RS485 communication
Pour les connexions RS485, il est possible de connecter l'adaptateur USB RS485 à votre PC. Les demandes et les réponses seront visibles dans l'application console.
Convertisseur USB vers RS485 standard
http://sk.farnell.com/ftdi/usb-rs485-we-1800-bt/cable-usb-rs485-serial-converter/dp/1740357
Remarque: ce convertisseur n'est pas isolé galvaniquement, vous devez donc connecter le GND du convertisseur avec GND de Core .
Logiciel de terminal pour Windows
Comment configurer le terminal HTerm
Définissez les propriétés de connexion correctes pour qu'elles correspondent aux paramètres de l'interface TapHome Integration Protocol. (Notez que le débit en bauds par défaut est 9600) Remarque: Si vous souhaitez voir les modifications des appareils TapHome dans la console, utilisez la commande "PUSHALL ON".
Pour déboguer la communication TCP, il est possible d'utiliser le terminal putty (https://putty.org/). Veuillez utiliser les paramètres suivants pour la connexion TCP:
Core abord le type de connexion sur Raw, puis remplissez l'adresse IP de Core et le port défini dans les paramètres du protocole d'intégration TCP exposés.