La domotique
Les architectures classiques
Trois technologies principales sont basées sur des architectures réseaux de type classique dans le marché de la domotique :
- X10
- XPL
- EIB/KNX
X10
La norme X10 est le standard crée il y a plus de 20 ans par la société POWERHOUSE pour contrôler des appareils domestiques aux Etats-Unis
et dans le reste du monde.
Comme toute architecture domotique traditionnelle, la norme X10 utilise la technologie CPL pour constituer son réseau.
Le principe est d’avoir des émetteurs et des récepteurs connectés au réseau électrique communiquant entre eux comme le montre
le schéma ci-dessous.

Structure des données
La trame est structurée avec une partie adresse et une partie
commande envoyée à tous les récepteurs en même temps.
Ainsi, seuls les
récepteurs correctement adressés exécutent les ordres donnés. Les
différents ordres envoyés peuvent être :
- des ordres de type marche ou arrêt ;
- des ordres de type variation croissante ou décroissante de variateur de courant ;
- des valeurs de températures issues de capteurs ;
- Des remontées de capteurs de type détecteur de présence infra-rouge.

Le protocole X10 est constitué de paquets de 4 bits « house » (code « maison » de A à P) suivis de 4 bits « unit » (code « unité » de 1 à 16) suivis de 4 bits commande. Ce qui offre 256 possibilités d'adressage différentes pour chaque module domotisé.
Chaque signal est envoyé plusieurs fois pour pallier d'éventuels échecs de transmission.Principe de transmission
Le principe est d'envoyer un signal basse tension en superposition du signal 220V-50Hz.
Les transmissions X10 sont synchronisées au début des signaux du courant électrique. Pour ce faire, un signal carré de référence à 50 Hz est émis par l'émetteur et le récepteur. Des signaux de 2.5V sont alors transmis à 120kHZ et ceci au plus proche du zéro. La transmission à 120 kHz dure 1 milliseconde. Une rafale à 1 ms correspond à un bit à 1. Par opposition, l'absence de rafale correspond à un bit à 0. Le signal à 120kHz est représenté en rouge sur le schéma ci-dessous.
Ces rafales de 1ms sont envoyées trois fois, afin de coïncider avec les croisements à zéro des trois phases dans les systèmes triphasés.

L'ensemble du message est ainsi transmis sur onze cycles du courant électrique :
- Le code début est transmis sur les deux premiers cycles. Il est toujours égal à 1110
- Le code maison qui correspond à une des 16 positions du potentiomètre maison est transmis sur quatre cycles. Dans l'exemple, il est égale à : Code Maison= M4 M3 M2 M1 = 1 1 1 1 ce qui correspond à la lettre J
- les cinq derniers cycles représentent soit un code de numéro (de 1 à 16) soit un code de fonction pré-définie (On, Off, etc.). Dans l'exemple, le Code numéro = N5 N4 N3 N2 N1= 0 1 1 1 1 ce qui correspond à la fonction extension de code
Avantages/inconvénients
Le tableau suivant montre que porter son choix sur la norme X10 pour construire son réseau domotique peut avoir des avantages mais aussi un certain nombre d'inconvénients.
Les avantages :
La faible tension du signal (2.5V) est sans danger pour les appareils électriques du logement.
Il est possible de contrôler la maison à travers de simples commandes
Aucun recâblage de la maison ne doit être fait pour profiter de cette technologie
Il existe de nombreux logiciels de gestion domotique qui sont payants, d'autres gratuits et certains sont même open-source
Les compétences requises pour l'installation se limitent à savoir brancher un appareil à une prise et d'utiliser un tournevis pour tourner les " disques " de sélection d'adresse.
Inconvénients :
99% des produits X10 sont fabriqués en 110v 60 Hz pour les USA. Les produits 220V pour la France sont fabriqués en petite série et coûtent deux à trois fois plus cher que sur le marché américain.
En cas de courant triphasé, on doit utiliser un module spécifique. Les signaux sont bloqués par les transformateurs, ce qui limite l'utilisation avec certains types de lampes halogènes
Les signaux X10 doivent être filtrés à l'entrée/sortie d'un domicile pour ne pas circuler sur les installations voisines
Il n'est possible d'envoyer qu’un seul ordre à la fois (il peut néanmoins être destiné à plusieurs équipements en même temps)
XPL
xPL (eXtremely simPle protocoL) est un protocole ouvert dont le but est de permettre de contrôler et commander des équipements de Home Networking. Ce protocole permet une auto-découverte et une auto-configuration des services offerts par les équipements, en s’appuyant sur une architecture entièrement "plug & play". Ainsi, cela permet à ce protocol d'être plus simple d'installation que d'autres protocoles domotique comme X10.
Il existe 3 types de messages xPL :
- xpl-cmnd (commande) : ce message permet d’envoyer des commandes à l’équipement xPL
- xpl-trig (trigger) : ce message est généré quand un équipement change d’état
- xpl-stat (status) : ce message est envoyé pour récupérer l’état d’un équipement
Quelques utilisations du protocol XPL:
- Dans l'IPBX Asterisk, un module simule un équipement XPL qui envoie des commandes pour la mise à jour d’autres équipements. Par exemple, cela permet d'afficher sur un équipement (de type électroménager, hifi, etc) composé d'un afficheur numérique (machine à laver, ...) les informations concernant un appelant tel que son numéro de téléphone. Pour ajouter cette fonctionnalité à l'IPBX, il suffit d'y activer le module XPL et d'ajouter une ligne dans son fichier de configuration.
- Le protocol XPL est intégrable dans un réseau basé sur le modèle TCP/IP. Cela permet par exemple de programmer des modules supplémentaires qui permettraient d'envoyer des messages XPL :
- depuis une page web en PHP et/ou Javascript par exemple
- depuis une JVM : en utilisant la librairie XPL4Java
- depuis des script Perl, Python, C, C++, ActiveX, ...
EIB/KNX

