专利摘要:
Eine Simulationsvorrichtung ist mit einer Ersetzungseinrichtung (7, 8) (Geschwindigkeitsverhältnis-Bestimmungsabschnitt und Geschwindigkeitsbestimmungsabschnitt) versehen, um die maximale Verfahrgeschwindigkeit eines Funktionsteils aus einem Kollisionserfassungsabstand (K) und einem Interpolationszeitraum (dt) zu berechnen, und um die Verfahrgeschwindigkeit des Funktionsteils, die durch einen Programmanalyseabschnitt (6) ausgelesen wird, mit der maximalen Verfahrgeschwindigkeit zu ersetzen; und mit einem Interpolationsabschnitt (9), um Interpolationspunkte einer Bewegungsbahn des Funktionsteils aus der Verfahrgeschwindigkeit des Funktionsteils, die von der Ersetzungseinrichtung (7, 8) mit der maximalen Verfahrgeschwindigkeit ersetzt wird, und aus einem Interpolationszeitraum zu bestimmen. An einem durch den Interpolationsabschnitt (9) bestimmten Interpolationspunkt wird eine Kollisionsprüfung am Funktionsteil durchgeführt.
公开号:DE102004019653A1
申请号:DE200410019653
申请日:2004-04-22
公开日:2004-12-09
发明作者:Kenji Iriguchi;Takashi Nagoya Kamiya;Kiyoshi Nagoya Okada;Nobuyuki Takahashi;Yoshinori Tsujido
申请人:Mitsubishi Electric Corp;
IPC主号:B23Q15-00
专利说明:
[0001] Dievorliegende Erfindung betrifft eine Simulationsvorrichtung, diean einem Funktionsteil eine Kollisionsprüfung ausführt.
[0002] EinNC-Programm (nachfolgend wird eine Einheit von in einem NC-Programm beschriebenenBefehlen als Block bezeichnet) ist erforderlich, um durch eine bestehendeWerkzeugmaschine mit numerischer Steuerung (NC) eine Bearbeitungauszuführen.Im Allgemeinen enthältein NC-Programm Befehle, um einer Maschine die Anweisung zu geben,sich mit einer Bewegungsgeschwindigkeit zu bewegen, und numerischeWerte, die füreine bestimmte Bewegungsgeschwindigkeit stehen.
[0003] InjüngsterZeit sind mit zunehmender Komplexität des Aufbaus einer Werkzeugmaschinederen Betriebsabläufekomplizierter geworden. Aus diesem Grunde geschieht es nicht selten,dass verschiedenste Abschnitte der Maschine aneinander stoßen können, undauch die Maschine und ein Zielobjekt (nachstehend als Werkstück bezeichnet)könnenmiteinander kollidieren. Von daher besteht, um ein solches ungünstigesZusammenstoßenzu vermeiden, eine zunehmende Notwendigkeit zur Simulation des Verhaltensder Maschine, wobei der Hauptzweck der Simulation darin besteht,eine Kollisionsprüfungder Maschine zu erhalten.
[0004] Hierkann der Fall auftreten, bei dem Bahndaten automatisch durch eineautomatische Programmiervorrichtung, wie ein durch die automatischeProgrammiervorrichtung programmiertes Programm, und nicht durchein NC-Programmerzeugt werden. Weil aber vergleichbar zum NC-Programm die erzeugtenBahndaten selbst in diesem Fall einen Bewegungsbefehl jeweiligerAntriebswellen der Maschine beschreiben, liegt auch die NC-Werkzeugmaschinemit einer derartigen automatischen Programmiervorrichtung innerhalbdes Rahmens der Erfindung.
[0005] Beispielsweiselautet die japanische Patentveröffentlichung JP 64-041905 A (Seiten3 bis 4) wie folgt: "Ineiner Simulationsanzeige wie an einem Roboter werden, wenn im Ansprechenauf einen Positionsbefehl ein Bild angezeigt wird, ein Startpunktund ein Endpunkt der Reihe nach angezeigt, wobei aber ein Statuszwischen den beiden Punkten nicht angezeigt werden kann." Wie aus der obengenannten Patentveröffentlichung hervorgeht,kann die herkömmlicheSimulationsvorrichtung je nach den Umständen die Endpunkte eines Blocksals Bewegungsanweisung einer Vorrichtung verwenden. So wird eineBewegungsanweisung, die die Endpunkte des Blocks in dieser Weiseals Bewegungsanweisung angenommen hat, im Folgenden als Instruktionauf Blockebene bezeichnet.
[0006] Außerdem lautetdie japanische Patentveröffentlichung JP 1-311304 A (Seiten5 bis 9, und 1) wie folgt: "Ein einem Servomotoreiner Werkzeugmaschine zugeführterSteuerimpuls wird abgefangen und dadurch wird nicht nur eine Prüfung derKoordinaten eines Programms gewährleistet,sondern auch des Koordinatensystems der Maschine." Wie in der obengenannten Patentveröffentlichungangeführtwird, gibt es unter Simulationsvorrichtungen eine Simulationsvorrichtung,die Befehlsdaten an ein Servosystem übernimmt, das mit einer untergeordnetenPosition eines Steuergerätsverbunden ist (nachstehend werden die Befehlsdaten als eigentlicheInstruktion auf Maschinenebene bezeichnet).
[0007] DieBefehlsdaten an das Servosystem umfassen eine Abfolge von Punkten,die nicht durch ein Programm angezeigt werden, das auf dem Weg einesProgrammbefehls erzeugt wurde. Der Prozess, die Abfolge von Punktenzu ermitteln, die nicht auf der Befehlsbahn angegeben sind, wirdals Interpolationsverfahren bezeichnet. Die durch das Interpolationsverfahrenerzeugten aufeinander folgenden Punkte werden als Interpolationspunktebezeichnet.
[0008] Hierist der Interpolationspunkt ein Punkt auf der Befehlsbahn, den manerhält,wenn ein Funktionsteil mit einer angewiesenen Geschwindigkeit Fwährendeiner fürdie Vorrichtung spezifischen Zeitdauer dt vorwärtsbewegt wird.
[0009] Durchdie folgende Gleichung bestimmt man einen Abstand L von der aktuellenPosition zur nächsten, interpoliertenPosition. Diese Längewird als Interpolationslängebezeichnet. L = F × dt (1)
[0010] Dadie herkömmlichenSimulationsvorrichtungen wie zuvor erwähnt aufgebaut sind, wird imFalle der Instruktion auf Blockebene ein Endpunkt des Blocks alsInterpolationspunkt hergenommen. Aus diesem Grunde wird eine Simulationunter Verwendung von weniger Interpolationspunkten ausgeführt alsbei der eigentlichen Instruktion auf Maschinenebene. Dadurch bestehtdie Möglichkeit,eine Simulation in kürzererZeit auszuführenals in den Fällen,bei denen die Maschine tatsächlichläuft.Es kann aber wegen der geringen Genauigkeit einer Kollisionsprüfung dieErfassung einer Kollision unter den Tisch fallen.
[0011] Dabeiwird im Falle der eigentlichen Instruktion auf Maschinenebene eineSimulation ausgeführt,bei der so viele Interpolationspunkte verwendet werden wie beimtatsächlichenMaschinenbetrieb. Dementsprechend nimmt eine Simulation mindestensso viel Zeit in Anspruch wie der tatsächliche Maschinenbetrieb.
[0012] Dievorliegende Erfindung wurde geschaffen, um die zuvor erwähnten Problemezu lösen.Es ist eine Aufgabe der vorliegenden Erfindung, eine Simulationsvorrichtungbereitzustellen, mit der man in kürzerer Zeit als bei der tatsächlichenBearbeitung eine Kollisionsprüfungdurchführenkann, ohne dabei die Erfassung einer Kollision zu übersehen.
[0013] EineSimulationsvorrichtung gemäß der vorliegendenErfindung umfasst eine Ersetzungseinrichtung zur Berechnung dermaximalen Verfahrgeschwindigkeit eines Funktionsteils aus einemKollisionserfassungsabstand und einem Interpolationszeitraum, undzum Ersetzen einer Verfahrgeschwindigkeit des Funktionsteils, diedurch eine Programmanalyseeinrichtung ausgelesen wird, mit dessenmaximaler Verfahrgeschwindigkeit; und eine Interpolationspunkt-Bestimmungseinrichtung,um Interpolationspunkte einer Bewegungsbahn aus der Verfahrgeschwindigkeitdes Funktionsteils, die von der Ersetzungseinrichtung durch diemaximale Verfahrgeschwindigkeit ersetzt worden ist, und aus demInterpolationszeitraum zu bestimmen, wobei die Simulationsvorrichtungeine Kollisionsprüfungdes Funktionsteils an einem durch die Interpolationspunkt-Bestimmungseinrichtungbestimmten Interpolationspunkt erhält.
[0014] Wieoben erwähnt,wird durch die Anordnung der Simulationsvorrichtung gemäß der vorliegendenErfindung, mit einer Ersetzungseinrichtung zur Berechnung der maximalenVerfahrgeschwindigkeit eines Funktionsteils aus dem Kollisionserfassungsabstandund einem Interpolationszeitraum, und zum Ersetzen einer Verfahrgeschwindigkeitdes Funktionsteils, die durch eine Programmanalyseeinrichtung ausgelesenwird, mit dessen maximaler Verfahrgeschwindigkeit; und einer Interpolationspunkt-Bestimmungseinrichtung,um die Interpolationspunkte der Bewegungsbahn aus der Verfahrgeschwindigkeitdes Funktionsteils, die von der Ersetzungseinrichtung durch diemaximale Verfahrgeschwindigkeit ersetzt worden ist, und aus demInterpolationszeitraum zu bestimmen; wobei eine Kollisionsprüfung aneinem durch die Interpolationspunkt-Bestimmungseinrichtung bestimmtenInterpolationspunkt durchgeführtwird, eine Kollisionsprüfungin kürzererZeit als bei der tatsächlichenBearbeitung ausgeführt,und zwar ohne die Erfassung einer Kollision zu übersehen.
[0015] 1 ist ein Blockschaubild,das eine Simulationsvorrichtung gemäß einer ersten Ausführungsform dervorliegenden Erfindung zeigt;
[0016] 2 ist ein erläuterndesSchaubild, das eine beispielhafte Beschreibung eines NC-Programmszeigt;
[0017] 3 ist ein erläuterndesSchaubild, das eine Bewegungsbahn zeigt;
[0018] 4 ist ein erläuterndesSchaubild, das Interpolationspunkte einer Bewegungsbahn zeigt;
[0019] 5 ist ein erläuterndesSchaubild, in dem Situationen gezeigt sind, wo sich zwei Funktionsteilebewegen;
[0020] 6 ist ein Blockschaubild,das eine Simulationsvorrichtung gemäß einer zweiten Ausführungsform dervorliegenden Erfindung zeigt; und
[0021] 7 ist ein Blockschaubild,das eine Simulationsvorrichtung gemäß einer dritten Ausführungsform dervorliegenden Erfindung zeigt.
[0022] Eswerden nun bevorzugte Ausführungsformender vorliegenden Erfindung mit Bezug auf die beigefügten Zeichnungenbeschrieben.
[0023] 1 ist ein Blockschaubild,das eine Simulationsvorrichtung gemäß der ersten Ausführungsformder vorliegenden Erfindung zeigt.
[0024] MitBezug auf 1 speichertein Programmspeicherabschnitt 1 ein NC-Programm oder andere Programmen für ein automatischesProgrammiersystem, worin Verfahrgeschwindigkeiten und Positionsbefehleeines Funktionsteils, z.B. eines Roboterarms bzw. eines Roboterfußteils,und eines Schneidwerkzeugs (siehe 2)beschrieben sind. Ein Kollisionserfassungsabstands-Speicherabschnitt 2 speichertKollisionserfassungsabstände,also den Abstand zwischen einem Funktionsteil A und einem FunktionsteilB, und den Abstand zwischen dem Funktionsteil A und einem feststehendenTeil C, wie z.B. einem Hauptkörperbzw. Grundrahmen der Maschine. Außerdem speichert ein Einstelldaten-Speicherabschnitt 3 Einstelldatenvon Spannvorrichtungs- und Werkstückanordnungen oder dergleichen.Ein Speicherabschnitt 4 für Geometriedaten speichertGeometriedaten der Maschine, Geometriedaten von Spannvorrichtungen,Geometriedaten von Werkzeugen oder dgl. in dem virtuellen, dreidimensionalenSimulationsraum. Beiläufigsein erwähnt,dass der Programmspeicherabschnitt 1, der Kollisionserfassungsabstands-Speicherabschnitt 2,der Einstelldaten-Speicherabschnitt 3 und der Speicherabschnitt 4 dieGeometriedaten aus Speichern oder dgl. gebildet sind.
[0025] EinAusführungsmodus-Änderungsabschnitt 5 istz.B. aus Eingabeschnittstellen in der Art einer Tastatur oder Mausgebildet, und aus Ausgabeschnittstellen in der Axt einer Anzeigeeinheit.Der Änderungsabschnitterhältunter der Führungeines Bedieners des Simulationssystems eine Modusänderungzwischen einem eigentlichen Maschinenbetriebsmodus und einem Simulationsmodus,oder erhältvon anderen Vorrichtungen eine Anweisung, die für einen Moduswechsel zwischendem eigentlichen Maschinenbetriebsmodus und dem Simulationsmodussteht.
[0026] EinProgrammanalyseabschnitt 6 bildet eine Programmanalyseeinrichtungzum Auslesen von Verfahrgeschwindigkeiten und den Positionsbefehlendes Funktionsteils aus dem NC-Programm und anderen Programmen für das automatischeProgrammiersystem, die im Programmspeicherabschnitt 1 gespeichertsind.
[0027] EinGeschwindigkeitsverhältnis-Bestimmungsabschnitt 7 gibtein von einem Benutzer manuell eingestelltes Geschwindigkeitsverhältnis aneinen Geschwindigkeitsbestimmungsabschnitt 8 für den Fallaus, bei dem durch den Ausführungsmodus-Änderungsabschnitt 5 dereigentliche Maschinenbetriebsmodus gewählt wurde. Dagegen teilt indem Fall, wo vom Ausführungsmodus-Änderungsabschnitt 5 derSimulationsmodus gewähltwurde, der Geschwindigkeitsverhältnis-Bestimmungsabschnitt 7 einenim Kollisionserfassungsabstands-Speicherabschnitt 2 gespeichertenKollisionserfassungsabstand durch einen Interpolationszeitraum, umeine Simulationsgeschwindigkeit zu berechnen, teilt die Simulationsgeschwindigkeitdurch die Verfahrgeschwindigkeit des Funktionsteils, die vom Programmanalyseabschnitt 6 ausgelesenwurde, um ein Geschwindigkeitsverhältnis zu berechnen, und gibtdas Geschwindigkeitsverhältnisan den Geschwindigkeitsbestimmungsabschnitt 8 weiter. DerGeschwindigkeitsbestimmungsabschnitt 8 multipliziert dieVerfahrgeschwindigkeit des Funktionsteils mit dem Geschwindigkeitsverhältnis, dasvom Geschwindigkeitsverhältnis-Bestimmungsabschnitt 7 ausgegebenwurde, um die maximale Verfahrgeschwindigkeit des Funktionsteilszu berechnen, um die Bewegungsgeschwindigkeit des Funktionsteilsdurch dessen maximale Verfahrgeschwindigkeit zu ersetzen. Beiläufig seierwähnt,dass der Geschwindigkeitsverhältnis-Bestimmungsabschnitt 7 undder Geschwindigkeitsbestimmungsabschnitt 8 die Ersetzungseinrichtungbilden.
[0028] EinInterpolationsabschnitt 9 bildet eine Intexpolationspunkt-Bestimmungseinrichtung,um Interpolationspunkte einer Bewegungsbahn des Funktionsteils auseiner Verfahrgeschwindigkeit des Funktionsteils, die vom Geschwindigkeitsbestimmungsabschnitt 8 durchdie maximale Verfahrgeschwindigkeit ersetzt wird, und aus einemInterpolationszeitxaum zu bestimmen. Ein Simulationsabschnitt 10 bildeteine Simulationseinrichtung zur Durchführung einer Kollisionsprüfung amFunktionsteil an einem durch den Interpolationsabschnitt 9 bestimmtenInterpolationspunkt, wenn vom Ausführungsmodus-Änderungsabschnitt 5 derSimulationsmodus gewähltwurde.
[0029] DieServoeinheit 11 bildet eine Antriebseinrichtung zum Antreibendes Funktionsteils entsprechend Verfahrgeschwindigkeiten und Positionsbefehlendes Funktionsteils, die vom Geschwindigkeitsbestimmungsabschnitt 8 ausgegebenwerden, wenn vom Ausführungsmodus-Änderungsabschnitt 5 dereigentliche Maschinenbetxiebsmodus gewählt wurde.
[0030] Essei hinzugefügt,dass der Programmanalyseabschnitt 6, der Geschwindigkeitsverhältnis-Bestimmungsabschnitt 7,der Geschwindigkeitsbestimmungsabschnitt 8, der Interpolationsabschnitt 9 undder Simulationsabschnitt 10 aus Hardware bestehen können, z.B.aus einer zweckbestimmten IC-Schaltung. Als Alternative hierzu kannauch programmiert werden, wobei die oben angegebenen Prozesse niedergeschrieben werden,um das Programm auf einem Computer (nicht gezeigt) laufen zu lassen.
[0031] Eserfolgt nun die Beschreibung der Funktionsweise der ersten Ausführungsform.
[0032] DerProgrammanalyseabschnitt 6 analysiert das NC-Programm oderandere Programme fürdas automatische Programmiersystem, die im Programmspeicherabschnitt 1 gespeichertsind, und liest dann die Verfahrgeschwindigkeit F und Positionsbefehledes Funktionsteils aus, die in diesen Programmen niedergeschriebensind.
[0033] DerGeschwindigkeitsverhältnis-Bestimmungsabschnitt 7 berechnetdas Geschwindigkeitsverhältnis Rwie folgt, um eine Bewegungsbahn des Funktionsteils zu interpolieren,die basierend auf den Positionsbefehlen des Funktionsteils bestimmtist, die durch den Programmanalyseabschnitt 6 ausgelesenwerden. Eine in 3 durchgezogeneLinie zeigt eine Bewegungsbahn des Funktionsteils an, und die durch "O" angegebenen Positionen sind basierendauf den Positionsbefehlen des Funktionsteils bestimmt. Die durch "⦾" in 4 gezeigtenangegebenen Positionen zeigen Interpolationspunkte des Funktionsteils.
[0034] D.h.,dass dann, wenn durch den Ausführungsmodus-Änderungsabschnitt 5 derSimulationsmodus gewähltwurde, der Geschwindigkeitsverhältnis-Bestimmungsabschnitt 7 einenim Kollisionserfassungsabstands-Speicherabschnitt 2 gespeichertenKollisionserfassungsabstand K durch einen Interpolationszeitraum dtteilt, um eine Simulationsgeschwindigkeit Fs zu berechnen, wie durchdie folgende Gleichung ausgedrückt ist.Dann teilt der Geschwindigkeitsverhältnis-Bestimmungsabschnitt 7 dieSimulationsgeschwindigkeit Fs durch die Verfahrgeschwindigkeit Fdes Funktionsteils, die durch den Programmanalyseabschnitt 6 ausgelesenwird, um ein Geschwindigkeitsverhältnis R zu berechnen, und gibtdas GeschwindigkeitsverhältnisR an den Geschwindigkeitsbestimmungsabschnitt 8 aus. Wennaber vom Ausführungsmodus-Änderungsabschnitt 5 dereigentliche Maschinenbetriebsmodus ausgewählt wurde, gibt der Geschwindigkeitsverhältnis-Bestimmungsabschnitt 7 dasmanuell von einem Benutzer eingestellte Geschwindigkeitsverhältnis Ran den Geschwindigkeitsbestimmungsabschnitt 8 aus, undzwar mit dem gerade aktuellen Wert. Fs = (C × K)/dt (2) R = Fs/F (3)
[0035] Hierist "C" in Gleichung (2)ein vorbestimmter Koeffizient, der entsprechend einiger adäquater Regeln bestimmtwerden kann. Ein konkreter Weg zur Angabe des den KoeffizientenC wird späterbeschrieben werden.
[0036] DerGrund, warum der Kollisionserfassungsabstand K in Gleichung (2)mit C multipliziert wird, besteht darin, die Lage des Funktionsteilsin unmittelbarer Nähezu einem anderen Teil sicher zu erfassen, wenn sich das Funktionsteilnur einen Interpolationszeitraum lang bewegt, bevor der Abstandzwischen den beiden Teilen auf kleiner gleich Null geht und siemiteinander kollidieren. Dementsprechend wird der Koeffizient Cfür gewöhnlich aufeinen positiven Wert kleiner als Eins eingestellt.
[0037] Wennaus dem Geschwindigkeitsverhältnis-Bestimmungsabschnitt 7 einGeschwindigkeitsverhältnis Rerhalten wurde, multipliziert der Geschwindigkeitsbestimmungsabschnitt 8 dieVerfahrgeschwindigkeit F des Funktionsteils, die vom Progxammanalyseabschnitt 6 ausgelesenwird, mit dem Geschwindigkeitsverhältnis R, wie durch die folgendeGleichung gezeigt ist, berechnet die maximale VerfahrgeschwindigkeitFexe des Funktionsteils und gibt die maximale VerfahrgeschwindigkeitFexe an den Intexpolationsabschnitt 9 als Verfahrgeschwindigkeitfür dasFunktionsteil aus. Fexe= R × F (4)
[0038] Wennvom Geschwindigkeitsbestimmungsabschnitt 8 die maximaleVerfahrgeschwindigkeit Fexe eingegangen ist, die die Verfahrgeschwindigkeitdes Funktionsteils ist, multipliziert der Intexpolationsabschnitt 9 diemaximale Verfahrgeschwindigkeit Fexe mit dem Interpolationszeitraumdt, wie durch die Gleichung ausgedrückt ist, um eine Länge L (nachfolgendals Interpolationslängebezeichnet) zu berechnen, entlang der sich das Funktionsteil nureinen Interpolationszeitraum lang bewegt. Dabei bestimmt der IntexpolationsabschnittInterpolationspunkte (durch in 4 gezeigte "⦾" angegeben) einer Bewegungsbahn desFunktionsteils aus den Positionen (angegeben durch in 3 gezeigte "O"), die basierend auf den Positionsbefehlendes Funktionsteils bestimmt sind, die vom Progxammanalyseabschnitt 6 ausgelesenwurden, und bestimmt die Interpolationslänge L. L = Fexe × dt (5)
[0039] DerSimulationsabschnitt 10 führt an den Interpolationspunkteneine Simulation aus, die durch den Interpolationsabschnitt 9 bestimmtwerden, wenn vom Ausführungsmodus-Änderungsabschnitt 5 derSimulationsmodus ausgewähltist, um eine positionsmäßige Stellungdes Funktionsteils in seinen im Speicherabschnitt 4 für Geometxiedatengespeicherten geometrischen Daten zu aktualisieren, berechnet denAbstand zwischen mehreren Funktionsteilen bzw. den Abstand zwischenbestimmten Funktionsteilen und ortsfesten Teilen, und prüft, ob dieTeile miteinander kollidieren oder nicht.
[0040] Wennsich beispielsweise die Teile auf Kollisionskurs befinden, zeigtder Simulationsabschnitt die Teile auf einer Anzeige (nicht gezeigt)an, die betroffen sind, und auf einer Anzeige wird eine Nachrichtangezeigt, die angibt, dass eine Kollision zwischen den Teilen stattgefundenhat.
[0041] DieServoeinheit 11 treibt das Funktionsteil entsprechend Verfahrgeschwindigkeitenund Positionsbefehlen des Funktionsteils an, welche vom Geschwindigkeitsbestimmungsabschnitt 8 ausgegebenwerden, wenn vom Ausführungsmodus-Änderungsabschnitt 5 dereigentliche Maschinenbetriebsmodus ausgewählt ist.
[0042] Eserfolgt nun im Einzelnen eine Beschreibung, wie der KoeffizientC zu bestimmen ist, und wie die maximale VerfahrgeschwindigkeitFexe des Funktionsteils zu ermitteln ist.
[0043] Wennein Gegenstand, an dem eine Simulation vorgenommen werden soll,nur eine Maschine mit einem Funktionsteil, beispielsweise einemSchneidwerkzeug ist, dann kann die Interpolationslänge L aufjeweilige die Maschine bildende Teile aufgeteilt werden. Dementsprechendkann man den Kollisionserfassungsabstand K als Interpolationslänge L verwenden.Anders ausgedrücktlässt sichdie Simulationsgeschwindigkeit Fs errechnen, indem man C = 1 werdenlässt.
[0044] Für den Fallaber, dass ein Gegenstand, an dem eine Simulation vorgenommen werdensoll, mehrere Funktionsteile hat und den Teilen jeweilige Geschwindigkeitenzugeteilt sind, oder fürden Fall, dass mehrere Maschinen in demselben Simulationsraum einerSimulation unterzogen werden sollen, können als gefährlichsterFall Situationen auftreten, in denen sich die mehreren Teile aufderselben Linie bzw. Achse bewegen und sich aufeinander zu bewegen.In so einem Fall sollte der Koeffizient C eingestellt werden aufz.B. C = 0,5.
[0045] 5 ist ein erläuterndesSchaubild, das Situationen zeigt, bei denen sich zwei Funktionsteile(Gegenstand A und Gegenstand B) in derselben Richtung auf derselbenLinie bewegen und sich einander näherkommen, und der KoeffizientC auf 0,5 (d.h., dass die Hälftedes Kollisionserfassungsabstands K als Interpolationslänge L verwendetwird) eingestellt ist.
[0046] Dabeizeigt 5 Situationen,in denen der Abstand zwischen Gegenstand A und Gegenstand B einenWert Kb darstellt, der geringfügiggrößer istals der Kollisionserfassungsabstand K.
[0047] Umim nächstenInterpolationszeitraum ab einem Zeitpunkt einen Interpolationspunktfür eineSimulation zu bestimmen, wird wie oben angegeben unter Verwendungvon Gleichung (2) eine Simulationsgeschwindigkeit Fs ermittelt.
[0048] AlsNächsteswird, wenn ein Gegenstand, der einer Simulation unterzogen werdensoll, nur eine Maschine mit einem Funktionsteil für ein Werkstück ist,die Verfahrgeschwindigkeit F des Funktionsteils in Gleichung (3)eingesetzt, um das Geschwindigkeitsverhältnis R zu ermitteln.
[0049] Für den Fallaber, dass mehrere Funktionsteile vorhanden sind, ermittelt mandie maximale Geschwindigkeit F aus den Verfahrgeschwindigkeitender Funktionsteile, also aus den angewiesenen GeschwindigkeitenFi (i = 0, 1, ..., n) fürn Funktionsteile. F= max(F0, F1, ..., Fn) (6)
[0050] Anschließend werdendie maximale Geschwindigkeit F und die SimulationsgeschwindigkeitFs in Gleichung (3) eingesetzt, um das Geschwindigkeitsverhältnis Rzu ermitteln.
[0051] Schließlich werdendie angewiesenen Geschwindigkeiten Fi für n Funktionsteile mit demGeschwindigkeitsverhältnisR multipliziert, um die maximale Verfahrgeschwindigkeit NFi (entsprechendFexe von Gleichung (4)) fürn Funktionsteile zu berechnen. NFi = R × Fi (7)
[0052] Sowird also fürden Fall, dass mehrere Funktionsteile vorhanden sind, die maximaleGeschwindigkeit F aus den angewiesenen Geschwindigkeiten Fi für n Funktionsteileausgewählt,und das GeschwindigkeitsverhältnisR zu den Simulationsgeschwindigkeiten Fi ermittelt, welches ausdem Kollisionserfassungsabstand K erhalten wird, der ein Abstandist, bei dem gewährleistetist, dass es keine Kollision geben wird, und die angewiesenen GeschwindigkeitenFi füralle Funktionsteile werden mit demselben Geschwindigkeitsverhältnis R multipliziert,um fürjedes der Funktionsteile die maximale Verfahrgeschwindigkeit NFizu ermitteln. Dies verkürzteine Laufzeit, währenddie positionsmäßige Beziehungzwischen den Funktionsteilen in demselben Status wie beim eigentlichenMaschinenbetriebsmodus gehalten wird, indem man zu nahe liegendeInterpolationspunkte weglässt,um eine Kollisionsprüfungzwischen diesen durchzuführen.
[0053] Beiläufig seierwähnt,dass der Koeffizient C auf Eins und darunter eingestellt werdenkann, selbst wenn eine Maschine ein Schneidwerkzeug hat.
[0054] Schließlich wirdeine Überprüfung dessenausgeführt,dass eine im Simulationsmodus durchgeführte Kollisionsprüfung wenigerZeit in Anspruch nimmt, als wenn sie im eigentlichen Maschinenbetriebsmodus durchgeführt würde. DerVorgang der Überprüfung wirdanhand von realen numerischen Werten mit einer Werkzeugmaschineals Beispiel beschrieben, die ein Funktionsteil hat, die von einernumerischen Steuervorrichtung gesteuert wird, und der eine Geschwindigkeitdes Funktionsteils zugeteilt ist.
[0055] Beispielsweiseführt dieEinstellung des Interpolationszeitraums dt auf 1,0 ms, der Schnittgeschwindigkeitdes NC-Programmbefehls F auf 5.000 mm/min, des KollisionserfassungsabstandsK auf 3 mm und des Koeffizienten C auf 1 zu den folgenden Ergebnissen:die Simulationsgeschwindigkeit aus Gleichung (2) ist Fs = 180.000mm/min, und das Geschwindigkeitsverhältnis aus, Gleichung (3) istR = 36. Fs = (C × K)/dt = (1 × 3 × 60 × 1000)/1,0= 180.000 R = Fs/F = 180.000/5.000 = 36
[0056] Demzufolgewird die Simulation unter Verwendung der Punkte ausgeführt werden,die mit einer 36-fach erhöhtenGeschwindigkeit interpoliert wurden.
[0057] Indiesem Zusammenhang wird, wenn dt = 5,0 ms, Fs = 36.000 mm/min erhalten.Von daher wird die Simulation unter Verwendung der Punkte ausgeführt, diemit einer 7,3-fachen Bewegungsgeschwindigkeit interpoliert wurden.
[0058] Allgemeinausgedrücktist eine Geschwindigkeit bei einem gegebenen Positionsbefehl höher alseine Schnittgeschwindigkeit. Die bestehenden Werkzeugmaschinen arbeitenbeispielsweise bei 20.000 bis 100.000 mm/min oder dergleichen. Vondaher lässtsich eine Simulation immer mit im Wesentlichen derselben Geschwindigkeitausführenwie ein Positionierbefehl.
[0059] Aufdiese Weise wird durch die Verwendung eines Interpolationspunktsauf Basis des Kollisionserfassungsabstands K verhindert, dass dieErfassung einer Kollision übersehenwird, und eine Simulation wird schneller ausgeführt als der tatsächlicheMaschinenbetrieb.
[0060] Dieoben angegebene Überprüfung berührte denFall, bei dem die angewiesene Geschwindigkeit niedriger liegt alsdiejenige, die aus dem Kollisionserfassungsabstand K erhalten wurde.Andererseits werden fürden Fall, dass die angewiesene Geschwindigkeit höher liegt als die, die manaus dem Kollisionserfassungsabstand K erhalten hat, Kollisionender Reihe nach versagensfrei erfasst. Ein Beispiel hierfür wird nununter Verwendung von realen numerischen Werten nachstehend beschrieben.
[0061] DasBeispiel wird fürden echten Fall beschrieben, bei dem reale numerische Werte verwendetwerden, wobei, selbst wenn eine angewiesene Geschwindigkeit hochund darüberhinaus ein Kollisionserfassungsabstand äußerst klein ist, eine Kollisionbei einer beispielhaften Werkzeugmaschine zuverlässig erfasst wird, die zweiFunktionsteile hat, und der Geschwindigkeiten der Funktionsteilezugewiesen wurden.
[0062] AlsBeispiel füreine Werkzeugmaschine mit zwei Funktionsteilen erfolgt eine, dieals mehrlinige Werkzeugmaschine bezeichnet wird. Die mehrlinigeWerkzeugmaschine ist eine Werkzeugmaschine mit mehreren Werkzeughaltern,die gleichzeitig unabhängigvoneinander bedienbar sind, wie in der japanischen Patentveröffentlichung JP 205301 A1 erwähnt ist.Der sich von den jeweiligen Schneidwerkzeugen zu einem Antriebsgelenkder Maschine erstreckende Abschnitt wird als "Linie." bezeichnet, und es sei angenommen,dass die Maschine zwei Linien hat, wenn zwei Schneidwerkzeuge unabhängig bedienbarsind.
[0063] Beispielsweisewerden unter der Annahme, dass der Interpolationszeitraum dt = 1,0ms ist, den Linie 1 und Linie 2 gemeinsam haben, die angewieseneSchnittgeschwindigkeit F1 zu 10.000 mm/min für Linie 1 und F2 zu 8.000 mm/minfür Linie2, und der Kollisionserfassungsabstand K wird zu 0,1 mm. Dann werdenbei Ermittlung der maximalen Geschwindigkeit für jedes der FunktionsteileF entsprechend dem Fall, bei dem die Maschine mehrere Funktionsteileaufweist, die folgenden Ergebnisse erhalten: F= max {F1, F2} = F1 = 10.000 mm/min.
[0064] Dabeiführt dies,wenn man in Gleichung (2) C beispielsweise zu 0,5 werden lässt, zuder Simulationsgeschwindigkeit Fs = (0,5 × K × 60 × 1.000)/dt= 9.000 mm/min.
[0065] Vondaher ergibt sich das Geschwindigkeitsverhältnis R durch R = Fs/F = 9.000/10.000= 0,9 aus Gleichung (3), und eine Simulation wird unter Verwendungder Punkte ausgeführt,die bei einer Bewegungsgeschwindigkeit interpoliert wurden, diedas 0,9-fache der angewiesenen Schnittgeschwindigkeit F1 beträgt.
[0066] D.h.also, dass das obige Ergebnis zeigt, dass die Erfassung mit demInterpolationszeitraum nicht machbar ist, bis die Geschwindigkeiten0,9-fach langsamer werden als die angewiesenen Geschwindigkeiten, undzwar nicht machbar fürdie Erfassung, ohne dabei eine Annäherung der Funktionsteile aufeinen Abstand von 0 bis 0,1 mm zwischen den zwei Linien zu übersehen.Dagegen kann bei Multiplizieren mit 0,9 der durch eine Simulationreproduzierte Abstand, eine Annäherunganeinander im Bereich von 0 bis 0,1 mm, unfehlbar erfasst werden.
[0067] Wieaus der obigen Beschreibung klar hervorgeht, ist die Simulationsvorrichtunggemäß der ersten Ausführungsformmit der Ersetzungseinrichtung (Geschwindigkeitsverhältnis-Bestimmungsabschnitt, Geschwindigkeitsbestimmungsabschnitt 8)zum Berechnen der maximalen Verfahrgeschwindigkeit des Funktionsteilsaus einem Kollisionserfassungsabstand und eine Interpolationszeitraumversehen, und zum Ersetzen der Verfahrgeschwindigkeit des Funktionsteils,die vom Programmanalyseabschnitt 6 ausgelesen wird, mit dermaximalen Verfahrgeschwindigkeit, und mit dem Interpolationsabschnitt 9,um Interpolationspunkte einer Bewegungsbahn des Funktionsteils basierendauf einer Bewegungsgeschwindigkeit des Funktionsteils, die von derErsetzungseinrichtung durch die maximale Verfahrgeschwindigkeitersetzt wird, und aus einem Interpolationszeitraum zu bestimmen.Die wie oben konfigurierte, oben angegebene Anordnung führt eineKollisionsprüfungin kürzererZeit durch als die eigentliche maschinelle Bearbeitung, ohne eineKollisionserfassung zu übersehen.
[0068] Während inder ersten Ausführungsformder Ausführungsmodus-Änderungsabschnitt 5 denAusführungsmoduszwischen dem eigentlichen Maschinenbetriebsmodus und dem Simulationsmodusverändert, kanndie Simulationsvorrichtung in Richtung auf ein System modifiziertsein, das auf den Simulationsmodus zugeschnitten ist, ohne den Ausführungsmodus-Änderungsabschnitt 5 unddie Servoeinheit 11 zu implementieren, wie in 6 gezeigt ist.
[0069] Aufdiese Weise ist durch das Weglassen von in der Simulationsvorrichtungenthaltenen Fähigkeiten eineAnordnung der Simulationsvorrichtung außerhalb der numerischen Steuervorrichtungmöglich.Demzufolge könnenzu jeder beliebigen Zeit der tatsächliche Maschinenbetrieb undeine Kollisionsprüfungdurch eine Maschinensimulation unabhängig bewerkstelligt werden,ohne zur Ausführungeiner Simulation den tatsächlichenMaschinenbetrieb anzuhalten. Dadurch kann während der Bearbeitung einesWerkstücksauf der realen Maschine durch Einsatz eines bereits geprüften NC-Programms eine Simulationgleichzeitig mit der Überprüfung einesNC-Programms für die nächste Bearbeitungausgeführtwerden. Dies erhöhtdie Gesamtarbeitsleistung ab Programmüberprüfung und der tatsächlicheMaschinenbetrieb kann ausgedehnt werden.
[0070] Zusätzlich seiangemerkt, dass in der numerischen Steuervorrichtung implementierteFunktionsteile, so wie sie sind, in Funktionsteile in der Simulationsvorrichtungimportiert werden können,oder spezifisch für eineMaschinensimulation ausgelegt werden können.
[0071] Während inder ersten Ausführungsformder Programmanalyseabschnitt 6, der Geschwindigkeitsverhältnis-Bestimmungsabschnitt 7,der Geschwindigkeitsbestimmungsabschnitt 8 und der Interpolationsabschnitt 9 ineinem System vorgesehen sind, die jeweils einen Betrieb entwederim Simulationsmodus oder im eigentlichen Maschinenbetriebsmodusunter der Führungdes Ausführungsmodus-Änderungsabschnitts 5 ausführen, kanneine Verarbeitungslinie A (umrandeter Bereich mit Schrägschraffur)vorgesehen sein, der ausschließlichdem Simulationsmodus gewidmet ist, und eine Verarbeitungslinie B(umrandeter Bereich, durch eine unterbrochene Linie angegeben),der ausschließlichdem eigentlichen Maschinenbetriebsmodus gewidmet ist, wie in 7 gezeigt ist.
[0072] Aufdiese Weise wird es durch ein solches separates Vorsehen der VerarbeitungslinieA, die ausschließlichfür denSimulationsmodus verantwortlich ist, und der VerarbeitungslinieB, die ausschließlichfür die Ausführung deseigentlichen Maschinenbetriebsmodus verantwortlich ist, möglich, eineSimulation an der Maschine laufen zu lassen, selbst wenn die Maschinegerade in Betrieb ist, und zwar unter Verwendung von Werkzeugdaten,Spannvorrichtungsdaten, Angaben bezüglich der Orte, an denen Werkzeugeam Werkzeughalter angebracht sind, Magazinbestandsdaten, eines Stufenprogramms,von Kontaktdaten, oder beliebiger anderer Daten. Dadurch wird eineBetriebssimulation mit einer Genauigkeit ausgeführt, die dem tatsächlichenMaschinenbetrieb nahe kommt, und es wird auch die Arbeitsleistungab der Programmüberprüfung biszum tatsächlichenMaschinenbetrieb gesteigert.Bezugszeichenliste:
权利要求:
Claims (6)
[1] Simulationsvorrichtung, umfassend: eineProgrammanalyseeinrichtung (6) zum Auslesen einer in einemProgramm beschriebenen Verfahrgeschwindigkeit eines Funktionsteils; eineErsetzungseinrichtung (7, 8) zum Berechnen dermaximalen Verfahrgeschwindigkeit des Funktionsteils aus einem Kollisionserfassungsabstand(K) und einem Interpolationszeitraum (dt), und zum Ersetzen derVerfahrgeschwindigkeit des Funktionsteils, die durch die Programmanalyseeinrichtung(6) ausgelesen wird, mit dessen maximaler Verfahrgeschwindigkeit; eineInterpolationspunkt-Bestimmungseinrichtung (9), um Interpolationspunkteeiner Bewegungsbahn aus der Verfahrgeschwindigkeit des Funktionsteils,die durch die Ersetzungseinrichtung (7, 8) mitder maximalen Verfahrgeschwindigkeit ersetzt wird, und aus dem Interpolationszeitraum(dt) zu bestimmen; und eine Simulationseinrichtung (10)zur Ausführungeiner Kollisionsprüfungam Funktionsteil bei einem Interpolationspunkt, der durch die Interpolationspunkt-Bestimmungseinrichtung(9) bestimmt ist.
[2] Simulationsvorrichtung nach Anspruch 1, bei der dieErsetzungseinrichtung (7, 8) den Kollisionserfassungsabstand(K) durch den Interpolationszeitraum (dt) teilt, um eine Simulationsgeschwindigkeit(Fs) zu ermitteln, und die Simulationsgeschwindigkeit durch dieVerfahrgeschwindigkeit des Funktionsteils teilt, die durch die Programmanalyseeinrichtung(6) ausgelesen wird, um ein Geschwindigkeitsverhältnis (R)zu ermitteln, und die Verfahrgeschwindigkeit des Funktionsteilsmit dem Geschwindigkeitsverhältnismultipliziert, um die maximale Verfahrgeschwindigkeit des Funktionsteilszu ermitteln.
[3] Simulationsvorrichtung nach Anspruch 2, bei der dieErsetzungseinrichtung (7, 8), wenn mehrere Funktionsteilevorgesehen sind, die Simulationsgeschwindigkeit (Fs) durch eineVerfahrgeschwindigkeit aus den Verfahrgeschwindigkeiten der mehrerenFunktionsteile teilt, um das Geschwindigkeitsverhältnis (R)zu bestimmen.
[4] Simulationsvorrichtung nach Anspruch 2, bei der dieErsetzungseinrichtung (7, 8), wenn mehrere betreffendeMaschinen im Simulationsraum vorgesehen sind, die Simulationsgeschwindigkeit(Fs) durch die maximale Verfahrgeschwindigkeit aus den Verfahrgeschwindigkeitender Funktionsteile der mehreren Maschinen teilt, um ein Geschwindigkeitsverhältnis (R)zu ermitteln.
[5] Simulationsvorrichtung nach Anspruch 1, bei der eineAntriebseinrichtung (11) vorgesehen ist, um das Funktionsteilmit der Verfahrgeschwindigkeit des Funktionsteils anzutreiben, diedurch die Programmanalyseeinrichtung (6) ausgelesen wird,wenn ein Ausführungsmodusvon einem Simulationsmodus zu einem eigentlichen Maschinenbetriebsmodusabgeändertwurde.
[6] Simulationsvorrichtung nach Anspruch 5, bei der dieProgrammanalyseeinrichtung (6), die Ersetzungseinrichtung(7, 8) und die Intexpolationspunkt-Bestimmungseinrichtung(9) fürden eigentlichen Maschinenbetriebsmodus separat zusätzlich zurProgrammanalyseeinrichtung (6), zur Ersetzungseinrichtung(7, 8) und zur Interpolationspunkt-Bestimmungseinrichtung(9) fürden Simulationsmodus vorgesehen sind.
类似技术:
公开号 | 公开日 | 专利标题
EP1798618B1|2011-04-06|Vorrichtung und Verfahren zum automatischen Setzen von Verriegelungen zwischen Robotern
EP1510894B1|2008-06-04|Vorrichtung zur Korrektur der Position in einem Roboterprogramm
CN100561491C|2009-11-18|自动路径学习的方法和设备
EP0002750B1|1983-09-07|Numerische Steuerung mit Computer für eine Werkzeugmaschine
US6928337B2|2005-08-09|Robot simulation apparatus
DE102008001011B4|2018-02-01|Numerische Steuervorrichtung
US7251543B2|2007-07-31|Interference checking device
US8374718B2|2013-02-12|Numerical control method and apparatus therefor
EP2285537B1|2016-01-06|Vorrichtung und verfahren zur rechnergestützten generierung einer manipulatorbahn
KR100752061B1|2007-08-28|가상 티치-인 시스템
US8355813B2|2013-01-15|Machining status monitoring method and machining status monitoring apparatus
ES2662527T3|2018-04-06|Máquina herramienta virtual para la representación de acciones de unidades de mecanizado y la generación de datos operativos a partir de entradas de usuario
CN101678522B|2013-03-06|程序生成装置、数控装置以及程序生成方法
CN102650867B|2013-11-06|具有多轴加工机用速度控制功能的数值控制装置
US7848851B2|2010-12-07|Controller of work piece-conveying robot
JP4261470B2|2009-04-30|Control device
EP2031471B1|2012-03-07|Numerische Steuerung mit Kollisionsprüfungsfunktion
EP1424613A1|2004-06-02|Verfahren und Vorrichtung zum Bearbeiten eines Werkstücks
US4489377A|1984-12-18|Method for preventing machine component interference
US7847506B2|2010-12-07|Machine tool controller
EP1769891B1|2014-10-22|Offline Lehrgerät für einen Roboter
US7209800B2|2007-04-24|Process and system for generating or visualizing sets of control data
DE102010036499A1|2011-02-24|Werkzeugvektor-Anzeigevorrichtung für eine Werkzeugmaschine mit Drehachse
CA2784720C|2017-09-19|Predictive control and visualizing system for a nc machine tool
US5079713A|1992-01-07|Method and apparatus for preventing tool collison
同族专利:
公开号 | 公开日
DE102004019653B4|2013-01-31|
JP3853752B2|2006-12-06|
JP2004326257A|2004-11-18|
US6856853B2|2005-02-15|
US20040225405A1|2004-11-11|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
法律状态:
2004-12-09| OP8| Request for examination as to paragraph 44 patent law|
2012-08-09| R016| Response to examination communication|
2012-09-21| R018| Grant decision by examination section/examining division|
2013-08-08| R020| Patent grant now final|Effective date: 20130501 |
2014-11-07| R084| Declaration of willingness to licence|
优先权:
申请号 | 申请日 | 专利标题
[返回顶部]