CA2357409C - Systeme de communication d'un equipement d'automatisme base sur le langage wsdl - Google Patents
Systeme de communication d'un equipement d'automatisme base sur le langage wsdl Download PDFInfo
- Publication number
- CA2357409C CA2357409C CA2357409A CA2357409A CA2357409C CA 2357409 C CA2357409 C CA 2357409C CA 2357409 A CA2357409 A CA 2357409A CA 2357409 A CA2357409 A CA 2357409A CA 2357409 C CA2357409 C CA 2357409C
- Authority
- CA
- Canada
- Prior art keywords
- service
- document
- automation equipment
- automation
- communication system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25093—During start, integration into machine, send module functionality to scheduler
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/31—From computer integrated manufacturing till monitoring
- G05B2219/31196—SOAP, describes available services and how to call them remotely
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/31—From computer integrated manufacturing till monitoring
- G05B2219/31422—Upload, download programs, parameters from, to station to, from server
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/32—Operator till task planning
- G05B2219/32126—Hyperlink, access to program modules and to hardware modules in www, web server, browser
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34038—Web, http, ftp, internet, intranet server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
Abstract
Système de communication sur un réseau IP (50) entre un équipement d'automatisme (10) capable d'exécuter un programme (20) pour fournir des fonctions d'automatisme et un ou plusieurs appareils distants (30,40) exécutant une ou plusieurs applications informatiques. Le système de communication est conforme au langage WSDL (Web Services Description Language) et fournit à un appareil distant des fonctions de surveillance, de visualisation, de contrôle, de configuration ou de programmation de l'équipement d'automatisme (10). Le système de communication utilise au moins un document de description de service (61), conforme au langage WSDL, accessible par une adresse URL et qui décrit les capacités d'un ou plusieurs services WEB (21,21') capables d'interagir avec un programme (20) de l'équipement d'automatisme (10).
Description
Système de communication d'un équipement d'automatisme basé
sur le langage WSDL
La présente invention concerne un système de communication et un procédé
de communication sur un réseau global de type Internet, Intranet ou Extranet, entre au moins un équipement d'automatisme offrant une ou plusieurs fonctions d'automatisme dans une application d'automatisme et au moins un appareil distant. Le système de communication utilise le langage WSDL (Web Services Description Language) grâce à
1o au moins un service WEB conforme au langage WSDL pouvant interagir avec un programme de l'équipement d'automatisme. Un tel système de communication peut s'appliquer à toute application d'automatisme appartenant notamment au domaine des automatismes industriels, des automatismes du bâtiment ou du contrôle/commande des réseaux électriques de distribution.
Sous le terme "équipement d'automatisme", on désignera ci-après un automate programmable, une commande numérique, une station de contrôle/commande mais aussi tout équipement ou module d'automatisme possédant au moins une unité de traitement, capable de se connecter sur un réseau IP
(Internet Protocol) tel que défini au paragraphe suivant, et capable d'exécuter un programme pour offrir une ou plusieurs fonctions d'automatisme dans une application d'automatisme. On inclura ainsi dans cette définition un module métier ou un module d'entrées/sorties d'un automate programmable, un terminal de dialogue, un variateur de vitesse, etc....
Il est connu qu'un tel équipement d'automatisme puisse intégrer un serveur WEB de façon à pouvoir échanger des données relatives à l'équipement d'automatisme avec un client WEB distant, tel qu'un navigateur, connecté à un réseau de communication global. Ce réseau global est de type Internet, Intranet ou Extranet, conforme à la norme TCP/IP ou à la norme UDP/IP, et sera appelé "réseau IP"
dans la suite de l'exposé. Ces fonctionnalités sont décrites notamment dans les documents WO9913418, US6061603 et US5805442. Les données relatives à l'équipement d'automatisme sont alors mises en forme et expédiées par le serveur WEB, par exemple sous forme de pages HTML ou XML (eXtended Markup Language). Il est également possible qu'un serveur WEB implanté dans un équipement d'automatisme puisse charger un programme, généralement appelé Applet, dans un appareil distant, lequel programme se déroule dans l'appareil distant de façon à échanger avec le
sur le langage WSDL
La présente invention concerne un système de communication et un procédé
de communication sur un réseau global de type Internet, Intranet ou Extranet, entre au moins un équipement d'automatisme offrant une ou plusieurs fonctions d'automatisme dans une application d'automatisme et au moins un appareil distant. Le système de communication utilise le langage WSDL (Web Services Description Language) grâce à
1o au moins un service WEB conforme au langage WSDL pouvant interagir avec un programme de l'équipement d'automatisme. Un tel système de communication peut s'appliquer à toute application d'automatisme appartenant notamment au domaine des automatismes industriels, des automatismes du bâtiment ou du contrôle/commande des réseaux électriques de distribution.
Sous le terme "équipement d'automatisme", on désignera ci-après un automate programmable, une commande numérique, une station de contrôle/commande mais aussi tout équipement ou module d'automatisme possédant au moins une unité de traitement, capable de se connecter sur un réseau IP
(Internet Protocol) tel que défini au paragraphe suivant, et capable d'exécuter un programme pour offrir une ou plusieurs fonctions d'automatisme dans une application d'automatisme. On inclura ainsi dans cette définition un module métier ou un module d'entrées/sorties d'un automate programmable, un terminal de dialogue, un variateur de vitesse, etc....
Il est connu qu'un tel équipement d'automatisme puisse intégrer un serveur WEB de façon à pouvoir échanger des données relatives à l'équipement d'automatisme avec un client WEB distant, tel qu'un navigateur, connecté à un réseau de communication global. Ce réseau global est de type Internet, Intranet ou Extranet, conforme à la norme TCP/IP ou à la norme UDP/IP, et sera appelé "réseau IP"
dans la suite de l'exposé. Ces fonctionnalités sont décrites notamment dans les documents WO9913418, US6061603 et US5805442. Les données relatives à l'équipement d'automatisme sont alors mises en forme et expédiées par le serveur WEB, par exemple sous forme de pages HTML ou XML (eXtended Markup Language). Il est également possible qu'un serveur WEB implanté dans un équipement d'automatisme puisse charger un programme, généralement appelé Applet, dans un appareil distant, lequel programme se déroule dans l'appareil distant de façon à échanger avec le
2 serveur WEB de l'équipement d'automatisme des requêtes transportées par le protocole IP.
Sous le terme "appareil distant", on désignera ci-après soit un ordinateur individuel, un téléphone portable, un appareil de type PDA (Persona) Digital Assistant), soit un serveur informatique, tel qu'un serveur d'applications ASP
(Applications Service Provider), un serveur d'applications (J2EE, NET, ...), un serveur WEB, un serveur WAP, un serveur de système de gestion de bases de données (SGBD), un serveur de progiciel de gestion intégré (PGI), un serveur ERP (Enterprise Resource Planning), un serveur EAI (Enterprise application integration), un serveur de gestion électronique de documents (GED), un serveur de commerce électronique interentreprises (B-to-B), une station de programmation d'un équipement d'automatisme ou tout autre système informatique. Par appareil distant, on peut aussi désigner un ensemble d'appareils distants communicant entre eux. Un appareil distant comporte au moins une unité de traitement, est capable de se connecter à au moins un équipement d'automatisme par un réseau IP et d'exécuter un programme ou un ensemble de programmes informatiques. Certains équipements d'automatisme, tels que des terminaux de dialogue, peuvent également être considérés comme des appareils distants.
Sous le terme "appareil intermédiaire", on désignera ci-après un appareil distant qui est connecté à un ou plusieurs appareils distants et à un ou plusieurs équipements d'automatisme. L'appareil intermédiaire a pour rôle d'être le mandataire (Proxy) de l'équipement d'automatisme. Il est par ailleurs capable de recevoir et d'émettre sur le réseau IP des requêtes encodées selon des protocoles spécifiques aux équipements d'automatisme et il peut interagir avec un programme d'un équipement d'automatisme. Certains appareils intermédiaires, tels que les modules de communications réseau ou les équipements de communications réseau, peuvent également être considérés comme des équipements d'automatisme.
Le langage WSDL (Web Services Description Language), est un langage permettant clé décrire des services WEB de façon simple dans un environnement distribué et décentralisé. Un service WEB est une application modulaire basée sur Internet, qui exécute des tâches précises et qui respecte un format spécifique. Le langage WSDL est basé sur le langage XML (eXtensible Markup Language) et peut être utilisé en combinaison avec plusieurs autres protocoles du WEB tels que SOAP
(Simple Object Access Protocol), HTTP (Hyper Text Transfer Protocol), HTTPS
Hyper Text Transfer Protocol / Secure Socket Layer), MIME (Multipurpose Internet Mail Extensions), SMTP (Simple Mail Transfer Protocol), FTP (File Transfer Protocol)
Sous le terme "appareil distant", on désignera ci-après soit un ordinateur individuel, un téléphone portable, un appareil de type PDA (Persona) Digital Assistant), soit un serveur informatique, tel qu'un serveur d'applications ASP
(Applications Service Provider), un serveur d'applications (J2EE, NET, ...), un serveur WEB, un serveur WAP, un serveur de système de gestion de bases de données (SGBD), un serveur de progiciel de gestion intégré (PGI), un serveur ERP (Enterprise Resource Planning), un serveur EAI (Enterprise application integration), un serveur de gestion électronique de documents (GED), un serveur de commerce électronique interentreprises (B-to-B), une station de programmation d'un équipement d'automatisme ou tout autre système informatique. Par appareil distant, on peut aussi désigner un ensemble d'appareils distants communicant entre eux. Un appareil distant comporte au moins une unité de traitement, est capable de se connecter à au moins un équipement d'automatisme par un réseau IP et d'exécuter un programme ou un ensemble de programmes informatiques. Certains équipements d'automatisme, tels que des terminaux de dialogue, peuvent également être considérés comme des appareils distants.
Sous le terme "appareil intermédiaire", on désignera ci-après un appareil distant qui est connecté à un ou plusieurs appareils distants et à un ou plusieurs équipements d'automatisme. L'appareil intermédiaire a pour rôle d'être le mandataire (Proxy) de l'équipement d'automatisme. Il est par ailleurs capable de recevoir et d'émettre sur le réseau IP des requêtes encodées selon des protocoles spécifiques aux équipements d'automatisme et il peut interagir avec un programme d'un équipement d'automatisme. Certains appareils intermédiaires, tels que les modules de communications réseau ou les équipements de communications réseau, peuvent également être considérés comme des équipements d'automatisme.
Le langage WSDL (Web Services Description Language), est un langage permettant clé décrire des services WEB de façon simple dans un environnement distribué et décentralisé. Un service WEB est une application modulaire basée sur Internet, qui exécute des tâches précises et qui respecte un format spécifique. Le langage WSDL est basé sur le langage XML (eXtensible Markup Language) et peut être utilisé en combinaison avec plusieurs autres protocoles du WEB tels que SOAP
(Simple Object Access Protocol), HTTP (Hyper Text Transfer Protocol), HTTPS
Hyper Text Transfer Protocol / Secure Socket Layer), MIME (Multipurpose Internet Mail Extensions), SMTP (Simple Mail Transfer Protocol), FTP (File Transfer Protocol)
3 ou avec le protocole IP (Internet Protocol). Le langage WSDL est basé sur des schémas XML et fournit un vocabulaire définissant une structure, un contenu et une syntaxe de description de communication. Ce langage est déposé au W3C (World Wide Web Consortium) et fait l'objet à l'heure actuelle d'une note WSDL 1.1 publiée le 15 mars 2001 et disponible à l'adresse : http://www.w3.org/TR/wsd1.
Le terme "liaison WSDL" (en anglais "binding") spécifie les informations concrètes relatives au protocole et au format de données pour une entité
abstraite, telle qu'un message ou une opération définis pour un "PortType" particulier.
Une liaison WSDL réfère au processus associant les informations relatives au protocole et au format de données à une entité abstraite. Un "PortType" est une série nommée d'opérations abstraites dans laquelle chaque opération réfère à un message d'entrée et à des messages de sortie, un message représentant une définition abstraite d'un type de données transmises (par exemple : string, boolean,...). Une liaison WSDL est conforme au langage WSDL. et est basée sur le langage XML.
Le langage WSDL autorise des éléments d'extension, représentant une liaison spécifique d'une technologie donnée. Ainsi, une liaison WSDL (binding) se définit comme une extension du langage WSDL pour des protocoles supportés et décrits dans le document de spécification WSDL, que sont SOAP, HTTP GET/POST
ou MIME. Elle accepte également d'autres extensions du langage WSDL pour des protocoles non spécifiques au langage WSDL en particulier pour des protocoles qui sont utilisés dans des équipements d'automatisme, tels que par exemple les protocoles PROFInet, EtherNet/IP, MODBUS/TCP, etc...
II serait particulièrement intéressant, pour le concepteur d'une application informatique dans un appareil distant utilisant des outils de développement de plus en plus répandus sur le marché ou pour un utilisateur d'une application informatique quelconque, comme par exemple un navigateur (browser), un servlet JAVA, une application JSP (Java Server Pages), une application ASP (Active Server Pages), etc... s'exécutant sur un serveur d'applications ou sur un serveur WEB, de pouvoir directement échanger des données sur un réseau IP avec un ou plusieurs équipements d'automatisme et ceci grâce au langage WSDL. En effet, en adaptant l'équipement d'automatisme à des langages de description de services WEB issus du monde informatique, un équipement d'automatisme pourrait ainsi communiquer, par
Le terme "liaison WSDL" (en anglais "binding") spécifie les informations concrètes relatives au protocole et au format de données pour une entité
abstraite, telle qu'un message ou une opération définis pour un "PortType" particulier.
Une liaison WSDL réfère au processus associant les informations relatives au protocole et au format de données à une entité abstraite. Un "PortType" est une série nommée d'opérations abstraites dans laquelle chaque opération réfère à un message d'entrée et à des messages de sortie, un message représentant une définition abstraite d'un type de données transmises (par exemple : string, boolean,...). Une liaison WSDL est conforme au langage WSDL. et est basée sur le langage XML.
Le langage WSDL autorise des éléments d'extension, représentant une liaison spécifique d'une technologie donnée. Ainsi, une liaison WSDL (binding) se définit comme une extension du langage WSDL pour des protocoles supportés et décrits dans le document de spécification WSDL, que sont SOAP, HTTP GET/POST
ou MIME. Elle accepte également d'autres extensions du langage WSDL pour des protocoles non spécifiques au langage WSDL en particulier pour des protocoles qui sont utilisés dans des équipements d'automatisme, tels que par exemple les protocoles PROFInet, EtherNet/IP, MODBUS/TCP, etc...
II serait particulièrement intéressant, pour le concepteur d'une application informatique dans un appareil distant utilisant des outils de développement de plus en plus répandus sur le marché ou pour un utilisateur d'une application informatique quelconque, comme par exemple un navigateur (browser), un servlet JAVA, une application JSP (Java Server Pages), une application ASP (Active Server Pages), etc... s'exécutant sur un serveur d'applications ou sur un serveur WEB, de pouvoir directement échanger des données sur un réseau IP avec un ou plusieurs équipements d'automatisme et ceci grâce au langage WSDL. En effet, en adaptant l'équipement d'automatisme à des langages de description de services WEB issus du monde informatique, un équipement d'automatisme pourrait ainsi communiquer, par
4 l'intermédiaire de services WEB, avec une application informatique distante développée séparément avec des outils de développement du monde informatique, ouvrant ainsi largement les domaines des automatismes au domaine de l'Internet. Le langage WSDL facilite la distribution des applications sous la forme de services WEB
notamment puisque le langage WSDL offre une syntaxe XML permettant de donner un format de description des services WEB.
Le langage WSDL constitue une des briques pour la conception d'applications WEB, indépendamment de la plate-forme, du modèle objet et du langage de programmation utilisés. Cet élément est essentiel pour obtenir l'instauration d'un dialogue direct entre applications. Grâce au langage WSDL, l'accès à un équipement d'automatisme à l'aide de services WEB sous la forme d'une interface programmable conforme au langage WSDL présente un avantage majeur : le concepteur de toute application informatique peut ainsi utiliser ces services WEB pour échanger des informations avec un équipement d'automatisme sans se préoccuper de concevoir une interface utilisateur spécifique. De plus, grâce à un document de description de service, il est en mesure de connaître à tout moment les services WEB qu'un équipement d'automatisme donné est capable d'offrir.
Ainsi, le langage WSDL peut être vu comme le complément du protocole SOAP car il facilite l'interopérabilité des services WEB. L'accès à un équipement d'automatisme devient standard avec le protocole SOAP comme langage de structuration de messages et avec le langage WSDL pour décrire les services WEB.
Grâce au langage WSDL, les applications qui utilisent le protocole SOAP sont capables d'automatiser les échanges entre services WEB, tout en masquant la plupart des détails techniques de bas niveau. D'autre part, le langage WSDL peut être vu également comme le complément d'UDDI (Universal Description, Discovery and Integration), l'annuaire universel qui stocke les références de documents décrivant les capacités de services WEB.
Pour cela, l'invention selon un premier mode de réalisation, décrit un système de communication sur un réseau IP entre un équipement d'automatisme comportant au moins une unité de traitement capable d'exécuter au moins un programme pour fournir des fonctions d'automatisme et un ou plusieurs appareils distants exécutant une ou plusieurs applications informatiques, caractérisé
par le fait que:
= le système de communication est conforme au langage WSDL (Web Services Description Language) dans le but de fournir à un appareil distant des fonctions de surveillance, de visualisation, de contrôle, de configuration ou de programmation de l'équipement d'automatisme, = le système de communication utilise au moins un document de description de service, conforme au langage WSDL, décrivant les capacités d'un ou plusieurs services WEB capables d'interagir avec un programme de l'équipement d'automatisme et implantés dans l'équipement d'automatisme, = chaque document de description de service est accessible, pour un appareil distant, par une adresse URL, URI ou IP, à travers une interface réseau IP, = une application informatique, exécutée dans un appareil distant, est capable de communiquer avec un service WEB au moyen de messages encodés selon un protocole de communication conforme à au moins une liaison WSDL
(binding) décrite dans le document de description de service, = l'application informatique utilise un interpréteur de documents WSDL pour générer un comportement correspondant au document de description de service, ou une application de développement utilise un générateur de codes pour générer du code de l'application informatique correspondant au document de description de service.
Selon une particularité, au moins une liaison WSDL (binding) décrite dans un document de description de service est conforme à un des protocoles SOAP, HTTP
ou MIME. Selon une autre particularité, au moins une liaison WSDL décrite dans un document de description de service est conforme à un protocole spécifique aux équipements d'automatisme.
Selon une autre caractéristique, le système de communication comporte un générateur de document de description de service capable, à la suite d'une demande émanant d'un appareil distant, de construire dynamiquement un document de description de service relatif à un équipement d'automatisme et accessible, pour un appareil distant, par une adresse URL, URI ou IP, à travers une interface réseau P.
L'invention concerne également un procédé de communication mis en oeuvre dans un système de communication sur un réseau IP entre un équipement d'automatisme comportant au moins une unité de traitement capable d'exécuter au moins un programme pour fournir des fonctions d'automatisme et un ou plusieurs appareils distants exécutant une ou plusieurs applications informatiques, caractérisé par le fait que le procédé comporte les étapes suivantes:
= une première étape de découverte de service WEB, dans laquelle une application informatique ou une application de développement, s'exécutant dans un appareil distant, émet sur le réseau IP une requête pour recevoir, dans une réponse, un ou plusieurs documents de description de service conformes au langage WSDL et décrivant les capacités d'un ou plusieurs services WEB
capables d'interagir avec un programme de l'équipement d'automatisme, = une deuxième étape de génération dans laquelle:
- soit l'application informatique utilise un interpréteur de documents WSDL pour générer un comportement correspondant au document de description de service, - soit l'application de développement utilise un générateur de codes pour générer du code de l'application informatique correspondant au document de description de service, de manière à ce que l'application informatique d'un appareil distant 6a communique avec un service WEB au moyen de messages conformes au protocole de communication décrit dans le document de description de service, = Une troisième étape de communication sur le réseau IP entre l'application informatique d'un appareil distant, et au moins un service WEB implanté dans l'équipement d'automatisme, au moyen de messages encodés selon un protocole de communication conforme à au moins une liaison WSDL (binding) décrite dans le document de description de service, dans le but de fournir à l'appareil distant des fonctions de surveillance, de visualisation, de contrôle, de configuration ou de programmation de l'équipement d'automatisme.
En référence à la figure 1, un équipement d'automatisme 10 est connecté par un réseau IP 50 à un premier appareil distant 30. L'équipement d'automatisme comporte au moins une unité de traitement (non représentée) capable d'exécuter au moins un programme 20 permettant d'offrir une ou plusieurs fonctions d'automatisme à
une application d'automatisme. Ce programme 20 peut être par exemple un programme application (ou programme utilisateur) permettant de faire le contrôle/commande d'une application d'automatisme ou peut être aussi directement le système d'exploitation embarqué dans l'équipement d'automatisme 10.
L'équipement d'automatisme 10 comporte au moins un service WEB 21 capable d'interagir avec ledit programme 20. Pour communiquer sur le réseau IP 50, l'équipement d'automatisme 10 comporte une interface réseau IP 15 de type HTTP, HTTPS, SMTP, FTP, TCP, UDP ou IP.
Un service WEB est une ressource accessible sur un réseau IP à travers une interface réseau IP 15,15',15". Selon l'invention, un service WEB est capable de recevoir et d'émettre sur le réseau IP 50 des messages 53 encodés selon un des protocoles de communication conformes à une liaison WSDL (binding) décrite dans un document de description de service 61. Un service WEB est capable d'interagir avec un programme 20 d'un équipement d'automatisme 10. Cette ressource est décrite de façon formelle par une interface logicielle contenue dans un document de description de service 61. Une implémentation d'une telle interface logicielle est aussi appelée "service WEB" dans le présent exposé.
Le système de communication décrit dans la présente invention s'appuie sur un document de description de service 61 qui décrit les capacités d'un ou plusieurs services WEB 21,21' d'un équipement d'automatisme 10, c'est-à-dire qui décrit les services WEB qu'un équipement d'automatisme 10 est en mesure de fournir ou de proposer. Le document de description de service 61 est accessible par un appareil distant 30,40, soit à partir de ses ressources locales, soit à partir de ressources distantes identifiées par une adresse URL (Uniform Resource Locator), URI
(Universel Resource Identifier) ou IP (Internet Protocol), à travers une interface réseau IP
15,15',15". Ainsi, grâce à un tel document 61, un appareil distant 30,40 quelconque est en mesure de savoir en permanence quels sont les services disponibles relatifs à un équipement d'automatisme 10. Un document de description de service 61 peut aussi contenir la description de plusieurs services WEB 21,21' standards, correspondant par exemple à des services implantés systématiquement dans toute une gamme bien identifiée d'équipements d'automatisme. De même, il peut aussi décrire un service WEB 21,21' particulier disponible sur toute une liste d'équipements d'automatisme distincts.
Un document de description de service 61 est un document qui est conforme au langage WSDL et qui décrit les capacités d'un service WEB. Selon une caractéristique de l'invention, le document de description de service 61 décrit au moins une liaison VVSDL (binding) qui est conforme à un des protocoles supportés par le langage WSDL, tels que SOAP, HTTP ou MIME. Selon une autre caractéristique, le document de description de service 61 décrit au moins une liaison WSDL
(binding) qui est conforme à un des protocoles spécifiques aux équipements d'automatisme, tels que notamment PROFInet, EtherNet/IP ou MODBUS/TCP.
Un document de description de service 61 spécifie pour chaque service un ensemble de requêtes (nom de la requête, nature et nom des paramètres, attributs de la requête) ainsi que le (ou les) protocole(s) devant être utilisé(s) pour invoquer la requête auprès de l'équipement d'automatisme 10. Le cas échéant, ce ou ces protocoles peuvent être sous-entendus. Le document de description de service 61 est conforme à 'un langage de description de service faisant référence au protocole SOAP
ou au protocole HTTP, HTTPS et fournissant une grammaire s'appuyant sur le langage XML ou XML schémas définis par le W3C.
Un service WEB 21 pourrait aussi être décrit par plusieurs documents de description de service 61 conformes chacun à un langage de description de service différent, de façon à ce qu'un même équipement d'automatisme 10 puisse être accessible à différentes applications informatiques. Par ailleurs, un document de description de service 61 peut se présenter sous forme compressée dans un format de compression standard de fichiers ou de documents, tel que ZIP ou GZIP.
En référence à la figure 1, le premier appareil distant 30 comporte une unité
de traitement (non représentée) capable d'exécuter au moins une application informatique 31 quelconque, comme par exemple un navigateur (browser), un servlet JAVA, une application JSP, une application ASP, etc... . Tout ou partie de cette application informatique 31 est générée et déployée 52 au moyen d'une application de développement 41, par exemple de type outil de développement, qui est exécutée par une unité de traitement dans un second appareil distant 40.
Pour cela, l'application de développement 41 comporte un générateur de code 43. Ce générateur de code 43 lit le document WSDL et génère automatiquement des interfaces et du code dans le langage de programmation utilisé qui correspondent aux opérations définies dans le document WSDL. Le générateur de code 43 utilise au moins une liaison WSDL (binding) conforme à au moins un des protocoles supportés par le langage WSDL, tels que SOAP, HTTP ou MIME. Dans l'exemple de la figure 1, l'application de développement 41 utilise, pour générer tout ou partie de l'application informatique 31, un document de description de service 61 qui est localisé
dans l'équipement d'automatisme 10.
La figure 2 schématise une variante de la figure 1 dans laquelle est introduit un appareil intermédiaire 70 connecté à la fois aux appareils distants 30,40 et à
l'équipement d'automatismEe 10 au moyen d'une interface réseau 15'. L'appareil intermédiaire 70, qui peut être un serveur informatique, mémorise au moins un document de description de service 61 et un service WEB 21' relatif à
l'équipement d'automatisme 10 et se comporte comme un mandataire (Proxy) qui est un représentant de l'équipement d'automatisme 10. Grâce à un tel mandataire, un appareil distant semble être connecté avec le véritable équipement d'automatisme 10 alors que ce n'est qu'avec le représentant de l'équipement d'automatisme 10.
Le service WEB 21' de l'appareil intermédiaire 70 est capable de recevoir et d'émettre sur le réseau IP 50 des requêtes 54 encodées selon un ou plusieurs protocoles spécifiques aux équipements d'automatisme, tels que par exemple les protocoles PROFinet, EtherNet/IP, MODBUS/TCP,... de façon à interagir avec au moins un programme 20 d'un équipement d'automatisme 10. Selon une variante de l'invention, le service WEB 21' de l'appareil intermédiaire 70 est aussi capable de recevoir et d'émettre, sans passer par un réseau IP, des requêtes 54' encodées selon d'autres protocoles spécifiques aux équipements d'automatisme, tels que par exemple les protocoles MODBUS, Uni-TE, AS-i,... de façon à interagir avec au moins un programme 20' d'un équipement d'automatisme 10'.
La figure 3 montre une autre variante du procédé de communication de la figure 1 dans lequel l'équipement d'automatisme 10 implante un service WEB 21 mais pas de document de description de service 61. Le(s) document(s) de description de service 61 est(sont) mémorisé(s) dans des moyens de stockage 60" d'un serveur 80.
Ce serveur 80, tel qu'un serveur de fichiers ou autre, est capable, grâce à
une interface réseau 15", de communiquer sur le réseau IP 50 avec des appareils distants 30,40 pour leur fournir un document de description de service 61.
Ainsi, un des avantages de la présente invention réside aussi dans le fait
notamment puisque le langage WSDL offre une syntaxe XML permettant de donner un format de description des services WEB.
Le langage WSDL constitue une des briques pour la conception d'applications WEB, indépendamment de la plate-forme, du modèle objet et du langage de programmation utilisés. Cet élément est essentiel pour obtenir l'instauration d'un dialogue direct entre applications. Grâce au langage WSDL, l'accès à un équipement d'automatisme à l'aide de services WEB sous la forme d'une interface programmable conforme au langage WSDL présente un avantage majeur : le concepteur de toute application informatique peut ainsi utiliser ces services WEB pour échanger des informations avec un équipement d'automatisme sans se préoccuper de concevoir une interface utilisateur spécifique. De plus, grâce à un document de description de service, il est en mesure de connaître à tout moment les services WEB qu'un équipement d'automatisme donné est capable d'offrir.
Ainsi, le langage WSDL peut être vu comme le complément du protocole SOAP car il facilite l'interopérabilité des services WEB. L'accès à un équipement d'automatisme devient standard avec le protocole SOAP comme langage de structuration de messages et avec le langage WSDL pour décrire les services WEB.
Grâce au langage WSDL, les applications qui utilisent le protocole SOAP sont capables d'automatiser les échanges entre services WEB, tout en masquant la plupart des détails techniques de bas niveau. D'autre part, le langage WSDL peut être vu également comme le complément d'UDDI (Universal Description, Discovery and Integration), l'annuaire universel qui stocke les références de documents décrivant les capacités de services WEB.
Pour cela, l'invention selon un premier mode de réalisation, décrit un système de communication sur un réseau IP entre un équipement d'automatisme comportant au moins une unité de traitement capable d'exécuter au moins un programme pour fournir des fonctions d'automatisme et un ou plusieurs appareils distants exécutant une ou plusieurs applications informatiques, caractérisé
par le fait que:
= le système de communication est conforme au langage WSDL (Web Services Description Language) dans le but de fournir à un appareil distant des fonctions de surveillance, de visualisation, de contrôle, de configuration ou de programmation de l'équipement d'automatisme, = le système de communication utilise au moins un document de description de service, conforme au langage WSDL, décrivant les capacités d'un ou plusieurs services WEB capables d'interagir avec un programme de l'équipement d'automatisme et implantés dans l'équipement d'automatisme, = chaque document de description de service est accessible, pour un appareil distant, par une adresse URL, URI ou IP, à travers une interface réseau IP, = une application informatique, exécutée dans un appareil distant, est capable de communiquer avec un service WEB au moyen de messages encodés selon un protocole de communication conforme à au moins une liaison WSDL
(binding) décrite dans le document de description de service, = l'application informatique utilise un interpréteur de documents WSDL pour générer un comportement correspondant au document de description de service, ou une application de développement utilise un générateur de codes pour générer du code de l'application informatique correspondant au document de description de service.
Selon une particularité, au moins une liaison WSDL (binding) décrite dans un document de description de service est conforme à un des protocoles SOAP, HTTP
ou MIME. Selon une autre particularité, au moins une liaison WSDL décrite dans un document de description de service est conforme à un protocole spécifique aux équipements d'automatisme.
Selon une autre caractéristique, le système de communication comporte un générateur de document de description de service capable, à la suite d'une demande émanant d'un appareil distant, de construire dynamiquement un document de description de service relatif à un équipement d'automatisme et accessible, pour un appareil distant, par une adresse URL, URI ou IP, à travers une interface réseau P.
L'invention concerne également un procédé de communication mis en oeuvre dans un système de communication sur un réseau IP entre un équipement d'automatisme comportant au moins une unité de traitement capable d'exécuter au moins un programme pour fournir des fonctions d'automatisme et un ou plusieurs appareils distants exécutant une ou plusieurs applications informatiques, caractérisé par le fait que le procédé comporte les étapes suivantes:
= une première étape de découverte de service WEB, dans laquelle une application informatique ou une application de développement, s'exécutant dans un appareil distant, émet sur le réseau IP une requête pour recevoir, dans une réponse, un ou plusieurs documents de description de service conformes au langage WSDL et décrivant les capacités d'un ou plusieurs services WEB
capables d'interagir avec un programme de l'équipement d'automatisme, = une deuxième étape de génération dans laquelle:
- soit l'application informatique utilise un interpréteur de documents WSDL pour générer un comportement correspondant au document de description de service, - soit l'application de développement utilise un générateur de codes pour générer du code de l'application informatique correspondant au document de description de service, de manière à ce que l'application informatique d'un appareil distant 6a communique avec un service WEB au moyen de messages conformes au protocole de communication décrit dans le document de description de service, = Une troisième étape de communication sur le réseau IP entre l'application informatique d'un appareil distant, et au moins un service WEB implanté dans l'équipement d'automatisme, au moyen de messages encodés selon un protocole de communication conforme à au moins une liaison WSDL (binding) décrite dans le document de description de service, dans le but de fournir à l'appareil distant des fonctions de surveillance, de visualisation, de contrôle, de configuration ou de programmation de l'équipement d'automatisme.
En référence à la figure 1, un équipement d'automatisme 10 est connecté par un réseau IP 50 à un premier appareil distant 30. L'équipement d'automatisme comporte au moins une unité de traitement (non représentée) capable d'exécuter au moins un programme 20 permettant d'offrir une ou plusieurs fonctions d'automatisme à
une application d'automatisme. Ce programme 20 peut être par exemple un programme application (ou programme utilisateur) permettant de faire le contrôle/commande d'une application d'automatisme ou peut être aussi directement le système d'exploitation embarqué dans l'équipement d'automatisme 10.
L'équipement d'automatisme 10 comporte au moins un service WEB 21 capable d'interagir avec ledit programme 20. Pour communiquer sur le réseau IP 50, l'équipement d'automatisme 10 comporte une interface réseau IP 15 de type HTTP, HTTPS, SMTP, FTP, TCP, UDP ou IP.
Un service WEB est une ressource accessible sur un réseau IP à travers une interface réseau IP 15,15',15". Selon l'invention, un service WEB est capable de recevoir et d'émettre sur le réseau IP 50 des messages 53 encodés selon un des protocoles de communication conformes à une liaison WSDL (binding) décrite dans un document de description de service 61. Un service WEB est capable d'interagir avec un programme 20 d'un équipement d'automatisme 10. Cette ressource est décrite de façon formelle par une interface logicielle contenue dans un document de description de service 61. Une implémentation d'une telle interface logicielle est aussi appelée "service WEB" dans le présent exposé.
Le système de communication décrit dans la présente invention s'appuie sur un document de description de service 61 qui décrit les capacités d'un ou plusieurs services WEB 21,21' d'un équipement d'automatisme 10, c'est-à-dire qui décrit les services WEB qu'un équipement d'automatisme 10 est en mesure de fournir ou de proposer. Le document de description de service 61 est accessible par un appareil distant 30,40, soit à partir de ses ressources locales, soit à partir de ressources distantes identifiées par une adresse URL (Uniform Resource Locator), URI
(Universel Resource Identifier) ou IP (Internet Protocol), à travers une interface réseau IP
15,15',15". Ainsi, grâce à un tel document 61, un appareil distant 30,40 quelconque est en mesure de savoir en permanence quels sont les services disponibles relatifs à un équipement d'automatisme 10. Un document de description de service 61 peut aussi contenir la description de plusieurs services WEB 21,21' standards, correspondant par exemple à des services implantés systématiquement dans toute une gamme bien identifiée d'équipements d'automatisme. De même, il peut aussi décrire un service WEB 21,21' particulier disponible sur toute une liste d'équipements d'automatisme distincts.
Un document de description de service 61 est un document qui est conforme au langage WSDL et qui décrit les capacités d'un service WEB. Selon une caractéristique de l'invention, le document de description de service 61 décrit au moins une liaison VVSDL (binding) qui est conforme à un des protocoles supportés par le langage WSDL, tels que SOAP, HTTP ou MIME. Selon une autre caractéristique, le document de description de service 61 décrit au moins une liaison WSDL
(binding) qui est conforme à un des protocoles spécifiques aux équipements d'automatisme, tels que notamment PROFInet, EtherNet/IP ou MODBUS/TCP.
Un document de description de service 61 spécifie pour chaque service un ensemble de requêtes (nom de la requête, nature et nom des paramètres, attributs de la requête) ainsi que le (ou les) protocole(s) devant être utilisé(s) pour invoquer la requête auprès de l'équipement d'automatisme 10. Le cas échéant, ce ou ces protocoles peuvent être sous-entendus. Le document de description de service 61 est conforme à 'un langage de description de service faisant référence au protocole SOAP
ou au protocole HTTP, HTTPS et fournissant une grammaire s'appuyant sur le langage XML ou XML schémas définis par le W3C.
Un service WEB 21 pourrait aussi être décrit par plusieurs documents de description de service 61 conformes chacun à un langage de description de service différent, de façon à ce qu'un même équipement d'automatisme 10 puisse être accessible à différentes applications informatiques. Par ailleurs, un document de description de service 61 peut se présenter sous forme compressée dans un format de compression standard de fichiers ou de documents, tel que ZIP ou GZIP.
En référence à la figure 1, le premier appareil distant 30 comporte une unité
de traitement (non représentée) capable d'exécuter au moins une application informatique 31 quelconque, comme par exemple un navigateur (browser), un servlet JAVA, une application JSP, une application ASP, etc... . Tout ou partie de cette application informatique 31 est générée et déployée 52 au moyen d'une application de développement 41, par exemple de type outil de développement, qui est exécutée par une unité de traitement dans un second appareil distant 40.
Pour cela, l'application de développement 41 comporte un générateur de code 43. Ce générateur de code 43 lit le document WSDL et génère automatiquement des interfaces et du code dans le langage de programmation utilisé qui correspondent aux opérations définies dans le document WSDL. Le générateur de code 43 utilise au moins une liaison WSDL (binding) conforme à au moins un des protocoles supportés par le langage WSDL, tels que SOAP, HTTP ou MIME. Dans l'exemple de la figure 1, l'application de développement 41 utilise, pour générer tout ou partie de l'application informatique 31, un document de description de service 61 qui est localisé
dans l'équipement d'automatisme 10.
La figure 2 schématise une variante de la figure 1 dans laquelle est introduit un appareil intermédiaire 70 connecté à la fois aux appareils distants 30,40 et à
l'équipement d'automatismEe 10 au moyen d'une interface réseau 15'. L'appareil intermédiaire 70, qui peut être un serveur informatique, mémorise au moins un document de description de service 61 et un service WEB 21' relatif à
l'équipement d'automatisme 10 et se comporte comme un mandataire (Proxy) qui est un représentant de l'équipement d'automatisme 10. Grâce à un tel mandataire, un appareil distant semble être connecté avec le véritable équipement d'automatisme 10 alors que ce n'est qu'avec le représentant de l'équipement d'automatisme 10.
Le service WEB 21' de l'appareil intermédiaire 70 est capable de recevoir et d'émettre sur le réseau IP 50 des requêtes 54 encodées selon un ou plusieurs protocoles spécifiques aux équipements d'automatisme, tels que par exemple les protocoles PROFinet, EtherNet/IP, MODBUS/TCP,... de façon à interagir avec au moins un programme 20 d'un équipement d'automatisme 10. Selon une variante de l'invention, le service WEB 21' de l'appareil intermédiaire 70 est aussi capable de recevoir et d'émettre, sans passer par un réseau IP, des requêtes 54' encodées selon d'autres protocoles spécifiques aux équipements d'automatisme, tels que par exemple les protocoles MODBUS, Uni-TE, AS-i,... de façon à interagir avec au moins un programme 20' d'un équipement d'automatisme 10'.
La figure 3 montre une autre variante du procédé de communication de la figure 1 dans lequel l'équipement d'automatisme 10 implante un service WEB 21 mais pas de document de description de service 61. Le(s) document(s) de description de service 61 est(sont) mémorisé(s) dans des moyens de stockage 60" d'un serveur 80.
Ce serveur 80, tel qu'un serveur de fichiers ou autre, est capable, grâce à
une interface réseau 15", de communiquer sur le réseau IP 50 avec des appareils distants 30,40 pour leur fournir un document de description de service 61.
Ainsi, un des avantages de la présente invention réside aussi dans le fait
5 qu'un document de description de service 61 décrivant les services WEB d'un équipement d'automatisme 10 peut être construit de différentes manières. Il peut être mémorisé soit dans des moyens de stockage 60 situés dans l'équipement d'automatisme 10 (fig. 1), soit dans des moyens de stockage 60' d'un appareil intermédiaire 70 connecté à la fois à l'équipement d'automatisme 10 et à
l'appareil 10 distant 30,40 (fig. 2), soit dans des moyens de stockage locaux (disque dur, CD-ROM, DVD, ou autres) d'un appareil distant 40 communiquant avec l'équipement d'automatisme 10, soit des moyens de stockage distants 60" dans un serveur 80 accessible depuis l'appareil distant 40 (fig. 3) par une adresse URL,URI ou IP
via le réseau IP 50.
Ces variantes sont intéressantes à cause de la taille limitée de la mémoire disponible dans la plupart des équipements d'automatisme 10. En effet, un équipement d'automatisme 10 n'ayant pas forcément une mémoire suffisante pour stocker en interne un ou plusieurs documents de description de service 61, il est intéressant de pouvoir stocker ce ou ces documents dans un appareil intermédiaire ou dans un serveur externe. C'est également avantageux lorsque, sur un même site, plusieurs équipements d'automatisme possèdent des services WEB similaires qui peuvent être décrit par un même document de description de service stocké dans un endroit unique. Par ailleurs, ce ou ces documents de description de service 61 sont parfois disponibles pour des utilisateurs sur des supports de type CD-ROM ou autre.
De plus, la figure 3 montre également l'utilisation, à la place du générateur de code 43, d'un générateur (le code 44 spécifique aux équipements d'automatisme, étendant ainsi les capacités de l'application de développement 41 pour des protocoles qui sont spécifiques aux équipements d'automatisme. Le générateur de code 44 spécifique aux équipements d'automatisme peut être installé sous forme de module complémentaire ou "plug-in". Il lit le document WSDL et génère automatiquement des interfaces et du code dans le langage de programmation utilisé qui correspondent aux opérations définies dans le document WSDL. Le générateur 44 utilise au moins une liaison WSDL (binding) conforme avec à au moins un protocole spécifique aux équipements d'automatisme.
Par ailleurs, on pourrait envisager qu'au moins une liaison WSDL (binding) décrite dans un document de description de service 61 soit conforme à au moins une version encodée du protocole SOAP selon un format binaire. Dans une telle version encodée du protocole SOAP, un certain nombre de codes binaires prédéterminés remplaceraient systématique ment des expressions de textes plus longues qui existent dans le protocole SOAP, notamment pour des expressions de texte souvent employées. Cette version encodée présenterait alors l'avantage d'utiliser moins de caractères pour décrire un service WEB et donc d'être plus économe en taille mémoire, ce qui est un argument important pour un équipement d'automatisme disposant d'espace mémoire limité.
Dans la figure 4, un second exemple montre un système de communication entre un équipement d'automatisme 10 comprenant un service WEB 21, et un appareil distant 30 comprenant une application informatique 31, et qui utilise le document de description de service 61 localisé dans l'équipement d'automatisme 10.
Contrairement à l'exemple de la figure 1, l'application informatique 31 comporte un interpréteur de document WSDL 33. Cet interpréteur de document WSDL 33 lit le document WSDL
grâce à une requête de lecture 51 et génère automatiquement dans l'application informatique 31 un comportement, tel qu'une interface homme machine (IHM), qui correspond aux opérations définies dans le document WSDL. L'interpréteur 33 utilise au moins une liaison WSDL (binding) conforme avec à au moins un des protocoles supportés par le langage WSDL, tels que SOAP, HTTP ou MIME.
De façon équivalente, l'application informatique 31 peut aussi comporter un interpréteur de document WSDL 34 spécifique aux équipements d'automatisme, installé sous forme de module complémentaire ou "plug-in" de façon à étendre les capacités de l'application informatique 31. Cet interpréteur de document WSDL
34 est capable de lire le document WSDL grâce à une requête de lecture 51 et de générer automatiquement dans l'application informatique 31 un comportement, tel qu'une interface homme machine (IHM), qui correspond aux opérations définies dans le document WSDL. L'interpréteur de document WSDL spécifique aux équipements d'automatisme 34 utilise au moins une liaison WSDL (binding) conforme avec à
au moins un protocole spécifique aux équipements d'automatisme.
La figure 5 reprend la variante de la figure 2 adaptée à l'exemple de la figure 4. Un appareil intermédiaire 70, connecté à la fois aux appareils distants 30,40 et à
l'équipement d'automatisme 10 au moyen d'une interface réseau 15', mémorise au moins un document de description de service 61 et un service WEB 21' relatif à
l'équipement d'automatisme 10.
La figure 6 reprend la variante de la figure 3 adaptée à l'exemple de la figure 4 dans lequel l'équipement d'automatisme 10 implante un service WEB 21 mais pas de document de description de service 61. Le document de description de service 61 est mémorisé dans un serveur 80.
La figure 7 montre une variante de l'exemple de la figure 1 dans lequel un même appareil distant 40 comporte à la fois une application de développement 41 et une application informatique 31. L'application de développement 41 est alors capable de générer et déployer localement tout ou partie de l'application informatique 31 pour permettre à celle-ci de communiquer avec des services WEB 21 d'un équipement d'automatisme 10. Dans cet exemple, l'application de développement 41 comporte un générateur de code 44 spécifique aux équipements d'automatisme. Dans ce cas, on peut aussi envisager de façon équivalente que l'application de développement 41 soit un outil destiné au développement de programmes d'applications d'automatisme conformes à la norme IEC 1131-3.
Selon un autre mode de réalisation de l'invention, un document de description de service 61 peut être généré dynamiquement au moment où une application informatique 31 ou une application de développement 41 d'un appareil distant 30,40 émet une requête 51 pour accéder aux services disponibles dans un équipement d'automatisme 10. Cette fonctionnalité de génération dynamique permet de ne pas mémoriser systématiquement un document de description de service 61, mais de le générer sur demande et donc de pouvoir le faire évoluer à chaque demande, notamment quand la configuration de l'équipement d'automatisme 10 est modifiée (par exemple suite à une connexion ou déconnexion d'un module d'E/S dans un automate programmable 10). De plus, un équipement d'automatisme 10 peut souhaiter exposer ou cacher certains services WEB en fonction de son état ou en fonction de l'appareil distant 30,40 qui veut communiquer avec lui.
Pour cela, le système de communication comporte un générateur de document de description de service 62 qui est un programme capable de construire dynamiquement un document de description de service 61. De façon préférentielle, cette construction dynamique est réalisée grâce au générateur de document de description de service 62 lorsqu'un appareil distant 30,40 demande à accéder au document de description de service 61 de l'équipement d'automatisme 10. Dans ce cas, le document de description de service 61 n'a pas besoin d'être mémorisé
puisqu'il est élaboré dynamiquement à chaque requête 51 émise par une application informatique vers le générateur de document de description de service 62.
Cependant, dans certains cas, on pourrait aussi envisager une construction dynamique du document 6'1 initiée à la demande de l'équipement d'automatisme 10. De plus, on pourrait aussi envisager une solution mixte dans laquelle le générateur 62 serait capable de personnaliser dynamiquement un document de description de service 61, en s'appuyant sur un document standard déjà mémorisé pour une famille d'équipements, puis en adaptant ce document standard dynamiquement en fonction de l'état de l'équipement d'automatisme 10.
Pour obtenir un document de description de service 61, une requête de lecture 51 contient donc une adresse URL, URI ou IP qui pointe soit directement sur le document de description de service 61, soit sur un générateur de document de description de service 62 capable de construire dynamiquement le document de description de service 61. De la même façon qu'un document de description de service 61, un générateur de document de description de service 62 est donc accessible par une adresse URL, URI ou IP à travers une interface réseau 15,15',15". Il peut alors être mémorisé dans des moyens de stockage 60 de l'équipement d'automatisme 10 (figure 4), dans des moyens de stockage 60' d'un appareil intermédiaire 70 (figure 5), dans des moyens de stockage locaux d'un appareil distant 30,40 ou dans des moyens de stockage 60" distants d'un serveur 80 (figure 6).
L'exemple ci-dessous montre un document de description de service 61 appelé "Documentl" conforme au langage WSDL qui décrit la fonction "Read"
possédant une entrée "Readlnput" nommée "Variable" et une sortie "ReadOutput"
nommée "Result", d'un service WEB appelé "Servicel" d'un équipement d'automatisme localisé à l'adresse : "example.com". L'exemple décrit simultanément plusieurs liaisons WSDL telles que les liaisons : SOAP, PROFInet, EtherNet/IP
ou MODBUS/TCP et ceci à l'aide des éléments : <soap:binding...>, <PROF
Inet:binding...>, <EtherNetlP:binding...>, <ModBusTCP:binding...>.
Exemple de document de description de service conforme au langage WSDL :
<?xml version="1.0" ?>
<definitions name="Documentl"
targetNamespace="http://example.com/Documentl.wsdl"
xmins:tns="http://example.com/Documentl.wsdl"
xmins:xsd="http:llwww.w3.org/2000/10/XMLSchema"
xmins:soap="http://schemas.xmisoap.org/wsdl/soap/"
xmins:PROFInet="http:/lschneider-electric.com/wsdl/PROFInet/"
xmins:EtherNetlP ="http://schneider-electric.comlwsdl/EtherNetlP/"
xmins:ModBusTCP=:"http:/lschneider-electric.com/wsdl/ModBusTCP/"
xmins="http://schemas.xmisoap.orglwsdl/">
<message name="Readlnput">
<part narre="Variable" type="xsd:string" />
</message>
<message name="ReadOutput">
<part name="Result" type="xsd:int" />
</message>
<portType name="PortTypel">
<operation name="Read">
<input message="tns:ReadInput" />
<output message="tns:ReadOutput" />
</operation>
</porlType>
<binding name="SoapBinding" type="tns:PortTypel">
<soap:binding style="rpc" transport="http://schemas.xmisoap.org/soap/http" />
<operation name="Read">
<soap:operation soapAction="http://example.com/Read" />
<input> <soap:body use="encoded" namespace="http://tempuri.org/message/"
encodingStyle="http:lischemas.xmisoap.org/soap/encoding/" />
</input>
<output> <soap:body use="encoded" namespace="http://tempuri.org/message/"
encodingStyle="http:llschemas.xmisoap.org/soap/encoding/" />
</output>
</operation>
</binding>
<binding name="PROFInetBinding" type="tns:PortTypel">
<PROFInet:binding transport="http://schneider-electric.com/PROFInet" />
<operation name="Read"><input> ...</input><output>...</output></operation>
</binding>
<binding name="EtherNetIPBinding" type="tns:PortTypel">
<EtherNetiP:binding transport="http:llschneider-electric.com/EtherNetlP" />
<operation name="Read"><input>...</input><output>...</output></operation>
</binding>
<binding name="ModBusTCPBinding" type="tns:PortTypel">
<ModBusTCP:binding transport="http:llschneider-electric.com/ModBusTCP" />
<operation name="Read"><input>...</input><output>...</output></operation>
</binding>
<service name="Servic:el ">
<port n ame="Soa p Port" binding="tns:SoapBinding ">
<soap:address location="http://example.com/" />
</port>
<port name="PROFInetPort" binding="tns:PROFInetBinding ">
<PROFInet:address location="example.com" />
</port>
<port name="EtherNetlPPort" binding="tns:EtherNetlPBinding ">
<EtherNetlP:address location="example.com" />
</port>
<port name="ModBusTCPPort" binding="tns:ModBusTCPBinding ">
<ModBusTCP:address location ="example.com" />
</port>
</service>
</definitions>
5 Etant donné l'aspect évolutif du langage WSDL, il sera possible d'ajouter des éléments nouveaux en assurant une compatibilité ascendante sans déstabiliser les développements antérieurs. De plus, on obtiendra une unification d'équipements très différents, en stockant et en rendant accessible par tous des documents de description de service qui décrivent les services qu'ils sont capables d'exposer.
Selon un autre mode de réalisation de l'invention, un document de description de service 61 relatif à un équipement d'automatisme 10 peut être découvert avec l'aide d'un document de découverte. Un document de découverte est une ressource accessible sur un réseau IP 50 au moyen d'une interface réseau IP permettant de récupérer des adresses URL, URI ou IP pointant sur des documents de description de service 61. Un document de découverte peut faire référence à d'autres documents de découverte associés, si besoin est.
Un document de découverte peut se présenter sous la forme d'une ou plusieurs pages WEB conformes aux langages de description de page WEB tel que HTML (HyperText Markup Language), WML (Wireless Markup Language) ou XHTML
(XML HyperText Markup Language) proposant une ou plusieurs listes d'adresses URL, URI ou IP classées selon différents critères et pointant sur un ou des documents de description de service 61.
Le format d'un document de découverte d'un document de description de service 61 est préférentiellement conforme à des spécifications standardisées, notamment aux spécifications ADS (Advertisement and Discovery Services, définies par IBM Corporation), DISCO (Discovery, définies par Microsoft Corporation) ou UDDI
(Universal Description, Discovery and Integration, publiées sur le site http : //www. uddi . org) .
Un document de découverte d'un document de description de service 61 relatif à un équipement d'automatisme 10 est mémorisé soit dans des moyens de stockage 60 situés dans l'équipement d'automatisme 10, soit dans des moyens de stockage 60' situés dans un appareil intermédiaire 70 connecté à l'équipement d'automatisme 10 et à au moins un appareil distant 30, soit mémorisé dans des moyens de stockage 60" situés dans un serveur 80.
L'invention concerne également un procédé de communication mis en oeuvre dans un système de communication tel que décrit précédemment. Ce procédé
comporte les étapes suivantes :
= Une première étape de découverte d'un ou plusieurs services WEB 21,21', dans laquelle une application informatique 31 ou une application de développement 41, s'exécutant dans un appareil distant 30,40, émettent sur le réseau IP 50 une requête 51 pour recevoir, dans une réponse 51, un ou plusieurs documents de description de service 61 conformes au langage WSDL et décrivant les capacités d'un ou plusieurs services WEB 21,21'. La requête 51 contient au moins une adresse URL, URI ou IP qui pointe sur un document de description de service 61 déjà mémorisé dans l'équipement d'automatisme 10, dans un appareil intermédiaire 70, ou dans un serveur 80.
La requête 51 peut aussi pointer directement sur des moyens de stockage locaux d'un appareil distant 30,40. La requête 51 peut également pointer sur un générateur de document de description de service 62 qui construit alors dynamiquement un document de description de service 61 pour le renvoyer dans la réponse 51.
= Une deuxième étape de génération dans laquelle, grâce à un document de description de service 61 conforme au langage WSDL, il est possible de générer 52, de façon automatique ou manuelle, tout ou partie d'une application informatique 31 (grâce à des générateurs de codes 43,44) ou de générer un comportement dans une application informatique 31 (grâce à des interpréteurs de documents WSDL 33,34), de manière à ce que l'application informatique 31 d'un appareil distant 30 communique avec un service WEB
21,21' au moyen de messages 53 conformes au protocole de communication décrit dans le document de description de service 61, = Une troisième étape de communication entre une application informatique 31 exécutée dans un appareil distant 30 et un service WEB 21,21' d'un équipement d'automatisme 10 sur le réseau IP 50, au moyen de messages 53 conformes au protocole de communication décrit le document de description de service 61.
Durant l'étape de génération, un deuxième appareil distant 40 exécutant une application de développement 41 peut générer tout ou partie d'une application informatique 31 soit localement dans le même deuxième appareil distant 40 soit à
distance sur le réseau IP 50 vers un premier appareil distant 30. Ainsi l'application informatique 31 et l'application de développement 41 sont soit sur un même appareil distant 40, comme représenté en figure 7, soit sur deux appareils distants séparés communiquant par le réseau IP 50, comme représenté en figure 1.
Durant l'étape de découverte, une application informatique 31 (de même qu'une application de développement 41) peut utiliser un ou plusieurs documents de découverte pour rechercher un ou plusieurs documents de description de service 61, avec l'aide d'au moins une adresse URL, URI ou IP, décrivant un service WEB
21,21' relatif à un équipement d'automatisme 10.
Il est bien entendu que l'on peut, sans sortir du cadre de l'invention, imaginer d'autres variantes et perfectionnements de détail et de même envisager l'emploi de moyens équivalents.
l'appareil 10 distant 30,40 (fig. 2), soit dans des moyens de stockage locaux (disque dur, CD-ROM, DVD, ou autres) d'un appareil distant 40 communiquant avec l'équipement d'automatisme 10, soit des moyens de stockage distants 60" dans un serveur 80 accessible depuis l'appareil distant 40 (fig. 3) par une adresse URL,URI ou IP
via le réseau IP 50.
Ces variantes sont intéressantes à cause de la taille limitée de la mémoire disponible dans la plupart des équipements d'automatisme 10. En effet, un équipement d'automatisme 10 n'ayant pas forcément une mémoire suffisante pour stocker en interne un ou plusieurs documents de description de service 61, il est intéressant de pouvoir stocker ce ou ces documents dans un appareil intermédiaire ou dans un serveur externe. C'est également avantageux lorsque, sur un même site, plusieurs équipements d'automatisme possèdent des services WEB similaires qui peuvent être décrit par un même document de description de service stocké dans un endroit unique. Par ailleurs, ce ou ces documents de description de service 61 sont parfois disponibles pour des utilisateurs sur des supports de type CD-ROM ou autre.
De plus, la figure 3 montre également l'utilisation, à la place du générateur de code 43, d'un générateur (le code 44 spécifique aux équipements d'automatisme, étendant ainsi les capacités de l'application de développement 41 pour des protocoles qui sont spécifiques aux équipements d'automatisme. Le générateur de code 44 spécifique aux équipements d'automatisme peut être installé sous forme de module complémentaire ou "plug-in". Il lit le document WSDL et génère automatiquement des interfaces et du code dans le langage de programmation utilisé qui correspondent aux opérations définies dans le document WSDL. Le générateur 44 utilise au moins une liaison WSDL (binding) conforme avec à au moins un protocole spécifique aux équipements d'automatisme.
Par ailleurs, on pourrait envisager qu'au moins une liaison WSDL (binding) décrite dans un document de description de service 61 soit conforme à au moins une version encodée du protocole SOAP selon un format binaire. Dans une telle version encodée du protocole SOAP, un certain nombre de codes binaires prédéterminés remplaceraient systématique ment des expressions de textes plus longues qui existent dans le protocole SOAP, notamment pour des expressions de texte souvent employées. Cette version encodée présenterait alors l'avantage d'utiliser moins de caractères pour décrire un service WEB et donc d'être plus économe en taille mémoire, ce qui est un argument important pour un équipement d'automatisme disposant d'espace mémoire limité.
Dans la figure 4, un second exemple montre un système de communication entre un équipement d'automatisme 10 comprenant un service WEB 21, et un appareil distant 30 comprenant une application informatique 31, et qui utilise le document de description de service 61 localisé dans l'équipement d'automatisme 10.
Contrairement à l'exemple de la figure 1, l'application informatique 31 comporte un interpréteur de document WSDL 33. Cet interpréteur de document WSDL 33 lit le document WSDL
grâce à une requête de lecture 51 et génère automatiquement dans l'application informatique 31 un comportement, tel qu'une interface homme machine (IHM), qui correspond aux opérations définies dans le document WSDL. L'interpréteur 33 utilise au moins une liaison WSDL (binding) conforme avec à au moins un des protocoles supportés par le langage WSDL, tels que SOAP, HTTP ou MIME.
De façon équivalente, l'application informatique 31 peut aussi comporter un interpréteur de document WSDL 34 spécifique aux équipements d'automatisme, installé sous forme de module complémentaire ou "plug-in" de façon à étendre les capacités de l'application informatique 31. Cet interpréteur de document WSDL
34 est capable de lire le document WSDL grâce à une requête de lecture 51 et de générer automatiquement dans l'application informatique 31 un comportement, tel qu'une interface homme machine (IHM), qui correspond aux opérations définies dans le document WSDL. L'interpréteur de document WSDL spécifique aux équipements d'automatisme 34 utilise au moins une liaison WSDL (binding) conforme avec à
au moins un protocole spécifique aux équipements d'automatisme.
La figure 5 reprend la variante de la figure 2 adaptée à l'exemple de la figure 4. Un appareil intermédiaire 70, connecté à la fois aux appareils distants 30,40 et à
l'équipement d'automatisme 10 au moyen d'une interface réseau 15', mémorise au moins un document de description de service 61 et un service WEB 21' relatif à
l'équipement d'automatisme 10.
La figure 6 reprend la variante de la figure 3 adaptée à l'exemple de la figure 4 dans lequel l'équipement d'automatisme 10 implante un service WEB 21 mais pas de document de description de service 61. Le document de description de service 61 est mémorisé dans un serveur 80.
La figure 7 montre une variante de l'exemple de la figure 1 dans lequel un même appareil distant 40 comporte à la fois une application de développement 41 et une application informatique 31. L'application de développement 41 est alors capable de générer et déployer localement tout ou partie de l'application informatique 31 pour permettre à celle-ci de communiquer avec des services WEB 21 d'un équipement d'automatisme 10. Dans cet exemple, l'application de développement 41 comporte un générateur de code 44 spécifique aux équipements d'automatisme. Dans ce cas, on peut aussi envisager de façon équivalente que l'application de développement 41 soit un outil destiné au développement de programmes d'applications d'automatisme conformes à la norme IEC 1131-3.
Selon un autre mode de réalisation de l'invention, un document de description de service 61 peut être généré dynamiquement au moment où une application informatique 31 ou une application de développement 41 d'un appareil distant 30,40 émet une requête 51 pour accéder aux services disponibles dans un équipement d'automatisme 10. Cette fonctionnalité de génération dynamique permet de ne pas mémoriser systématiquement un document de description de service 61, mais de le générer sur demande et donc de pouvoir le faire évoluer à chaque demande, notamment quand la configuration de l'équipement d'automatisme 10 est modifiée (par exemple suite à une connexion ou déconnexion d'un module d'E/S dans un automate programmable 10). De plus, un équipement d'automatisme 10 peut souhaiter exposer ou cacher certains services WEB en fonction de son état ou en fonction de l'appareil distant 30,40 qui veut communiquer avec lui.
Pour cela, le système de communication comporte un générateur de document de description de service 62 qui est un programme capable de construire dynamiquement un document de description de service 61. De façon préférentielle, cette construction dynamique est réalisée grâce au générateur de document de description de service 62 lorsqu'un appareil distant 30,40 demande à accéder au document de description de service 61 de l'équipement d'automatisme 10. Dans ce cas, le document de description de service 61 n'a pas besoin d'être mémorisé
puisqu'il est élaboré dynamiquement à chaque requête 51 émise par une application informatique vers le générateur de document de description de service 62.
Cependant, dans certains cas, on pourrait aussi envisager une construction dynamique du document 6'1 initiée à la demande de l'équipement d'automatisme 10. De plus, on pourrait aussi envisager une solution mixte dans laquelle le générateur 62 serait capable de personnaliser dynamiquement un document de description de service 61, en s'appuyant sur un document standard déjà mémorisé pour une famille d'équipements, puis en adaptant ce document standard dynamiquement en fonction de l'état de l'équipement d'automatisme 10.
Pour obtenir un document de description de service 61, une requête de lecture 51 contient donc une adresse URL, URI ou IP qui pointe soit directement sur le document de description de service 61, soit sur un générateur de document de description de service 62 capable de construire dynamiquement le document de description de service 61. De la même façon qu'un document de description de service 61, un générateur de document de description de service 62 est donc accessible par une adresse URL, URI ou IP à travers une interface réseau 15,15',15". Il peut alors être mémorisé dans des moyens de stockage 60 de l'équipement d'automatisme 10 (figure 4), dans des moyens de stockage 60' d'un appareil intermédiaire 70 (figure 5), dans des moyens de stockage locaux d'un appareil distant 30,40 ou dans des moyens de stockage 60" distants d'un serveur 80 (figure 6).
L'exemple ci-dessous montre un document de description de service 61 appelé "Documentl" conforme au langage WSDL qui décrit la fonction "Read"
possédant une entrée "Readlnput" nommée "Variable" et une sortie "ReadOutput"
nommée "Result", d'un service WEB appelé "Servicel" d'un équipement d'automatisme localisé à l'adresse : "example.com". L'exemple décrit simultanément plusieurs liaisons WSDL telles que les liaisons : SOAP, PROFInet, EtherNet/IP
ou MODBUS/TCP et ceci à l'aide des éléments : <soap:binding...>, <PROF
Inet:binding...>, <EtherNetlP:binding...>, <ModBusTCP:binding...>.
Exemple de document de description de service conforme au langage WSDL :
<?xml version="1.0" ?>
<definitions name="Documentl"
targetNamespace="http://example.com/Documentl.wsdl"
xmins:tns="http://example.com/Documentl.wsdl"
xmins:xsd="http:llwww.w3.org/2000/10/XMLSchema"
xmins:soap="http://schemas.xmisoap.org/wsdl/soap/"
xmins:PROFInet="http:/lschneider-electric.com/wsdl/PROFInet/"
xmins:EtherNetlP ="http://schneider-electric.comlwsdl/EtherNetlP/"
xmins:ModBusTCP=:"http:/lschneider-electric.com/wsdl/ModBusTCP/"
xmins="http://schemas.xmisoap.orglwsdl/">
<message name="Readlnput">
<part narre="Variable" type="xsd:string" />
</message>
<message name="ReadOutput">
<part name="Result" type="xsd:int" />
</message>
<portType name="PortTypel">
<operation name="Read">
<input message="tns:ReadInput" />
<output message="tns:ReadOutput" />
</operation>
</porlType>
<binding name="SoapBinding" type="tns:PortTypel">
<soap:binding style="rpc" transport="http://schemas.xmisoap.org/soap/http" />
<operation name="Read">
<soap:operation soapAction="http://example.com/Read" />
<input> <soap:body use="encoded" namespace="http://tempuri.org/message/"
encodingStyle="http:lischemas.xmisoap.org/soap/encoding/" />
</input>
<output> <soap:body use="encoded" namespace="http://tempuri.org/message/"
encodingStyle="http:llschemas.xmisoap.org/soap/encoding/" />
</output>
</operation>
</binding>
<binding name="PROFInetBinding" type="tns:PortTypel">
<PROFInet:binding transport="http://schneider-electric.com/PROFInet" />
<operation name="Read"><input> ...</input><output>...</output></operation>
</binding>
<binding name="EtherNetIPBinding" type="tns:PortTypel">
<EtherNetiP:binding transport="http:llschneider-electric.com/EtherNetlP" />
<operation name="Read"><input>...</input><output>...</output></operation>
</binding>
<binding name="ModBusTCPBinding" type="tns:PortTypel">
<ModBusTCP:binding transport="http:llschneider-electric.com/ModBusTCP" />
<operation name="Read"><input>...</input><output>...</output></operation>
</binding>
<service name="Servic:el ">
<port n ame="Soa p Port" binding="tns:SoapBinding ">
<soap:address location="http://example.com/" />
</port>
<port name="PROFInetPort" binding="tns:PROFInetBinding ">
<PROFInet:address location="example.com" />
</port>
<port name="EtherNetlPPort" binding="tns:EtherNetlPBinding ">
<EtherNetlP:address location="example.com" />
</port>
<port name="ModBusTCPPort" binding="tns:ModBusTCPBinding ">
<ModBusTCP:address location ="example.com" />
</port>
</service>
</definitions>
5 Etant donné l'aspect évolutif du langage WSDL, il sera possible d'ajouter des éléments nouveaux en assurant une compatibilité ascendante sans déstabiliser les développements antérieurs. De plus, on obtiendra une unification d'équipements très différents, en stockant et en rendant accessible par tous des documents de description de service qui décrivent les services qu'ils sont capables d'exposer.
Selon un autre mode de réalisation de l'invention, un document de description de service 61 relatif à un équipement d'automatisme 10 peut être découvert avec l'aide d'un document de découverte. Un document de découverte est une ressource accessible sur un réseau IP 50 au moyen d'une interface réseau IP permettant de récupérer des adresses URL, URI ou IP pointant sur des documents de description de service 61. Un document de découverte peut faire référence à d'autres documents de découverte associés, si besoin est.
Un document de découverte peut se présenter sous la forme d'une ou plusieurs pages WEB conformes aux langages de description de page WEB tel que HTML (HyperText Markup Language), WML (Wireless Markup Language) ou XHTML
(XML HyperText Markup Language) proposant une ou plusieurs listes d'adresses URL, URI ou IP classées selon différents critères et pointant sur un ou des documents de description de service 61.
Le format d'un document de découverte d'un document de description de service 61 est préférentiellement conforme à des spécifications standardisées, notamment aux spécifications ADS (Advertisement and Discovery Services, définies par IBM Corporation), DISCO (Discovery, définies par Microsoft Corporation) ou UDDI
(Universal Description, Discovery and Integration, publiées sur le site http : //www. uddi . org) .
Un document de découverte d'un document de description de service 61 relatif à un équipement d'automatisme 10 est mémorisé soit dans des moyens de stockage 60 situés dans l'équipement d'automatisme 10, soit dans des moyens de stockage 60' situés dans un appareil intermédiaire 70 connecté à l'équipement d'automatisme 10 et à au moins un appareil distant 30, soit mémorisé dans des moyens de stockage 60" situés dans un serveur 80.
L'invention concerne également un procédé de communication mis en oeuvre dans un système de communication tel que décrit précédemment. Ce procédé
comporte les étapes suivantes :
= Une première étape de découverte d'un ou plusieurs services WEB 21,21', dans laquelle une application informatique 31 ou une application de développement 41, s'exécutant dans un appareil distant 30,40, émettent sur le réseau IP 50 une requête 51 pour recevoir, dans une réponse 51, un ou plusieurs documents de description de service 61 conformes au langage WSDL et décrivant les capacités d'un ou plusieurs services WEB 21,21'. La requête 51 contient au moins une adresse URL, URI ou IP qui pointe sur un document de description de service 61 déjà mémorisé dans l'équipement d'automatisme 10, dans un appareil intermédiaire 70, ou dans un serveur 80.
La requête 51 peut aussi pointer directement sur des moyens de stockage locaux d'un appareil distant 30,40. La requête 51 peut également pointer sur un générateur de document de description de service 62 qui construit alors dynamiquement un document de description de service 61 pour le renvoyer dans la réponse 51.
= Une deuxième étape de génération dans laquelle, grâce à un document de description de service 61 conforme au langage WSDL, il est possible de générer 52, de façon automatique ou manuelle, tout ou partie d'une application informatique 31 (grâce à des générateurs de codes 43,44) ou de générer un comportement dans une application informatique 31 (grâce à des interpréteurs de documents WSDL 33,34), de manière à ce que l'application informatique 31 d'un appareil distant 30 communique avec un service WEB
21,21' au moyen de messages 53 conformes au protocole de communication décrit dans le document de description de service 61, = Une troisième étape de communication entre une application informatique 31 exécutée dans un appareil distant 30 et un service WEB 21,21' d'un équipement d'automatisme 10 sur le réseau IP 50, au moyen de messages 53 conformes au protocole de communication décrit le document de description de service 61.
Durant l'étape de génération, un deuxième appareil distant 40 exécutant une application de développement 41 peut générer tout ou partie d'une application informatique 31 soit localement dans le même deuxième appareil distant 40 soit à
distance sur le réseau IP 50 vers un premier appareil distant 30. Ainsi l'application informatique 31 et l'application de développement 41 sont soit sur un même appareil distant 40, comme représenté en figure 7, soit sur deux appareils distants séparés communiquant par le réseau IP 50, comme représenté en figure 1.
Durant l'étape de découverte, une application informatique 31 (de même qu'une application de développement 41) peut utiliser un ou plusieurs documents de découverte pour rechercher un ou plusieurs documents de description de service 61, avec l'aide d'au moins une adresse URL, URI ou IP, décrivant un service WEB
21,21' relatif à un équipement d'automatisme 10.
Il est bien entendu que l'on peut, sans sortir du cadre de l'invention, imaginer d'autres variantes et perfectionnements de détail et de même envisager l'emploi de moyens équivalents.
Claims (18)
1. Système de communication sur un réseau IP (50) entre un équipement d'automatisme (10) comportant au moins une unité de traitement capable d'exécuter au moins un programme (20) pour fournir des fonctions d'automatisme et un ou plusieurs appareils distants (30,40) exécutant une ou plusieurs applications informatiques, caractérisé par le fait que:
.cndot. le système de communication est conforme au langage WSDL (Web Services Description Language) dans le but de fournir à un appareil distant (30,40) des fonctions de surveillance, de visualisation, de contrôle, de configuration ou de programmation de l'équipement d'automatisme (10), .cndot. le système de communication utilise au moins un document de description de service (61), conforme au langage WSDL, décrivant les capacités d'un ou plusieurs services WEB (21,21') capables d'interagir avec un programme (20) de l'équipement d'automatisme (10) et implantés dans l'équipement d'automatisme (10), .cndot. chaque document de description de service (61) est accessible, pour un appareil distant (30,40), par une adresse URL, URI ou IP, à travers une interface réseau IP (15,15',15"), .cndot. une application informatique (31), exécutée dans un appareil distant (30,40), est capable de communiquer avec un service WEB (21,21') au moyen de messages (53) encodés selon un protocole de communication conforme à au moins une liaison WSDL (binding) décrite dans le document de description de service (61), .cndot. l'application informatique (31) utilise un interpréteur de documents WSDL (33,34) pour générer un comportement correspondant au document de description de service (61), ou une application de développement (41) utilise un générateur de codes (43,44) pour générer du code de l'application informatique (31) correspondant au document de description de service (61).
.cndot. le système de communication est conforme au langage WSDL (Web Services Description Language) dans le but de fournir à un appareil distant (30,40) des fonctions de surveillance, de visualisation, de contrôle, de configuration ou de programmation de l'équipement d'automatisme (10), .cndot. le système de communication utilise au moins un document de description de service (61), conforme au langage WSDL, décrivant les capacités d'un ou plusieurs services WEB (21,21') capables d'interagir avec un programme (20) de l'équipement d'automatisme (10) et implantés dans l'équipement d'automatisme (10), .cndot. chaque document de description de service (61) est accessible, pour un appareil distant (30,40), par une adresse URL, URI ou IP, à travers une interface réseau IP (15,15',15"), .cndot. une application informatique (31), exécutée dans un appareil distant (30,40), est capable de communiquer avec un service WEB (21,21') au moyen de messages (53) encodés selon un protocole de communication conforme à au moins une liaison WSDL (binding) décrite dans le document de description de service (61), .cndot. l'application informatique (31) utilise un interpréteur de documents WSDL (33,34) pour générer un comportement correspondant au document de description de service (61), ou une application de développement (41) utilise un générateur de codes (43,44) pour générer du code de l'application informatique (31) correspondant au document de description de service (61).
2. Système de communication selon la revendication 1, caractérisé par le fait qu'au moins une liaison WSDL (binding) décrite dans un document de description de service (61) est conforme à un des protocoles SOAP, HTIP ou MIME.
3. Système de communication selon la revendication 2, caractérisé par le fait qu'un document de description de service (61) décrit les capacités d'un service WEB (21,21') à exposer un service conforme à un protocole spécifique aux équipements d'automatisme.
4. Système de communication selon la revendication 1, caractérisé par le fait qu'au moins une liaison WSDL (binding) décrite dans un document de description de service (61) est conforme à un protocole spécifique aux équipements d'automatisme.
5. Système de communication selon la revendication 1, caractérisé par le fait qu'au moins une liaison WSDL (binding) décrite dans un document de description de service (61) est conforme à au moins une version encodée du protocole SOAP
selon un format binaire.
selon un format binaire.
6. Système de communication selon la revendication 1, caractérisé par le fait que le document de description de service (61) relatif à un équipement d'automatisme (10) est mémorisé dans des moyens de stockage (60) situés dans l'équipement d'automatisme (10).
7. Système de communication selon la revendication 1, caractérisé par le fait que le document de description de service (61) relatif à un équipement d'automatisme (10) est mémorisé dans des moyens de stockage (60') situés dans un appareil intermédiaire (70) connecté à l'équipement d'automatisme (10) et à
au moins un appareil distant (30).
au moins un appareil distant (30).
8. Système de communication selon la revendication 1, caractérisé par le fait que le document de description de service (61) relatif à un équipement d'automatisme (10) est mémorisé dans des moyens de stockage distants (60") situés dans un serveur (80).
9. Système de communication selon la revendication 1, caractérisé par le fait qu'il comporte un générateur de document de description de service (62) capable, à
la suite d'une demande émanant d'un appareil distant (30,40), de construire dynamiquement un document de description de service (61) relatif à un équipement d'automatisme (10) et accessible, pour un appareil distant (30,40), par une adresse URL, URI ou IP, à travers une interface réseau IP (15,15',15").
la suite d'une demande émanant d'un appareil distant (30,40), de construire dynamiquement un document de description de service (61) relatif à un équipement d'automatisme (10) et accessible, pour un appareil distant (30,40), par une adresse URL, URI ou IP, à travers une interface réseau IP (15,15',15").
10. Système de communication selon la revendication 1, caractérisé par le fait qu'un document de découverte de document de description de service (61) relatif à
un équipement d'automatisme (10) est accessible, pour un appareil distant (30,40), par une adresse URL, URI ou IP.
un équipement d'automatisme (10) est accessible, pour un appareil distant (30,40), par une adresse URL, URI ou IP.
11. Système de communication selon la revendication 10, caractérisé par le fait que le document de découverte d'un document de description de service (61) relatif à un équipement d'automatisme (10) est représenté par une ou plusieurs pages WEB conformes avec au moins un langage de description de page WEB, lequel document de découverte propose une ou plusieurs listes d'adresses URL, URI ou IP d'un ou plusieurs documents de description de service (61).
12. Système de communication selon la revendication 10, caractérisé par le fait que le format du document de découverte d'un document de description de service (61) relatif à un équipement d'automatisme (10) est conforme aux spécifications ADS (Advertisement and Discovery Services), DISCO (Discovery) ou UDDI
(Universal Description, Discovery and Integration).
(Universal Description, Discovery and Integration).
13. Système de communication selon la revendication 10, caractérisé par le fait que le document de découverte d'un document de description de service (61) relatif à un équipement d'automatisme (10) est mémorisé dans des moyens de stockage (60) situés dans l'équipement d'automatisme (10).
14. Système de communication selon la revendication 10, caractérisé par le fait que le document de découverte d'un document de description de service (61) relatif à un équipement d'automatisme (10) est mémorisé dans des moyens de stockage (60') situés dans un appareil intermédiaire (70) connecté à l'équipement d'automatisme (10) et à au moins un appareil distant (30).
15. Système de communication selon la revendication 10, caractérisé par le fait que le document de découverte d'un document de description de service (61) relatif à un équipement d'automatisme (10) est mémorisé dans des moyens de stockage distants (60") situés dans un serveur (80).
16. Procédé de communication mis en oeuvre dans un système de communication sur un réseau IP (50) entre un équipement d'automatisme (10) comportant au moins une unité de traitement capable d'exécuter au moins un programme (20) pour fournir des fonctions d'automatisme et un ou plusieurs appareils distants (30,40) exécutant une ou plusieurs applications informatiques, caractérisé par le fait que le procédé comporte les étapes suivantes:
.cndot. une première étape de découverte de service WEB, dans laquelle une application informatique (31) ou une application de développement (41), s'exécutant dans un appareil distant (30,40), émet sur le réseau IP (50) une requête (51) pour recevoir, dans une réponse (51), un ou plusieurs documents de description de service (61) conformes au langage WSDL et décrivant les capacités d'un ou plusieurs services WEB (21,21') capables d'interagir avec un programme (20) de l'équipement d'automatisme (10), .cndot. une deuxième étape de génération dans laquelle:
- soit l'application informatique (31) utilise un interpréteur de documents WSDL (33,34) pour générer un comportement correspondant au document de description de service (61), - soit l'application de développement (41) utilise un générateur de codes (43,44) pour générer du code de l'application informatique (31) correspondant au document de description de service (61), de manière à ce que l'application informatique (31) d'un appareil distant (30) communique avec un service WEB (21,21') au moyen de messages (53) conformes au protocole de communication décrit dans le document de description de service (61), .cndot. Une troisième étape de communication sur le réseau IP (50) entre l'application informatique (31) d'un appareil distant (30), et au moins un service WEB (21,21 ') implanté dans l'équipement d'automatisme (10), au moyen de messages (53) encodés selon un protocole de communication conforme à au moins une liaison WSDL (binding) décrite dans le document de description de service (61), dans le but de fournir à l'appareil distant (30) des fonctions de surveillance, de visualisation, de contrôle, de configuration ou de programmation de l'équipement d'automatisme (10).
.cndot. une première étape de découverte de service WEB, dans laquelle une application informatique (31) ou une application de développement (41), s'exécutant dans un appareil distant (30,40), émet sur le réseau IP (50) une requête (51) pour recevoir, dans une réponse (51), un ou plusieurs documents de description de service (61) conformes au langage WSDL et décrivant les capacités d'un ou plusieurs services WEB (21,21') capables d'interagir avec un programme (20) de l'équipement d'automatisme (10), .cndot. une deuxième étape de génération dans laquelle:
- soit l'application informatique (31) utilise un interpréteur de documents WSDL (33,34) pour générer un comportement correspondant au document de description de service (61), - soit l'application de développement (41) utilise un générateur de codes (43,44) pour générer du code de l'application informatique (31) correspondant au document de description de service (61), de manière à ce que l'application informatique (31) d'un appareil distant (30) communique avec un service WEB (21,21') au moyen de messages (53) conformes au protocole de communication décrit dans le document de description de service (61), .cndot. Une troisième étape de communication sur le réseau IP (50) entre l'application informatique (31) d'un appareil distant (30), et au moins un service WEB (21,21 ') implanté dans l'équipement d'automatisme (10), au moyen de messages (53) encodés selon un protocole de communication conforme à au moins une liaison WSDL (binding) décrite dans le document de description de service (61), dans le but de fournir à l'appareil distant (30) des fonctions de surveillance, de visualisation, de contrôle, de configuration ou de programmation de l'équipement d'automatisme (10).
17. Procédé de communication selon la revendication 16, caractérisé par le fait que, durant l'étape de découverte, l'application informatique (31) ou l'application de développement (41) peuvent utiliser un ou plusieurs documents de découverte pour découvrir un ou plusieurs documents de description de service (61) décrivant un service WEB (21,21') relatif à un équipement d'automatisme (10).
18. Procédé de communication selon la revendication 16, caractérisé par le fait que, durant l'étape de génération, une application de développement (41) s'exécutant dans un deuxième appareil distant (40) peut générer tout ou partie d'une application informatique (31) localement dans le deuxième appareil distant (40) ou dans un premier appareil distant (30) à travers le réseau IP (50).
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0011320A FR2813471B1 (fr) | 2000-08-31 | 2000-08-31 | Systeme de communication d'un equipement d'automatisme base sur le protocole soap |
FR0011320 | 2000-08-31 |
Publications (2)
Publication Number | Publication Date |
---|---|
CA2357409A1 CA2357409A1 (fr) | 2002-02-28 |
CA2357409C true CA2357409C (fr) | 2011-08-09 |
Family
ID=8853998
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002357408A Abandoned CA2357408A1 (fr) | 2000-08-31 | 2001-08-27 | Systeme de communication d'un equipement d'automatisme base sur le protocole soap |
CA2357409A Expired - Fee Related CA2357409C (fr) | 2000-08-31 | 2001-08-27 | Systeme de communication d'un equipement d'automatisme base sur le langage wsdl |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002357408A Abandoned CA2357408A1 (fr) | 2000-08-31 | 2001-08-27 | Systeme de communication d'un equipement d'automatisme base sur le protocole soap |
Country Status (7)
Country | Link |
---|---|
US (2) | US7159007B2 (fr) |
EP (2) | EP1193948B1 (fr) |
JP (2) | JP2002215486A (fr) |
CA (2) | CA2357408A1 (fr) |
DE (1) | DE60118487T2 (fr) |
ES (1) | ES2258065T3 (fr) |
FR (1) | FR2813471B1 (fr) |
Families Citing this family (236)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7249157B2 (en) * | 2000-02-16 | 2007-07-24 | Bea Systems, Inc. | Collaboration system for exchanging of data between electronic participants via collaboration space by using a URL to identify a combination of both collaboration space and business protocol |
US7013340B1 (en) * | 2000-05-18 | 2006-03-14 | Microsoft Corporation | Postback input handling by server-side control objects |
US20030220880A1 (en) * | 2002-01-17 | 2003-11-27 | Contentguard Holdings, Inc. | Networked services licensing system and method |
US7380250B2 (en) * | 2001-03-16 | 2008-05-27 | Microsoft Corporation | Method and system for interacting with devices having different capabilities |
US20060265475A9 (en) * | 2001-03-19 | 2006-11-23 | Thomas Mayberry | Testing web services as components |
GB0109726D0 (en) * | 2001-04-20 | 2001-06-13 | Koninkl Philips Electronics Nv | Service access system |
US7747764B2 (en) * | 2001-04-20 | 2010-06-29 | Rockwell Automation Technologies, Inc. | Web access for non-TCP/IP control devices of an industrial control system |
US7493397B1 (en) * | 2001-06-06 | 2009-02-17 | Microsoft Corporation | Providing remote processing services over a distributed communications network |
DE10129322A1 (de) * | 2001-06-19 | 2003-01-02 | Siemens Ag | Zentrale Administration eines Callcenters |
US7290030B2 (en) | 2001-07-13 | 2007-10-30 | Rockwell Automation Technologies, Inc. | Internet object based interface for industrial controller |
US6819960B1 (en) | 2001-08-13 | 2004-11-16 | Rockwell Software Inc. | Industrial controller automation interface |
EP1293898A1 (fr) * | 2001-09-14 | 2003-03-19 | Siemens Aktiengesellschaft | Procédé d'opération pour un dispositif d'automatisation |
US7035944B2 (en) | 2001-09-19 | 2006-04-25 | International Business Machines Corporation | Programmatic management of software resources in a content framework environment |
US7343428B2 (en) * | 2001-09-19 | 2008-03-11 | International Business Machines Corporation | Dynamic, real-time integration of software resources through services of a content framework |
DE10149480A1 (de) * | 2001-10-08 | 2003-04-17 | Siemens Ag | System und Verfahren zum Zugriff auf ein Gerät, insbesondere ein Automatisierungsgerät mit einer standardisierten Schnittstelle |
DE10149481A1 (de) * | 2001-10-08 | 2003-04-30 | Siemens Ag | System und Verfahren zur Datenausgabe eines Geräts, insbesondere eines Automatisierungsgerät über eine standardisierte Schnittstelle mit Variablenersetzung über einen Echoserver |
US7676540B2 (en) | 2001-10-16 | 2010-03-09 | Microsoft Corporation | Scoped referral statements |
US8015204B2 (en) | 2001-10-16 | 2011-09-06 | Microsoft Corporation | Scoped access control metadata element |
EP1303097A3 (fr) | 2001-10-16 | 2005-11-30 | Microsoft Corporation | Systeme virtuel réparti de sécurité |
US7451157B2 (en) * | 2001-10-16 | 2008-11-11 | Microsoft Corporation | Scoped metadata in a markup language |
US7536712B2 (en) * | 2001-10-16 | 2009-05-19 | Microsoft Corporation | Flexible electronic message security mechanism |
US7194553B2 (en) | 2001-10-16 | 2007-03-20 | Microsoft Corporation | Resolving virtual network names |
US8001189B2 (en) * | 2001-10-16 | 2011-08-16 | Microsoft Corporation | Routing of network messages |
US7516440B2 (en) * | 2001-10-18 | 2009-04-07 | Bea Systems, Inc. | System and method for providing a java interface to an application view component |
US7392391B2 (en) * | 2001-11-01 | 2008-06-24 | International Business Machines Corporation | System and method for secure configuration of sensitive web services |
US7899047B2 (en) | 2001-11-27 | 2011-03-01 | Microsoft Corporation | Virtual network with adaptive dispatcher |
US7822860B2 (en) * | 2001-12-11 | 2010-10-26 | International Business Machines Corporation | Method and apparatus for dynamic reconfiguration of web services infrastructure |
US7171493B2 (en) * | 2001-12-19 | 2007-01-30 | The Charles Stark Draper Laboratory | Camouflage of network traffic to resist attack |
EP1322124A1 (fr) * | 2001-12-19 | 2003-06-25 | Siemens Aktiengesellschaft | Procédé pour l'exploitation d'un réseau de communication |
US7603469B2 (en) * | 2002-01-15 | 2009-10-13 | International Business Machines Corporation | Provisioning aggregated services in a distributed computing environment |
CA2369797A1 (fr) * | 2002-01-31 | 2003-07-31 | Bridgewater Systems Corporation | Systeme et methode de gestion de services web |
US7219125B1 (en) * | 2002-02-13 | 2007-05-15 | Cisco Technology, Inc. | Method and apparatus for masking version differences in applications using a data object exchange protocol |
EP1337080A3 (fr) * | 2002-02-15 | 2005-06-08 | Hitachi, Ltd. | Procédé de commande des dispositifs de réseau |
US7912930B1 (en) * | 2002-02-21 | 2011-03-22 | Oracle International Corporation | System and method for resource provisioning |
US7516447B2 (en) | 2002-02-22 | 2009-04-07 | Bea Systems, Inc. | Methods and apparatus for building, customizing and using software abstractions of external entities |
US20030225894A1 (en) * | 2002-03-25 | 2003-12-04 | Tatsuo Ito | Image forming apparatus including web service functions |
JP4698635B2 (ja) * | 2002-03-25 | 2011-06-08 | 株式会社リコー | Webサービス機能を有する情報処理装置 |
US20040088352A1 (en) * | 2002-04-08 | 2004-05-06 | Kurth Lloyd N. | Business to business integration via the web |
US7330473B1 (en) | 2002-04-12 | 2008-02-12 | Rockwell Automation Technologies, Inc. | System and methodology providing network data exchange between industrial control components |
US20050198138A1 (en) * | 2002-04-29 | 2005-09-08 | Rainer Heller | Automation device comprising an interface for message-based and port-based accessing of an application |
EP1499999A2 (fr) * | 2002-04-29 | 2005-01-26 | Siemens Aktiengesellschaft | Service de repertoire dans un systeme d'automatisation |
US8135772B2 (en) | 2002-05-01 | 2012-03-13 | Oracle International Corporation | Single servlets for B2B message routing |
US7519976B2 (en) * | 2002-05-01 | 2009-04-14 | Bea Systems, Inc. | Collaborative business plug-in framework |
US20040078440A1 (en) * | 2002-05-01 | 2004-04-22 | Tim Potter | High availability event topic |
US7257645B2 (en) * | 2002-05-01 | 2007-08-14 | Bea Systems, Inc. | System and method for storing large messages |
US7155438B2 (en) * | 2002-05-01 | 2006-12-26 | Bea Systems, Inc. | High availability for event forwarding |
US7526519B2 (en) * | 2002-05-01 | 2009-04-28 | Bea Systems, Inc. | High availability application view deployment |
US7222148B2 (en) | 2002-05-02 | 2007-05-22 | Bea Systems, Inc. | System and method for providing highly available processing of asynchronous service requests |
US7165249B2 (en) * | 2002-05-02 | 2007-01-16 | Bea Systems, Inc. | Systems and methods for modular component deployment |
US7676538B2 (en) * | 2002-05-02 | 2010-03-09 | Bea Systems, Inc. | Systems and methods for application view transactions |
US7350184B2 (en) * | 2002-05-02 | 2008-03-25 | Bea Systems, Inc. | System and method for enterprise application interactions |
US7484224B2 (en) * | 2002-05-02 | 2009-01-27 | Bae Systems, Inc. | Adapter deployment without recycle |
US7162687B2 (en) * | 2002-05-31 | 2007-01-09 | Sun Microsystems, Inc. | JSP tag libraries and web services |
US7151966B1 (en) | 2002-06-04 | 2006-12-19 | Rockwell Automation Technologies, Inc. | System and methodology providing open interface and distributed processing in an industrial controller environment |
US7512906B1 (en) * | 2002-06-04 | 2009-03-31 | Rockwell Automation Technologies, Inc. | System and methodology providing adaptive interface in an industrial controller environment |
US7539724B1 (en) * | 2002-06-04 | 2009-05-26 | Rockwell Automation Technologies, Inc. | Instant messaging for event notification and exchanging data in an industrial controller environment |
US7606890B1 (en) | 2002-06-04 | 2009-10-20 | Rockwell Automation Technologies, Inc. | System and methodology providing namespace and protocol management in an industrial controller environment |
US9565275B2 (en) | 2012-02-09 | 2017-02-07 | Rockwell Automation Technologies, Inc. | Transformation of industrial data into useful cloud information |
CA2390348A1 (fr) * | 2002-06-10 | 2003-12-10 | Ibm Canada Limited-Ibm Canada Limitee | Systemes, methodes et programmes informatiques de mise en application de services web et d'acces a ces services |
US6988099B2 (en) * | 2002-06-27 | 2006-01-17 | Bea Systems, Inc. | Systems and methods for maintaining transactional persistence |
US7386860B2 (en) * | 2002-06-28 | 2008-06-10 | Microsoft Corporation | Type extensions to web services description language |
DE50212985D1 (de) * | 2002-06-29 | 2008-12-18 | Abb Research Ltd | Verfahren und System zum Verarbeiten von Konfigurationsdaten |
US7266582B2 (en) * | 2002-08-09 | 2007-09-04 | Sun Microsystems, Inc. | Method and system for automating generation of web services from existing service components |
US6973659B2 (en) * | 2002-08-22 | 2005-12-06 | International Business Machines Corporation | Mapping between remote procedure call system primitives and event driven execution environment system primitives |
FR2844369B1 (fr) * | 2002-09-05 | 2010-10-08 | Canon Kk | Procede de proposition d'un service, de test d'acces a un service et de verification de comptabilite |
US8051188B2 (en) * | 2002-09-05 | 2011-11-01 | Canon Kabushiki Kaisha | Method of proposing a service via a description document of such a service |
US7448066B2 (en) * | 2002-09-19 | 2008-11-04 | International Business Machines Corporation | Application server object-level security for distributed computing domains |
EP1418732B1 (fr) * | 2002-09-19 | 2016-01-06 | Ricoh Company, Ltd. | Système de communications avec une pluralité d'appareils de communication comme client et serveur de communication pour l'échange des requêtes et réponses d'opération |
JP5263195B2 (ja) * | 2002-09-20 | 2013-08-14 | 株式会社リコー | 画像形成装置及び画像形成システム |
US8176143B2 (en) | 2002-09-20 | 2012-05-08 | Ricoh Company, Ltd. | Web service providing apparatus |
US20040059704A1 (en) * | 2002-09-20 | 2004-03-25 | International Business Machines Corporation | Self-managing computing system |
US7574653B2 (en) * | 2002-10-11 | 2009-08-11 | Microsoft Corporation | Adaptive image formatting control |
US8356067B2 (en) | 2002-10-24 | 2013-01-15 | Intel Corporation | Servicing device aggregates |
KR100463823B1 (ko) * | 2002-11-11 | 2004-12-29 | 에스케이 텔레콤주식회사 | 리거시 시스템 및 콘텐츠 프로바이더(cp) 연동용soap 기반 통신 게이트웨이 시스템 및 이를 이용한프로토콜 변환 방법 |
US7991827B1 (en) * | 2002-11-13 | 2011-08-02 | Mcafee, Inc. | Network analysis system and method utilizing collected metadata |
WO2004045154A1 (fr) * | 2002-11-13 | 2004-05-27 | Intel Corporation | Interaction web multimode sur un reseau sans fil |
EP1420316B1 (fr) * | 2002-11-18 | 2012-05-23 | Rockwell Automation Technologies, Inc. | Communication par messages instantanés (Instant Messaging) pour notification d'événements et l'échange de données en milieu des automates programmables industriels |
US8489741B2 (en) * | 2002-11-21 | 2013-07-16 | International Business Machines Corporation | Policy enabled grid architecture |
US7149752B2 (en) * | 2002-12-03 | 2006-12-12 | Jp Morgan Chase Bank | Method for simplifying databinding in application programs |
US20040133633A1 (en) * | 2002-12-05 | 2004-07-08 | Neopost Inc. | Method and apparatus for adaptive client communications |
US20040139144A1 (en) * | 2002-12-31 | 2004-07-15 | Batra Virinder M. | Using web services to access computational grids by non-members of the grid |
US8032439B2 (en) * | 2003-01-07 | 2011-10-04 | Jpmorgan Chase Bank, N.A. | System and method for process scheduling |
US7401156B2 (en) * | 2003-02-03 | 2008-07-15 | Jp Morgan Chase Bank | Method using control interface to suspend software network environment running on network devices for loading and executing another software network environment |
US20050022164A1 (en) * | 2003-02-25 | 2005-01-27 | Bea Systems, Inc. | Systems and methods utilizing a workflow definition language |
US7774697B2 (en) * | 2003-02-25 | 2010-08-10 | Bea Systems, Inc. | System and method for structuring distributed applications |
US7584474B2 (en) * | 2003-02-25 | 2009-09-01 | Bea Systems, Inc. | Systems and methods for transaction chaining |
US7293038B2 (en) | 2003-02-25 | 2007-11-06 | Bea Systems, Inc. | Systems and methods for client-side filtering of subscribed messages |
US7752599B2 (en) * | 2003-02-25 | 2010-07-06 | Bea Systems Inc. | Systems and methods extending an existing programming language with constructs |
US20060142086A1 (en) * | 2003-02-26 | 2006-06-29 | Blackburn Christopher W | Progressive service in a service-oriented gaming network environment |
US7650276B2 (en) * | 2003-02-26 | 2010-01-19 | Bea Systems, Inc. | System and method for dynamic data binding in distributed applications |
US7707564B2 (en) * | 2003-02-26 | 2010-04-27 | Bea Systems, Inc. | Systems and methods for creating network-based software services using source code annotations |
US20040235563A1 (en) * | 2003-02-26 | 2004-11-25 | Blackburn Christopher W. | Game update service in a service-oriented gaming network environment |
CA2458793A1 (fr) * | 2003-02-26 | 2004-08-26 | Wms Gaming Inc. | Service de gestion de jeu dans l'environnement de reseau de jeu axe sur le service |
CA2458554A1 (fr) * | 2003-02-26 | 2004-08-26 | Wms Gaming Inc. | Environnement de reseau de jeu axe sur le service |
US8032860B2 (en) | 2003-02-26 | 2011-10-04 | Oracle International Corporation | Methods for type-independent source code editing |
US20040225995A1 (en) * | 2003-02-28 | 2004-11-11 | Kyle Marvin | Reusable software controls |
US20050044173A1 (en) * | 2003-02-28 | 2005-02-24 | Olander Daryl B. | System and method for implementing business processes in a portal |
US7650592B2 (en) * | 2003-03-01 | 2010-01-19 | Bea Systems, Inc. | Systems and methods for multi-view debugging environment |
FR2852177B1 (fr) | 2003-03-03 | 2005-06-24 | Canon Kk | Procede de proposition d'un service fourni par un ordinateur serveur dans un reseau de communication |
US8308567B2 (en) | 2003-03-05 | 2012-11-13 | Wms Gaming Inc. | Discovery service in a service-oriented gaming network environment |
US20040243848A1 (en) * | 2003-03-06 | 2004-12-02 | Blackburn Christopher W. | Authentication service in a service-oriented gaming network environment |
US20040243849A1 (en) * | 2003-03-06 | 2004-12-02 | Blackburn Christopher W. | Authorization service in a service-oriented gaming network environment |
US20040242331A1 (en) * | 2003-03-17 | 2004-12-02 | Blackburn Christopher W. | Time service in a service-oriented gaming network environment |
US7927210B2 (en) * | 2003-03-17 | 2011-04-19 | Wms Gaming Inc. | Accounting service in a service-oriented gaming network environment |
WO2004086184A2 (fr) * | 2003-03-19 | 2004-10-07 | Unisys Corporation | Architecture de systeme et decouverte a distance |
US20040205216A1 (en) * | 2003-03-19 | 2004-10-14 | Ballinger Keith W. | Efficient message packaging for transport |
US20040266532A1 (en) * | 2003-03-27 | 2004-12-30 | Blackburn Christopher W. | Event management service in a service-oriented gaming network environment |
US7379998B2 (en) * | 2003-03-31 | 2008-05-27 | Jp Morgan Chase Bank | System and method for multi-platform queue queries |
WO2004090671A2 (fr) * | 2003-04-04 | 2004-10-21 | Computer Associates Think, Inc. | Systeme et procede permettant d'acceder a des donnees de documents par l'intermediaire d'un service web |
US20040259633A1 (en) * | 2003-04-16 | 2004-12-23 | Gentles Thomas A. | Remote authentication of gaming software in a gaming system environment |
US20040266523A1 (en) * | 2003-04-16 | 2004-12-30 | Gentles Thomas A | Secured networks in a gaming system environment |
US20040266533A1 (en) * | 2003-04-16 | 2004-12-30 | Gentles Thomas A | Gaming software distribution network in a gaming system environment |
US20040230602A1 (en) * | 2003-05-14 | 2004-11-18 | Andrew Doddington | System and method for decoupling data presentation layer and data gathering and storage layer in a distributed data processing system |
US7366722B2 (en) * | 2003-05-15 | 2008-04-29 | Jp Morgan Chase Bank | System and method for specifying application services and distributing them across multiple processors using XML |
US7634555B1 (en) * | 2003-05-16 | 2009-12-15 | Johnson Controls Technology Company | Building automation system devices |
US7509641B2 (en) * | 2003-05-16 | 2009-03-24 | Jp Morgan Chase Bank | Job processing framework |
US20050227768A1 (en) * | 2003-05-27 | 2005-10-13 | Blackburn Christopher W | Gaming network environment having a language translation service |
JP2004362183A (ja) * | 2003-06-04 | 2004-12-24 | Hitachi Ltd | プログラム管理方法及び実施装置並びに処理プログラム |
US7904583B2 (en) * | 2003-07-11 | 2011-03-08 | Ge Fanuc Automation North America, Inc. | Methods and systems for managing and controlling an automation control module system |
JP2005038016A (ja) | 2003-07-15 | 2005-02-10 | Canon Inc | データ処理装置、データ処理方法、データ処理プログラム、及び画像形成装置 |
US7925722B1 (en) * | 2003-08-01 | 2011-04-12 | Avocent Corporation | Method and apparatus for discovery and installation of network devices through a network |
US20050038708A1 (en) * | 2003-08-10 | 2005-02-17 | Gmorpher Incorporated | Consuming Web Services on Demand |
US7171454B2 (en) * | 2003-08-13 | 2007-01-30 | Siemens Energy & Automation, Inc. | Method for providing real-time production information using in-situ web services embedded in electronic production equipment |
WO2005017782A1 (fr) * | 2003-08-13 | 2005-02-24 | Siemens Logistics And Assembly Systems Inc | Procede pour fournir en temps reel des informations de production au moyen de services web in situ integres dans un equipement de production electronique |
US20050060376A1 (en) * | 2003-09-12 | 2005-03-17 | Moran Neal P. | Secure computer telephony integration access |
DE10342591A1 (de) * | 2003-09-15 | 2005-04-14 | Siemens Ag | Automatisierungsobjekt bzw. Verfahren zur Informationsbeschreibung eines Automatisierungsobjektes |
JP2005122377A (ja) * | 2003-10-15 | 2005-05-12 | Konica Minolta Business Technologies Inc | 制御装置、制御指示装置、制御プログラムおよび制御指示プログラム |
US7110918B2 (en) * | 2003-11-05 | 2006-09-19 | Shoplogix Inc. | Self-contained system and method for remotely monitoring machines |
US20050117179A1 (en) * | 2003-11-06 | 2005-06-02 | Tatsuo Ito | Output information providing method, output information providing system, document outputting method, and document outputting system |
US20050198255A1 (en) * | 2003-12-23 | 2005-09-08 | Johnson Controls Technology Company | Value reporting using web services |
US20050144174A1 (en) * | 2003-12-31 | 2005-06-30 | Leonid Pesenson | Framework for providing remote processing of a graphical user interface |
US8112383B2 (en) * | 2004-02-10 | 2012-02-07 | Microsoft Corporation | Systems and methods for a database engine in-process data provider |
DE102004007233B3 (de) * | 2004-02-13 | 2005-05-19 | Siemens Ag | Verfahren zum Installieren einer Automatisierungskomponente und entsprechendes Automatisierungssystem |
US7596622B2 (en) * | 2004-02-26 | 2009-09-29 | Research In Motion Limited | Apparatus and method for processing web service descriptions |
US7774456B1 (en) * | 2004-02-27 | 2010-08-10 | Packeteer, Inc. | Methods, apparatuses and systems facilitating classification of web services network traffic |
US7457870B1 (en) * | 2004-02-27 | 2008-11-25 | Packeteer, Inc. | Methods, apparatuses and systems facilitating classification of web services network traffic |
US7496622B2 (en) * | 2004-03-17 | 2009-02-24 | International Business Machines Corporation | Alternative registry lookup of web services |
US7467399B2 (en) | 2004-03-31 | 2008-12-16 | International Business Machines Corporation | Context-sensitive confidentiality within federated environments |
US9734222B1 (en) | 2004-04-06 | 2017-08-15 | Jpmorgan Chase Bank, N.A. | Methods and systems for using script files to obtain, format and transport data |
US20050222990A1 (en) * | 2004-04-06 | 2005-10-06 | Milne Kenneth T | Methods and systems for using script files to obtain, format and disseminate database information |
US20050228693A1 (en) * | 2004-04-09 | 2005-10-13 | Webb James D | Data exchange web services for medical device systems |
WO2005102016A2 (fr) * | 2004-04-26 | 2005-11-03 | Jp Morgan Chase Bank | Systeme et procede d'acheminement de messages |
JP2007536634A (ja) * | 2004-05-04 | 2007-12-13 | フィッシャー−ローズマウント・システムズ・インコーポレーテッド | プロセス制御システムのためのサービス指向型アーキテクチャ |
US7890604B2 (en) * | 2004-05-07 | 2011-02-15 | Microsoft Corproation | Client-side callbacks to server events |
US20050251380A1 (en) * | 2004-05-10 | 2005-11-10 | Simon Calvert | Designer regions and Interactive control designers |
US9026578B2 (en) * | 2004-05-14 | 2015-05-05 | Microsoft Corporation | Systems and methods for persisting data between web pages |
US7464386B2 (en) * | 2004-05-17 | 2008-12-09 | Microsoft Corporation | Data controls architecture |
US7860874B2 (en) * | 2004-06-08 | 2010-12-28 | Siemens Industry, Inc. | Method for searching across a PLC network |
US8312132B2 (en) * | 2004-08-20 | 2012-11-13 | Core Wireless Licensing S.A.R.L. | Context data in UPNP service information |
WO2006029645A1 (fr) * | 2004-09-17 | 2006-03-23 | Telecom Italia S.P.A. | Procede et systeme d'interaction entre entites sur un reseau de communications |
US7587496B2 (en) | 2004-09-17 | 2009-09-08 | Ricoh Company, Ltd. | Transfer device, distributed processing system, transfer device control method, program, and recording medium |
US20060064468A1 (en) * | 2004-09-20 | 2006-03-23 | Brown K R | Web services interface and object access framework |
US9537768B2 (en) * | 2004-09-30 | 2017-01-03 | Rockwell Automation Technologies, Inc. | System that provides for removal of middleware in an industrial automation environment |
US7483994B1 (en) | 2004-11-01 | 2009-01-27 | Ameriprise Financial, Inc. | System and method for creating a standard envelope structure |
JP4486481B2 (ja) * | 2004-11-19 | 2010-06-23 | 三菱重工業株式会社 | ロガー、ロガーサーバ装置、サーバ装置、並びに稼動状態監視システム |
GB0425860D0 (en) * | 2004-11-25 | 2004-12-29 | Ibm | A method for ensuring the quality of a service in a distributed computing environment |
US8296354B2 (en) * | 2004-12-03 | 2012-10-23 | Microsoft Corporation | Flexibly transferring typed application data |
US20060136489A1 (en) * | 2004-12-17 | 2006-06-22 | Frank Thome | Mapping a semantic model of business collaboration to a web services meta model |
US20060133412A1 (en) * | 2004-12-22 | 2006-06-22 | Rockwell Automation Technologies, Inc. | Integration of control and business applications using integration servers |
DE102005004265B4 (de) * | 2005-01-28 | 2014-11-27 | Phoenix Contact Gmbh & Co. Kg | Verfahren und Vorrichtung zur Vergabe von Netzwerk-Teilnehmergeräteadressen in Profinet-IO Netzwerk |
US7706895B2 (en) * | 2005-02-25 | 2010-04-27 | Rockwell Automation Technologies, Inc. | Reliable messaging instruction |
US7484226B2 (en) * | 2005-03-10 | 2009-01-27 | International Business Machines Corporation | Web client endpoint emulator |
US20060212855A1 (en) * | 2005-03-16 | 2006-09-21 | Bournas Redha M | Methods, systems and computer program products for implementing production processes |
US7453875B2 (en) * | 2005-03-23 | 2008-11-18 | Microsoft Corporation | Querying for services using soap over UDP |
US7233830B1 (en) * | 2005-05-31 | 2007-06-19 | Rockwell Automation Technologies, Inc. | Application and service management for industrial control devices |
KR100664937B1 (ko) * | 2005-07-09 | 2007-01-04 | 삼성전자주식회사 | 복수의 수신노드에게 웹 서비스 메시지를 전송하는 방법 및웹 서비스 메시지 처리 장치 |
KR100840513B1 (ko) | 2005-07-13 | 2008-06-23 | 삼성전자주식회사 | 웹서비스 시스템 및 그 방법 |
JP2007108956A (ja) * | 2005-10-12 | 2007-04-26 | Canon Inc | 通信装置及びその制御方法 |
US8156232B2 (en) | 2005-09-12 | 2012-04-10 | Rockwell Automation Technologies, Inc. | Network communications in an industrial automation environment |
US8078671B2 (en) * | 2005-09-21 | 2011-12-13 | Sap Ag | System and method for dynamic web services descriptor generation using templates |
US20070067388A1 (en) * | 2005-09-21 | 2007-03-22 | Angelov Dimitar V | System and method for configuration to web services descriptor |
US20070073850A1 (en) * | 2005-09-29 | 2007-03-29 | Rockwell Automation Technologies, Inc. | Industrial control device configuration and discovery |
JP2009517735A (ja) * | 2005-11-25 | 2009-04-30 | シーメンス アクチエンゲゼルシヤフト | オートメーションシステムにおけるサーバの作業負荷を軽減するための方法及び装置 |
US8024425B2 (en) * | 2005-12-30 | 2011-09-20 | Sap Ag | Web services deployment |
US8010695B2 (en) * | 2005-12-30 | 2011-08-30 | Sap Ag | Web services archive |
US7814060B2 (en) * | 2005-12-30 | 2010-10-12 | Sap Ag | Apparatus and method for web service client deployment |
US20070156872A1 (en) * | 2005-12-30 | 2007-07-05 | Stoyanova Dimitrina G | Method and system for Web services deployment |
US7908294B2 (en) * | 2006-01-26 | 2011-03-15 | Oracle International Corporation | Interoperable management of application servers |
US7925710B2 (en) * | 2006-01-31 | 2011-04-12 | Microsoft Corporation | Simultaneous API exposure for messages |
US8371932B2 (en) * | 2006-02-07 | 2013-02-12 | Wms Gaming Inc. | Wager gaming network with wireless hotspots |
WO2007092608A2 (fr) * | 2006-02-09 | 2007-08-16 | Wms Gaming Inc. | Système de messages de diffusion de disponibilité de serveur de jeu de pari |
WO2007093061A1 (fr) * | 2006-02-16 | 2007-08-23 | Shoplogix, Inc. | Système et procédé de gestion d'information de fabrication |
US8155142B2 (en) * | 2006-03-16 | 2012-04-10 | Exceptional Innovation Llc | Network based digital access point device |
US8001219B2 (en) * | 2006-03-16 | 2011-08-16 | Exceptional Innovation, Llc | User control interface for convergence and automation system |
US8725845B2 (en) * | 2006-03-16 | 2014-05-13 | Exceptional Innovation Llc | Automation control system having a configuration tool |
US7966083B2 (en) * | 2006-03-16 | 2011-06-21 | Exceptional Innovation Llc | Automation control system having device scripting |
US8209398B2 (en) * | 2006-03-16 | 2012-06-26 | Exceptional Innovation Llc | Internet protocol based media streaming solution |
US8271881B2 (en) * | 2006-04-20 | 2012-09-18 | Exceptional Innovation, Llc | Touch screen for convergence and automation system |
JP2007298056A (ja) * | 2006-04-27 | 2007-11-15 | Tsubakimoto Chain Co | 防食性ローラチェーン |
US8706799B2 (en) * | 2006-05-29 | 2014-04-22 | Sandisk Il Ltd. | Method and apparatus to exchange information with a local storage device |
US7610172B2 (en) * | 2006-06-16 | 2009-10-27 | Jpmorgan Chase Bank, N.A. | Method and system for monitoring non-occurring events |
US8172686B2 (en) | 2006-08-08 | 2012-05-08 | Wms Gaming Inc. | Configurable wagering game manager |
US8776092B2 (en) | 2006-09-29 | 2014-07-08 | Rockwell Automation Technologies, Inc. | Multiple interface support |
US9261877B2 (en) * | 2006-09-29 | 2016-02-16 | Rockwell Automation Technologies, Inc. | Multiple machine interface |
US8732658B2 (en) * | 2006-09-29 | 2014-05-20 | Rockwell Automation Technologies, Inc. | Layered interface in an industrial environment |
US8818757B2 (en) * | 2008-09-30 | 2014-08-26 | Rockwell Automation Technologies, Inc. | Modular object and host matching |
US9058032B2 (en) * | 2006-09-29 | 2015-06-16 | Rockwell Automation Technologies, Inc. | Hosting requirements for services |
US9217998B2 (en) * | 2006-09-29 | 2015-12-22 | Rockwell Automation Technologies, Inc. | Management and development of an industrial environment |
WO2008073658A2 (fr) | 2006-11-09 | 2008-06-19 | Exceptional Innovation, Llc. | Dispositif portatif pour une solution de convergence et d'automatisation |
WO2008065480A1 (fr) * | 2006-11-30 | 2008-06-05 | Freescale Semiconductor, Inc. | Dispositif et procédé permettant de tester un circuit |
GB0714148D0 (en) * | 2007-07-19 | 2007-08-29 | Lipman Steven | interacting toys |
JP2011503682A (ja) * | 2007-10-05 | 2011-01-27 | シュナイダー・エレクトリック・オートメイション・ゲーエムベーハー | 制御プログラムを有する自動化装置ならびに制御プログラムをプログラミングするための方法 |
ES2371587T3 (es) * | 2008-01-30 | 2012-01-05 | Telefonaktiebolaget L M Ericsson (Publ) | Un método y un aparato para conectar nodos cesionarios. |
EP2093676A1 (fr) * | 2008-02-20 | 2009-08-26 | Siemens Aktiengesellschaft | Procédé destiné à générer des modules fonctionnels pour services Web |
FR2928756B1 (fr) * | 2008-03-17 | 2016-02-12 | Schneider Electric Ind Sas | Interface homme machine basee sur le langage xaml |
EP2109020B1 (fr) * | 2008-04-10 | 2012-11-28 | Siemens Aktiengesellschaft | Système d'automatisation et procédé de diagnostic, adaptation ou optimisation d'un appareil d'automatisation |
KR101036861B1 (ko) | 2008-05-29 | 2011-05-25 | 한국산업기술평가관리원 | 예상되는 사용 정보로 확장된 서비스 기술정보 |
JP2010028509A (ja) * | 2008-07-22 | 2010-02-04 | Kyocera Mita Corp | 画像形成システム、画像形成装置およびコンピュータプログラム |
US20100106867A1 (en) * | 2008-10-23 | 2010-04-29 | Hewlett-Packard Development Company, L.P. | Remote control device communication through translation into hid packets |
DE102008062934A1 (de) * | 2008-12-23 | 2010-06-24 | Kuka Roboter Gmbh | Vernetzte Industriesteuerung und Verfahren zum Wechsel des Betriebsmodus einer solchen Industriesteuerung |
US9253020B2 (en) * | 2009-06-11 | 2016-02-02 | International Business Machines Corporation | Web service interaction in a dynamically extensible business application |
US9043409B2 (en) | 2009-06-11 | 2015-05-26 | Qualcomm Incorporated | Methods and apparatus for a plug-in model for publishing structured meta-data based discovery |
US8655830B2 (en) * | 2009-10-06 | 2014-02-18 | Johnson Controls Technology Company | Systems and methods for reporting a cause of an event or equipment state using causal relationship models in a building management system |
US20110087650A1 (en) * | 2009-10-06 | 2011-04-14 | Johnson Controls Technology Company | Creation and use of causal relationship models in building management systems and applications |
US9475359B2 (en) * | 2009-10-06 | 2016-10-25 | Johnson Controls Technology Company | Systems and methods for displaying a hierarchical set of building management system information |
US8682921B2 (en) | 2010-07-07 | 2014-03-25 | Johnson Controls Technology Company | Query engine for building management systems |
US8516016B2 (en) | 2010-07-07 | 2013-08-20 | Johnson Controls Technology Company | Systems and methods for facilitating communication between a plurality of building automation subsystems |
KR101806288B1 (ko) * | 2010-09-17 | 2017-12-08 | 삼성전자주식회사 | 위젯 환경 구축 방법 및 그 장치 |
US8566702B2 (en) * | 2010-09-20 | 2013-10-22 | Blackberry Limited | Methods and systems of outputting content of interest |
KR101756704B1 (ko) * | 2010-10-27 | 2017-07-11 | 삼성전자주식회사 | 이동통신 시스템에서 soap 메시지 전송 방법 및 장치 |
US9021017B2 (en) * | 2011-09-03 | 2015-04-28 | Barracuda Networks, Inc. | Configuring a plurality of diverse devices/services from an adaptive configuration control hyper-server apparatus |
US9477936B2 (en) | 2012-02-09 | 2016-10-25 | Rockwell Automation Technologies, Inc. | Cloud-based operator interface for industrial automation |
GB2509723A (en) * | 2013-01-10 | 2014-07-16 | Ibm | Invoking web services that are determined at the time of execution |
US9786197B2 (en) | 2013-05-09 | 2017-10-10 | Rockwell Automation Technologies, Inc. | Using cloud-based data to facilitate enhancing performance in connection with an industrial automation system |
US9709978B2 (en) | 2013-05-09 | 2017-07-18 | Rockwell Automation Technologies, Inc. | Using cloud-based data for virtualization of an industrial automation environment with information overlays |
US9989958B2 (en) | 2013-05-09 | 2018-06-05 | Rockwell Automation Technologies, Inc. | Using cloud-based data for virtualization of an industrial automation environment |
US10026049B2 (en) | 2013-05-09 | 2018-07-17 | Rockwell Automation Technologies, Inc. | Risk assessment for industrial systems using big data |
US9438648B2 (en) | 2013-05-09 | 2016-09-06 | Rockwell Automation Technologies, Inc. | Industrial data analytics in a cloud platform |
US9703902B2 (en) | 2013-05-09 | 2017-07-11 | Rockwell Automation Technologies, Inc. | Using cloud-based data for industrial simulation |
US11243505B2 (en) | 2015-03-16 | 2022-02-08 | Rockwell Automation Technologies, Inc. | Cloud-based analytics for industrial automation |
US11042131B2 (en) | 2015-03-16 | 2021-06-22 | Rockwell Automation Technologies, Inc. | Backup of an industrial automation plant in the cloud |
US10496061B2 (en) | 2015-03-16 | 2019-12-03 | Rockwell Automation Technologies, Inc. | Modeling of an industrial automation environment in the cloud |
US11513477B2 (en) | 2015-03-16 | 2022-11-29 | Rockwell Automation Technologies, Inc. | Cloud-based industrial controller |
CN106773865A (zh) * | 2017-01-06 | 2017-05-31 | 大连理工大学 | 一种智能现场链路器 |
US11184236B2 (en) | 2019-04-30 | 2021-11-23 | Intel Corporation | Methods and apparatus to control processing of telemetry data at an edge platform |
US11374776B2 (en) | 2019-09-28 | 2022-06-28 | Intel Corporation | Adaptive dataflow transformation in edge computing environments |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5367520A (en) | 1992-11-25 | 1994-11-22 | Bell Communcations Research, Inc. | Method and system for routing cells in an ATM switch |
US5918051A (en) * | 1995-07-19 | 1999-06-29 | Ricoh Company, Ltd. | Object-oriented communication system with support for multiple remote machine types |
US5732261A (en) * | 1995-07-19 | 1998-03-24 | Ricoh Company, Ltd. | Method of using an object-oriented communication system with support for multiple remote machine types |
JPH1185651A (ja) * | 1997-09-01 | 1999-03-30 | Yamatake Honeywell Co Ltd | 通信インタフェース装置及び対象機器並びに通信方法 |
US6732191B1 (en) * | 1997-09-10 | 2004-05-04 | Schneider Automation Inc. | Web interface to an input/output device |
US6282454B1 (en) * | 1997-09-10 | 2001-08-28 | Schneider Automation Inc. | Web interface to a programmable controller |
US6457066B1 (en) * | 1997-11-10 | 2002-09-24 | Microsoft Corporation | Simple object access protocol |
JPH11146466A (ja) * | 1997-11-11 | 1999-05-28 | Toshiba Corp | プラント監視制御システム |
JP3151429B2 (ja) * | 1997-12-25 | 2001-04-03 | 株式会社東芝 | 電力系統監視制御装置とこの装置を実行するためのプログラムを記憶した記憶媒体 |
JPH11238084A (ja) * | 1998-02-24 | 1999-08-31 | Mitsubishi Electric Corp | プロセス制御装置のオブジェクト指向開発方法 |
US6201996B1 (en) * | 1998-05-29 | 2001-03-13 | Control Technology Corporationa | Object-oriented programmable industrial controller with distributed interface architecture |
FR2781583B1 (fr) * | 1998-07-22 | 2000-12-01 | Cegelec | Architecture de communication pour systeme industriel de conduite de procede et unite programmee correspondante |
FR2781895B1 (fr) * | 1998-07-28 | 2001-11-30 | Cegelec | Procede de mise a jour de valeurs caracteristiques implantees dans une unite d'exploitation programmable d'un systeme industriel de conduite |
US6308205B1 (en) * | 1998-10-22 | 2001-10-23 | Canon Kabushiki Kaisha | Browser-based network management allowing administrators to use web browser on user's workstation to view and update configuration of network devices |
AU5728500A (en) * | 1999-06-11 | 2001-01-02 | Microsoft Corporation | Data driven remote device control model with general programming interface-to-network messaging adapter |
US6591260B1 (en) * | 2000-01-28 | 2003-07-08 | Commerce One Operations, Inc. | Method of retrieving schemas for interpreting documents in an electronic commerce system |
FR2805425B1 (fr) * | 2000-02-21 | 2003-09-19 | Schneider Automation | Systeme de communication entre un automate programmable serveur et une machine cliente |
US6732175B1 (en) * | 2000-04-13 | 2004-05-04 | Intel Corporation | Network apparatus for switching based on content of application data |
US6792466B1 (en) * | 2000-05-09 | 2004-09-14 | Sun Microsystems, Inc. | Trusted construction of message endpoints in a distributed computing environment |
US7136913B2 (en) * | 2000-05-31 | 2006-11-14 | Lab 7 Networks, Inc. | Object oriented communication among platform independent systems across a firewall over the internet using HTTP-SOAP |
FR2811183B1 (fr) * | 2000-06-30 | 2006-09-01 | Schneider Automation | Bloc fonction web dans un equipement d'automatisme |
US6961633B1 (en) * | 2000-11-13 | 2005-11-01 | Schneider Automation Inc. | Remote monitoring of factory automation users |
US20020069222A1 (en) * | 2000-12-01 | 2002-06-06 | Wiznet, Inc. | System and method for placing active tags in HTML document |
US6442451B1 (en) * | 2000-12-28 | 2002-08-27 | Robotic Workspace Technologies, Inc. | Versatile robot control system |
US6801813B2 (en) * | 2001-07-30 | 2004-10-05 | Rockwell Automation Technologies, Inc. | Method for consistent storage of data in an industrial controller |
US6725104B2 (en) * | 2001-09-21 | 2004-04-20 | Siemens Aktiengesellschaft | Method and apparatus for E-mail based communication with automated facilities and devices |
-
2000
- 2000-08-31 FR FR0011320A patent/FR2813471B1/fr not_active Expired - Fee Related
-
2001
- 2001-08-27 CA CA002357408A patent/CA2357408A1/fr not_active Abandoned
- 2001-08-27 CA CA2357409A patent/CA2357409C/fr not_active Expired - Fee Related
- 2001-08-27 EP EP01402226.3A patent/EP1193948B1/fr not_active Expired - Lifetime
- 2001-08-29 US US09/940,573 patent/US7159007B2/en not_active Expired - Fee Related
- 2001-08-29 US US09/940,462 patent/US7366752B2/en not_active Expired - Fee Related
- 2001-08-30 ES ES01402225T patent/ES2258065T3/es not_active Expired - Lifetime
- 2001-08-30 DE DE60118487T patent/DE60118487T2/de not_active Revoked
- 2001-08-30 EP EP01402225A patent/EP1193947B1/fr not_active Revoked
- 2001-08-31 JP JP2001264325A patent/JP2002215486A/ja active Pending
- 2001-08-31 JP JP2001264275A patent/JP2002223211A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
ES2258065T3 (es) | 2006-08-16 |
DE60118487T2 (de) | 2006-11-02 |
EP1193948A3 (fr) | 2003-06-25 |
FR2813471A1 (fr) | 2002-03-01 |
DE60118487D1 (de) | 2006-05-18 |
US7159007B2 (en) | 2007-01-02 |
US20020174178A1 (en) | 2002-11-21 |
US20020046239A1 (en) | 2002-04-18 |
JP2002223211A (ja) | 2002-08-09 |
EP1193948B1 (fr) | 2014-11-05 |
CA2357409A1 (fr) | 2002-02-28 |
EP1193947A2 (fr) | 2002-04-03 |
JP2002215486A (ja) | 2002-08-02 |
US7366752B2 (en) | 2008-04-29 |
EP1193947B1 (fr) | 2006-04-05 |
EP1193947A3 (fr) | 2003-06-25 |
FR2813471B1 (fr) | 2002-12-20 |
EP1193948A2 (fr) | 2002-04-03 |
CA2357408A1 (fr) | 2002-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2357409C (fr) | Systeme de communication d'un equipement d'automatisme base sur le langage wsdl | |
US10331422B1 (en) | System and method for generating API devlopment code for integrating platforms | |
EP1168768B1 (fr) | Bloc fonction WEB dans un équipement d'automatisme. | |
US8065657B2 (en) | Exchange infrastructure system and method | |
US20040068554A1 (en) | Web service-enabled portlet wizard | |
JP2006501558A (ja) | ウェブ・アプリケーション用のウェブ・ページのセッションをユーザに表示する装置と方法 | |
AU2022209333A1 (en) | System and method for generating api development code for integrating platforms | |
EP1969461A1 (fr) | Systeme et procede pour le deploiement d'applications web personnalisees | |
US20070033213A1 (en) | Methods and systems for merging software-level objects with document-level objects in a document publishing environment | |
EP1139636A2 (fr) | Système d'accès à un ensemble d'automatisme programmable basé sur une architecture WAP | |
CA2481099C (fr) | Procede et systeme d'infrastructure d'echange | |
Gashti | Investigating SOAP and XML technologies in Web Service | |
US20060047781A1 (en) | Method and system for providing remote portal service modules | |
Cerami | Top ten FAQs for Web services | |
KR100510040B1 (ko) | 에이전트 기반의 지능형 웹 서비스 게이트웨이 시스템 및그 운용방법 | |
Pierce et al. | Application web services | |
Srirama et al. | Concept, implementation and performance testing of a mobile Web Service provider for smart phones | |
Dabhi et al. | Developing Enterprise Solution with Web Services Integration | |
KR20060012920A (ko) | 기업용 무선 어플리케이션 서비스 시스템 및 운용방법 | |
Sward | Using ada in a service-Ooriented architecture | |
EP1853040A1 (fr) | Système de communication et terminaux de visualisation à basse consommation convenant à un tel système | |
Martin-Flatin et al. | Technical Report DataTAG-2003-1 FP5/IST DataTAG Project | |
Farrell | Core Standards | |
Mtshali | INTEGRATING DISTRIBUTED PROCESSES USING THE SOAP PROTOCOL | |
WO2004077199A2 (fr) | Dispositif et procede de mise en communication de modules de mise en œuvre d’un bouquet de services et plate-forme de mise en œuvre d’un bouquet de services correspondante |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKLA | Lapsed |
Effective date: 20170828 |