EIB/KNX est une technologie basée sur le bus EIB (European Installation Bus) et le protocole KNX (crée par l'association Konnex qui regroupe plusieurs grands fabriquants tels que Schneider, Legrand ou encore Siemens). Ce sont tous les deux des standards ouverts (c'est à dire non propriétaire) qui sont normalisés ISO. Cette technologie est largement utilisée par des particuliers dans des réseaux domotiques. Elle est par ailleurs aussi utilisée dans des cadres professionnels à usage industriel ou tertiaire (l'immotique).
Architecture d'un réseau EIB/KNX:
Comme le montre le schéma ci-contre, un réseau EIB/KNX est crée en regroupement les équipements électriques de la maison en passant simplement par l'armoire électrique EDF. Ainsi, ces équipements sont aussi bien des équipements conçu spécifiquement pour fonctionner avec EIB que d'autres équipements plus basiques (électroménagers, ...).
La technologie EIB/KNX peut se décomposer en 2 couches principales :
- La couche BCU (Bus Coupler Unit) : le fabricant doit fournir l'interface qui fera le lien entre les fonctions propres du produit et le système normalisé EIB/KNX. Elle permet donc de gérer la communication sur le réseau en codant et décodant les informations.
- La couche EIB/KNX : système de communication normalisé, par câble ou sans fil, qui permet à tous les composants de se connecter entre eux et de se comprendre. Dans le cas d'une installation par câble, la technologie EIB/KNX utilise une paire torsadée qui peut cheminer avec les câbles « courant fort », sans aucune perturbation.
Principe de transmission
Pour permettre la communication entre différents équipements de manière efficace, le protocole CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance) est utilisé.

- La station voulant émettre écoute le réseau. Si le réseau est encombré, la transmission est différée. Dans le cas contraire, si le média est libre pendant un temps donné (appelé DIFS pour Distributed Inter Frame Space), alors la station peut émettre. La station transmet alors un message appelé Ready To Send (ou Request To Send, noté RTS signifiant prêt à émettre) contenant des informations sur le volume des données qu'elle souhaite émettre et sa vitesse de transmission.
- Le récepteur (généralement un point d'accès) répond un Clear To Send (CTS, signifiant Le champ est libre pour émettre), puis la station commence l'émission des données.
- A réception de toutes les données émises par la station, le récepteur envoie un accusé de réception (ACK). Toutes les stations avoisinantes patientent alors pendant un temps qu'elles considèrent être celui nécessaire à la transmission du volume d'information à émettre à la vitesse annoncée.
Structure des données
En EIB/KNX, une trame de données est constituée de la manière suivante:
Champs CONTROLE: ce champ va contenir un ensemble d'information utile telle que la priorité du système. Cette information est utilisée dans le cas où 2 participants commencent à émettre simultanément, le participant avec la plus haute priorité accède immédiatement au bus, tandis que le deuxième participant doit attendre et refaire un essai plus tard. C'est aussi dans ce champ qu'un bit va permettre de dire si ce télégramme correspond à une première émission ou à une réemission.
Champs CR: cette information correspond à un compteur de routage et permet d'éviter qu'un télégramme ne tourne en boucle sur le réseau. Ainsi, le télégramme est détruit une fois qu'il a traversé le nombre maximum d'équipements spécifié par ce champ.
Champs LG: ce champ correspond à la longueur des données utiles à transmettre.
Champs SECURITE: va contenir le résultat du calcul de parité qui va être effectué à l'émission. Cela permet de vérifier à la réception que les données n'ont pas été altérées pendant la transmission. Le récepteur va ainsi recalculer de son côté le résultat du calcul de parité puis vérifier que ce résultat est bien égal à cela envoyé par l'emetteur.
Afin de permettre une meilleure efficacité, l'ensemble du télégramme est décomposé en caractères de 8 bits avant la transmission. Chaque caractère est alors émis en l'accompagnant des informations suivante: bit de start, bit de parité et bit de stop. Les données étant transmises de façon asynchrone, les bits de démarrage (bit de start) et d'arrêt (bit de stop) permettent la synchronisation. Le bit de parité va ainsi permettre un contrôle plus fin (caractère par caractère) des données transmises.
Après l'envoi de chaque caractère, un temps d'attente de 2 bits (Pause) est marqué. Le caractère suivant est ensuite émis et ceci jusqu'à la transmission complète du télégramme. Le récepteur confirme alors, après réception des données et contrôle des parités, que toutes les données ont correctement été transmises.
Accès externe à un réseau EIB/KNX
Il est possible d'accéder à un réseau EIB/KNX à partir de l'exterieur du réseau par différents moyens:
Grâce à un routeur IP , le système EIB/KNX peut être piloté par un utilisateur à l'intérieur d'un réseau informatique.

Elle consiste à relier, à l'aide d'un modem EIB/KNX, le système à une ligne téléphonique, afin de pouvoir l'atteindre à partir de n'importe quel endroit du monde.
- Avantages : bon marché en terme de matériel, sécurité maximale (car communication point à point => canal partagé avec personne)
- Inconvénients : coût des communications élevé, vitesse de communication lente

Communication directe par Internet : un serveur Internet de pages Web est nécessaire sur l'installation EIB/KNX que l'on désire atteindre.
- Avantages : rapidité et faible coût de la communication.
- Inconvénient : coût du matériel élevé.
- Avantage : solution moins coûteuse en matériel.
- Inconvénient : abonnement à une société tierce.