-
Allgemeiner Stand der Technik
-
Gebiet der Erfindung
-
Die vorliegende Erfindung betrifft eine numerische Steuervorrichtung, die einen fehlerhaften Achsenbefehl erkennt. Während numerische Steuervorrichtungen Maschinenwerkzeuge steuern, verursacht insbesondere ein fehlerhafter Betrieb einer Achse in einem Maschinenwerkzeug häufig ein signifikantes Resultat, wie fehlerhaftes Schneiden oder ein Maschinenschaden. Die vorliegende Erfindung verhindert folglich einen derartigen fehlerhaften Betrieb, insbesondere durch Erkennen eines fehlerhaften Achsenbefehls.
-
Beschreibung des Standes der Technik
-
In der
JP H05-143 130 A wurde eine numerische Steuervorrichtung offenbart, die eine Lese-/Schreibzulassungsinformation für jede Variable speichert und einen Alarm erzeugt, wenn von einem Lese-/Schreibvorgang bestimmt wird, dass er für ein gewünschtes Bearbeitungssystem nicht zugelassen ist.
-
Darüber hinaus wurde in der
JP 2003-295 916 A eine numerische Steuervorrichtung offenbart, die bestimmt, ob ein numerischer Wert, der neu für ein Element eingegeben wird, eine Bedingung erfüllt oder nicht, die durch Kombinieren eines Durchschnitts und einer Standardabweichung von numerischen Werten, die für das gleiche Element in der Vergangenheit eingestellt wurden, erfasst wird, und in einem Fall, in dem die Bedingung nicht erfüllt wird, einen Hinweis anzeigt.
-
<Makroaufruf>
-
Ein Makro ist ein Programm, in dem ein bestimmter festgelegter Vorgang oder ein wiederholt durchgeführter Vorgang registriert ist, und durch Verwenden eines Makroaufrufs kann ein Programm auf einfache Weise beschrieben werden. Darüber hinaus kann durch Bezeichnen von Argumenten oder Durchführen mehrerer Aufrufe zum Zeitpunkt des Durchführens eines Makroaufrufs ein Aufruf mit höherer Vielseitigkeit umgesetzt werden.
-
Wenn jedoch eine komplexere Aufrufbeziehung angewiesen wird, wird das Programm kompliziert, und es gibt Fälle, in denen ein fehlerhafter Befehl verursacht wird. Ein Beispiel eines derartigen Programms ist in 1 dargestellt. Wie in 1 dargestellt, werden in 00001, wenn Bewegungsbefehle von X, Y und Z unter Verwendung von Argumenten A, B und C gegeben werden, die Argumente zu Variablen #1, #2 und #3 eines Makroprogramms 09010, die Position wird durch Addieren von Verschiebungsbeträgen (100,0, 200,0 und 150,0) zu #1, #2 bzw. #3 als N11 bestimmt, das Verfahren wird zum ursprünglichen Programm zurückgesetzt und die maschinelle Bearbeitung wird durchgeführt. Hier werden Additionsvorgänge durch Verwenden gemeinsamer Variablen #101, #102 und #103 durchgeführt. In 00002, wenn Bewegungsbefehle von X und Y unter Verwendung von Argumenten A und B gegeben werden, werden die Argumente zu Variablen #1 und #2 eines Makroprogramms O9010 und die Positionen von X und Y werden durch Addieren von Verschiebungsbeträgen (100,0 und 200,0) zu #1 bzw. #2 als N11 bestimmt, das Verfahren wird zum ursprünglichen Programm zurückgesetzt und die maschinelle Bearbeitung soll durchgeführt werden.
-
Hier ist das Makroprogramm O9010 ein gemeinsames Makroprogramm, das für einen Bewegungsbefehl verwendet wird. Da #103 jedoch eine gemeinsame Variable ist, bleibt der Wert von #103 gemäß dem vorherigen Aufruf und ein Bewegungsbefehl der Z-Achse, der nicht in O0002 angewiesen wird, wird in N11 erzeugt. Wenn wie oben eine Aufrufbeziehung vorliegt, die nicht einfach ist, gibt es Fälle, in denen ein Bewegungsbefehl für eine Achse, für die eine Bewegung nicht vorgesehen ist, erzeugt wird. Obwohl in diesem Beispiel ein einfacher Aufruf als ein Beispiel beschrieben wurde, kann ein unbeabsichtigter Bewegungsbefehl einfacher erzeugt werden, wenn der Aufruf vervielfacht wird, um kompliziert zu sein, da er zweifach oder dreifach ist.
-
<Fräserradiuskompensation>
-
Eine Fräserradiuskompensation ist eine Funktion zum Bezeichnen einer Form, die tatsächlich als ein programmierter Weg verarbeitet wird, und zum Versetzen eines Werkzeugmittelpunktwegs um einen Radius eines Werkzeugs, das zur maschinellen Bearbeitung verwendet wird. Dementsprechend liegt ein Vorteil vor, dass das Programm nicht geändert werden muss, selbst wenn der Durchmesser des Werkzeugs, das zur maschinellen Bearbeitung verwendet wird, geändert wird.
-
2 ist ein Beispiel eines Programms für die Fräserradiuskompensation auf einer XY-Ebene gemäß einem Befehl G17. Ein Versatzvektor wird auf der XY-Ebene erzeugt. Wie in 3 dargestellt, wenn jedoch der Befehl G17 von N10 fälschlicherweise als G19 (YZ-Ebene) angewiesen wird, wird der Versatzvektor auf einer YZ-Ebene erzeugt, und ein unbeabsichtigter Betrieb der Z-Achse wird erzeugt.
-
<Werkzeugmittelpunktsteuerung>
-
Eine Werkzeugmittelpunktsteuerung ist ein Steuerverfahren zum Bewegen des Mittelpunkts eines Werkzeugs entlang einem angewiesenen Weg durch Durchführen einer Korrektur einer Werkzeuglänge jedes Mal für jeden Interpolationszeitraum ebenfalls innerhalb eines Befehlsblocks eines Programms. Da der Korrekturbefehl der Werkzeuglänge sich jedoch gemäß der Bewegung der Drehachse ändert, gibt es Fälle, in denen eine nicht angewiesene Bewegung der Achse auftritt.
-
In 4 ist G43.4 ein Werkzeugmittelpunktsteuerungsstart-G-Code. Obwohl es in einem Block N11 keinen Z-Achsenbefehl gibt, wie in der Figur dargestellt, tritt eine Bewegung der Z-Achse an einer Maschinenposition auf, die sich an der Werkzeugbasisseite befindet, gemäß eine Veränderung in der B-Achse. Da der Bewegungsbetrag der Z-Achse auf dem Werkzeuglängenversatz basiert, gibt es Fälle, in denen der Bewegungsbetrag zu einem hohen Bewegungsbetrag wird, der von einem Bediener in Abhängigkeit von dem Werkzeuglängenversatz nicht erwartet wird.
-
Die in der
JP H05-143 130 A und der
JP 2003-295 916 A offenbarten numerischen Steuervorrichtungen können einen Alarm durch Fokussieren auf einen Achsenbefehl nicht erkennen und können einen fehlerhaften Achsenbefehl gemäß einem Makroaufruf, einer Fräserradiuskompensation, einer Werkzeugmittelpunktsteuerung und dergleichen nicht erkennen.
-
Die als nächstliegender Stand der Technik ermittelte
DE 40 28 332 A1 beschreibt eine numerische Steuerung mit einem automatischen Programmierabschnitt zur automatischen Bildung von NC-Daten aus einer automatischen Programmiersprache, einem numerischen Steuerabschnitt zur Analyse der durch den automatischen Programmierabschnitt gebildeten NC-Daten zur Steuerung des Betriebes einer Maschine, einem Anzeige-Verarbeitungsabschnitt zur Anzeige der automatischen Programmiersprache parallel mit den mittels Zwischenspeicher auf dem Bildschirm während der Bearbeitung angezeigten NC-Daten, und einem Zwischenspeicher-Korrekturabschnitt zur Zwischenspeicher-Korrektur der automatischen Programmiersprache, die durch den Anzeige-Verarbeitungsabschnitt angezeigt wird und zur Rückführung der in dieser Weise korrigierten automatischen Programmiersprache zum automatischen Programmierabschnitt.
-
Kurzdarstellung der Erfindung
-
Die Aufgabe der vorliegenden Erfindung besteht darin, eine numerische Steuervorrichtung bereitzustellen, die eine Vorgangsprüfung reibungslos durchführt, zusammen mit dem Verhindern eines fehlerhaften Vorgangs durch Durchführen eines Alarmstopps, wenn ein fehlerhafter Achsenbefehl gemäß einem Makroaufruf, einer Fräserradiuskompensation, einer Werkzeugmittelpunktsteuerung und dergleichen, wie oben beschrieben, erkannt wird.
-
Eine numerische Steuervorrichtung gemäß der vorliegenden Erfindung umfasst eine Anweisungsprogrammanalyseeinheit zum Analysieren eines Anweisungsprogramms und eine Interpolationsbefehlserzeugungseinheit zum Erzeugen eines Interpolationsbefehls auf der Basis eines Ergebnisses der Analyse durch die Anweisungsprogrammanalyseeinheit. Die numerische Steuervorrichtung umfasst Folgendes: eine Alarm-Achsenbezeichnungseinheit, die dazu konfiguriert ist, eine Achse zu bezeichnen, die zu einem Kriterium für einen Alarm wird; und eine Achsenbefehlsprüfeinheit, die dazu konfiguriert ist, einen Alarmstopp in einem Fall durchzuführen, in dem die Achse, die von der Alarm-Achsenbezeichnungseinheit bezeichnet wurde, angewiesen (angesteuert) wird oder die Interpolationsbefehlserzeugungseinheit die Achse, die von der Alarm-Achsenbezeichnungseinheit bezeichnet wurde, infolge der Analyse des Anweisungsprogramms, die von der Anweisungsprogrammanalyseeinheit durchgeführt wird, interpoliert.
-
Die oben beschriebene Achsenbefehlsprüfeinheit kann zu der Anweisungsprogrammanalyseeinheit gehören und die Achsenbefehlsprüfeinheit ist konfiguriert zu bestimmen, ob die Achse, die von der Alarm-Achsenbezeichnungseinheit bezeichnet wurde, in dem Anweisungsprogramm angewiesen (angesteuert) wird oder nicht, und zu bestimmen, ob ein für die Achse angewiesener Betrag einen im Voraus eingestellten zulässigen Bereich überschreitet oder nicht, und einen Alarmstopp in einem Fall durchzuführen, in dem der angewiesene Betrag den zulässigen Bereich überschreitet.
-
Die oben beschriebene Achsenbefehlsprüfeinheit kann zu der Interpolationsbefehlserzeugungseinheit gehören und die Achsenbefehlsprüfeinheit ist konfiguriert zu bestimmen, ob die Achse, die von der Alarm-Achsenbezeichnungseinheit bezeichnet wurde, in dem Interpolationsbefehl angewiesen (angesteuert) wird oder nicht, und in einem Fall, in dem ein fehlerhafter Achsenbefehl angewiesen wird, zu bestimmen, ob ein angewiesener Betrag einen im Voraus eingestellten zulässigen Bereich überschreitet oder nicht, und in einem Fall, in dem der angewiesene Betrag den zulässigen Bereich überschreitet, einen Alarmstopp durchzuführen.
-
Die oben beschriebene Achsenbefehlsprüfeinheit kann konfiguriert sein zu bestimmen, ob die Achse, die von der Alarm-Achsenbezeichnungseinheit bezeichnet wurde, in der Anweisungsprogrammanalyseeinheit angewiesen (angesteuert) wird oder nicht, und in einem Fall, in dem die Achse angewiesen wird, zu bestimmen, ob ein angewiesener Betrag einen im Voraus eingestellten zulässigen Bereich überschreitet oder nicht, und in einem Fall, in dem der angewiesene Betrag den zulässigen Bereich überschreitet, einen Alarmstopp durchzuführen, und weiterhin zu bestimmen, ob die Achse, die von der Alarm-Achsenbezeichnungseinheit bezeichnet wurde, in der Interpolationsbefehlserzeugungseinheit angewiesen (angesteuert) wird oder nicht, und in einem Fall, in dem die Achse angewiesen wird, zu bestimmen, ob ein angewiesener Betrag einen im Voraus eingestellten zulässigen Bereich überschreitet oder nicht, und in einem Fall, in dem der angewiesene Betrag den zulässigen Bereich überschreitet, einen Alarmstopp durchzuführen.
-
Die oben beschriebene Achsenbefehlsprüfeinheit kann eine Programmachsenbefehlsprüfeinheit umfassen, die bestimmt, ob die Achse, die von der Alarm-Achsenbezeichnungseinheit bezeichnet wurde, angewiesen (angesteuert) wird oder nicht, und bestimmt, ob ein angewiesener Betrag für die Achse einen im Voraus eingestellten zulässigen Bereich überschreitet oder nicht, und einen Alarmstopp in einem Fall durchführt, in dem die Achse, die von der Alarm-Achsenbezeichnungseinheit bezeichnet wurde, angewiesen wird, oder in einem Fall, in dem der angewiesene Betrag den zulässigen Bereich überschreitet.
-
Die oben beschriebene Interpolationsbefehlserzeugungseinheit kann eine Interpolationsachsenbefehlsprüfeinheit umfassen, die bestimmt, ob die Achse, die von der Alarm-Achsenbezeichnungseinheit bezeichnet wurde, angewiesen (angesteuert) wird oder nicht, und ob ein für die Achse angewiesener Betrag einen im Voraus eingestellten zulässigen Bereich überschreitet oder nicht, und einen Alarmstopp in einem Fall durchführt, in dem die Interpolationsbefehlserzeugungseinheit einen Befehl zur Interpolation für die Achse, die von der Alarm-Achsenbezeichnungseinheit bezeichnet wurde, erteilt, oder in einem Fall, in dem der angewiesene Betrag den zulässigen Bereich überschreitet.
-
Alternativ dazu kann die oben beschriebene numerische Steuervorrichtung die oben beschriebene Programmachsenbefehlsprüfeinheit und die oben beschriebene Interpolationsachsenbefehlsprüfeinheit umfassen.
-
Durch Einbinden der oben beschriebenen Konfigurationen führt die vorliegende Erfindung einen Alarmstopp durch, wenn ein fehlerhafter Achsenbefehl gemäß einer Fräserradiuskompensation, einer Werkzeugmittelpunktsteuerung oder dergleichen erkannt wird, wodurch eine numerische Steuervorrichtung bereitgestellt wird, die eine Vorgangsprüfung reibungslos durchführt, zusammen mit der Verhinderung einer Fehlfunktion.
-
Figurenliste
-
Die obigen und andere Merkmale und Vorteile der vorliegenden Erfindung werden durch ausführliches Beschreiben von beispielhaften Ausführungsformen, wie im Folgenden, unter Bezugnahme auf die angefügten Zeichnungen offensichtlicher werden, in denen:
- 1 ein Diagramm ist, das ein Beispiel eines Makroprogramms darstellt;
- 2 ein Diagramm ist, das ein Beispiel eines Programms einer Fräserradiuskompensation auf XY-Ebene darstellt;
- 3 ein Diagramm ist, das ein Beispiel eines Programms einer Fräserradiuskompensation auf XY-Ebene darstellt;
- 4 ein Diagramm ist, das ein Beispiel eines Programms einer Werkzeugmittelpunktsteuerung darstellt;
- 5 ein Diagramm ist, das ein Beispiel des Einstellens einer Alarmerkennungsbedingung darstellt;
- 6 ein Diagramm ist, das ein Beispiel des Erkennens eines Alarms in einem definierten Programmbefehl darstellt;
- 7 ein Diagramm ist, das ein Beispiel des Erkennens eines Alarms in einem Achsenbefehl, der einen zulässigen Bereich überschreitet darstellt;
- 8 ein Diagramm ist, das ein Beispiel eines Programms einer Werkzeugmittelpunktsteuerung darstellt;
- 9 ein Blockdiagramm einer numerischen Steuervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung ist;
- 10 ein Ablaufdiagramm ist, das das Verfahren einer in 9 dargestellten Programmachsenbefehlsprüfeinheit darstellt; und
- 11 ein Ablaufdiagramm ist, das das Verfahren einer in 9 dargestellten Interpolationsachsenbefehlsprüfeinheit darstellt.
-
Ausführliche Beschreibung der bevorzugten Ausführungsformen
-
<Ausführungsform 1>
-
Gemäß Ausführungsform 1 wird ein fehlerhafter Befehl in einem Programm erkannt.
-
Wie oben beschrieben, wird ein Programm in einem Fall kompliziert, in dem ein Makroaufruf auf multiplexierte Weise durchgeführt wird. Folglich führt eine Programmachsenbefehlsprüfeinheit, die zu einer Anweisungsprogrammanalyseeinheit der numerischen Steuervorrichtung gehört, einen Prüfvorgang auf der Basis einer Alarmerkennungsbedingung durch und führt einen Alarmstopp durch, wenn ein fehlerhafter oder unbeabsichtigter Achsenbefehl durchgeführt wird.
-
Ein Beispiel eines Einstellungsbildschirms einer Alarmerkennungsbedingung, die im Voraus eingestellt wird, ist in 5 dargestellt. Ein Einstellungselement der zweiten Zeile ist eine Einstellung, in der ein Alarmstopp in einem Fall durchgeführt wird, in dem eine Z-Achse als eine Zielachse eines fehlerhaften Achsenbefehls zwischen einem Befehl M100 und einem Befehl M101 in einem Programmbefehl angewiesen (angesteuert) wird. Der zulässige Bereich ist leer, was für eine Einstellung steht, in der ein Alarmstopp nur auf der Basis des Vorliegens des Befehls durchgeführt wird. Ein Einstellungselement der dritten Zeile ist eine Einstellung, in der ein Alarmstopp in dem Fall eines Achsenbefehls durchgeführt wird, in dem der Bewegungsbetrag der Z-Achse, die eine Zielachse eines fehlerhaften Achsenbefehls ist, zwischen einem Befehl M200 und einem Befehl M201 mehr als 5,0 in einem Programmbefehl ist. Auf ähnliche Weise ist ein Einstellungselement der 4. Zeile eine Einstellung, in der ein Alarmstopp in dem Fall eines Achsenbefehls durchgeführt wird, in dem die Z-Achse sich um mehr als 10,0 zwischen einem Befehl M300 und einem Befehl M301 bewegt. Während der Erkennungsstartbefehl und der Erkennungsabschlussbefehl Eingaben unter Verwendung von M-Codes sind, ist hier eine Zielachse eines fehlerhaften Achsenbefehls eine Eingabe unter Verwendung eines Zeichens und ein zulässiger Bereich ist eine Eingabe unter Verwendung eines numerischen Werts; Eingaben unter Verwendung eines anderen Codes, eines Signals und dergleichen können verwendet werden.
-
Unter der in 5 eingestellten Alarmerkennungsbedingung werden in 6 dargestellte Programme O0001 und O0002 betrieben. Da ein Achsenbefehl der Z-Achse zwischen dem Befehl M100 und dem Befehl M101 von O0002 vorliegt, wird ein Alarmstopp für den Z-Achsenbefehl von N11 in O9010 durchgeführt.
-
<Ausführungsform 2>
-
Gemäß Ausführungsform 2 wird ein fehlerhafter Achsenbefehl, der einen zulässigen Bereich überschreitet, in einem Programm erkannt.
-
Wie oben beschrieben, in einem Fall, in dem ein Programm unter Verwendung einer Fräserradiuskompensation erzeugt wird, wenn eine zu versetzende Ebene fälschlicherweise bezeichnet wird, gibt es Fälle, in denen eine Bewegung einer Achse, die nicht in einer beabsichtigten Ebene vorliegt, auftritt. Eine Programmachsenbefehlsprüfeinheit, die zu einer Anweisungsprogrammanalyseeinheit gehört, führt eine Prüfung auf der Basis der Alarmerkennungsbedingung durch, und wenn ein fehlerhafter (unbeabsichtigter) Achsenbefehl durchgeführt wird, wird ein Alarmstopp durchgeführt.
-
Unter der in 5 eingestellten Alarmerkennungsbedingung wird ein in 7 dargestelltes Programm O0003 betrieben. In dem in 7 dargestellten Fall wird ein Programm, das auf der Voraussetzung einer Ebene G17 ist, nach N10 erzeugt. Wenn dieses Programm fälschlicherweise auf einer Ebene G19 ausgeführt wird, wird ein Befehl des Z-Achsenbefehls, der nicht zum Zeitpunkt des Erzeugens des Programms beabsichtigt ist, erzeugt.
-
In einem Block N10, der zwischen einem Befehl M200 und einem Befehl M201 von O0003 positioniert ist, wird, da die Z-Achse um mehr als 5,0 bewegt wird, ein Alarmstopp im Block N10 von O0003 durchgeführt. Darüber hinaus wird in dieser Ausführungsform ein in 5 dargestellter zulässiger Betrag zusammen mit M200 auch im Block N10 angewiesen. Auf diese Weise kann der zulässige Bereich in einem Programm angewiesen werden.
-
<Ausführungsform 3>
-
Gemäß Ausführungsform 3 wird ein fehlerhafter Achsenbefehl, der einen zulässigen Bereich überschreitet, in einer Interpolation erkannt.
-
Wie oben beschrieben, wenn ein Programm, das einen Bewegungsbefehl einer Drehachse umfasst, während der Werkzeugmittelpunktsteuerung angewiesen wird, tritt eine Bewegung der Z-Achse, die nicht angewiesen wird, auf. Eine Interpolationsachsenbefehlsprüfeinheit, die zu einer Interpolationsbefehlserzeugungseinheit gehört, führt eine Prüfung auf der Basis der Alarmerkennungsbedingung durch und führt einen Alarmstopp durch, wenn ein fehlerhafter (unbeabsichtigter) Achsenbefehl durchgeführt wird.
-
Unter der in 5 eingestellten Alarmerkennungsbedingung wird ein in 8 dargestelltes Programm O0004 betrieben. In einem Befehl G01, der zwischen einem Befehl M300 und einem Befehl M301 von O0004 positioniert ist, wird, da ein Achsenbefehl zum Bewegen der Z-Achse um mehr als 10,0 erzeugt wird, ein Alarmstopp in einem Befehl G01 von O0004 durchgeführt. Darüber hinaus kann in diesem Beispiel der zulässige Bereich von 10,0 wie in 5 dargestellt eingestellt werden oder kann in einem Befehlsblock von M300 angewiesen werden.
-
<Blockdiagramm>
-
9 stellt ein Blockdiagramm gemäß dieser Ausführungsform dar. Eine numerische Steuervorrichtung 10 analysiert ein Programm, das von einer Anweisungsprogrammanalyseeinheit 11 angewiesen wird, erzeugt einen Interpolationsbefehl auf der Basis der analysierten Daten durch Verwenden einer Interpolationsbefehlserzeugungseinheit 12 und überträgt den erzeugten Interpolationsbefehl an eine Achsensteuereinheit 13. Dann steuert die Achsensteuereinheit 13 eine Werkzeugmaschine durch Antreiben jedes Achsenmotors der Werkzeugmaschine.
-
In dieser Ausführungsform bestimmt die Programmachsenbefehlsprüfeinheit 15, die zu der Anweisungsprogrammanalyseeinheit 11 gehört, ob ein Befehl einer Zielachse eines fehlerhaften Achsenbefehls, der eine Alarmerkennungsbedingung in dem Anweisungsprogramm ist, vorliegt oder nicht und ob ein angewiesener Wert einen zulässigen Bereich überschreitet oder nicht. Darüber hinaus bestimmt eine Interpolationsachsenbefehlsprüfeinheit 16, die zu einer Interpolationsbefehlserzeugungseinheit 12 gehört, ob ein Befehl einer Zielachse eines fehlerhaften Achsenbefehls vorliegt oder nicht und ob der angewiesene Wert den zulässigen Bereich überschreitet oder nicht, und führt einen Alarmstopp durch Erstellen einer Alarmstoppanforderung in einem Fall durch, in dem der Alarmstopp durchgeführt werden soll. Die Alarmstoppanforderung wird für die Anweisungsprogrammanalyseeinheit 11 oder die Interpolationsbefehlserzeugungseinheit 11 erstellt. Eine Achsenbefehlsprüfeinheit 14 wird von einer Programmachsenbefehlsprüfeinheit 15 und/oder einer Interpolationsachsenbefehlsprüfeinheit 16 konfiguriert. Anders ausgedrückt, in dem in 9 dargestellten Fall, während die Achsenbefehlsprüfeinheit 14 von der Programmachsenbefehlsprüfeinheit und der Interpolationsachsenbefehlsprüfeinheit konfiguriert wird, kann sie von einer beliebigen davon konfiguriert werden. Eine Alarm-Achsenbezeichnungseinheit 17 bezeichnet eine Achse, die zu einem Kriterium für den Alarm wird, und die Bezeichnung wird durch einen Eingabebildschirm der numerischen Steuervorrichtung 10 oder ein Programm vorgenommen.
-
<Ablaufdiagramm>
-
Die Verfahren der Programmachsenbefehlsprüfeinheit 15 und der Interpolationsachsenbefehlsprüfeinheit 16 sind in 10 bzw. 11 dargestellt. Die Anweisungsprogrammanalyseeinheit 11 analysiert ein Anweisungsprogramm und erzeugt einen Befehlswert jeder Adresse für jeden Block. Die Anweisungsprogrammanalyseeinheit 11 analysiert jeden Block und ruft die Programmachsenbefehlsprüfeinheit 15 für jede Erzeugung des Befehlswerts jeder Achse auf. Die Interpolationsbefehlserzeugungseinheit 12 erzeugt einen Interpolationsbefehl jeder Achse für jeden Interpolationszeitraum auf der Basis der analysierten Daten, die von der Anweisungsprogrammanalyseeinheit 11 erfasst wurden, wodurch ein Interpolationsverfahren durchgeführt wird. Die Interpolationsbefehlserzeugungseinheit 12 ruft die Interpolationsachsenbefehlsprüfeinheit 16 für jede Erzeugung des Interpolationsbefehls jeder Achse in jedem Interpolationszeitraum auf. Ein akkumulierter Interpolationsbefehlswert S der Zielachse der Interpolationsachsenbefehlsprüfeinheit 16 wird auf null initialisiert, wenn ein Erkennungsstartbefehl erstellt wird. Ein Interpolationsbefehl der Zielachse in dem Interpolationszeitraum wird als ΔS bezeichnet.
-
10 ist ein Ablaufdiagramm, das das Verfahren der in 9 dargestellten Programmachsenbefehlsprüfeinheit darstellt. Hierin im Folgenden wird jeder Schritt beschrieben.
-
[Schritt sa01] Es wird bestimmt, ob es zwischen dem Erkennungsstartbefehl und dem Erkennungsabschlussbefehl ist, und im Fall von „Ja“ fährt das Verfahren mit Schritt sa02 fort, und im Fall von „Nein“ endet das Verfahren.
-
[Schritt sa02] Es wird bestimmt, ob der Befehl ein Befehl der Zielachse ist oder nicht, und im Fall von „Ja“ fährt das Verfahren mit Schritt sa03 fort, und im Fall von „Nein“ endet das Verfahren.
-
[Schritt sa03] Es wird bestimmt, ob der zulässige Bereich ein Leerwert ist oder nicht, und im Fall von „Ja“ fährt das Verfahren mit Schritt sa05 fort, und im Fall von „Nein“ fährt das Verfahren mit Schritt sa04 fort.
-
[Schritt sa04] Es wird bestimmt, ob der Befehlswert innerhalb des zulässigen Bereichs ist oder nicht, und im Fall von „Ja“ endet das Verfahren, und im Fall von „Nein“ fährt das Verfahren mit Schritt sa05 fort.
-
[Schritt sa05] Eine Alarmstoppanforderung wird für die Anweisungsprogrammanalyseeinheit erstellt und das Verfahren endet.
-
11 ist ein Ablaufdiagramm, das das Verfahren der in 9 dargestellten Interpolationsachsenbefehlsprüfeinheit darstellt. Hierin im Folgenden wird jeder Schritt beschrieben.
-
[Schritt sb01] Es wird bestimmt, ob es zwischen dem Erkennungsstartbefehl und dem Erkennungsabschlussbefehl ist, und im Fall von „Ja“ fährt das Verfahren mit Schritt sb02 fort, und im Fall von „Nein“ endet das Verfahren.
-
[Schritt sb02] Es wird bestimmt, ob der Befehl ein Interpolationsbefehl der Zielachse ist oder nicht, und im Fall von „Ja“ fährt das Verfahren mit Schritt sb03 fort, und im Fall von „Nein“ endet das Verfahren.
-
[Schritt sb03] Es wird bestimmt, ob der zulässige Bereich ein Leerwert ist oder nicht, und im Fall von „Ja“ fährt das Verfahren mit Schritt sb06 fort, und im Fall von „Nein“ fährt das Verfahren mit Schritt sb04 fort.
-
[Schritt sb04] Ein Interpolationsbefehl ΔS der Zielachse wird zu S addiert.
-
[Schritt sb05] Es wird bestimmt, ob S innerhalb des zulässigen Bereichs ist oder nicht, und im Fall von „Ja“ endet das Verfahren, und im Fall von „Nein“ fährt das Verfahren mit Schritt sb06 fort.
-
[Schritt sb06] Eine Alarmstoppanforderung wird für die Interpolationsbefehlserzeugungseinheit erstellt und das Verfahren endet.