Appli domotique

UniXUniX Membre
mai 2010 modifié dans Vos applications #1
Salut le forum,

Ca faisait un petit bout de temps que je n'étais pas revenu ici ...... Ca a bien changé d'ailleurs !

Pour ma part, je me suis lancé dans la construction de ma maison (ce qui explique mon absence de 2 ans  ;)), et j'aujourd'hui j'aimerais démarrer un projet en rapport avec cette maison, puisque le but est de la "domotiser" ! Je suis en train de réfléchir à  l'architecture d'une telle appli, et je me pose quelques questions.

En fait, je verrais bien un daemon lancé à  l'ouverture de session et effectuant les tâches courantes d'un tel logiciel : lancement des triggers, interprétation des infos des différents capteurs et exécution des réponses adéquates. Ce daemon serait une appli sans interface graphique. Pour communiquer avec ce daemon, une autre appli avec GUI permettant de modifier les paramètres et réglages, ou de lancer des actions en manuel (par ex allumer une lumière). Et enfin, une seconde méthode d'accès au daemon via une interface web.

Mes questions :
1) pour la communication entre l'appli GUI et le daemon, vers quelles classes faut-il me tourner pour mettre en place ces échanges ? NSConnection et consorts ?
2) pour l'interface web, comment procéder ? Utiliser Apache du mac en mettant mes pages dans le dossier Sites ? Intégrer un serveur web light au daemon ?
2) toujours pour l'interface web, comment communiquer avec le daemon via du PHP ?

Merci pour votre aide.

Réponses

  • zoczoc Membre
    18:34 modifié #2
    Il y a vraiment beaucoup de solutions pour faire communiquer 2 processus. Parmis celles qui me viennent à  l'esprit (j'en oublie forcément):

  • yoannyoann Membre
    18:34 modifié #3
    Vu que tu as une sortie web à  faire je pense que le plus simple est de faire un démon qui embarque un serveur http light pour héberger un web service qui communique les info en JSON

    Le reste n'est que traitement et mise en forme de l'information, que ce soit depuis ton code ObjC ou depuis ton site web.

    Les options de Zoc sont valable aussi si tu ne fait que le client lourd, par contre ça va être chiant avec le client web je pense
  • zoczoc Membre
    18:34 modifié #4
    Je suis d'accord que mes solutions sont difficilement applicables pour la version web, et je pense également d'embarquer un serveur Web dans le daemon et implémenter un truc simple à  base de JSON est la solution la plus portable, puisque tu pourras également l'employer pour ton application native (au lieu d'avoir 2 protocoles de communication différents), et éventuellement pour la version iPhone/iPad de ton application  ;)
  • UniXUniX Membre
    18:34 modifié #5
    Je suis d'accord avec vos avis, ça me conforte dans mes idées.
    Par contre je vois pas bien le mécanisme de transmission du JSON vers le daemon. C'est assez simple dans le sens daemon->http (on appelle une page PHP qui renvoie le JSON), mais dans le sens http->daemon, j'avoue ne pas savoir comment lancer un appel au daemon ....

    Concernant le serveur http light, vous en auriez un à  me conseiller ?
  • AliGatorAliGator Membre, Modérateur
    18:34 modifié #6
    Pour intégrer une sorte de serveur HTTP light dans ton daemon, tu peux te contenter d'ouvrir une socket dans ton daemon, et de la mettre en écoute sur le port 80. Sur réception de données sur ce socket (une requête HTTP venant de l'extérieur), tu lis la requête (c'est pas méchant c'est du texte, et si tu fais un serveur light t'as pas grand chose à  extraire juste le chemin de la page demandée) et tu renvoies la réponse (le texte JSON donc) en réponse via ce même socket.
  • UniXUniX Membre
    18:34 modifié #7
    Ca se fait avec NSStream, c'est ça ?
    Je vais aller y jeter un oeil.
  • yoannyoann Membre
    18:34 modifié #8
    Histoire de préciser, si tu utilise un serveur http light tu n'utilisera justement pas de php pour la génération du JSON mais simplement de l'ObjC via les NSStream.
  • UniXUniX Membre
    18:34 modifié #9
    OK merci.
    Bon, y'a du boulot avant d'en arriver là   :D On va commencer !
  • LastikoLastiko Membre
    18:34 modifié #10
    Salut uNix

    Bon alors je vois que tu desire te faire une installation domotique  ;D  ta femme est patiente ? ( lol )

    j'ai des petites questions plutot fonctionnelles :
    - as tu prevu des gaines partout dans toutes piéces ?
    - du réseau partout ?
    - qu'est ce que tu veux faire réellement ?
    - ton budget ? ( juste pour t'orienter dans ton choix de produit )

    pour info , la domotique est mon métier .... j'ai certaines pistes pour toi

    J.
  • UniXUniX Membre
    18:34 modifié #11
    Salut Lastiko,

    Je n'ai pas de gaines partout. Du coup, après analyse des différentes technos existantes, je pense que je vais partir sur du PLCBus (plus stable et efficace que le X10 basique) et du RFXCOM pour le sans fil. Quasiment tout en micromodules pour le PLCBus.
    Au final, je souhaite contrôler :
    - certaines lumières (surtout utilisé pour définir des scénarios type visionage d'un film)
    - les volets roulants
    - l'alarme
    - le portail + portier (ça je suis pas sûr si le signal est multiplexé)
    - l'arrosage
    - la piscine
    - monitoring des différentes consos (elec, eau, ...)
    - les équipements du salon (ampli, télé, mediacenter, Freebox)

    L'appli tournera sur un Mini faisant également tourner Plex pour le mediacenter + EyeTv, et le tout contrôlé par un ipad (domotique + mediacenter + enregistrements TV)  :D

    Bon, là  je t'ai donné ce que j'ai en tête, mais il va falloir un peu de temps pour faire tout ça ....... J'espère que ma femme va être patiente  ;D
  • segaoufsegaouf Membre
    18:34 modifié #12
    Tres interessant.

    Je n'y connais rien en domotique, mais t'aurais pas des liens pour noob ? En tout cas, tiens nous au courant de tes avances ! Le genre de concept que j'adore !
  • UniXUniX Membre
    18:34 modifié #13
    J'ai pris pas mal d'infos sur http://www.touteladomotique.com, ils ont un forum très actif avec pas mal de sujets. Par contre, je n'ai pas réussi à  trouver un site qui expliquait simplement les différentes technos avec leurs avantages et inconvénients ..... Donc, il a fallu aller à  la pêche à  droite et à  gauche pour se faire une idée précise ....
  • CeetixCeetix Membre
    18:34 modifié #14
    Un bien beau projet !
    Je n'y connais rien mais j'ai toujours eu envie de faire un petit système pour mes parents (moi je suis en appart loué donc bon le portail et la piscine je vais oublier :) )
    Tu t'es fait un petit devis ou pas? A combien ça peut monter (pour toi par exemple) ?
  • UniXUniX Membre
    18:34 modifié #15
    Ben j'ai pas regardé en détail car j'ai pas totalement défini ce que j'allais mettre en oeuvre. Pour le moment, je vais me concentrer sur le soft, et n'acheter que le minimum pour mettre en place les 2 protocoles que je vais utiliser --> l'émetteur/ récepteur PLCBus + 1 module, et le récepteur RFXCOM + une sonde de t°.
    Mais bon, pour ce que je veux faire, je pense que je vais m'en tirer entre 1000 et 1500 euros (sans compter l'iPad  ;))
  • LastikoLastiko Membre
    18:34 modifié #16
    Unix ,

    Pour le controle AV , je te conseil de prendre les produits Global Caché , le prix est trés raisonnable ( ca te permet de faire le Infrarouge , de la RS232 genre pour un ampli ou un plasma , des relais), sinon tu as Crestron ou AMX mais evite de la prendre neuf car c'est pas loing de 1000 euros le premier prix

    http://www.globalcache.com/

    Pour la gestion de la lumiere , il est surtout important de savoir si tu veux faire de la gradation de tension ou du simple On / OFF
    si tu veux faire juste du ON/OFF ca te coutera 80 euros
    http://www.e-home.fr/?page_id=140

    Si tu veux faire de la gradation tu peux utiliser ca mais je connais pas le tarif , sinon y a plus performant mais ca coute 2 bras
    http://www.light-technology.com/
    mais comparé aux PLCBus , hummm je pense qu'il y a une sacré différence de prix

    Bon apres tout dépend ton budget (c'est surtout ca la question) mais si tu regarde sur Ebay  , tu peux trouver des produits domotique Crestron / Amx , a un prix raisonnable
    http://shop.ebay.com/i.html?_nkw=AMX+Netlinx&_sacat=0&_odkw=AMX+NI3000&_osacat=0&bkBtn=&_trksid=p3286.m270.l1313

    ou le concurrent
    http://cgi.ebay.com/Crestron-Mp2e-Multimedia-Processor-/330430442514?cmd=ViewItem&pt=LH_DefaultDomain_0&hash=item4cef306c12#ht_500wt_1143
    Ca devrait deja te aller je pense

    L'avantage de ces produits , c'est qu'ils sont fiable et surtout ils sont fait pour ca depuis 25 ans . tu en trouve plein sur Ebay

    Pour ton portier , c'est quoi la marque ?(Si c'est Fermax ) tu pleures....
    sinon tu dois pouvoir recuperer le signal video et audio et aprés tu mets un Video Server Axis , et un streamer Barix Annumicom 100 pour faire l'interfacage SIP avec ton Portier


    Apres la conso electrique j'ai jamais eu besoin de le faire


Connectez-vous ou Inscrivez-vous pour répondre.