Brevet FR2781583A1 — publié le 20000128

L'invention concerne une architecture de communication d'informations plus particulièrement destinée à être implantée dans un système industriel de conduite de procédé pour permettre des transmissions en temps partagé d'informations numérisées entre des unités d'exploitation programmées du système. Elle concerne aussi une unité d'exploitation programmée et notamment une unité d'interface de procédé dénommée unité de terrain, pour système industriel de conduite de procédé comportant une telle architecture de communication. Comme il est connu, la gestion d'un système industriel de conduite de procédé implique la présence d'une architecture de communication pour assurer les transmissions d'informations entre les diverses unités d'exploitation programmées qui sont susceptibles d'intervenir dans la conduite du procédé de façon que les transmissions soient assurées d'une manière bien adaptée aux différents besoins rencontrés. Cette architecture est couramment composée d'un ou de plusieurs réseaux locaux, dits industriels, organisés autour d'une ou de plusieurs liaisons de type bus. Il est classique dans de tels systèmes d'assurer une exploitation partagée dans le temps, des liaisons utilisées pour la transmission des informations entre unités d'exploitation programmées. Il est courant dans le domaine de la conduite de procédé industriel d'avoir des contraintes très strictes de transmission pour certaines informations. Ceci implique la mise en oeuvre de réseaux locaux, dits déterministes, qui sont organisés pour permettre un respect absolu des contraintes temporelles de transmission des informations pour lesquelles cela est nécessaire. Il est alors connu de permettre aux informations dont la transmission n'est soumise qu'à des contraintes relativement souples en matière d'urgence d'exploiter les laps de temps plus ou moins régulièrement laissés disponibles par les informations prioritaires soumises à des contraintes plus sévères. Dans de nombreux cas d'exploitation, il est avantageux de pouvoir accéder, à volonté et sans qu'il y ait nécessairement urgence, à des informations contenues dans une mémoire d'une quelconque unité d'exploitation programmée d'un système, par exemple par l'intermédiaire d'une autre unité programmée ou d'un ordinateur, via l'architecture de communication du système et quelle que soit la localisation de cette autre unité ou de cet ordinateur par rapport au système. En particulier, lorsque le fonctionnement d'un système met en jeu des équipements très divers impliquant des intervenants différents et des interventions qui ne sont pas nécessairement planifiables, il est avantageux qu'un intervenant puisse accéder aisément aux informations dont il a besoin, au travers de l'architecture de communication du système et éventuellement depuis l'extérieur, à partir du moment o ces informations sont stockées d'une manière accessible par une unité d'exploitation programmée du système. Un tel accès doit préférablement être réalisable par des intervenants susceptibles d'être très différents. Un système connu prévoit donc d'utiliser une architecture de communication o est exploitée une technique d'accès aux informations plus particulièrement mise en oeuvre dans le cadre d'Internet. A cet effet, les informations qui sont disponibles dans les unités d'exploitation programmées et en particulier celles qui ont été collectées par l'intermédiaire de l'architecture de communication du système, sont insérées dans des pages HTML implantées dans une unité d'exploitation programmée du système qui est constituée par un ordinateur spécialisé o est implanté un serveur HTTP. Cet ordinateur est par exemple connecté à un réseau externe 0 exploitant les techniques Internet, voire à Internet lui-même. Des intervenants, disposant d'un ordinateur convenablement équipé et ici supposé connecté au réseau 0, ou d'une unité programmée du système fonctionnellement équivalente, peuvent alors prendre connaissance des informations contenues dans les pages HTML stockées au niveau de l'ordinateur spécialisé. Toutefois cette solution n'est pas pleinement satisfaisante en particulier en ce qui concerne l'actualité des informations stockées. Or celle-ci peut être cruciale dans un système dont au moins certains équipements et notamment certaines unités de terrain, sont exploités en temps réel et ne doivent pas être perturbés pendant la conduite du procédé. L'invention propose donc un architecture de communication en temps partagé d'informations numérisées, pour système industriel de conduite de procédé, organisée autour d'au moins un réseau local industriel supportant un trafic déterministe entre diverses unités d'exploitation programmées, notamment des unités de terrain situées à un niveau d'interface de procédé, qui traitent et stockent des informations auxquelles au moins une autre unité est susceptible d'accéder, via ladite architecture. Selon une caractéristique de l'invention, cette architecture comporte des unités d'exploitation programmées et notamment des unités de terrain incluant individuellement un serveur HTTP pour pouvoir répondre par l'envoi de documents informatiques éventuellement interactifs à des requêtes reçues d'une autre unité du système ou d'un ordinateur, notamment externe au système, équipé(e) d'une pile de protocoles HTTP/TCP/IP et agissant en client, dans le cadre d'un trafic de messagerie exploitant les possibilités de transmission laissées disponibles au niveau du réseau local industriel par le trafic déterministe. Selon une autre caractéristique de l'invention, l'architecture est constituée de manière que des unités soient organisées en grappe(s) autour d'au moins un réseau local industriel qui est propre à une grappe et qui relie les unités d'une grappe à une unité partagée servant éventuellement de passerelle ou de routeur vers un autre réseau local industriel desservant au moins une autre unité d'un niveau supérieur de l'architecture et notamment une unité de supervision et/ou éventuellement de passerelle ou de routage vers un réseau de communication externe, pour que le serveur HTTP d'une unité équipée d'un tel serveur réponde par un document informatique éventuellement interactif en cas de requête qui lui est adressée, via au moins l'un des réseaux, par une autre unité ou par un ordinateur, notamment externe au système, équipé(e) d'une pile de protocoles HTTP/TCP/IP, lorsque la requête concerne l'insertion ou l'extraction de paramètres et/ou de variables mémorisé(e)s au niveau de l'unité qui le comporte. Selon une autre caractéristique de l'invention, chaque réseau local propre à une grappe transmet des datagrammes IP, correspondant aux requêtes de client parvenant de ou par l'unité partagée vers les unités de la grappe ainsi qu'aux réponses fournies par ces dernières, dans des intervalles de temps laissés libres pour un trafic de messagerie par le trafic déterministe de données réalisé en temps réel au niveau de ce réseau de grappe L'invention propose aussi une unité d'exploitation programmée, pour système industriel de conduite doté d'une architecture de communication en temps partagé d'informations numérisées qui comporte au moins un réseau local industriel supportant un trafic déterministe auquel cette unité est raccordée pour pouvoir communiquer avec au moins une autre unité programmee. Selon une caractéristique de l'invention, cette unité comporte un serveur HTTP et donc une pile HTTP/TCP/IP pour répondre à la volée à des requêtes, notamment d'insertion ou d'extraction de paramètres et/ou variables mémorisé(e)s par cette unité et transmis par ce ou ces réseaux, dans le cadre d'un trafic de messagerie exploitant les possibilités de transmission laissés disponibles par le trafic déterministe. L'invention, ses caractéristiques et ses avantages sont précisés dans la description qui suit en liaison avec les figures évoquées ci-dessous. La figure 1 présente un schéma de principe d'une architecture de communication connue pour système industriel. La figure 2 présente un schéma de principe d'une architecture de communication selon l'invention. La figure 3 présente un schéma simplifié d'un exemple d'architecture de communication, selon l'invention, pour système industriel de conduite. L'architecture de communication, selon l'art antérieur qui est illustrée en figure 1 est prévue pour assurer des échanges d'information entre des unités d'exploitation programmées 1, 2, 3 d'un système industriel de conduite de procédé comportant une pluralité de dispositifs de contrôle/commande dont par exemple des dispositifs de terrain, tels que des capteurs 4 et des actionneurs 5. Ces dispositifs sont contrôlés par des unités d'exploitation programmées représentées ici par les unités 2 qui sont supposées fournir et/ou recevoir des informations relatives aux opérations, notamment de commande et de mesure, réalisées par les dispositifs qu'elles contrôlent. Ces unités d'exploitation, telles que les unités 2, communiquent en fonction des besoins d'une part avec les dispositifs qu'elles contrôlent et d'autre part avec d'autres unités de niveau supérieur, telles 1 et 3, qui sont notamment chargées de la supervision du système industriel de conduite. Les communications s'établissent par l'intermédiaire de moyens de communication 6 de l'architecture auxquels les diverses unités sont plus ou moins directement reliées. Comme développé plus loin, les moyens de communication 6 sont classiquement de type réseau local industriel. Des moyens de communication 6' permettent de relier les dispositifs de contrôle/commande du système aux unités d'exploitation qui les contrôlent, ces moyens de communication étant éventuellement eux aussi du type réseau local industriel. Comme déjà indiqué plus haut, il est prévu une exploitation partagée dans le temps des liaisons que comportent les moyens de communication 6 et 6' pour assurer les transmissions d'informations entre les unités d'exploitation programmées et entre celles-ci et les dispositifs de contrôle, en permettant aux informations dont la transmission n'est soumise qu'à des contraintes relativement souples en matière d'urgence d'exploiter les laps de temps plus ou moins régulièrement laissés disponibles par les informations soumises à des contraintes temporelles plus sévères. Pour permettre l'accès aux informations depuis l'extérieur du système, il est prévu un serveur 7 de type HTTP dans une unité de niveau supérieur, telle 1, qui stocke les informations qui lui sont fournies par les autres unités et par les dispositifs de terrain de manière à pouvoir les introduire dans des pages au format HTML auxquelles il est possible d'accéder à l'aide d'un ordinateur équipé pour permettre l'accès à de telles pages. Cet ordinateur non représenté ici est par exemple relié à l'unité 1 par un réseau 0 et par exemple par Internet. Un intervenant peut donc accéder ainsi à des informations, telles que des paramètres ou des variables propres au système, qui sont mémorisées au niveau de l'unité 1. Il peut éventuellement fournir des informations au système, par exemple des informations de mise à jour, notamment s'il dispose lui-même d'un ordinateur équipé pour pouvoir agir en tant que serveur HTTP. Comme déjà indiqué dans le préambule de la demande, cette solution n'est pas totalement satisfaisante dans la mesure o toutes les informations destinées à être accessibles de cette manière doivent être stockées et actualisées au niveau de l'unité 1 et o elles peuvent ne pas être exactes, notamment lorsqu'une information caractéristique d'un changement intervenu au niveau d'une autre unité ou d'un dispositif de terrain n'est pas encore parvenue à l'unité 1 et que la page HTML o elle doit apparaître est fournie à un intervenant demandeur avant actualisation. De plus, l'utilisation de l'unité 1 en tant qu'intermédiaire de stockage qu'il faut actualiser en permanence induit un trafic incessant d'informations, qu'il est avantageux d'éviter, dans les réseaux qui constituent l'ossature des moyens de communication 6 et 6'. L'invention propose donc de modifier l'architecture de communication d'un système industriel de conduite de la manière schématisée sur la figure 2. Cette architecture est destinée à assurer des échanges d'information entre des unités d'exploitation programmées d'un système industriel de conduite de procédé qui comporte une pluralité de dispositifs de contrôle/commande 4, 4', 5 contrôlés comme précédemment par des unités qui sont ici référencées 8 et qui différent des unités 2 au niveau de leurs moyens de communication avec les autres unités. Au moins certaines de ces unités et éventuellement certains dispositifs de contrôle/commande, tel 4', comportent en effet un serveur 9, de type HTTP. Dans la plupart des cas, ce serveur est relativement rudimentaire, dans la mesure ou notamment il n'a généralement pas besoin de comporter une base spécifique de données pour stocker les informations qu'il est susceptible de recevoir et de transmettre, en particulier lorsque ces données font déjà l'objet d'une mémorisation locale. Ces informations sont prises en compte par le serveur 9 de l'unité, qui les stocke, pour pouvoir être incorporées dans des documents informatiques éventuellement interactifs transmis et par exemple dans des pages HTML. Ce sont par exemple des informations correspondant à des modifications de paramètres ou des évolutions de variables plus ou moins complexes. Bien entendu d'autres unités d'exploitation programmées du système sont susceptibles d'être dotées d'un serveur 9, de type HTTP, plus ou moins élaboré suivant les besoins, comme symbolisé au niveau d'une unité 10 d'un niveau supérieur qui est ici représenté par les deux unités 10 et 11. Les serveurs 9 disposent d'adresses individuelles de type Internet qui permettent à un intervenant d'y accéder au moyen d'une unité du système convenablement programmée ou d'un ordinateur équipé logiciellement et matériellement de manière à pouvoir se comporter comme un client Internet. La mise en liaison de cette unité cliente ou de cet ordinateur agissant en client auprès d'un serveur d'une autre unité et notamment d'une unité de terrain s'effectue via l'ensemble de moyens de communication 6 que comporte l'architecture et éventuellement via Internet auquel cet ensemble est alors relié par une unité agissant comme une passerelle. A cette fin, les différentes unités d'exploitation programmées du système industriel de conduite de procédé qui comportent un serveur HTTP sont munies de coupleurs de communication supportant les services et protocoles HTTP/TCP/IP en plus des services et protocoles standards du ou des réseaux locaux utilisés. Elles sont donc capables d'émettre et de recevoir des datagrammes IP transportés par ce ou ces réseaux, sans perturber les échanges déterministes d'information liées à la conduite de procédé en temps réel. La figure 3 présente un exemple non limitatif d'un système industriel de conduite de procédé organisé à partir d'un système modulaire de contrôle-commande pour l'industrie; par exemple un système de type ALSPA 8000 de la demanderesse. Ce système comporte une pluralité d'unités d'exploitation programmées classiquement organisées chacune autour d'au moins un processeur, d'un ensemble de mémoires mortes et/ou vives et d'équipements auxiliaires, tels que notamment des coupleurs d'entrée/sortie. Un tel système intègre trois niveaux de fonctions opérationnelles correspondant successivement à un niveau de conduite et de supervision de procédé, un niveau intermédiaire d'automatisation du procédé et à un niveau d'entrée-sortie de procédé ou sont distribuées diverses unités. Les unités d'exploitation programmées du niveau supérieur de conduite et de supervision de procédé sont ici représentées par une plate-forme opérateur 12 de conduite et de supervision de procédé, une station principale 13 d'opérateur de supervision, un calculateur de procédé 14, une unité 15 servant de routeur ou de passerelle de liaison à un réseau informatique externe 0, par exemple un Intranet ou Internet. Les unités d'exploitation programmées du niveau intermédiaire d'automatisation du procédé sont ici représentées par des contrôleurs d'automatisme 17, 17', 17", ici supposés fonctionnellement différents, l'un étant par exemple supposé accueillir des applications d'automatisme séquentiel, un autre étant un contrôleur d'électronique de puissance programmé, etc. Ces unités sont elles aussi susceptibles d'être prévues pour pouvoir être exploitées en tant que passerelles assurant alors des conversions de protocoles ou de routeurs entre des réseaux locaux 19, 19' ou 19" et 20 que comporte l'architecture de communication. Les unités d'exploitation programmées de terrain situées au niveau d'interface avec le procédé peuvent être diverses. Elles sont ici représentées par des unités d'entrée/sortie 18 permettant une mise en communication de capteurs et/ou actionneurs classiques avec un contrôleur approprié du niveau d'automatisation de procédé, des capteurs et/ou actionneurs dits intelligents 18', des unités de régulation et de contrôle d'équipements électriques de conversion de puissance 18", des unités de commande de variateurs de vitesse 18"', des stations locales d'opérateur 18"", etc. Il doit bien entendu être compris que les unités évoquées ci-dessus ne sont signalées qu'à titre d'exemple et que les niveaux indiqués plus haut peuvent éventuellement être réduits en nombre par regroupement de fonctions d'un niveau avec des fonctions d'un autre dans des unités d'exploitation organisées de manière appropriée. Dans l'exemple envisagé, l'architecture de communication du système industriel de conduite de procédé est supposée composée de réseaux locaux industriels déterministes conçus pour supporter à la fois un trafic déterministe prioritaire, dit de transmission de variables, et un trafic événementiel, dit de messagerie. Cet architecture est par exemple réalisée à partir d'une implémentation du réseau standardisé WORLDFIP que constitue le réseau F8000 de la demanderesse. A travers ces réseaux locaux industriels, les unités d'exploitation du système sont reliées d'une part entre elles et éventuellement avec l'extérieur du système et d'autre part avec divers dispositifs notamment de contrôle/commande du système, non représentés, auxquels certaines sont physiquement reliées par des liaisons L. Celles-ci sont susceptibles d'être de types très divers tant dans leur nature que dans leur mode d'exploitation, elles ne seront pas développées ici dans la mesure o elles n'ont qu'un rapport indirect avec l'objet de l'invention. Dans l'exemple envisagé en relation avec la figure 3, il est prévu que les unités de terrain 18, 18', 18", 18"', 18"" soient organisées en grappe(s) autour d'au moins un réseau local de grappe, individuel, tel 19, 19' ou 19", généralement dit bus de terrain. Ce réseau de grappe est ici relié à une unité d'exploitation programmée de niveau intermédiaire, supposée constituée par exemple par un contrôleur 17, 17' ou 17". Chacune de ces unités intermédiaires sert ici de passerelle ou de routeur chargé(e) de mettre en liaison les unités de terrain de la grappe auxquelles elle est reliée par l'un des réseaux de grappe et les unités de niveau supérieur auxquelles elle est reliée via un réseau local industriel 20 de niveau supérieur, couramment dit bus de cellule ou bus de salle de commande. Les unités qui sont individuellement dotées de serveurs HTTP disposent d'adresses de type Internet et les coupleurs de communication, qu'elles comprennent, supportent les services et protocoles HTTP/TCP/IP en plus des services et protocoles standards des réseaux locaux industriels utilisés. Elles sont donc capables d'émettre et de recevoir des datagrammes IP qui sont par exemple encapsulés dans des messages transportés dans le cadre du trafic standard de messagerie, via les réseaux locaux tels que 19 et 20, sans perturber le trafic déterministe d'échange de variables réalisés par l'intermédiaire de ces réseaux. Ces datagrammes peuvent aussi être transmis dans le cadre d'un trafic se substituant ou s'ajoutant au trafic standard de messagerie, sans perturbation du trafic déterministe. Ceci permet donc à au moins une unité cliente de les adresser pour se faire communiquer les informations qu'elles stockent ou pour modifier certaines de ces informations, sans perturber le fonctionnement en temps réel du système de conduite. Un tel accès s'effectue de manière transparente au travers d'une des unités intermédiaires servant de passerelle pour les unités de terrain d'une même grappe. Comme déjà indiqué, un intervenant peut accéder à un serveur 9 d'une unité, par l'intermédiaire d'une unité d'exploitation cliente dûment programmée du système et plus particulièrement d'une unité d'exploitation de niveau supérieur, au travers des réseaux locaux 19, 20 et d'une des unités intermédiaires. Cet intervenant peut agir à partir d'une unité cliente constituée par exemple par la station principale d'opérateur 13, ou à partir d'un ordinateur dûment équipé du système ou qui communique par l'intermédiaire du réseau informatique externe 0. Un serveur recevant une requête d'une unité agissant en tant que cliente répond par un document informatique, éventuellement interactif L'unité cliente dispose nécessairement d'une pile de protocoles HTTP/TCP/IP pour pouvoir d'une part adresser sa requête et d'autre part prendre en compte les informations reçues sous forme d'un document informatique du serveur qu'elle a adressé, ces informations étant par exemple incluses dans une page HTML. Ceci permet en particulier des insertions ou des extractions de paramètres et/ou variables, via un serveur 9, lorsque ces informations sont mémorisées par l'unité de terrain qui le contient. Dans le système ici envisagé, le réseau local, tel 19, d'une grappe d'unités transmet des datagrammes IP, correspondant aux requêtes client/serveur parvenant de ou par l'unité partagée, telle 17, vers les serveurs des unités de la grappe ainsi qu'aux réponses de ces serveurs. Comme connu, l'usage du protocole HTTP permet de réduire le temps d'utilisation des ressources (processus et socket) à une valeur très faible, puisqu'il n'y a pas de session établie entre une unité cliente et un serveur et que la connexion TCP/IP est rompue, dès que cette unité cliente a reçu le document HTML qu'elle a demandé au serveur. L'utilisation de ces ressources par une unité cliente reste donc toujours de durée très limitée, ce qui est particulièrement intéressant en matière d'occupation des moyens de transmission que comporte une architecture de communication d'une installation industrielle. Bien entendu les pages HTML produites au niveau d'un serveur d'une unité de terrain sont susceptibles de contenir des liens hypertextes permettant à une unité cliente de passer d'un serveur à un autre d'une manière prédéterminée, si besoin est. REVENDICATIONS 1/ Architecture de communication en temps partagé d'informations numérisées, pour système industriel de conduite de procédé, organisée autour d'au moins un réseau local industriel (6) supportant un trafic déterministe entre diverses unités d'exploitation programmées (8, 10, 11), notamment des unités de terrain (8) situées à un niveau d'interface de procédé, qui traitent et stockent des informations auxquelles au moins une autre unité (10, 11) est susceptible d'accéder, via ladite architecture qui est caractérisée en ce qu'elle comporte des unités (8, 10) incluant individuellement un serveur (9), de type HTTP, pour pouvoir répondre par envoi de documents informatiques éventuellement interactifs à des requêtes reçues d'une autre unité (11) du système ou d'un ordinateur, notamment externe au système, équipé(e) d'une pile de protocoles HTTP/TCP/IP et agissant en client, dans le cadre d'un trafic de messagerie exploitant les possibilités de transmission laissées disponibles par le trafic déterministe du ou des réseau(x). 2/ Architecture, selon la revendication 1, pour système industriel de conduite de procédé, o des unités (18) sont organisées par grappe(s) autour d'au moins un réseau local industriel (19) qui est propre à une grappe et qui relie les unités d'une grappe à une unité partagée (17) servant éventuellement de passerelle ou de routeur vers un autre réseau local industriel (20) desservant au moins une autre unité (14, 15) d'un niveau supérieur de l'architecture, notamment une unité de supervision et/ou de passerelle vers un réseau de communication externe (0), pour que le serveur HTTP d'une unité ou d'un dispositif de contrôle/commande (4') du système équipée d'un tel serveur réponde par un document informatique éventuellement interactif en cas de requête qui lui est adressée, via au moins l'un des réseaux, par une autre unité ou par un ordinateur, notamment externe au système, équipé(e) d'une pile de protocoles HTTP/TCP/IP et agissant en client, lorsque la requête concerne l'insertion ou l'extraction de paramètres et/ou de variables mémorisé(e)s au niveau de l'unité qui le comporte. 3/ Architecture selon la revendication 2, dans laquelle chaque réseau local propre à une grappe transmet des datagrammes IP, correspondant aux requêtes de client parvenant de ou par l'unité partagée vers les unités de la grappe ainsi qu'aux réponses fournies par ces dernières, dans des intervalles de temps laissés libres pour un trafic de messagerie par le trafic déterministe de données réalisé en temps réel au niveau de ce réseau de grappe. 4/ Unité d'exploitation programmée pour système industriel de conduite de procédé doté d'une architecture de communication en temps partagé Il d'informations numérisées incluant au moins un réseau local industriel (19, 20) qui supporte un trafic déterministe et auquel cette unité est raccordée pour pouvoir communiquer avec au moins une autre unité programmée, caractérisée en ce qu'elle comporte un serveur (9), de type HTTP, et donc une pile HTTP/TCP/IP5 pour répondre à la volée à des requêtes, notamment d'insertion et/ou extraction de paramètres et/ou variables mémorisé(e)s par cette unité et transmis par ce ou ces réseaux, dans le cadre d'un trafic de messagerie exploitant les possibilités de transmission laissés disponibles par le trafic déterministe.