Actualités | Audio/Vidéo | Evènements | DIY | Domotique | Informatique | Maison | Mobile | Sécurité

Installation de S.A.R.A.H. de JP Encausse sur le Brix de Gigabyte

Envoyer Imprimer PDF
Note des utilisateurs: / 44
MauvaisTrès bien 

Nous y voilà, aujourd’hui, nous allons passer aux choses sérieuses et nous attarder un petit moment sur LA fille qui électrise les discussions à travers le web et surtout autour de la maison connectée : le projet S.A.R.A.H. de Jean-Philippe Encausse.

Mais qui est-elle ?

SARAH est une remarquable interface permettant de communiquer avec des objets connectés, des services web, des box domotiques ainsi que tout ce qui possède une API. L'échange s'effectue par le biais de requêtes simples déclenchées par la voix, un geste, un événement… en fait un stimuli transformé en langage compréhensible par le système : une requête HTTP.

Je vous invite à regarder cette petite vidéo d’introduction, réalisée par son créateur lui-même :



Cette courte présentation permet d’avoir un aperçu de ce qu’il est possible de faire. Nous allons donc par le biais de ce second Tuto, voir comment nous aussi, nous pouvons avoir une SARAH à domicile.

Dans un premier temps, il nous faut du matériel. Il y a, celui « de base », permettant à SARAH de pouvoir s’exécuter et d’être administrée et ensuite, celui que l’on va pouvoir ajouter au fur et à mesure, pouvant ainsi décupler les possibilités offertes par le système.

Le Brix sera notre machine principale, mais il est également possible d’installer SARAH sur d’autres plateformes telles qu’un NUC, qu’un PC, un ordinateur portable ou encore un Raspberry PI ! (la liste est non exhaustive)

Maintenant parlons contrôle : l’intérêt de SARAH est de pouvoir lui faire passer des ordres par la voix, nous avons donc besoin d’un micro. Et actuellement, ce qui se fait de mieux, en terme de rapport performance/prix, c’est la Kinect de chez Microsoft.

Il faut donc s’en procurer une, et pour cela, rien de plus simple, aller jeter un œil sur leboncoin.fr, il y en a une pléthore ! Mais attention… Il existe deux versions de la Kinect, la version Windows et la version Xbox 360.

Quelles sont les différences ?

Au-delà de certaines caractéristiques mineures concernant la distance de détection, la vraie différence se situe au niveau des branchements et des prix ! En effet, la Kinect pour Windows est livrée « connectable » directement sur un port USB alors que les Kinect pour Xbox vont nécessiter un adaptateur.

Le voici :

Il est fourni avec toutes les Kinect vendues séparément cependant, pas avec les Kinect vendus en pack Xbox.

Alors pourquoi ai-je choisi la Kinect pour Xbox ?

Pour le prix ! En effet, une Kinect pour Xbox se trouve aux alentours de 40-50€ alors qu’une Kinect pour Windows est déjà plus difficile à trouver d’occasion et se négocie aux alentours des 120€ ! Personnellement, j’ai pu acquérir une Kinect d’Xbox à proximité de chez moi pour la modique somme de 40€ avec le câble et le jeu Kinect Adventures en prime !

Nous avons tout le matériel à notre disposition, passons maintenant à l’installation de la partie logicielle.

Il y a des prérequis afin de pouvoir profiter de l’environnement SARAH.

Ainsi, il faut télécharger :

1 – Le dernier SDK prévu pour le Kinect : http://go.microsoft.com/fwlink/?LinkID=323588

2 – Le pack de langues : http://go.microsoft.com/fwlink/?LinkID=323589

3 – La dernière version de SARAH (ici 3.1.4) et la décompresser dans un dossier où il n’y aura pas d’espaces dans sa dénomination : http://goo.gl/bt7wOr (ou sur http://encausse.wordpress.com/s-a-r-a-h/ pour être sûr d’avoir la version à jour)

 

Voici une vidéo de Jean-Philippe Encausse qui résume l’installation :

 

Maintenant, nous allons lancer SARAH en cliquant sur :

- Client_Kinect, puis autoriser l’accès dans le pare-feu

- Server_NodeJS, puis autoriser également l’accès dans le pare-feu


Si tout s’est bien passé, vous obtenez cette fenêtre :


