DE19949558A1 - Steuerungsprogramm für eine numerische Werkzeugmaschine mit einer wiederverwendbaren Softwarestruktur - Google Patents
Steuerungsprogramm für eine numerische Werkzeugmaschine mit einer wiederverwendbaren SoftwarestrukturInfo
- Publication number
- DE19949558A1 DE19949558A1 DE19949558A DE19949558A DE19949558A1 DE 19949558 A1 DE19949558 A1 DE 19949558A1 DE 19949558 A DE19949558 A DE 19949558A DE 19949558 A DE19949558 A DE 19949558A DE 19949558 A1 DE19949558 A1 DE 19949558A1
- Authority
- DE
- Germany
- Prior art keywords
- control program
- framework
- objects
- classes
- control
- 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.)
- Withdrawn
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/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/408—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by data handling or data format, e.g. reading, buffering or conversion of data
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Stored Programmes (AREA)
- Numerical Control (AREA)
Abstract
Um eine wiederverwendbare Softwarestruktur für das Steuerungsprogramm einer numerischen Werkzeugmaschine zu erstellen, wird das Steuerungsprogramm in einen anwendungsabhängigen Teil und einen anwendungsunabhängigen Teil gegliedert. Dabei weist der anwendungsunabhängige Teil der Software erfindungsgemäß mehrere Framework Klassen auf, die generische Funktionen beinhalten, beispielsweise für ein Mensch-Maschine-Interface, eine Geometrieverarbeitung, einen Interpolator. eine Bewegungsverarbeitung und einen speicherprogrammierbaren Steuerteil. Im anwendungsabhängigen Teil werden anwendungsspezifische Funktionen in abgeleiteten Klassen implementiert, die von den Klassen des anwendungsunabhängigen Frameworks abgeleitet werden. Von den abgeleiteten Klassen werden Instanzen gebildet, die die Daten für die implementierten Funktionen beinhalten und als Objekte bezeichnet werden. Zwischen den Objekten bestehen Kommunikationskanäle, über die Nachrichten ausgetauscht werden.
Description
Die Erfindung betrifft ein Steuerungsprogramm für eine numerische Werk
zeugmaschine mit einer wiederverwendbaren Softwarestruktur nach An
spruch 1.
Die EP 0 524 344 B1 offenbart eine konfigurierbare Werkzeugmaschinen
steuerung, die aus mehreren aufgabenorientierten Einheiten besteht, bei
spielsweise einem numerischen und einem speicherprogrammierbaren
Steuerteil, einer Bedienereinheit und einem Kommunikationsbereich mit
Netzwerkschnittstelle. Weiterhin ist mindestens ein in Soft- oder in Soft- und
Hardware realisiertes Funktionsobjekt, das eine Funktion durchführen kann,
vorgesehen. Dieses Funktionsobjekt untergliedert sich in einen Prozedurteil,
einen Kommunikationsteil und evtl. einen Bedienteil. Zusätzlich ist minde
stens ein Objektmanager vorhanden, der mindestens zwei Funktionsobjekte
verwaltet, insbesondere deren Nachrichtenaustausch synchronisiert. Diese
Steuerungsstruktur wird auf mindestens einer Datenverarbeitungsanlage
realisiert, welche die Daten der Funktionsobjekte und Objektmanager bear
beitet und selbst als aufgabenorientierte Einheit ausgebildet ist. Die Funkti
onsobjekte werden zu Prozessen zusammengefasst. Dabei werden so viele
Prozesse gebildet, wie Datenverarbeitungsanlagen vorhanden sind und
durch jede Datenverarbeitungsanlage ein Prozess abgearbeitet.
Aus der EP 0 524 344 B1 ist nicht bekannt, wie die Software auszugestalten
ist, damit deren prinzipielle Struktur wiederverwendet werden kann.
Aus der EP 0 657 043 B1 ist eine objektorientierte Steuerung für Werkzeug
maschinen bekannt, bei der aus Objektklassen eine Reihe von Objekten ge
bildet werden. Ausgehend von der in der EP 0 524 344 B1 offenbarten
Steuerung werden in der EP 0 657 043 B1 Objektklassen und Objekte of
fenbart, die erforderlich sind, um eine herkömmliche Funktionalität einer
Steuerung zu realisieren. Dazu gehören beispielsweise Objektklassen für
Bearbeitungs-, Geometrie, Kinematik- und Technologiedatentypen ebenso
wie Steuerdatentypen und eine Objektklasse Ablaufsteuerung. Von jeder
Objektklasse kann eine beliebige Anzahl Objekte gebildet werden, die je
weils einen eigenen Datenbereich, einen Botschaftenmechanismus zur
Kommunikation mit anderen Objekten und einen Prozedurteil zur Ausfüh
rung von Methoden zur Bearbeitung, Kinematik, Geometrie oder Technolo
gie beinhalten. Aufgrund der Abstammung mehrerer Objekte von einer Ob
jektklasse weisen diese Objekte teilweise identischen oder zumindest ähnli
chen Programmcode auf, den sie von der Objektklasse geerbt haben. Wei
terhin sind auch die Objektklassen als abstraktes Datenmodell in der steue
rungsinternen Datenhaltung abgebildet, wodurch abstrakte anwendungs
spezifische Datentypen ergänzbar und anwendungsspezifische Objektaus
prägungen modifizierbar sind. Durch die Ablaufsteuerung werden die Benut
zereingaben interpretiert und führen zur Aktivierung der ausgewählten Ob
jekte. Die ausgewählten Objekte kommunizieren untereinander und bilden
durch diese netzwerkartige Verknüpfung eine ablauffähige Funktionseinheit
der Steuerung.
Aus der EP 0 657 043 B1 ist zwar bereits bekannt, Eigenschaften einer Ob
jektklasse an ein Objekt dieser Klasse weiterzuvererben und für die Objekt
klassen abstrakte Datenmodelle in der steuerungsinternen Datenhaltung zu
speichern, die vom Programmierer verändert werden können, was jedoch
nur die Objekte betrifft. Da ein Objekt immer mindestens eine konkrete
Funktion der Steuerung und damit der Maschine realisiert, müssen die Ob
jekte maschinenspezifische Merkmale aufweisen, wodurch sie inkompatibel
sind zu einer anderen Steuerung für eine andere Maschine. Somit können
Objekte in der Regel nicht unverändert wiederverwendet werden. Weiterhin
nachteilig ist, dass derart nicht die Struktur der Steuerungssoftware, also
beispielsweise das Zusammenwirken von einzelnen Objekten untereinander,
für eine erneute Verwendung bereitgestellt werden kann, da diese Informa
tion nicht in den Objekten gespeichert ist.
Aus der EP 0 717 866 B1 ist ein CNC-Steuerungssystem bekannt, das ein
objektorientiertes Programm beinhaltet, in welchem Objekte objektorientierte
Nachrichten austauschen. Im objektorientierten Programm sind die Objekte
in Klassen unterteilt, beispielsweise eine Prozessklasse, die Objekte für Be
arbeitungsprozesse wie Bohren, Gewindeschneiden, Räumen usw. bein
haltet, die durch Maschinenkomponenten ausgeführt werden. Dabei bein
haltet eine Klasse immer ähnliche Objekte, das heisst Objekte, die in ihrer
Grundstruktur übereinstimmen. Aufgrund der einheitlichen Grundstruktur der
Objekte einer Klasse besteht die Möglichkeit, dass beim Erstellen neuer
Objekte ausgewählte Eigenschaften der jeweiligen Klasse an das neue Ob
jekt vererbt werden. Eine weitere Objektklasse weist Maschinenkomponen
ten, wie beispielsweise eine Spindel, Achsen, einen Drehtisch usw., auf.
Weiterhin sind Objektklassen für das Kernel mit einem Motion und einem
Logic Controller als Objekte, für Plattform Services, das Operating System
und die Device Driver vorgesehen. Im Betrieb der Steuerung ist es erforder
lich, dass Nachrichten zwischen den einzelnen Objekten ausgetauscht wer
den. Für einen Bohrvorgang wird beispielsweise vom Bohr-Objekt eine
Nachricht die Drehzahl des Bohrers betreffend an das Objekt Spindel über
tragen, weiterhin werden Nachrichten die Position des Loches betreffend an
die Objekte der beteiligten Achsen übertragen usw.. Dabei ist ein Standard-
Interface für die Nachrichten vorgesehen, damit diese einen universellen
Aufbau aufweisen und unabhängig von den beteiligten Objekten ausgestal
tet werden können. Diese Standard-Schnittstelle zum Nachrichtenaustausch
zwischen Objekten wird bei einem Objekt, das Nachrichten bezüglich der
Bewegung empfängt oder sendet durch einen Softwarekern realisiert, der in
Echtzeit arbeiten soll und Nachrichten empfängt und sendet.
Auch aus der EP 717 866 B1 ist nicht bekannt, wie die Struktur von Steue
rungssoftware auszugestalten ist, um eine Wiederverwendung des Software-
Designs bei einer ähnlichen numerischen Steuerung zu ermöglichen.
Aus dem Buch "Entwurfsmuster", von Erich Gamma und Richard Helm, er
schienen im Addison-Wesley Verlag 1996 und dem Buch "Objektorientierte
Software-Entwicklung am Beispiels von ET++", von Erich Gamma, erschie
nen im Springer Verlag, 1992 ist der Begriff des Frameworks bekannt. Unter
Framework wird eine Menge kooperierender Klassen verstanden, welche die
Elemente eines wiederverwendbaren Entwurfs für eine bestimmte Art von
Software darstellen. Ein Framework bietet eine Architekturhilfe beim Auftei
len des Entwurfs in abstrakte Klassen und beim Definieren ihrer Zuständig
keiten und Interaktionen. Ein Entwickler passt das Framework für eine be
stimmte Anwendung an, indem er Unterklassen der Framework-Klassen bil
det und deren Objekte zusammensetzt. Ein Framework wird daher von ei
nem Programmierer dazu benutzt, um die Softwarearchitektur einer Gruppe
verwandter Anwendungen festzulegen. Diese Entwurfswiederverwendung
ergänzt die bereits aus der objektorientierten Softwareentwicklung bekannte
Codewiederverwendung.
Dabei ist von Nachteil, dass aus obigen Büchern keine Anwendung der
Framework-Technologie bei numerischen Steuerungen offenbart wird. Daher
ist aus diesem Stand der Technik kein Framework für eine Steuerung einer
numerischen Werkzeugmaschine bekannt.
Aus dem Artikel "Framework - Basis eines Automatisierungssystems", von
Georg Süss, erschienen in etz, Heft 21/1998, Seite 22-25, ist bekannt,
dass ein Framework nicht nur eine gemeinsam genutzte Datenhaltung er
möglicht, sondern auch einen integrierten Ansatz für die Beschreibung und
abgestimmte Ausführung einer Gesamtapplikation in einer verteilten Archi
tektur realisierbar macht. Dafür muss ein Framework für Automatisierungs
anwendungen auf Windows NT aufsetzen, um eine Strukturierung der Ge
samtapplikation in Objekten mittels dem Component Object Model und die
Verteilung der Komponenten eines Systems über mehrere Rechner mittels
dem Distributed Component Object Model zu ermöglichen. Ein Automatisie
rungs-Framework bietet dann die Möglichkeit die einzelnen Bestandteile ei
ner verteilten Automatisierungslösung zentral in einer systemweiten Daten
ablage zu sammeln. Damit stehen diese Informationen sofort jedem Rechner
eines Netzwerks identisch zur Verfügung. Weiterhin erfolgt durch das
Framework - bei einer Unterteilung der Applikation in Einzelobjekte - eine
Verwaltung dieser Objekte und Zuordnung zu einzelnen Netzwerkstationen.
Dies ermöglicht eine dynamische Verschiebung einzelner Objekte zur Lauf
zeit, wodurch eine bessere Auslastung der Rechner erreicht werden kann.
Ausserdem können dadurch weitere Stationen dynamisch in das Applikati
onsnetzwerk zur Laufzeit eingebunden werden.
Dabei ist nachteilig, dass das Framework auf einer Windows NT Plattform
aufsetzen muss, um das Component Object Model und das Distributed
Component Object Model nutzen zu können. Diese beiden Modelle sind in
Windows NT verfügbar und stellen die Funktionalität für die beschriebenen
Verbesserungen bereit. Weiterhin von Nachteil ist, dass nicht offenbart wird,
wie ein Framework zu realisieren ist.
Aus dem Artikel "Softwarekonzepte für eine steuerungsintegrierte Werk
zeugüberwachung" von I. Suwalski, R. Urban und J. Burger, erschienen in
ZWF 92 (1997) 9, Seite 436-439, ist bekannt, dass sich aus dem Bereich
objektorientierter Software-Techniken heraus die Software-Frameworks ent
wickelt haben. Ein Framework besteht aus einer Menge zusammenarbeiten
der Klassen, die die Architektur der Anwendung bestimmen. Durch Verwen
dung von Frameworks wird daher die Entwurfswiederverwendung gegen
über der Codewiederverwendung betont. Durch die Verwendung von
Frameworks werden problemspezifische Algorithmen vom Entwurf entkop
pelt. Die dadurch erreichte Abstraktion des Entwurfs des Systems von der
Implementierung problemspezifischer Algorithmen ermöglicht eine schnel
lere Entwicklung, führt zu ähnlichen Strukturen und einer einfacheren Wart
barkeit. Ausserdem wird auch eine klare, strukturierte und schlanke Doku
mentation ermöglicht. Dies wird anhand eines Beispiels mit Frameworks er
läutert, die für einzelne Prozesse die Grundmechanismen der Kommunika
tion und die Struktur der Implementierung als Zustandsmodell vorgegeben
haben. Flexibilität wird durch Verhaltensmuster erreicht, deren algorithmi
sche Ausprägung für den jeweiligen Anwendungsfall implementiert wird.
Dabei ist von Nachteil, dass nicht konkret offenbart wird, wie auch andere
Funktionen als die steuerungsinterne Werkzeugüberwachung durch ein oder
mehrere Frameworks realisiert werden können. Weiterhin wird weder die
Struktur, die durch Frameworks definiert wird noch die Struktur eines
Frameworks selbst konkret angegeben.
Aufgabe der vorliegenden Erfindung ist es daher, Steuerungssoftware für die
Steuerung von Werkzeugmaschinen unter Benutzung von Frameworks für
möglichst viele Steuerungsfunktionen derart auszugestalten, dass die
Struktur und der maschinen- und steuerungsunabhängige Teil der Imple
mentierung der Steuerungssoftware möglichst vollständig von einem
Framework übernommen werden kann. Für eine konkrete Steuerungssoft
ware in Form einer Applikation sollen nur noch maschinen- und technologie
spezifische Funktionen sowie die Gestaltung der Bedienoberfläche imple
mentiert werden.
Diese Aufgabe wird durch ein Verfahren mit den im Anspruch 1 angegebe
nen Merkmalen gelöst.
Weiterbildungen und vorteilhafte Ausgestaltungen des erfindungsgemässen
Verfahrens sind den abhängigen Ansprüchen zu entnehmen.
Das erfindungsgemässe Verfahren weist den Vorteil auf, dass die als
Framework ausgestaltete Software für eine generische numerische Steue
rung als Klassenbibliothek implementiert ist, die die Softwarestruktur einer
generischen numerischen Steuerung vollständig beinhaltet. Die Software
einer generischen numerischen Steuerung umfasst dabei die gesamte funk
tionale Struktur der Steuerungssoftware, nicht aber die konkret program
mierten Funktionen. Durch die Klassenbibliothek werden einheitliche
Schnittstellen für die konkreten Funktionen definiert. Die einzelnen Funktio
nen, die durch die Steuerung ausgeführt werden, sind durch eine steue
rungsspezifische Klasse implementiert, die von einer Klasse der Klassen
bibliothek abgeleitet ist. Dadurch kann diese Steuerungsstruktur auf unter
schiedliche Steuerungen übertragen werden, selbst wenn die konkreten
Funktionen anderer Steuerungen völlig unterschiedlich sind. Durch Abstrak
tion der Struktur und der Klassenbibliotheken von den konkreten Funktionen
wird die Softwarestruktur wiederverwendbar.
Die Erfindung wird im folgenden anhand der in der Zeichnung dargestellten
Ausführungsformen näher erläutert. Die Figur zeigt eine mögliche Aufteilung
des Steuerungsprogramms in Klassen, angeleitete Klassen und Instanzen
abgeleiteter Klassen.
Die Erfindung soll im folgenden anhand einer einfachen numerischen Steue
rung für eine Werkzeugmaschine erläutert werden. Dabei ist es für die
Struktur der Steuerungssoftware unerheblich, ob es sich bei der Werkzeug
maschine um eine Fräs-, Dreh-, Schleif- oder Erodiermaschine oder um ein
Bearbeitungszentrum handelt.
Das Steuerungsprogramm für eine numerische Steuerung, welches in Fig. 1
teilweise grafisch dargestellt wird, kann auf Basis eines Frameworks reali
siert werden, wobei das Framework durch mindestens eine Klassenbiblio
thek 1 implementiert wird. Die wesentlichen Funktionen des Steuerungspro
gramms einer Werkzeugmaschine lassen sich in die Funktionalitätsgruppen
Geometrieverarbeitung 1.2, Interpolator 1.4, Mensch-Maschine-Interface 1.1,
Bewegungssteuerung und speicherprogrammierbarer Steuerungsteil unter
gliedern.
Erfindungsgemäss ist eine Framework Klassenbibliothek 1 vorgesehen.
Diese Klassenbibliothek 1 beinhaltet die Software einer generischen Steue
rung für die einzelnen abstrahierten Funktionalitäten und deren Zusammen
wirken. Dabei wird durch die Klassenbibliothek 1 lediglich die funktionale
Struktur des Steuerungsprogramms festgelegt; der Programmcode für die
konkreten Funktionen ist aber nicht in dem Framework enthalten. Dieser
Programmcode wird durch die spezifische Implementierung der Klassen in
Form von abgeleiteten Klassen 1.1-1.4 definiert, bei denen nicht die
Struktur, sondern die durchgeführte Funktion und der dafür erforderliche
Programmcode das wesentliche Merkmal ist. Durch ein Framework wird da
her die Existenz einer Funktion im Steuerungsprogramm und das Zusam
menwirken mit anderen Funktionen des Steuerungsprogramms definiert. Die
Realisierung der Funktion durch Programmcode ist hingegen nicht im
Framework enthalten. Diese erfolgt in einer abgeleiteten Klasse 1.1-1.4,
die von einer Klasse der Klassenbibliothek 1 abgeleitet ist und in das
Framework eingebunden wird.
Durch die Implementierung der abgeleiteten Klassen wird eine Applikation
realisiert. Beispielsweise wird eine abgeleitete Klasse für einen Interpolator
1.4 implementiert, die an eine bestimmte Form der Ansteuerung der Antriebe
angepasst ist.
Weiterhin wird durch ein Framework die Interaktion, also das Zusammenwir
ken, zwischen einzelnen abgeleiteten Klassen 1.1-1.4 als Funktionalität
der generischen Steuerung realisiert. Dies erfolgt durch Kommunikationska
näle 2.1-2.5 zwischen einzelnen Objekten 1.1.1-1.4.1, die Instanzen der
abgeleiteten Klassen 1.1-1.4 des Frameworks bzw. der Klassenbibliothek
1 sind. Ein derartiger Kommunikationskanal 2.1-2.5 wird durch aus dem
Stand der Technik bekannte Mechanismen zum Datenaustausch realisiert.
Durch einen Kommunikationskanal 2.1-2.5 wird festgelegt, welche Objekte
1.1.1-1.4.1 des Frameworks überhaupt miteinander kommunizieren kön
nen. Aus dem Stand der Technik sind bereits Verfahren bekannt, um zu de
finieren, welche Objekte als Instanzen abgeleiteter Klassen 1.1.1-1.4.1
miteinander kommunizieren. Diese Definition ist Teil der Implementierung
einer konkreten Steuerungssoftware.
Weiterhin wird durch das Framework das Datenformat und das Protokoll der
Übertragungsdaten definiert, d. h. welche Daten über einen Kommunikati
onskanal 2.1-2.5 zwischen Objekten 1.1.1-1.4.1 des Frameworks über
tragen werden. Die Interpretation der Übertragungsdaten als Parameter oder
Anweisung erfolgt durch die abgeleiteten Klassen 1.1-1.4.
Wird bei Erstellung eines neuen Steuerungsprogramms ein bereits vorhan
denes Framework benutzt, liegen dem Programmierer bereits Framework
Klassen 1 vor, die bei der Erstellung des Steuerungsprogramms für eine
spezifische Steuerung einer bestimmten Werkzeugmaschine teilweise an
diese angepasst bzw. für diese implementiert werden müssen. Dies ge
schieht dadurch, dass der Programmierer aus den vorhandenen Framework
Klassen 1 abgeleitete Klassen 1.1-1.4 bildet und dadurch eine Applikation
erzeugt.
Die Klassen 1 des Frameworks definieren virtuelle Funktionen, deren Im
plementierung in den abgeleiteten Klassen 1.1-1.4 erfolgt, oder deren Im
plemetierung durch die abgeleiteten Klassen 1.1-1.4 bei Bedarf auch ge
ändert (überladen) werden kann. Die Implementierung der abgeleiteten
Klasse 1.1-1.4 erfolgt, indem der Programmierer die für die gewünschte
Funktionalität notwendigen Implementierungen dieser virtuellen Funktion
programmiert und die dafür notwendigen Daten (Attribute) definiert.
In einem zweiten Schritt der Implementierung legt der Programmierer fest,
von welchen abgeleiteten Klassen 1.1-1.4 Objekte 1.1.1-1.4.1 instantiiert
werden und welche Objekte 1.1.1-1.4.1 miteinander kommunizieren. Die
Information, welche Objekte 1.1.1-1.4.1 erzeugt werden und welche mit
einander kommunizieren, kann dabei in den abgeleiteten Klassen vorhanden
sein, aus einer externen Datei ausgelesen oder vom Benutzer eingegeben
werden.
Die prinzipielle Funktionsweise ist durch die generische Steuerung definiert
und in den Klassen 1 des Frameworks implementiert. Die konkrete Funktio
nalität einer Steuerung ergibt sich daraus, dass im Betrieb virtuelle Funktio
nen der generischen Steuerung aufgerufen werden und das von der kon
kreten Implementierung abhängige Ergebnis weiterverwendet und gegebe
nenfalls an Objekte 1.1.1-1.4.1 übermittelt wird, deren Auswahl ebenfalls,
wie oben beschrieben, von der konkreten Realisierung abhängt.
Durch Verwendung eines bereits existierenden Frameworks beschränkt sich
die Erstellung eines Steuerprogramms dann auf die Programmierung der
durchzuführenden technologie- und maschinenspezifischen Funktionen in
abgeleiteten Klassen 1.1-1.4 und die Definition der Interaktion zwischen
Objekten 1.1.1-1.4.1 über Kommunikationskanäle 2.1-2.5.
Entsprechend wird im Betrieb einer derart programmierten numerischen
Steuerung wie in der Figur dargestellt vorgegangen. Die generische Steue
rung, die durch die Klassenbibliothek 1 des Frameworks definiert ist, weist
beispielsweise unter anderem die folgenden Funktionen auf:
- - Start der Steuerung,
- - Senden einer Nachricht von einem Sender an einen Empfänger und
- - Auslösen der Nachrichtenverarbeitung beim Empfänger.
Nachdem ein Benutzer die Steuerung eingeschaltet hat, werden durch den
im Framework vorhandenen Mechanismus zur Instantiierung von abgeleite
ten Klassen 1.1-1.4 die für die Anwendung benötigten Objekte 1.1.1-1.4.1
erzeugt. Weiterhin wird in der Klassenbibliothek 1 des Frameworks die Start-
Funktion aufgerufen, was aufgrund der Funktionalität der generischen
Steuerung den Aufruf einer Start-Funktion in jedem erzeugten Objekt 1.1.1-1.4.1
bewirkt. Dabei kann die Start-Funktion in einer abgeleiteten Klasse
1.1-1.4 mit einer spezifischen Implementierung überladen werden.
Bei der abgeleiteten Klasse 1.1 Mensch-Maschine-Interface wird durch die
Start-Funktion beispielsweise ein Fenster geöffnet, in dem der Benutzer eine
Eingabe tätigen kann. Auf diese Eingabe wird gewartet, aus der Eingabe
wird eine Nachricht gebildet und diese Nachricht wird verschickt.
Bei der abgeleiteten Klasse 1.4 Interpolator werden durch die Start-Funktion
die Positionen der Maschinenachsen gehalten. Dafür werden die La
geistwerte der Achsen der Maschine ermittelt und diese Istwerte als Lage
sollwerte den Regelkreisen vorgegeben.
Bei der abgeleiteten Klasse 1.3 Simulation wird durch die Start-Funktion ein
Fenster zur Darstellung einer Simulationsgrafik geöffnet.
Die abgeleitete Klasse 1.2 der Geometrieverarbeitung (Geo) implementiert
die Start-Funktion nicht, sondern verwendet die in der Klassenbibliothek
vorhandene Implementierung.
Wie bereits erläutert, wird vom Mensch-Maschine-Interface 1.1.1 eine Nach
richt gesendet, sobald eine Eingabe abgeschlossen wurde. Diese Nachricht
wird durch das Framework über einen Kommunikationskanal 2.1 an den
richtigen Empfänger übermittelt und im Empfänger durch das Framework
eine Behandlung der Nachricht ausgelöst.
Bei der im jeweiligen Objekt 1.1.1-1.4.1 ausgelösten Behandlung nach
dem Empfang einer Nachricht wird eine in der Klassenbibliothek 1 des
Frameworks definierte Funktion auf die mit der Nachricht übertragenen Da
ten angewendet. Diese Funktion muss in jeder abgeleiteten Klasse 1.1-1.4
implementiert werden. Das Framework stellt hierfür keine Implemetierung
zur Verfügung.
Im Geometrie-Objekt 1.2.1 werden die Daten einer empfangenen Nachricht
als anzufahrende Positionen interpretiert, auf deren Basis Parameter der
Bahnkurve berechnet und als Nachricht verschickt werden.
Diese Parameter der Bahnkurve werden über einen Kommunikationskanal
2.2 an das Interpolator-Objekt 1.4.1 weitergeleitet, durch das die Achsan
triebe der Maschine angesteuert werden und das die angefahrenen Bahn
punkte als Nachricht verschickt.
Wird im Objekt 1.1.1 des Mensch-Maschine-Interface eine Nachrichtenbe
handlung durch den Empfang einer neuen Nachricht ausgelöst, werden die
empfangenen Daten als Position interpretiert, die dem Benutzer angezeigt
wird.
Soll eine Bearbeitung nur simuliert werden, wird für die Simulation aus der
abgeleiteten Klasse 1.1 Mensch-Maschine-Interface ein Objekt 1.1.2 instan
tiiert, das die eingegebenen Daten als Nachricht an das Simulations-Objekt
1.3.1 weiterleitet.
Das Simulations-Objekt 1.3.1 führt bei der Simulation der Bearbeitung ge
mäss den Eingaben die entsprechenden Berechnungen durch und ver
schickt die berechneten Bahnpunkte als Nachricht.
Diese Nachricht wird vom Framework an das Mensch-Maschine-Interface
1.1.2 für die Simulation übertragen. Aufgrund der dort ausgelösten Nach
richtenbehandlung werden die Simulationsdaten dem Benutzer angezeigt.
Um das Verschicken einer Nachricht zu realisieren, wird eine Funktion aus
der Klassenbibliothek 1 des Frameworks aufgerufen. Da der Transport von
Nachrichten eine Funktion der generischen Steuerung ist, gibt es keine Not
wendigkeit und auch keine Möglichkeit diese Funktion mit einer spezifischen
Implementierung zu überladen.
Gemäss der Figur kann die Steuerungssoftware untergliedert werden. Die
Klassenbibliothek 1 beinhaltet Funktionen, die nicht speziell für eine Steue
rung oder Maschine ausgestaltet sind, beispielsweise das Versenden einer
Nachricht.
Zur Klassenbibliothek 1 gehören ferner virtuelle Funktionen, die aufgrund
der speziellen Steuerungs-Hardware oder Maschinen-Mechanik durch den
Programmierer einer abgeleiteten Klasse 1.1-1.4 eine spezifische Ausge
staltung erfahren können, wie beispielsweise die Start-Funktion, oder müs
sen, wie beispielsweise die Behandlung einer Nachricht, damit sie mit der
speziellen Steuerungs-Hardware und/oder Maschinen-Mechanik zusam
menarbeiten.
Die Objekte 1.1.1-1.4.1 sind Instanzen der abgeleiteten Klassen 1.1-1.4,
die die spezifischen Daten für eine bestimmte Funktion beinhalten.
So wurde beispielsweise die virtuelle Funktion des Mensch-Maschine-Inter
faces 1.1 zunächst implementiert, um mit der speziellen Steuerungs-Hard
ware zusammenzuarbeiten, um mit einer speziellen Hardware eine Ein- und
Ausgabe zu realisieren. Danach wurden die benötigten Objekte für ein
Mensch-Maschine-Interface für die Simulation 1.1.2 und eines für die Bear
beitung 1.1.1 instantiiert.
Um die notwendige Interaktion über die Kommunikationskanäle 2.1-2.5 zu
erreichen, muss dem Framework bekannt sein, welche dieser Objekte
1.1.1-1.4.1 jeweils untereinander Nachrichten austauschen. Beispielsweise sen
det ein Objekt 1.1.1 für die Eingabe Nachrichten an das Objekt 1.2.1 für die
Geometrieberechnung, und empfängt Nachrichten vom Objekt 1.4.1 für die
Interpolation, während die Instanz 1.1.2 derselben Klasse für die Simulation
Nachrichten mit dem Objekt 1.3.1 für die Simulationsberechnung austauscht.
Die hier getroffene Aufteilung in Klassen 1, abgeleitete Klassen 1.1-1.4
und Objekte 1.1.1-1.4.1 stellt nur eine von mehreren Möglichkeiten dar.
Alternativ ist beispielsweise denkbar, dass die Geometrieverarbeitung
und/oder der Interpolator hardwareunabhängig programmiert werden, so
dass diese Funktionalitäten in einer Klasse 1 realisiert werden können.
Durch die hier beschriebene Aufteilung des Programmcodes in Framework
und ausserhalb des Frameworks angeordneten, maschinenspezifischen
Programmcode wird für die Funktionen der Steuerung unterschieden zwi
schen wiederverwendbarer Struktur, die zum Framework zusammengefasst
wird, und maschinenspezifischem Programmcode, der ausserhalb des
Frameworks realisiert wird. Der Programmcode des Frameworks kann bei
einer Gruppe von Realisierungen benutzt werden, die sich in der benutzten
Steuerungs-Hardware und Maschinen-Mechanik unterscheiden. Dabei ist
der Grad wie weit die Unterschiede gehen dürfen abhängig vom Abstrakti
onsgrad des Frameworks.
Programmcode der abgeleiteten Klassen 1.1-1.4 kann nur auf andere An
wendungsfälle übertragen werden, wenn bei der Steuerungs-Hardware und
Maschinen-Mechanik zumindest Kompatibilität gewährleistet ist.
Es ist vorteilhaft die allgemein gültige Funktionalität des Steuerungspro
gramms für eine numerische Steuerung derart in Form eines Frameworks zu
realisieren, um das durch das Framework definierte Zusammenwirken der
Klassen 1 und abgeleiteten Klassen 1.1-1.4 wiederverwenden zu können.
Dadurch können die komplexen Verknüpfungen der einzelnen Funktionen
untereinander über Kommunikationskanäle 2.1-2.5 wiederverwendet wer
den.
Das Framework kann zusätzlich einen Mechanismus zur Fehlerbehandlung
beinhalten. Dafür ist im Framework eine Klasse mit generischen Funktionen
zur Fehlerbehandlung vorgesehen, aus der durch eine maschinenspezifi
sche Implementierung der Funktionen die abgeleitete Klasse zur Fehlerbe
handlung erzeugt wird. Durch die Instantiierung der Funktionen der abgelei
teten Klasse wird mindestens ein Objekt erzeugt.
Da bei jeder beliebigen Anwendung einer Funktion auf die ein Objekt bilden
den Daten ein Fehler auftreten kann, wird vorteilhaft von jedem Objekt ein
Kommunikationskanal zum Objekt Fehlerbehandlung vorgesehen. Abhängig
von den zur Fehlerbehandlung vorhandenen Funktionen, sind entsprechend
auch Kommunikationskanäle von dem Objekt zur Fehlerbehandlung zu den
für die Fehlerbehandlung benötigten Objekten vorzusehen.
Soll beispielsweise durch eine Funktion zur Fehlerbehandlung bei einem
beliebigen Fehler jede Bewegung der durch das Steuerungsprogramm ge
steuerten Maschine verhindert werden, dann müssen Kommunikationska
näle von allen Objekten 1.1.1-1.4.1 zum Objekt zur Fehlerbehandlung vor
handen sein. Dadurch wird ermöglicht, dass Fehler, die in jedem Objekt auf
treten können, auch erkannt werden können. Weiterhin muss ein Kommuni
kationskanal vom Objekt zur Fehlerbehandlung zum Objekt 1.4.1 Interpola
tor, durch den die Bewegungssteuerung erfolgt, vorhanden sein, um im
Fehlerfall jegliche Bewegung zu verhindern.
Alternativ zum Stillsetzen aller Achsen der Maschine kann auch vorgesehen
sein, dass im Fehlerfall ein bestimmter Rückzugsweg abgefahren wird, um
beispielsweise das Werkzeug einer Fräsmaschine vom Werkstück zu entfer
nen, damit weder am Werkzeug noch am Werkstück durch den Fehler eine
Beschädigung verursacht wird. Dann wird durch die Nachricht des Objekts
zur Fehlerbehandlung an das Interpolator-Objekt 1.4.1, dass ein Fehler vor
liegt, im Interpolator eine Rückzugsbewegung ausgelöst.
Bei der Realisierung einer Steuerung, die das erfindungsgemässe Steue
rungsprogramm abarbeitet, besteht die Möglichkeit die Steuerung als ver
teiltes System auszugestalten, bei dem Teile der Steuerung und damit des
Steuerungsprogramms an unterschiedlichen Orten von unterschiedlichen
Prozessoren abgearbeitet werden. In diesem Fall ist es sinnvoll das Steue
rungsprogramm in Prozesse zu unterteilen, wobei jedem Prozessor minde
stens ein Prozess zum Abarbeiten zugeteilt wird. Für diesen Fall ist im
Framework ein Mechanismus zur Interaktion über Prozessgrenzen hinweg
vorgesehen. Durch diesen Mechanismus ist es möglich, dass Nachrichten
auch zwischen Objekten unterschiedlicher Prozesse ausgetauscht werden
können. Die Prozessgrenzen stellen somit keine Hindernisse für den Nach
richtenaustausch dar.
Beispielsweise zur Fehleranalyse oder für Wartungs- oder Reparaturaufga
ben können dann Teile des Steuerungsprogramms beim Steuerungsher
steller in einem ersten Prozess ablaufen und mit einem Teil des Steue
rungsprogramms beim Anwender, das als zweiter Prozess des Steuerungs
programms abgearbeitet wird, Nachrichten über ein allgemeines Datennetz,
z. B. das Internet, austauschen.
Bei verteilten Systemen ist besonders auch der im Framework enthaltene
Mechanismus zur Synchronisation der Abarbeitung des Steuerungspro
gramms mit eingehenden Nachrichten von Bedeutung, bei dem die Reihen
folge der Bearbeitung von eingegangenen Nachrichten aus unabhängigen
Kommunikationskanälen gesteuert wird. Dadurch wird sichergestellt, dass
die Nachrichten bearbeitet werden, deren Daten gerade von einer Funktion
benötigt werden, oder - sofern keine dringlicheren Aufgaben vorliegen - die
Funktionen abgearbeitet werden, für die gerade Daten mittels einer Nach
richt übertragen wurden. Weiterhin wird derart durch das Framework sicher
gestellt, dass alle Nachrichten abgearbeitet werden.
Claims (12)
1. Steuerungsprogramm für eine numerische Werkzeugmaschine mit einer
wiederverwendbaren Softwarestruktur, welches in ein anwendungs
unabhängiges Framework und anwendungsspezifische Funktionen un
terteilt wird, wobei das Framework den Teil des Programmcodes bein
haltet, den mindestens zwei der Funktionalitätsgruppen Mensch-Ma
schine-Interface, Geometrieverarbeitung, Interpolator, Bewegungsver
arbeitung und speicherprogrammierbarer Steuerteil der Werkzeugma
schine identisch aufweisen oder der in einer dieser Funktionalitätsgrup
pen für mindestens zwei Applikationen des Steuerungsprogramms iden
tisch ist.
2. Steuerungsprogramm nach Anspruch 1, bei dem das Framework in
Form einer Klassenbibliothek (1) nach den Regeln der objektorientier
ten Programmierung realisiert wird.
3. Steuerungsprogramm nach Anspruch 2, bei dem anwendungsspezi
fische Funktionen in abgeleiteten Klassen (1.1-1.4) realisiert werden,
die nach den Regeln der objektorientierten Programmierung von Klas
sen (1) der Klassenbibliothek abgeleitet sind.
4. Steuerungsprogramm nach einem der vorhergehenden Ansprüche, bei
dem Funktionen in Klassen (1) definiert werden und in abgeleiteten
Klassen (1.1-1.4) implementiert werden, wobei der Programmcode ei
ner Klasse (1) für eine spezifische Funktion überladen werden kann.
5. Steuerungsprogramm nach einem der vorhergehenden Ansprüche, bei
dem das Framework (1) einen Mechanismus für die Bildung von Objek
ten als Instanzen (1.1.1-1.4.1) abgeleiteter Klassen (1.1-1.4) bein
haltet.
6. Steuerungsprogramm nach einem der vorhergehenden Ansprüche, bei
dem das Framework einen Mechanismus für die Interaktion zwischen
Objekten (1.1.1-1.4.1) beinhaltet.
7. Steuerungsprogramm nach einem der vorhergehenden Ansprüche, bei
dem der Mechanismus zur Interaktion zwischen Objekten (1.1.1-1.4.1)
den Transport von Nachrichten über Kommunikationskanäle (2.1-2.5)
und das Veranlassen der Verarbeitung der jeweiligen Nachricht beim
Empfänger beinhaltet.
8. Steuerungsprogramm nach einem der vorhergehenden Ansprüche, bei
dem anwendungsspezifisch festgelegt wird, welche Objekte (1.1.1-1.4.1)
erzeugt werden und welche miteinander interagieren.
9. Steuerungsprogramm nach einem der vorhergehenden Ansprüche, bei
dem die Information, welche Objekte erzeugt werden und welche mit
einander interagieren vom Benutzer eingegeben wird oder in einer ab
geleiteten Klasse gespeichert ist oder in einer externen Datei gespei
chert ist.
10. Steuerungsprogramm nach einem der vorhergehenden Ansprüche, wel
ches als verteiltes System in Form von mehreren voneinander unab
hängigen Prozessen realisiert wird und bei dem das Framework einen
Mechanismus zur Interaktion der Objekte (1.1.1-1.4.1) über Prozess
grenzen hinweg beinhaltet.
11. Steuerungsprogramm nach einem der vorhergehenden Ansprüche, bei
dem das Framework einen Mechanismus zur Synchronisation der Abar
beitung des Steuerprogramms mit eingehenden Nachrichten beinhaltet
und das Framework die Reihenfolge der Bearbeitung von Nachrichten
aus unabhängigen Kommunikationskanälen (2.1-2.5) steuert.
12. Steuerungsprogramm nach einem der vorhergehenden Ansprüche, bei
dem das Framework einen Mechanismus zur Fehlerbehandlung bein
haltet.
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19949558A DE19949558A1 (de) | 1999-10-14 | 1999-10-14 | Steuerungsprogramm für eine numerische Werkzeugmaschine mit einer wiederverwendbaren Softwarestruktur |
DE50013954T DE50013954D1 (de) | 1999-10-14 | 2000-10-12 | Steuerungssystem einer numerischen werkzeugmaschine mit einer wiederverwendbaren softwarestruktur |
JP2001530654A JP2003511779A (ja) | 1999-10-14 | 2000-10-12 | 再利用可能なソフトウェア構成を有するnc工作機械の制御システム |
PCT/EP2000/010042 WO2001027703A2 (de) | 1999-10-14 | 2000-10-12 | Steuerungssystem einer numerischen werkzeugmaschine mit einer wiederverwendbaren softwarestruktur |
EP00972743A EP1224512B1 (de) | 1999-10-14 | 2000-10-12 | Steuerungssystem einer numerischen werkzeugmaschine mit einer wiederverwendbaren softwarestruktur |
US10/110,587 US6999841B1 (en) | 1999-10-14 | 2000-10-12 | Control system of a numerical tool machine with a reusable software structure |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19949558A DE19949558A1 (de) | 1999-10-14 | 1999-10-14 | Steuerungsprogramm für eine numerische Werkzeugmaschine mit einer wiederverwendbaren Softwarestruktur |
Publications (1)
Publication Number | Publication Date |
---|---|
DE19949558A1 true DE19949558A1 (de) | 2001-04-19 |
Family
ID=7925643
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19949558A Withdrawn DE19949558A1 (de) | 1999-10-14 | 1999-10-14 | Steuerungsprogramm für eine numerische Werkzeugmaschine mit einer wiederverwendbaren Softwarestruktur |
DE50013954T Expired - Lifetime DE50013954D1 (de) | 1999-10-14 | 2000-10-12 | Steuerungssystem einer numerischen werkzeugmaschine mit einer wiederverwendbaren softwarestruktur |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE50013954T Expired - Lifetime DE50013954D1 (de) | 1999-10-14 | 2000-10-12 | Steuerungssystem einer numerischen werkzeugmaschine mit einer wiederverwendbaren softwarestruktur |
Country Status (5)
Country | Link |
---|---|
US (1) | US6999841B1 (de) |
EP (1) | EP1224512B1 (de) |
JP (1) | JP2003511779A (de) |
DE (2) | DE19949558A1 (de) |
WO (1) | WO2001027703A2 (de) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10132036A1 (de) * | 2001-07-03 | 2003-01-23 | Siemens Ag | Automatisierungssystem und Verfahren mit Funktionen in einer Auszeichnungssprache |
WO2010028760A1 (de) * | 2008-09-09 | 2010-03-18 | Khs Ag | Automatisierungssystem mit frameworkbasierter steuerung |
DE102013013184A1 (de) * | 2013-08-08 | 2015-02-12 | Audi Ag | Kommunikationseinrichtung für ein Fahrzeug |
DE102016004233B4 (de) | 2015-04-16 | 2019-06-27 | Fanuc Corporation | Numerische Steuervorrichtung zum Klassifizieren und Anzeigen eines als Historie aufgezeichneten Bearbeitungsprogramms |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6242880B1 (en) | 1998-09-08 | 2001-06-05 | Cimplus, Inc. | Tolerance based motion control system |
CA2425719A1 (en) * | 2003-04-25 | 2004-10-25 | Dean Mills | Modular system and method for programming machine automation controls |
CN101180591A (zh) | 2005-03-23 | 2008-05-14 | 赫克有限公司 | 基于公差的轨迹规划和控制方法 |
US7933677B2 (en) * | 2006-08-04 | 2011-04-26 | Hurco Companies, Inc. | System and method for surface finish management |
US8024068B2 (en) | 2006-08-04 | 2011-09-20 | Hurco Companies, Inc. | Machine tool control system |
US8725283B2 (en) * | 2006-08-04 | 2014-05-13 | Hurco Companies, Inc. | Generalized kinematics system |
CA2659445C (en) * | 2006-08-04 | 2015-05-12 | Hurco Companies, Inc. | System and method for tool use management |
US9588511B2 (en) * | 2007-08-03 | 2017-03-07 | Hurco Companies, Inc. | Virtual machine manager |
US8844104B2 (en) * | 2009-04-22 | 2014-09-30 | Hurco Companies, Inc. | Multi-zone machine tool system |
US20110022978A1 (en) * | 2009-07-23 | 2011-01-27 | Rockwell Automation Technologies, Inc. | Intelligent device framework |
JP5581749B2 (ja) * | 2010-03-15 | 2014-09-03 | オムロン株式会社 | 表示装置、表示方法、プログラム、およびコンピュータ読み取り可能な記録媒体 |
DE102011089014A1 (de) * | 2011-01-19 | 2012-07-19 | Dr. Johannes Heidenhain Gmbh | Numerische Steuerung |
DE102011017398A1 (de) * | 2011-04-18 | 2012-10-18 | Kuka Roboter Gmbh | Verfahren und Mittel zum Steuern einer Roboteranordnung |
US10359765B2 (en) | 2014-10-07 | 2019-07-23 | Citizen Watch Co., Ltd. | Control device for machine tool with multi-system programs |
US9798315B2 (en) * | 2014-10-14 | 2017-10-24 | Siemens Product Lifecycle Management Software Inc. | Machine tool post configurator systems and methods |
CN112859757B (zh) * | 2019-11-27 | 2022-04-22 | 宁波舜宇智能科技有限公司 | 边缘计算控制方法、装置、边缘计算机和可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4330218A1 (de) * | 1993-09-07 | 1995-03-09 | Traub Ag | Synchronisationsverfahren und Vorrichtung zum Abgleich von Bearbeitungsabläufen auf einem dialogorientierten Programmiergerät zur Erstellung von Funktions- und Steuerdaten für eine CNC-Maschine mit n-Teilsystemen |
DE19614202A1 (de) * | 1996-04-10 | 1997-11-13 | Agie Ag Ind Elektronik | Verfahren und Vorrichtung zur Steuerung einer Werkzeugmaschine, insbesondere einer Funkenerosionsmaschine |
DE69406672T2 (de) * | 1993-09-08 | 1998-06-04 | Hurco Co Inc | Cnc-steuerungssystem |
DE19751955A1 (de) * | 1997-11-24 | 1999-06-02 | Biotechnolog Forschung Gmbh | Virtueller Roboter |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0829469B2 (ja) * | 1990-07-03 | 1996-03-27 | 株式会社小松製作所 | Nc加工制御装置 |
US5212645A (en) | 1990-07-19 | 1993-05-18 | General Electric Company | Flexible real-time, multi-tasking architecture for tool condition monitoring |
DE59107794D1 (de) | 1991-07-26 | 1996-06-13 | Siemens Ag | Konfigurierbare Werkzeugmaschinensteuerung |
DE59208152D1 (de) | 1992-08-31 | 1997-04-10 | Siemens Ag | Konfigurierbarer mensch-maschine-kommunikationsbereich für werkzeugmaschinen- oder robotersteuerungen |
DE19614128C2 (de) * | 1996-04-10 | 2001-03-01 | Agie Sa | Verfahren und Vorrichtung zur Steuerung einer Werkzeugmaschine, insbesondere einer Funkenerosionsmaschine |
US5943497A (en) * | 1997-04-30 | 1999-08-24 | International Business Machines Corporation | Object-oriented apparatus and method for controlling configuration of object creation |
DE19856116A1 (de) * | 1998-12-04 | 2000-06-15 | Agie Sa | Verfahren und Vorrichtung zur Steuerung einer Werkzeugmaschine, insbesondere einer Senkerosionsmaschine |
-
1999
- 1999-10-14 DE DE19949558A patent/DE19949558A1/de not_active Withdrawn
-
2000
- 2000-10-12 US US10/110,587 patent/US6999841B1/en not_active Expired - Lifetime
- 2000-10-12 DE DE50013954T patent/DE50013954D1/de not_active Expired - Lifetime
- 2000-10-12 WO PCT/EP2000/010042 patent/WO2001027703A2/de active Search and Examination
- 2000-10-12 JP JP2001530654A patent/JP2003511779A/ja not_active Withdrawn
- 2000-10-12 EP EP00972743A patent/EP1224512B1/de not_active Expired - Lifetime
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4330218A1 (de) * | 1993-09-07 | 1995-03-09 | Traub Ag | Synchronisationsverfahren und Vorrichtung zum Abgleich von Bearbeitungsabläufen auf einem dialogorientierten Programmiergerät zur Erstellung von Funktions- und Steuerdaten für eine CNC-Maschine mit n-Teilsystemen |
DE69406672T2 (de) * | 1993-09-08 | 1998-06-04 | Hurco Co Inc | Cnc-steuerungssystem |
DE19614202A1 (de) * | 1996-04-10 | 1997-11-13 | Agie Ag Ind Elektronik | Verfahren und Vorrichtung zur Steuerung einer Werkzeugmaschine, insbesondere einer Funkenerosionsmaschine |
DE19751955A1 (de) * | 1997-11-24 | 1999-06-02 | Biotechnolog Forschung Gmbh | Virtueller Roboter |
Non-Patent Citations (3)
Title |
---|
HOHWIELER,Eckhard, BERGER,Ralf: Bausteinkonzept für die Programmierung von Fertigungsaufgaben. In:ZWF 91, 1996, 6, S.254-257 * |
Objektorientiert programmieren. In: Industrie- Anzeiger 82, 1991, S.38-42 * |
STORR,A., HOFMEISTER,W.: Einsatz objektorientier- ter Strukturen zur Programmierung von NC- Mehrschlittendrehmaschinen. In: wt - Produktion und Management 84, 1994, S.26-30 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10132036A1 (de) * | 2001-07-03 | 2003-01-23 | Siemens Ag | Automatisierungssystem und Verfahren mit Funktionen in einer Auszeichnungssprache |
DE10132036C2 (de) * | 2001-07-03 | 2003-08-14 | Siemens Ag | Automatisierungssystem und Verfahren mit Funktionen in einer Auszeichnungssprache |
WO2010028760A1 (de) * | 2008-09-09 | 2010-03-18 | Khs Ag | Automatisierungssystem mit frameworkbasierter steuerung |
DE102008047238A1 (de) * | 2008-09-09 | 2010-04-15 | Khs Ag | Frameworkbasierte Steuerung für Automatisierungssysteme |
US8676354B2 (en) | 2008-09-09 | 2014-03-18 | Khs Gmbh | Automation system having framework based controller |
DE102013013184A1 (de) * | 2013-08-08 | 2015-02-12 | Audi Ag | Kommunikationseinrichtung für ein Fahrzeug |
DE102016004233B4 (de) | 2015-04-16 | 2019-06-27 | Fanuc Corporation | Numerische Steuervorrichtung zum Klassifizieren und Anzeigen eines als Historie aufgezeichneten Bearbeitungsprogramms |
Also Published As
Publication number | Publication date |
---|---|
EP1224512A2 (de) | 2002-07-24 |
DE50013954D1 (de) | 2007-02-22 |
WO2001027703A2 (de) | 2001-04-19 |
US6999841B1 (en) | 2006-02-14 |
JP2003511779A (ja) | 2003-03-25 |
WO2001027703A3 (de) | 2001-10-18 |
EP1224512B1 (de) | 2007-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1224512B1 (de) | Steuerungssystem einer numerischen werkzeugmaschine mit einer wiederverwendbaren softwarestruktur | |
EP1901149B1 (de) | Vorrichtung und Verfahren zur Simulation eines Ablaufs zur Bearbeitung eines Werkstücks an einer Werkzeugmaschine | |
EP0657043B1 (de) | Konfigurierbarer mensch-maschine-kommunikationsbereich für werkzeugmaschinen- oder robotersteuerungen | |
EP2453326B1 (de) | Verfahren und System zur Bedienung einer Maschine aus der Automatisierungstechnik | |
DE10352815B4 (de) | Simulationsverfahren für eine Bearbeitung eines Werkstücks durch eine Werkzeugmaschine und korrespondierender Rechner | |
DE19853205A1 (de) | Verfahren zur Steuerung technischer Prozesse | |
EP1184758A2 (de) | Verfahren zum Debuggen von Programmen für industrielle Steuerungen, insbesondere Bewegungssteuerungen, im Kontext der Flow Chart Programmierung | |
DE112008003963B4 (de) | System und Verfahren zur Off-line-Programmierung eines Industrieroboters | |
EP0902343A2 (de) | Verfahren und System zum Erstellen oder Visualisieren von Steuerdatensätzen | |
EP0553621B1 (de) | Programmierbare Computersteuerung für eine Werkzeugmaschine | |
EP1402325A2 (de) | Verfahren und system zur unterstützung der projektierung von fertigungsanlagen | |
DE10144788A1 (de) | Verfahren und Vorrichtung zur sicheren hochperformanten Aufzeichnung von Prozessdaten bei numerisch gesteuerten industriellen Bearbeitungsmaschinen | |
DE4005042A1 (de) | Architektur eines digitalen bewegungssteuerungselements hoher geschwindigkeit | |
DE10339764A1 (de) | Verfahren zur graphischen Projektierung der Steuerung einer technischen Anlage mit integrierter Projektierung von Bediengeräten, einschließlich einem Projektierungssystem und einem Computerprogrammprodukt | |
DE19630415A1 (de) | Software-Werkzeug | |
EP2126643B1 (de) | Verfahren zum austausch von strukturkomponenten für ein automatisierungssystem | |
EP2341405B1 (de) | Verfahren zum Betrieb einer Maschine | |
DE102008023873A1 (de) | Verfahren zum Betrieb eines Antriebssystems | |
DE102004045933A1 (de) | Verfahren zum Betrieb einer Automatisierungseinrichtung bzw. Vorrichtung zur Durchführung des Verfahrens | |
EP0588108A2 (de) | Anordnung für die Bedienung einer rechnergesteuerten Fertigungseinrichtung | |
DE3545957A1 (de) | Verfahren und schaltungsanordnung zur automatischen abarbeitung von einrichtefunktionen in numerischen steuerungen | |
EP1185910B1 (de) | Verfahren zum synchronisierten hochlauf einer numerischen steuerung | |
DE102019005787A1 (de) | System und Verfahren zur Steuerung zumindest einer Maschine, insbesondere eines Kollektivs von Maschinen | |
DE10226198A1 (de) | Verfahren und System zur Unterstützung der Projektierung von Fertigungsanlagen | |
DE4239446C2 (de) | Anordnung für die Bedienung einer rechnergesteuerten Fertigungseinrichtung und ihre Verwendung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OM8 | Search report available as to paragraph 43 lit. 1 sentence 1 patent law | ||
8110 | Request for examination paragraph 44 | ||
8139 | Disposal/non-payment of the annual fee |