DE60207155T2 - Objektorientiertes Internetschnittstellensystem für eine industrielle Steuereinrichtung - Google Patents

Objektorientiertes Internetschnittstellensystem für eine industrielle Steuereinrichtung Download PDF

Info

Publication number
DE60207155T2
DE60207155T2 DE60207155T DE60207155T DE60207155T2 DE 60207155 T2 DE60207155 T2 DE 60207155T2 DE 60207155 T DE60207155 T DE 60207155T DE 60207155 T DE60207155 T DE 60207155T DE 60207155 T2 DE60207155 T2 DE 60207155T2
Authority
DE
Germany
Prior art keywords
web server
interface program
objects
interface
program
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 - Lifetime
Application number
DE60207155T
Other languages
English (en)
Other versions
DE60207155D1 (de
Inventor
Jayme Mukwonago Edwards
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Rockwell Software Inc
Original Assignee
Rockwell Software Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=25419989&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE60207155(T2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Rockwell Software Inc filed Critical Rockwell Software Inc
Publication of DE60207155D1 publication Critical patent/DE60207155D1/de
Application granted granted Critical
Publication of DE60207155T2 publication Critical patent/DE60207155T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31161Java programcode or simular active agents, programs, applets
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31196SOAP, describes available services and how to call them remotely
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31422Upload, download programs, parameters from, to station to, from server
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32126Hyperlink, access to program modules and to hardware modules in www, web server, browser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34038Web, http, ftp, internet, intranet server

Description

  • Die vorliegende Erfindung betrifft allgemein Controller für Industrieprozesse, und insbesondere betrifft sie eine Mensch-Maschinen-Schnittstelle für einen derartigen Controller unter Verwendung eines Web-Browser-Programms.
  • Industrielle Controller sind Spezialzweckcomputer, die zur Steuerung industrieller Prozesse und dergleichen verwendet werden. Während sie ein abgespeichertes Steuerprogramm ausführen, lesen sie Eingaben bzw. Eingangssignale von dem gesteuerten Prozess und stellen über die Logik des Steuerprogramms Ausgaben bzw. Ausgangssignale für den gesteuerten Prozess bereit.
  • Industrielle Controller unterscheiden sich von konventionellen Computern in zwei hauptsächlichen Belangen. Zunächst erlaubt es die Architektur des industriellen Controllers, dass er problemlos neu konfiguriert werden kann, um den Anforderungen an den speziellen, zu steuernden Prozess zu entsprechen. Normalerweise liegt der industrielle Logikcontroller in modularer Form vor und der Nutzer wählt verschiedene Module, die in einem Gestell zusammengebaut und miteinander auf einer Backplane bzw. Rückseitenebene in dem Gestell verbunden werden. Verschiedene Anzahlen von Eingängen und Ausgängen sind mit dem Eingangs-/Ausgangs(I/O)-modulen verbunden, die ebenfalls in dem Gestell oder in einem entfernten Gestell vorgesehen werden können, das mit dem ersten Gestell über ein Steuernetzwerk verbunden ist.
  • Die Anpassbarkeit es industriellen Controllers an den gesteuerten Prozess wird außerdem durch von Kunden geschriebene Programmen ermöglicht, die auf dem industriellen Controller ausgeführt werden, wobei beide zur Steuerung des industriellen Prozesses dienen und zum Bereitstellen von Mensch-Maschinen-Schnittstellen (HMIs), die häufig eine grafische Darstellung des gesamten oder eines Teils des Prozesses anzeigen, die animiert ist, um den aktuellen Betriebszustand zu zeigen.
  • Industrielle Controller unterscheiden sich häufig von herkömmlichen Computern insofern, als sie hohe Zuverlässigkeit und einen voraussagbaren Betrieb gewährleisten müssen. Um dies zu erreichen, werden Kommunikationen bzw. Verbindungen zwischen dem industriellen Controller und dem I/O sorgfältig geregelt, beispielsweise indem sie maximalen Reaktionszeiten unterworfen und auf Fehler überwacht werden.
  • Mitunter kann es erwünscht sein, einen industriellen Prozess zu überwachen oder zu steuern ausgehend von einem Ort, der von dem industriellen Controller und dem Prozess selbst entfernt zu liegen kommt. Derartige entfernt stattfindende Operationen sind an sich bekannt, beispielsweise unter Verwendung spezieller Telefonleitungen und firmeneigener Kommunikationsprotokolle zwischen dem industriellen Controller und einem entfernten HMI. Durch die Entwicklung des Internet und des World Wide Web können Telefonleitungen durch Internet basierte Kommunikationen zwischen einem entfernt positionierten Programm und einem Webserver ersetzt werden, der mit dem industriellen Controller kommuniziert oder in diesem enthalten ist. Der Vorteil des Web besteht darin, dass ein beliebiger, mit dem Internet verbundener Computer zu einem entfernt posi tionierten Terminal für einen industriellen Controller werden kann.
  • Ein weit verbreiteter Einsatz eines Internet-basierten, entfernt stattfindenden Betriebs industrieller Controller wird durch die Notwendigkeit behindert, eine spezielle Software für den entfernten Computer auszuführen, die es ihm erlaubt, mit dem industriellen Controller zu kommunizieren. Beispielsweise komplexe grafische, entfernt positionierte Mensch-Maschinen-Schnittstellen implementierende Programme können so umfangreich sein, dass es mühsam ist, sie zu transportieren und an der entfernten Maschine zu installieren. Die Softwarewartung zahlreicher dieser entfernten Programme ist extrem schwierig, von denen jedes für einen speziellen industriellen Controller kundenspezifisch zugeschnitten sein kann.
  • Eine Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren zum Durchführen komplexer entfernt stattfindender Betriebsabläufe mit einem gewöhnlichen industriellen Controller ausgehend von potentiell einem beliebigen, browserfähigem Computer irgendwo in der Welt über das Internet bereitzustellen.
  • Gelöst wird diese Aufgabe durch den Gegenstand des unabhängigen Anspruchs. Vorteilhafte Weiterbildungen sind in den Unteransprüchen festgelegt.
  • Die US-B1-6201996 und die EP-A-0825506 offenbaren Steuersystemschnittstellen in Übereinstimmung mit dem Oberbegriff des Anspruchs 1. In der EP-A-0825506 wird der Wert von Objekten beschrieben und erkannt zum Programmieren von Schnittstellen zwischen einem entfernt positionierten Browser und einem webfähigen, programmierbaren Logikcontroller. Wenn ein Applet durch einen Namen einen Zugriff auf ein Objekt anfordert, sendet der Objektservermanager die Zugriffanforderung an sämtliche Stationen in dem Fall, dass der Objektmanager den Ort des Objekts nicht kennt. Die US-B1-6201996 offenbart einen webfähigen, programmierbaren Logikcontroller, der eine Reihe von Softwareobjekten zur Unterstützung eines Programmierers bei der Erzeugung eines Interface bereitstellt. Die Systeme in Übereinstimmung mit den beiden vorstehend genannten Druckschriften benötigen ein Applet, das serverseitig unter Verwendung eines feststehenden und vorbestimmten Satzes von Objekten konfiguriert ist, auf die durch das Applet Bezug genommen wird.
  • In einer bevorzugten praktischen Ausführungsform der Erfindung ist das entfernte Programm auf ein Applet reduziert, das in den entfernten Computer rasch heruntergeladen werden kann. Das Applet implementiert ein Interface, das es ihm erlaubt, eine große Anzahl von Softwareobjekten aufzurufen, die in dem Webserver bevorratet sind, der mit dem industriellen Controller verbunden ist. Das Applet kann diese Objekte entdecken, konstruieren und nutzen, beispielsweise bei der Erzeugung eines komplexen grafischen HMI, während ein kleiner Fußabdruck in dem entfernten Computer aufrecht erhalten bleibt. Ein Persistenzmerkmal erlaubt es, dass instanziierte Objekte auf dem Webserver für den nächsten Zeitpunkt gespeichert werden, zu dem das Applet verbindet.
  • Insbesondere stellt die vorliegende Erfindung ein Verfahren bereit, das die Merkmale des Anspruchs 1 umfasst.
  • Damit besteht eine Aufgabe der Erfindung darin, die Entwicklung leistungsfähiger entfernt positionierter Schnittstellen mit einem industriellen Controller bereitzustellen, die an den gesteuerten Prozess kundenspezifisch anpassbar sind, die jedoch ebenfalls rasch unter Verwendung bereits existierender Softwareobjekte entwickelbar sind, die für den speziellen industriellen Controller geeignet sind.
  • Das Protokoll stellt für die Kommunikation Instruktionen zwischen dem ersten Schnittstellenprogramm und dem zweiten Schnittstellenprogramm unter Verwendung eines SOAP-Protokolls bereit. Mehrere Instruktionen können in einer einzigen SOAP-Protokollmitteilung übertragen werden.
  • Eine weitere Aufgabe der Erfindung besteht demnach darin, ein Kommunikationsprotokoll bereitzustellen, das sich einer vollständigen Web-Kompatibilität erfreut. Das SOAP-Protokoll erlaubt es, dass Kundeninstruktionen problemlos und effizient durch einen Standard-Webserver zu einer ihnen unterliegenden industriellen Steueranwendung geleitet werden können.
  • Das Applet kann die Java-Programmiersprache nutzen.
  • Eine weitere Aufgabe der Erfindung besteht darin, ein entferntes Betriebsprogramm bereitzustellen, das in virtuell jedem browserfähigen Computer ungeachtet der Architektur oder dem Betriebssystem laufen kann. Ein Java-Applet kann auf jedem Computer ausgeführt werden, der eine Java-Virtual-Machine implementieren kann, wie sie beispielsweise in die führenden Browserprogramme eingebaut ist.
  • Das Protokoll kann zumindest eine der folgenden Instruktionen bereitstellen: (a) Eine Erkundungsinstruktion (Discovery Instruction), die vom ersten Schnittstellenprogramm übertragen wird und das zweite Schnittstellenprogramm veranlasst, eine Liste von Eigenschaften der Softwareobjekte bereitzustellen, (b) eine Konstruktorinstruktion (Constructor Instruction), die eine momentane Existenz (Instance) eines Softwareobjekts auf dem Webserver erzeugt, (c) eine Einstellfähigkeitsinstruktion (Set Property Instruction), die eine Fähigkeit (Property) eines Softwareobjekts auf dem Webserver einstellt, (d) eine Aufrufinstruktion (Invocation Instruction) zum Aufrufen (Invocation) eines Verfahrens eines Softwareobjekts auf dem Webserver, (e) eine Ereignisindizierungsinstruktion (Event Subscription Instruction), die den Empfang durch das erste Schnittstellenprogramm von Ereignismitteilungen von dem Softwareobjekt auf dem Webserver empfängt, und zumindest eine Haltbarkeitsinstruktion (Persistence Instruction), die eine momentane Existenz eines Softwareobjekts auf dem Webserver während einer Beendigung einer Kommunikationssitzung auf dem Internet zwischen dem entfernten Computer und dem Webserver haltbar macht.
  • Eine weitere Aufgabe der Erfindung besteht demnach darin, Objekte haltbar zu machen, die in der entfernten Schnittstelle verwendet werden, um eine praxisgerechte schnelle Schnittstelle von dem entfernten Computer bereitzustellen.
  • Die Erfindung kann die Schritte umfassen: (a) Verbinden des entfernten Computers über ein Web-Browserprogramm mit einer Webseite, die das erste Schnittstellenprogramm bereitstellt, (b) Lesen des ersten Schnittstellenprogramms in den entfernten Computer und Ausführen des Programms auf dem entfernten Computer, und (c) Verbinden des Web-Browserprogramms mit dem Webserver, der mit dem industriellen Steuersystem in Verbindung steht.
  • Eine Aufgabe der Erfindung besteht demnach darin, einen beliebigen browserfähigen Computer in die Lage zu versetzen, auf das Internet zuzugreifen, um eine Schnittstelle mit einem industriellen Steuersystem bereitzustellen, ohne dass ein Nutzer eine Kopie des entfernten Schnittstellenprogramms ausführen muss. Eine weitere Aufgabe der Erfindung besteht darin, eine Modifikation des entfernten Schnittstellenprogramms zu ermöglichen, damit dieses problemlos zu zahlreichen entfernten Nutzern selbst für unterschiedliche industrielle Controller verteilt werden kann. Das entfernt positionierte Schnittstellenprogramm kann für sämtliche Nutzer von einem Ort oder von einer begrenzten Anzahl von Orten immer dann heruntergeladen werden, wenn es benötigt wird.
  • Die vorstehend genannten Aufgaben und Vorteile können nicht auf sämtliche Ausführungsformen der Erfindung zutreffen und es ist nicht beabsichtigt, dass sie deren Umfang festlegen, für welchen Zweck die Ansprüche dienen. In der nachfolgenden Beschreibung wird auf die anliegenden Zeichnungen Bezug genommen, die einen Teil von ihr bilden, und in denen zu Illustrationszwecken eine bevorzugte Ausführungsform der Erfindung gezeigt ist. Diese Ausführungsform legt ebenfalls nicht den Umfang fest, für welchen Zweck auf die Ansprüche Bezug genommen werden muss.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt ein vereinfachtes Blockdiagramm einer Internetverbindung zwischen einem entfernten Browser und zwei Servern, von denen ein erster ein HMI-Applet enthält, und von denen ein zweiter eine Schnittstelle mit einem industriellen Controller bereitstellt
  • 2 zeigt ein Flussdiagramm der Verbindung des Browsers mit dem industriellen Controller zur Implementierung eines HMI;
  • 3 zeigt ein detailliertes Blockdiagramm von Softwarekomponenten des Browsers und des Servers unter Darstellung von Strukturen innerhalb des Servers zur Implementierung eines Objekt-basierten Schnittstellenprotokolls sowie ihre Verbindungen mit einem externen industriellen Controller;
  • 4 zeigt eine grafische Darstellung von einem der Objekte des Servers von 3 unter Darstellung seiner Eigenschaften, Verfahren und Ereignisse;
  • 5 zeigt ein vereinfachtes Beispiel eines industriellen Prozesses, umfassend ein Förderband unter Darstellung eines Ausgangsobjekts zur Betätigung des Förderbands in einem Eingangsobjekt zum Messen des Vorbeilassens von Objekten auf dem Förderband;
  • 6 zeigt eine ähnliche grafische Darstellung wie 4 unter Darstellung der Konstruktion eines Objekts, das von dem Eingangs- und Ausgangsobjekten von 5 Gebrauch macht;
  • 7 zeigt ein Flussdiagramm der Übertragung von Instruktionen von dem entfernten Terminal zu dem Server; und
  • 8 zeigt ein grafisches Anzeigeobjekt, das durch die vorliegende Erfindung implementiert sein kann.
  • DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
  • Unter Bezug auf 1 wird die vorliegende Erfindung nunmehr im Zusammenhang mit einer Mensch-Maschinen-Schnittstelle (HMI) erläutert, die auf einem browserfähigen entfernten Computer 10 implementierbar ist. Die Erfindung ist allgemein anwendbar auf andere entfernt stattfindende Betriebsabläufe, die eine Schnittstelle zu einem industriellen Steuersystem oder über das Internet erfordern.
  • Wie in 3 gezeigt, umfasst der entfernt positionierte Computer 10 einen Anzeigbildschirm 44 und eine Nutzereingabeeinrichtung 46, wie etwa eine Tastatur, die mit einem Prozessorsystem 48 kommuniziert, das abgespeicherte Programme 49 ausführt. Typischerweise enthalten die Programme 49 ein Betriebssystem 52, wie etwa das Windows-NT-Betriebssystem der Microsoft Corporation, Redmond, Washington. Die Programme 49 umfassen außerdem einen Browser 50, der eine Java-Virtual-Machine (JVM) implementiert, wie etwa den Internet-Explorer, der kommerziell von Microsoft erhältlich ist.
  • Der entfernt positionierte Computer 10 kann eine auf einem Schreibtisch genutzte Maschine sein, wie gezeigt, oder ein Laptop, ein Palmtop oder eine andere browserfähige Recheneinrichtung.
  • Der entfernte Computer 10 kann über eine Internetverbindung 12, bei der es sich um eine standardgemäße Telefonleitung oder eine drahtfreie Verbindung oder ein funktionell äquivalentes Medium handeln kann, mit dem Internet 20 kommunizieren, wobei diese Kommunikationen mit einem Webserver 26 (nur in 1 gezeigt) und einem Webserver 16 erstellt wird durch ein standardmäßiges Internetprotokoll, das auf diesem Gebiet der Technik bekannt ist. Der Webserver 16 kommuniziert seinerseits mit einem industriellen Controller 14, der dahingehend betrieben ist, einen industriellen Prozess 41 durch Eingänge und Ausgänge 39 zu steuern. Die Webserver 16 und 26 können beispielsweise Server mit standardmäßiger Architektur sein, die Apache-Serversoftware unter dem Linux-Betriebssystem ausführen, die beide kommerziell erhältlich sind als Distributionen von einer Anzahl von Quellen, einschließlich RedHat Software, Durham, North Carolina.
  • Insbesondere unter Bezug auf 3 führt der Webserver 16 das Betriebssystem 56 (wie etwa Linux) und Serversoftware 60 (wie etwa Apache) aus, um eine oder mehrere vorab definierte Webseiten 24 zu serven, wie nachfolgend erläutert. Die Serversoftware 60 enthält ein Modul, das die Nutzung des Simple Object Access Protocol (SOAP) erlaubt, das durch den Apache-Server implementiert ist, und beispielsweise die Übertragung von objektorientierten Instruktionen erlaubt, wie nachfolgend erläutert, unter Verwendung des Hypertext Transfer Protocol, dem standardgemäßen Webprotokoll, das auf diesem Gebiet der Technik bekannt ist. Der Webserver 16 hält außerdem in seinem Speicher 27 einen dauerhaften Speicherbereich 42, in dem zur Rückgewinnung von dauerhaften Objekten 38 notwendige Parameter gespeichert sein können.
  • Üblicherweise werden die objektorientierten Instruktionen durch die Serversoftware 60 einem Parser 62 zugeleitet, der Teil der vorliegenden Erfindung bildet, und die objektorientierten Instruktionen dem serverseitigen HMI-Programm 37 bereitstellt (wie nachfolgend erläutert), das grundsätzliche Objektmanipulationen bewirkt, einschließlich einer Instanzi ierung neuer Objekte und den Aufruf von Objektverfahren und die Übertragung von Objektereignissen.
  • Der Parser 62 liest üblicherweise den Namen der objektorientierten Instruktionen, die in der Einkapselung einer SOAP-Hülle 35 enthalten sind, und leitet diese zu einer Anzahl von Objektschnittstellenprogrammen 36, die das serverseitige HMI-Programm 37 ausmachen. Die SOAP-Hülle kann mehrere Instruktionen enthalten und die Aufrufanordnung der Instruktionen kann sequenziell oder verschachtelt sein (und die Rückführung von einem Aufruf ermöglichen, der als Kontext für einen weiteren benutzt wird), oder eine Kombination aus beiden Möglichkeiten.
  • Das spezielle Objektschnittstellenprogramm 36, das die Instruktion empfängt, wird in Übereinstimmung mit dem Instruktionsnamen und den standardmäßigen Sprachen-Parser-Techniken ermittelt, die auf diesem Gebiet der Technik bekannt sind. Die objektorientierten Instruktionen fallen in die Kategorien der Objekterkennung, der Objekthaltbarkeit, der Objektkonstruktoren und einem Objektzugang, jeweils angezeigt durch ein separates Anwendungsprogramm. Allgemeiner gesagt, beziehen sich die objektorientierten Instruktionen auf die Objekte 38 in Übereinstimmung mit an sich bekannten, objektorientierten Techniken und laufen auf diesen ab. Üblicherweise ist den Objektschnittstellenprogrammen 36 ein universeller Ressourcenindikator (URI) 39 zugeordnet und dieser legt dadurch einen Endpunkt fest.
  • Die Objekte 38, die durch die Objektschnittstellenprogramme 36 erzeugt und manipuliert werden, und zwar durch die objektorientierten Instruktionen, die von dem entfernten Computer 10 empfangen werden, sind durch ein Kommunikationsprogramm 64 mit dem industriellen Controller 14 derart verbunden bzw. verknüpft, dass die Objekte 38 als Pfad zum Lesen und Schreiben der Eingangssignale und Ausgangssignale 39 des industriellen Prozesses 41 genutzt werden können. In diesem Hinblick dienen die Objekte 38 zum Verkapseln von Eingangs- und Ausgangsdaten; andere Objekte 38, die nicht direkt auf die Daten bezogen sind, beispielsweise Grafikobjekte mit beliebigem Eingangssignal, sind jedoch ebenfalls in Betracht zu ziehen.
  • Wie in 1, 2 und 3 gezeigt, instruiert ein Nutzer, der eine HMI mit einem industriellen Controller 14 öffnen möchte, zunächst den Browser 50, der auf dem entfernten Computer 10 ausgeführt wird, um mit dem Webserver 16 Verbindung aufzunehmen, der mit dem industriellen Controller 14 kommuniziert, wie durch den Prozessblock 22 in 2 gezeigt. Die Verbindung kann über das Internet 20 durch Bereitstellen der universellen Ressourcenlokator(URL)-adresse für den Browser 50 erfolgen, der mit einem Webserver 16 verbunden ist.
  • In Reaktion auf diese Verbindung wird eine Webseite 24 entsprechend der URL durch den Webserver 16 bedient bzw. geservt. In einer bevorzugten Ausführungsform der Erfindung richtet die Webseite 24 den Browser 50 auf dem entfernten Computer 10 durch das Internet 20 zu einer zweiten Webseite 28 auf dem Webserver 26, der eine URL aufweist, die sich von derjenigen der Webseite 24 unterscheidet. Dieses erneute Richten bzw. diese Redirektion ist in 1 durch einen punktierten Pfeil 25 bezeichnet.
  • Die Webseite 28 enthält ein Appletprogramm 30, das beispielsweise in der Java-Sprache geschrieben sein kann, verbreitet durch Sun Microsystems, Palo Alto, Kalifornien, und das an sich bekannt ist. Das Appletprogramm 30 in Übereinstimmung mit den standardmäßigen Webprotokollen wird in den Browser 50 des entfernten Computers 10 geladen, um unter dem Browser 50 ausgeführt zu werden, wie durch den Prozessblock 32 von 2 gezeigt. In einer alternativen Ausführungsform kann die Redirektion entlang dem Pfeil 25 zu einer anderen Webseite auf dem Webserver 16 erfolgen; dies schließt jedoch den Vorteil einer zentralisierten Verteilung des Appletprogramms 30 aus, wie aus der nachfolgenden Beschreibung hervorgeht. Eine Ausführung des Appletprogramms 30, wie durch den Prozessblock 34 von 2 bezeichnet, veranlasst den Browser dazu, Daten mit dem Webserver 16 unter Verwendung des SOAP-Protokolls zum Austausch von objektorientierten Instruktionen innerhalb der Einkapselung einer SOAP-Hülle 35 auszutauschen.
  • Wie in 4 gezeigt, stellt das serverseitige HMI-Programm 37 einen Standardsatz vorkonfigurierter I/O-Objekte bereit, die physikalische Ein- und Ausgangssignale 39 des industriellen Controllers 14 ver- bzw. einkapseln. Beispielsweise kann das Ausgangsobjekt 38' ein binäres Ausgangssignal entsprechend einem Ausgang bzw. Ausgangssignal 39 des industriellen Controllers 14 bereitstellen, das beispielsweise eine spezielle Einrichtung in dem industriellen Prozess 41 steuern kann. Als standardmäßige Objektkonvention stellt das Objekt 38' eine Anzahl von Eigenschaften 66 bereit, die Variable darstellen, die den Zustand des Objekts 38' beeinflussen. In diesem Beispiel eines binären Ausgangsobjekts 38' wird lediglich eine einzige Eigenschaft bereitgestellt, die entweder anzeigt, dass der Ausgang bzw. das Ausgangssignal EIN bzw. ON (d. h., WAHR oder HOCH bzw. TRUE oder HIGH) oder OFF bzw. AUS (d. h., FALSCH oder NIEDRIG bzw. FALSE oder LOW) ist. Wie durch die Tätigkeit des Kommunikationsprogramms 64 (in 3 gezeigt) erläutert, kann diese Zustandseigenschaft 66 in den entsprechenden Ausgang 39, der mit dem industriellen Controller 14 verbunden ist, geschrieben oder aus diesem gelesen werden, um den entsprechenden Ausgang 39 zu offenbaren oder zu ändern.
  • Das Objekt 38' erhält außerdem ein Verfahren 68, das einen internen Code des Objekts 38' aufruft, um die Ausgangszustandseigenschaft in diesem Fall zu kippen, die sich ausgehend vom Zustand ON bzw. EIN in den Zustand OFF bzw. AUS oder von OFF bzw. AUS in ON bzw. EIN abhängig von ihrem vorausgehenden Zustand ändert.
  • Das Ausgangsobjekt 38' kann außerdem Ereignisse bereitstellen, bei denen es sich um Signale handelt, die durch das Objekt 38' unter bestimmten Bedingungen bereitgestellt werden, in diesem Fall ein Zustandsänderungsereignis 70.
  • In einer bevorzugten Ausführungsform ist jedem Eingang und Ausgang 39 des industriellen Controllers 14 ein I/O-Objekt 38 zugeordnet; andere abstrakte Objekte 38 können jedoch ebenfalls erzeugt werden. Wie vorstehend angesprochen, können diese abstrakten Objekte 38 von einem entfernten Computer 10 erstellt bzw. konstruiert werden und sie können Haltbarkeitseigenschaften besitzen, das heißt, selbst dann resistent bleiben bzw, zurückbleiben, nachdem der entfernte Computer 10 ausgeloggt hat.
  • Wie in 5 gezeigt, kann in einem einfachen gesteuerten Prozess 41 ein Förderband 72 durch einen Motor 74 betätigt sein, der ein Signal 76 von einem Ausgang 80 des industriellen Controllers 14 empfängt. Dieser Ausgang 80 kann ein entsprechendes Ausgangsobjekt 38a aufweisen, wie in 6 gezeigt. Ein fotoelektrischer Sensor 82 kann über der Oberseite des Förderbands 72 positioniert sein, um den Lauf von Teilen 84 über das Förderband 72 zu ermitteln. Ein fotoelektrischer Sensor kann ein Signal 86 erzeugen, das durch einen Eingang 88 empfangen wird, der mit dem industriellen Controller 14 kommuniziert und ein entsprechendes Objekt 38b aufweist, wie in 6 gezeigt. Die beiden I/O-Objekte 38a und 38b können mit einem abstrakten "Fehler"-Objekt 38c verbunden sein, das durch den Nutzer an einem entfernten Computer 10 unter Verwendung objektorientierter Instruktionen instanziiert sein kann, die in den SOAP-Hüllen 35 übertragen bzw. hindurch gelassen werden. Dieses Fehlerobjekt 38c ermittelt in diesem Beispiel die korrekte Betätigung des Förderbands 72, wie durch die Zustandseigenschaft des Objekts 38a angezeigt, und reguläre Ereignisse von dem Eingangsobjekt 38b, die eine periodische Unterbrechung des fotoelektrischen Sensors 82 durch Teile 84 bezeichnen. Wenn reguläre Unterbrechungen nicht auftreten, erzeugt das Fehlerobjekt 38c einen Fehlerzustand, bei dem es sich um eine Eigenschaft 66 und ein Fehlerereignis 70 handelt. Das Fehlerobjekt 38c kann außerdem ein Rücksetzverfahren 68 enthalten, das eine Veranlassung eines Rücksetzvorgangs seines Ausgangsfehlersignalereignisses 70 bereitstellt. Die abstrakten Objekte 38 können außerdem ein grafisches Anzeigeobjekt enthalten.
  • Wie sich dem Fachmann auf diesem Gebiet der Technik erschließt, variieren die Anzahl von I/O-Objekten 38 und die Anzahl und die Art anderer abstrakter Objekte 38 (wie etwa des Fehlerobjekts 38c) abhängig vom gesteuerten Prozess 41 und der gewünschten HMI. Die Objekte 38 können nicht nur logische Objekte, wie gezeigt, enthalten, sondern auch grafische Anzeigeobjekte, wie etwa Messgeräte oder Tasten, die auf dem Bildschirm 44 des entfernten Computers aufscheinen kön nen, um das Kommunizieren von Information in Bezug auf den industriellen Prozess 41 zu unterstützen.
  • Wie in 8 gezeigt, kann beispielsweise ein Objekt 38d dafür sorgen, dass ein grafisches Element dem Browser des entfernten Computers 10 kommuniziert wird. Das gezeigte grafische Element ist vorliegend eine grafische Balkensteuerung mit einer grafischen Balkenanzeige 73 und Auf- und Abwärtstasten 75 und 77, die beispielsweise durch den Nutzer aktivierbar sind, um das betreffende Objekt zu steuern, dessen Ausgang bzw. Ausgangssignal durch die grafische Balkenanzeige 73 reflektiert wird. Zwei Eigenschaften 66 können dabei vorliegen, von denen eine den Wert der grafischen Balkenanzeige 73 hält und eine einen Stiel von einer Anzahl von Stielen der grafischen Balkenanzeige einstellt bzw. wählt. Das Anzeigeobjekt 38d kann außerdem Ereignisse 70 erzeugen, bei denen es sich um ein Drücken der Auf- und Abwärtstasten 75 und 77 handelt. Die Ereignisse und der Wert können so gewählt werden, dass sie mit anderen Objekten, entweder Basislinienobjekten oder solchen verbunden werden, die durch den Nutzer erzeugt werden. Die Grafikelemente können allgemein Anzeigelemente, wie etwa Messgeräte, digitale Auslesungen und Instrumente enthalten, und sie können außerdem grafische Steuerelemente enthalten, wie etwa Texteintragkästen, Tasten und Gleitverschiebungsbalken.
  • Durch die Verwendung des Objektparadigmas kann ein zentral verteiltes Appletprogramm 30 die Fähigkeit bereitstellen, verschiedene HMIs für verschiedene industrielle Prozesse 41 bereitzustellen und die Objekte 38 als notwendig aufzurufen, um bestimmte Merkmale des HMI durch die Schnittstelle des Internet zu implementieren. Die Objekte 38 erlauben es damit, dass das Applet klein sein kann und dass der Appletentwickler die Notwendigkeit vermeiden kann, durch die Objekte bereits bereitgestellte Funktionen zu schreiben. Durch Bereitstellen von Haltbarkeit für die konstruierten Objekte auf der Serverseite wird die vollständige Flexibilität am entfernten Ort des Computers und der Computerart weiterhin beibehalten, wodurch es möglich ist, ein spezielles HMI für einen beliebigen industriellen Controller 14 von einem beliebigen Browser aufzurufen, wodurch der entfernte Computer 10 an beliebiger Stelle auf der Welt freigegeben werden kann.
  • Die Möglichkeit, ein gewünschtes HMI durch das Appletprogramm 30 für einen beliebigen industriellen Controller 14 zu erzeugen, erfordert, dass die I/O-Objekte 38 sowie weitere standardmäßige abstrakte Objekte 38 fernerkennbar sind. Die vorliegende Erfindung stellt einen speziellen Satz von objektorientierten Instruktionen bereit, der die Erkennung der Objekte 38 in einem speziellen Webserver 16 zusammen mit ihren Eigenschaften, Methoden, Ereignissen und anderen Eigenschaften ermöglicht, wie in der folgenden Tabelle dargestellt.
  • Tabelle I Objekterkennungsinstruktionen
    Figure 00170001
  • Figure 00180001
  • Die Erkennungsinstruktionen ändern sich nicht bei Änderung des industriellen Prozesses 41 (beispielsweise I/O) oder selbst bei Aktualisierungen des Applet und sie können dadurch in jedem Webserver 16 standardisiert werden. Andererseits ändern sich die durch die Erkennungsinstruktionen rückgeführten Werte abhängig von sowohl dem industriellen Prozess 41 wie seiner Steuerung, prinzipiell in Gestalt davon, welche Objekte 38 verfügbar sind, was es ermöglicht, dass die präzise Konfiguration der HMI unter identischen Appletprogrammen 30 beträchtlich variiert. Die Implementierung der Objekterkennungsinstruktionen wird durch die DISCOVER- bzw. Entdeckungs-Objektschnittstellenprogramme 36 durchgeführt, die eine Tabelle überprüfen, die eine Objektdefinition hält, die für die I/O-Objekte während der Konfiguration des industriellen Controllers 14 und für abstrakte Objekte durch die HMI-Programmdesigner erzeugt wird.
  • Die Flexibilität der HMI unter Verwendung des Appletprogramms erfordert die Haltbarkeit der erzeugten Objekte (so dass die durch die HMI aufgerufenen Objekte keine erneute Instanziierung für jede Sitzung erfordern), so dass die vorliegende Erfindung außerdem einen Satz von Haltbarkeitsinstruktionen bereitstellt, die Haltbarkeit für ein Objekt bereitstellen, das durch einen entfernten Nutzer erzeugt wird, und zwar selbst dann, nachdem sich der Nutzer abgemeldet hat.
  • Tabelle II Objekthaltbarkeitsinstruktionen
    Figure 00190001
  • Die Objekthaltbarkeitsinstruktionen werden durch das PERSISTENCE- bzw. Haltbarkeitsobjektschnittstellenprogramm 36 implementiert, das die notwendigen Instanziierungsdaten auf einen nicht flüchtigen Speicherteil speichert und lädt, der einen dauerhaften Speicherbereich 42 bildet, und das den Dateinamen in Übereinstimmung mit den an sich bekannten Dateispeichertechniken aufzeichnet.
  • Die vorliegende Erfindung sieht eine vollständige Anpassung der HMI an Kundenbedarf durch den entfernten Nutzer vor und stellt damit die Konstruktion der Objekte bereit, die erforderlich sind, diese Schnittstelle in Übereinstimmung mit standardmäßigen objektorientierten Techniken zu erzeugen. In diesem Hinblick werden zwei Objektinstanziierungsinstruktionen wie folgt bereitgestellt:
  • Tabelle III Objektinstanziierungsinstruktionen
    Figure 00200001
  • Die Objektinstanziierungsinstruktionen sind durch das CONSTRUCTOR- bzw. Konstruktionsobjektschnittstellenprogramm 36 unter Verwendung an sich bekannter Objektkonstruktionstechniken implementiert.
  • Der endgültige Satz von Objektzugangsinstruktionen verschafft Zugang zu den Eigenschaften, Methoden und Ereignissen des Objekts, so dass sie im Rahmen ihrer Eigenschaften gelesen oder geschrieben werden können, oder dass ihre Verfahren aufgeru fen oder mitgeteilt werden bei Ereignissen in dem Subskriptionsprozess.
  • Tabelle IV Objektzugriffinstruktionen
    Figure 00210001
  • Die Zugriffobjektinstruktionen werden durch ein ACCESS- bzw. Zugriffobjektschnittstellenprogramm 36 ausgeführt unter Verwendung von Objektzugrifftechniken, die auf dem Gebiet des objektorientierten Programmierens bekannt sind. Die Verwaltung von Subskriptionen für Ereignisse wird gehandhabt durch einen Mitteilungshandhaber 81, der Teil des serverseitigen HMI-Programms bildet, der Mitteilungen akzeptiert, die Ereignisse von freigegebenen Subskriptionen in einer Ereigniswarteschlange einträgt und Mitteilungen zu den entfernten Computern entsprechend verarbeitet.
  • Die Objekte können auf diese Weise Mitteilungen zu dem Appletprogramm über das Internet senden, die Teil einer effektiven Anwendungsprogrammiererschnittstelle bzw. eines API bilden.
  • Wie in 3 und 7 gezeigt, startet eine typische Interaktion zwischen dem Browser 50 auf dem entfernt positionierten Computer 10 und dem Webserver 16 durch den Empfang einer oder eines Satzes objektorientierter Instruktionen von dem Appletprogramm 30, initiiert durch den Nutzer, um zu dem Appletprogramm 30 übertragen zu werden, wie durch den Prozessblock 83 bezeichnet.
  • Das Appletprogramm 30, das durch den Prozessblock 85 bezeichnet ist, verkapselt die objektorientierte Instruktion in dem SOAP-Protokoll zur Übertragung durch den Browser 50 in Übereinstimmung mit standardmäßigen Techniken, die in der Browserbetriebssysteminteraktion genutzt werden. Der Browser 50, der durch den Prozessblock 87 bezeichnet ist, überträgt diese SOAP-Hülle 35 zur der URL des Webservers 16, wo sie als durch den Prozessblock 89 bezeichnet empfangen wird, und die SOAP-Verkapselung, die durch die Serversoftware 60 entfernt wird.
  • Die betreffenden objektorientierten Instruktionen werden zu dem Parser 62 übertragen, wie durch den Prozessblock 90 be zeichnet, und daraufhin zu dem serverseitigen HMI-Programm 37 zur Verarbeitung, wie vorstehend erläutert.
  • Speziell ist es beabsichtigt, dass die vorliegende Erfindung nicht auf die vorliegenden Ausführungsformen und Darstellungen beschränkt ist; vielmehr enthält sie modifizierte Ausführungsformen, einschließlich Teilen der Ausführungsformen und Kombinationen von Elementen der unterschiedlichen Ausführungsformen als im Umfang der nachfolgenden Ansprüche enthalten.
  • Die Erfindung kann wie folgt zusammengefasst werden:
    Ein entfernte ablaufendes Betriebsprogramm für einen industriellen Controller läuft auf einem browserfähigen entfernten Computer ab durch Verbindung mit einem Webserver, der mit dem industriellen Controller verbunden ist, um ein Applet zu laden. Das Applet stellt ein Kommunikationsprotokoll mit dem Server des industriellen Controllers bereit, das es dem Applet ermöglicht, Objekte auf dem Server zu erkennen und zu nutzen, die durch das entfernt ablaufende Betriebsprogramm implementiert sein können.

Claims (13)

  1. Verfahren für eine Fernkommunikation mit einem industriellen Steuersystem, aufweisend die Schritte: Ausführen eines ersten Schnittstellenprogramms (30) auf einem Browser (50) eines entfernt positionierten Computers (10) zur Bereitstellung eines Schnittstellenbildschirms für einen industriellen Controller (14); Ausführen eines zweiten Schnittstellenprogramms auf einem ersten Webserver (16), der mit dem entfernt positionierten Computer (10) über das Internet unter Verwendung standardmäßiger Web-Protokolle kommuniziert und außerdem mit einem industriellen Steuersystem kommuniziert, das einen industriellen Prozess durch Eingangs- und Ausgangsdaten steuert, die dem industriellen Prozess kommuniziert werden; dadurch gekennzeichnet, dass das zweite Schnittstellenprogramm auf dem ersten Webserver (16) den Browser (50) auf dem entfernt positionierten Computer (10) durch das Internet (20) zu einer Webseite (28) auf einem zweiten Webserver (26) leitet, der nicht mit dem ersten Webserver (16) übereinstimmt, wobei die Webseite (28) das erste Schnittstellenprogramm (30) enthält, das in dem Browser (50) des entfernten Computers (10) geladen wird, das zweite Schnittstellenprogramm einen standardmäßigen Satz von vorkonfigurierten I/O-Objekten (38a, 38b) bereitstellt, die Eingänge und Ausgänge (39) des industriellen Controllers (14) verkapseln, und verwendet durch das erste Schnittstellenprogramm (30) zum Implementieren einer Schnittstelle, und das Objektschnittstellenprogramme (36) zum Implementieren eines Satzes von objektorientierten Instruktionen implementiert, die von dem entfernt positionierten Computer (10) empfangen werden und eine Fernerkennung der vorkonfigurierten I/O-Objekte (38a, 38b) sowie weiterer standardmäßiger abstrakter Objekte (38c) im ersten Webserver (16) erlauben; und das erste Schnittstellenprogramm (30) und das zweite Schnittstellenprogramm so ablaufen, dass ein Protokoll derart bereitgestellt wird, dass das erste Schnittstellenprogramm (30) die Objekte (38a, 38b, 38c) erkennen und instanziieren kann, die sich auf die Eingangs- und Ausgangsdaten beziehen und im ersten Webserver (16) gespeichert sind; wobei das Protokoll die folgenden Instruktionen als objektorientierte Instruktionen bereitstellt: Eine Erkennungsinstruktion, die von dem ersten Schnittstellenprogramm übertragen wird, das das zweite Schnittstellenprogramm veranlasst, eine Liste von Eigenschaften der Softwareobjekte (38a, 38b, 38c) bereitzustellen, eine Konstruktorinstruktion zum Erzeugen einer momentanen Existenz eines Objekts in dem ersten Webserver (16), und zumindest eine Haltbarkeitsinstruktion, die eine momentane Existenz eines Softwareobjekts auf dem ersten Webserver (16) während einer Beendigung einer Kommunikationssitzung auf dem Internet zwischen dem entfernten Computer und dem ersten Webserver haltbar macht, wobei die instanziierten Softwareobjekte veranlasst werden, auf dem ersten Webserver (16) haltbar zu existieren, so dass das erste Schnittstellenprogramm (30) auf die instanziierten Softwareobjekte zugreifen kann.
  2. Verfahren nach Anspruch 1, wobei ein Parser (62) im ersten Webserver (16) vorgesehen ist, um die objektorientierten Instruktionen von dem entfernten Computer (10) zu empfangen und zu lesen und sie zu den Objektschnittstel lenprogrammen (36) eines serverseitigen Mensch-Maschinen-Schnittstellenprogramms (37) zu leiten.
  3. Verfahren nach Anspruch 1, wobei das Protokoll für die Kommunikation von Instruktionen zwischen dem ersten Schnittstellenprogramm (30) und dem zweiten Schnittstellenprogramm das SOAP-Protokoll nutzt.
  4. Verfahren nach Anspruch 4, wobei mehrere Instruktionen in einer einzigen SOAP-Protokollmitteilung übertragen werden, und wobei die Aufrufanordnung aus der Gruppe gewählt ist, die aus sequenziellen, verschachtelten und einer Kombination aus diesen beiden besteht.
  5. Verfahren nach Anspruch 1, wobei die Eigenschaften Objekteigenschaften, Objektkonstruktoren, Objektverfahren und Objektereignisse sind.
  6. Verfahren nach Anspruch 1, wobei das Protokoll einen Satz von Eigenschaftsinstruktionen bereitstellt zum Wählen einer Eigenschaft eines Softwareobjekts auf dem ersten Webserver (16).
  7. Verfahren nach Anspruch 1, wobei das Protokoll einen Aufruf eines Verfahrens für ein Softwareobjekt (38) auf dem ersten Webserver (16) bereitstellt.
  8. Verfahren nach Anspruch 4, wobei das Protokoll eine Ereignissubskriptionsinstruktion bereitstellt, um den Empfang durch das erste Schnittstellenprogramm (30) von Ereignismitteilungen von den Softwareobjekten (38) auf dem ersten Webserver (16) zu veranlassen.
  9. Verfahren nach Anspruch 1, wobei das erste Schnittstellenprogramm (30) und das zweite Schnittstellenprogramm ausgeführt werden, um: Den entfernten Computer (10) über das Web-Browserprogramm (50) mit einer ersten Webseite (24) zur Bereitstellung des ersten Schnittstellenprogramms (30) zu verbinden; das erste Schnittstellenprogramm (30) über den entfernten Computer zu lesen und es im entfernten Computer auszuführen; und das Web-Browserprogramm (50) mit dem ersten Webserver (16) zu verbinden, der mit dem industriellen Steuersystem kommuniziert.
  10. Verfahren nach Anspruch 9, wobei die erste Webseite (24) auf dem zweiten Webserver (26) vorliegt, der mit dem industriellen Steuersystem kommuniziert.
  11. Verfahren nach Anspruch 1, wobei das ersten Schnittstellenprogramm (30) ein erstes Java-Schnittstellenprogramm (30) ist.
  12. Verfahren nach Anspruch 4, wobei die Softwareobjekte (38), die im ersten Webserver (16) gespeichert sind, grafische Anzeigeelemente (38d) umfassen.
  13. Verfahren nach Anspruch 1, wobei die Softwareobjekte (38), die im ersten Webserver (16) gespeichert sind, grafische Steuerelemente (38d) umfassen.
DE60207155T 2001-07-13 2002-07-11 Objektorientiertes Internetschnittstellensystem für eine industrielle Steuereinrichtung Expired - Lifetime DE60207155T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US904929 1986-09-05
US09/904,929 US7290030B2 (en) 2001-07-13 2001-07-13 Internet object based interface for industrial controller

Publications (2)

Publication Number Publication Date
DE60207155D1 DE60207155D1 (de) 2005-12-15
DE60207155T2 true DE60207155T2 (de) 2006-07-13

Family

ID=25419989

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60207155T Expired - Lifetime DE60207155T2 (de) 2001-07-13 2002-07-11 Objektorientiertes Internetschnittstellensystem für eine industrielle Steuereinrichtung

Country Status (3)

Country Link
US (4) US7290030B2 (de)
EP (1) EP1276026B1 (de)
DE (1) DE60207155T2 (de)

Families Citing this family (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6819960B1 (en) 2001-08-13 2004-11-16 Rockwell Software Inc. Industrial controller automation interface
JP2003173246A (ja) * 2001-12-05 2003-06-20 Ricoh Co Ltd デバイス情報収集方法、プログラム、サーバ装置及び記憶媒体
DE10211939A1 (de) * 2002-03-18 2003-10-02 Sick Ag Kopplungsvorrichtung zum Ankoppeln von Geräten an ein Bussystem
US7330473B1 (en) 2002-04-12 2008-02-12 Rockwell Automation Technologies, Inc. System and methodology providing network data exchange between industrial control components
US9565275B2 (en) 2012-02-09 2017-02-07 Rockwell Automation Technologies, Inc. Transformation of industrial data into useful cloud information
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
US7512906B1 (en) 2002-06-04 2009-03-31 Rockwell Automation Technologies, Inc. System and methodology providing adaptive interface in an industrial controller environment
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
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
US7685314B2 (en) * 2002-06-27 2010-03-23 Siebel Systems, Inc. System integration system and method
DE10241953B4 (de) * 2002-09-10 2005-05-04 Siemens Ag Verfahren zum Übertragen von Meldungen industrieller Steuerungen über Internet-Technologien an vordefinierte Empfänger
US7467018B1 (en) 2002-11-18 2008-12-16 Rockwell Automation Technologies, Inc. Embedded database systems and methods in an industrial controller environment
DE10304646A1 (de) 2003-02-05 2004-08-26 Siemens Ag Web-basierte Darstellung von Automatisierungsprozessen
DE10345894A1 (de) * 2003-09-30 2005-04-21 Siemens Ag Vorrichtung und Verfahren zu webbasierten Prozessvisualisierung eines Automatisierungssystems
US7721273B1 (en) 2003-11-17 2010-05-18 Rockwell Automation Technologies, Inc. Controller equipment model systems and methods
US8150959B1 (en) * 2003-11-17 2012-04-03 Rockwell Automation Technologies, Inc. Systems and methods for notifying multiple hosts from an industrial controller
JP2007536634A (ja) * 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド プロセス制御システムのためのサービス指向型アーキテクチャ
US7729789B2 (en) 2004-05-04 2010-06-01 Fisher-Rosemount Systems, Inc. Process plant monitoring based on multivariate statistical analysis and on-line process simulation
US20070055386A1 (en) * 2004-11-03 2007-03-08 Rockwell Automation Technologies, Inc. Abstracted display building method and system
US8898123B2 (en) * 2005-06-07 2014-11-25 Rockwell Automation Technologies, Inc. Method and system for interface configuration via device-side scripting
US20060095855A1 (en) * 2004-11-03 2006-05-04 Britt Clinton D HMI reconfiguration method and system
US8984423B2 (en) * 2005-06-07 2015-03-17 Rockwell Automation Technologies, Inc. Dynamic representation of component configuration method and system
US20060133412A1 (en) * 2004-12-22 2006-06-22 Rockwell Automation Technologies, Inc. Integration of control and business applications using integration servers
US7554560B2 (en) * 2004-12-24 2009-06-30 Donald Pieronek System for defining network behaviors within application programs
WO2006080026A1 (en) * 2005-01-27 2006-08-03 Infosys Technologies Limited Protocol processing device and method
US7706895B2 (en) * 2005-02-25 2010-04-27 Rockwell Automation Technologies, Inc. Reliable messaging instruction
US20060206442A1 (en) * 2005-03-08 2006-09-14 Rockwell Automation Technologies, Inc. Systems and methods for managing control systems through java extensions
US7565351B1 (en) 2005-03-14 2009-07-21 Rockwell Automation Technologies, Inc. Automation device data interface
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
JP4891242B2 (ja) * 2005-06-29 2012-03-07 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
US8554877B2 (en) 2005-08-19 2013-10-08 Rockwell Automation Technologies, Inc. Motor drive with integrated server module
US20070185969A1 (en) * 2005-08-19 2007-08-09 Davis Wayne R Drive with Server
US8175089B2 (en) * 2005-09-30 2012-05-08 Rockwell Automation Technologies, Inc. Extended address space capability for an industrial protocol
US7587251B2 (en) * 2005-12-21 2009-09-08 Rockwell Automation Technologies, Inc. Remote monitoring and control of an I/O module
US20070186011A1 (en) * 2006-02-03 2007-08-09 Rockwell Automation Technologies, Inc. Industrial protocol and gateway
US20070186010A1 (en) * 2006-02-03 2007-08-09 Rockwell Automation Technologies, Inc. Extending industrial control system communications capabilities
EP1873634A3 (de) * 2006-06-29 2013-10-09 Rockwell Automation Technologies, Inc. HMI-Rahmen für Engineering-Plattformen erweiterbarer Automatisierungssysteme
US20080080543A1 (en) * 2006-09-28 2008-04-03 Rockwell Automation Technologies, Inc. Network switch with controller i/o capability
US8683017B2 (en) * 2006-09-29 2014-03-25 Rockwell Automation Technologies, Inc. Web-based configuration of distributed automation systems
US8028045B2 (en) * 2006-09-29 2011-09-27 Rockwell Automation Technologies, Inc. Web-based configuration server for automation systems
US8078296B2 (en) 2006-09-29 2011-12-13 Rockwell Automation Technologies, Inc. Dynamic procedure selection
US7719961B2 (en) 2006-09-29 2010-05-18 Rockwell Automation Technologies, Inc. Industrial ethernet communications adapter
US9261877B2 (en) 2006-09-29 2016-02-16 Rockwell Automation Technologies, Inc. Multiple machine interface
US8818757B2 (en) 2008-09-30 2014-08-26 Rockwell Automation Technologies, Inc. Modular object and host matching
US9217998B2 (en) 2006-09-29 2015-12-22 Rockwell Automation Technologies, Inc. Management and development of an industrial environment
US8041435B2 (en) 2008-09-30 2011-10-18 Rockwell Automation Technologies, Inc. Modular object dynamic hosting
US9058032B2 (en) 2006-09-29 2015-06-16 Rockwell Automation Technologies, Inc. Hosting requirements for services
US8776092B2 (en) 2006-09-29 2014-07-08 Rockwell Automation Technologies, Inc. Multiple interface support
US8732658B2 (en) 2006-09-29 2014-05-20 Rockwell Automation Technologies, Inc. Layered interface in an industrial environment
US8265775B2 (en) 2008-09-30 2012-09-11 Rockwell Automation Technologies, Inc. Modular object publication and discovery
US7894934B2 (en) * 2006-12-05 2011-02-22 Veyance Technologies, Inc. Remote conveyor belt monitoring system and method
ES2525934T3 (es) 2007-03-14 2015-01-02 Phoenix Contact Gmbh & Co. Kg Procedimiento, aparato de control y sistema de control para controlar un sistema de automatización
US8380842B2 (en) 2007-04-26 2013-02-19 Mtelligence Corporation System and methods for the universal integration of plant floor assets and a computerized management system
WO2008155596A1 (en) * 2007-06-18 2008-12-24 Abb Research Limited Standardized protocol independent configuration tool for intelligent electronic devices
JP2011503682A (ja) * 2007-10-05 2011-01-27 シュナイダー・エレクトリック・オートメイション・ゲーエムベーハー 制御プログラムを有する自動化装置ならびに制御プログラムをプログラミングするための方法
EP2063332A1 (de) * 2007-11-21 2009-05-27 Pepperl + Fuchs Gmbh Sensor für die Automatisierungstechnik und Verfahren zum Übermitteln von Konfigurationsdaten von einem externen Rechner an einen Sensor
US20100082678A1 (en) * 2008-09-30 2010-04-01 Rockwell Automation Technologies, Inc. Aggregation server with industrial automation control and information visualization placeshifting
US8990768B2 (en) * 2008-09-30 2015-03-24 Rockwell Automation Technologies, Inc. Software object property return method and system
US8570327B2 (en) * 2008-11-14 2013-10-29 General Electric Company Systems and methods involving graphically displaying control systems
DE102009011552B4 (de) * 2009-03-06 2013-12-05 Phoenix Contact Gmbh & Co. Kg Vorrichtung und Verfahren zum Bereitstellen eines Datenlese- und -schreibzugriffs auf ein Gerät
US8881039B2 (en) 2009-03-13 2014-11-04 Fisher-Rosemount Systems, Inc. Scaling composite shapes for a graphical human-machine interface
US9494931B2 (en) 2009-09-23 2016-11-15 Fisher-Rosemount Systems, Inc. Dynamic hyperlinks for process control systems
US8650246B2 (en) * 2009-10-29 2014-02-11 Fujitsu Technology Solutions Intellectual Property Gmbh Method and system for licensing a software product
US8825183B2 (en) * 2010-03-22 2014-09-02 Fisher-Rosemount Systems, Inc. Methods for a data driven interface based on relationships between process control tags
US8438220B2 (en) * 2010-06-30 2013-05-07 International Business Machines Corporation Method for optimizing remote object implementations
GB2482681B (en) * 2010-08-09 2013-01-09 Quadrant Systems Ltd A configurable bridge circuit for integrating a new subsystem with an existing computing environment
DE102010048809A1 (de) 2010-10-20 2012-04-26 Hüttinger Elektronik Gmbh + Co. Kg Leistungsversorgungssystem für eine Plasmaanwendung und/oder eine Induktionserwärmungsanwendung
DE102010048810A1 (de) 2010-10-20 2012-04-26 Hüttinger Elektronik Gmbh + Co. Kg System zur Bedienung mehrerer Plasma- und/oder Induktionserwärmungsprozesse
EP2758840B1 (de) * 2011-09-23 2021-06-02 Videojet Technologies, Inc. Netzverbindungsverfahren
US9477936B2 (en) 2012-02-09 2016-10-25 Rockwell Automation Technologies, Inc. Cloud-based operator interface for industrial automation
DE112013006481B4 (de) * 2013-02-22 2017-01-12 Mitsubishi Electric Corporation Systementwicklungsgerät, Systementwicklungsverfahren und Systementwicklungsprogramm
US9535808B2 (en) 2013-03-15 2017-01-03 Mtelligence Corporation System and methods for automated plant asset failure detection
US9491067B2 (en) * 2013-04-09 2016-11-08 Cisco Technology, Inc. Timeout for identifying network device presence
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
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
US10026049B2 (en) 2013-05-09 2018-07-17 Rockwell Automation Technologies, Inc. Risk assessment for industrial systems using big data
US9703902B2 (en) 2013-05-09 2017-07-11 Rockwell Automation Technologies, Inc. Using cloud-based data for industrial simulation
US9438648B2 (en) 2013-05-09 2016-09-06 Rockwell Automation Technologies, Inc. Industrial data analytics in a cloud platform
US9842302B2 (en) 2013-08-26 2017-12-12 Mtelligence Corporation Population-based learning with deep belief networks
US20150113423A1 (en) * 2013-10-18 2015-04-23 Yokogawa Electric Corporation System and method to configure a field device
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
US11243505B2 (en) 2015-03-16 2022-02-08 Rockwell Automation Technologies, Inc. Cloud-based analytics for industrial automation
US11513477B2 (en) 2015-03-16 2022-11-29 Rockwell Automation Technologies, Inc. Cloud-based industrial controller
US10708389B2 (en) * 2016-12-06 2020-07-07 Intelligrated Headquarters, Llc Phased deployment of scalable real time web applications for material handling system
CN112526898B (zh) * 2019-09-19 2022-02-18 恒为科技(上海)股份有限公司 一种串口线插拔检测电路和嵌入式设备
DE102019217520A1 (de) * 2019-11-13 2021-05-20 Robert Bosch Gmbh Verfahren zur modularen Anpassung einer programmierbaren Steuerung

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994001820A1 (en) 1992-07-01 1994-01-20 Telefonaktiebolaget Lm Ericsson System for implementation-independent interface specification
US6070196A (en) 1994-02-02 2000-05-30 Mitsubishi Semiconductor America, Inc. Protocol converter controller having distributed architecture
EP0825506B1 (de) 1996-08-20 2013-03-06 Invensys Systems, Inc. Verfahren und Gerät zur Fernprozesssteuerung
US5848415A (en) 1996-12-18 1998-12-08 Unisys Corporation Selective multiple protocol transport and dynamic format conversion in a multi-user network
US6282454B1 (en) 1997-09-10 2001-08-28 Schneider Automation Inc. Web interface to a programmable controller
US6339826B2 (en) 1998-05-05 2002-01-15 International Business Machines Corp. Client-server system for maintaining a user desktop consistent with server application user access permissions
US6201996B1 (en) 1998-05-29 2001-03-13 Control Technology Corporationa Object-oriented programmable industrial controller with distributed interface architecture
US6591272B1 (en) 1999-02-25 2003-07-08 Tricoron Networks, Inc. Method and apparatus to make and transmit objects from a database on a server computer to a client computer
DE19929933C2 (de) 1999-06-29 2002-06-27 Siemens Ag Kommunikationssystem und Kommunikationsverfahren für ein Automatisierungsgerät mit im Automatisierungsgerät gespeicherten Kommunikationsdaten
US6549937B1 (en) 1999-07-21 2003-04-15 Microsoft Corporation System and method for multi-protocol communication in a computer network
US6356529B1 (en) 1999-08-12 2002-03-12 Converse, Ltd. System and method for rapid wireless application protocol translation
AUPQ808700A0 (en) * 2000-06-09 2000-07-06 Honeywell Limited Human-machine interface
FR2813471B1 (fr) * 2000-08-31 2002-12-20 Schneider Automation Systeme de communication d'un equipement d'automatisme base sur le protocole soap
US7728838B2 (en) 2000-09-15 2010-06-01 Invensys Systems, Inc. Method and system for animating graphical user interface elements via a manufacturing/process control portal server
WO2003036609A1 (en) 2001-10-24 2003-05-01 Bea Systems, Inc. Portal administration tool
US20030163513A1 (en) 2002-02-22 2003-08-28 International Business Machines Corporation Providing role-based views from business web portals
JP4068921B2 (ja) 2002-08-15 2008-03-26 インターナショナル・ビジネス・マシーンズ・コーポレーション ユーザ端末にウェブ・サービスを提供するサーバ、方法、コンピュータ・プログラム、記憶媒体、ネットワーク・システム

Also Published As

Publication number Publication date
EP1276026B1 (de) 2005-11-09
DE60207155D1 (de) 2005-12-15
US20030051074A1 (en) 2003-03-13
US20030084201A1 (en) 2003-05-01
US20080077253A1 (en) 2008-03-27
US20060235951A1 (en) 2006-10-19
EP1276026A1 (de) 2003-01-15
US7085841B2 (en) 2006-08-01
US7836122B2 (en) 2010-11-16
US7290030B2 (en) 2007-10-30
US7617277B2 (en) 2009-11-10

Similar Documents

Publication Publication Date Title
DE60207155T2 (de) Objektorientiertes Internetschnittstellensystem für eine industrielle Steuereinrichtung
DE69915661T2 (de) Prozesssteuerung
DE102008019040B4 (de) Verfahren und Steuergerät zur Steuerung eines Automatisierungssystems
DE69819211T2 (de) Verteilte interfacearchitektur einer programmierbaren industriellen steuerung
EP3374850B1 (de) Tastaturapplikation für eine gerätezugriffssoftware
EP1970783B1 (de) Verfahren, Steuergerät und Steuerungssystem zur Steuerung eines Automatisierungssystem
DE102005028943A1 (de) Numerische Steuerung, die ein in einer Schriftsprache geschriebenes Programm aufrufen kann
DE10049025A1 (de) Process control configuration system for use with an AS-inferface device network
WO2002033603A2 (de) System und verfahren zum verwalten von softwareapplikationen, insbesondere mes-applikationen
DE102010036914A1 (de) Systemkonfiguration unter Verwendung von Vorlagen
DE102006062478B4 (de) Verfahren zum Betreiben eines objektbasierten Konfigurationssystems für Feldgeräte der Automatisierungstechnik
DE102019126360A1 (de) Bulk-commissioning von feldvorrichtungen innerhalb einer prozessanlage
WO2009047193A1 (de) Verfahren zum bedienen von feldgeräten der prozessautomatisierungstechnik mit einem geräteunabhängigen bedienprogramm
DE102007058609A1 (de) Verfahren zur Installation von Objekten für ein komponentenbasiertes Managementsystem für Feldgeräte der Automatisierungstechnik
DE102018124358A1 (de) Systeme und verfahren zur grafischen konfigurationsdesignprüfung in einer prozessanlage
EP1714197B1 (de) Gerätetreiber für feldgeräte der prozessautomatisierungstechnik
DE60312552T2 (de) Prozessdatenverwaltung
EP0838054B1 (de) Verfahren und steuereinrichtung für eine graphische steuerung von abläufen in einem netzwerkmanagementsystem
WO2003040842A1 (de) Bereitstellung von informationen in einem automatisierungssystem
EP1821165B1 (de) Nutzung von Variablen in mehreren Automatisierungssystemen
EP1758001A2 (de) Verfahren und System zum Abbilden der Struktur einer Automatisierungsanlage auf einem Rechner
DE102006062604A1 (de) Verfahren zum Testen von Gerätebeschreibungen für Feldgeräte der Automatisierungstechnik
WO2014154281A1 (de) Objektbasierte konfiguration einer prozess- und/oder fertigungsanlage
EP4168865B1 (de) Verfahren zum steuern eines automatisierungssystems mit visualisierung von programmobjekten eines steuerprogramms des automatisierungssystems und automatisierungssystem
EP1233318A1 (de) Softwarekomponente für ein verteiltes Kontrollsystem

Legal Events

Date Code Title Description
8364 No opposition during term of opposition