-
Hintergrund der Erfindung
-
Gebiet der Erfindung
-
Die vorliegende Erfindung betrifft eine numerische Steuervorrichtung mit einer Maschinenzeitvorhersageeinheit und einer Maschinenfehlervorhersageeinheit.
-
Beschreibung des verwandten Stands der Technik
-
Bei einer maschinellen Verarbeitung eines Werkstücks unter Verwendung eines Maschinenwerkzeugs wird im Allgemeinen die Genauigkeit der Maschinenverarbeitung verringert, wenn die Maschinenzeit verringert wird oder wenn die Maschinengeschwindigkeit erhöht wird. Wird die Maschinenzeit erhöht oder wird die Maschinengeschwindigkeit verringert, dann wird demgegenüber die Genauigkeit der maschinellen Verarbeitung verbessert. In der maschinellen Verarbeitung des Werkstücks ist die Genauigkeit der maschinellen Verarbeitung wichtiger als die Maschinenzeit. Somit wünschen Benutzer, die das Maschinenwerkzeug verwenden, um das Werkzeug maschinell zu verarbeiten, in der Lage zu sein, das Werkstück in einer minimalen Maschinenzeit mit einer Genauigkeit der maschinellen Verarbeitung innerhalb einer voreingestellten Maschinenfehlertoleranz maschinell zu verarbeiten. Es ist jedoch nicht leicht, die geeignete Maschinenzeit und das Maschinenfehlerniveau für das Werkstück sicherzustellen.
-
Demgemäß wird die maschinelle Verarbeitung normalerweise bei einer Geschwindigkeit innerhalb eines zulässigen Genauigkeitsbereichs durchgeführt, nachdem eine maschinelle Probelaufverarbeitung mehrere Male mit etwas längerer Zeit durchgeführt wurde. Vor dem maschinellen Verarbeiten eines Werkstücks möchten Benutzer deshalb per Simulation wissen, wie genau das Werkstück mit der Maschinengeschwindigkeit und Maschinenbedingungen ohne eine maschinelle Probelaufverarbeitung maschinell verarbeitet werden wird. Des Weiteren möchten Benutzer per Simulation dringend die Maschinengeschwindigkeit und Maschinenbedingungen kennen, mit denen das Werkstück mit einer maschinellen Verarbeitungsgenauigkeit innerhalb einer Maschinenfehlertoleranz in einer minimalen Maschinenzeit ohne eine maschinelle Probelaufverarbeitung maschinell verarbeitet werden kann.
-
Grundlegende Techniken gemäß dem Stand der Technik, die eine Maschinenzeitvorhersage betreffen, sind in den nachfolgenden Patentschriften offenbart.
- (a) Die japanische Patentanmeldungsoffenlegung Nr. 2004-227028 (entsprechend der ungeprüften US-Patentanmeldung Nr. US 2005/0228533 A1) offenbart eine Technik, in der ein Maschinenprogramm per Simulation in Maschinenvorgänge unterteilt wird, eine Zykluszeit für jeden der unterteilten Maschinenvorgänge berechnet wird, und Informationen bezüglich des Ergebnisses der Simulation auf einer Anzeigeeinheit einer Endgeräteeinrichtung angezeigt werden. Des Weiteren offenbart die japanische Patentanmeldungsoffenlegung Nr. 2006-301440 eine Maschinenzeitberechnungseinrichtung, die eine genaue Achsenbewegungszeit selbst bei einer maschinellen Verarbeitung schnell berechnen kann, die eine numerische Steuereinrichtung mit einer Funktion zum optimalen Einstellen der Vorschubrate und der Beschleunigung/Abbremsung verwendet.
-
Obwohl die Maschinenzeit in den vorstehend beschriebenen zwei Patentdruckschriften vorhergesagt wird, werden Maschinenfehler nicht vorhergesagt. Deshalb können diese Techniken nicht die Benutzernachfrage befriedigen, per Simulation die Genauigkeit des Werkstücks mit der Maschinengeschwindigkeit ohne eine maschinelle Probelaufverarbeitung zu kennen oder per Simulation die Maschinengeschwindigkeit zu kennen, bei der das Werkstück mit einer Genauigkeit innerhalb einer Maschinenfehlertoleranz in einer minimalen Maschinenzeit ohne eine maschinelle Probelaufverarbeitung maschinell verarbeitet werden kann.
- (b) Die japanische Patentanmeldungsoffenlegung Nr. 58-35607 (entsprechend dem US-Patent Nr. 4,543,625 ) offenbart eine numerische Steuervorrichtung, die in der Lage ist, einen Maschinenfehler beim Eckenschneiden und einen Kreisfehler im Kreisbogenschneiden auf Toleranzen einzuschränken.
-
In der in dem vorstehend beschriebenen Patentdokument offenbarten Technik wird der Maschinenfehler auf der Grundlage der Voraussetzung berechnet, dass eine Beschleunigung/Abbremsung mit exponentiellen Eigenschaften durchgeführt wird. In modernen numerischen Steuervorrichtungen wird jedoch eine komplizierte Geschwindigkeitssteuerung für glatte Beschleunigungs-/Abbremseigenschaften durchgeführt, wie sowohl lineare und glockenförmige Beschleunigungs-/Abbremseigenschaften als auch die exponentiellen Beschleunigungs-/Abbremseigenschaften. Somit kann der Maschinenfehler nicht durch eine einfache computerisierte Formel vorhergesagt werden, die in diesem Patentdokument beschrieben ist.
- (c) Die japanische Patentanmeldungsoffenlegung Nr. 2011-60016 (entsprechend der ungeprüften US-Patentanmeldung Nr. US2011/0057599 A1) offenbart eine Bahnkurvenanzeigevorrichtung, die eine Funktion zum genauen Quantifizieren eines Fehlers einer dreidimensionalen Bahnkurve eines Maschinenwerkzeugs und zum Anzeigen oder Ausgeben des Fehlers aufweist.
-
Die Bahnkurvenanzeigevorrichtung, die in der vorstehend beschriebenen Patentdruckschrift offenbart ist, umfasst eine Befehlsliniensegmentsdefinitionseinheit und eine Fehlerberechnungseinheit. Die Befehlsliniensegmentsdefinitionseinheit definiert Befehlsliniensegmente, die jeweils zwei angrenzende Punkte für jeden Befehlspositionspunkt verbinden. Die Fehlerberechnungseinheit berechnet, als einen Fehler einer Ist-Position zu jedem Zeitpunkt relativ zu einem Befehlsweg, die Länge der kürzesten von lotrechten Linien, die von der Ist-Position zu den Befehlsliniensegmenten einzeln gezeichnet sind, oder die Länge eines Liniensegments, das die Ist-Position und die nächstgelegenen Befehlsposition verbindet, welche auch immer die kürzere ist. Daten bezüglich der Ist-Position werden durch tatsächliches Operieren einer Antriebswelle (Servo) bestimmt, nicht per Simulation.
-
Die in dem vorstehend beschriebenen Patentdokument offenbarte Technik wird nachstehend unter Bezugnahme auf 1 beschrieben. In dieser Technik wird eine Länge von einer Ist-Position Qm'' (m = 1, 2, ...) bis zu einer Befehlsposition Pn (n = 1, 2, ...) als ein Fehler betrachtet. In einem anderen Fall soll demgegenüber eine Länge von der Befehlsposition Pn zu der Ist-Position Qm'' als ein Fehler betrachtet werden. Bei der maschinellen Verarbeitung, beispielsweise einer rechtwinkligen Ecke durch die in diesem Patentdokument offenbarte Technik, wie in 1 gezeigt, werden Längen von Ist-Positionen zu Befehlspositionen (durch gestrichelte Linie angedeutet) als Fehler betrachtet. In diesem Fall ist jedoch die Länge einer lotrechten Linie (durch eine Strichpunktlinie angedeutet) größer, die von einer Befehlsposition P4 bei der Ecke zu einem Liniensegment gezeichnet wird, das Ist-Positionen Q4'' und Q5 '' verbindet. Deshalb soll die Länge dieser lotrechten Linie als ein Fehler betrachtet werden. Somit liegt ebenso ein Fall vor, in dem die Länge von der Befehlsposition zu der Ist-Position als ein Fehler betrachtet werden soll, so dass das Verfahren der Fehlerevaluierung, das in diesem Patentdokument offenbart ist, unbefriedigend ist.
-
Gemäß der in diesem Patentdokument offenbarten Technik wird des Weiteren der Fehler lediglich berechnet und angezeigt oder ausgegeben. Deshalb kann diese Technik nicht die Benutzernachfrage befriedigen, per Simulation die Genauigkeit des Werkstücks mit der Maschinengeschwindigkeit und den Maschinenbedingungen ohne eine maschinelle Probelaufverarbeitung zu kennen, oder per Simulation die Maschinengeschwindigkeit und Maschinenbedingungen zu bestimmen, mit denen das Werkstück mit einer Genauigkeit innerhalb einer Maschinenfehlertoleranz in einer minimalen Maschinenzeit ohne eine maschinelle Probelaufverarbeitung maschinell verarbeitet werden kann.
-
Üblicherweise weist eine numerische Steuervorrichtung eine Maschinenbedingungsauswahlfunktion auf. Gemäß dieser Funktion werden Maschinenbedingungsdaten einschließlich einer zulässigen Beschleunigung und einer zulässigen Eckgeschwindigkeitsdifferenz, die in 2 gezeigt sind, vorab als Parameter gesetzt, und werden die Genauigkeitsdaten, die für die maschinelle Verarbeitung zu verwenden sind, als Rr (r = 1 bis 10) in dem Block G05.1 in dem in 3 gezeigten Programm ausgewiesen.
-
Gemäß dem in 2 gezeigten Verfahren werden die Maschinenbedingungsdaten (einschließlich einer zulässigen Beschleunigung und einer zulässigen Eckgeschwindigkeitsdifferenz) vorab für jeden der Fälle der geschwindigkeitsorientierten Daten (Präzisionsdaten 1) und genauigkeitsorientierten Daten (Präzisionsdaten 10) vorab gesetzt, und werden Maschinenbedingungsdaten für Genauigkeitsdaten 2 bis 9 zwischenliegend zwischen den Genauigkeitsdaten 1 und 10 durch eine proportionale Verteilung auf der Grundlage jener gesetzten Werte bestimmt. Obwohl lediglich die zwei typischen Maschinenbedingungsdaten hier beschrieben sind, können verschiedene andere Maschinenbedingungsdaten, wie ein Sprung (Beschleunigungsvariation), eine Nachinterpolationsbeschleunigungs-/Abbremszeitkonstante usw. auf die gleiche Art und Weise gesetzt werden.
-
3 zeigt Befehle für die Angabe von Genauigkeitsdaten, die unter den vorstehend beschriebenen Genauigkeitsdaten auszuweisen sind.
-
”G05.1Q1” in dem ersten Block stellt einen Block für einen Maschinenbedingungsauswahlbefehl dar, und ”r” und ”Rr” bezeichnen die Genauigkeitsdaten, die aus den in 2 gezeigten Genauigkeitsdaten 1 bis 10 auszuwählen sind. Beispielsweise wird ”r” auf einen kleinen Wert für eine grobe maschinelle Verarbeitung oder auf einen großen Wert für eine feine maschinelle Verarbeitung gesetzt. Es sei zu verstehen, dass hier die Maschinenbedingungsdaten einschließlich der zulässigen Beschleunigung, der zulässigen Eckgeschwindigkeitsdifferenz usw. direkt befohlen werden können oder parametergesetzte Werte für diese Bedingungsdaten gesetzt werden können, anstelle des Ausweisens der Genauigkeitsdaten unter Verwendung der Zahlen 1 bis 10.
-
Während der F-Befehl in dem zweiten Block ein Geschwindigkeitsbefehl als ein Maschinenbefehl ist, kann eine Ist-Befehlsgeschwindigkeit unter Verwendung eines Außerkraftsetzens (1 bis 200%) in einen Wert (F-Befehl) × (Außerkraftsetzwert) geändert werden. Des Weiteren kann eine parametergesetzte Geschwindigkeit für eine Befehlsgeschwindigkeit verwendet werden, die den F-Befehl ignoriert. Des Weiteren kann der F-Befehl in dem Programm in einen Befehl für eine modifizierte Geschwindigkeit geändert werden.
-
Wird ”G05. 1Q1R4” in dem in 2 gezeigten Parametersetzen angewiesen, dann wird zum Beispiel eine maschinelle Verarbeitung mit der zulässigen Beschleunigung von 1.533 (= (6 × 2.000 + 3 × 600)/9) mm/s2 und der zulässigen Eckgeschwindigkeitsdifferenz von 800 (= (6 × 1.000 + 3 × 600)/9) mm/min durchgeführt, die als Parameter für die Maschinenbedingungsdaten gesetzt sind. Alternativ können, wie vorstehend beschrieben, diese Daten direkt angewiesen werden oder können dementsprechende parametergesetzte Werte gesetzt werden. Obwohl die Genauigkeitsdaten durch diese Maschinenbedingungsauswahlfunktion leicht angewiesen werden können, kann jedoch nicht das geeignete Maschinenfehlerniveau und die Maschinenzeit für alle Genauigkeitsdaten sichergestellt werden.
-
Kurzfassung der Erfindung
-
Demgemäß besteht in Anbetracht der vorstehend beschriebenen Probleme des Standes der Technik eine Aufgabe der Erfindung in einem Bereitstellen einer numerischen Steuervorrichtung, die umfasst: eine Maschinenzeitvorhersageeinheit, die eine vorhergesagte Maschinenzeit per Simulation bestimmt, und eine Maschinenfehlervorhersageeinheit, die einen vorhergesagten Maschinenfehler per Simulation bestimmt, wobei Genauigkeitsdaten und Geschwindigkeitsdaten als Maschinenzeit-/Maschinenfehlervorhersagedaten ausgewiesen werden und ein Maschinenprogramm ausgewiesen wird. Eine weitere Aufgabe der Erfindung liegt in einem Bereitstellen einer numerischen Steuervorrichtung, in der eine Vielzahl von vorhergesagten Maschinenzeiten und eine Vielzahl von vorhergesagten Maschinenfehlern auf der Grundlage der ausgewiesenen Genauigkeitsdaten und Geschwindigkeitsdaten bestimmt werden, und die kürzeste vorhergesagte Maschinenzeit innerhalb einer voreingestellten Maschinenfehlertoleranz auf der Grundlage dieser vorhergesagten Maschinenzeiten und der vorhergesagten Maschinenfehler bestimmt wird.
-
Eine erfindungsgemäße numerische Steuervorrichtung steuert ein Maschinenwerkzeug ansteuernd, das ein Werkstück auf der Grundlage eines Maschinenprogramms maschinell verarbeitet. Die numerische Steuervorrichtung umfasst eine Ausweisungseinheit zum Ausweisen von Geschwindigkeitsdaten zum Ausgeben einer Maschinengeschwindigkeit und von Genauigkeitsdaten zum Ausgeben einer Maschinengenauigkeit, eine Simulationseinheit, die eine Befehlspositionspunktsequenz und eine Servopositionspunktsequenz für jede Verarbeitungsspanne per Simulation bestimmt, unter Verwendung der Geschwindigkeitsdaten und der Genauigkeitsdaten, die für das Maschinenprogramm durch die Ausweisungseinheit ausgewiesen sind, eine Maschinenzeitvorhersageeinheit, die eine vorhergesagte Maschinenzeit bestimmt, während derer das Werkstück in der Simulationseinheit maschinell verarbeitet wird, und eine Maschinenfehlervorhersageeinheit, die einen vorhergesagten Maschinenfehler bestimmt, der verursacht wird, wenn das Werkstück unter Verwendung der Befehlspositionspunktsequenz und der Servopositionspunktsequenz maschinell verarbeitet wird, die durch die Simulationseinheit bestimmt sind.
-
Die Maschinenfehlervorhersageeinheit kann die Befehlspositionspunktsequenz und die Servopositionspunktsequenz für jede Verarbeitungsspanne der Simulation durch die Simulationseinheit erlangen, kann ein Abstand von einer spezifischen Befehlsposition in der Befehlspositionspunktsequenz zu der Servopositionspunktsequenz oder einer rechtwinkligen Linie, die von der spezifischen Befehlsposition zu einem Liniensegment gezeichnet wird, das benachbarte Punkte in jeder Servoposition verbindet, welcher auch immer kürzer ist, als ein Fehler in der spezifischen Befehlsposition bestimmt werden, und kann der größte der Fehler in den Befehlspositionen als ein Fehler zwischen der Befehlspositionspunktsequenz und der Servopositionspunktsequenz bestimmt werden.
-
Die Maschinenfehlervorhersageeinheit kann die Befehlspositionspunktsequenz und die Servopositionspunktsequenz für jede Verarbeitungsspanne der Simulation durch die Simulationseinheit erlangen, kann einen Abstand von einer spezifischen Servoposition in der Servopositionspunktsequenz zu der Befehlspositionspunktsequenz oder einer lotrechten Linie, die von der spezifischen Servoposition zu einem Liniensegment gezeichnet ist, das benachbarte Punkte in jeder Befehlsposition verbindet, welcher auch immer kürzer ist, als ein Fehler in der spezifischen Servoposition bestimmt werden, und kann der größte der Fehler in den Servopositionen als ein Fehler zwischen der Befehlspositionspunktsequenz und der Servopositionspunktsequenz bestimmt werden.
-
Die Maschinenfehlervorsageeinheit kann die Befehlspositionspunktsequenz und die Servopositionspunktsequenz für jede Verarbeitungsspanne der Simulation durch die Simulationseinheit erlangen, kann einen Abstand von einer spezifischen Befehlsposition in der Befehlspositionspunktsequenz zu der Servopositionspunktsequenz oder einer lotrechten Linie, die von der spezifischen Befehlsposition zu einem Liniensegment gezeichnet, das benachbarte Punkte in die der Servoposition verbindet, welcher auch immer die kürzere ist, als ein Fehler in der spezifischen Befehlsposition bestimmt werden, kann der größte der Fehler in den Befehlspositionen als ein Fehler von der Befehlspositionspunktsequenz zu der Servopositionspunktsequenz bestimmt werden, kann ein Abstand von einer spezifischen Servoposition in der Servopositionspunktsequenz zu der Befehlspositionspunktsequenz oder einer lotrechten Linie, die von der spezifischen Servoposition zu einem Liniensegment gezeichnet ist, das benachbarte Punkte in jeder Befehlsposition verbindet, welcher auch immer die kürzere ist, als ein Fehler in der spezifischen Servoposition bestimmt werden, kann der größte der Fehler in den Servopositionen als ein Fehler von der Servopositionspunktsequenz zu der Befehlspositionspunktsequenz bestimmt werden, und kann der größere des Fehlers von der Befehlspositionspunktsequenz zu der Servopositionspunktsequenz oder des Fehlers von der Servopositionspunktsequenz zu der Befehlspositionspunktsequenz als ein Fehler zwischen der Befehlspositionspunktsequenz und der Servopositionspunktsequenz bestimmt werden.
-
Die Maschinenzeitvorhersageeinheit kann eine Vielzahl von vorhergesagten Maschinenzeiten auf der Grundlage einer Vielzahl von ausgewiesenen Genauigkeitsdaten bestimmen, und die Maschinenfehlervorhersageeinheit kann eine Vielzahl von vorhergesagten Maschinenfehlern auf der Grundlage einer Vielzahl von ausgewiesenen Geschwindigkeitsdaten bestimmen. Die Genauigkeitsdaten und die Geschwindigkeitsdaten für die kürzeste vorhergesagte Maschinenzeit innerhalb einer voreingestellten Maschinenfehlertoleranz können auf der Grundlage der Vielzahl von vorhergesagten Maschinenzeiten und der Vielzahl von vorhergesagten Maschinenfehlern, die so bestimmt wurden, bestimmt werden.
-
Die numerische Steuervorrichtung kann eine Mehrachsenmaschine mit einer Drehachse steuern, die Maschinenfehlervorhersageeinheit kann eine dreidimensionale Befehlspositionspunktsequenz und eine dreidimensionale Servopositionspunktsequenz einer Werkzeugmittelpunktsposition auf der Grundlage der Befehlspositionspunktsequenz und der Servopositionspunktsequenz bestimmen, und kann der Fehler zwischen der Befehlspositionspunktsequenz und der Servopositionspunktsequenz mit der dreidimensionalen Befehlspositionspunktsequenz und der dreidimensionalen Servopositionspunktsequenz bestimmt werden, die jeweils als die Befehlspositionspunktsequenz und die Servopositionspunktsequenz verwendet werden.
-
Die Genauigkeitsdaten können durch die Maschinenbedingungsdaten auf der Grundlage einer zulässigen Beschleunigung oder einer zulässigen Eckgeschwindigkeitsdifferenz angegeben werden.
-
Gemäß der Erfindung kann eine numerische Steuervorrichtung bereitgestellt werden, die eine Maschinenzeitvorhersageeinheit, die eine vorhergesagte Maschinenzeit per Simulation bestimmt, und eine Maschinenfehlervorhersageeinheit umfassen, die einen vorhergesagten Maschinenfehler per Simulation bestimmt, wobei Genauigkeitsdaten und Geschwindigkeitsdaten als Maschinenzeit-/Maschinenfehlervorhersagedaten ausgewiesen werden und ein Maschinenprogramm ausgewiesen wird. In der numerischen Steuervorrichtung werden eine Vielzahl von vorhergesagten Maschinenzeiten und eine Vielzahl von vorhergesagten Maschinenfehlern auf der Grundlage dieser ausgewiesenen Genauigkeitsdaten und Geschwindigkeitsdaten bestimmt, und wird die kürzeste vorhergesagte Maschinenzeit innerhalb einer voreingestellten Maschinenfehlertoleranz auf der Grundlage einer Vielzahl von vorhergesagten Maschinenzeiten und einer Vielzahl von vorhergesagten Maschinenfehlern bestimmt.
-
Kurze Beschreibung der Zeichnungen
-
Die vorstehend beschriebenen und weitere Aufgaben und Merkmale der Erfindung werden aus der nachfolgenden Beschreibung von Ausführungsbeispielen unter Bezugnahme auf die beiliegenden Zeichnungen offensichtlich. Es zeigen:
-
1 ein Diagramm zur Beschreibung einer Technik, die einen Fehler einer Ist-Position relativ zu einem Befehlsweg betrifft, die in einer Druckschrift gemäß dem Stand der Technik offenbart ist;
-
2 ein Diagramm, das eine Maschinenbedingungsauswahlfunktion gemäß dem Stand der Technik beschreibt;
-
3 ein Diagramm, das Programmbefehle einschließlich eines Befehls für die Auswahl von auszuweisenden Genauigkeitsdaten beschreibt;
-
4 ein Diagramm, das Merkmale der vorliegenden Erfindung beschreibt;
-
5 ein Funktionsblockdiagramm einer numerischen Steuervorrichtung, die eine Simulationseinheit, eine Maschinenzeitvorhersageeinheit und eine Maschinenfehlervorhersageeinheit für ein Maschinenprogramm umfasst, gemäß der vorliegenden Erfindung;
-
6 ein Diagramm, das eine Servosimulationseinheit zum Simulieren einer Servooperation beschreibt;
-
7 ein Diagramm, das eine Maschinenzeit für einen fraglichen Block beschreibt;
-
8 ein Diagramm, das Interpolationsdaten für jede Verarbeitungsspanne beschreibt;
-
9 ein Ablaufdiagramm, das eine Verarbeitung in der Maschinenfehlervorhersageeinheit beschreibt;
-
10 ein Diagramm, das den Vorgang von Schritt SA06 in dem Ablaufdiagramm gemäß 9 beschreibt;
-
11 ein Ablaufdiagramm, das den Vorgang von Schritt SA03 in dem Ablaufdiagramm gemäß 9 ausführlicher beschreibt;
-
12 ein Diagramm, das beschreibt, wie ein Fehler einer Punktsequenz Pn zu bestimmen ist;
-
13 ein Beispiel einer vorhergesagten Maschinenzeit und eines vorhergesagten Maschinenfehlers;
-
14 eine Tabelle, die vorhergesagte Maschinenzeiten und vorhergesagte Maschinenfehler beschreibt, die auf der Grundlage von Genauigkeitsdaten und Geschwindigkeitsdaten bestimmt werden;
-
15 eine schematische Ansicht einer Fünfachsenmaschine mit einem drehbaren Werkzeugkopf;
-
16 ein Diagramm, das Beziehungen zwischen Pn und Qm und zwischen Pn' und Qm' in der Fünfachsenmaschine beschreibt; und
-
17 ein Blockdiagramm, das einen Aufbau eines Ausführungsbeispiels der numerischen Steuervorrichtung schematisch beschreibt, die die Maschinenzeitvorhersageeinheit und die Maschinenfehlervorhersageeinheit umfasst, gemäß der vorliegenden Erfindung.
-
Ausführliche Beschreibung der bevorzugten Ausführungsbeispiele
-
Zuerst werden Merkmale der vorliegenden Erfindung unter Bezugnahme auf 4 beschrieben werden.
-
Die vorliegende Erfindung beabsichtigt, Maschinenfehler und Maschinenzeiten zu simulieren, die für einen oder mehrere Sätze von Geschwindigkeitsdaten und Genauigkeitsdaten vorherzusagen sind, und um maschinelle Verarbeitungsgenauigkeiten (Maschinenfehler) und Maschinenzeiten für Werkstücke zu schätzen, die gemäß gegebenen Geschwindigkeitsdaten und Genauigkeitsdaten (vgl. (1) gemäß 4) und Maschinengeschwindigkeiten (Geschwindigkeitsdaten) und Maschinenbedingungen (Genauigkeitsdaten) maschinell zu verarbeiten sind, um ein maschinelles Verarbeiten von Werkstücken mit Genauigkeiten innerhalb einer Maschinenfehlertoleranz in einer kürzesten Maschinenzeit (vgl. (2) gemäß 4) zu ermöglichen.
-
Gemäß der vorliegenden Erfindung beinhalten zu evaluierende Fehler simulierte Fehler von Servopositionen zu Befehlspositionen und von Befehlspositionen zu Servopositionen. Auf diese Weise können die Fehler genauer vorhergesagt werden.
-
Unter diesen Umständen können die vorhergesagten Maschinenfehler und -zeiten per Simulation vor der eigentlichen maschinellen Verarbeitung bestimmt werden, auf der Grundlage der Schätzung der Geschwindigkeitsdaten und Genauigkeitsdaten ((1) gemäß 4), so dass eine Produktionsplanung leichter getätigt werden kann. Des Weiteren kann ein Maschinenwerkzeug effizienter durch Minimieren der Maschinenzeit operiert werden, auf der Grundlage der Schätzung der Maschinengeschwindigkeiten (Geschwindigkeitsdaten) und der Maschinenbedingungen (Genauigkeitsdaten) ((2) gemäß 4). Folglich kann des Weiteren ein Effekt dahingehend erzielt werden, dass eine energiesparende maschinelle Verarbeitung erreicht werden kann.
-
Nachfolgend ist eine Beschreibung der Ausführungsbeispiele 1 bis 3 angegeben.
-
[Ausführungsbeispiel 1]
-
5 zeigt ein Funktionsblockdiagramm einer numerischen Steuervorrichtung 1 gemäß der vorliegenden Erfindung, die eine Maschinenzeitvorhersageeinheit und eine Maschinenfehlervorhersageeinheit für ein Maschinenprogramm umfasst.
-
Eine Programmanalyseeinheit 3 simuliert einen Programmanalysevorgang zum Lesen und Analysieren eines Maschinenprogramms 2 und zum Erstellen von Interpolationsdaten. Eine Interpolationseinheit 4 simuliert einen Interpolationsvorgang, so dass eine Interpolation gemäß den Interpolationsdaten durchgeführt wird, und Interpolationsdaten ΔPn erstellt werden, auf der Grundlage von Geschwindigkeitsdaten, die für Blöcke und Ecken zwischen Blöcken durch eine Präinterpolationsbeschleunigungs-/Abbremseinheit 5 erstellt wurden. Eine Postinterpolationsbeschleunigungs-/Abbremseinheit 7 simuliert einen Postinterpolationsbeschleunigungs-/Abbremsvorgang, so dass eine Postinterpolationsbeschleunigung/-abbremsung für die Interpolationsdaten ΔPn durchgeführt wird, und Servopositionsbefehlsdaten VCn durch Akkumulieren dieser Daten erstellt werden. Die Servopositionsbefehlsdaten VCn werden von der Postinterpolationsbeschleunigungs-/Abbremseinheit 7 einer Servosimulationseinheit 8 zugeführt, die Servopositionsdaten Qn (nachstehend einfach als die Servoposition Qn bezeichnet) als eine Simulation einer Ist-Servooperation auf der Grundlage der Servopositionsbefehlsdaten VCn erstellt. Eine Simulationseinheit umfasst die Programmanalyseeinheit, die Interpolationseinheit, die Postinterpolationsbeschleunigungs-/Abbremseinheit, die Servosimulationseinheit und eine (nachstehend beschriebene) Maschinenzeitvorhersageeinheit 6.
-
Die Servosimulationseinheit 8 zum Simulieren einer Servooperation wird nachstehend unter Bezugnahme auf 6 beschrieben werden.
-
Die Servopositionsbefehlsdaten VCn werden von der Postinterpolationsbeschleunigungs-/Abbremseinheit 7 in die Servosimulationseinheit 8 mit jeder Verarbeitungsspanne eingegeben. Die Servopositionsbefehlsdaten VCn, die in die Servosimulationseinheit 8 eingegeben sind, werden in eine Vorwärtssimulationseinheit 80 eingegeben. Die Vorwärtssimulationseinheit 80 differenziert die Servopositionsbefehlsdaten VCn und gibt das Ergebnis der Multiplikation mit einem Vorwärtskoeffizienten als ΔUn aus.
-
Die Differenz zwischen den Servopositionsbefehlsdaten VCn und einer Servoposition (Rückkopplungsdaten) Qn-1 für die nachfolgende Verarbeitungsspanne wird in eine Positionsschleifenzuwachssimulationseinheit 81 eingegeben. Die Simulationseinheit 81 gibt ΔRn aus, das durch Multiplizieren der Eingabedifferenz mit einem Positionsschleifenzuwachs erhalten wird. Dann wird die Summe aus ΔUn und ΔRn in eine Positionssimulationseinheit 82 eingegeben, und wird die Akkumulation der Summe als die Servoposition Qn erhalten.
-
Daten mit dem Index ”n” oder einem anderen Index ”m” (die nachstehend beschrieben sind) sind ein Vektor mit so vielen Dateneinträgen wie Vorschubachsen.
-
Die vorstehend beschriebenen Vorgänge werden unter Bezug auf verschiedene Maschinenzeit-/Maschinenfehlervorhersagedaten durchgeführt, wie Parameter, Makrovariablen, DI-Signale usw. In diesen Vorgängen werden des Weiteren Servooperation nicht tatsächlich durchgeführt, sondern werden alle simuliert.
-
Die Parameter, Makrovariablen, DI-Signale usw. der Maschinenzeit-/Maschinenfehlervorhersagedaten werden zusätzlich zu Maschinendaten der gleichen Art ausgebildet. In diesem Fall sind die DI-Signale deshalb Imaginärsignaldaten für eine Maschinenzeitvorhersage und eine Maschinenfehlervorhersage.
-
Wie vorstehend beschrieben, führt die Servosimulationseinheit 8 Simulationen einer Verzögerung auf der Grundlage des Positionsschleifenzuwachses und einer Servooperation auf der Grundlage einer Vorwärtsregelung durch. Somit wird die Servosimulationseinheit 8 zusätzlich zu einer Servoverarbeitungseinheit für die maschinelle Verarbeitung vorgesehen. Die Programmanalyseeinheit 3, die Interpolationseinheit 4, die Präinterpolationsbeschleunigungs-/Abbremseinheit 5 und die Postinterpolationsbeschleunigungs-/Abbremseinheit 7 können zusätzlich zu Verarbeitungseinheiten der gleichen Arten für die maschinelle Verarbeitung vorgesehen werden. Alternativ können die Verarbeitungseinheiten der gleichen Arten für die maschinelle Verarbeitung (Vordergrund) im Hintergrund verwendet werden. Der Aufbau der Servosimulationseinheit 8 gemäß 6 ist lediglich beispielhaft angegeben, und es kann eine Servosimulation durch eine Servosimulationseinheit eines anderen Aufbaus durchgeführt werden.
-
Simulationen für die Programmanalyseeinheit 3, die Interpolationseinheit 4, die Präinterpolationsbeschleunigungs-/Abbremseinheit 5 und die Postinterpolationsbeschleunigungs-/Abbremseinheit 7 werden durch ein herkömmliches Verfahren verarbeitet, das nicht ausführlich beschrieben werden wird. Es können jedoch die Verarbeitungsspannen für die Interpolationseinheit 4, die Präinterpolationsbeschleunigungs-/Abbremseinheit 5 und die Postinterpolationsbeschleunigungs-/Abbremseinheit 7 für die Simulation länger als jene für die maschinelle Verarbeitung sein. Selbst wenn die Verarbeitungsspannen der Interpolationseinheit, der Präinterpolationsbeschleunigungs-/Abbremseinheit und der Postinterpolationsbeschleunigungs-/Abbremseinheit für die maschinelle Verarbeitung zum Beispiel eine Millisekunde betragen, können jene für die Interpolationseinheit 4, die Präinterpolationsbeschleunigungs-/Abbremseinheit 5 und die Postinterpolationsbeschleunigungs-/Abbremseinheit 7 zur Maschinenzeitvorhersage und Maschinenfehlervorhersage für die Simulation als bis zu etwa 8 ms angenommen werden. Auf diese Weise kann die Maschinenzeitvorhersage und die Maschinenfehlervorhersage schneller durchgeführt werden. Dies gilt, da eine gröbere Berechnung für 8 ms als jene für 1 ms schnell für die Simulation durchgeführt werden kann.
-
Die Maschinenzeitvorhersageeinheit 6 bestimmt eine vorhergesagte Maschinenzeit Te auf der Grundlage der Interpolationsdaten, die durch die Interpolationseinheit erstellt sind. Die Berechnung für die Maschinenzeitvorhersage kann zum Beispiel auf der Form der Interpolationsdaten basieren, oder es kann die Maschinenzeit durch Zählen der Anzahl von Interpolationen vorhergesagt werden. Im Fall von linearer Beschleunigung/Abbremsung ist zum Beispiel für die Interpolationsdatenform von jedem Block für die Berechnung derart, dass eine obere Grenze durch die Befehlsgeschwindigkeit des fraglichen Blocks und durch Beschleunigungen des fraglichen Blocks definiert ist, die durch die Präinterpolationsbeschleunigungs-/Abbremseinheit 5 erstellt sind, und werden durch durchgezogene Linien angegeben, wie in 7 gezeigt. Des Weiteren werden Geschwindigkeiten bei Mulden als Eckgeschwindigkeiten für den Block betrachtet, die durch die Präinterpolationsbeschleunigungs-/Abbremseinheit erstellt sind, und die Fläche als eine Befehlsblocklänge. Somit kann die vorhergesagte Maschinenzeit für den fraglichen Block berechnet werden.
-
Im Einzelnen weisen alle Interpolationsdaten ΔPn eine rechteckige Form für jede Verarbeitungsspanne auf, wie in 8 gezeigt. Im Allgemeinen ist jedoch die Verarbeitungszeit des fraglichen Blocks hinreichend länger als die Verarbeitungsspanne, so dass 7 eine gesamte Form zeigt, die die einzelnen rechteckigen Formen umfasst, die miteinander verbunden sind. Die Vorhersage durch das Zählen der Anzahl von Interpolationen ist ein Verfahren, in dem die Maschinenzeit durch Multiplizieren der Frequenz (Anzahl von Interpolationsdaten ΔPn) der Erstellung der Interpolationsdaten ΔPn von der Interpolationseinheit 4 mit der Verarbeitungsspanne bestimmt wird. Alternativ kann die Maschinenzeit durch Multiplizieren der Zählanzahl der anderen Daten, die in der Simulationseinheit erstellt sind, wie die Servopositionsbefehlsdaten VCn, die durch die Postinterpolationsbeschleunigungs-/Abbremseinheit erstellt sind, die Servoposition Qn, die durch die Servosimulationseinheit erstellt ist usw., mit der Verarbeitungsspanne bestimmt werden. Da diese Verfahren zur Maschinenzeitvorhersage herkömmliche Technologien sind, werden sie nachstehend nicht ausführlich beschrieben werden.
-
Eine Maschinenfehlervorhersageeinheit 9 sagt, als einen Fehler, die Differenz zwischen einem Interpolationsweg auf der Grundlage der Interpolationsdaten ΔPn und einem Verzögerungsweg auf der Grundlage der Postinterpolationsbeschleunigung/-abbremsung und der Servooperationssimulation voraus. Wie vorstehend beschrieben, empfängt die Maschinenfehlervorhersageeinheit 9 die Servoposition Qn von der Servosimulationseinheit 8 und empfängt ebenso die Interpolationsdaten ΔPn als Ausgabedaten von der Interpolationseinheit 4. Die Maschinenfehlervorhersageeinheit 9 bestimmt eine Befehlsposition Pn = Pn – 1 + ΔPn durch Akkumulation. Auf diese Weise werden eine Befehlspositionspunktsequenz Pn und eine Servopositionspunktsequenz Qn erstellt. Die Punktsequenz Qn beinhaltet, um die Anzahl von Verarbeitungsspannen für die Verzögerung durch die Postinterpolationsbeschleunigungs-/Abbremsung und Servooperationssimulation, mehr Punkte als die Punktsequenz Pn. In der nachstehenden Beschreibung wird deshalb der alternative Index ”m” verwendet, um Qm (m = 0, 1, 2, ..., me) für Pn (n = 0, 1, 2, ..., ne) darzustellen. Die Symbole ne und me weisen die Anzahlen für die einzelnen finalen Punkte in den Punktsequenzen aus. Im Allgemeinen liegt eine Beziehung vor, in der gilt ne < me.
-
Die Verarbeitung der Maschinenfehlervorhersageeinheit 9 wird nachstehend unter Bezugnahme auf das Ablaufdiagramm gemäß 9 dargestellt werden.
-
[Schritt SA01] Es werden Bedingungen n = 0, m = 0, Maxep = 0 und Maxep = 0 angegeben.
-
[Schritt SA02] Die Punktsequenz Pn wird für (n – dn ≤ n ≤ + dn) gemäß einer Zahl dn ausgebildet, die zuvor gesetzt ist, um deren Bereich zu definieren. Wird ein Bereich (0 ≤ n ≤ ne) um (n – dn ≤ n ≤ + dn) überschritten, dann werden lediglich die Punktsequenzen innerhalb des Bereichs (0 ≤ n ≤ ne) bereitgestellt. In ähnlicher Weise wird die Punktsequenz Qm für (m – dm ≤ m ≤ m + dm) gemäß einer Zahl dm ausgebildet, die vorab abgesetzt ist, um deren Bereich zu definieren. Wird ein Bereich (0 ≤ m ≤ me) um (m – dm ≤ m ≤ m + dm) überschritten, dann werden lediglich die Punktsequenzen innerhalb des Bereichs (0 ≤ m ≤ ne) bereitgestellt.
-
[Schritt SA03] Es werden Fehlerberechnungen von einer spezifischen Befehlsposition Pn in der Befehlspositionspunktsequenz Pn zu der Punktsequenz Qm durchgeführt, um die Fehler Ep von der spezifischen Befehlsposition Pn zu der Punktsequenz Qm zu erhalten. Des Weiteren werden der Maximalwert Maxep des Fehlers Ep und m aktualisiert. Dieser Schritt wird nachstehend ausführlich und unter Bezugnahme auf das Ablaufdiagramm gemäß 11 beschrieben werden.
-
[Schritt SA04] Es werden Fehlerberechnungen von einer spezifischen Servoposition Qm in der Servopositionspunktsequenz Qm zu der Punktsequenz Pn durchgeführt, um die Fehler Eq von der spezifischen Servoposition Qm zu der Punktsequenz Pn zu erhalten. Des Weiteren werden der Maximalwert Maxeq des Fehlers Eq und n aktualisiert.
-
[Schritt SA05] Es wird bestimmt, ob n = ne und m = me erreicht werden oder nicht. Lautet die Entscheidung Nein, dann kehrt das Programm zu Schritt SA02 zurück. Lautet die Entscheidung Ja, dann geht das Programm zu Schritt SA06 über.
-
[Schritt SA06] Der Maximalwert Maxep oder Maxeq, welcher auch immer der größere ist, wird als ein vorhergesagter Maschinenfehler Ee zwischen der Befehlspositionspunktsequenz Pn und der Servopositionspunktsequenz Qm bestimmt, woraufhin die Verarbeitung endet.
-
Im Einzelnen werden hinsichtlich der Befehlspositionspunktsequenz Pn und der Servopositionspunktsequenz Qm die Fehler Ep von der spezifischen Befehlsposition Pn zu der Punktsequenz Qm und der Fehler Eq von der spezifischen Servoposition Qm zu der Punktsequenz Pn für die Bereiche (n – dn ≤ n ≤ + dn) und (m – dm ≤ m ≤ m + dm) berechnet. Die Zahlen n und m werden aktualisiert, wenn diese Berechnung durchgeführt wird. Der Maximalwert Maxep (= Max(Ep)) des Fehlers Ep und der Maximalwert Maxeq (= Max (Eq)) des Fehlers Eq werden erhalten, und der Maximalwert Maxep oder Maxeq, welcher auch immer der größere ist, wird als der vorhergesagte Maschinenfehler Ee (= Max (Maxep, Maxeq)) zwischen der Befehlspositionspunktsequenz Pn und der Servopositionspunktsequenz Qm bestimmt. Somit stellt Max(Ep) das Maximum einer Vielzahl von Fehlern Ep dar, stellt Max (Eq) das Maximum einer Vielzahl von Fehlern Eq dar, und stellt Max (Maxep, Maxeq) den größeren der Maximalwerte Maxep und Maxeq dar, wie in 10 gezeigt.
-
In Schritt SA03 werden Fehlerberechnungen von einer spezifischen Befehlsposition Pn zu der Punktsequenz Qm durchgeführt, und wird der Maximalwert Maxep des Fehlers Ep erstellt. In ähnlicher Weise werden in Schritt SA04 Fehlerberechnungen von einer spezifischen Servoposition Qm zu der Punktsequenz Pn durchgeführt, und wird der Maximalwert Maxeq des Fehlers Eq erstellt. Lediglich einer der Schritte SA03 oder SA04 wird womöglich durchgeführt, anstelle der Ausführung beider dieser Schritte.
-
In der vorstehend beschriebenen Technik, die in der
japanischen Patentanmeldungsoffenbarung Nr. 2011-60016 offenbart ist, wird lediglich die Berechnung entsprechend Schritt SA04 durchgeführt. Wie zuvor beschrieben, ist jedoch darauf hinzuweisen, dass in dem Fall der Patentdruckschrift die Berechnung für die Ist-Position durchgeführt wird, die durch tatsächliches Operieren einer Antriebswelle (Servo) erhalten wird, wohingegen im Fall der vorliegenden Erfindung die Berechnung für die Position per Simulation durchgeführt wird.
-
Vorstehend wurde beschrieben, dass ein Fehler berechnet wird, nachdem die vollendete Befehlspositionspunktsequenz Pn (n = 0, 1, 2, ..., ne) und die Servopositionspunktsequenz Qm (m = 0, 1, 2, ..., me) erstellt sind. Alternativ kann jedoch eine ähnliche Berechnung durchgeführt werden durch Erhalten der notwendigen Befehlsposition Pn (n – dn ≤ n ≤ + dn) und der Servoposition Qm (m – dm ≤ m ≤ m + dm), während das Maschinenprogramm blockweise nach Bedarf gelesen wird. In diesem Fall müssen die gesamten Punktsequenzen Pn und Qm nicht vorab erstellt werden, so dass die Speicherkapazität eingespart werden kann.
-
Die Befehlsposition Pn, die spezifische Befehlsposition Pn, die Befehlspositionspunktsequenz Pn und die Punktsequenz Pn, die alle durch das Symbol Pn ausgewiesen sind, sind Ausdrücke, die leicht verschiedene Bedeutungen aufweisen. Die Befehlsposition Pn stellt eine einzelne Befehlsposition dar. Die spezifische Befehlsposition Pn stellt eine spezifische oder merkliche Befehlsposition dar. Die Befehlspositionspunktsequenz Pn und die Punktsequenz Pn stellen beide eine Befehlspunktsequenz Pn dar, die eine Vielzahl von Befehlspositionen beinhaltet. Dies trifft ebenso auf den Fall von Qm zu.
-
Schritt SA03 in dem Ablaufdiagramm gemäß 9 wird nachstehend unter Bezugnahme auf das Ablaufdiagramm gemäß 11 beschrieben werden.
-
[Schritt SB01] Initialwerte von i, im und EP werden als i = m – dm, im = i und EP = |Pn – Qi| gesetzt. Hinsichtlich des Werts i ist allgemein i = m – dm angegeben, wird aber der Bereich von (0 ≤ m ≤ me) um (m – dm ≤ m ≤ + dm) für Qm überschritten, wie vorstehend in Verbindung mit der Beschreibung von Schritt SA02 in dem Ablaufdiagramm gemäß 9 beschrieben, dann wird jedoch i auf den kleinsten Wert innerhalb des Bereichs gesetzt, in dem (m – dm ≤ m ≤ + dm) und (0 ≤ m ≤ me) einander überlappen.
-
[Schritt SB02] Eine Länge |Pn – Qi+1| zwischen Pn und Qi+1 wird berechnet. Ist |Pn – Qi+1| kleiner als Ep, dann werden Ep = |Pn – Qi+1| und im = i + 1 gesetzt, und wird dann der Wert i + 1 gespeichert.
-
[Schritt SB03] Ein Liniensegment Lq, das Qi und Qi+1 verbindet, wird erstellt.
-
[Schritt SB04] Es wird bestimmt, ob eine lotrechte Linie von Pn zu dem Liniensegment Lq gezeichnet werden kann oder nicht. Kann die lotrechte Linie nicht gezeichnet werden, dann geht das Programm zu Schritt SB07 über. Kann die lotrechte Linie gezeichnet werden, dann geht das Programm zu Schritt SB05 über.
-
[Schritt SB05] Eine Länge Lper der lotrechten Linie, die von Pn zu dem Liniensegment Lq gezeichnet ist, wird berechnet.
-
[Schritt SB06] Ist Lper kleiner als Ep, dann werden Ep = Lper und im = i + 1 gesetzt, und wird dann der Wert i +1 gespeichert.
-
[Schritt SB07] Es wird bestimmt, ob i = m + dm – 1 erreicht wird oder nicht. Lautet die Entscheidung Ja, dann geht das Programm zu Schritt SB09 über. Lautet die Entscheidung Nein, dann kehrt das Programm zu Schritt SB08 zurück. Hier wird allgemein bestimmt, ob i = m + dm – 1 erreicht wird, oder nicht. Wird der Bereich (0 ≤ m ≤ me) um (m – dm ≤ m ≤ + dm) für Qm überschritten, wie vorstehend in Verbindung mit der Beschreibung von Schritt SA02 in dem Ablaufdiagramm gemäß 9 beschrieben, dann wird jedoch bestimmt, ob i gleich einem Wert ist oder nicht, der um eins kleiner als der größte Wert innerhalb des Bereichs ist, in dem (m – dm ≤ m ≤ + dm) und (0 ≤ m ≤ me) einander überlappen. Folglich kann die kürzere der lotrechten Linien, die von Pn zu Liniensegmenten gezeichnet ist, die benachbarte Punkte in der Punktsequenz Qm (m – dm ≤ m ≤ + dm) verbinden, als Ep erhalten werden. Somit wird, wie in 12 gezeigt, der Wert Ep als ein Fehler zwischen dem Wert Pn und der Punktsequenz Qm (m – dm ≤ m ≤ + dm) gesetzt.
-
[Schritt SB08] Es wird 1 zu i addiert, um i zu aktualisieren, woraufhin das Programm zu Schritt SB02 zurückkehrt und die Verarbeitung fortgesetzt wird.
-
[Schritt SB09] Ist Ep größer als Maxep, dann wird Maxep = Ep gesetzt, wodurch der Maximalwert Maxep von Ep aktualisiert wird.
-
[Schritt SB10] Ist im größer als m, dann wird m = im gesetzt. Ist im nicht größer als m, dann wird m = m + 1 gesetzt, um m zu aktualisieren. Überschreitet m den Maximalwert me, dann wird m jedoch als gleich zu me angesehen, woraufhin die Verarbeitung endet.
-
Die vorhegesagte Maschinenzeit Te, während derer das Werkstück maschinell verarbeitet werden wird, und der vorhergesagte Maschinenfehler Ee, der verursacht wird, wenn das Werkstück maschinell verarbeitet werden wird, können bestimmt werden, falls das Maschinenprogramm durch Ausgeben der Genauigkeitsdaten und Geschwindigkeitsdaten ausgewiesen und ausgeführt wird, die in Verbindung mit der Maschinenbedingungsauswahlfunktion (vgl. 2) beschrieben sind, zu der numerischen Steuervorrichtung gemäß 5, die die Maschinenzeitvorhersageeinheit 6 und die Maschinenfehlervorhersageeinheit 9 umfasst. Die Geschwindigkeitsdaten können durch verschiedene Verfahren ausgegeben werden, zum Beispiel durch Anwenden eines Außerkraftsetzens als ein DI-Signal, ein Anwenden der parametergesetzten Geschwindigkeit auf der Grundlage eines Parameters, oder durch Ändern des F-Befehls in dem Programm in einen modifizierten Geschwindigkeitsbefehl.
-
Es sei zu verstehen, dass lediglich ein Teil des Maschinenprogramms als ein Objekt der Maschinenzeitvorhersage und der Maschinenfehlervorhersage betrachtet werden kann. Zum Beispiel kann lediglich ein Betriebsartteil eines Schnittbefehls (G01, G02, G03, usw.) als ein vorherzusagendes Objekt verwendet werden. Alternativ kann lediglich ein Block des Maschinenprogramms, der durch ein bestimmtes Werkzeug zu schneiden ist, oder lediglich ein bestimmter Prozessteil als ein vorherzusagendes Objekt verwendet werden.
-
13 zeigt ein Beispiel, in dem die vorhergesagte Maschinenzeit Te und der vorhergesagte Maschinenfehler Ee mit den Präzisionsdaten bei 9 und den Geschwindigkeitsdaten (Außerkraftsetzen) bei 50% erhalten wird. Die vorhergesagte Maschinenzeit Te (Minuten) bzw. der vorhergesagte Maschinenfehler Ee (mm) werden in die oberen bzw. unteren Spalten eingetragen. Anhand der Präzisionsdaten und der Geschwindigkeitsdaten (Außerkraftsetzen), die auf diese Weise ausgewiesen sind, können die vorhergesagte Maschinenzeit und der vorhergesagte Maschinenfehler gleichzeitig per Simulation bestimmt werden.
-
[Ausführungsbeispiel 2]
-
Im Ausführungsbeispiel 2 werden Bedingungen für die kürzeste Maschinenzeit innerhalb der Maschinenfehlertoleranz bestimmt.
-
Eine in 14 gezeigte Tabelle wird aus vorhergesagten Maschinenzeiten Te und vorhergesagten Maschinenfehlern Ee erstellt, die auf der Grundlage einiger der umgewandelten Genauigkeitsdaten und Geschwindigkeitsdaten bestimmt sind.
-
In diesem Fall werden parametergesetzte Geschwindigkeiten als die Geschwindigkeitsdaten angegeben. 14 zeigt vorhergesagte Maschinenzeiten und vorhergesagte Maschinenfehler, die durch jene Daten in fünf umrandeten Bereichen dargestellt sind, d. h. (Präzisionsdaten: 1, Geschwindigkeitsdaten: 1.000 mm/min), (Vorhersagedaten 10, Geschwindigkeitsdaten 1.000 mm/min), (Genauigkeitsdaten: 5, Geschwindigkeitsdaten: 2.000 mm/min), (Genauigkeitsdaten: 1, Geschwindigkeitsdaten: 3.000 mm/min) und (Genauigkeitsdaten: 10, Geschwindigkeitsdaten: 3.000 mm/min). Die vorhergesagte Maschinenzeit Te (Minuten) und der vorhergesagte Maschinenfehler Ee (mm) werden jeweils in die oberen und unteren Spalten von jedem umrandeten Bereich eingetragen. Daten in den anderen Bereichen werden durch Interpolieren der umrandeten Daten durch proportionale Verteilung erhalten. Natürlich können Daten in einigen Bereichen, die sich von den fünf umrandeten Bereichen unterscheiden, oder in allen Bereichen simuliert werden.
-
Beträgt die voreingestellte Maschinenfehlertoleranz 0,05 mm, dann werden Daten in gestrichenen Bereichen ausgeschlossen, da sie die Toleranz überschreiten. Somit können Daten für die kürzeste vorhergesagte Maschinenzeit innerhalb der Maschinenfehlertoleranz leicht bestimmt werden als (Genauigkeitsdaten: 9, Geschwindigkeitsdaten: 3.000 mm/min).
-
[Ausführungsbeispiel 3]
-
In dem Fall einer Mehrachsenmaschine mit Drehachsen (X-, Y-, Z-, B- und C-Achsen) in einem Werkzeugkopf und -tischen, kann eine Maschinenfehlervorhersageeinheit 9 eine dreidimensionale Befehlspositionspunktsequenz Pn' (PXn', PYn', PZn') und eine dreidimensionale Servopositionspunktsequenz Qm' (QXm', QYm', QZm') einer Werkzeugmittelpunktsposition bestimmen, auf der Grundlage von Befehlspositionspunktsequenzen Pn (PXn, PYn, PZn, PBn, PCn) und von Servopositionspunktsequenz Qm (QXm, QYm, QZm, QBm, QCm) und einer Werkzeuglänge, und einen Maschinenfehler durch Verwalten der bestimmten Befehlspositionspunktsequenzen und Servopositionspunktsequenzen auf die gleiche Art und Weise vorhersagen, wie die Befehlspositionspunktsequenzen und Servopositionspunktsequenzen gemäß dem ersten oder zweiten Ausführungsbeispiel.
-
Obwohl die Indizes B und C zur Darstellung von Positionen der angenommen B- und C-Achsen der Mehrachsenmaschine verwendet werden, kann die Maschine andere Drehachsen aufweisen, A- und B-Achsen oder A- und C-Achsen. Des Weiteren beinhalten Mehrachsenmaschinen eine Fünfachsenmaschine mit einem drehbaren Werkzeugkopf, eine Mehrachsenmaschine mit einem drehbaren Tisch und eine Fünfachsenmaschine vom Mischtyp (mit einem drehbaren Werkzeugkopf und einem drehbaren Tisch). In jeder dieser Maschinen wird die Werkzeugmittelpunktsposition durch die dreidimensionalen Befehlspositionspunktsequenzen Pn' (PXn', PYn', PZn') und die dreidimensionalen Servopositionspunktsequenzen Qm' (QXm', QYm', QZm') einer Werkzeugmittelpunktsposition in einem Koordinatensystem eines Tisches angegeben, auf dem ein maschinell zu verarbeitendes Werkstück platziert ist. In dem Fall der Mehrachsenmaschine mit einem drehbaren Tisch ist das Koordinatensystem eines Tisches, auf dem ein maschinell zu verarbeitendes Werkstück platziert ist, ein Koordinatensystem, das sich auf und zusammen mit dem drehenden Tisch dreht.
-
15 zeigt eine schematische Ansicht eines Werkzeugkopfabschnitts einer Fünfachsenmaschine mit einem drehbaren Werkzeugkopf, und 16 zeigt ein Diagramm, das Beziehungen zwischen Pn und Qm und zwischen Pn' und Qm' in der Fünfachsenmaschine beschreibt.
-
17 zeigt eine Blockdarstellung, die einen Aufbau eines Ausführungsbeispiels einer numerischen Steuervorrichtung schematisch beschreibt, die die Maschinenzeitvorhersageeinheit und die Maschinenfehlervorhersageeinheit umfasst, gemäß der vorliegenden Erfindung.
-
Die numerische Steuervorrichtung 1 weist die Maschinenbedingungsauswahlfunktion auf, die unter Bezugnahme auf 2 beschrieben ist. Eine CPU 111 zur Verwendung als ein Prozessor steuert die gesamte numerische Steuervorrichtung 1 gemäß einem Systemprogramm, das in einem ROM 112 gespeichert ist. Ein RAM 113 ist mit verschiedenen Daten oder Eingabe- oder Ausgabesignalen geladen. Verschiedene Daten, die in einem nicht-flüchtigen Speicher 114 gespeichert sind, werden in ihrem aktuellen Zustand gespeichert, selbst nach einer Stromabschaltung. Eine Grafiksteuerschaltung 115 wandelt digitale Signale um, um Signale anzuzeigen, und führt diese einer Anzeigevorrichtung 116 zu. Eine Tastatur 117 ist eine Einrichtung mit numerischen Tasten und Zeichentasten zum Eingeben von verschieden Setzdaten.
-
Eine Achsensteuerschaltung 118 empfängt Bewegungsbefehle für die einzelnen Achsen von der CPU 111 und gibt diese zu einem Servoverstärker 119 aus. Bei Empfang der Bewegungsbefehle steuert der Verstärker 119 (nicht gezeigte) Servomotoren eines Maschinenwerkzeugs 20 an. Diese bildenden Elemente sind miteinander durch einen Bus 121 verbunden. Eine programmierbare Maschinensteuereinrichtung (PMC, programmable machine controller) 122 empfängt ein T-Funktionssignal (Werkzeugauswahlbefehl) und dergleichen durch den Bus 121 während der Ausführung des Maschinenprogramms. Dann verarbeitet die PMC 122 dieses Signal gemäß einem Sequenzprogramm und gibt dieses als einen Operationsbefehl aus, wodurch das Maschinenwerkzeug 20 gesteuert wird. Bei Empfang eines Zustandssignals von dem Maschinenwerkzeug 20 transferiert die PMC 122 des Weiteren ein erforderliches Eingabesignal zu der CPU 111. Des Weiteren ist der Bus 121 mit einer Softwaretaste 123 verbunden, deren Funktion sich gemäß dem Systemprogramm oder dergleichen ändert, und mit einer Schnittstelle 124, durch die NC-Daten zu einer externen Vorrichtung zugeführt werden, wie einer Speichervorrichtung. Die Softwaretaste 123, zusammen mit der Anzeigevorrichtung 116 und der Tastatur 117, ist auf einem Anzeige-/manuellem Dateneingabe-(MDI)-Paneel 125 angelegt.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- JP 2004-227028 [0004]
- JP 2006-301440 [0004]
- JP 58-35607 [0005]
- US 4543625 [0005]
- JP 2011-60016 [0006, 0070]