DE10127722A1 - System zur Entwicklung eines Anwendungssystems und dessen Implementierung - Google Patents

System zur Entwicklung eines Anwendungssystems und dessen Implementierung

Info

Publication number
DE10127722A1
DE10127722A1 DE10127722A DE10127722A DE10127722A1 DE 10127722 A1 DE10127722 A1 DE 10127722A1 DE 10127722 A DE10127722 A DE 10127722A DE 10127722 A DE10127722 A DE 10127722A DE 10127722 A1 DE10127722 A1 DE 10127722A1
Authority
DE
Germany
Prior art keywords
program
controller
monitor
symbol
display area
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.)
Ceased
Application number
DE10127722A
Other languages
English (en)
Inventor
Satoru Nakai
Eiji Hayashi
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE10127722A1 publication Critical patent/DE10127722A1/de
Ceased 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
    • 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/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13144GUI graphical user interface, icon, function bloc editor, OI operator interface
    • 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/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15007On reinsertion board, power up, program setting, configuration automatically set
    • 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/10Plc systems
    • G05B2219/15Plc structure of the system
    • G05B2219/15011Configuration of operating system
    • 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/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23258GUI graphical user interface, icon, function bloc editor, labview
    • 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/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25067Graphic configuration control system
    • 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/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25099Detect configuration I-O and select needed program

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Stored Programmes (AREA)
  • Control By Computers (AREA)
  • Programmable Controllers (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Die vorliegende Erfindung stellt ein System zum Entwickeln von Anwendungssystemen und deren Implementierung für eine automatisierte Maschine zur Verfügung, welches die Belastung des Benutzers beim Installieren der Peripheriegeräte mit einer Steuerung verringern kann. Das System weist eine Steuerung auf, einen mit der Steuerung verbundenen Monitor und zumindest ein zu steuerndes Objekt. Das Objekt ist mit der Steuerung verbunden. Das Steuersystem weist weiterhin eine Entwicklungsvorrichtung zum Entwickeln eines Programms für das gesteuerte Objekt auf, eine Implementierungsvorrichtung zum Implementieren des von der Entwicklungsvorrichtung entwickelten Programms, sowie ein Softwaremodul, das eindeutig dem Objekt zugeordnet ist. Das Softwaremodul liegt in Form von Software vor, die zumindest eine der folgenden Prozeduren zur Verfügung stellt: eine Symbolprozedur zur Anzeige eines Symbols für das Objekt in einem Anzeigebereich auf dem Monitor, eine Beschreibungsprozedur zur Beschreibung eines Steuerprozesses für das Objekt, und eine Implementierungsprozedur zum Implementieren des für das Objekt entwickelten Steuerprozesses.

Description

Die vorliegende Erfindung betrifft ein System zum Entwickeln eines Anwendungssystems und dessen Implementierung für eine automatische Maschine.
Verschiedene Arten von Steuerungen, beispielsweise eine programmierbare Logiksteuerung (PLC) und eine Bewegungssteuerung, wurden zum Konfigurieren wohlbekannter automatisierter Maschinen verwendet, einschließlich beispielsweise von Werkzeugmaschinen auf dem Gebiet der Fabrikautomatisierung, industrieller automatisierter Maschinen wie beispielsweise Industrieroboter, sich selbst steuernde Roboter, und typische automatische Maschinen. Weiterhin ist die Steuerung mit verschiedenen Arten von Eingabegeräten verbunden, einschließlich eines Sensors und eines Schalters, um in sie Signale einzugeben, und ist auch mit zahlreichen Arten von Ausgabegeräten verbunden, einschließlich eines Motors und einer Anzeige, die so gesteuert werden. Weiterhin ist ein Programm in Form von Software, die Befehle (Instruktionen) angibt, für die Eingabe- und Ausgabegeräte (also I/O-Geräte) in der Steuerung installiert. Die automatisierten Maschinen werden nach Empfang der im Softwareprogramm angegebenen Befehle betrieben.
Wie voranstehend geschildert, sind die Eingabe- und Ausgabegeräte an Eingabe/Ausgabe-Verbinder (also I/O-Ports) der Steuerung angeschlossen. Wenn eine herkömmliche Steuerung eingesetzt wird, muss zuerst ein Programmierer der Steuerung genau feststellen, dass jeder der I/O-Ports mit welchem unter den I/O-Geräten verbunden ist, und richtet dann Softwaremodule oder Betriebsprogramme für I/O-Geräte ein, die in der Steuerung implementiert werden. Andernfalls kann die Steuerung nicht geeignete Befehle an die I/O-Geräte schicken, so dass die Steuerung nicht die I/O-Geräte steuern kann. Derartige Softwaremodule umfassen beispielsweise einen Gerätetreiber.
Die voranstehenden Nachteile wurden bis vor einigen Jahren nicht überwunden, und traten auf, wenn eine Erweiterungskarte und ein Peripheriegerät an einen herkömmlichen PC (Personal Computer) angeschlossen werden sollten. Ein derartiges Peripheriegerät wird auch als zu steuerndes Objekt oder einfach als Objekt bezeichnet. Der Benutzer muss genau die Verbindungen zwischen I/O-Ports, die sich auf dem PC befinden, und Peripheriegeräten verstehen, und dann kann der Benutzer ordnungsgemäß Softwaremodule und/oder Betriebsprogramme für die I/O-Geräte installieren, die von dem PC ausgeführt werden sollen.
Inzwischen wurde eine andere Art von Schnittstelle entwickelt, unter dem Konzept "Plug and Play (PnP)" (Anschließen und Abspielen), für die Verbindung zwischen dem PC und den Peripheriegeräten. Die voranstehend geschilderte PnP-Schnittstelle ist beispielsweise ein "USB (Universal Serial Bus)" oder "IEEE1394 (Institute of Electrical and Electronics Engineers 1394)" als Standard. Tatsächlich verringert die Verwendung der PnP-Schnittstelle die Belastung für den Benutzer. Jedem der Peripheriegeräte mit einer PnP- Schnittstelle wird eine eindeutige Identifizierung zugeordnet, die als "GUID (Global Unique ID)" (global eindeutige Identifizierung) bezeichnet wird.
Wie voranstehend erwähnt, ist die GUID jene Identifizierung, die global eindeutig ist, und individuell jedem Objekt zugeordnet ist. Nunmehr wird angenommen, dass in dem PC bereits eine vorbestimmte Anzahl an Softwaremodulen, beispielsweise Gerätetreibern, zum Treiben entsprechender Objekte gespeichert ist. Sobald das I/O-Objekt an den PC angeschlossen ist, akquiriert der PC die GUID des I/O- Objekts. Dann identifiziert der PC automatisch das entsprechende Softwaremodul entsprechend der GUID, um das I/O-Geräte zu treiben. Daher wird der Benutzer davon befreit, ein geeignetes Softwaremodul, beispielsweise einen Gerätetreiber, auswählen und einrichten zu müssen. Hierbei kann sich der Benutzer sogar noch nicht einmal der Tatsache bewusst sein, dass das Softwaremodul in dem PC installiert ist, während der Benutzer den Anschluss mit dem I/O-Gerät herstellen kann, um dieses einzusetzen. Obwohl der Benutzer die optionalen Parameter des Softwaremoduls eingeben und speichern muss, kann auch diese Aufgabe vermieden werden, wenn deren vorbestimmte Anfangswerte verwendet werden.
Weiterhin weisen die Standards USB und IEEE1394 eine weitere Funktion auf, die auf dem Konzept "Hot Plug" ("Heißer Stecker") beruht. Der herkömmliche PC muss heruntergefahren und dann erneut gebootet werden, um ein Softwaremodul zu aktivieren, das für ein zusätzliches Gerät neu installiert wird. Die Funktion "Hot Plug" ermöglicht es dem Benutzer, ein anderes Gerät an den PC ohne dessen Herunterfahren anzuschließen, so dass praktisch kein Task für den Anschluss des Geräts an den PC erforderlich ist. Daher wird der Benutzer erheblich weniger belastet als bei der Nutzung eines herkömmlichen PC.
Die PnP-Schnittstelle, beispielsweise vom Standard USB und/oder IEEE1394, weist noch ein weiteres Merkmal auf. Da Kommunikationsprotokoll der PnP-Schnittstelle ist nämlich der Öffentlichkeit zugänglich. Anders ausgedrückt, wird ihr Kommunikationsprotokoll veröffentlicht. Daher können verschiedene Dritte Peripheriegeräte für den PC entwickeln. Der Anschluss eines Peripheriegerätes an den herkömmlichen PC macht es erforderlich, dass eine Erweiterungskarte, beispielsweise eine spezielle Verbindungskarte für die Verbindung zwischen den beiden Geräten vorgesehen wird, und dies ist aufgrund des Merkmals der Publizität nicht mehr erforderlich.
Das voranstehend geschilderte Merkmal der Publizität wird bei dem Kommunikationsprotokoll zwischen dem PC und dem Peripheriegerät erzielt. Weiterhin hat der Bedarf zugenommen, so dass das Merkmal der Publizität bei dem Kommunikationsprotokoll zwischen der Steuerung und dem Peripheriegerät erzielt wird. Es wurden verschiedene Steuerungen vorgeschlagen, die Schnittstellen wie beispielsweise den Standard USB und/oder IEEE1394 mit dem Merkmal der Publizität verwenden.
Wir voranstehend geschildert, unterstützen neuere Steuerungen und PCs die PnP-Schnittstelle, beispielsweise die Standards USB und/oder IEEE1394. Allerdings wurde das Merkmal "Plug and Play" noch nicht ausreichend ausgenutzt, damit das Gerät sofort nach seinem Anschluss an den PC oder eine Steuerung verwendet werden kann.
Zuerst wird der Betriebsablauf des Peripheriegerätes (Objekts) nachstehend beschrieben, das von dem PC kontrolliert wird. Wenn der Benutzer beispielsweise eine typische Maus als Beispiel für ein Peripheriegerät bewegt, bewegt sich ein Maus-Cursor auf dem Monitor entsprechend der tatsächlichen Bewegung der Maus. Daher wird der Betriebsablauf des Maus-Cursors vorher programmiert, und bleibt unverändert bei der Maus und dem PC. Eine USB-Kamera ist ein weiteres Beispiel für ein Peripheriegerät, bei welchem ein bestimmtes Softwareprogramm zur Anzeige von Bildern, die von der USB-Kamera aufgenommen werden, auf dem PC-Monitor zusammen mit der USB-Kamera von deren Hersteller vertrieben wird. Die USB-Kamera kann nicht ohne Verwendung des Softwareprogramms betrieben werden. Zu diesem Zweck liegen die Art und Weise des Betriebs der Peripheriegerätes und die Betriebsumgebung des PC fest, und können nicht durch den Benutzer geändert werden (durch Instruktionen mit Programmcodes).
Als zweites wird der Betriebsablauf eines Peripheriegerätes (Objekts) nachstehend beschrieben, das von einer Steuerung gesteuert wird. An sich muss der Betriebsablauf des Objekts, das an die Steuerung angeschlossen ist, in der Steuerung über Programmcodes vorher programmiert werden. Anders ausgedrückt, kann die Steuerung nicht das Gerät treiben, unmittelbar nachdem einfach das Gerät an die Steuerung angeschlossen wurde, es sei denn, in der Steuerung wurden Programmcodes für das Objekt installiert.
Selbst wenn die Steuerung so ausgebildet ist, dass sie Schnittstellen wie die Standards USB oder IEEE1394 verwendet, muss bei der Steuerung das Softwaremodul oder das darin implementierte Betriebsprogramm installiert werden, ebenso wie bei den herkömmlichen Steuerungen. Die Vorteile des Merkmals "Plug and Play" können in derartigen Fällen nicht ausreichend genutzt werden.
Die vorliegende Erfindung ist zum Einsatz eines Systems zum Konfigurieren einer automatisierten Maschine gedacht, welche Peripheriegeräte (Objekte) und Steuerungen enthält, mit PnP- Schnittstellen (also mit dem Merkmal "Plug and Play").
Das erste Ziel der Erfindung besteht in der Bereitstellung eines Systems zum Entwickeln von Anwendungssystemen und dessen Implementierung, welches die Belastung des Benutzers in bezug auf die Installierung der Peripheriegeräte bei einer Steuerung verringern kann.
Das zweite Ziel der Erfindung besteht in der Bereitstellung eines Systems, welches bei verschiedenen Steuerprogrammen installiert werden kann, z. B. bei einem Prozedurprogramm, einem ereignisgetriebenen Programm und einem Bewegungsprogramm, auf einfache Art und Weise.
Ein System gemäß einer ersten Zielrichtung der vorliegenden Erfindung weist auf: eine Steuerung; einen an die Steuerung angeschlossenen Monitor; zumindest ein zu steuerndes Objekt, das an die Steuerung angeschlossen ist; eine Entwicklungsvorrichtung zum Entwickeln eines Programms für das gesteuerte Objekt; eine Implementierungsvorrichtung zum Implementieren des von der Entwicklungsvorrichtung entwickelten Programms; und ein Softwaremodul, das eindeutig dem Objekt zugeordnet ist, wobei das Softwaremodul in Form von Software vorliegt, die zumindest eine der folgenden Prozeduren bereitstellt: eine Symbolprozedur zur Anzeige eines Symbols für das Objekt in einem Anzeigebereich auf dem Monitor, eine Beschreibungsprozedur zur Beschreibung eines Steuerprozesses für das Objekt, und eine Implementierungsprozedur zum Implementieren des für das Objekt entwickelten Steuerprozesses.
Das Softwaremodul wird eindeutig dem Objekt mit einer bestimmten ID (Identifizierung) zugeordnet, beispielsweise durch eine global eindeutige ID (GUID), so dass die Inhalte der Gerätetreiber (der Softwaremodule des zu steuernden Objekts) unterscheidbar durch die eindeutige ID identifiziert werden können.
Weiterhin umfasst bei dem System gemäß der vorliegenden Erfindung das Objekt zumindest ein Gerät, von welchem die Entwicklungsvorrichtung eine global eindeutige ID oder andere entsprechende Daten akquiriert, wobei die Entwicklungsvorrichtung das Softwaremodul durch die global eindeutige ID oder die anderen entsprechenden Daten identifiziert.
Da das Softwaremodul eindeutig dem Objekt durch eine bestimmte ID zugeordnet ist, beispielsweise eine global eindeutige ID (GUID), können die Inhalte der Gerätetreiber (der Softwaremodule des zu steuernden Objekts) unterscheidbar durch die eindeutige ID identifiziert werden.
Weiterhin wird bei dem System gemäß der vorliegenden Erfindung das Softwaremodul in dem Objekt gespeichert, so dass die Entwicklungsvorrichtung das Softwaremodul von dem gesteuerten Objekt akquiriert.
Daher muss das System nicht eine derartige Speicherkapazität aufweisen, die dazu ausreicht, alle Softwaremodule für die anzuschließenden Objekte zu speichern.
Weiterhin wird bei dem System gemäß der vorliegenden Erfindung das Softwaremodul innerhalb eines Datenbankservers gespeichert, der an die Entwicklungsvorrichtung über einen Kommunikationsbus angeschlossen ist, so dass die Entwicklungsvorrichtung das Softwaremodul von dem Datenbankserver akquiriert.
Daher muss das System nicht eine derartige Speicherkapazität aufweisen, die dazu ausreicht, alle Softwaremodule für die anzuschließenden Objekte zu speichern.
Weiterhin werden alle Softwaremodule in dem Datenbankserver gespeichert, so dass ein einziges Management für Softwaremodule einfach realisiert werden kann.
Weiterhin stellt bei dem System gemäß der vorliegenden Erfindung die Entwicklungsvorrichtung einen Anzeigebereich auf dem Monitor zur Verfügung, in welchem zumindest ein Symbol angezeigt wird, wobei das Symbol das Objekt repräsentiert, das an die Steuerung angeschlossen ist, oder jenes Objekt, das an die Steuerung angeschlossen werden soll.
Daher kann der Benutzer (Programmierer) das Programm einfach entwickeln, und das entwickelte Programm leicht verstehen.
Weiterhin zeigt bei dem System gemäß der vorliegenden Erfindung die Symbolprozedur mehrere Symbole in dem Anzeigebereich auf dem Monitor an, wobei jedes Symbol den momentanen Status des Objekts erläutert.
Daher kann der Benutzer (Programmierer) den momentanen Status des Objekts durch Betrachtung der Symbole auf dem Monitor erkennen.
Weiterhin stellt bei dem System gemäß der vorliegenden Erfindung die Entwicklungsvorrichtung einen Entwicklungsbereich auf dem Monitor zur Verfügung, und kopiert der Benutzer das Symbol von dem Anzeigebereich in den Entwicklungsbereich, um so das Programm zu entwickeln.
Daher kann der Benutzer (Programmierer) das Programm einfach entwickeln, und das entwickelte Programm leicht verstehen.
Weiterhin verwendet bei dem System gemäß der vorliegenden Erfindung der Benutzer die Beschreibungsprozedur zum Beschreiben eines Steuerprozesses für das Objekt, der eine Operation des Objekts bestimmt, um so das Programm zu entwickeln.
Daher können verschiedene Operationen des Objekts durch die Beschreibungsprozedur bei der Entwicklung des Programms programmiert werden.
Weiterhin zeigt bei dem System gemäß der vorliegenden Erfindung die Symbolprozedur mehrere Symbole in dem Anzeigebereich auf dem Monitor an, wobei jedes Symbol eine Operation des Objekts erläutert.
Daher kann der Benutzer (Programmierer) das Programm einfach entwickeln, und leicht das entwickelt Programm verstehen.
Weiterhin verbindet bei dem System gemäß der vorliegenden Erfindung der Benutzer mehrere Symbole miteinander, um ein Flussdiagramm in dem Entwicklungsbereich auszubilden, und so das Programm zu entwickeln.
Daher kann der Benutzer (Programmierer) das Programm einfach entwickeln, und leicht das entwickelte Programm verstehen.
Weiterhin zeigt bei dem System gemäß der vorliegenden Erfindung die Entwicklungsvorrichtung die Symbole in dem Anzeigebereich an, und simuliert die Operation des Objekts, während das Programm simuliert wird, wodurch der Monitor zur Anzeige dieser Simulation verwendet wird.
Daher kann der Benutzer den Ablauf oder Fluss der Simulation des Programms verfolgen.
Weiterhin zeigt bei dem System gemäß der vorliegenden Erfindung die Entwicklungsvorrichtung die Symbole in dem Anzeigebereich an, erläutert die Operation des Objekts, während die Implementierungsvorrichtung das Programm implementiert, wodurch der Monitor zur Anzeige der Operationen verwendet wird.
Daher kann der Benutzer den Ablauf der Operation des Programms verfolgen.
Weiterhin schickt bei dem System gemäß der vorliegenden Erfindung das durch die Implementierungsvorrichtung zu implementierende Programm Nachrichten an das Objekt, und/oder empfängt Nachrichten von dem Objekt.
Daher kann der Benutzer das Programm unter Berücksichtigung einer objektorientierten Systementwicklung entwickeln. Daher kann der Benutzer (Programmierer) das Programm einfach entwickeln, und leicht das entwickelte Programm verstehen.
Weiterhin ist bei dem System gemäß der vorliegenden Erfindung das Objekt mit der Steuerung über eine Schnittstelle verbunden, die Funktionen einschließlich der Funktion "Plug and Play" oder der Funktion "Hot Plug" zur Verfügung stellt.
Daher kann der Benutzer das Anwendungssystem für automatisierte Maschinen konfigurieren, und hierbei Funktionen wie die Funktion "Plug and Play" oder die Funktion "Hot Plug" nutzen.
Der weitere Umfang der Einsetzbarkeit der vorliegenden Erfindung wird noch deutlicher aus der nachstehenden, detaillierten Beschreibung. Allerdings wird darauf hingewiesen, dass zwar die detaillierte Beschreibung und die speziellen Beispiele bevorzugter Ausführungsformen die Erfindung betreffen, jedoch nur zur Erläuterung dienen, da Fachleuten auf diesem Gebiet verschiedene Änderungen und Modifikationen innerhalb des Wesens und Umfangs der Erfindung deutlich werden.
Die Erfindung wird nachstehend anhand zeichnerisch dargestellter Ausführungsbeispiele erläutert, aus welchen weitere Vorteile und Merkmale hervorgehen. Es zeigt:
Fig. 1 ein Flussdiagramm einer Prozedur gemäß Ausführungsform 1 der vorliegenden Erfindung, mit der Darstellung einer Reihe von Schritten zum Konfigurieren eines Anwendungssystems für eine automatisierte Maschine;
Fig. 2A bis 2C Blockschaltbilder, die den Aufbau eines Systems mit einem PC, einer Steuerung und einem Peripheriegerät (zu steuerndem Objekt) zeigen;
Fig. 3 ein Blockschaltbild einer Softwarearchitektur gemäß Ausführungsform 1 der vorliegenden Erfindung;
Fig. 4A bis 4C Blockschaltbilder anderer Softwarearchitekturen einschließlich mehrerer Peripheriegeräte gemäß der Ausführungsform 1 der vorliegenden Erfindung;
Fig. 5 A bis 5C Blockschaltbilder von Verbindungen zu einer Datenbank von Softwaremodulen;
Fig. 6A bis 6C schematische Ansichten einer Programmentwicklungsumgebung;
Fig. 7A und 7B schematische Ansichten der Programmentwicklungsumgebung bei der Entwicklung von Programmen;
Fig. 8 ein Flussdiagramm einer Prozedur gemäß Ausführungsform 2 der vorliegenden Erfindung, wobei eine Gruppe von Schritten zum virtuellen Konfigurieren eines Anwendungssystems für eine automatisierte Maschine gezeigt ist;
Fig. 9A und 9B schematische Ansichten einer virtuellen Programmentwicklungsumgebung;
Fig. 10A und 10B schematische Ansichten einer virtuellen Programmentwicklungsumgebung bei den Entwicklung und Simulation von Programmen;
Fig. 11A und 11B schematische Ansichten der Programmentwicklungsumgebung zusammen mit einer virtuellen Assistenz; und
Fig. 12A und 12B schematische Ansichten einer Programmentwicklungsumgebung während der Entwicklung und Überwachung von Programmen.
Ausführungsform 1
Fig. 1 zeigt eine Prozedur gemäß Ausführungsform 1 der vorliegenden Erfindung, wobei eine Reihe von Schritten zum Konfigurieren eines Anwendungssystems für eine automatisierte Maschine gezeigt ist. Diese Gruppe von Schritten wird nachstehend im einzelnen erläutert.
Bei dem in Fig. 1 gezeigten Schritt S02 wird vor der Konfiguration des Anwendungssystems die automatisierte Maschine dadurch zusammengestellt, dass ein Peripheriegerät (ein zu steuerndes Objekt) mit einer Steuerung verbunden wird.
Fig. 2A zeigt, dass die Steuerung 6 mit einem Programmiergerät 2 zum Entwickeln von Programmen und dem Peripheriegerät 10 über eine erste bzw. zweite Verbindungsvorrichtung 4 bzw. 8 verbunden ist. Typischerweise ist das Programmiergerät 2 ein PC (Personal Computer). Der PC enthält ein Betriebssystem, beispielsweise "Windows 98", "Windows NT" oder "Windows 2000", die von Microsoft Corp. erhältlich sind. Alternativ kann das Betriebssystem auch "Mac OS" sein, das von Apple Computer, Inc., erhältlich ist, oder "Linux". Zusätzlich kann das Programmiergerät 2 eine Spielmaschine sein, die an ein Fernsehgerät anschließbar ist, oder eine Spielmaschine, die einen Anzeigemonitor aufweist (also eine tragbare Spielmaschine).
Andererseits kann, wie in Fig. 2B gezeigt, das Programmiergerät 2 in die Steuerung 6 eingebaut sein. Die Steuerung 6, die in Fig. 2B gezeigt ist, hat auch die Funktion des Programmiergerätes 2. Hierbei ist es vorzuziehen, dass die Steuerung 6 den Anzeigemonitor und die Befehlstasten enthält, die zur Entwicklung von Programmen verwendet werden. Wenn der Anzeigemonitor die Funktion eines Berührungsbildschirms hat, können bei der Steuerung 6 die Befehlstasten weggelassen werden. Alternativ ist, wie in Fig. 2C gezeigt, die Steuerung 6 in das Programmiergerät 2 eingebaut. In diesem Fall hat das Programmiergerät 2 die Funktion der Steuerung 6.
Die Kommunikationsverfahren der ersten und zweiten Verbindungsvorrichtung 4, 8 können gleich sein, oder sich voneinander unterscheiden. Die Kommunikationsverfahren können durch Kabelkommunikation genutzt werden, beispielsweise nach den Standards USB und IEEE1394, oder es kann Funkkommunikation vorgesehen sein, beispielsweise nach den Standards Bluetooth und IrDA.
Dann akquiriert in dem Schritt S04 von Fig. 1 das Programmiergerät 2 Information in bezug auf das Peripheriegerät 10 über die zweite Verbindungsvorrichtung 8, die Steuerung 6 und die erste Verbindungsvorrichtung 4. Jedes der Programmiergeräte 10 weist eine Identifizierung auf, die als GUID bezeichnet wird (Global eindeutige Identifizierungsdaten), um den Hersteller und seine Spezifikationen anzugeben. Das Gerät 10 kann auch eine andere Art von Daten entsprechend GUID zur Verfügung stellen. Die GUID (oder entsprechende Daten) sind in dem Speicher (nicht gezeigt) des zu steuernden Peripheriegeräts 10 gespeichert. Dann holt sich eine Programmentwicklungsumgebung 20, wie sie unter Bezugnahme auf Fig. 3 genauer erläutert wird, die GUIDs zurück. Hierdurch kann die Programmentwicklungsumgebung 20 Informationen über den Hersteller und das Modell des Peripheriegerätes 10 erlangen, das an die Steuerung 6 angeschlossen ist.
Dann verknüpft sich in dem Schritt S06 von Fig. 1 die Programmentwicklungsumgebung 20 mit einem Gerätetreiber für das Peripheriegerät 10. Die Programmentwicklungsumgebung 20 führt einen Zugriff auf eine Datenbank durch, die Gerätetreiber für alle verfügbaren Peripheriegeräte 10 (Objekte) speichert. Daher nutzt die Programmentwicklungsumgebung 20 die GUID zur Auswahl von Gerätetreibern des Peripheriegerätes 10, und verknüpft sich hiermit. Alternativ holt sich die Programmentwicklungsumgebung 20 die Gerätetreiber, beispielsweise durch Kopieren oder Herunterladen der Gerätetreiber. Gerätetreiber können der Programmentwicklungsumgebung 20 in Form einer DLL (Dynamische Verknüpfungsbibliothek) zur Verfügung gestellt werden.
Fig. 3 zeigt eine Softwarearchitektur gemäß Ausführungsform 1 der vorliegenden Erfindung. Die Softwarearchitektur umfasst die Programmentwicklungsumgebung 20, die Programmimplementierungsumgebung 22, und den Gerätetreiber 24 für das Peripheriegerät (Objekt) 10. Fig. 3 erläutert die Steuerung 6, welche die Aufgabe des Programmiergerätes 2 hat, wie dies in Fig. 2B gezeigt ist. Allerdings kann das Programmiergerät 2 auch getrennt von der Steuerung 6 vorgesehen sein, wie in Fig. 2A gezeigt, wobei das Programmiergerät 2 als die Programmentwicklungsumgebung 20 dient, und die Steuerung 6 als die Programmimplementierungsumgebung 22. Das Programmiergerät 2, das zur Entwicklung von Programmen verwendet wird, kann auch als die Programmimplementierungsumgebung 22 dienen, um Programme während der Entwicklung von Programmen zu simulieren.
Der Gerätetreiber 24 bedient mehrere Prozeduren, einschließlich einer Anzeigeprozedur zum Anzeigen eines Symbols bei der Programmentwicklungsumgebung 20, eine Beschreibungsprozedur zum Beschreiben eines oder mehrerer Prozesse zum Steuern des Geräts, eine Implementierungsprozedur zum Implementieren des Prozesses zum Steuern des Gerätes (Objekts) 10 mit der Programmimplementierungsumgebung 22, und einer Kommunikationsprozedur für die Kommunikation des Peripheriegerätes 10 mit der Steuerung 6 durch ein Kommunikationsverfahren, beispielsweise USB und IEEE1394.
Fig. 4A zeigt die Softwarearchitektur einschließlich zweier unabhängiger Peripheriegeräte 10, die an die Steuerung 6 (und das Programmiergerät 2) angeschlossen sind. Wie voranstehend geschildert, kann die Programmimplementierungsumgebung 22 auch die Kommunikationsprozedur 26 für die Kommunikation mit Peripheriegeräten 10 umfassen. Wenn die beiden Peripheriegeräte 10 dieselbe Art von Schnittstelle (Kommunikationsverfahren) verwenden, also beispielsweise beide USB-Geräte sind, können sie sich nur eine Kommunikationsprozedur 26 teilen, wie das bei 4B gezeigt ist. Wenn sich die Schnittstellen der Peripheriegeräte 10 voneinander unterscheiden, also beispielsweise eines von ihnen ein USB-Gerät ist, und das andere ein IEEE1394-Gerät, so verwendet jedes der Peripheriegeräte 10 eine entsprechende, getrennte Kommunikationsprozedur 26, wie dies in Fig. 4C gezeigt ist.
Vorzugsweise wird die Datenbank, die Gerätetreiber für alle verfügbaren Peripheriegeräte (Objekte) 10 speichert, in dem Programmiergerät 2 gespeichert, wie dies in Fig. 5A gezeigt ist. Insbesondere ist die Datenbank innerhalb der Festplatte 40 in dem PC 2 konfiguriert. Weiterhin kann die Datenbank auf einem externen Speichermedium 42 außerhalb des Programmiergeräts 2 gespeichert sein, wie in Fig. 5B gezeigt. Das externe Steckermedium 40 weist beispielsweise eine CD-ROM auf, eine DVD-ROM, und ein Speichermedium für die Spielsoftware, auf die von dem PC 2 zugegriffen werden kann. Alternativ kann die Datenbank an einem entfernten Server gespeichert sein (beispielsweise in dem Datenbankspeicherabschnitt 44 des Servers, wie in Fig. 5C gezeigt). In diesem Fall kann auf die Datenbank über den Bus 46 zugegriffen werden, beispielsweise über LANs oder das Internet.
Jedes Programmiergerät 10 kann seine eigenen Gerätetreiber 24 der Steuerung 6 zur Verfügung stellen. Daher weist jedes Programmiergerät 10 nicht nur die GUID auf, sondern auch die Gerätetreiber 24. Dann kann die Programmentwicklungsumgebung 20 die Gerätetreiber 24 direkt von dem angeschlossenen Programmiergerät 10 aquirieren. Hierdurch wird der Zugriff auf die Datenbank entbehrlich, welche Gerätetreiber speichert. Allerdings muss das Programmiergerät 10 eine ausreichend große Speicherkapazität aufweisen, um die Gerätetreiber 24 und ebenso die GUID zu speichern.
Dann wird im Schritt S08 von Fig. 1 ein Symbol 68, welches das Gerät erläutert, in dem Geräteanzeigebereich 66 der Programmentwicklungsumgebung 20 angezeigt. Falls der Gerätetreiber 24 ein bestimmten Symbol aufweist, wird das Symbol dort angezeigt.
Wie in den Fig. 6A bis 6C gezeigt ist, weist die Programmentwicklungsumgebung 20 (das Programmiergerät 2) gemäß der vorliegenden Erfindung einen Monitor 60 auf, der eine Werkzeugleiste 62 zur Ausführung grundlegender Operationen der Programmentwicklungsumgebung 20 aufweist, einen Programmentwicklungsbereich (Fenster) 64, und den Geräteanzeigebereich 66. Der Benutzer kann das Programm auf einfache Weise entwickeln, durch Kopieren und/oder Anschließen von Symbolen 68 der Peripheriegeräte 10 auf bzw. mit dem Programmentwicklungsbereich 64. Der Geräteanzeigebereich 66 wird dazu verwendet, in Form von Symbolen die Peripheriegeräte 10 anzuzeigen, die in dem Anwendungssystem für die automatisierte Maschine verwendet werden. Der Geräteanzeigebereich 66 kann verschiedene Formen annehmen, etwa die eines Fensters, einer Werkzeugleiste und einer Baumansicht, wie dies in Fig. 6A, 6B bzw. 6C gezeigt ist.
Dann zieht in dem Schritt S10 von Fig. 1 der Benutzer die Gerätesymbole 68 auf den Geräteanzeigebereich 66 und legt sie in dem Programmentwicklungsbereich 64 ab. Daher werden die Gerätesymbole 68, die auf dem Geräteanzeigebereich 66 angezeigt werden, neu auf den Programmentwicklungsbereich 64 kopiert. Die Programmentwicklungsumgebung 20 kann vorzugsweise einen anderen Anzeigebereich (nicht gezeigt) aufweisen, für verschiedene Steuerbefehle, ebenfalls in Form von Symbolen, die beispielsweise einen Verzweigungsbefehl, einen Wiederholungsbefehl, oder einen Interrupt-Befehl umfassen, die zur Entwicklung von Programmen wesentlich sind. Weiterhin werden Symbole für Steuerbefehle, die zur Entwicklung des Programms erforderlich sind, ebenfalls gezogen und in dem Programmentwicklungsbereich 64 abgelegt (neu kopiert).
Dann entwickelt in dem Schritt S12 von Fig. 1 der Benutzer das Programm, durch Verbinden mehrerer Symbole, die auf dem Programmentwicklungsbereich 64 angezeigt werden, so dass die Steuerung 6 das Programm implementiert. Um Symbole zu verbinden, kann der Benutzer ein Symbol neben einem anderen Symbol anordnen, und alternativ kann der Benutzer zwei Symbole durch eine Linie entsprechend einer Form des Flussdiagramms verbinden.
Wie in den Fig. 7A und 7B gezeigt ist, weist in der Programmentwicklungsumgebung 20 gemäß der vorliegenden Erfindung der Monitor 60 auch einen Programmentwicklungsbereich 64 auf, der das Gerätesymbol 68' enthält, das von dem Geräteanzeigebereich 66 kopiert wurde, ein Startsymbol 70, welches eines der Steuersymbole ist, die den Start des Programms anzeigen, einen Pfeil 72, der das Startsymbol 70 mit dem Gerätesymbol 68' entsprechend der Form des Flussdiagramms verbindet, und einen Dialogkasten (oder die Anwendungssoftware) 88 zur Beschreibung der Operation des Gerätesymbols 68'.
Ein Doppelklick auf das Gerätesymbol 68' öffnet dessen Dialogkasten 88. Wenn der Gerätetreiber 24 die Beschreibungsprozedur zur Beschreibung eines oder mehrerer Prozesse zum Steuern des Peripheriegerätes 10 aufweist, taucht der Dialogkasten 88 entsprechend der Beschreibungsprozedur auf. Um die Beschreibung des Prozesses zu vervollständigen, muss der Benutzer die Symbole 68' anordnen, und dem Prozess in dem Dialogkasten 88 einrichten. Nachdem mehrere Gerätesymbole 68' kopiert (gezogen und abgelegt) von dem Geräteanzeigebereich 66 in den Programmentwicklungsbereich 64 wurden, und miteinander verbunden wurden (also nach der Beendigung der Anordnung der Symbole), kann daher der Prozess in dem Dialogkasten 88 konfiguriert werden, der durch einen Doppelklick auf das Gerätesymbol 68' geöffnet wird. Alternativ hierzu können, nachdem die Prozesse in dem Dialogkasten 88 konfiguriert wurden, mehrere der Gerätesymbole 68' mit den anderen verbunden werden. Wenn der Gerätetreiber 24 mehrere Symbole in Reaktion auf die Geräteoperationen und/oder den momentanen Zustand des Peripheriegerätes 10 aufweist, taucht das Symbol 68'' auf, welches die momentane Operation und/oder den Zustand des Gerätes anzeigt, wie dies in Fig. 7B gezeigt ist.
Vorzugsweise wird eine bestimmte Anwendungssoftware dazu verwendet, den Prozess des Gerätesymbols 68' zu beschreiben, so dass der Benutzer fortgeschrittenere Operationen der Peripheriegeräte 10 programmieren kann.
Schließlich werden in dem Schritt S14 von Fig. 1 die entwickelten Programme und die Gerätetreiber 24 an die Programmimplementierungsumgebung 22 übertragen und dort implementiert. Wenn jedoch die Programmimplementierungsumgebung 22 die Kommunikationsprozedur 26 aufweist, muss ein entsprechender Anteil der Gerätetreiber 24 nicht übertragen werden. Hierzu wird nur der erforderliche Anteil der Gerätetreiber 24 von der Programmentwicklungsumgebung 20 an die Programmimplementierungsumgebung 22 übertragen.
Die Steuerung 6 kann ein Anzeigegerät zur Anzeige des Fortschritts der Programme aufweisen. In diesem Fall können die Symbole 68, 68' und 68'' in Reaktion auf die Zustände des Peripheriegerätes 10 auf dem Anzeigegerät der Steuerung 6 durch Übertragung an die Steuerung 6 angezeigt werden.
Wie aus den voranstehenden Ausführungen deutlich geworden sein sollte, werden die Operationen der Programmentwicklungsumgebung 20 und der Programmimplementierungsumgebung 22 gemäß Ausführungsform 1 mit den Programmcodes geschrieben, die für die Computersteuerung angepasst sind. Diese Programmcodes werden in dem Speicher (nicht gezeigt) bzw. dem Prozessor (nicht gezeigt) des Computers gespeichert bzw. implementiert. Diese Programmcodes können auch auf dem externen Speichermedium gespeichert werden, etwa einer CD-ROM.
Wie nachstehend verdeutlicht, werden bei der Ausführungsform 1 verschiedene Vorteile erzielt.
Der erste Vorteil besteht darin, dass die Programmentwicklungsumgebung 20 automatisch mit den Gerätetreibern 24 für die angeschlossenen Peripheriegeräte 10 verknüpft wird. Daher kann die mühsame Aufgabe für den Benutzer wegfallen, das Programm so zu entwickeln, dass es die Peripheriegeräte 10 betreibt. Anders ausgedrückt, ist keine weitere Einstellung erforderlich, beispielsweise ein Anschluss einer geeigneten Schnittstelle zwischen der Steuerung 6 und den Peripheriegeräten 10. Zu diesem Zweck kann der Benutzer das Programm zum Steuern der Peripheriegeräte 10 mit der Funktion "Flug and Play" auf einfache Weise entwickeln.
Ein weiterer Vorteil besteht darin, dass infolge der Tatsache, dass der Benutzer nur auf die Peripheriegeräte 10 zugreifen kann, die programmiert werden können, Programmierfehler ausgeschaltet werden können. Der Hauptanteil der detaillierten Software für die Peripheriegeräte 10 ist in dem Gerätetreiber 24 enthalten. Daher kann der Benutzer den großen Umfang des Anwendungssystems dadurch konfigurieren, dass er nur die Gerätetreiber 24 für die verschiedenen Peripheriegeräte 10 verknüpft, deren Operation bewertet wurde, ohne Kenntnis des codierten Inhalts des Gerätetreibers 24. Der Benutzer muss nur jene Funktionen verstehen, die mit den Gerätetreibern 24 erzielt werden, und die zugehörigen optionalen Parameter. Da der Benutzer nur die optionalen Parameter einstellt, wird hierdurch das Risiko wesentlich verringert, dass versehentlich inkonsistente Daten oder Daten mit irrelevanten Datentypen verwendet werden, und/oder falsche Steuersignale verwendet werden.
Wie voranstehend geschildert, kann der Benutzer das Programm mit grundlegenden Operationen entwickeln, beispielsweise Ziehen und Ablegen der Gerätesymbole 68 und deren Verbindungen, entsprechend der Form eines Flussdiagramms. Zusätzlich zu dem Vorteil, dass der Benutzer das Programm auf einfache Weise entwickeln kann, lässt sich das entwickelte Programm leicht von anderen Personen verstehen. Die Anzeige verschiedener Symbole auf dem Monitor 60 in Reaktion auf die Konfiguration und die Zustände der Peripheriegeräte 10 erleichtert es dem Benutzer, die entwickelten Programme zu verstehen.
Ausführungsform 2
Fig. 8 zeigt eine Prozedur gemäß Ausführungsform 2 der vorliegenden Erfindung, wobei eine Gruppe von Schritten zum Konfigurieren eines Anwendungssystems für eine automatisierte Maschine auf virtuelle Art und Weise gezeigt ist. Die Gruppe der Schritte wird im einzelnen nachstehend erläutert.
Um das Anwendungssystem virtuell zu entwickeln, wird zuerst im Schritt S102 von Fig. 8 die automatisierte Maschine virtuell "zusammengebaut", innerhalb des Geräteanzeigebereichs 66. Anders ausgedrückt werden die Gerätesymbole 68 dem Geräteanzeigebereich 66 hinzugefügt.
Wie in den Fig. 9A und 9B gezeigt ist, weist die Programmentwicklungsumgebung 20 gemäß der vorliegenden Erfindung einen Monitor 60 auf, der eine Werkzeugleiste 62 zur Ausführung grundlegender Operationen der Programmentwicklungsumgebung 20 aufweist, einen Programmentwicklungsbereich (Fenster) 64, und den Geräteanzeigebereich 66. Die Programmentwicklungsumgebung 20 gemäß Ausführungsform 2 kann im wesentlichen ebenso ausgebildet sein wie bei der Ausführungsform 1, wie in Fig. 6A gezeigt. Weiterhin weist, wie in Fig. 9A dargestellt ist, die Programmentwicklungsumgebung 20 gemäß Ausführungsform 2 einen Gerätedialogkasten 100 auf, in welchem alle Symbole der verfügbaren Peripheriegeräte 10 angezeigt werden. Der Benutzer kann die Gerätesymbole 10 in dem Gerätedialogkasten 100 auswählen, und sie zum Geräteanzeigebereich 66 hinzufügen. Die Datenbank, welche Gerätetreiber 24 für alle verfügbaren Peripheriegeräte (Objekte) 10 speichert, kann im wesentlichen wie jene ausgebildet sein, die in den Fig. 5A bis 5C gezeigt ist.
Wie voranstehend erläutert, ist nur das Hinzufügen der Gerätesymbole 68 in dem Geräteanzeigebereich 66 dazu erforderlich, das virtuelle Anwendungssystem für die automatisierte Maschine zu konfigurieren. Weiterhin kann, wie in Fig. 9B gezeigt, ein Bild 102 ebenfalls dem Geräteanzeigebereich 66 hinzugefügt werden, um es dem Benutzer zu erleichtern, das zu programmierende Anwendungssystem klar zu verstehen.
Im Schritt S104 von Fig. 8 werden die Gerätetreiber 24 für die Peripheriegeräte 10 automatisch mit der Programmentwicklungsumgebung 20 verknüpft, wenn die Gerätesymbole 68 dem Geräteanzeigebereich 66 hinzugefügt werden. Bei der Ausführungsform 1 empfängt die Steuerung 6 die GUIDs der angeschlossenen Peripheriegeräte 10, so dass die Programmentwicklungsumgebung 20 die Peripheriegeräte 10 auf der Grundlage der GUIDs identifizieren kann. Auf diese Weise verknüpft sich die Programmentwicklungsumgebung 20 mit den Gerätetreibern für die an die Steuerung 6 angeschlossenen Peripheriegeräte 10. Bei der Ausführungsform 2 wählt der Benutzer die Gerätesymbole 68 für die gewünschten Peripheriegeräte 10 unter allen Gerätesymbolen 68 aus, die auf dem Monitor 60 angezeigt werden. Daher verknüpft sich die Programmentwicklungsumgebung 20 mit den Gerätetreibern 24 für die ausgewählten Peripheriegeräte 10, ohne die GUID zu empfangen. Hierzu führt die Programmentwicklungsumgebung 20 gemäß Ausführungsform 2 eine automatische Verknüpfung mit den Gerätetreibern 24 durch, im wesentlichen auf die gleiche Art und Weise wie bei der Ausführungsform 1.
Dann zieht im Schritt S106 von Fig. 8 der Benutzer die Gerätesymbole 68, die sich auf dem Geräteanzeigebereich 66 befinden, und legt sie im Programmentwicklungsbereich 64 ab. Im Schritt S108 von Fig. 8 entwickelt wiederum der Benutzer das Programm durch Verbinden mehrerer Symbole, die auf dem Programmentwicklungsbereich 64 angezeigt werden, so dass die Steuerung 6 das Programm implementiert. Die Art und Weise der Entwicklung des Programms bei der Ausführungsform 2 ist daher im wesentlichen gleich jener der Ausführungsform 1.
Dann werden im Schritt S110 von Fig. 8 die Operationen der so entwickelten Programme dadurch untersucht, dass sie in der Programmentwicklungsumgebung 20 simuliert werden. Fig. 10A zeigt den Programmentwicklungsbereich 64, in dem die Programme wie voranstehend geschildert entwickelt wurden. Beim Start zum Simulieren des Programms zeigt, wie in Fig. 10B gezeigt, der Programmentwicklungsbereich 64 den Ablauf der programmierten Operationen an, also wie das Programm implementiert ist. Andererseits zeigt der Geräteanzeigebereich 66 den momentanen Status jedes Peripheriegerätes 10 an, also wie die Gerätesymbole 68 arbeiten. Vorzugsweise weist der Gerätetreiber 24 mehrere Gerätesymbole 68 auf, entsprechend den Operationen und/oder dem Momentanstatus des Peripheriegerätes 10. Wie in Fig. 10B gezeigt, wird das Programm nunmehr am Gerätesymbol (Befehl) 68'' in dem Programmentwicklungsbereich 68 simuliert, und weist das Gerätesymbol 68 momentan den Status EIN in dem Programmanzeigebereich 66 auf.
Nach der Simulation des Programms kann ein so entwickeltes und untersuchtes Programm gespeichert werden.
Im Schritt S112 von Fig. 8 können die entwickelten Programme und die Softwaremodule der Peripheriegeräte 10 an die Steuerung 6 übertragen werden, und dort implementiert werden. Allerdings wird darauf hingewiesen, dass das virtuelle System, das in der Programmentwicklungsumgebung 20 konfiguriert wurde, identisch zu dem tatsächlichen System ist, das durch körperliche Verbindung der Steuerung 6 mit den Peripheriegeräten 10 konfiguriert wurde. Um dies sicherzustellen, sammelt die Programmentwicklungsumgebung 20 die GUIDs der Peripheriegeräte 10 über die Steuerung 6, bevor sie den Schritt S112 durchführt, und vergleicht dann die Geräteinformation, die auf der Grundlage der tatsächlichen GUIDs gewonnen wurde, mit jener, die bei dem virtuell konfigurierten System vorhanden ist. Falls eine Inkonsistenz in dieser Hinsicht auftritt, kann die Programmentwicklungsumgebung 20 den Benutzer entsprechend über den Monitor 60 alarmieren.
Selbst wenn die entwickelten Programme und die Softwaremodule der Peripheriegeräte 10 an die Steuerung 6 übertragen werden, ohne sicherzustellen, dass zwischen ihnen keine Inkonsistenz vorhanden ist, tritt kein kritisches Problem auf. Da das Programm so ausgelegt ist, dass es die Funktion nur bedient, wenn die Peripheriegeräte 10 tatsächlich mit der Steuerung 6 verbunden sind, bleiben andernfalls jene Befehle des Programms, welche nicht angeschlossene Peripheriegeräte 10 betreffen, einfach unberücksichtigt. Daher ist dieses System ausfallsicher, so dass falsche Operationen verhindert werden.
Selbst wenn die Steuerung 6 mit einem anderen Peripheriegerät 10 verbunden ist, obwohl dies gar nicht gewünscht wurde, weisen die Programme keinen Befehl in bezug auf ein versehentlich angeschlossenes Peripheriegerät 10 auf. Daher tritt kein kritisches Problem auf.
Der Monitor 60 zur Anzeige der Simulation kann zur Überwachung des tatsächlichen Betriebs der Steuerung 6 verwendet werden.
Die Operationen der Programmentwicklungsumgebung 20 und der Programmimplementierungsumgebung 22 gemäß Ausführungsform 2 werden in den Programmcodes beschrieben, die zur Computersteuerung angepasst sind. Die Programmcodes werden in dem Speicher (nicht gezeigt) gespeichert, und auf dem Prozessor (nicht gezeigt) des Computers implementiert. Die Programmcodes können auf irgendwelchen externen Speichermedien gespeichert werden, beispielsweise einer CD- ROM.
Während gemäß Ausführungsform 1 ein tatsächliches Anwendungssystem für eine automatische Maschine konfiguriert wird, wird gemäß Ausführungsform 2 ein virtuelles Anwendungssystem für eine automatische Maschine konfiguriert. Ein anderes Anwendungssystem für eine automatische Maschine, bei welcher beide Ausführungsformen vermischt sind, lässt sich leicht ausdenken.
Mit der Ausführungsform 2 werden zahlreiche Vorteile erzielt, von denen einige nachstehend angegeben sind.
Der erste Vorteil besteht darin, dass selbst dann, wenn die Peripheriegeräte 10 nicht tatsächlich an die Steuerung 6 oder das Programmiergerät 2 angeschlossen sind (also selbst dann, wenn die Peripheriegeräte 10 nicht verfügbar sind), irgendwelche Programme in bezug auf die Peripheriegeräte 10 entwickelt werden können. Beim Konfigurieren der virtuellen Anwendungssysteme und/oder bei der Entwicklung von Programmen werden darüber hinaus die Gerätetreiber 24 für die anzuschließenden Peripheriegeräte 10 automatisch mit der Steuerung 6 verknüpft. Daher muss der Benutzer nur die wesentlichen Einzelheiten des Programms für den Betrieb der Peripheriegeräte 10 schreiben, wodurch das Einstellen mühsamer Einzelheiten ausgeschaltet wird. Zu diesem Zweck kann die Funktion "Plug and Play" wirksam genutzt werden, und daher kann der Wirkungsgrad bei der Entwicklung der Steuerprogramme wesentlich erhöht werden.
Simulationen der entwickelten Programme können Fehler bei diesen vermeiden. Da die Programme in Form eines Flussdiagramms geschrieben sind, und die Zustände der vorliegenden Simulationen hintereinander entsprechend dem Flussdiagramm angezeigt werden, kann der Benutzer einfach die Simulationen erkennen. Da die Gerätetreiber 24 mehrere Symbole entsprechend Operationen oder entsprechend dem momentanen Status des Peripheriegerätes 10 wie voranstehend geschildert aufweisen können, können die Gerätesymbole 68 entsprechend der Operation angezeigt werden. Daher kann der Benutzer noch leichter den Zustand der Operationen des virtuell konfigurierten Anwendungssystems verstehen.
Weiterhin können, wie voranstehend erwähnt, eines oder mehrere Bilder bei dem Monitor 60 hinzugefügt werden, so dass man ein Bild davon hat, für welche Art von Anwendungssystemen für die automatisierte Maschine eine Einstellung erfolgen wird. Dies vermittelt dem Benutzer ein besseres Verständnis in bezug auf die Bedingungen der Operationen des virtuell konfigurierten Anwendungssystems.
Wie voranstehend erwähnt, kann der Monitor 60 zur Anzeige der Simulation zum Überwachen des tatsächlichen Betriebs der Steuerung 6 verwendet werden. Hierdurch wird die Aufgabe ausgeschaltet, einen anderen Monitor zur Überwachung der entwickelten Steuerprogramme entwickeln zu müssen.
Da die vorliegende Erfindung die Entwicklung der Steuerprogramme ermöglicht, selbst wenn die Peripheriegeräte 10 nicht verfügbar sind, kann der Arbeitsaufwand zur Entwicklung eines Anwendungssystems im großen Maßstab auf mehrere Benutzer (Programmierer) aufgeteilt werden.
Ausführungsform 3
Bei den Ausführungsformen 1 und 2 sind die zu steuernden Peripheriegeräte 10 auf tatsächliche Geräte beschränkt, die körperlich mit der Steuerung 6 verbunden sind. Bei der Ausführungsform 3 werden derartige, durch die Steuerung 6 zu steuernde Objekte auf nicht-körperliche Objekte ausgedehnt, die nur auf dem Monitor 60 arbeiten, und als "virtueller Assistent" bezeichnet werden. Der virtuelle Assistent, der nachstehend als virtueller Manager 74 bezeichnet wird, ist daher nicht körperlich, jedoch kann er mit der Steuerung 6 auf dem Monitor 60 betrieben werden.
Bei der Ausführungsform 3 wird ein virtuelles Anwendungssystem für eine automatisierte Maschine im wesentlichen auf dieselbe Art und Weise wie bei der Ausführungsform 2 konfiguriert, wie dies in Fig. 8 gezeigt ist.
Die Fig. 11A und 11B sind schematische Ansichten der Programmentwicklungsumgebung 20 zusammen mit einem virtuellen Assistenten gemäß Ausführungsform 3.
Wenn das Anwendungssystem für eine automatisierte Maschine konfiguriert wird, stellt die Konstruktion des Monitors 60 eine wichtige Arbeit dar. Vorzugsweise hat der Monitor 60 nicht nur die Aufgabe, den tatsächlichen Betrieb der Geräte 10 zu überwachen, sondern darüber hinaus weitere Aufgaben. Daher sollte der virtuelle Manager 74 auf dem Monitor 60 auftauchen, um das Anwendungssystem und ebenso die Gerätesymbole 68 für tatsächliche Peripheriegeräte 10 einzustellen, so dass der Benutzer den Programmfluss beim Implementieren des Programms verfolgen kann.
Wie bezüglich der Ausführungsform 2 beschrieben wurde, kann der Monitor 60 zur Anzeige der Simulation auch zum Überwachen des tatsächlichen Betriebs der Steuerung 6 verwendet werden. Bei der Ausführungsform 2 werden die Gerätesymbole 68 der zu steuernden Objekte in dem Geräteanzeigebereich 66 und dem Programmentwicklungsbereich 64 auf dem Monitor 60 angeordnet. Bei der Simulation und Überwachung des Programms werden die Operationen der Objekte 10 durch die Gerätesymbole 68' und 68 angezeigt. Ähnlich wie bei der Ausführungsform 2, wird bei der Ausführungsform 3 der virtuelle Manager 74 in dem Geräteanzeigebereich 66 und dem Programmentwicklungsbereich 64 auf dem Monitor 60 angeordnet. Hierdurch kann der virtuelle Manager, der nur auf dem Monitor arbeiten kann, ausgebildet und benutzt werden.
Die Fig. 12A und 12B sind schematische Ansichten der Programmentwicklungsumgebung 20 bei der Ausführungsform 3, bei welcher der virtuelle Manager 73 zur Entwicklung des Programms verwendet wird. Ein Verzweigungsblock 76 wird in Fig. 12 verwendet. Der Dialogkasten 78 des zu steuernden Objekts (also der virtuelle Manager 74') schreibt dessen Steuerprozess. Ein Doppelklick auf das Objekt (den virtuellen Manager 74') öffnet den Dialogkasten 78. Der Benutzer programmiert die Operation der Objekte durch Einstellen eines Wahlschalters in dem Dialogkasten gemäß Ausführungsform 1, oder durch Auswahl eines von aufgeführten Befehlen gemäß Ausführungsform 3. Beide Arten und Weisen zum Programmieren der Operation des Objekts sind akzeptierbar, und es kann auch eine andere Art und Weise vorgesehen werden.
Wie bei der Ausführungsform 1 wird eine bestimmte Anwendungssoftware dazu benutzt, den Prozess des virtuellen Managers 74' bei der Ausführungsform 3 zu beschreiben, so dass der Benutzer fortgeschrittenere Operationen des virtuellen Managers 74' programmieren kann.
Falls die Steuerung 6 kein Anzeigegerät aufweist, wie in Fig. 2B gezeigt ist, können sämtliche entwickelten Programme, mit Ausnahme von deren Anteil, der den virtuellen Manager 74 betrifft, an die Steuerung 6 übertragen werden. Alternativ werden sämtliche entwickelten Programme an die Steuerung 6 übertragen, wobei die Steuerung 6 jedoch deren Anteil nicht berücksichtigt, der den virtuellen Manager 74 betrifft.
Obwohl der virtuelle Manager (virtuelle Assistent) 74 ein nicht-körperliches Objekt darstellt, wie voranstehend erwähnt, kann ein Identifizierungscode, beispielsweise ein GUID, dem virtuellen Manager 74 und ebenso einem tatsächlichen Peripheriegerät 10 zugeordnet werden. Der geschilderte ID-Code sollte sich von irgendwelchen anderen unterscheiden, welche den tatsächlichen Objekten 10 zugeordnet sind. Daher können die Objekte 10 nicht durch die Instruktionen für den virtuellen Manager 74 betrieben werden. Dieses Design führt zu einer Ausfallsicherheit, wodurch falsche Operationen der Objekte 10 verhindert werden.
Fig. 12B zeigt ein Beispiel für den Monitor 60, während der Implementierung der entwickelten Programme. Genauer gesagt zeigt Fig. 12B den Monitor 60, wie er den momentanen Status des entwickelten Programms überwacht, wenn sich das entwickelte Programm von dem Befehl 68 "EIN" zu einer anderen Prozedur verzweigt, in welcher "der virtuelle Manager 74 seine rechte Hand hebt". Wie in Fig. 12B gezeigt ist, hebt der virtuelle Manager 74 seine rechte Hand.
Die Operationen der Programmentwicklungsumgebung 20 und der Programmimplementierungsumgebung 22 gemäß Ausführungsform 3 sind in den Programmcodes geschrieben, die für die Computersteuerung angepasst sind. Diese Programmcodes werden in dem Speicher (nicht gezeigt) gespeichert, und in dem Prozessor (nicht gezeigt) des PC implementiert. Diese Programmcodes können auch in einem externen Speicher gespeichert werden, beispielsweise einer CD-ROM.
Bei der Ausführungsform 3 werden zahlreiche Vorteile erzielt, von denen einige nachstehend angegeben sind.
Der Benutzer erhält über den Monitor 60 Bildinformation, so dass er sofort mehr Information erkennen kann, als dies bei digitaler Information der Fall ist. Darüber hinaus kann dem Benutzer, da der virtuelle Assistent 74 durch eine eindeutige oder unterschiedliche Form, beispielsweise die Form einer Person, repräsentiert wird, diese Information leicht zur Verfügung gestellt werden.
Einige Vorteile, die bei den Ausführungsformen 1, 2 und 3 erzielt werden, sind nachstehend angegeben.
IEEE1394 stellt einen der Standards für eine Schnittstelle dar, die in sogenannten "Heimnetzwerkgeräten" verwendet werden kann. Wie bei den voranstehenden Ausführungsformen der vorliegenden Erfindung erläutert, können irgendwelche elektrischen Geräte, einschließlich eines Kühlschranks, eines Mikrowellenofens, einer Klimaanlage und einer Zimmerbeleuchtung, welche eine auf IEEE1394 beruhende Schnittstelle aufweisen, mit der Steuerung 6 verbunden werden. Die Steuerung kann vorher so programmiert werden, dass sie zusammen mit einem Zeitgeber arbeitet.
Weiterhin wird gemäß der vorliegenden Erfindung die Funktion "Hot Plug" wirksam genutzt, insbesondere auf Gebieten wie der Fabrikautomatisierung. Man könnte beispielsweise an einen Fall denken, in welchem ein Peripheriegerät 10 einem Anwendungssystem hinzugefügt oder aus diesem entnommen werden soll, das bereits konfiguriert ist, und bereit ist, mit einer automatisierten Maschine zu arbeiten. Die herkömmliche Steuerung müsste heruntergefahren werden, und dadurch neu programmiert werden, dass entsprechende Prozeduren hinzugefügt oder gelöscht werden. Im Gegensatz hierzu kann gemäß der vorliegenden Erfindung die Belastung des Benutzers wesentlich verringert werden, da das Programm so abgeändert (also hinzugefügt oder gelöscht) werden kann, dass die Peripheriegeräte 10 eingeschaltet bleiben.

Claims (15)

1. System, welches aufweist:
eine Steuerung (6);
einen an die Steuerung (6) angeschlossenen Monitor (60);
zumindest ein zu steuerndes Objekt (10), das an die Steuerung angeschlossen ist;
eine Entwicklungsvorrichtung zum Entwickeln eines Programms für das gesteuerte Objekt (20);
eine Implementierungsvorrichtung zum Implementieren des von der Entwicklungsvorrichtung (22) entwickelten Programms; und
ein eindeutig dem Objekt (10) zugeordnetes Softwaremodul, das in Form von Software vorliegt, die zumindest eine der folgenden Prozeduren zur Verfügung stellt:
eine Symbolprozedur zur Anzeige eines Symbols (68) für das Objekt (10) in einem Anzeigebereich auf dem Monitor (60),
eine Beschreibungsprozedur zur Beschreibung eines Steuerprozesses für das Objekt (10), und
eine Implementierungsprozedur zum Implementieren des für das Objekt (10) entwickelten Steuerprozesses.
2. System nach Anspruch 1, dadurch gekennzeichnet, dass
das Objekt (10) zumindest ein Gerät aufweist, von welchem die Entwicklungsvorrichtung (20) eine globale, eindeutige ID oder andere entsprechende Daten akquiriert, und
die Entwicklungsvorrichtung (20) das Softwaremodul durch die globale, eindeutige ID oder die anderen entsprechenden Daten identifiziert.
3. System nach Anspruch 2, dadurch gekennzeichnet, dass das Softwaremodul in dem Objekt (10) gespeichert ist, so dass die Entwicklungsvorrichtung (20) das Softwaremodul von dem gesteuerten Objekt (10) akquiriert.
4. System nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass das Softwaremodul in einem Datenbankserver (44) gespeichert ist, der mit der Entwicklungsvorrichtung (20) über einen Kommunikationsbus (46) verbunden ist, so dass die Entwicklungsvorrichtung (20) das Softwaremodul von dem Datenbankserver (44) akquiriert.
5. System nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Entwicklungsvorrichtung (20) einen Anzeigebereich auf dem Monitor (60) zur Verfügung stellt, in welchem zumindest ein Symbol (68) angezeigt wird, wobei das Symbol (68) das an die Steuerung (6) angeschlossene Objekt (10) repräsentiert, oder jenes Objekt (10), das mit der Steuerung (6) verbunden werden soll.
6. System nach Anspruch 5, dadurch gekennzeichnet, dass die Symbolprozedur mehrere Symbole (68) in dem Anzeigebereich (66) auf dem Monitor (60) anzeigt, wobei jedes Symbol (68) einen momentanen Status des Objekts (10) erläutert.
7. System nach Anspruch 5, dadurch gekennzeichnet, dass
die Entwicklungsvorrichtung (20) einen Entwicklungsbereich (64) auf dem Monitor (60) zur Verfügung stellt, und
der Benutzer das Symbol (68) aus dem Anzeigebereich (66) in den Entwicklungsbereich (64) kopiert, um hierdurch das Programm zu entwickeln.
8. System nach Anspruch 1, 2 oder 7, dadurch gekennzeichnet, dass der Benutzer die Beschreibungsprozedur zur Beschreibung eines Steuerprozesses für das Objekt (10) verwendet, welcher eine Operation des Objekts (10) bestimmt, um hierdurch das Programm zu entwickeln.
9. System nach Anspruch 8, dadurch gekennzeichnet, dass die Symbolprozedur mehrere Symbole (68) in dem Anzeigebereich (66) auf dem Monitor (60) anzeigt, wobei jedes Symbol (68) eine Operation des Objekts (10) erläutert.
10. System nach Anspruch 7 oder 8, dadurch gekennzeichnet, dass der Benutzer mehrere Symbole (68) miteinander verbindet, um ein Flussdiagramm in dem Entwicklungsbereich (64) auszubilden, um hierdurch das Programm zu entwickeln.
11. System nach Anspruch 9, dadurch gekennzeichnet, dass die Entwicklungsvorrichtung (20) die Symbole (68) in dem Anzeigebereich (66) anzeigt, und die Operation des Objekts (10) simuliert, während das Programm simuliert wird, wodurch der Monitor (60) zur Anzeige der Simulation verwendet wird.
12. System nach Anspruch 6, dadurch gekennzeichnet, dass die Entwicklungsvorrichtung (20) die Symbole (68) in dem Anzeigebereich (66) anzeigt, und die Operation des Objekts (68) erläutert, während die Implementierungsvorrichtung (22) das Programm implementiert, wodurch der Monitor (68) zur Anzeige der Operation verwendet wird.
13. System nach Anspruch 1, 2, 7 oder 8, dadurch gekennzeichnet, dass die Implementierungsvorrichtung (22) Nachrichten an das Objekt (10) schickt, und/oder Nachrichten von diesem empfängt, entsprechend dem entwickelten Programm.
14. System nach Anspruch 1, 2, 7 oder 8, dadurch gekennzeichnet, dass das Objekt (10) mit der Steuerung (6) über eine Schnittstelle verbunden ist, welche Funktionen einschließlich der Funktion "Plug and Play" oder der Funktion "Hot Plug" bedient.
15. Speichermedium, gekennzeichnet durch Speicherung von Programmcodes, welche das System gemäß Anspruch 1, 2, 7 oder 8 konfigurieren und betätigen.
DE10127722A 2000-06-21 2001-06-07 System zur Entwicklung eines Anwendungssystems und dessen Implementierung Ceased DE10127722A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000186410A JP2002007299A (ja) 2000-06-21 2000-06-21 デバイス制御プログラム開発手段及び実行手段

Publications (1)

Publication Number Publication Date
DE10127722A1 true DE10127722A1 (de) 2002-03-14

Family

ID=18686576

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10127722A Ceased DE10127722A1 (de) 2000-06-21 2001-06-07 System zur Entwicklung eines Anwendungssystems und dessen Implementierung

Country Status (3)

Country Link
US (1) US6912428B2 (de)
JP (1) JP2002007299A (de)
DE (1) DE10127722A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7183735B2 (en) 2003-05-08 2007-02-27 Siemens Aktiengesellschaft Drive unit for controlling drives in machine tools or production machines
DE102010060302A1 (de) * 2010-11-02 2012-05-03 Sartorius Weighing Technology Gmbh Verfahren zur Zusammenstellung und Überwachung einer aus einer Mehrzahl von austauschbaren Systemkomponenten bestehenden Systemanordnung

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6925513B1 (en) * 1999-05-04 2005-08-02 Apple Computer, Inc. USB device notification
US20020184348A1 (en) * 2000-09-20 2002-12-05 Lockheed Martin Corporation Object oriented framework architecture for sensing and/or control environments
US7024285B2 (en) * 2001-05-09 2006-04-04 Spraying Systems Co. Object-oriented operating system for a spray controller
DE10127803C2 (de) * 2001-06-07 2003-06-12 Siemens Ag Offener Antriebsregler und Verfahren zur Softwaregewinnung für einen offenen Antriebsregler
US7367028B2 (en) * 2001-08-14 2008-04-29 National Instruments Corporation Graphically deploying programs on devices in a system
DE10153085A1 (de) * 2001-10-30 2003-05-15 Bosch Gmbh Robert Verfahren und Vorrichtung zur Programmierung einer Steuereinheit
US20030126220A1 (en) * 2001-12-27 2003-07-03 James Wanless Quick reply codes for communication of information between electronic devices
JP2003256203A (ja) 2002-03-01 2003-09-10 Mitsubishi Electric Corp 自動機アプリケーションプログラム開発システム、プログラム開発方法、この方法を実行するプログラム、及びこのプログラムを記憶した記憶媒体
US7139979B2 (en) * 2002-06-10 2006-11-21 National Instruments Corporation Displaying operations in an application using a graphical programming representation
DE10348563B4 (de) * 2002-10-22 2014-01-09 Fisher-Rosemount Systems, Inc. Integration von Grafikdisplayelementen, Prozeßmodulen und Steuermodulen in Prozeßanlagen
JP2004206550A (ja) * 2002-12-26 2004-07-22 Fanuc Ltd 数値制御装置
JP4284499B2 (ja) * 2003-03-07 2009-06-24 ソニー株式会社 デバイス管理方法およびデバイス管理システム
JP2004310439A (ja) * 2003-04-07 2004-11-04 Nippon Telegr & Teleph Corp <Ntt> 環境モニタリングシステムとこのシステムで使用されるデータロガー及びそのプログラム
US8151280B2 (en) * 2003-10-27 2012-04-03 Microsoft Corporation Simple and dynamic configuration of network devices
WO2005068301A1 (de) 2004-01-19 2005-07-28 Krones Ag Vorrichtungen zum bewegen und etikettieren von behältern sowie verfahren zum anschliessen eines etikettieraggregats an eine bewegeinrichtung
US7266425B2 (en) * 2004-09-30 2007-09-04 Rockwell Automation Technologies, Inc. Systems and methods that facilitate motion control through coordinate system transformations
JP4749021B2 (ja) * 2005-04-05 2011-08-17 三菱電機株式会社 監視制御装置
US20060287932A1 (en) * 2005-06-20 2006-12-21 Spraying Systems Co. System and method for intelligent product configuration and price quotation
DE102006015255A1 (de) * 2006-04-01 2007-10-04 National Rejectors, Inc. Gmbh Bezahlsystem für einen Verkaufsautomaten
EP2012201B1 (de) 2007-07-05 2011-10-19 Sick Ag Verfahren zum Programmieren einer Sicherheitssteuerung
KR100881723B1 (ko) * 2007-09-21 2009-02-06 한국전자통신연구원 미디어 실감 재현을 위한 디바이스 연동/제어 정보 생성장치 및 방법
US20110302514A1 (en) 2008-03-11 2011-12-08 Creative Information Technology Method for designing a graphical interface program
US20090235188A1 (en) * 2008-03-11 2009-09-17 Creative Information Technology Method for designing a graphical interface program
DE102009012832A1 (de) 2009-03-02 2010-09-09 Khs Ag Verfahren und Vorrichtung zur automatischen Einbindung von Sensorvorrichtungen in eine zentrale Steuerung
DE102010012598A1 (de) * 2010-02-26 2011-09-01 Kuka Laboratories Gmbh Prozessmodulbibliothek und Programmierumgebung zur Programmierung eines Manipulatorprozesses
CN105579920B (zh) * 2013-09-24 2018-04-17 三菱电机株式会社 可编程控制器以及可编程控制器的控制方法
DK3371666T3 (da) * 2015-11-02 2021-10-18 Univ Johns Hopkins Fremstilling af en robotbrugergrænseflade som reaktion på tilslutning af periferienheder til robot
EP3588270B1 (de) * 2017-02-24 2022-06-01 VIVIWARE Japan, Inc. Steuerungsvorrichtung, steuerungsverfahren, informationsverarbeitungsvorrichtung, informationsverarbeitungsverfahren und programm
JP2021531576A (ja) 2018-07-17 2021-11-18 アイ・ティー スピークス エル・エル・シーiT SpeeX LLC インテリジェント産業アシスタントにおける役割およびスキルに基づく権限のための方法、システム、および、コンピュータプログラム製品
WO2020018536A1 (en) 2018-07-17 2020-01-23 iT SpeeX LLC Method, system, and computer program product for communication with an intelligent industrial assistant and industrial machine
US11232262B2 (en) 2018-07-17 2022-01-25 iT SpeeX LLC Method, system, and computer program product for an intelligent industrial assistant
JP2022520763A (ja) 2019-02-08 2022-04-01 アイ・ティー スピークス エル・エル・シー インテリジェント産業アシスタントのためのダイアログテンプレートを開発するための方法、システム、および、コンピュータプログラム製品
CN112859757B (zh) * 2019-11-27 2022-04-22 宁波舜宇智能科技有限公司 边缘计算控制方法、装置、边缘计算机和可读存储介质
BR102021003753A2 (pt) * 2021-02-26 2022-09-06 Novus Produtos Eletrônicos Ltda Controlador de processos industriais e método de detecção automática de módulos de expansão acoplado em dito controlador de processos

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4796179A (en) * 1986-08-20 1989-01-03 Integrated Systems, Inc. Multirate real time control system code generator
JP2526692B2 (ja) 1990-03-02 1996-08-21 三菱電機株式会社 プログラマブルコントロ―ラのプログラミング方法
JP2697399B2 (ja) 1991-09-13 1998-01-14 三菱電機株式会社 位置決め装置及びそのプログラム表示方法
US5392207A (en) 1993-08-20 1995-02-21 Allen-Bradley Company, Inc. Programmable motion controller with graphical programming aid
US5623592A (en) * 1994-10-18 1997-04-22 Molecular Dynamics Method and apparatus for constructing an iconic sequence to operate external devices
US6173438B1 (en) * 1997-08-18 2001-01-09 National Instruments Corporation Embedded graphical programming system
KR19990059547A (ko) * 1997-12-30 1999-07-26 윤종용 디바이스 제어용 키입력장치를 갖는 디바이스 베이 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7183735B2 (en) 2003-05-08 2007-02-27 Siemens Aktiengesellschaft Drive unit for controlling drives in machine tools or production machines
DE102010060302A1 (de) * 2010-11-02 2012-05-03 Sartorius Weighing Technology Gmbh Verfahren zur Zusammenstellung und Überwachung einer aus einer Mehrzahl von austauschbaren Systemkomponenten bestehenden Systemanordnung

Also Published As

Publication number Publication date
US6912428B2 (en) 2005-06-28
US20010056306A1 (en) 2001-12-27
JP2002007299A (ja) 2002-01-11

Similar Documents

Publication Publication Date Title
DE10127722A1 (de) System zur Entwicklung eines Anwendungssystems und dessen Implementierung
DE69804107T2 (de) Eingebautes grafisches programmierungssystem
DE10102205B4 (de) Verfahren und Vorrichtung zum Konfigurieren und Verwalten eines Prozeßsteuerungsnetzes
DE112005001031B4 (de) Grafisches Bildschirmkonfigurationsgerüst für vereinheitlichte Prozesssteuerungssystemoberfläche
DE69726167T2 (de) Verfahren zur verwaltung der darstellung von bildschirmanzeigen in einer multifenster-rechnungsumgebung
DE69121712T2 (de) Graphische, programmierbare schnittstelle für maschine-/prozesssteuerungsgeräte
DE69523325T2 (de) Graphisches programmier-interface für maschinen- bzw. prozess- steuerungen mit vorverbundenen parameterkonfigurationen
DE19781804B4 (de) Vorrichtung zur Simulation einer Echtzeit-Prozesssteuerung
DE102004051179B4 (de) Einstellungsvorrichtung für ein Steuerungssystem, Verfahren zum Einstellen eines Steuerungssystems und Einstellungsprogramm
EP2620871A2 (de) Verfahren zur Konfiguration eines BIOS in einem Computersystem sowie Computerprogrammprodukt
EP2453326B1 (de) Verfahren und System zur Bedienung einer Maschine aus der Automatisierungstechnik
DE112008003963B4 (de) System und Verfahren zur Off-line-Programmierung eines Industrieroboters
DE10021698A1 (de) Auf einem einzelnen Computer realisierte integrierende Funktionalität für ein verteiltes Prozessregelsystem
DE10243781A1 (de) Elektronische Vorrichtung für ein Bussystem
EP2751677B1 (de) Generieren einer benutzerschnittstelle auf einer anzeige
WO2013072425A1 (de) Verfahren, computerprogramm, computerlesbares medium und recheneinheit zur bedienung von feldgeräten
EP1714197B1 (de) Gerätetreiber für feldgeräte der prozessautomatisierungstechnik
WO2019192844A1 (de) Verfahren und vorrichtung zur darstellung und anpassung von konfigurationen von anlagekomponenten
EP1217476A2 (de) Vorrichtung und Verfahren zur Inbetriebnahme und Diagnose von Steuerungssystemen
EP0862763B1 (de) Simulatoreinheit zum simulieren einer peripherieeinheit einer modular aufgebauten speicherprogrammierbaren steuerung
EP2642359A1 (de) Entwicklungseinrichtung und Verfahren zum Erstellen eines Steuergeräteprogramms
EP1495381B1 (de) Messeinrichtung f r die prozesstechnik und betriebsverfahren f r eine messeinrichtung
EP1862901A1 (de) Eingabe von Programm-Anweisungen bei imperativen Programmiersprachen
WO2019057559A1 (de) Verfahren und datenverarbeitungsvorrichtung zum computerunterstützten bereitstellen einer in form von computercode vorliegenden information zu einem prozessmodul, sowie computerprogrammprodukt zur durchführung des verfahrens
DE112018006908B4 (de) Datenverwaltungssystem, Datenverwaltungsverfahren und Datenverwaltungsprogramm

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection