Fonctionnalités domotiques - Version imprimable +- Forum KNX francophone / English KNX forum (https://www.knx-fr.com) +-- Forum : Français (https://www.knx-fr.com/forumdisplay.php?fid=3) +--- Forum : Archives eib-domotique (https://www.knx-fr.com/forumdisplay.php?fid=8) +--- Sujet : Fonctionnalités domotiques (/showthread.php?tid=1228) |
Fonctionnalités domotiques - jef2000 - 23/06/2007 Je suis en train de réaliser un programme de supervision de mon installation domotique. Le but est de faire tourner l'application sur mon routeur Wifi (Linksys WRT54GS avec le firmware OpenWRT). J'ai déjà réalisé l'interface série avec le bus EIB et j'utilise un programme appelé EIBD pour l'accès au bus ( http://thor.auto.tuwien.ac.at/~mkoegler/index.php/eibd ) J'en suis donc arrivé à rechercher tous les domaines dans lequels ce projet pourrait apporter une valeur ajoutée à l'installation. Voici la liste que j'ai déjà trouvée: 1) Timer: Déclenchement d'actions ponctuelles, journalières, hebdomadaires (exemple: mettre les thermostat en mode confort le matin, une demi-heure avant l'heure du réveil) 2) Alarme: Lorsque le mode alarme est activé, toute activité inattendue sur le bus EIB (interrupteur, contact de fenêtre, détecteur de présence) active un signal sonore et me prévient par e-mail ou SMS 3) Simulation de présence lorsque je pars en vacances 4) Interface web pour la commande à distance des fonctions domotiques (intéressant pour allumer le chauffage avant de rentrer chez soi, pour l'éclairage je ne vois pas trop l'intérêt mais techniquement c'est possible) 5) Gestion plus flexible de la sonnette: Pouvoir moduler le volume de la sonnerie, la mettre en mode silencieux quand les enfants font leur sieste. Voire même être prévenu par SMS lorsque qqn sonne. Je suis sûr qu'il y a encore des tas d'autres applications auxquelles je n'ai pas pensé, Je compte sur vous pour allonger la liste. Toutes les idées sont les bienvenues. Merci d'avance Fonctionnalités domotiques - Marc Assin - 24/06/2007 On 23 juin, 21:52, jef2000 <jef2...@ouaye.net> wrote: > J'ai déjà > réalisé l'interface série avec le bus EIB et j'utilise un programme > appelé EIBD pour l'accès au bus (http://thor.auto.tuwien.ac.at/~mkoegler/index.php/eibd Chapeau ! Cà m'a l'air d'être un travail de développement considérable. > Voici la liste que j'ai déjà trouvée: Effectivement, tu as mentionné les applications les plus employées. Mais la Visu ? je n'ai pas compris comment tu fais ! Je ne sais pas si c'est applicable dans ton cas, mais une librairie de fonctions est très utile (logic: AND, OR, math: Sin, Cos, Tang etc). Ca permet de créer des fonctions de haut niveau, sans chaque fois faire un développement spécifique à la demande. Exemple: un parser web, cela m'a permis d'afficher les prévisions météo sur 12 jours, en faisant des extracts d'un site web météo. Autre exemple: la fonction "total" me permet de voir le nombre de lampes allumées Toutes mes félicitations. Fonctionnalités domotiques - jef2000 - 26/06/2007 > Effectivement, tu as mentionné les applications les plus employées. > Mais la Visu ? je n'ai pas compris comment tu fais ! Pour l'instant, je commande le tout via le petit serveur web intégré a mon routeur wifi. J'ai des scripts CGI qui appellent des petits programme permettant de commuter et lire l'état des différents actionneurs, lire les températures des thermostats, changer leur mode de fonctionnement etc... Ces petits programmes en ligne de commande ont été écrits sur la base des exemples fournis avec EIBD. J'ai également connecté une passerelle ethernet-bluetooth pour pouvoir consulter cette interface web avec un vieux Palm Tungsten qui me sert de télécommande de luxe. Le problème, c'est que ni EIBD ni les petits programmes appelés par l'interface web ne retiennent l'état actuel d'une requête à l'autre, ce qui les oblige à chaque fois lire cet état via le bus sur le participant concerné. Pour la page qui affiche la température et le mode (confort, standby, nuit ou protection-gel) des thermostats de chaque pièce, ça devient un peu lourd (2 à 3 seconde chaque fois que j'affiche la page). D'où mon idée de développer une nouvelle application et tant qu'a faire lui en demander beaucoup plus que ce qui n'était possible avant. > Je ne sais pas si c'est applicable dans ton cas, mais une librairie de > fonctions est très utile (logic: AND, OR, math: Sin, Cos, Tang etc). > Ca permet de créer des fonctions de haut niveau, sans chaque fois > faire un développement spécifique à la demande. Je n'en ai pas parlé dans mon premier message mais en fait, c'est à la base de la solution que je compte mettre en oeuvre. L'idée est de partir d'un fichier de configuration xml décrivant une série de conditions et d'actions à exécuter lorsque ces conditions se vérifient. Une condition de base peut être un changement d'état de l'un des objets de groupe EIB, d'une variable interne, l'expiration d'un timer, etc... On peut également combiner ces conditions de base vie les fonctions logiques dont tu parlais. Cela permet déjà pas mal de chose, des fonctionnalités comme l'alarme ou le simulateur de présence par exemple peuvent sans trop de problèmes être exprimés via ce genre de règles. Les règles seraient donc chargées au démarrage depuis le fichier xml, il serait ensuite possible d'en ajouter via une interface web et de re- sauvegarder le tout au format xml de manière à les conserver lors des redémarrages ou coupures de courant. Voici un exemple de configuration qui allume la lumière de ma chambre progressivement entre 6H30 et 7H les jours de semaine, si on est présent (j'ai un interrupteur près de la porte d'entrée qui me permet de signaler lorsque la maison n'st pas occupée) et si le réveil est activé (comme tout bon réveil, faut bien un moyen de le couper) La condition est évaluée à chaque fois qu'une de ses conditions de base marquée d'un " trigger='true' " a changé. <?xml version="1.0" ?> <config> <rule id='wakeup_alarm'> <condition type='and'> <condition type='eib' trigger='false'> <object id='presence'> <value>false</value> </condition> <condition type='eib' trigger='false'> <object id='wakeup_enabled'> <value>true</value> </condition> <condition type='timer' trigger='true'> <at>30 6 * * 1,2,3,4,5</at> </condition> </condition> <action type='dim-up'> <id>dim_chambre2</id> <start>0</start> <stop>240</stop> <delay>1800</delay> </action> <action type='set'> <id>chauffage_cuisine</id> <value>comfort</value> </action> </rule> <objects> <knxConnection line='1/1' url="ip:192.168.0.10"/> <object id='presence' gad='1/1/60'>Presence</object> <object id='dim_chambre2' gad='1/1/45' type='EIS6'>Dimmer chambre 2</object> <object id='wakeup_enabled' gad='1/2/1' persistent='true'>Réveil activé</object> </objects> </config> > Exemple: un parser web, cela m'a permis d'afficher les prévisions > météo sur 12 jours, en faisant des extracts d'un site web météo. > Autre exemple: la fonction "total" me permet de voir le nombre de > lampes allumées > > Toutes mes félicitations. Fonctionnalités domotiques - Marc Assin - 26/06/2007 On 26 juin, 21:32, jef2000 <jef2...@ouaye.net> wrote: > Le problème, c'est que ni EIBD ni les petits programmes appelés par > l'interface web ne retiennent l'état actuel d'une requête à l'autre, J'avais bûté dans le même genre de limitation... avant d'abandonner mon aventure au profit d'une autre solution. > L'idée est de partir d'un fichier de configuration xml décrivant une > série de conditions et d'actions à exécuter lorsque ces conditions se > vérifient. Chapeau ! Fonctionnalités domotiques - Ziki - 26/06/2007 Salut, Ton projet se rapproche pour certaines parties beaucoup du miens. Mon idée de base est d'également faire tourner eibd avec une interface tpuart sur une petite plateforme Linux (genre Soekris, Wrap ou carte mère à base d'AMD Geode LX800). Sur cette plateforme tournerait un serveur web contenant des pages web (avec probablement une utilisation intensive de Javascript et d'Ajax) interagissant avec l'installation eib. Ces pages seraient consultables grâce à des écrans tactiles présents dans la maison, tournant également sous Linux mais sans disque dur, l'OS étant chargé depuis le réseau : http://www.ieiworld.com/en/product_IPC.asp?model=AFL-08A-LX Voici les principales fonctionnalités que j'avais retenues pour commencer: - affichage et modification de l'état de l'éclairage des différentes pièces - affichage et modification de la température/chauffage - affichage du status des différents capteurs de l'alarme - branchement de l'alarme à l'aide d'un code - affichage des quelques cameras présentes dans l'habitation - gestion de la sonnette avec possibilité d'ouverture de la porte + affichage de la caméra présente à la porte d'entrée - gestion de la musique (lecture d'MP3) avec gestion multiroom J'oublie peut être encore des choses mais en gros, c'est ce que je voudrais faire. Mon choix s'est porté sur des pages HTML car cela permet un développement selon moi plus rapide qu'une application Windows, l'intégration des cameras est faite en 3 lignes grâce à du Flash par exemple, les technologies comme Ajax permettent de faire des choses très intéressantes (par exemple, concrètement, d'actualiser les températures sans recharger la page), l'application peut tourner sur toutes les plateformes (forcement, c'est du web),... Pour ton problème de délai d'affichage, pourquoi ne pas simplement faire un cron qui irait lire la valeur des capteurs toutes les minutes puis les stocké quelque part, ensuite pour l'affichage de tes pages tu n'aurais plus qu'a aller lire ce que tu as stocké auparavant? Ce qui est rigolo, c'est qu'apparemment tu es de Braine et moi de Wavre, ce n'est pas très loin. A+, Cyrille -----Message d'origine----- De : domotique-EIB@googlegroups.com [mailto:domotique-EIB@googlegroups.com] De la part de jef2000 Envoyé : mardi 26 juin 2007 21:32 À : domotique-EIB Objet : Re: Fonctionnalités domotiques > Effectivement, tu as mentionné les applications les plus employées. > Mais la Visu ? je n'ai pas compris comment tu fais ! Pour l'instant, je commande le tout via le petit serveur web intégré a mon routeur wifi. J'ai des scripts CGI qui appellent des petits programme permettant de commuter et lire l'état des différents actionneurs, lire les températures des thermostats, changer leur mode de fonctionnement etc... Ces petits programmes en ligne de commande ont été écrits sur la base des exemples fournis avec EIBD. J'ai également connecté une passerelle ethernet-bluetooth pour pouvoir consulter cette interface web avec un vieux Palm Tungsten qui me sert de télécommande de luxe. Le problème, c'est que ni EIBD ni les petits programmes appelés par l'interface web ne retiennent l'état actuel d'une requête à l'autre, ce qui les oblige à chaque fois lire cet état via le bus sur le participant concerné. Pour la page qui affiche la température et le mode (confort, standby, nuit ou protection-gel) des thermostats de chaque pièce, ça devient un peu lourd (2 à 3 seconde chaque fois que j'affiche la page). D'où mon idée de développer une nouvelle application et tant qu'a faire lui en demander beaucoup plus que ce qui n'était possible avant. > Je ne sais pas si c'est applicable dans ton cas, mais une librairie de > fonctions est très utile (logic: AND, OR, math: Sin, Cos, Tang etc). > Ca permet de créer des fonctions de haut niveau, sans chaque fois > faire un développement spécifique à la demande. Je n'en ai pas parlé dans mon premier message mais en fait, c'est à la base de la solution que je compte mettre en oeuvre. L'idée est de partir d'un fichier de configuration xml décrivant une série de conditions et d'actions à exécuter lorsque ces conditions se vérifient. Une condition de base peut être un changement d'état de l'un des objets de groupe EIB, d'une variable interne, l'expiration d'un timer, etc... On peut également combiner ces conditions de base vie les fonctions logiques dont tu parlais. Cela permet déjà pas mal de chose, des fonctionnalités comme l'alarme ou le simulateur de présence par exemple peuvent sans trop de problèmes être exprimés via ce genre de règles. Les règles seraient donc chargées au démarrage depuis le fichier xml, il serait ensuite possible d'en ajouter via une interface web et de re- sauvegarder le tout au format xml de manière à les conserver lors des redémarrages ou coupures de courant. Voici un exemple de configuration qui allume la lumière de ma chambre progressivement entre 6H30 et 7H les jours de semaine, si on est présent (j'ai un interrupteur près de la porte d'entrée qui me permet de signaler lorsque la maison n'st pas occupée) et si le réveil est activé (comme tout bon réveil, faut bien un moyen de le couper) La condition est évaluée à chaque fois qu'une de ses conditions de base marquée d'un " trigger='true' " a changé. <?xml version="1.0" ?> <config> <rule id='wakeup_alarm'> <condition type='and'> <condition type='eib' trigger='false'> <object id='presence'> <value>false</value> </condition> <condition type='eib' trigger='false'> <object id='wakeup_enabled'> <value>true</value> </condition> <condition type='timer' trigger='true'> <at>30 6 * * 1,2,3,4,5</at> </condition> </condition> <action type='dim-up'> <id>dim_chambre2</id> <start>0</start> <stop>240</stop> <delay>1800</delay> </action> <action type='set'> <id>chauffage_cuisine</id> <value>comfort</value> </action> </rule> <objects> <knxConnection line='1/1' url="ip:192.168.0.10"/> <object id='presence' gad='1/1/60'>Presence</object> <object id='dim_chambre2' gad='1/1/45' type='EIS6'>Dimmer chambre 2</object> <object id='wakeup_enabled' gad='1/2/1' persistent='true'>Réveil activé</object> </objects> </config> > Exemple: un parser web, cela m'a permis d'afficher les prévisions > météo sur 12 jours, en faisant des extracts d'un site web météo. > Autre exemple: la fonction "total" me permet de voir le nombre de > lampes allumées > > Toutes mes félicitations. Fonctionnalités domotiques - jef2000 - 26/06/2007 Mon choix de plateforme à été guidé principalement par 2 critères 1) Le prix: Un routeur wifi supportant le firmware OpenWRT coûte moins de 100 EUR, dans mon cas (linksys WRT54GS), il fournit également l'accès wifi, sert de hub ethernet 5 ports. Le critère de prix n'est pas dû à une limitation de mon budget mais a une volonté de montrer que la domotique n'est pas un gadget de luxe mais une commodité tout à fait abordable. 2) La consommation électrique: Kyoto oblige, il faut rester un peu raisonnable et pour un truc qui tourne 24H/24 7J/7, rester en dessous des 5W est tout à fait raisonnable. C'est sûr que ça limite un peu au niveau de la taille de mémoire (4Mb de flash) mais ça fait partie de l'exercice de style. En ce qui concerne Ajax, je garde l'idée. Je ne connaissait pas du tout mais ça à l'air intéressant. Où t'es tu procuré l'interface TPUART? J'ai cherché un peu quand j'ai commencé mon projet mais rien que pour le chip, il fallait le commander en Allemagne etc.. alors j'ai simplifié. Pas de module Kernel, très peu d'électronique "maison" (2 transistors, 2 optocoupleurs et quelques résistances) et une BCU2 qui supporte le protocole FT1.2. Le tout complètement intégré dans le boitier du routeur avec juste un fil rouge et un noir qui sortent vers le bus. Où en est ton installation? Tu as déjà quelque chose qui tourne ou bien c'est encore en projet. Ca m'intéresse de voir d'autres réalisations pour pouvoir confronter mes idées à la réalité, voir si ça tient la route et quels sont les pièges à éviter On 26 juin, 23:10, "Ziki" <z...@omail.be> wrote: > Salut, > > Ton projet se rapproche pour certaines parties beaucoup du miens. > > Mon idée de base est d'également faire tourner eibd avec une interface > tpuart sur une petite plateforme Linux (genre Soekris, Wrap ou carte mère à > base d'AMD Geode LX800). Sur cette plateforme tournerait un serveur web > contenant des pages web (avec probablement une utilisation intensive de > Javascript et d'Ajax) interagissant avec l'installation eib. Ces pages > seraient consultables grâce à des écrans tactiles présents dans la maison, > tournant également sous Linux mais sans disque dur, l'OS étant chargé depuis > le réseau : > > http://www.ieiworld.com/en/product_IPC.asp?model=AFL-08A-LX > > Voici les principales fonctionnalités que j'avais retenues pour commencer: > > - affichage et modification de l'état de l'éclairage des différentes pièces > - affichage et modification de la température/chauffage > - affichage du status des différents capteurs de l'alarme > - branchement de l'alarme à l'aide d'un code > - affichage des quelques cameras présentes dans l'habitation > - gestion de la sonnette avec possibilité d'ouverture de la porte + > affichage de la caméra présente à la porte d'entrée > - gestion de la musique (lecture d'MP3) avec gestion multiroom > > J'oublie peut être encore des choses mais en gros, c'est ce que je voudrais > faire. > > Mon choix s'est porté sur des pages HTML car cela permet un développement > selon moi plus rapide qu'une application Windows, l'intégration des cameras > est faite en 3 lignes grâce à du Flash par exemple, les technologies comme > Ajax permettent de faire des choses très intéressantes (par exemple, > concrètement, d'actualiser les températures sans recharger la page), > l'application peut tourner sur toutes les plateformes (forcement, c'est du > web),... > > Pour ton problème de délai d'affichage, pourquoi ne pas simplement faire un > cron qui irait lire la valeur des capteurs toutes les minutes puis les > stocké quelque part, ensuite pour l'affichage de tes pages tu n'aurais plus > qu'a aller lire ce que tu as stocké auparavant? > > Ce qui est rigolo, c'est qu'apparemment tu es de Braine et moi de Wavre, ce > n'est pas très loin. > > A+, > > Cyrille > > -----Message d'origine----- > De : domotique-EIB@googlegroups.com [mailto:domotique-EIB@googlegroups.com] > De la part de jef2000 > Envoyé : mardi 26 juin 2007 21:32 > À : domotique-EIB > Objet : Re: Fonctionnalités domotiques > > > Effectivement, tu as mentionné les applications les plus employées. > > Mais la Visu ? je n'ai pas compris comment tu fais ! > > Pour l'instant, je commande le tout via le petit serveur web intégré > a mon routeur wifi. > J'ai des scripts CGI qui appellent des petits programme permettant de > commuter et lire l'état des différents actionneurs, lire les > températures des thermostats, changer leur mode de fonctionnement > etc... Ces petits programmes en ligne de commande ont été écrits sur > la base des exemples fournis avec EIBD. > > J'ai également connecté une passerelle ethernet-bluetooth pour pouvoir > consulter cette interface web avec un vieux Palm Tungsten qui me sert > de télécommande de luxe. > > Le problème, c'est que ni EIBD ni les petits programmes appelés par > l'interface web ne retiennent l'état actuel d'une requête à l'autre, > ce qui les oblige à chaque fois lire cet état via le bus sur le > participant concerné. Pour la page qui affiche la température et le > mode (confort, standby, nuit ou protection-gel) des thermostats de > chaque pièce, ça devient un peu lourd (2 à 3 seconde chaque fois que > j'affiche la page). D'où mon idée de développer une nouvelle > application et tant qu'a faire lui en demander beaucoup plus que ce > qui n'était possible avant. > > > Je ne sais pas si c'est applicable dans ton cas, mais une librairie de > > fonctions est très utile (logic: AND, OR, math: Sin, Cos, Tang etc). > > Ca permet de créer des fonctions de haut niveau, sans chaque fois > > faire un développement spécifique à la demande. > > Je n'en ai pas parlé dans mon premier message mais en fait, c'est à la > base de la solution que je compte mettre en oeuvre. > L'idée est de partir d'un fichier de configuration xml décrivant une > série de conditions et d'actions à exécuter lorsque ces conditions se > vérifient. Une condition de base peut être un changement d'état de > l'un des objets de groupe EIB, d'une variable interne, l'expiration > d'un timer, etc... On peut également combiner ces conditions de base > vie les fonctions logiques dont tu parlais. Cela permet déjà pas mal > de chose, des fonctionnalités comme l'alarme ou le simulateur de > présence par exemple peuvent sans trop de problèmes être exprimés via > ce genre de règles. > Les règles seraient donc chargées au démarrage depuis le fichier xml, > il serait ensuite possible d'en ajouter via une interface web et de re- > sauvegarder le tout au format xml de manière à les conserver lors des > redémarrages ou coupures de courant. > Voici un exemple de configuration qui allume la lumière de ma chambre > progressivement entre 6H30 et 7H les jours de semaine, si on est > présent (j'ai un interrupteur près de la porte d'entrée qui me permet > de signaler lorsque la maison n'st pas occupée) et si le réveil est > activé (comme tout bon réveil, faut bien un moyen de le couper) > La condition est évaluée à chaque fois qu'une de ses conditions de > base marquée d'un " trigger='true' " a changé. > > <?xml version="1.0" ?> > <config> > <rule id='wakeup_alarm'> > <condition type='and'> > <condition type='eib' trigger='false'> > <object id='presence'> > <value>false</value> > </condition> > <condition type='eib' trigger='false'> > <object id='wakeup_enabled'> > <value>true</value> > </condition> > <condition type='timer' trigger='true'> > <at>30 6 * * 1,2,3,4,5</at> > </condition> > </condition> > <action type='dim-up'> > <id>dim_chambre2</id> > <start>0</start> > <stop>240</stop> > <delay>1800</delay> > </action> > <action type='set'> > <id>chauffage_cuisine</id> > <value>comfort</value> > </action> > </rule> > <objects> > <knxConnection line='1/1' url="ip:192.168.0.10"/> > <object id='presence' gad='1/1/60'>Presence</object> > <object id='dim_chambre2' gad='1/1/45' type='EIS6'>Dimmer > chambre 2</object> > <object id='wakeup_enabled' gad='1/2/1' > persistent='true'>Réveil activé</object> > </objects> > </config> > > > Exemple: un parser web, cela m'a permis d'afficher les prévisions > > météo sur 12 jours, en faisant des extracts d'un site web météo. > > Autre exemple: la fonction "total" me permet de voir le nombre de > > lampes allumées > > > Toutes mes félicitations. Fonctionnalités domotiques - Ziki - 27/06/2007 Oui, le wrt54g est pas mal mais un peu limité effectivement. C'est bien de limiter le budget mais pas au détriment de la flexibilité et peut être des fonctionnalités. Pour 100-150 euros de plus tu as une carte beaucoup plus flexible, qu'est-ce que 100 ou 150 euros de plus dans une installe eib? Niveau consommation, ce genre de carte ne consomme pas plus qu'un wrt54gs. Pour la carte tpuart, je l'ai achetée directement chez Fritz Praus qui vend des cartes déjà toutes montées. Evidement c'est payant mais ca ne m'a pas pris de temps et je n'ai pas du chercher le CI tpuart. C'est encore en projet, je commence mes expériences avec quelques modules, la construction de la maison devrait débuter début aout, donc j'ai encore le temps de peaufiner tout ça. Qu'en est-il pour toi? A+, Cyrille -----Message d'origine----- De : domotique-EIB@googlegroups.com [mailto:domotique-EIB@googlegroups.com] De la part de jef2000 Envoyé : mercredi 27 juin 2007 0:10 À : domotique-EIB Objet : Re: Fonctionnalités domotiques Mon choix de plateforme à été guidé principalement par 2 critères 1) Le prix: Un routeur wifi supportant le firmware OpenWRT coûte moins de 100 EUR, dans mon cas (linksys WRT54GS), il fournit également l'accès wifi, sert de hub ethernet 5 ports. Le critère de prix n'est pas dû à une limitation de mon budget mais a une volonté de montrer que la domotique n'est pas un gadget de luxe mais une commodité tout à fait abordable. 2) La consommation électrique: Kyoto oblige, il faut rester un peu raisonnable et pour un truc qui tourne 24H/24 7J/7, rester en dessous des 5W est tout à fait raisonnable. C'est sûr que ça limite un peu au niveau de la taille de mémoire (4Mb de flash) mais ça fait partie de l'exercice de style. En ce qui concerne Ajax, je garde l'idée. Je ne connaissait pas du tout mais ça à l'air intéressant. Où t'es tu procuré l'interface TPUART? J'ai cherché un peu quand j'ai commencé mon projet mais rien que pour le chip, il fallait le commander en Allemagne etc.. alors j'ai simplifié. Pas de module Kernel, très peu d'électronique "maison" (2 transistors, 2 optocoupleurs et quelques résistances) et une BCU2 qui supporte le protocole FT1.2. Le tout complètement intégré dans le boitier du routeur avec juste un fil rouge et un noir qui sortent vers le bus. Où en est ton installation? Tu as déjà quelque chose qui tourne ou bien c'est encore en projet. Ca m'intéresse de voir d'autres réalisations pour pouvoir confronter mes idées à la réalité, voir si ça tient la route et quels sont les pièges à éviter On 26 juin, 23:10, "Ziki" <z...@omail.be> wrote: > Salut, > > Ton projet se rapproche pour certaines parties beaucoup du miens. > > Mon idée de base est d'également faire tourner eibd avec une interface > tpuart sur une petite plateforme Linux (genre Soekris, Wrap ou carte mère à > base d'AMD Geode LX800). Sur cette plateforme tournerait un serveur web > contenant des pages web (avec probablement une utilisation intensive de > Javascript et d'Ajax) interagissant avec l'installation eib. Ces pages > seraient consultables grâce à des écrans tactiles présents dans la maison, > tournant également sous Linux mais sans disque dur, l'OS étant chargé depuis > le réseau : > > http://www.ieiworld.com/en/product_IPC.asp?model=AFL-08A-LX > > Voici les principales fonctionnalités que j'avais retenues pour commencer: > > - affichage et modification de l'état de l'éclairage des différentes pièces > - affichage et modification de la température/chauffage > - affichage du status des différents capteurs de l'alarme > - branchement de l'alarme à l'aide d'un code > - affichage des quelques cameras présentes dans l'habitation > - gestion de la sonnette avec possibilité d'ouverture de la porte + > affichage de la caméra présente à la porte d'entrée > - gestion de la musique (lecture d'MP3) avec gestion multiroom > > J'oublie peut être encore des choses mais en gros, c'est ce que je voudrais > faire. > > Mon choix s'est porté sur des pages HTML car cela permet un développement > selon moi plus rapide qu'une application Windows, l'intégration des cameras > est faite en 3 lignes grâce à du Flash par exemple, les technologies comme > Ajax permettent de faire des choses très intéressantes (par exemple, > concrètement, d'actualiser les températures sans recharger la page), > l'application peut tourner sur toutes les plateformes (forcement, c'est du > web),... > > Pour ton problème de délai d'affichage, pourquoi ne pas simplement faire un > cron qui irait lire la valeur des capteurs toutes les minutes puis les > stocké quelque part, ensuite pour l'affichage de tes pages tu n'aurais plus > qu'a aller lire ce que tu as stocké auparavant? > > Ce qui est rigolo, c'est qu'apparemment tu es de Braine et moi de Wavre, ce > n'est pas très loin. > > A+, > > Cyrille > > -----Message d'origine----- > De : domotique-EIB@googlegroups.com [mailto:domotique-EIB@googlegroups.com] > De la part de jef2000 > Envoyé : mardi 26 juin 2007 21:32 > À : domotique-EIB > Objet : Re: Fonctionnalités domotiques > > > Effectivement, tu as mentionné les applications les plus employées. > > Mais la Visu ? je n'ai pas compris comment tu fais ! > > Pour l'instant, je commande le tout via le petit serveur web intégré > a mon routeur wifi. > J'ai des scripts CGI qui appellent des petits programme permettant de > commuter et lire l'état des différents actionneurs, lire les > températures des thermostats, changer leur mode de fonctionnement > etc... Ces petits programmes en ligne de commande ont été écrits sur > la base des exemples fournis avec EIBD. > > J'ai également connecté une passerelle ethernet-bluetooth pour pouvoir > consulter cette interface web avec un vieux Palm Tungsten qui me sert > de télécommande de luxe. > > Le problème, c'est que ni EIBD ni les petits programmes appelés par > l'interface web ne retiennent l'état actuel d'une requête à l'autre, > ce qui les oblige à chaque fois lire cet état via le bus sur le > participant concerné. Pour la page qui affiche la température et le > mode (confort, standby, nuit ou protection-gel) des thermostats de > chaque pièce, ça devient un peu lourd (2 à 3 seconde chaque fois que > j'affiche la page). D'où mon idée de développer une nouvelle > application et tant qu'a faire lui en demander beaucoup plus que ce > qui n'était possible avant. > > > Je ne sais pas si c'est applicable dans ton cas, mais une librairie de > > fonctions est très utile (logic: AND, OR, math: Sin, Cos, Tang etc). > > Ca permet de créer des fonctions de haut niveau, sans chaque fois > > faire un développement spécifique à la demande. > > Je n'en ai pas parlé dans mon premier message mais en fait, c'est à la > base de la solution que je compte mettre en oeuvre. > L'idée est de partir d'un fichier de configuration xml décrivant une > série de conditions et d'actions à exécuter lorsque ces conditions se > vérifient. Une condition de base peut être un changement d'état de > l'un des objets de groupe EIB, d'une variable interne, l'expiration > d'un timer, etc... On peut également combiner ces conditions de base > vie les fonctions logiques dont tu parlais. Cela permet déjà pas mal > de chose, des fonctionnalités comme l'alarme ou le simulateur de > présence par exemple peuvent sans trop de problèmes être exprimés via > ce genre de règles. > Les règles seraient donc chargées au démarrage depuis le fichier xml, > il serait ensuite possible d'en ajouter via une interface web et de re- > sauvegarder le tout au format xml de manière à les conserver lors des > redémarrages ou coupures de courant. > Voici un exemple de configuration qui allume la lumière de ma chambre > progressivement entre 6H30 et 7H les jours de semaine, si on est > présent (j'ai un interrupteur près de la porte d'entrée qui me permet > de signaler lorsque la maison n'st pas occupée) et si le réveil est > activé (comme tout bon réveil, faut bien un moyen de le couper) > La condition est évaluée à chaque fois qu'une de ses conditions de > base marquée d'un " trigger='true' " a changé. > > <?xml version="1.0" ?> > <config> > <rule id='wakeup_alarm'> > <condition type='and'> > <condition type='eib' trigger='false'> > <object id='presence'> > <value>false</value> > </condition> > <condition type='eib' trigger='false'> > <object id='wakeup_enabled'> > <value>true</value> > </condition> > <condition type='timer' trigger='true'> > <at>30 6 * * 1,2,3,4,5</at> > </condition> > </condition> > <action type='dim-up'> > <id>dim_chambre2</id> > <start>0</start> > <stop>240</stop> > <delay>1800</delay> > </action> > <action type='set'> > <id>chauffage_cuisine</id> > <value>comfort</value> > </action> > </rule> > <objects> > <knxConnection line='1/1' url="ip:192.168.0.10"/> > <object id='presence' gad='1/1/60'>Presence</object> > <object id='dim_chambre2' gad='1/1/45' type='EIS6'>Dimmer > chambre 2</object> > <object id='wakeup_enabled' gad='1/2/1' > persistent='true'>Réveil activé</object> > </objects> > </config> > > > Exemple: un parser web, cela m'a permis d'afficher les prévisions > > météo sur 12 jours, en faisant des extracts d'un site web météo. > > Autre exemple: la fonction "total" me permet de voir le nombre de > > lampes allumées > > > Toutes mes félicitations. Fonctionnalités domotiques - jef2000 - 29/06/2007 Chez moi, l'installation de base est terminée depuis un an déjà. J'ai mis un peu de temps avant de comprendre toutes les subtilités d'ETS3 mais ça commence à aller. Comme la maison que nous avons achetée était habitable et ne nécessitait pas de gros travaux, il était hors de question de faire des saignées un peu partout. Je m'en suis sorti en utilisant les gaines existantes pour passer le bus domotique et en retirant précautionneusement certaines planches du plancher pour re-cabler les points lumineux en étoile vers le coffret. A part deux saignées de 16cm de large dans la cage d'escalier, dont une allant du rez de chaussée jusqu'au plancher du 2ème, je m'en suis sorti sans trop de casse. Pour l'instant, l'installation comporte: Dans le coffret principal: 1 module relais 12 x 10A 1 module relais 8 x 16A 1 module dimmer 2 x 300W 1 module à triac 6 canaux pour les vannes de chauffage 1 alim 320mA Répartis dans la maison: des modules 2 ou 4 entrées/sorties (ABB US/U 4.2 et 2.2) dans les blochets derrière des boutons poussoirs classiques 1 thermostat EIB Theben RAM713 dans chaque pièce (sauf la cave, les toilettes, etc... ;-) 2 télécommandes 2 canaux et le récepteur correspondant (non domotique) relié à un module EIB 2 entrées Le routeur wifi connecté à internet et au bus domotique pour la visualisation et la programmation journalière Un vieux PDA connecté sur une passerelle bluetooth-ethernet et qui sert de télécommande/visualisation Un enregistreur vidéo à disque dur KISS DP-558 qui permet de gérer la domotique sur l'écran de la TV à l'aide de pages web dans un format spécial On 27 juin, 01:28, "Ziki" <z...@omail.be> wrote: > Oui, le wrt54g est pas mal mais un peu limité effectivement. C'est bien de > limiter le budget mais pas au détriment de la flexibilité et peut être des > fonctionnalités. Pour 100-150 euros de plus tu as une carte beaucoup plus > flexible, qu'est-ce que 100 ou 150 euros de plus dans une installe eib? > > Niveau consommation, ce genre de carte ne consomme pas plus qu'un wrt54gs. > > Pour la carte tpuart, je l'ai achetée directement chez Fritz Praus qui vend > des cartes déjà toutes montées. Evidement c'est payant mais ca ne m'a pas > pris de temps et je n'ai pas du chercher le CI tpuart. > > C'est encore en projet, je commence mes expériences avec quelques modules, > la construction de la maison devrait débuter début aout, donc j'ai encore le > temps de peaufiner tout ça. > > Qu'en est-il pour toi? > > A+, > > Cyrille > > -----Message d'origine----- > De : domotique-EIB@googlegroups.com [mailto:domotique-EIB@googlegroups.com] > De la part de jef2000 > Envoyé : mercredi 27 juin 2007 0:10 > À : domotique-EIB > Objet : Re: Fonctionnalités domotiques > > Mon choix de plateforme à été guidé principalement par 2 critères > 1) Le prix: Un routeur wifi supportant le firmware OpenWRT coûte moins > de 100 EUR, dans mon cas (linksys WRT54GS), il fournit également > l'accès wifi, sert de hub ethernet 5 ports. Le critère de prix n'est > pas dû à une limitation de mon budget mais a une volonté de montrer > que la domotique n'est pas un gadget de luxe mais une commodité tout à > fait abordable. > 2) La consommation électrique: Kyoto oblige, il faut rester un peu > raisonnable et pour un truc qui tourne 24H/24 7J/7, rester en dessous > des 5W est tout à fait raisonnable. > > C'est sûr que ça limite un peu au niveau de la taille de mémoire (4Mb > de flash) mais ça fait partie de l'exercice de style. > > En ce qui concerne Ajax, je garde l'idée. Je ne connaissait pas du > tout mais ça à l'air intéressant. > > Où t'es tu procuré l'interface TPUART? J'ai cherché un peu quand j'ai > commencé mon projet mais rien que pour le chip, il fallait le > commander en Allemagne etc.. alors j'ai simplifié. Pas de module > Kernel, très peu d'électronique "maison" (2 transistors, 2 > optocoupleurs et quelques résistances) et une BCU2 qui supporte le > protocole FT1.2. Le tout complètement intégré dans le boitier du > routeur avec juste un fil rouge et un noir qui sortent vers le bus. > > Où en est ton installation? Tu as déjà quelque chose qui tourne ou > bien c'est encore en projet. > Ca m'intéresse de voir d'autres réalisations pour pouvoir confronter > mes idées à la réalité, voir si ça tient la route et quels sont les > pièges à éviter > > On 26 juin, 23:10, "Ziki" <z...@omail.be> wrote: > > > Salut, > > > Ton projet se rapproche pour certaines parties beaucoup du miens. > > > Mon idée de base est d'également faire tourner eibd avec une interface > > tpuart sur une petite plateforme Linux (genre Soekris, Wrap ou carte mère > à > > base d'AMD Geode LX800). Sur cette plateforme tournerait un serveur web > > contenant des pages web (avec probablement une utilisation intensive de > > Javascript et d'Ajax) interagissant avec l'installation eib. Ces pages > > seraient consultables grâce à des écrans tactiles présents dans la maison, > > tournant également sous Linux mais sans disque dur, l'OS étant chargé > depuis > > le réseau : > > >http://www.ieiworld.com/en/product_IPC.asp?model=AFL-08A-LX > > > Voici les principales fonctionnalités que j'avais retenues pour commencer: > > > - affichage et modification de l'état de l'éclairage des différentes > pièces > > - affichage et modification de la température/chauffage > > - affichage du status des différents capteurs de l'alarme > > - branchement de l'alarme à l'aide d'un code > > - affichage des quelques cameras présentes dans l'habitation > > - gestion de la sonnette avec possibilité d'ouverture de la porte + > > affichage de la caméra présente à la porte d'entrée > > - gestion de la musique (lecture d'MP3) avec gestion multiroom > > > J'oublie peut être encore des choses mais en gros, c'est ce que je > voudrais > > faire. > > > Mon choix s'est porté sur des pages HTML car cela permet un développement > > selon moi plus rapide qu'une application Windows, l'intégration des > cameras > > est faite en 3 lignes grâce à du Flash par exemple, les technologies comme > > Ajax permettent de faire des choses très intéressantes (par exemple, > > concrètement, d'actualiser les températures sans recharger la page), > > l'application peut tourner sur toutes les plateformes (forcement, c'est du > > web),... > > > Pour ton problème de délai d'affichage, pourquoi ne pas simplement faire > un > > cron qui irait lire la valeur des capteurs toutes les minutes puis les > > stocké quelque part, ensuite pour l'affichage de tes pages tu n'aurais > plus > > qu'a aller lire ce que tu as stocké auparavant? > > > Ce qui est rigolo, c'est qu'apparemment tu es de Braine et moi de Wavre, > ce > > n'est pas très loin. > > > A+, > > > Cyrille > > > -----Message d'origine----- > > De : domotique-EIB@googlegroups.com > > [mailto:domotique-EIB@googlegroups.com] > > > De la part de jef2000 > > Envoyé : mardi 26 juin 2007 21:32 > > À : domotique-EIB > > Objet : Re: Fonctionnalités domotiques > > > > Effectivement, tu as mentionné les applications les plus employées. > > > Mais la Visu ? je n'ai pas compris comment tu fais ! > > > Pour l'instant, je commande le tout via le petit serveur web intégré > > a mon routeur wifi. > > J'ai des scripts CGI qui appellent des petits programme permettant de > > commuter et lire l'état des différents actionneurs, lire les > > températures des thermostats, changer leur mode de fonctionnement > > etc... Ces petits programmes en ligne de commande ont été écrits sur > > la base des exemples fournis avec EIBD. > > > J'ai également connecté une passerelle ethernet-bluetooth pour pouvoir > > consulter cette interface web avec un vieux Palm Tungsten qui me sert > > de télécommande de luxe. > > > Le problème, c'est que ni EIBD ni les petits programmes appelés par > > l'interface web ne retiennent l'état actuel d'une requête à l'autre, > > ce qui les oblige à chaque fois lire cet état via le bus sur le > > participant concerné. Pour la page qui affiche la température et le > > mode (confort, standby, nuit ou protection-gel) des thermostats de > > chaque pièce, ça devient un peu lourd (2 à 3 seconde chaque fois que > > j'affiche la page). D'où mon idée de développer une nouvelle > > application et tant qu'a faire lui en demander beaucoup plus que ce > > qui n'était possible avant. > > > > Je ne sais pas si c'est applicable dans ton cas, mais une librairie de > > > fonctions est très utile (logic: AND, OR, math: Sin, Cos, Tang etc). > > > Ca permet de créer des fonctions de haut niveau, sans chaque fois > > > faire un développement spécifique à la demande. > > > Je n'en ai pas parlé dans mon premier message mais en fait, c'est à la > > base de la solution que je compte mettre en oeuvre. > > L'idée est de partir d'un fichier de configuration xml décrivant une > > série de conditions et d'actions à exécuter lorsque ces conditions se > > vérifient. Une condition de base peut être un changement d'état de > > l'un des objets de groupe EIB, d'une variable interne, l'expiration > > d'un timer, etc... On peut également combiner ces conditions de base > > vie les fonctions logiques dont tu parlais. Cela permet déjà pas mal > > de chose, des fonctionnalités comme l'alarme ou le simulateur de > > présence par exemple peuvent sans trop de problèmes être exprimés via > > ce genre de règles. > > Les règles seraient donc chargées au démarrage depuis le fichier xml, > > il serait ensuite possible d'en ajouter via une interface web et de re- > > sauvegarder le tout au format xml de manière à les conserver lors des > > redémarrages ou coupures de courant. > > Voici un exemple de configuration qui allume la lumière de ma chambre > > progressivement entre 6H30 et 7H les jours de semaine, si on est > > présent (j'ai un interrupteur près de la porte d'entrée qui me permet > > de signaler lorsque la maison n'st pas occupée) et si le réveil est > > activé (comme tout bon réveil, faut bien un moyen de le couper) > > La condition est évaluée à chaque fois qu'une de ses conditions de > > base marquée d'un " trigger='true' " a changé. > > > <?xml version="1.0" ?> > > <config> > > <rule id='wakeup_alarm'> > > <condition type='and'> > > <condition type='eib' trigger='false'> > > <object id='presence'> > > <value>false</value> > > </condition> > > <condition type='eib' trigger='false'> > > <object id='wakeup_enabled'> > > <value>true</value> > > </condition> > > <condition type='timer' trigger='true'> > > <at>30 6 * * 1,2,3,4,5</at> > > </condition> > > </condition> > > <action type='dim-up'> > > <id>dim_chambre2</id> > > <start>0</start> > > <stop>240</stop> > > <delay>1800</delay> > > </action> > > <action type='set'> > > <id>chauffage_cuisine</id> > > <value>comfort</value> > > </action> > > </rule> > > <objects> > > <knxConnection line='1/1' url="ip:192.168.0.10"/> > > <object id='presence' gad='1/1/60'>Presence</object> > > <object id='dim_chambre2' gad='1/1/45' type='EIS6'>Dimmer > > chambre 2</object> > > <object id='wakeup_enabled' gad='1/2/1' > > persistent='true'>Réveil activé</object> > > </objects> > > </config> > > > > Exemple: un parser web, cela m'a permis d'afficher les prévisions > > > météo sur 12 jours, en faisant des extracts d'un site web météo. > > > Autre exemple: la fonction "total" me permet de voir le nombre de > > > lampes allumées > > > > Toutes mes félicitations. |