FR 2912863 A1 20080822 FR 0701163 A 20070215 . Objet L'invention concerne un système universel de commande à distance basé sur un apprentissage automatique d'interface. Un système de commande à distance standard est en général associé à un périphérique déterminé ou, pour les commandes dites universelles , doit être programmé par l'utilisateur pour s'adapter au périphérique désiré. L'invention solutionne ce problème en définissant un système d'apprentissage permettant au périphérique lui-même de 1 mettre à jour la commande à distance en lui communiquant son interface de contrôle. 1.1. Principe de l'invention. Ce document décrit un système de commande à distance intelligent 15 capable d'adapter automatiquement son interface en fonction du périphérique à contrôler. 1.2. Applications 20 L'invention s'applique typiquement au contrôle d'appareillages domotiques, en fournissant à l'utilisateur un système de commande unique et configuré automatiquement, pour le contrôle de tous les équipements domestiques. L'invention pourra également s'appliquer au contrôle 25 d'appareillages professionnels et industriels. L'invention pourra également servir de périphérique de contrôle additionnel pour un ordinateur. Les différentes applications de l'invention sont détaillées en partie 4. 1 30 . Définitions Nous donnerons ici un certain nombre de définitions nécessaires à la compréhension du système décrit. Certaines sont d'ordre général et .5 certaines sont spécifiques au système. 2.1. Système de commande Appareil de contrôle disposant d'une interface d'entrées / sorties permettant d'une part d'envoyer des commandes à un appareil, et 10 d'autre part de recevoir et d'afficher des informations sur l'état dudit appareil. 2.2. Périphérique 15 Tout appareil contrôlable électriquement, et donc pouvant être contrôlé par son utilisateur via un système de commande tel que décrit en 2.1. 20 2.3. Commande Information à envoyer à un périphérique pour activer une de ses fonctionnalités. Dans notre cas une commande correspondra à un paquet de données numérique contenant : - La sélection d'un mode de transmission physique (par 25 exemples filaire / radio / infrarouge) - La sélection, le cas échéant, d'une bande de fréquence - La sélection, le cas échéant, d'un canal de transmission - Un paquet de données numérique sélectionnant la fonctionnalité à activer sur le périphérique 30 2.4. Interface Ensemble des commandes à envoyer à un appareil et des informations à recevoir de cet appareil pour permettre à un utilisateur 35 de le contrôler. La notion d'interface inclut également l'agencement physique (spatial) des contrôleurs (boutons, voyants, écrans...) assurant l'envoi des commandes et le retour des informations. 40 2.5. Acronymes LCD : Liquid Crystal Display RAM : Random Access Memory 2 RF : Radio Frequency RFID : Radio Frequency Identifier RSSI : Received Signal Strength Information WiFi : Wireless Fidelity 2.6. Liste des figures Des modes d'exécution de l'invention seront décrits ci-après, à titre d'exemples non limitatifs avec références aux dessins annexés dans 10 lesquels : La figure 1 est une représentation schématique de la structure générale du système de commande (1), présentant ses différents composants et leurs interactions. La figure 2 représente de manière schématique le fonctionnement du stockage des informations définissant les interfaces et la reconstitution d'un menu de commande opérationnel (16) à partir de ces informations et des bibliothèques prédéfinies (12). La figure 3 représente de manière schématique une implémentation possible de la structure de données utilisées pour stocker les fichiers d'interface (11) sur le système de commande. 25 La figure 4 représente de manière schématique le principe de l'acquisition d'interface via un émetteur radio (19) embarqué sur le périphérique (9). La figure 5 représente de manière schématique le principe de 30 l'acquisition d'interface via Internet, par téléchargement du fichier (11) sur un serveur (26) dédié, avec identification par lecture optique. La figure 6 représente de manière schématique le principe de l'acquisition d'interface via Internet, par téléchargement du fichier (11) 35 sur un serveur (26) dédié, avec identification par RFID. La figure 7 représente de manière schématique le principe de l'acquisition d'interface via une carte mémoire (28) sur laquelle le fournisseur (25) du périphérique (9) aura stocké le fichier d'interface 40 (11). 15 20 La figure 8 représente de manière schématique le principe de la sélection automatique de périphérique (9) par le système de commande (1), par critère de proximité spatiale.5 . Description du système Le principe de l'invention est l'apprentissage d'interface par le système de commande. Ce principe permet au fabriquant du périphérique de définir lui-même l'interface la mieux adaptée, cette interface étant téléchargée par la suite vers le système de commande. Nous donnons ici une description générique de l'implémentation du système, nous décrivons son fonctionnement, et présentons les variantes possibles pour l'acquisition d'interfaces. 10 Dans ce qui suit, nous associerons à tout périphérique un identifiant numérique ID unique, composé de deux sous identifiants IDM et IDN : ID = IDM IDN, ou : IDM identifiera le modèle du périphérique. IDN identifiera le périphérique lui-même par son numéro de 1 série par exemple. (Deux appareils de même marque et de modèles identiques auront donc un même IDM mais deux IDN distincts.) 3.1. Structure du système 20 Le système de commande (1) est un dispositif électronique architecturé autour d'un microprocesseur (2) contrôlant les échanges entre les différents composants. Ces composants sont les suivants : - Une mémoire de type RAM (8) connectée au microprocesseur (2) 25 Un écran LCD tactile (3) constituant l'interface d'entrées / sorties pour l'utilisateur Une mémoire d'interface (4) non volatile permettant de stocker les données numériques définissant les interfaces des périphériques (9) à commander (mémoire de type 30 flash par exemple) - Une mémoire programme (5) non volatile contenant le logiciel embarqué exécuté par le microprocesseur (mémoire de type flash par exemple) - Un module de réception (6) qui recevra notamment les 35 données définissant l'interface de chaque périphérique et les stockera dans la mémoire d'interfaces (4) via le microprocesseur (2) - Un module d'émission de commande (7) qui enverra les commandes aux périphériques (9) 40 La figure 1 présente la structure générale du système telle que décrite ci avant.5 3.2. Interfaces Les interfaces des périphériques sont destinées à être affichées sur s l'écran tactile (3) du système de commande. A chaque périphérique (9) correspondra une interface constituée par un menu graphique (15) et un ensemble de commandes (13) associées à certains des boutons de ce menu. Pour des raisons d'optimisation, les objets (objets graphiques notamment) pouvant être communs à plusieurs interfaces 10 seront stockés au préalable de manière statique dans la mémoire programme (5) sous forme de bibliothèques (12). La taille des données définissant une interface sera ainsi considérablement réduite. Par la suite nous utiliserons le terme fichier d'interface (11) pour désigner le paquet de données définissant une interface, et contenant is donc d'une part le menu (14) et d'autre part l'ensemble des commandes associées (17) à envoyer au périphérique, relativement aux bibliothèques prédéfinies (12). Le microprocesseur (2) sera capable à tout moment de reconstituer le menu de commandes opérationnel (16) à partir du fichier d'interface (11) et des 20 bibliothèques (12). La figure 2 illustre le principe explicité ci avant. 3.3. Acquisition d'interface 25 Nous décrivons ici les différents modes d'acquisition d'interface possibles, qui pourront être utilisés en fonction des contraintes de l'application. 3.3.1. Fonctionnement général 30 La mémoire (4) stocke une table (20) contenant les IDM des modèles de périphériques déjà connus par le système. Pour chaque entrée de cette table (donc pour chaque modèle de périphérique enregistré), on stocke : - Un pointeur IFM vers le fichier d'interface (11) 35 correspondant Un pointeur LM vers la liste des exemplaires enregistrés (21) pour le modèle de périphérique (Ce pointeur pourra être mis à zéro si aucun exemplaire du modèle n'est enregistré sur le système.) 40 La figure 3 présente une implémentation possible de la structure de données contenue dans la mémoire (4) du système de commande (1). Lorsqu'un périphérique est déclaré, le système vérifie d'abord son IDM. Si celui-ci n'existe pas encore dans la table (20), le système récupère le fichier d'interface (11) via le module récepteur (6), le stocke dans la mémoire (4), et met à jour la table (20) en ajoutant l'entrée correspondante. Si l'IDM du périphérique existe déjà dans la table (20), l'interface de ce modèle est déjà connue : le système pourra alors vérifier si la version proposée du fichier d'interface est plus récente que celle déjà stockée dans la mémoire (4), et effectuer une mise à jour le cas échéant. Dans les deux cas l'IDN du périphérique est ensuite vérifié, et ajouté à la liste des exemplaires (21) s'il n'y était pas déjà enregistré. Le périphérique est à ce moment enregistré sur le système. 3.3.2. Acquisition par réception radio Le périphérique (9) contient ou est associé à un module dédié à l'émission d'interface (10). Ce module (10) comprendra une mémoire non volatile (18) couplée à un émetteur radio (19). Le fichier d'interface (11) du périphérique (9) sera stocké dans la mémoire (18) et transmis via l'émetteur radio (19). Le module récepteur (6) du système de commande (1) reçoit ce fichier (11) via un récepteur radio (22). Le fichier est alors stocké dans la mémoire (4) via le microprocesseur (2). La figure 4 illustre l'acquisition d'interface par réception radio. 3.3.3. Acquisition par liaison Internet Le fournisseur (25) du périphérique (9) met à disposition le 35 fichier d'interface (11) sur un serveur de téléchargement (26) dédié. Il pourra fournir d'autre part avec le périphérique : - une simple étiquette à code optique (30) de type code barres par exemple. Le code de l'étiquette (30) correspond à l'ID (IDM et IDN) du périphérique 40 (9). - et / ou une puce (32) de type RFID (identifiant RF) dans laquelle est stocké l'ID du périphérique (9) L'utilisateur communique au système l'ID (IDM et IDN) du périphérique (9). Cet ID pourra être communiqué : - via l'écran tactile (3) (saisie manuelle) - via le lecteur optique (29) Par lecture de l'étiquette à 5 code optique (30) - via le lecteur RFID (31), par lecture de la puce RFID (32) Le système (1) envoie alors via son module WiFi (23) une requête au serveur de téléchargement (26). Cette requête contient 10 l'ID du périphérique (9). A la réception de la requête, le serveur (26) envoie le fichier d'interface (11) au système de commande (1) qui le stocke dans la mémoire (4) via le microprocesseur (2). La connexion à Internet pourra se faire via un système classique de modem / routeur WiFi (24). 15 Les figures 5 et 6 illustrent l'acquisition d'interface par liaison Internet 3.3.4. Acquisition par carte mémoire 20 Le fournisseur (25) enregistre le fichier d'interface (11) correspondant au périphérique (9) sur une carte mémoire (28) qu'il fournit à l'utilisateur. L'utilisateur insère la carte (28) dans le lecteur de carte (27) du module récepteur (6). La carte (28) est automatiquement lue par système de commande (1) qui récupère 25 le fichier (11) et le stocke dans la mémoire (4) via le microprocesseur (2). La figure 7 illustre l'acquisition d'interface par carte mémoire. 3.4. Sélection de périphérique 30 Lorsque plusieurs périphériques sont enregistrés sur le système de commande, la sélection du périphérique à contrôler (9) pourra être manuelle ou automatique. 3.4.1. Sélection manuelle de périphérique 35 L'écran tactile (3) affiche un menu général présentant tous les périphériques actuellement enregistrés sur le système de commande (1). Le périphérique (9) est sélectionné manuellement par l'utilisateur via le menu général. 40 3.4.2. Sélection automatique de périphérique Le système de commande envoie un message à destination de tous les périphériques à sa portée. Chaque périphérique répond en envoyant son ID, et le système de commande (1) sélectionne le périphérique le plus proche (9). Cette sélection pourra se baser sur la force du signal reçu (critère RSSI). La figure 8 illustre la sélection automatique de périphérique par critère de proximité. 3.5. Emission de commandes Quand un périphérique enregistré sur le système est sélectionné, le menu de commandes opérationnel (16) est reconstitué par le microprocesseur (2) (à partir du fichier d'interface (11) et des bibliothèques (12)), et chargé en mémoire RAM (8). Le menu graphique (15) correspondant est alors affiché sur l'écran LCD (3) et le système est prêt à contrôler le périphérique (9) : lorsque l'utilisateur pousse un bouton du menu affiché (15), la commande correspondante est lue en mémoire RAM (8) par le microprocesseur (2) et envoyée au périphérique (9) via le module émetteur (7). 3.6. Réception d'informations Quand un périphérique enregistré sur le système est sélectionné, le menu de commandes opérationnel (16) est reconstitué par le microprocesseur (2) (à partir du fichier d'interface (11) et des bibliothèques (12)), et chargé en mémoire RAM (8). Le menu graphique (15) correspondant est alors affiché sur l'écran LCD (3) et le système est prêt à recevoir des informations du périphérique. Comme les commandes, le type et le formats des informations que le périphérique (9) est susceptible d'envoyer sont définies dans le fichier d'interface (11) : lorsque une information est émise par le périphérique (9), elle est récupérée par le microprocesseur (2) via le module récepteur (6), décodée et affichée dynamiquement sur le menu graphique (15), selon le format défini dans le fichier d'interface (11). 35 . Applications Nous donnons ici des exemples concrets d'applications pour le système décrit précédemment. Nous expliciterons des cas de mise en 5 oeuvre du système global, ainsi que l'implémentation de ses différents composants. 4.1. Domotique L'invention s'applique typiquement qu contrôle d'appareillages tc- domotiques, en fournissant à l'utilisateur un système de commande unique et configuré automatiquement, pour le contrôle de tous les équipements domestiques, parrni lesquels nous citerons : - Equipements audiovisuel (Téléviseur, magnétoscope, lecteur / enregistreur de DVD, tuners TNT, décodeurs câble / satellite, 15 chaîne Hi-Fi, vidéo projecteur... etc.) - Stores et volets roulants électriques - Portails de jardin - Portes de garage - Systèmes d'alarme (détection / prévention d'intrusion) 20 - Systèmes de vidéosurveillance - Systèmes de chauffage -Systèmes de climatisation - Systèmes de gestion d'éclairage - Systèmes d'arrosage automatique 25 - Station météorologique domestique - Jouets radio pilotés 4.2. Applications professionnelles 30 L'invention peut s'appliquer au contrôle d'appareillages professionnels, en milieu industriel notamment. Elle permettra le déport de l'interface des appareils dont toutes les fonctionnalités (réglages avancés ou calibrage par exemple) n'ont pas 35 besoin d'être accessible en permanence : chaque appareillage pourra n'être équipé que d'une interface basique et robuste, plus économique et plus adaptée aux conditions parfois contraignante d'un atelier, d'une usine ou d'un laboratoire. Toutes les fonctions avancées resteront disponibles via le système de commande. 40 La sélection automatique de périphérique s'applique typiquement à ce type d'utilisation de l'invention. 10 .2. Extension d'interfaces L'invention peut s'appliquer au domaine informatique en fournissant `i une extension d'interface à des logiciels aux contrôles complexes. Nous citerons typiquement : - Tout type de logiciels de CAO - Les logiciels conception graphique - Certains jeux vidéo ia Dans ce type d'application, l'ensemble constitué de l'ordinateur et du logiciel est vu par le système de commande comme le périphérique à contrôler. 11 155 ANNEXE 1. Table des symboles Cette table regroupe les différents symboles utilisés dans la description de l'invention et leur signification. Symboles Description Pré requis pour l'implémentation ID Donnée numérique identifiant de Pour tout périphérique, façon unique un périphérique l'identifiant unique ID est la concaténation de IDM et IDN. IDM Donnée numérique identifiant de façon unique un modèle de périphérique IDN Donnée numérique identifiant un exemplaire d'un périphérique, parmi tous les périphériques du même modèle NbM Nombre d'exemplaires enregistrés - pour un modèle de périphérique donné LM Pointeur vers la liste des - exemplaires enregistrés pour un modèle de périphérique donné IFM Pointeur vers le fichier d'interface -pour un modèle de périphérique donné Revendications 1. Système de commande à distance, avec apprentissage automatique d'interface caractérisé par le principe de 5 fonctionnement suivant : - Le système apprend de façon automatique les interfaces de commande des périphériques à contrôler. Le système génère et affiche dynamiquement des 1 o interfaces graphiques complexes, à partir de leurs formes codées, et de données de bibliothèques stockées localement. 2. Système de commande à distance selon la revendication 1 15 caractérisé en ce qu'il est constitué entre autre : - D'un écran à dalle tactile assurant l'interface physique du système avec l'utilisateur. D'une mémoire réinscriptible non volatile permettant de stocker localement les données définissant les 20 interfaces des périphériques à contrôler De plusieurs émetteurs, contrôlables de façon logicielle, assurant l'émission de commandes vers les périphériques sur différents médias physiques D'une logique de contrôle (typiquement un 25 microprocesseur) assurant la coordination des éléments précédents 3. Procédé d'apprentissage d'interface pour système de commande selon la revendication 1 caractérisé en ce qu'il 30 consiste à : - Stocker les données définissant l'interface d'un périphérique dans une mémoire embarquée sur le périphérique Transmettre automatiquement les données stockées 35 au système de commande par émission radio. Reconstituer localement l'interface sur le système de commande. 4. Procédé d'apprentissage d'interface pour système de 40 commande selon la revendication 1 caractérisé en ce qu'il consiste à : 13- stocker les données définissant l'interface sur un serveur de téléchargement -communiquer l'identifiant du périphérique à contrôler au système de commande télécharger automatiquement les données définissant l'interface depuis le serveur et les stocker sur le système de commande 5. Procédé d'apprentissage d'interface pour système de to commande selon la revendication 4 caractérisé en ce qu'il consiste à : - imprimer l'identifiant du périphérique sous forme de code optique sur une étiquette ou une carte utiliser un système de lecture optique embarqué sur le 15 système de commande pour lire l'étiquette et communiquer l'identifiant du périphérique à contrôler au système 6. Procédé d'apprentissage d'interface pour système de 20 commande selon la revendication 4 caractérisé en ce qu'il consiste à : - Enregistrer l'identifiant du périphérique sous forme d'identifiant RF (RFID) -utiliser un système de lecture RFID embarqué sur le 25 système de commande pour lire l'étiquette et communiquer l'identifiant du périphérique à contrôler au système 7. Procédé de sélection automatique de périphérique par 30 critère de proximité selon les revendications 1 et 3 caractérisé les étapes suivantes : Envoyer depuis le système de commande un message à destination de tous les périphériques à portée 35 Attendre les réponses de chaque périphérique et sélectionner automatiquement le plus proche du système de commande en fonction du niveau du signal reçu 40