En prononçant maintenant : « SARAH, quelle heure est-il ? », vous devriez avoir la réponse par le biais de vos enceintes !

Si vous éprouvez des difficultés, vous pouvez aller à cette adresse : http://encausse.wordpress.com/2013/05/02/sarah-getting-started/ et/ou rejoindre la communauté très active : https://plus.google.com/u/0/communities/105964514508504667709

 

Nous avons enfin terminé l’installation ! Cependant, même si c’est bien joli d’avoir l’heure, il serait intéressant d’appréhender les autres possibilités offertes. Pour cela, il faut cliquer sur le raccourci S.A.R.A.H. présent dans le dossier décompressé ou alors entrer l’adresse 127.0.0.1:8080 dans votre navigateur web favori.

Nous obtenons alors cette page :



C’est à partir de celle-ci que nous allons pouvoir personnaliser et administrer notre SARAH.

Nous allons dans un premier temps tester quelques plugins pour voir son fonctionnement. Rendez-vous donc sur la page Store accessible sur le bandeau de gauche.

Vous obtenez donc la liste des plugins disponibles avec leurs noms, leurs versions, leurs auteurs, leurs catégories et surtout leurs descriptions !

Pour en installer un, il suffit de cliquer sur Installer sur la droite puis confirmer, ensuite il faudra redémarrer le serveur, c’est-à-dire fermer puis relancer Server_NodeJS



Revenez ensuite sur la page d’accueil. Vous apercevrez alors qu’une nouvelle vignette vient d’apparaître, c’est ici que vous allez paramétrer votre plugin.


Une vignette peut se constituer de deux manières : soit en mode recto/verso le changement s’effectue avec cet icône :



Soit directement le verso :


3 icônes composent le verso d’une vignette, de gauche à droite :

- Le configurateur du module

- La documentation

- L’éditeur des fichiers

Nous allons voir quelques exemples afin de bien prendre en main le concept de module et de leurs utilisations.



Exemple 1 : Le module Freebox d’Aymeric dMdV

Cliquer sur Configurer le module, il vous sera ensuite demandé d’entrer le code_telecommande.  Celui-ci est récupérable en allumant le Freebox Player (celui connecté à la télévision) puis en se rendant dans Réglages -> Télécommande. Il se situera en bas après Code Télécommande réseau : xxxxxxxx. Entrer-le dans le module puis cliquer sur Enregistrer. Vous pouvez dès à présent contrôler votre Freebox à la voix !

Mais, que faut-il dire ??

Pour le savoir, rendez-vous dans la documentation du module où toutes les informations d’utilisation sont données. Génial non ?!

Les phrases d’ordre ne vous correspondent pas et vous désirez aller plus loin ?

Cliquer sur L’éditeur du module, vous aurez ici généralement 3 fichiers :

- Un Fichier.js : correspondant au script d’interaction entre SARAH et le module (ici la Freebox)

- Un Fichier.xml : permettant de récupérer les phrases à dire afin de donner des ordres

- Un Fichier.prop : qui donne les infos sur le module et les variables nécessaires qui vont être utilisée

 

Vous l’aurez compris, si vous souhaitez changer les ordres, il suffit de modifier les phrases dans le Fichier.xml puis de l’enregistrer. Ainsi vous venez de personnaliser vos ordres de commande.

 

Exemple 2 : Le module Hue de JP Encausse

Cliquer sur l’icône vous permettant d’accéder au verso de la vignette puis aller dans Configurer le module, il vous sera ensuite demandé d’entrer l’IP du pont Hue.

Deux solutions vous permettent de récupérer celui-ci :

- En vous connectant sur le site de Philips Hue : http://www.meethue.com/fr-FR , Puis Connection / Inscription -> Entrer vos identifiants ou créer en -> Connexion -> Mon Hue -> Mes réglages -> Mon Pont -> M’en présenter plus -> Adresse IP interne

- Ou lancer l’application Hue -> faites monter l’onglet -> Roue de configuration -> Mon Pont -> direccion IP (je ne sais pas pourquoi c’est en espagnol…)

