Brevet FR2719396A1 — publié le 19951103

Processeur contrôleur/contrôlé pour gestion de protocole de communication. L'invention concerne un processeur dédié à la gestion d'un protocole de communication dans un réseau d'appareils répartis le long d'une ligne de transmission d'informations, fonctionnellement distingués en appareils contrôleurs d'une part, et en appareil contrôlés d'autre part. L'invention trouve une application particulièrement avantageuse, mais non exclusive, dans le domaine de la gestion informatique d'installations domestiques, connu également sous le nom de domotique. Les réseaux domotiques informatisés comprennent en général une pluralité d'appareils répartis sur une ligne de transmission d'information (comme le secteur, les câbles coaxiaux, les paires torsadées, le rayonnement infrarouge, etc). Ces appareils peuvent être des appareils domestiques proprement dits, tels que téléviseur, réfrigérateur, machine à laver, radiateur, etc., des capteurs (de température par exemple), ou encore une ou plusieurs stations de contrôle destinées à recevoir des instructions ou des informations relatives au fonctionnement des autres appareils. Ces instructions sont par exemple des ordres d'arrêt ou de marche provenant d'un utilisateur. A leur tour, la ou les stations de contrôle adressent aux autres appareils de l'installation des ordres de commande sous la fore d'un message permettant notamment d'obtenir les modifications de fonctionnement désirées. Par exemple, après avoir reçu une information d'un capteur de température, une station de contrôle va comparer cette information à une consigne de l'utilisateur et éventuellement envoyer des commandes de mise en marche, d'arrêt, ou de diminution ou augmentation d'allure de chauffe à des radiateurs, suivant le résultat de la comparaison. Dans un réseau domotique, on peut distinguer fonctionnellement les appareils en contrôleurs et en contrôlés. Les appareils contrôleur sont capables de recevoir des informations d'un ou plusieurs appareils, et de leur envoyer des signaux de commande, ceux-ci modifiant par exemple le mode de fonctionnement de ces appareils. Les appareils contrôlés ne sont capables d'envoyer que des informations d'état (par exemple la température d'une pièce) mais non pas des signaux de commande pour modifier le fonctionnement d'un autre appareil (par exemple modifier l'allure de chauffe d'un radiateur dans le cadre global de la gestion d'énergie de l'installation) de manière autonome. Typiquement, les appareils contrôlés sont des appareils domestiques ou des capteurs, alors que les appareils contrôleurs sont des appareils spécifiquement dédiés à la gestion du réseau domotique (au sens du pilotage des appareils contrôlés pour des applications particulières ou globales) suivant des instructions données par l'utilisateur. Comme on s'intéresse aux réseaux domestiques informatisés dans lesquels des informations sont échangées entre des appareils, il faut que ces appareils soient pourvus de moyens spécifiques, programmables localement ou à distance, de manière à gérer la transmission, la réception et décodage des informations échangées. Typiquement cela se fait grâce à des circuits comprenant au moins un processeur et une ou des mémoires contenant des programmes que met en oeuvre ce processeur. De tels processeurs mettent en oeuvre deux types de programmes fonctionnellement distincts, d'une part des programmes de gestion de réseau, et d'autre part des programmes applicatifs dépendant de l'appareil concerné et de son fonctionnement. Typiquement, les programmes de gestion de réseau sont des programmes concernant la reconnaissance et la mise en forme de messages à recevoir ou à transmettre sur le réseau, aussi bien pour les appareils contrôleurs que pour les appareils contrôlés. Ils servent donc à exécuter des tâches protocolaires (liées au protocole d'échange qu'utilisent les appareils sur le réseau) telles que codage et décodage de bits, calcul de code correcteur d'erreurs, gestion de collision, etc., dépendant de la structure formelle des messages échangés. Les programmes applicatifs concernent d'un point de vue général, l'utilisation qui est faîte des informations échangées. Ils sont dépendants des appareils les mettant en oeuvre et donc concernent l'aspect fonctionnel individuel de ceux-ci. D'un point de vue développement des programmes, les programmes de gestion de réseau intéressent plus particulièrement les fabricants de processeurs amenés à être utilisés dans les appareils d'un réseau, alors que les programmes applicatifs permettent de personnaliser les produits et intéressent plus particulièrement les équipementiers (fabricants d'appareils), intégrant dans leurs produits ces processeurs. De manière à faciliter le travail de développement des équipementiers, dans le contexte des réseaux de communication, les fabricants de processeurs s'orientent vers l'intégration de programmes de gestion de réseau spécifiquement dédiés à la gestion de réseaux domotiques, et non pas seulement à la gestion de tâches protocolaires. En effet, chaque type d'appareil domestique propose généralement des fonctionnalités identiques d'un appareil à l'autre. Par exemple, une machine à laver peut être caractérisée par un certain nombre de programmes de lavage de type applicatif, chaque programme étant défini par un temps de lavage, une température de lavage etc. Dans un réseau domotique, quel que soit l'équipementier ayant fabriqué un appareil d'un type donné, cet appareil sera donc amené à mettre en oeuvre des processus de fonctionnement identiques aux appareils concurrents de même type. On pourra donc définir des variables communes à différents appareils d'une même espèce, telles que temps de lavage et température de lavage par exemple dans le cas des machines à laver. Dans cette optique, un fabricant de processeurs aura commercialement tout intérêt à proposer des programmes de gestion de réseau orientés vers les applications prévisibles qui seront faîtes de ses produits, et concernant de fait des instructions de mode de fonctionnement ou la manière de gérer individuellement ou globalement une installation domotique. A titre d'exemple, le fabricant de processeurs pourra fournir des programmes de gestion dans lesquels des variables, telles que temps et température de lavage par exemple, seront prédéfinies, de telle sorte qu'un équipementier sera certain que s'il émet une information de temps de lavage à destination d'une station de contrôle, elle sera reconnue comme telle par cette dernière. De même, du point de vue du réseau, un fabricant de processeurs aura intérêt à proposer un produit qui contienne des programmes de communication selon un protocole d'échange permettant la reconnaissance du type d'appareil utilisé (par l'envoi, au moment de la connexion de l'appareil au réseau de communication, par celui-ci, d'un message de demande de prise en charge par une station de contrôle). Afin de minimiser le nombre de processeurs différenciés par des programmes de gestion distincts, les fabricants de processeurs proposent donc des processeurs de type contrôleur ou contrôlé pouvant mettre en oeuvre divers types d'applications (gestion de lumière, de chauffage etc.). Un équipementier choisira ainsi par exemple un processeur de type contrôleur pour l'implanter dans une station de contrôle de chauffage, et sa programmation consistera, en simplifiant, à indiquer que l'appareil concerne une installation de chauffage. Jusqu'à maintenant, pour restreindre le prix des processeurs, on trouvait des processeurs de type contrôleur ou contrôlé. En effet, un appareil de type contrôlé n'étant pas destiné à envoyer des messages de commande ou des instructions dans le contexte de la gestion d'un réseau d'appareils, il n'est pas nécessaire d'intégrer dans ses mémoires des programmes permettant par exemple de stocker des informations reçues de stations de contrôle, ou les adresses des autres appareils de même type, au sens fonctionnel, présents sur le réseau. Par conséquent, cela induit en pratique que les tailles des mémoires associées aux processeurs destinés aux appareils contrôlés sont plus réduites que celles de ceux destinés aux appareils contrôleurs. Il était donc économiquement préférable de distinguer le type d'appareil, contrôleur ou contrôlé, auquel était destiné un processeur en développement. On s'est aperçu que cela posait deux inconvénients. Premièrement, afin de développer le rayonnement de protocoles d'échange, on a vu se développer une activité de normalisation de façon à assurer l'interopérabilité et la compatibilité des appareils destinés à opérer sur un type de réseau, indépendamment des fabricants de ces appareils. La distinction contrôleur-contrôlé oblige donc les fabricants de processeurs à procéder à deux certifications (vérification de respect de la norme) pour des processeurs finalement assez proches, puisqu'en pratique seul le contenu de mémoires va les différencier. Deuxièmement, un fabricant de processeur différenciés en contrôleurscontrôlés ne pourra pas optimiser sa production, au mieux, car il ne sera jamais sûr du nombre exact de processeurs pour appareil contrôleur et de processeurs pour appareils contrôlés que pourront lui commander des équipementiers. Ainsi, le but de la présente invention est de proposer un processeur, dédié à la gestion d'un protocole de communication, et destiné à être implanté dans des appareils répartis le long d'une ligne de transmission d'informations et formant un réseau; les appareils étant fonctionnellement distingués en contrôleurs et en contrôlés; le processeur mettant en oeuvre des programmes compris dans une mémoire associée, ces programmes étant fonctionnellement distingués en programmes applicatifs et en programmes de gestion de réseau, caractérisé en ce que: - les programmes de gestion de réseau sont toujours différents suivant que les appareils sont de type contrôleur ou de type contrôlé, - la mémoire comprend à la fois les programmes de gestion de réseau associés aux appareils de type contrôleur et aux appareils de type contrôlé, - et en ce que le processeur est muni de moyens de sélection pour mettre sélectivement en oeuvre les programmes de gestion de réseau associés aux appareils de type contrôleur ou aux appareils de type contrôlé. L'invention propose donc de ne développer qu'un seul type de processeur intégrant les fonctionnalités propres aux applications de type contrôleur et aux applications de type contrôlés, la différentiation étant laissée aux équipementiers. La description qui va suivre, en regard des dessins annexés, -donnés à titre d'exemples non limitatifs, fera bien comprendre en quoi consiste l'invention et comment elle peut être réalisée. La figure 1 est un schéma représentant une installation comprenant un système de transmission de données, entre une station de contrôle (appareil de type contrôleur) et plusieurs appareils (de type contrôlés) répartis sur le secteur. La figure 2 est un schéma de la station de contrôle de la figure 1. La figure 3 est un schéma d'un appareil de type contrôlé de la figure 1. La figure 4 donne la composition typique d'un message transmis entre les différents organes de l'installation de la figure 1. La figure 1 montre de manière schématique un système de transmissions de données dans une installation domestique comprenant une pluralité d'appareils SC, 10, répartis sur un support de transmissions d'informations, ici le secteur CP (communication par courant porteur). La transmission des données entre les différents organes se fait donc uniquement à travers le circuit de distribution d'énergie. Si une ligne de transmission réservée à la circulation d'informations existait, elle pourrait tout aussi bien être utilisée à cette fin. On pourrait également réaliser un système utilisant différents média (secteur, ondes hertziennes, rayonnement infrarouge, câbles coaxiaux, etc.) et comprenant des appareils de relai pour établir des passerelles entre ces différents média. Les appareils constitués par la station de contrôle SC et les appareils 10, 20 sont aptes à recevoir et émettre des données, les données étant transmises par une modulation de deux fréquences. Les informations binaires 0 et 1 sont représentées par exemple par la présence respective d'une première fréquence de modulation de 132 kHz et d'une deuxième fréquence de modulation de 133 kHz. La constitution générale de la station de contrôle SC est donnée sur la figure 2. La station comprend de préférence un circuit à processeur pour émettre des signaux de commande ou instructions de gestion globale de l'installation, et pour recevoir et traiter les signaux reçus. Ce circuit comporte ses propres programmes de fonctionnement, qui sont contrôlés par l'utilisateur par exemple par l'intermédiaire d'une console MC comprenant un clavier de commande et un écran de contrôle. On peut aussi prévoir que le circuit à processeur est contrôlé par un micro- ordinateur personnel, l'utilisateur pouvant alors définir à volonté des programmes de fonctionnement du processeur. Outre un processeur MP, ses mémoires de programmes MEM et de travail MEM', le circuit comporte les moyens nécessaires pour établir les signaux à transmettre sur le secteur. Ces moyens comportent de préférence un oscillateur OSC pour établir une fréquence porteuse locale. La sortie de l'oscillateur est appliquée, à travers un modulateur / démodulateur MODEM, à un amplificateur AMP, et la sortie de l'amplificateur AMP est appliquée au secondaire d'un transformateur TR dont le primaire est connecté au secteur. Les informations qui viennent du secteur et qui sont destinées à la station de contrôle SC arrivent par le transformateur TR. Elles sont transmises à une cellule de filtrage permettant de détecter la présence d'une modulation de fréquence représentative de la présence de 0 ou de 1 sur le secteur. La sortie de la cellule de filtrage est reliée au MODEM et mise en forme. La sortie de ce circuit est reliée au processeur MP. Les signaux reçus du réseau des autres appareils de l'installation sont démodulés et transformés en successions d'impulsions binaires qui sont exploitables par le processeur MP. Sur la figure 3, on a représenté la constitution générale des appareils 10 et 20. Leur constitution est pratiquement identique à celle représente à la figure 2, mais les appareils 10 et 20 ne sont pas contrôlés par un clavier et un écran. Dans un exemple, on pourra supposer que l'appareil est une sonde de température, que l'appareil 20 est un radiateur, et que la station de contrôle SC est destinée à contrôler le chauffage de l'installation domestique. L'appareil 10 comprend ainsi un processeur MP1 avec des mémoires de programmes MEM1 et de travail MEM'1 permettant d'une part d'exécuter des opérations prédéterminées sous la commande des signaux reçus de la station de contrôle SC par le biais du secteur, ses opérations prédéterminées étant contenus dans la mémoire de programmes MEM1, et d'autre part de stocker, dans la mémoire de travail MEM'1, des informations reçues d'un capteur de température CAP par le biais d'un convertisseur CAN. Il comprend également un transformateur TR1 par lequel peuvent être transférés vers les réseaux ou reçus du réseau des données. Il comprend également les moyens de modulation, de filtrage et de démodulation nécessaires pour la conversion de ces données dans une forme utilisable par le processeur: OSC1, MODEM1, AMP1, FILT1, exactement comme dans le circuit de la station SC. L'appareil 20 comprend ainsi un processeur MP2 avec des mémoires de programmes MEM2 et de travail MEM'2. L'appareil 20 pourra ainsi envoyer par exemple des signaux de commande à une source d'alimentation variable d'une résistance (radiateur électrique) par le biais d'un convertisseur CNA. Il comprend également un transformateur TR2 par lequel peuvent être transférés vers le. réseau ou reçus du réseau des données. Il comprend également les moyens de modulation, de filtrage et de démodulation nécessaires pour la conservation de ces signaux dans un forme utilisable par le processeur: OSC2, MODEM2, AMP2, FLT2, exactement comme dans le circuit de la station SC. La figure 4 représente la structure générale d'un message transmis par un appareil sur le réseau, avec notamment un préambule PR, un en-tête HDR, un zone ADD d'adresses comportant l'adresse de l'émetteur du message et celle, ou celles, des destinataires, une zone DATA de données, et éventuellement un zone ACK d'acquittement dans laquelle l'émetteur indique s'il désire ou non recevoir.un message d'acquittement en réponse au message émis. En ce qui concerne les mémoires associées aux processeurs des appareils SC, 10, 20, on a distingué d'une part des mémoires de programmes, et d'autre part des mémoires de travail. Bien entendu, ces mémoires pourront être physiquement une seule et même mémoire, la différence entre mémoire de programmes et mémoire de travail étant alors représentée par des zones d'adressage déterminées de manière distincte. Les mémoires de programmes contiennent des programmes fonctionnellement distinguées en programmes de gestion de réseau (G, Gi, G2) et en programmes applicatifs (AP, AP1, AP2). En pratique, les programmes de gestion de réseau seront contenus dans des mémoires de type masqué, c'est- à-dire non accessibles aux équipementiers, de manière à assurer en permanence un respect du protocole d'échange standardisé (éventuellement normalisé) mis en oeuvre dans un réseau par les appareils amenés à communiquer entre eux et connectés au réseau. Par contre, il est bien sûr évident qu'à l'opposé, les programmes applicatifs seront avantageusement programmés par les équipementiers et contenus dans une zone mémoire accessible en programmation de manière à permettre une mise au point de ceux-ci. Dans l'exemple décrit, les processeurs des appareils SC, 10 et 20, sont munis chacun d'une broche de sélection CR/CE. Cette broche est destinée à recevoir un signal représentatif du type de l'appareil (contrôleur ou contrôlé).. Les processeurs étant tous typiquement munis de deux broches d'alimentation, pour recevoir une tension positive VCC et une tension de masse VSS, on pourra par exemple distinguer les types d'appareils en connectant leur broches CR/CE à l'une ou l'autre de ces broches. Dans l'exemple décrit, si la broche CR/CE reçoit la tension VSS, c'est un appareil de type contrôlé, et si elle reçoit la tension VCC, c'est un appareil de type contrôleur. A la mise sous tension, le processeur de l'appareil SC, ou 10, ou 20, ira lire l'état de cette broche pour déterminer son type. On pourrait aussi réserver un espace des mémoires contenant les programmes applicatifs (AP, AP1, AP2) pour que l'équipementier stocke cette information, celle-ci étant lue à la mise sous tension. Cette dernière solution présente l'avantage de ne pas nécessiter de broche spécifique dédiée à recevoir l'information relative au type d'un appareil, et donc de minimiser l'encombrement du processeur compris dans cet appareil. REVENDICATIONS 1 - Processeur (MP), dédié à la gestion d'un protocole de communication, et destiné à être implanté dans des appareils répartis le long d'une ligne de transmission d'informations (CP) et formant un réseau; les appareils étant fonctionnellement distingués en contrôleurs et en contrôlés; le processeur mettant en oeuvre des programmes compris dans une mémoire de programmes associée (MEM), ces programmes étant fonctionnellement distingués en programmes de gestion de réseau (G) et en programmes applicatifs (AP), caractérisé en ce que: - les programmes de gestion de réseau sont toujours différents suivant que les appareils sont de type contrôleur ou de type contrôlé, - la mémoire comprend à la fois les programmes de gestion -de réseau associés aux appareils de type contrôleur et aux appareils de type contrôlé, - et en ce que le processeur est muni de moyens de sélection pour mettre sélectivement en oeuvre les programmes de gestion de réseau associés aux appareils de type contrôleur ou aux appareils de type contrôlé. 2 - Processeur suivant la revendication 1, caractérisé en ce que les programmes de gestion de réseau sont inscrits dans la mémoire de façon indélébile. 3 - Processeur selon l'une des revendications 1 à 2, caractérisé en ce que les programmes applicatifs sont inscrits dans une partie de la mémoire accessible en écriture. 4 - Processeur suivant l'une des revendications 1 à 3, caractérisé en ce que les appareils de type contrôlé peuvent envoyer des informations représentatives de leur état, et en ce que les appareils de type contrôleur peuvent envoyer des informations de commande pour modifier l'état d'un ou plusieurs appareils de type contrôlé et comportent des moyens pour stocker les informations envoyées par un ou plusieurs appareils de type contrôlé. 5 - Processeur suivant l'une des revendications 1 à 4, caractérisé en ce qu'il comporte une broche de sélection (CR/CE) pour recevoir un signal représentatif du type de l'appareil. 6 - Processeur suivant l'une des revendications 1 à 4, caractérisé en ce qu'un espace de la mémoire de programmes est réservé pour stocker une information représentative du type de l'appareil. 7 - Processeur suivant l'une des revendications 1 à 6, caractérisé en ce qu'il est dédié à la gestion d'un protocole de communication dans un réseau domotique informatise.