Guide: IPX800 et Zibase

Après la Vera, nous allons voire aujourd’hui l’utilisation de l’IPX800 avec la Zibase. L’utilisation de la carte IPX800 avec la Zibase a été grandement facilitée grâce à la mise à jour de cette dernière en juin. En effet, trois nouvelles fonctions ont fait leur apparition.

Voyons tout d’abord les deux fonctions permettant de contrôler l’IPX800.

Pour utiliser ces fonctions, il faudra créer un scénario en mode expert sur l’interface d’administration de la Zibase. La première fonction est « Rediriger une action sur HTTP »:

 

 

Cette fonction permet d’associer des requêtes HTTP aux boutons On et Off d’un module « virtuel », en quelque sorte.

Le premier argument permet de donner un numéro au device, sachant que la lettre sera toujours H. Ici, je souhaite donner l’adresse H4 à mon module, donc.

Ensuite, nous indiquons la requête pour la fonction « On »: http://192.168.2.11/preset.htm?led1=1

et la requête pour le « Off »: http://192.168.2.11/preset.htm?led1=0

Led1 indique qu’on souhaite contrôler le relai n°1, puis le =1 ou =0 permettent d’activer ou désactiver le relai.

Il n’y a plus qu’à créer un device sur la Zibase, ayant l’adresse H4:

 

 

On peut bien sûr lui donner le nom qu’on souhaite et sélectionner une icone appropriée. A partir de maintenant, sur le PCPad ou l’application iPhone, par exemple il sera possible d’activer ou de désactiver le relai 1 de la carte, de façon totalement transparente, en faisant simplement un On ou Off du module.

Cette commande est utile si on ne souhaite représenter que quelques relais de la carte sur la Zibase. Si on veut contrôler les 8 relais, cette fonction obligerait à créer 8 scénarios pour affecter les adresses HTTP correspondantes à 8 devices.

Il existe heureusement une fonction qui facilite bien la vie: Rediriger une famille sur HTTP

 

 

Avec une seule commande, il va être possible de rediriger les commandes vers les 8 relais (jusqu’à neuf supportés par cette fonction).

On indique la lettre à affecter aux devices, ici sans limite, par exemple la lettre A.

Ensuite, on indique la requête HTTP de cette façon, en passant des méta caractères: http://192.168.2.11/preset.htm?led#=*

La Zibase se chargera de remplacer automatiquement le « # » par le numéro de relai, et le « * » par la commande On ou Off (1 ou 0).

Voilà, avec ce seul scénario, il va être possible de contrôler les 8 relais de l’IPX800, qui auront les adresses de A1 à A8 !

Il ne reste plus qu’à créer les devices correspondant, par exemple pour le premier:

 

 

On crée ainsi les 8 devices, en incrémentant le numéro jusqu’au 8ème.

On peut maintenant piloter les 8 relais depuis le PCPad, l’iPhone, les utiliser dans des scénarios, etc…

 

 

Bon, maintenant il nous reste un dernier détail à régler: si on décide de contrôler l’IPX800 directement depuis son interface, ou encore depuis Homeseer, etc… comment faire en sorte que la Zibase en soit informée ? Car par défaut, l’état des relais ne sera pas mis à jour automatiquement sur la Zibase.

Nous allons utiliser pour cela le fichier xml des status de l’IPX800 disponible via l’adresse http://adresse_ip_IPX800/status.xml, qui liste l’état de toutes les entrées / sorties de la carte (et bien plus):

 

 

Les lignes « ledx » représentent l’état des 8 relais (attention, le numéro est décalé: led0 = relai 1, etc…), les lignes « btnx » les 8 entrées digitales, « anx » les entrées analogiques, et les « countx » les compteurs d’impulsion.

Une nouvelle fonction sur la Zibase permet de lire une valeur donnée dans un fichier délimité, comme ici notre fichier xml. Tout cela va nous permettre de mettre en place un système de « polling » (d’interrogation) pour mettre à jour l’état des relais sur la Zibase.

Tout d’abord, on crée un nouveau scénario en mode expert, qui va se répéter à intervalle régulier. Ici, j’indique toutes les 300s (5min), ce qui est suffisant pour mon besoin:

 

 

Ensuite, on va affecter une balise à une variable, afin d’indiquer le délimitateur de la valeur à récupérer. Par exemple, si on veut récupérer l’état du premier relai, on indique led0:

 

 

Après, on utilise la nouvelle fonction « Commander par HTTP », mais en cochant « Lire en retour une valeur balisée par », et en indiquant la variable utilisée précédemment, soit V0:

 

 

L’URL indiquée est bien sûr celle du fichier XML: http://adresse_ip_IPX800/status.xml

Grâce à cela, la Zibase va lire le fichier status.xml, chercher la valeur de led0, et la stocker dans la variable V0.

Pour notre « polling », nous allons ensuite utiliser la commande « Activer le périphérique », sélectionner le device correspondant au relai 1, et cocher « On Off suivant une  variable », en indiquant bien sûr la variable utilisée jusqu’ici, V0:

 

 

Donc, pour résumer: si pour x raisons vous activez un relai via un autre moyen que la Zibase, par exemple directement via l’interface de l’IPX800, la Zibase va aller vérifier l’état des relais via le fichier status.xml, et mettre à jour ses devices. L’état des relais sur la Zibase reflètera donc toujours la réalité, à 5min près (on peut réduire le délai, à tester pour ne pas surcharger la Zibase toutefois). Seul inconvénient: il faudra ici créer un scénario par relai à interroger.

Cette possibilité d’aller lire une valeur dans un fichier est à retenir précieusement: elle pourra en effet permettre d’aller lire l’état des entrées digitales (On / Off), la valeur de sondes de températures connectées aux entrées analogiques (en effectuant le calcul adéquat sur la variable récupérée), ou encore lire la valeur des compteurs d’impulsions (pour lire la consommation d’eau, ou d’électricité par exemple). Il sera très facile par exemple de lire la consommation électrique et de se la faire lire par le Karotz le soir :p

Comme on peut le voir, l’utilisation de la carte IPX800 avec la Zibase est un vrai bonheur :D

Si vous n’avez pas suivi tout ce dont est capable d’apporter la carte IPX800, je vous invite à lire sa présentation générale que j’en ai faite ici.


15 Commentaires

      Laisser un commentaire

      Ne ratez plus aucune news !

      Inscrivez vous à notre newsletter, et recevez chaque mois toute l'actualité du blog pour ne plus rien louper: actualité, guides, tutoriaux, concours !

      Merci pour votre inscription !