Brevet FR2730080A1 — publié le 19960802

La présente invenbon conceme l'archrtecture et le fonct@onnement d'un rése@u informa@@que industnel ou domestique devant effectuer des opérations de contrô@e- commande. Les figures 1, 2 et 3 font ressort@@r les aspects maténels et log@ciels dont un système de contrôle- commande est actue@ement équipé pour remplir ses fonctions. ASPECTS MATERIELS. Cette descnp@on schémat@que veut montrer qu'il est nécessa@re de mettre en place une "logistique de transport de l'information", très lourde sur le plan du matériel, des coûts d'achats, d'insta@ations et des dé@ais de réalisation des procédés automatisés, La figure 1 fa@t apparaitre le synoptique d'une unité centrale (1) avec ses interfaces d'entrées (3) et de sorties (2) Les schémas ne représentent pas les circuits d'a@@mentations Les informations électnques d'entrées sont acheminées depuis les capteurs (13) placés sur le procédé automatisé (12) par les moyens suivants - Des c@bles à deux ou tro@s conducteurs (14) résistants aux contrantes du m@@eu dans lequel ils chem@nent - Un coffret (18) d@t "boite de jonction", dans lequel se trouve un bom@er (15) qui rassomble tous les câtles (14) en un gros câble multrfila@re (17) Ce câble est résistant aux contrai@tes du m@@@eu dans lequel il chemine - Une enveloppe pnncipale (20) ou armoire dans laquele le câble (17) entre et se divise sur le bomier (18) en un faisceau de câbles un@filaires (19) qui attaque @in@erface @@@@@@@ @@@ Les l1'a11iM élecin;;- de sorbes destinées - acbomurs (11) r-s ai le procédé sont physiquement acheminées par les moyens survants - Des conducteurs unifila@es (21) issus des interfaces de sorties (2) attaquent un étage d'interface de puissance (4) Cet interface de puissance vort ses sorties transmises par des câtles un@fitaires (5) vers un bom@er (6) qui permet de sortir les signaux de puissance de l'armaoire (20) par des câbles (7) à deux, trois, quatre ou cinq conducteurs et à double enveloppe Ces câbles sont résistants aux contraintes du m@@@eu où ils circulent. Ce schéma s'impose dans la mesure où la partie maténelle de l'unité centrale est le "centre géographique" de l'ensemble du procédé La partie logicielle, qui y est instal@ée, et qui est le "centre fonctionnel", est contrainte de s'y trouver @@ fa@ut donc lui amener les informations d'entrées depuis les capteurs et lu@ permettre de transmettre les informations de sorties aux actionneurs Le fart de véhiculer des informations électnques dort répondre à des cntères de sécurité des personnes, du matériel, ainsi qu'aux exigences techniques du procédé automat@sé Les solutions à ces contraintes sont à l'ong@ne de coûts importants à la réalisation des procédés automatisés. La figure 2 fait apparaître une tendance actuelle atténuant ces aspects négatifs. Les schémas ne représentent pas les circuits d'alimentations Les interfaces de sorties (32) et d'entrées (41) sont déportées respectivement dans un co@fret dit "auxiliaire" (34) et (40). En effet, l'interface de sortie (32), techniquement plus complexe, doit être équipée de l'interface de puissance (33). Les câbles (17) et (7) en fig. 1 sont @emplacés par des connexions informatiques (31) et (42) en figure 2 qui sont moins coûteuses à l'installat@on. La longueur des câbles (7) est réduite à ce@@e des câbles (35). Cependant les coûts engendrés par ce changement de configuration doivent être bien maitrisés et c'est souvent le paramètre de "distance" qui en est le facteur déterminant. ASPECTS LOGICIELS: La description schématique qui suit veut montrer par quels moyens actuels le traitement du programme par l'unité centrale est cohérent et évite des actions contradic@oires sur le procédé tout au long de son déroulement. La figure 3 schématise les trois phases pnncipales qui constituent le "cycle" de l'unité centrale représentée en figure 1 ou 2 a@nsi que les parties de la mémoire RAM auxque@@es elle a accès pour réaliser le programme 1ère phase (50): L'unité centrale commence par effectuer la scrutation des états des capteurs répertis sur le procédé automatisé. Elle écrit leur valeur dans la zone mémoire image des ertrées. C'est la gestion des interfaces d'entrées (2). 2éme phase (53). L'unité centrale effectue le programme qui est une suite de modules effectués les uns après les autres. Le programme est structuré de manière à ce qu'il soit scruté par l'unité centrale depuis le module le plus déterminant (51) sur l'évolution de l'automatisme jusqu'aux tâches les plus générales (52) Les premiers modules scrutés sont généralement les décisions à effectuer lors de l'apparition des "événements exceptionnels" tels que, coupures ou reprises secteurs, a@@êts d'urgonce, changement de mode de fonctionnement ect..., le demier (52) comespond habituellement aux calculs des actions qui seront attribués aux actionneurs. Sur le plan purement informatique, chaque module est un programme par lequel l'unité centrale lit des variables situées en mémoire de type "données", traite ces données par un ensemble d'opérations de tests, de comparaisons, d'arithmétiques etc..., et écrit les résultats dans d'autres variables situées elles aussi dans la mémoire de" type donnée". (le terme "écri@" est équivalent à "sauvegardé" ou à celui de "chargé"). Dans l'exposé qui suit, les vanables lues par l'unité centrale seront appelées "variatles d'accès" du module. Celles qui seront sauvegardées seront appelées "variables résultats". 3éme phase (54) L'unité centrale, après avoir parcouru le programme, recopie la mémoire unage des sorties venant dêtre calculées afin de gérer les actionneurs C'est la gestion des interfaces de sorties (3). Le Principe du cycle de runité centrale permet de garder une "stabilité" des valeurs d'entrées pendant toute la scrutation du programme. De même, plus généralement, la disposition des phases et des modules dans ce cycle fait que toutes les modifications des "variables résu@tats" dans les modules prioritaires deviennent immédiatement accessibles en tant que "vanables d'accès" par les modules à venir. Le degré de cohérence dun programme, vis à vis du procédé qu'il doit commandé, augmente dans la mesure où chacun de ses modules y est disposé à rendroit prFs tel que ses "variables d'accès" soient entièrement actualisées dans le cycle en cours par les modules plus prioritaires que lui lors de son appel. Le temps nécessaire à l'unité centrale pour effectuer ces trols phases s'appelle le " temps de cycle". Il est d'autant plus long que le programme est important II peut devenir préjudiciable dans la mesure où @I engendre un "temps mort" entre la phase de scrutation des entrées et les actions qui en découieront en fin de cycle. La présente invention a pour objectif de réduire de manière conséquente la logistique de transport d'information. Tout en assurant le principe de cohérence exposé prècédemr-n, elle rend le temps de cycle indépendant de la longueur du programme Elle consiste à éclater l'unité centrale représentée dans les figues 1 ou 2 en un nombre d'unités locales disposées au niveau des capteurs et actionneurs sur le procédé. Cet éclatement est tel que le "centre fonctionnel " que représente l'aspect logiciel ne soit plus localisé en un point précis "centre géographique" mals soit réparti au plus prés des sources d'informations d'entées et des destinations des infri de sones. La figure 4 schématise la structure du réseau qui en découle. Les unités focales (73) sont situées au niveau des capteurs (76) Les unités locales (79) sont situées au niveau des actionneurs (78) et sont pourvues d'un espace interface de puissance (70). Toutes les unités locales sont "réunies" par un bus exteme (71). Le procédé est repéré (77). La figure 4 est une représentation extrême dans la mesure où un seul capteur ou actionneur est connecté à son unité locale. Une structure "moins éclatée" que cette dernière, mais suffisamment pour fonctionner sous son principe est aussi concevable. Cependant la diminution du coût de l'intelligence artificielle ainsi que le le incessant des techniques d'intégration en électronique permettent d'en envisager renistence. La natwe du support matériel qui assume les fonctions du bus externe n'a pas de spécifications particulières à partir du moment où ces dites fonctions sont réalisées. Aussi, a peut être réalisé par le moyen de fibre optique, par émission-réception radio, coa > aal ou Qwt autre type de support. ASPECTS MATERIELS: La figure 5 schématise les parties matérielles qui composent une unité locale: 1) Une unité centrale locale (74) équipée de: - son interface d'entrée (90) et/ou de sortie (92), - sa mémoire RAM "locale" de données (88), - sa mémoire "programme local" (89), - son port d'accès (93) au buffer local (83) de l'unité interface au bus exteme (72), - d'un ensemble de lignes de contrôle-commandes (87) de/vers l'unité de contrôle et de commande des échanges bidirectionnels (85). C'est une structure qui correspond actuellement à celle d'un microoir. Elle a pour rôle d'exécuter son programme "local" qui a un rapport direct avec l'automatisme du procédé commandé. La résultante des actions conjointes de toutes les unités centrales locales sur celui-ci, est équivalente à l'action qu'aurait une seule nité centrale telle que représente en figure i ou 2. 2) Une unité d'interface au bus externe (72) équipée de: - un port d'accès (81) au bus exteme (71) et son "buffer global" (82). - un port d'accès (84) au bus inteme de runité centrale locale (74) et son" buffer local" (83), - une unité de contrôle et de commande (85) des échanges bidirectionnels entre les contenus " buffer global" et "buffer local". -un bus de confie (86) commandant les ports (81) et (84). 3) une unité interface (70), et rinterface adaptée à ractionneur commandé (91). ASPECTS LOGICIELS et FONCTIONNELS: Pour respecter le principe de cohérence, toute exécution du programme installée sur une quelconque unité centrale locale du réseau, doit être faite à partir d'une base de données lui apportant toutes ses variables d'accès actualisées. Le principe de cette structure matérielle pennet donc: - de mettre la disposition de chaque unité centrale locale, avant qu'elles ne commencent l'exécution de leur programme local, l'ensemble des "variables d'accès" qui lui sont nécessaires et qui ont été modifiées en tant que "vanables résultats" par une autre unité centrale locale. - de diffuser, après exécution de ce programme, à toutes les autres unités, ses "variables résultats" de manière à ce qu'elles puissent éventuellement s'en servir de "variables d'accès". Le rôle principal d'une unité interface au bus est donc de gérer ces échanges de "variables d'accès" et de "variables résultats" de manière indépendante au fonctionnement de l'unité centrale locale qui se trouve dans cette même unité locale. La figure 6 fait apparaitre les phases qui constrtuent le cycle d'une unité centrale éclatée. Dans chaque phase sera décht les rôles respectifs et principaux de l'unité centrale locale et de l'unité d'interface au bus La description qui swt ne dêcct qu'un fonctionnement "normal" et ne mentionne pas les fonctionnements particuliers tel que celui qui interviendrait pour un "1er cycle", ou une "coupure d'alimentation", ou un ordre "d'anêt de scrutation" lêre phase (61):: Chaque unité centrale locale effectue, en même temps, son programme local dont les variables d'accès ont été calculées durant la phase (63) et répertonées durant la phase (64) du cycle précédent Les unités centrales locales (79) figure 4 du réseau qui sont reliées à un actionneur (78) figure 4, disposent des variables d'accès nécessaires pour que leur programme puise déterminer son changement d'état En effet avant de modifier l'état des sorhes, les programmes locaux doivent tenir compte des décisions qui ont été prises durant le cycle précédent (phases 63, 64) et qui concement les évolutions globales de l'automatisme dans le cas d'une apparition d'événements remarquables (reprise secteur, a@êt d'urgence, changement de modes de fonctionnement, ect...) Principe de cohérence exposé page trois, ligne dix. tes unités centrales locales (73) figure 4 du réseau qui sont reliées à un capteur (76) figure 4, effectuent une lecture de son état Tous ces opérations modifient le contenu de chaque mémoire locale. De plus, toutes les unités cèntrales locales ne terminent pas cette phase ensemble, ce qui donne donc la possibilité à celles qui terminent les premières, de commencer la seconde phase (62), c'est à dire d'émettre le contenu de leur buffer local sur le bus exteri'e. L'unité interface au bus, vis à vis de ses deux ports, est alors dans une configuration qui leur permet de remplir les tâches suivante. - Le port d'accès (84) au bus inteme de l'unité centrale (74) permet de maintenir identiques les contenus du buffer local (83) à celur de la mémoire locale (88) - Le port d'accès au bus externe (81) saisit, et sélectionne les "vanables résultats" que les unités locales, qui ont terminé leur phase (61), émettent sur le bus (71) par leur unité interface au bus exteme correspondante - Les échanges bidirectionnels entre buffer local (83) et buffer global (82) sont bloqués, leur contenu évolue de manière différente 2éme phase (62). La phase (61) est terminée pour toutes les unités locales les programmes locaux sont effectués@Les unités centrales locales sont alors inactives sur le plan de l'automatisme. Elles sont donc libres pour effectuer des tâches dites "de fonds" ou auxiliaires notament d'assurer un dialogue console Toute unité interface au bus qui n'a pas encore émis le contenu de son buffer local, va avoir à exécuter un accès au bus, en tant que seul maître de celuici, pour pouvoir émettez le contenu de son buffer local sur le bus externe. Les autres serent alors en mode réception et les données seront saisies dans le buffer global . Une unité interface au bus en mode réception, est capable daprés la nature e@ou la forme des données présentes sur le bus externe, de répertorier l'unité interface qui en est maître à cet instant même. En conséquence. à partir du moment où toutes les unités interfaces connectées ont procédé à leur phase émission, elles sont donc en mesure de déclencher,en même temps, sur leur unité centrale locale respective les opérations suivants: - Actualisation du buffer local par le buffer global par l'unité d'échanges bidirectionnels, - TranSt du contenu buter local actualisé dans la mémoire locale de l'unité centrale, - Orientation du programme de l'unité centrale locale vers l'exécution du programme local suivant Dans cette demiere opérioion on entrevoit la possibtlité à l'unité interface au bus de transmettre vers son unité centrale locale des valeurs d'adresse influençant directement son compteur ordinal, et pouvant occasionner des appels de programmes spéciriques installés sur b mémoire programme de l'unité centrale locale. De plus, cette deuxième phase (62) synchronise les lancements des programmes de toutes les unités centrales locales. Cette synchronisation permet de rendre les actions réés de chaque unité centrale locale, cohérentes entre elles vis à vis du procédé automatisé. 3êmephase(63): Chaque unité centrale se lance donc dans la réalisation de la phase (63). Cette phase est directement liée à rautomatisme. Elle consiste à déterminer en fonction des résultats calculés, et des états des entres relevés en phase (61), répertonés en phase (62), les orientations générales que devra prendre l'automatisme dans le cycle suivant Ces phases ne permettent pas d'actions sur les actionneurs. Comme dans la phase (61) les unités centrales parcourent des programmes de longueurs différentes, certaines ventre elles commenceront la phase (64) avant les autres. 4ème phase (64): Les comportements des unités centrales locales et unités interfaces au bus sont sembbbles à ceux de la phase (62). Les résultats calculés par chaque unités centrales locales duant la phase (63) sont répertoriés Le ralentissement éventuel du cycle qui est occasionné par les échanges entre les unités de gestion d'accès au bus durant les phases (62) et (64), est récupéré par l'accélération du traitement durant les phases (61) et (63), où les unités centrales locales travaillent ensemble. A titre d'exemple non limitatif, le réseau selon l'invention peut effectuer toutes les fondons d'un automate programmable ou système équivalent en industrie ou domotique. REVENDICATIONS 1 ) Réseau informatique industriel ou domestique destiné à effectuer des opérations de contrble - commande et caractérisé par l'éclatement des parties matérielles et logicielles qui constituent une unité centrale de type (1) ou (30), ses interfaces d'entrées (3) ou (41), de sorties (2) ou (32), distantes ou non du procédé automatisé, en plusieurs unités locales (73) ou (79), disposées en réseau par le moyen d'un bus externe (71) et chacune située au plus prés du ou des actionneur(s) (78), et / ou, du ou des capteurs) (76) du procédé automatisé (77) dont elle a la gestion. 2") Réseau selon la revendication I caractérisé par le fait que les unités locales (73) et (79) éxécutent des programmes locaux synchronisés et cohérents entre eux vis à vis du procédé et dont I' action résultante est identique à l'action qu'aurait une unité centrale non éclatée. 3")Réseau selon In revendications1 et 2 caractérisé par le fait que l'activité des unités locales est synchronisée dans un cycle, altemant des périodes de communications (62) ou (64) sur le bus (71) et des périodes d'actions locales (61) et (63). 4) Réseau selon b revendicatiorb1 et 2 et 3 caractérisé par le fait que les phases de communications ont pour rôle de permettre à la partie logicielle dispersée sur les unités locales (73) ou (79), de rester le centre fonctionnel de l'ensemble du procédé (77), par la diffusion sur le bus externe des résultats des actions locales des unités locales et par la réception de ces résultats pour les unités locales qui ne diffusent pas. 5 ) Réseau selon bs revendicatiors 1 et 2 et 3 et 4 caractérisé par le fait que le temps qui synchronise les phases du cycle est provoqué par le fait qu'aucune unité locale (73) et (79) ne peut commencer chacune de ses phases d'actions locales (67) et (63) que si toutes les unités locales du réseau ont effectué la diffusion de leurs résultats durant la période de communication (62) ou (64) immédiatement précédente.