DE10127722A1 - System zur Entwicklung eines Anwendungssystems und dessen Implementierung - Google Patents
System zur Entwicklung eines Anwendungssystems und dessen ImplementierungInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
- G05B19/056—Programming the PLC
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0426—Programming the control sequence
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/13—Plc programming
- G05B2219/13144—GUI graphical user interface, icon, function bloc editor, OI operator interface
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/15—Plc structure of the system
- G05B2219/15007—On reinsertion board, power up, program setting, configuration automatically set
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/10—Plc systems
- G05B2219/15—Plc structure of the system
- G05B2219/15011—Configuration of operating system
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/23—Pc programming
- G05B2219/23258—GUI graphical user interface, icon, function bloc editor, labview
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25067—Graphic configuration control system
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25099—Detect 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.
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.
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.
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.
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.
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.
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.
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)
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)
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)
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 | 윤종용 | 디바이스 제어용 키입력장치를 갖는 디바이스 베이 장치 |
-
2000
- 2000-06-21 JP JP2000186410A patent/JP2002007299A/ja active Pending
-
2001
- 2001-05-01 US US09/845,361 patent/US6912428B2/en not_active Expired - Fee Related
- 2001-06-07 DE DE10127722A patent/DE10127722A1/de not_active Ceased
Cited By (2)
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 |