Entrer-la dans le module en face d’IP. Conserver le username. Dans all lights, entrer les chiffres jusqu’à atteindre votre nombre d’ampoules en les séparant par des virgules puis cliquer sur Enregistrer. Appuyer une fois sur votre pont puis cliquer sur Créer un utilisateur sur la page recto de la vignette, rafraichissez la page d’accueil et voilà, vous pouvez dès à présent contrôler vos ampoules Hue à la voix !

Comme précédemment, il vous suffit de vous rendre dans le Fichier.xml pour voir les commandes disponibles. Sachez qu’à chaque ampoule est attribué un numéro, si vous désirez en contrôler une en particulière il faut connaître son numéro. Pour ma part, j’ai remarqué que l’ordre présent dans les Configurations de l’application Hue ou celui affiché dans Mes ambiances/Mes ampoules sur le site Philips correspond à l’ordre de mise en place de celles-ci. Donc la première est la numéro 1, la seconde la numéro 2 ainsi de suite.

Sur la page d’accueil vous pouvez voir ceci


Cliquer sur On puis entrer une couleur en hexadécimale (pour connaître les codes, récupérer le jeu de chiffre et de lettre présent après le # sur ce site : http://www.proftnj.com/RGB3.htm) et presser la touche Entrer. Cela devrait directement allumer et mettre la couleur désirée sur toutes les ampoules.



Exemple 3 : Le module XBMC de Jérôme Veyret

Cliquer sur l’icône vous permettant d’accéder au verso de la vignette puis aller dans Configurer le module, il vous sera ensuite demandé d’entrer l’IP de l’XBMC Musique et/ou Vidéo à contrôler. Il s’agit ici de pouvoir administrer deux XBMC différents si vous avez séparé la musique et la vidéo, dans la plupart des cas il faudra rentrer la même adresse.

Si vous exécuter XBMC sur le même ordinateur que SARAH, mettez simplement 127.0.0.1:80 sinon, allez dans Système -> Matériel -> Sommaire de XBMC pour récupérer l’adresse IP de votre machine XBMC. Il y a un pré-requis pour que SARAH puisse contrôler XBMC, il a été abordé dans le premier article « Installation d’XBMC sur le Brix de Gigabyte » dans la partie « se passer d’un clavier et d’une souris ».

Sinon, vous pouvez vous rendre directement dans la documentation du module partie Configuration -> XBMC et suivre les indications.

Pour l’utilisation, comme pour les autres modules : rendez-vous dans la partie Documentation -> Commandes vocales -> Exemples

Voici la vidéo du module en action :

 

Exemple 4 : Le module Home Center 2 de Vincent Fresnel

C’est le plus intéressant en termes de domotique. Nous allons ici survoler son fonctionnement, mais nous ne manquerons pas de revenir dans un autre article sur l’intégration complète de SARAH dans un environnement gérer par une HC2 de Fibaro. Tout comme les précédents modules, il faut se rendre sur le verso afin de pouvoir accéder à la configuration. Il vous est demandé de remplir l’IP, votre login, votre password. Pour trouver l’IP de votre box, Fibaro a mis à disposition un petit utilitaire nommé HC2 Finder disponible ici : http://www.fibaro.com/fr/support-technique

Concernant le login et le password, c’est ceux que vous avez défini à l’installation de la box.

Après avoir Enregistrer ces informations, cliquer sur Update devices ou Update rooms :

 

Si tout se passe bien vous devriez avoir quelque chose de ce type qui s’affiche :



Cela signifie que SARAH est maintenant connectée à votre box ! La vignette se met à jour et vous devriez voir ceci :



Le plugin va automatiquement aller récupérer le nom des modules, ce qui vous permettra par la suite d’interroger SARAH directement avec leurs noms. Il est possible de lancer une scène ou de demander l’état d’un module. Ainsi : « Sarah, donne moi le statut détecteur chambre » renverra si il n’y a pas de mouvements : « pas de mouvements sur détecteur chambre »

Dans les faits, c’est plus compliqué : le plugin a du mal à reconnaître mes phrases. J’ai donc désactivé le plugin Hue qui semblait avoir des commandes similaires. Les essais se sont révélés plus pertinents mais tout de même bien en deçà d’autres plugins.

Ce qui nous amène à cette remarque : plus vous aurez de plugins et plus SARAH s’attendra à ce qu’il y ait des ordres correspondants à ses fichiers XML. Du coup, si des phrases se rapprochent, cela peut mettre à mal la demoiselle.

Il faut donc travailler sur ces différents fichiers XML et définir des phrases bien distinctes pour chaque plugin. De plus, certains plugins comme celui de XBMC permettent d’activer un mode dont la fonction est de permettre de ne plus avoir à prononcer SARAH pour donner un ordre tout en bloquant la reconnaissance de tous les autres plugins : « Sarah, active le mode XBMC ».

N’ayant plus comme mot confident le mot « Sarah », le premier mot sera donc celui qui nécessitera une bonne prononciation car celui-ci devra porter sur ses épaules la reconnaisse des ordres.

Dans l’objectif de profiter pleinement de SARAH ainsi que de mon lecteur multimédia sur le Brix, j’ai mis en place, lors du démarrage, le lancement des deux applications (SARAH et XBMC) me permettant ainsi, dans la continuité du premier article de me passer complètement de clavier/souris.

Pour cela nous allons devoir faire une petite marche arrière, en effet, je n’ai pas réussi à faire exécuter SARAH sans avoir au préalable l’Explorer.exe qui tourne sous mon Windows 8…

J’ai donc trouvé une alternative fonctionnelle mais moins esthétique qui consiste à :

- Remettre l’explorer.exe en interface de démarrage Windows

- Lancer Client_Kinect, Server_NodeJS et xbmc.exe au démarrage

 

Le résultat est le même : on tombe sur l’interface d’XBMC en allumant l’ordinateur tout en ayant SARAH fonctionnelle en fond. Malheureusement, on voit apparaître l’interface Metro quelques secondes…

Pour réaliser cette manipulation, nous allons tout d’abord remettre l’explorer.exe en interface par défaut (si vous l’aviez changé par xbmc) :

Sous Windows, rendez-vous sur le bureau et tapez Windows + R, dans le champ saisissez gpedit.msc

 

Puis aller dans Configuration utilisateur -> modèle d’administration -> Système et cliquez sur Interface utilisateur personnalisée



Et la, cliquer sur Activer et renseigner le chemin complet de l’explorer : C:\Windows\explorer.exe



Appliquer puis OK.

Refaites apparaître la fenêtre Exécuter par la combinaison de touches Windows + R. Cette fois-ci entrer shell:startup



L’explorer de fichiers vous ouvre une fenêtre vide. Dans celle-ci nous allons y copier les raccourcis des applications que l’on souhaite voir s’exécuter au démarrage à savoir :

- Client_Kinect

- Server_NodeJS

- XBMC

 

Pour cela, rien de plus simple, aller chercher l’exécutable de chaque programme et par un clic droit -> Créer un raccourci vous obtiendrez le fichier que l’on doit copier dans la fenêtre Démarrage.


Si vous redémarrez, vous aurez donc SARAH de démarrer et par-dessus, l’interface XBMC, c’est très WAF !

Et si vous désirez revenir sous Windows, toujours sans clavier/souris ?

Il y a une phrase pour cela, intégrée au plugin qui est « Sarah, ferme l’application XBMC musique (ou vidéo) » que vous pouvez bien entendu modifier dans le fichier XML du plugin.

Et si je souhaite rebasculer sous XBMC toujours sans le combo clavier/souris ?

Pour cela, nous allons rajouter quelques lignes dans les fichiers du plugin XBMC. Rendez-vous dans la partie Editer les fichiers de la vignette du plugin XBMC puis sélectionner le fichier xbmc.js afin d’ajouter la fonction permettant le lancement d’XBMC.

Ajouter cette ligne en tête document :

var exec = require(‘child_process’).exec;



Puis dans le corps du document de préférence à proximité de quitxbmc afin de se souvenir où est ce qu’on l’a mis :



case 'launchxbmc':
var process  = '"c:\\\\Program Files (x86)\\\\XBMC\\\\xbmc.exe"'
var child = exec(process, function (error, stdout, stderr){
if (error != null) consol.log('exec error: ' + error);
});
// Callback with TTS
callback({'tts': "XBMC en cours de lancement"});
break;

 


Bien sur, si XBMC n’est pas installé dans c:\Program Files (x86)\XBMC\, mettez à jour avec votre configuration, puis Enregistrer.



Nous allons maintenant rajouter la phrase à dicter pour déclencher la fonction. Pour cela, cliquer sur le fichier xbmc.xml et copier la ligne suivant,  toujours à proximité de la fonction de fermeture afin de pouvoir s’y retrouver :

<item>Lance l'application xbmc<tag>out.action.action="launchxbmc"</tag><tag>out.action.xbmc="video" </tag></item>

 



Puis Enregistrer.

Redémarrer le Server_NodeJS.  Vous pouvez à présent relancer votre XBMC en disant simplement : « Sarah, lance l’application XBMC » !

Sarah, au quotidien ?

On se retrouve vite à vouloir jouir de cette installation dans toutes les pièces et on aimerait que la reconnaissance soit plus précise. En effet, même si le projet est fonctionnel : le bruit ambiant, la présence de plusieurs personnes dans la pièce ou encore le lieu où se situe la Kinect sont des facteurs qui peuvent vous amener à répéter plusieurs fois la même commande.

Alors, quelles sont les solutions ?

1- Le projet n’en est qu’à ces balbutiements, Jean-Philippe et la communauté font un travail remarquable de développement afin de permettre à SARAH d’être plus performante et de communiquer avec plus d’objets.

2 - Le matériel n’est qu’une première version. Le Kinect, premier du nom est une formidable innovation de la part de Microsoft, mais ce n’est que l’ainé d’une série. On a donc hâte de voir SARAH fonctionner avec le Kinect 2 de la Xbox One !

3 - Connecter plusieurs Kinect. En effet, depuis la version 3.0 il est possible de connecter plusieurs Kinect est ainsi en profiter dans chaque pièce !

4 - Une application ! Depuis peu, une application Android est disponible sur le Google Play permettant d’envoyer les ordres directement au serveur en utilisant la reconnaissance google. Il s’agit de Sarah Controller Free, téléchargeable ici : https://play.google.com/store/apps/details?id=net.android.clientsarah&hl=fr
La configuration est enfantine, il suffit de rentrer l’adresse IP du serveur et du client Sarah ainsi que leurs ports d’accès respectifs. Une version payante est également disponible, elle rajoute plusieurs petites fonctions telles que le déclenchement de l’écoute en secouant le téléphone. (Disponible ici : https://play.google.com/store/apps/details?id=net.android.clientsarahpro&hl=fr)

En parlant de déclenchement, on aimerait parfois ne pas avoir à toujours répéter le mot Sarah, et que la reconnaissance vocale s’active d’elle-même. Impossible aujourd’hui car le système serait vite dépassé par les échanges vocaux… Néanmoins, avec l’arrivée d’objet tel que la Smarty Ring (http://smartyring.com/), on pourrait imaginer qu’un appuie discret sur son doigt permettrait au système de savoir que la prochaine phrase sera une commande.



Et la domotique dans tout ça ?

Dans ce tuto, nous avons fait un rapide tour du propriétaire, une « prise en main » des capacités offertes par Sarah. Nous verrons donc dans un prochain article orienté « Installation domotique » comment Sarah vient s’interfacer au milieu de tags NFC, de module Z-wave et de scénarios en tout genre !

A bientôt !

Vous n'avez pas compris un point ? Vous vous posez une question ? Vous pouvez nous contacter via le bouton Assistance sur votre gauche. N'hésitez pas à demander un rendez-vous téléphonique avec Domotics.

Vous avez aimé cet article ? Vous pouvez le partager sur vos réseaux sociaux pour soutenir son auteur et l'encourager à écrire de nouveaux articles ...

 

Cet article vous est proposé par Angelo B.: Angelo, passionné de nouvelles technologies, n'hésite pas à acquérir les objets les plus innovants afin de pouvoir partager ses expériences et ressentis, et les intégrer dans son habitat. Ainsi, il s'est lancé dans la création d'un bureau d'études en domotique : Hestia Conception. N'hésitez pas à échanger avec lui et si vous avez un projet, rendez-vous sur www.hestiaconception.com !

Mise à jour le Lundi, 03 Mars 2014 00:12  

Ajouter un Commentaire


Code de sécurité
Rafraîchir

Recherche

Newsletter ?

Instagram

Publicité

Espaces publicitaires à louer
Contactez-nous

Connexion