Openwebnet

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

OpenWebNet est un protocole de communication conçu et développé par BTicino depuis 2000.

Un tel protocole est né pour permettre l’interaction entre toutes les fonctions du système domotique MyHome.

L’évolution récente a permis d’utiliser OpenWebNet pour interagir avec n’importe quel système domotique (comme les systèmes basés sur le bus EIB/Konnex et DMX par exemple) moyennant l’usage de passerelles adaptées.

Le standard OpenWebNet est publié sur le site de la MyOpen Community.

Protocole OpenWebNet[modifier | modifier le code]

Le protocole est pensé pour être indépendant du moyen de communication utilisé. Par exemple il est possible d’utiliser une application PC, connecté via Ethernet ou RS232 ou USB, à une passerelle directement connectée au système domotique à contrôler.

Le minimum requis est de pouvoir utiliser les tons DTMF sur la ligne téléphonique PSTN pour la transmission des messages.

N’importe qui peut requérir l’extension des messages qui constituent le langage d’interaction avec le champ.

Il suffit de proposer sa propre RFC, qui sera examinée et diffusée si elle répond aux critères de syntaxe de l'OpenWebNet.


Syntaxe[modifier | modifier le code]

Un message OpenWebNet est structuré avec des champs successifs spécifiant les détails de l’information contenue.

Il est ainsi caractérisé par une structure faite de champs à longueur variable séparés par le caractère spécial " * " et est fermé par " ## ".

Les caractères autorisés dans les champs sont des chiffres ainsi que le caractère " # ".

La structure d’un message est donc :

*champ1*champ2*...*champN##

La typologie des champs admise aujourd’hui est la suivante :

  • QUI
  • QUOI
  • GRANDEUR
  • VALEUR

QUI

Indique la fonction sollicitée de l’installation domotique destinataire du message OpenWebNet. Exemple : QUI=1 identifie les messages pour la gestion de la lumière.

Indique l’ensemble des objets destinataires du message. Cela peut être un objet seul, un groupe d’objet, un environnement spécifique, le système entier, etc. Chaque QUI (donc chaque fonction) se voit attribuer une table de OÙ spécifique.

Le tag OÙ peut aussi contenir des paramètres facultatifs spécifiés ainsi : OÙ#PAR1#PAR2…#PARn Exemple : toutes les lumières du groupe 1, le détecteur 2 de la zone 1 du système anti-intrusion, etc…

QUOI

Indique une action à accomplir ou un état à lire. Chaque QUI (chaque fonction) se voit attribuer une table de QUOI spécifique Le champ QUOI peut aussi contenir des paramètres facultatifs spécifiés de la manière suivante : QUOI#PAR1#PAR2…#PARn. Exemples d’actions : allumage lumière, dimmer à 75 %, fermeture des volets roulants, allumage radio, etc

Exemples d’états : lumière allumée, alarme active, batterie déchargée, etc…

GRANDEUR

Indique une grandeur qui caractérise l’objet auquel le message fait référence. Il est possible de requérir/lire/écrire la valeur d’une grandeur. À chaque grandeur est associé un nombre prédéfini de valeurs, spécifié dans le champ VALEUR.

Exemple de grandeur : température d’un thermomètre, volume d’un haut-parleur, version firmware d’un dispositif.

VALEUR

Indique la valeur lue ou à écrire de la grandeur demandée/lue/écrite dans le message.


Messages[modifier | modifier le code]

Il existe 4 types de messages OpenWebNet

  • Messages de Commande/État
  • Messages de Requête d’État
  • Messages de Requête/Lecture/Écriture de Grandeur
  • Messages d’Acknowledgement

Messages de Commande / État

*QUI*QUOI*OÙ##

Messages de Requête d’Etat

*#QUI*OÙ##

Messages de Requête/Lecture/Écriture Grandeur

Requête:
*#QUI*OÙ*GRANDEUR##
Lecture:
*#QUI*OÙ*GRANDEUR*VALEUR1*...*VALEURn##
Écriture:
*#QUI*OÙ*#GRANDEUR*VALEUR1*...*VALEURn##

Messages d’Acknowledgement

ACK:
*#*1##
NACK:
*#*0##

Passerelle OpenWebNet[modifier | modifier le code]

Il existe aujourd’hui 2 types de passerelles qui permettent de rejoindre le bus de champ :

Web Server

Ce sont des serveurs Web embarqués qui sont chargés de la traduction entre les messages OpenWebNet transmis sur TCP/IP et les messages SCS du bus de champ.
Ces serveurs sont développés sur une plate-forme Linux.

Interface Série/USB

Il s’agit d’une interface chargée de la traduction entre les messages OpenWebNet transmis sur USB et/ou RS232 et les messages SCS du bus de champ.

Documentation Externe[modifier | modifier le code]

Liens externes[modifier | modifier le code]