DE102009048252B4 - In eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung - Google Patents

In eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung Download PDF

Info

Publication number
DE102009048252B4
DE102009048252B4 DE102009048252.0A DE102009048252A DE102009048252B4 DE 102009048252 B4 DE102009048252 B4 DE 102009048252B4 DE 102009048252 A DE102009048252 A DE 102009048252A DE 102009048252 B4 DE102009048252 B4 DE 102009048252B4
Authority
DE
Germany
Prior art keywords
unit
collision
path
function generation
acceleration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102009048252.0A
Other languages
English (en)
Other versions
DE102009048252A1 (de
Inventor
Takahiro Yamaguchi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Okuma Corp
Original Assignee
Okuma Corp
Okuma Machinery Works Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Okuma Corp, Okuma Machinery Works Ltd filed Critical Okuma Corp
Publication of DE102009048252A1 publication Critical patent/DE102009048252A1/de
Application granted granted Critical
Publication of DE102009048252B4 publication Critical patent/DE102009048252B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4061Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4069Simulating machining process on screen

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)

Abstract

In eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung mit: einer Funktionserzeugungseinheit (16), die einen Verstellsollwert auf Grundlage eines numerischen Steuerungsprogramms erstellt; einer Beschleunigungs/Verzögerungs-Verarbeitungseinheit (18x, 18z), die für den durch die Funktionserzeugungseinheit (16) erzeugten Verstellsollwert für jede Achse (x, z) eine Beschleunigungs-/Verzögerungsverarbeitung ausführt, um einen Stoß abzuschwächen, wie er auftreten kann, wenn eine Werkzeugmaschine arbeitet; einer Einheit (26), die vorab an einem Sollpfad eine Kollisionsprüfung ausführt und, wenn ermittelt wird, dass eine Kollision auftreten kann, jede Kollision durch Hindern der Funktionserzeugungseinheit (16) am Erzeugen des Verstellsollwerts verhindert; gekennzeichnet durch eine Simulationseinheit (50), die die Funktionserzeugungseinheit (16) und die Beschleunigungs/Verzögerungs-Verarbeitungseinheit (18x, 18z) simuliert und entsprechend dem numerischen Steuerungsprogramm einen Pfad erzeugt; und eine Sollpfad-Änderungseinheit, die den von einer Programminterpretiereinheit (12) erzeugten Pfad von Ausführungsdaten ändert, um die Differenz zwischen dem Sollpfad und dem durch die Simulationseinheit erhaltenen Pfad zu verringern; wobei diese Kollisionsverhinderungsvorrichtung eine Funktionserzeugung auf Grundlage des durch die Sollpfad-Änderungseinheit (56) geänderten Pfads ausführt und die numerisch gesteuerte Maschine einen Betriebsvorgang entlang einem Verstellpfad ausführt, der benachbart zum Sollpfad liegt, der der Kollisionsprüfung unterzogen wurde.

Description

  • Technisches Gebiet
  • Die Erfindung betrifft eine in eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung. Obwohl in der Zeichnung nicht direkt eine Werkzeugmaschine dargestellt ist, verfügt eine solche über einen Antriebsmechanismus, der dazu konfiguriert ist, die Relativposition zwischen einem Werkzeug und einem zu bearbeitenden Werkstück in zwei Richtungen, d. h. einer Z- und einer X-Achse, zu ändern.
  • Eine Programminterpretiereinheit 12 liest ein Teileprogramm 10 auf blockweiser Basis, um die numerisch gesteuerte Maschine zu steuern, und sie interpretiert Sollwertswerte wie einen Sollpfad und eine Sollvorschubgeschwindigkeit, und sie erzeugt dann von einer Funktionserzeugungseinheit 16 ausführbare Ausführungsdaten. Ein Puffer 14 speichert die von der Programminterpretiereinheit 12 erzeugten Ausführungsdaten. Der Puffer 14 fungiert als Vorrichtung, die die Ausführungsdaten vorübergehend speichern kann, wie sie vorab durch die oben beschriebene Interpretationsverarbeitung erzeugt werden, die relativ viel Zeit beansprucht. Der Puffer 14 kann die Zeitdifferenz in Bezug auf die zur Funktionserzeugung für einen Block benötigte Zeit verringern, und er kann eine gleichmäßige Ausführung der Verarbeitung realisieren.
  • Die Funktionserzeugungseinheit 16 liest die im Puffer 14 gespeicherten Ausführungsdaten auf fortlaufende Weise, und sie führt eine Interpolation mit konstanten Zeitintervallen (Funktionserzeugungsperioden) entlang dem in den Ausführungsdaten enthaltenen Sollpfad mit der Sollvorschubgeschwindigkeit aus, bis ein Interpolationspunkt eine durch die Ausführungsdaten gekennzeichnete Zielposition erreicht.
  • Die Funktionserzeugungseinheit 16 wandelt den Interpolationspunkt in einen Verstellsollwert für eine Funktionserzeugungsperiode, und er unterteilt ihn in Sollwerte für die X-Achse und die Z-Achse. Eine Antriebseinheit 17x für die X-Achse verfugt über eine Beschleunigungs/Verzögerungs-Einheit 18x. Die Antriebseinheit 17z für die Z-Achse verfügt über eine Beschleunigungs/Verzögerungs-Einheit 18z. Die Beschleunigungs/Verzögerungs-Einheiten 18x und 18z können eine Beschleunigungs-/Verzögerungsverarbeitung mit einer vorbestimmten Zeitkonstanten ausführen, ohne dass es irgendeinen überflüssigen Stoß auf ein Werkstück bei einem Bearbeitungsvorgang gäbe, und sie können Sollsignale an Servoeinheiten 20x bzw. 20z senden. Diese Servoeinheiten 20x und 20z führen abhängig von den zugeführten Sollwerten eine Regelung für jeweilige, die Maschine antreibende Motoren auf Grundlage von Messsignalen zugehöriger Detektoren (siehe Motor/Detektor 22x und Motor/Detektor 22z) aus.
  • Um zu verhindern, dass die Werkzeugmaschine mit irgendeinem Kollisionsobjekt zusammenstößt, führt die in der 6 dargestellte Vorrichtung für einen Zielblock keine Funktionserzeugungsverarbeitung aus, wenn ermittelt wird, dass im Zielblock eine Kollision auftreten kann, wenn die Werkzeugmaschine einen Vorgang entsprechend dem Teilprogramm 10 ausführt.
  • Eine Kollisionsprüfungseinheit 26 erstellt auf Grundlage von Modelldaten 24 in einem virtuellen Raum ein bewegliches Element, sie verstellt dann das konstruierte bewegliche Element entlang dem in den Ausführungsdaten enthaltenen Sollpfad, und sie prüft die Möglichkeit irgendeiner Kollision. Bei den Modelldaten 24 handelt es sich um eine Datengruppe, die Zahlenwerte enthält, die bewegliche Teile und variable Teile der Werkzeugmaschine repräsentieren, wie eine Änderung des Körpers der Werkzeugmaschine, von Vorschubwellen, von Werkzeugen und von Werkstücken. Die Kollisionsprüfungseinheit 26 ermittelt für jeden Block, ob eine Kollision auftreten kann, und sie speichert die vorhergesagte Kollisionsinformation fortlaufend als Teil der Ausführungsdaten im Puffer 14.
  • Eine Ausführungsverwaltungseinheit 28 veranlasst die Funktionserzeugungseinheit 16 dazu, eine Interpolationsverarbeitung auszuführen, wenn für einen aktuell ausgeführten Block keine Kollision erkannt wird. Andererseits hindert die Ausführungsverwaltungseinheit 28 die Funktionserzeugungseinheit 16 am Ausführen einer Interpolationsverarbeitung, wenn ermittelt wird, dass eine Kollision auftreten kann, und sie erzeugt ein Warnsignal.
  • Zitierungsliste
    • Patentliteraturstelle 1: JP 2006-059 187 A
  • US 2008/0 024 083 A1 (nächstliegender Stand der Technik) zeigt eine numerische Steuerung, die ein bewegliches Teil einer Maschine entsprechend den Befehlen in einem Programm steuert und antreibt, wobei die Steuerung eine Aufprall-Prüfvorrichtung aufweist, die wiederholt eine Aufprall-Prüfverarbeitung vornimmt, um einen Zusammenstoß des beweglichen Teils mit anderen Objekten zu erkennen, damit die Bewegung des beweglichen Teils bis zum Stillstand abgebremst wird, falls die Aufprall-Prüfvorrichtung im Voraus den Zusammenstoß erkennt.
  • DE 10 2006 029 527 A1 zeigt eine Werkzeugmaschine zur Bearbeitung eines Werkstücks, wobei die Werkstückaufnahme und das Werkstück mit Hilfe von Antrieben relativ zueinander bewegbar sind, um eine Bearbeitung des Werkstücks zu ermöglichen. Die Antriebe werden von einer Steuereinheit mit Hilfe eines Steuerprogramms angesteuert. Gemäß einem Aspekt der Erfindung ist ein Simulationsrechner vorgesehen, der die relativen Bewegungen des Bearbeitungswerkzeugs und des Werkstücks unter Verwendung der Antriebssteuerdaten simuliert, um eine Kollisionsprüfung durchzuführen.
  • DE 101 14 811 A1 zeigt ein System und ein Verfahren zur Erstellung von mehrachsigen Bearbeitungsvorgängen an Werkstücken, wobei eine anlageninterne Behebung der Kollision vor der Durchführung des jeweils nächsten Bearbeitungs-Vorgangs herbeizuführen ist, und vorhandene Werkzeugmaschinen einbezogen und zur Kollisionsvermeidung genutzt werden. Dabei steht ein Modul zur Datenaufbereitung und -synchronisierung sowohl mit einem Hauptmodul zur Simulation von Bearbeitungs-Vorgängen als auch mit einem Modul zur Aufnahme kollisionsfreier Bearbeitungs-Bahnen in Verbindung, wobei im Hauptmodul zur Simulation von Bearbeitungsvorgängen ein volumendiskretes Simulationsmodul zur Vorschubgeschwindigkeitsoptimierung und ein kollisionserkennendes Simulationsmodul zur Volumenmodellierung verwendet werden.
  • Zusammenfassung der Erfindung
  • Technisches Problem
  • Bei der in der 6 dargestellten, in eine numerisch gesteuerte Maschine eingebauten Kollisionsverhinderungsvorrichtung gemäß der herkömmlichen Technik besteht das Problem, dass selbst dann, wenn ermittelt wird, dass keine Kollision auftritt, doch tatsächlich eine Kollision auftreten kann. Die durch die Kollisionsprüfungseinheit 26 zu prüfende Bahn ist der durch das Teileprogramm 10 angewiesene Pfad (siehe die 7a). Jedoch kann eine tatsächliche Bewegung der Maschine (bei einem tatsächlichen Verstellpfad eines durch Antriebsmotoren bewegten Werkzeugs) vom Sollpfad verschieden sein.
  • Die in der 6 dargestellte numerisch gesteuerte Maschine entspricht einem allgemeinen Typ mit mehreren Achsenantriebseinheiten, die dazu konfiguriert sind, auf Grundlage einer Funktionserzeugung eine Beschleunigungs-/Verzögerungsverarbeitung für jeweilige Achsen auszuführen. Jedoch stimmt, wie es in der 7b dargestellt ist, der Istverstellpfad nicht mit dem Sollpfad überein. Gemäß dem durch die 7b veranschaulichten Beispiel sind Verstellsollwerte kontinuierlich, und die Verstellrichtung ändert sich an einer Zwischenposition. In diesem Fall weicht eine tatsächliche Werkzeugbahn in der Nähe der Richtungsänderungsposition von einer Sollbahn ab, da die Vorrichtung für jede Achse unabhängig eine Beschleunigungs-/Verzögerungsverarbeitung ausführt. Daher kann selbst dann, wenn entlang dem Sollpfad keine Kollision erkannt wird, der Istverstellpfad auf Grund der oben angegebenen Differenz zu einer Kollision führen.
  • Der Erfindung liegt die Aufgabe zugrunde, eine Kollisionsverhinderungsvorrichtung zu schaffen, die unter Berücksichtigung der Möglichkeit, dass eine Istverstellbahn von einer Sollbahn abweichen kann, Kollisionen zuverlässig verhindern kann.
  • Lösung des Problems
  • Die Aufgabe wird gelöst durch eine Kollisionsverhinderungsvorrichtung gemäß Anspruch 1 bis 3.
  • Gemäß einer Ausführungsform der Vorrichtung nach Anspruch 3, ist die Kollisionsverhinderungsvorrichtung ferner mit Folgendem versehen: einer Erzeugungseinheit für die Abweichungsunterdrückungswarteanzahl, die das Ausmaß der Abweichung dadurch auswertet, dass sie die Funktionserzeugungseinheit und die Beschleunigungs/Verzögerungs-Verarbeitungseinheit für jede Achse simuliert und in der Abweichungsunterdrückungswarteanzahltabelle eine maximale Warteanzahl für den Start der Funktionserzeugung, die innerhalb der Toleranz liegt, registriert.
  • Vorteilhafte Effekte der Erfindung
  • Gemäß einer Erscheinungsform der Erfindung kann die Kollisionsverhinderungsvorrichtung eine Kollisionsprüfung für eine Verstellbahn ausführen, die von einer Sollbahn abweicht. Daher kann die Kollisionsverhinderungsvorrichtung die Möglichkeit einer beliebigen Kollision zuverlässig erkennen. Anders gesagt, führt das Verringern der Möglichkeit einer Kollision zum Effekt einer Erhöhung der Arbeitseffizienz der Maschine im Umfang beispielsweise der für eine Wiederherstellung (z. B. Reparatur der Maschine) erforderlichen Zeit, wodurch die Produktivität der Maschine erhöht wird.
  • Gemäß einer anderen Erscheinungsform der Erfindung führt die Kollisionsverhinderungsvorrichtung eine Kollisionsprüfung unter Berücksichtigung einer Verstellbahn aus, die von einer Sollbahn abweichen kann. Daher kann die Kollisionsverhinderungsvorrichtung, im Vergleich zur herkömmlichen Vorrichtung, die Möglichkeit irgendeiner Kollision zuverlässig erkennen. Anders gesagt, führt das Verringern der Möglichkeit einer Kollision zum Effekt einer Erhöhung der Arbeitseffizienz der Maschine entsprechend dem Umfang von, beispielsweise, der zur Wiederherstellung (z. B. Reparatur der Maschine) benötigten Zeit, weswegen die Produktivität der Maschine erhöht wird. Darüber hinaus kann die Kollisionsverhinderungsvorrichtung, gemäß einer anderen Erscheinungsform der Erfindung, das Ausmaß der für die Kollisionsprüfung benötigten Verarbeitung verringern und daher die Kosten für das Gerät verringern.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist ein Funktionsblockdiagramm, das ein Beispiel einer Konfiguration einer in eine numerisch gesteuerte Maschine eingebauten Kollisionsverhinderungsvorrichtung gemäß einer ersten Ausführungsform zur allgemeinen Erläuterung zeigt.
  • 2 ist ein Funktionsblockdiagramm, das ein Beispiel einer Konfiguration einer in eine numerisch gesteuerte Maschine eingebauten Kollisionsverhinderungsvorrichtung gemäß einer zweiten Ausführungsform zur allgemeinen Erläuterung zeigt.
  • 3 ist ein Funktionsblockdiagramm, das ein Beispiel einer Konfiguration einer in eine numerisch gesteuerte Maschine eingebauten Kollisionsverhinderungsvorrichtung gemäß einer ersten Ausführungsform zeigt.
  • 4 ist ein Funktionsblockdiagramm, das ein Beispiel einer Konfiguration einer in eine numerisch gesteuerte Maschine eingebauten Kollisionsverhinderungsvorrichtung gemäß einer zweiten Ausführungsform zeigt.
  • 5 ist ein Funktionsblockdiagramm, das ein Beispiel einer Konfiguration einer in eine numerisch gesteuerte Maschine eingebauten Kollisionsverhinderungsvorrichtung gemäß einer dritten Ausführungsform zeigt.
  • 6 ist ein Funktionsblockdiagramm, das ein Beispiel einer Konfiguration einer in eine numerisch gesteuerte Maschine eingebauten Kollisionsverhinderungsvorrichtung entsprechend einem herkömmlichen Gerät.
  • 7a zeigt ein Beispiel eines Sollpfads.
  • 7b zeigt einen Istverstellpfad des herkömmlichen Geräts in Bezug auf den in der 7a darstellten Sollpfad.
  • 8a veranschaulicht Funktionen und Effekte der Kollisionsverhinderungsvorrichtung gemäß der ersten Ausführungsform zur allgeinmen Erläuterung.
  • 8b veranschaulicht Funktionen und Effekte der Kollisionsverhinderungsvorrichtung gemäß der ersten Ausführungsform zur allgemeinen Erläuterung.
  • 8c veranschaulicht Funktionen und Effekte der Kollisionsverhinderungsvorrichtung gemäß der ersten Ausführungsform zur allgemeinen Erläuterung.
  • 8d veranschaulicht Funktionen und Effekte der Kollisionsverhinderungsvorrichtung gemäß der ersten Ausführungsform zur allgemeinen Erläuterung.
  • 9a veranschaulicht Funktionen und Effekte der Kollisionsverhinderungsvorrichtung gemäß der zweiten Ausführungsform zur allgemeinen Erläuterung.
  • 9b veranschaulicht Funktionen und Effekte der Kollisionsverhinderungsvorrichtung gemäß der zweiten Ausführungsform zur allgemeinen Erläuterung.
  • 9c veranschaulicht Funktionen und Effekte der Kollisionsverhinderungsvorrichtung gemäß der zweiten Ausführungsform zur allgemeinen Erläuterung.
  • 9d veranschaulicht Funktionen und Effekte der Kollisionsverhinderungsvorrichtung gemäß der zweiten Ausführungsform zur allgemeinen Erläuterung.
  • 9e veranschaulicht Funktionen und Effekte der Kollisionsverhinderungsvorrichtung gemäß der zweiten Ausführungsform zur allgemeinen Erläuterung.
  • 10a veranschaulicht Funktionen und Effekte der Kollisionsverhinderungsvorrichtung gemäß der ersten Ausführungsform.
  • 10b veranschaulicht Funktionen und Effekte der Kollisionsverhinderungsvorrichtung gemäß der ersten Ausführungsform.
  • 10c veranschaulicht Funktionen und Effekte der Kollisionsverhinderungsvorrichtung gemäß der ersten Ausführungsform.
  • 10d veranschaulicht Funktionen und Effekte der Kollisionsverhinderungsvorrichtung gemäß der ersten Ausführungsform.
  • 11 ist ein Flussdiagramm zum Veranschaulichen eines Beispiels einer Verarbeitungsprozedur, wie sie durch die Erzeugungseinheit für eine Abweichungsunterdrückungswarteanzahltabelle ausgeführt werden kann.
  • 12a veranschaulicht eine Verarbeitung, die durch die Erzeugungseinheit für die Abweichungsunterdrückungswarteanzahltabelle ausgeführt werden kann.
  • 12b veranschaulicht eine Verarbeitung, die durch die Erzeugungseinheit für die Abweichungsunterdrückungswarteanzahltabelle ausgeführt werden kann.
  • 12c veranschaulicht eine Verarbeitung, die durch die Erzeugungseinheit für die Abweichungsunterdrückungswarteanzahltabelle ausgeführt werden kann.
  • 12d veranschaulicht eine Verarbeitung, die durch die Erzeugungseinheit für die Abweichungsunterdrückungswarteanzahltabelle ausgeführt werden kann.
  • 12e veranschaulicht eine Verarbeitung, die durch die Erzeugungseinheit für die Abweichungsunterdrückungswarteanzahltabelle ausgeführt werden kann.
  • Beschreibung von Ausführungsformen
  • Die 1 zeigt eine Konfiguration einer in eine numerisch gesteuerte Maschine eingebauten Kollisionsverhinderungsvorrichtung gemäß einer Ausführungsform zur allgemeinen Erläuterung der Erfindung. In der 1 sind Aufbaukomponenten, die denen der in der 6 dargestellten herkömmlichen Technik ähnlich sind, unter Verwendung derselben Bezugszahlen und Namen gekennzeichnet.
  • Die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform zur allgemeinen Erläuterung kann eine Kollisionsprüfung für eine Sollbahn entsprechend einem Verfahren ausführen, das demjenigen ähnlich ist, das für die herkömmliche Technik beschrieben wurde. Wenn ermittelt wird, dass in einem Zielblock eine Kollision auftreten kann, führt die Kollisionsverhinderungsvorrichtung für den Zielblock keine Funktionserzeugungsverarbeitung aus, und sie stoppt ein Bearbeitungswerkzeug, bevor dieses mit einem Kollisionsobjekt kollidiert. Wenn ermittelt wird, dass im Zielblock keine Kollision auftritt, führt die Kollisionsverhinderungsvorrichtung die Funktionserzeugungsverarbeitung für den Zielblock aus, und sie gibt für jede Funktionserzeugungsperiode einen Verstellsollwert aus.
  • Die Kollisionsverhinderungsvorrichtung gemäß der oben beschriebenen herkömmlichen Technik liefert in jeder Funktionserzeugungsperiode einen durch die Funktionserzeugungseinheit 16 erzeugten Verstellsollwert an die jeweiligen Achsenantriebseinheiten 17x und 17z. Andererseits liefert die Kollisionsverhinderungsvorrichtung der vorliegenden Ausführungsform zur allgemeinen Erläuterung den Verstellsollwert an eine Beschleunigungs/Verzögerungs-Simulationseinheit 30 und eine Verzögerungseinheit 32.
  • Die Verzögerungseinheit 32 führt für einen in jeder Funktionserzeugungsperiode erzeugten Verstellsollwert eine Zwischenspeicherung aus, und sie gibt die zuvor mit einer vorbestimmten Zeitkonstante gespeicherten Verstellsollwerte aus. Bei dieser Ausführungsform zur allgemeinen Erläuterung ist die Zeitkonstante mit derjenigen vergleichbar, die von den Beschleunigungs/Verzögerungs-Einheiten 18x und 18z in den Achsenantriebseinheiten 17x und 17z verwendet werden. Kurz gesagt, kann die Verzögerungseinheit 32 jeden von der Funktionserzeugungseinheit 16 empfangenen Verstellsollwert um einen der Zeitkonstante entsprechenden Wert verzögern.
  • Die Beschleunigungs/Verzögerungs-Simulationseinheit 30 führt eine Verarbeitung aus, die derjenigen ähnlich ist, wie sie von den in den jeweiligen Achsenantriebseinheiten 17x und 17z vorhandenen Beschleunigungs/Verzögerungs-Einheiten 18x und 18z ausgeführt wird. Obwohl es in den Zeichnungen nicht dargestellt ist, unterteilt die Beschleunigungs/Verzögerungs-Simulationseinheit 30 den Verstellsollwert in eine Komponente für die X-Achse und eine Komponente für die Z-Achse, und sie führt für die jeweiligen Achsen eine Beschleunigungs-/Verzögerungsverarbeitung auf eine Weise aus, die derjenigen ähnlich ist, wie sie durch die jeweiligen Achsenantriebseinheiten 17x und 17z ausgeführt wurde. Im Allgemeinen wird eine Abweichung einer Verstellbahn in Bezug auf eine Sollbahn durch für die jeweiligen Achsen unabhängige Beschleunigungs-/Verzögerungsverarbeitungen verursacht. Daher verfügt die Beschleunigungs/Verzögerungs-Simulationseinheit 30 gemäß der vorliegenden Ausführungsform zur allgemeinen Erläuterung über eine Funktion des vorab erfolgenden Prüfens der Verstellbahn.
  • An der durch die Beschleunigungs/Verzögerungs-Simulationseinheit 30 erhaltenen Verstellbahn führt eine zweite Kollisionsprüfungseinheit 34 eine Kollisionsprüfung aus. Die zweite Kollisionsprüfungseinheit 34 ist der Kollisionsprüfungseinheit 26 hinsichtlich des Inhalts der auszuführenden Verarbeitung ähnlich, wobei jedoch die einzugebende Bahn eine andere ist. Die zweite Kollisionsprüfungseinheit 34 gemäß der vorliegenden Ausführungsform zur allgemeinen Erläuterung bestimmt die Möglichkeit irgendeiner Kollision, wie sie auftreten kann, auf Grundlage von Modelldaten (nicht dargestellt).
  • Wenn ermittelt wird, dass eine Kollision auftreten kann, informiert die zweite Kollisionsprüfungseinheit 34 eine Verstellsollwert-Blockiereinheit 36 über die Möglichkeit der erkannten Kollision. In diesem Fall blockiert die Verstellsollwert-Blockiereinheit 36 einen von der Verzögerungseinheit 32 auszugebenden Verstellsollwert. Wenn kein Verstellsollwert zugeführt wird, bleibt die Werkzeugmaschine an der durch den letzten Verstellsollwert spezifizierten Position stehen.
  • Wenn ermittelt wird, dass keine Kollision auftritt, informiert die zweite Kollisionsprüfungseinheit 34 die Verstellsollwert-Blockiereinheit 36 darüber, dass keine Möglichkeit existiert, dass eine Kollision hervorgerufen werden könnte. In diesem Fall liefert die Verstellsollwert-Blockiereinheit 36 den von der Verzögerungseinheit ausgegebenen Verstellsollwert, ohne ihn zu blockieren, an die jeweiligen Achsenantriebseinheiten 17x und 17z. Daher kann sich die Werkzeugmaschine kontinuierlich in den Richtungen sowohl der X-Achse als auch der Z-Achse bewegen.
  • Nachfolgend wird unter Bezugnahme auf die 8a bis 8d eine Betriebsweise der Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform zur allgemeinen Erläuterung beschrieben, wie sie in einer durch die 7b veranschaulichten Situation auszuführen ist. Bei der vorliegenden Ausführungsform zur allgemeinen Erläuterung verfügen die Beschleunigungs/Verzögerungs-Einheiten 18x und 18z und die Beschleunigungs/Verzögerungs-Simulationseinheit 30 über eine ähnliche Zeitkonstante, die aus acht Perioden besteht.
  • Im dargestellten Fall tritt im ersten Block N010 eine Kollision auf (d. h. in einem Sollpfad, der sich von einer Position P[–1] bis zu einer Position P[0] erstreckt). Wenn ermittelt wird, dass im Block N010 irgendeine Kollision auftreten könnte, führt die Funktionserzeugungseinheit 16 für diesen Block N010 keine Funktionserzeugungsverarbeitung aus. Daher stoppt die Werkzeugmaschine an der Position P[–1]. Da im Block N010 keine Kollision auftritt, führt die Funktionserzeugungseinheit 16 für diesen Block N010 eine Funktionserzeugungsverarbeitung aus, so dass sich die Werkzeugmaschine von der Position P[–1] zur Position P[0] bewegen kann. Die Funktionserzeugungseinheit 16 gibt in sequenziellen Funktionserzeugungsperioden fortlaufend Sollwerte (d. h. ...Q[–3], Q[–2], Q[–1] und Q[0] an die Verzögerungseinheit 32 und die Beschleunigungs/Verzögerungs-Simulationseinheit 30 aus.
  • Die Beschleunigungs/Verzögerungs-Simulationseinheit 30 empfängt die Sollwerte (d. h. ...Q[–2], Q[–1] und Q[0]) in jeweiligen Funktionserzeugungsperioden, und sie führt fortlaufend eine Beschleunigungs-/Verzögerungsverarbeitung aus und gibt Sollpositionen (d. h. ...R[–2], R[–1] und R[0]) an die zweite Kollisionsprüfungseinheit 34 aus.
  • Die zweite Kollisionsprüfungseinheit 34 prüft, in jeweiligen Funktionserzeugungsperioden, auf irgendwelche Kollisionen, die im Pfad auftreten können, der die Sollpositionen R[–3] → R[–2], R[–2] → R[–1] und R[–1] → R[0] verbindet. Beim dargestellten Beispiel tritt entlang dem Simulationspfad keine Kollision auf. Daher überträgt die Verstellsollwert-Blockiereinheit 36 jedes Ausgangssignal der Verzögerungseinheit 32 an die jeweiligen Achsenantriebseinheiten 17x und 17z. Das Ausgangssignal der Verzögerungseinheit 32 ist ein Sollwert, der um eine vorbestimmte Zeit, die der Zeitkonstante (d. h. acht Perioden) entspricht, zuvor empfangen wurde. Das heißt, dass die Verzögerungseinheit 32 die Sollwerte ...Q[–10] → Q[–9] → Q[–8] aufeinanderfolgend ausgibt. Die 8a veranschaulicht ein Ergebnis der Funktionserzeugungsverarbeitung für den Block N010. In der 8a kennzeichnet eine Darstellung des Werkzeugs den Zustand der Kollisionsprüfung in der Funktionserzeugungsperiode für Q[0], d. h. auf dem Pfad, der sich von der Position R[–1] zur Position R[0] erstreckt. In der 8a sind die an die jeweiligen Achsenantriebseinheiten 17x und 17z ausgegebenen Sollpositionen Q[–10], Q[–9] und Q[–8] durch weiße Kreise gekennzeichnet. Genauer gesagt, ist zum in der 8a veranschaulichten Zeitpunkt das Ziel, das der Kollisionsprüfung durch die zweite Kollisionsprüfungseinheit 34 in der Funktionserzeugungsperiode für Q[0] zu unterziehen ist, der Pfad, der sich von der Position R[–1] zur Position R[0] erstreckt. In diesem Fall gibt die Motoreinheit 22 den Sollwert Q[–8] aus, der zu keinerlei Kollision führt. Daher überträgt die Verstellsollwert-Blockiereinheit 36 den Sollwert Q[–8] an die jeweiligen Achsenantriebseinheiten 17x und 17z.
  • Im vorliegenden Fall tritt im nächsten Block N011 keine Kollision auf (d. h. im Sollpfad, der sich von der Position P[0] zu einer Position P[1] erstreckt). Daher startet die Funktionserzeugungseinheit 16 die Funktionserzeugungsverarbeitung für den nächsten Block N011. Auf dem die Positionen R[0] → R[1] → R[2] verbindenden Simulationspfad tritt zum Zeitpunkt, zu dem die Funktionserzeugungsverarbeitung für den Sollwert Q[2] abgeschlossen ist, keine Kollision auf. Daher überträgt, wie oben beschrieben, die Verstellsollwert-Blockiereinheit 36 die Sollwerte Q[–8], Q[–7] und Q[–6] aufeinanderfolgend an die jeweiligen Achsenantriebseinheiten 17x und 17z. Die 8b veranschaulicht das Ergebnis der Operation zum Zeitpunkt, zu dem die Funktionserzeugung für Q[2] im Block N011 abgeschlossen ist. In der 8b kennzeichnet eine Darstellung des Werkzeugs den Zustand der Kollisionsprüfung. In der 8b sind die an die jeweiligen Achsenantriebseinheiten 17x und 17z ausgegebenen Sollpositionen Q[–7] und Q[–6] durch weiße Kreise gekennzeichnet. Genauer gesagt, entsprechen, zum in der 8b veranschaulichten Zeitpunkt, Ziele, die der Kollisionsprüfung durch die zweite Kollisionsprüfungseinheit 34 in den Funktionserzeugungsperioden für Q[1] und Q[2] zu unterziehen sind, dem sich von der Position R[0] zur Position R[1] erstreckenden Pfad bzw. dem sich von der Position R[1] zur Position R[2] erstreckenden Pfad. Die diesen Zielen entsprechenden Ausgangssignale der Verzögerungseinheit 32 sind die Sollwerte Q[–7] und Q[–6]. Daher tritt keine Kollision auf. Die Verstellsollwert-Blockiereinheit 36 überträgt die Sollwerte Q[–7] und Q[–6] an die jeweiligen Achsenantriebseinheiten 17x und 17z.
  • Dann gibt die Funktionserzeugungseinheit 16 in der nächsten Funktionserzeugungsverarbeitung einen Sollwert Q[3] aus, und sie erhält einen Simulationspfad, der sich von der Position R[2] zur Position R[3] erstreckt. Jedoch erkennt, gemäß dem dargestellten Beispiel, die zweite Kollisionsprüfungseinheit 34 eine Kollision, wie sie auf dem erhaltenen Simulationspfad auftreten kann (siehe die 8c). In diesem Fall empfängt die Verstellsollwert-Blockiereinheit 36 von der zweiten Kollisionsprüfungseinheit 34 eine Mitteilung betreffend die mögliche Kollision. Die Verstellsollwert-Blockiereinheit 36 hindert die Verzögerungseinheit 32 daran, vom Sollwert Q[–6] auf einen Sollwert Q[–5] zu wechseln. Genauer gesagt, bleibt der an die jeweiligen Achsenantriebseinheiten 17x und 17z gelieferte Positionssollwert gleich (d. h. Q[–6]. Da die Maschine diesen Zustand beibehält, wenn die Verstellsollwert-Blockiereinheit 36 einmal das Ausgangssignal der Verzögerungseinheit 32 blockiert hat, konvergiert die Bewegung der Werkzeugmaschine auf Q[–6] und stoppt dort. Wie es in der 8d dargestellt ist, bleibt die Istposition des Werkzeugs die dem Sollwert Q[–6] entsprechende Position. Anders gesagt, kann die vorliegende Ausführungsform zur allgemeinen Erläuterung verhindern, dass das Bearbeitungswerkzeug mit irgendeinem Kollisionsobjekt auf dem Istverstellpfad kollidiert.
  • Die 2 zeigt eine Konfiguration einer in eine numerisch gesteuerte Maschine eingebauten Kollisionsverhinderungsvorrichtung gemäß einer anderen Ausführungsform zur allgemeinen Erläuterung der Erfindung. In der 2 sind Baukomponenten, die denen der in der 6 dargestellten herkömmlichen Technik ähnlich sind, unter Verwendung derselben Bezugszahlen und Namen gekennzeichnet.
  • Ähnlich wie das oben beschriebene herkömmliche Gerät führt die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform zur allgemeinen Erläuterung entlang einer Sollbahn eine Kollisionsprüfung aus. Zusätzlich führt die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform zur allgemeinen Erläuterung eine Kollisionsprüfung entlang einer abgewichenen Verstellbahn aus. Zu diesem Zweck wählt die unten beschriebene lokale Simulationseinheit 40 die der Kollisionsprüfung zu unterziehende abgewichene Verstellbahn aus mehreren zuvor erhaltenen Bahnen aus. In diesem Fall liegt die durch die lokale Simulationseinheit 40 auszuwählende abgewichene Verstellbahn in einem vorbestimmten, zulässigen Bereich.
  • Im Ergebnis führt, wenn ermittelt wird, dass in einem Zielblock irgendeine Kollision auftreten kann, die Kollisionsverhinderungsvorrichtung keine Funktionserzeugungsverarbeitung für den Zielblock aus, sondern sie stoppt das Bearbeitungswerkzeug, bevor es mit einem Kollisionsobjekt kollidiert. Wenn ermittelt wird, dass im Zielblock keine Kollision auftritt, führt die Kollisionsverhinderungsvorrichtung die Funktionserzeugungsverarbeitung für den Zielblock aus, und sie gibt für jede Funktionserzeugungsperiode einen Verstellsollwert aus.
  • Nachfolgend wird unter Bezugnahme auf die 9a bis 9d der Betrieb der Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform zur allgemeinen Erläuterung beschrieben, wie er auszuführen ist, wenn durch das Teileprogramm 10 ein in der 7a dargestellter Pfad angewiesen wird.
  • Die lokale Simulationseinheit 40 enthält eine lokale Funktionserzeugungs-Simulationseinheit 42 und eine lokale Beschleunigungs/Verzögerungs-Simulationseinheit 44. Die lokale Funktionserzeugungs-Simulationseinheit 42 kann entsprechend einem Verfahren, das dem durch die Funktionserzeugungseinheit 16 verwendeten ähnlich ist, eine Interpolation entlang einem Sollverstellpfad ausführen. Die durch die lokale Funktionserzeugungs-Simulationseinheit 42 auszuführende Interpolation ist auf die Zielposition P[0] und deren Umgebung eingeschränkt. Diesbezüglich unterscheidet sich die lokale Funktionserzeugungs-Simulationseinheit 42 von der Funktionserzeugungseinheit 16, die eine Interpolation für den gesamten Sollbereich des Zielblocks ausführt. Wie es in der 9a dargestellt ist, führt die lokale Funktionserzeugungs-Simulationseinheit 42 eine Interpolation in einem begrenzten Bereich aus, der sich um einen einer Beschleunigungs/Verzögerungs-Zeitkonstante T entsprechenden Wert von der Zielposition P[0] in der Richtung zu P[–1] hin, erstreckt, sowie in einem eingeschränkten Bereich, der sich um denselben, der Beschleunigungs/Verzögerungs-Zeitkonstante T entsprechenden Wert von der Zielposition P[0] in der Richtung zu P[+1] hin erstreckt. So kann die lokale Funktionserzeugungs-Simulationseinheit 42 Interpolationspunkte im Bereich von Q[–T] bis Q[+T] bestimmen. Gemäß dem in der 9a dargestellten Beispiel entspricht die Beschleunigungs/Verzögerungs-Zeitkonstante T dem Wert 8 (d. h. T = 8).
  • Die lokale Beschleunigungs/Verzögerungs-Simulationseinheit 44 führt an den Interpolationspunkten eine Beschleunigungs-/Verzögerungsverarbeitung entsprechend einem Verfahren aus, das dem durch die Beschleunigungs/Verzögerungs-Einheiten 18x und 18z verwendeten ähnlich ist. Bei dieser Beschleunigungs-/Verzögerungsverarbeitung verwendet die lokale Beschleunigungs/Verzögerungs-Simulationseinheit 44 eine Beschleunigungs/Verzögerungs-Zeitkonstante, die derjenigen ähnlich ist, die von den Beschleunigungs/Verzögerungs-Einheiten 18x und 18z verwendet wird, um die gesamte Verarbeitung für jeweilige Achsen betreffend die Beschleunigung/Verzögerung auszuführen. Die lokale Beschleunigungs/Verzögerungs-Simulationseinheit 44 führt für jeden in der 9b dargestellten Interpolationspunkt Q eine Beschleunigungs-/Verzögerungsverarbeitung aus. Anders gesagt, führen die Beschleunigungs/Verzögerungs-Einheiten 18x und 18z fortlaufend im gesamten Sollbereich des Zielblocks eine Beschleunigungs-/Verzögerungsverarbeitung an interpolierten Positionen aus. Im Ergebnis kann die lokale Beschleunigungs/Verzögerungs-Simulationseinheit 44 der Beschleunigungs-/Verzögerungsverarbeitung unterzogene Sollpunkte R[–T'] bis R[+T'] bestimmen, wie in der 9b dargestellt (bei der vorliegenden Ausführungsform zur allgemeinen Erläuterung gilt T' = T/2).
  • Der Grund, weswegen die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform zur allgemeinen Erläuterung zwei ”lokale” Simulationseinheiten enthält, wie oben beschrieben, ist der, dass eine ”Abweichung” nur in der Nähe einer Position auftritt, in der ein Wechsel der Verstellrichtung erfolgt, und dass die Verstellbahn an einem entfernten Ort mit der Sollbahn übereinstimmt. Daher ist es überflüssig, die Simulation an einem derart entfernten Ort vorab auszuführen.
  • Eine Prüfziel-Auswähleinheit 46 wählt aus den Sollpunkten R[–T'] bis R[+T'] solche Sollpunkte aus, die der Kollisionsprüfung zu unterziehen sind. Die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform zur allgemeinen Erläuterung stellt einen Toleranzwert bereit, der dazu verwendet werden kann, eine Bahn als gerade Linie anzusehen (d. h., es handelt sich um einen Linearisierungstoleranzwert 48). Die Prüfziel-Auswahleinheit 46 schließt jeden Punkt innerhalb des zulässigen Bereichs aus den Kandidaten aus, die der Kollisionsprüfung zu unterziehen sind. Demgemäß kann die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform zur allgemeinen Erläuterung die für die Kollisionsprüfung erforderliche Berechnungszeit verkürzen. Nachfolgend wird ein detailliertes Verfahren beschrieben. Die Prüfziel-Auswähleinheit 46 liefert die ausgewählten Sollpunkte als geraden Pfad, der in der Verstellrichtung ausgerichtet ist, an die Kollisionsprüfungseinheit 26.
  • Die Kollisionsprüfungseinheit 26 führt eine Kollisionsprüfung auf Grundlage des eingegebenen Pfads und auf Grundlage von Positionsdaten entsprechend einem Verfahren aus, das demjenigen ähnlich ist, wie es bei der in der 6 dargestellten herkömmlichen Technik verwendet wird.
  • Ähnlich wie bei der oben beschriebenen Verarbeitung für die Zielposition P[0] kann die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform zur allgemeinen Erläuterung fortlaufend eine Kollisionsprüfungsverarbeitung für alle durch das Teileprogramm 10 spezifizierten Zielpositionen P ausführen.
  • Die Prüfziel-Auswähleinheit 46 wählt Sollpunkte gemäß dem folgenden Verfahren aus. Als Erstes sieht, wenn der Abstand zwischen P[0] und R[0] den Linearisierungstoleranzwert 48 entspricht oder kleiner ist (wenn eine Abweichung extrem klein ist), die Prüfziel-Auswähleinheit 46 nur den Sollpunkt P[0] des Programms als Prüfziel an. (Das erzielte Ergebnis ist dem bei der herkömmlichen Technik ähnlich) Wenn der Abstand zwischen P[0] und R[0] größer als der Linearisierungstoleranzwert 48 ist, wählt die Prüfziel-Auswähleinheit 46 aus der Gruppe der Punkte R Prüfziele aus. In diesem Fall wählt die Prüfziel-Auswähleinheit 46 die beiden Endpunkte R[–T'] und R[+T'] im Verarbeitungsbereich als Prüfziele aus, da diese Endpunkte bei der folgenden Verarbeitung als Start- und als Endpunkt dienen. Dann startet die Prüfziel-Auswähleinheit 46 die Verarbeitung gemäß einem Zweiteilungsverfahren, bei dem die zwei Punkte R[–T'] und R[+T'] als Anfangswerte eingestellt sind. Als Erstes erhält die Prüfziel-Auswähleinheit 46 den Abstand vom zentralen Punkt R[0] (d. h., dem Mittelpunkte, wie er zwischen den oben angegebenen Punkten R[–T'] und R[+T'] vorhanden ist) zu einem Liniensegment R[–T']·R[+T'] (d. h., eine gerade Linie, die die oben beschriebenen Punkte R[–T'] und R[+T'] verbindet). Wenn der erhaltene Abstand dem Linearisierungstoleranzwert 48 entspricht, wählt die Prüfziel-Auswähleinheit 46 den Punkt R[0] nicht als Prüfziel aus, und sie beendet die Verarbeitung.
  • Wenn der erhaltene Abstand größer als der Linearisierungstoleranzwert 48 ist, wählt die Prüfziel-Auswähleinheit 46 den Punkt R[0] als Prüfziel aus. Ferner führt die Prüfziel-Auswähleinheit 46 im ersten Teil vom Punkt R[–T'] zum Punkt R[0] eine ähnliche Verarbeitung aus, um in diesem Bereich existierende Punkte R zu prüfen. Parallel dazu fuhrt die Prüfziel-Auswähleinheit 46 eine ähnliche Verarbeitung im zweiten Teil im Bereich vom Punkt R[0] zum Punkt R[+T'] aus, um in diesem Bereich existierende Punkte R zu prüfen. Die Prüfziel-Auswähleinheit 46 beendet die oben beschriebene Verarbeitung gemäß dem Zweiteilungsverfahren, wenn der zwischen zwei Endpunkten existierende Mittelpunkt nicht als Prüfziel ausgewählt wird oder wenn kein zu prüfender Mittelpunkt vorliegt.
  • 9c veranschaulicht ein praktisches Beispiel. Wenn der Linearisierungstoleranzwert 48 der durch einen Pfeil Th gekennzeichneten Länge entspricht, wählt die Prüfziel-Auswähleinheit 46 aus der Gruppe der Punkte R als Prüfziele diejenigen Punkte aus, die jeweils durch eine schwarze Rhomboedermarkierung ♦ gekennzeichnet sind. Beispielsweise ist der Abstand d2 zwischen dem Punkt R[–2] und dem Liniensegment R[–4]·R[0] kleiner als der Linearisierungstoleranzwert (Th). Daher wählt die Prüfziel-Auswähleinheit 46 den Punkt R[–2] nicht als Prüfziel aus.
  • Als Ergebnis der oben beschriebenen, von der Prüfziel-Auswähleinheit 46 ausgeführten Verarbeitung kann die Kollisionsprüfungseinheit 26 gemäß der vorliegenden Ausführungsform zur allgemeinen Erläuterung eine Kollisionsprüfung entlang einem in der 9d fett gekennzeichneten Pfad P[–1] → R[–4] → R[0] → R[4] ausführen. Anders gesagt, kann die Kollisionsprüfungseinheit 26 eine Kollisionsprüfung entlang einem Pfad ausführen, der benachbart zu einem Istverstellpfad des Werkzeugs liegt.
  • Die 3 zeigt eine Konfiguration einer in eine numerisch gesteuerte Maschine eingebauten Kollisionsverhinderungsvorrichtung gemäß einer anderen Ausführungsform der Erfindung, die den Anspruch 1 betrifft. In der 3 sind Baukomponenten, die denen bei der in der 6 dargestellten herkömmlichen Technik ähnlich sind, unter Verwendung derselben Bezugszahlen und Namen gekennzeichnet.
  • Ähnlich wie das oben beschriebene herkömmliche Gerät führt die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform eine Kollisionsprüfung an einer Sollbahn aus. Wenn ermittelt wird, dass in einem Zielblock eine Kollision auftreten kann, führt die Kollisionsverhinderungsvorrichtung keine Funktionserzeugungsverarbeitung für den Zielblock aus, sondern sie stoppt das Bearbeitungswerkzeug, bevor es mit einem Kollisionsobjekt kollidiert. Wenn andererseits ermittelt wird, dass im Zielblock keine Kollision auftritt, führt die Kollisionsverhinderungsvorrichtung eine Funktionserzeugungsverarbeitung entlang einem Pfad aus, der durch die unten beschriebene Sollpfad-Änderungseinheit 56 gemäß der Erfindung verändert wurde, und sie gibt für jede Funktionserzeugungsperiode einen Verstellsollwert aus.
  • Eine Simulationseinheit 50 enthält eine Funktionserzeugungs-Simulationseinheit 52 und eine Beschleunigungs/Verzögerungs-Simulationseinheit 54. Die Funktionserzeugungs-Simulationseinheit 52 führt eine Verarbeitung aus, die derjenigen ähnlich ist, wie sie von der Funktionserzeugungseinheit 16 gemäß der oben beschriebenen herkömmlichen Technik ausgeführt wird. Die Beschleunigungs/Verzögerungs-Simulationseinheit 54 führt eine Verarbeitung aus, die derjenigen ähnlich ist, wie sie von den in den Achsenantriebseinheiten 17x und 17z vorhandenen Beschleunigungs/Verzögerungs-Einheiten 18x und 18z ausgeführt wird. Die Simulationseinheit 50 kann eine Abweichung einer Verstellbahn in Bezug auf eine Sollbahn abschätzen.
  • Die Sollpfad-Änderungseinheit 56 erhält die Differenz zwischen der von der Funktionserzeugungs-Simulationseinheit 52 ausgegebenen Sollbahn und der ”abweichenden” Verstellbahn, wie sie durch die Beschleunigungs/Verzögerungs-Simulationseinheit 54 erhalten wird. Dann erzeugt die Sollpfad-Änderungseinheit 56 auf Grundlage der erhaltenen Differenz eine neue Sollbahn, um die abgeschätzte ”Abweichung” zu beseitigen. Wenn die Kollisionsprüfungseinheit 26 ermittelt, dass keine Kollision auftritt, erzeugt die Funktionserzeugungseinheit 16 funktionsgemäß die neue Sollbahn. Wenn die Kollisionsprüfungseinheit 26 ermittelt, dass eine Kollision auftreten könnte, hindert die Ausführungsverwaltungseinheit 28 die Funktionserzeugungseinheit 16 am Ausführen der Interpolationsverarbeitung, und sie erzeugt auf ähnliche Weise wie bei der herkömmlichen Technik eine Warnung.
  • Nachfolgend wird unter Bezugnahme auf die 10a bis 10d eine Betriebsweise der Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform beschrieben, wie sie in der in der 7b veranschaulichten Situation auszuführen ist. Bei der vorliegenden Ausführungsform verfügen die Beschleunigungs/Verzögerungs-Einheiten 18x und 18z und die Beschleunigungs/Verzögerungs-Simulationseinheit 54 über eine ähnliche Zeitkonstante aus acht Perioden.
  • Die 10a veranschaulicht ein Simulationsergebnis, wie es durch die oben beschriebenen Simulationseinheiten 52 und 54 erzeugt wird, wobei jedoch der dargestellte Bereich auf die Daten in der Nähe des Punkts P[0] eingeschränkt ist. Die Programminterpretiereinheit 12 interpretiert sowohl den Block N010 als auch den Block N011, um funktionsgemäß erzeugte Pfaddaten sowie Ausführungsdaten in Bezug auf die Vorschubgeschwindigkeit zu bestimmen. Die Funktionserzeugungs-Simulationseinheit 52 führt auf Grundlage der durch die Programminterpretiereinheit 12 bestimmten Daten eine Funktionserzeugung aus, und sie gibt eine Gruppe von Punkten Q[n] aus. Die Beschleunigungs/Verzögerungs-Simulationseinheit 54 führt an dieser Gruppe von Punkten Q[n] eine Beschleunigungs-/Verzögerungsverarbeitung aus, um eine Gruppe von Punkten R[n] auszugeben.
  • Die Sollpfad-Änderungseinheit 56 empfängt die Gruppe der Punkte Q[n] und die Gruppe der Punkte R[n], wie in der 10a dargestellt, und sie misst für jeden Punkte Q die Abweichung. Die Abweichung für jeden der Punkt Q kann als Abstand vom Punkt Q zu einem Pfad, der zueinander benachbarte Punkte R verbindet, definiert werden. Ein in der 10b dargestellter Vektor S[n] repräsentiert die gemessene Abweichung für den Punkt Q. In der 10b zeigen die Punkte Q[–5], Q[–4], Q[4] und Q[5] keine Abweichung (d. h., Abweichung = 0), während die Punkte Q[–3], Q[–2], Q[2] und Q[3] kleine und vernachlässigbare Abweichungen aufweisen (in der 10b nicht dargestellt).
  • Anschließend addiert die Sollpfad-Änderungseinheit 56 zu jedem Punkt Q[n] einen Vektor S'[n], um einen Punkt T[n] zu erzeugen. In diesem Fall zeigen der Vektor S'[n] und der Vektor S[n] dieselbe Größe, aber entgegengesetzte Richtungen, wie es in der 10c dargestellt ist.
  • Die Sollpfad-Änderungseinheit 56 ersetzt die durch das Teilprogramm 10 definierte Sollbahn durch die durch die Gruppe der Punkte T definierte Bahn. Die Gruppe der Punkte T wird im Puffer 14 als neue Bahn gespeichert. Die Funktionserzeugungseinheit 16 führt für die durch die Gruppe der Punkte T definierte neue Bahn eine Funktionserzeugung aus, und sie gibt die neue Bahn an die jeweiligen Achsenantriebseinheiten 17x und 17z aus. Die Achsenantriebseinheiten 17x und 17z führen für die neue Bahn eine Beschleunigungs-/Verzögerungsverarbeitung aus, um eine neue Verstellbahn zu erhalten (d. h. einen Pfad, der aufeinanderfolgenden Punkte verbindet, die in der 10d jeweils durch eine schwarze Rhomboedermarkierung ♦ gekennzeichnet ist), deren Abweichung ausreichend kleiner als die der Sollbahn gemäß dem Programm ist. Kurz gesagt, kann die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform den Abweichungswert einer Istverstellbahn relativ zur durch das Teileprogramm 10 definierten Sollbahn verringern. Daher kann, im Vergleich zum herkömmlichen Gerät, die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform selbst dann, wenn die Kollisionsprüfungseinheit 26 für die durch das Teileprogramm 10 definierte Sollbahn eine Kollisionsprüfung ausführt, zuverlässig verhindern, dass das Bearbeitungswerkzeug mit irgendeinem Kollisionsobjekt kollidiert.
  • Die 4 zeigt die Konfiguration einer in eine numerisch gesteuerte Maschine eingebauten Kollisionsverhinderungsvorrichtung gemäß einer anderen Ausführungsform der Erfindung, die den Anspruch 2 betrifft. In der 4 sind Baukomponenten, die denen der in der 6 dargestellten herkömmlichen Art ähnlich sind, unter Verwendung derselben Bezugszahlen und Namen gekennzeichnet.
  • Ähnlich wie beim oben beschriebenen herkömmlichen Gerät führt die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform eine Kollisionsprüfung entlang einer Sollbahn aus. Wenn ermittelt wird, dass in einem Zielblock eine Kollision auftreten kann, führt die Kollisionsverhinderungsvorrichtung für den Zielblock keine Funktionserzeugungsverarbeitung aus, und sie stoppt das Bearbeitungswerkzeug, bevor es mit einem Kollisionsobjekt kollidiert.
  • Wenn andererseits ermittelt wird, dass im Zielblock keine Kollision auftritt, führt die Kollisionsverhinderungsvorrichtung für den Zielblock eine Funktionserzeugungsverarbeitung aus, und sie gibt für jede Funktionserzeugungsperiode einen Verstellsollwert aus. Die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform stellt die Vorschubgeschwindigkeit entsprechend einem von einer Vorschubeinheit 62 mit Abweichungsunterdrückung zugeführten Befehl ein, um das Ausmaß der Abweichung auf einen Wert zu verringern, der einem Toleranzwert 64 oder weniger entspricht, bevor die Funktionserzeugungseinheit 16 eine Funktionserzeugung ausführt. Die Vorschubgeschwindigkeit, die dazu erforderlich ist, das Ausmaß der Abweichung auf einen Wert zu verringern, der dem Toleranzwert 64 entspricht oder kleiner ist, wird als ”Vorschubgeschwindigkeit zur Abweichungsunterdrückung” bezeichnet.
  • Im Allgemeinen kann eine Abweichung dadurch verursacht werden, dass die Beschleunigungs-/Verzögerungsverarbeitung von der Vorschubgeschwindigkeit, der Beschleunigungs/Verzögerungs-Zeitkonstante und einem Richtungsänderungswinkel abhängt. Der Richtungsänderungswinkel ist ein Winkel, wie er an einer Position gebildet wird, an der die Verstellrichtung geändert wird. Gemäß dem in der 7a dargestellten Beispiel ist der Richtungsänderungswinkel der Winkel einer Linie, die sich vom Punkt P[0] zum Punkt P[1] in Bezug auf eine Linie vom Punkt P[–1] zum Punkt P[0] erstreckt. Genauer gesagt, entspricht der Richtungsänderungswinkel 60 Grad. Der Richtungsänderungswinkel kann bestimmt werden, wenn einmal ein Sollpfad gemäß dem Programm bestätigt ist. Die Beschleunigungs/Verzögerungs-Zeitkonstante muss einen ähnlichen Wert aufweisen, wie er durch die in den Achsenantriebseinheiten 17x und 17z vorhandenen Beschleunigungs/Verzögerungs-Einheiten 18x und 18z verwendet wird. Daher kann die Beschleunigungs/Verzögerungs-Zeitkonstante nicht verändert werden. Demgemäß stellt die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform die Vorschubgeschwindigkeit ein, um das Ausmaß der Abweichung auf einen Wert innerhalb eines zulässigen Bereichs zu verringern. Eine Einheit 60 zum Bestimmen der Vorschubgeschwindigkeit zur Abweichungsunterdrückung berechnet die Vorschubgeschwindigkeit zur Abweichungsunterdrückung in Bezug auf den Sollpfad (d. h. den Richtungsänderungswinkel) entsprechend der folgenden Gleichung 1. [Zahlenausdruck 1]
    Figure DE102009048252B4_0002
  • ε:
    Toleranzwert
    τ:
    Beschleunigungs/Verzögerungs-Zeitkonstante
    θ:
    Richtungsänderungswinkel
  • Der Toleranzwert, der einen zulässigen Abweichungswert angibt, kann vorab auf Grundlage von Eigenschaften (beispielsweise eines Fehlers bei der Kollisionsprüfung) betreffend die Funktion und die Leistungsfähigkeit der Kollisionsprüfungseinheit 26 bestimmt werden.
  • Die Vorschubeinheit 62 mit Abweichungsunterdrückung gibt der Funktionserzeugungseinheit 16 eine Vorschubgeschwindigkeit zur Abweichungsunterdrückung an, bevor diese eine Funktionserzeugung ausführt, die eine Richtungsänderung verursacht. Die Funktionserzeugungseinheit 16 führt die Funktionserzeugung mit einer angewiesenen Geschwindigkeit in einem Bereich aus, der sich ausgehend von einem Richtungsänderungspunkt über ein mit fxτ vergleichbares Stück sowohl in der Vorwärts- als auch der Rückwärtsrichtung erstreckt. Daher kann die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform das Ausmaß der Abweichung eines Istverstellpfads in der Nähe des Richtungsänderungspunkts auf einen Wert verringern, der dem Toleranzwert entspricht oder kleiner ist.
  • Daher kann, im Vergleich zum herkömmlichen Gerät, die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform selbst dann, wenn die Kollisionsprüfungseinheit 26 entlang dem durch das Teileprogramm 10 definierten Sollpfad eine Kollisionsprüfung ausführt, zuverlässig verhindern, dass das Bearbeitungswerkzeug mit einem Kollisionsobjekt kollidiert.
  • Die 5 zeigt eine Konfiguration einer in eine numerisch gesteuerte Maschine eingebauten Kollisionsverhinderungsvorrichtung gemäß einer anderen Ausführungsform der Erfindung, die den Anspruch 3 betrifft. In der 5 sind Baukomponenten, die denen bei der in der 6 dargestellten herkömmlichen Technik ähnlich sind, unter Verwendung derselben Bezugszahlen und Namen gekennzeichnet.
  • Ähnlich wie beim oben beschriebenen herkömmlichen Gerät führt die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform entlang einer Sollbahn eine Kollisionsprüfung aus. Wenn ermittelt wird, dass in einem Zielblock eine Kollision auftreten kann, führt die Kollisionsverhinderungsvorrichtung für den Zielblock keine Funktionserzeugungsverarbeitung aus, sondern sie stoppt das Bearbeitungswerkzeug, bevor es mit einem Kollisionsobjekt kollidiert.
  • Wenn andererseits ermittelt wird, dass im Zielblock keine Kollision auftritt, wartet die Kollisionsverhinderungsvorrichtung für eine vorbestimmte Zeit, die der Anzahl der Funktionserzeugungsperioden entspricht, wie sie durch eine unten beschriebene Warteverwaltungseinheit 70 zur Abweichungsunterdrückung gemäß der vorliegenden Ausführungsform angewiesen wird. Nachdem die oben angegebene Zeit verstrichen ist, führt die Kollisionsverhinderungsvorrichtung eine Funktionserzeugungsverarbeitung für den Zielblock aus, und sie gibt für jede Funktionserzeugungsperiode einen Verstellsollwert aus.
  • Eine Abweichungsunterdrückungswarteanzahltabelle 72 speichert Zahlendaten in Bezug auf die Abweichungsunterdrückungswarteanzahl abhängig vom Richtungsänderungswinkel. Die Tabelle 1 zeigt ein Beispiel der Abweichungsunterdrückungswarteanzahltabelle 72. Die Warteanzahl ist ein Wert, der in Einheiten der Funktionserzeugungsperiode gezählt werden kann. Wenn die Warteanzahl 0 ist, führt die Kollisionsverhinderungsvorrichtung eine Funktionserzeugung ohne jegliche Warteperiode aus. Das heißt, dass die Kollisionsverhinderungsvorrichtung nach dem Abschließen der Funktionserzeugungsverarbeitung für den aktuellen Block in der nächsten Funktionserzeugungsperiode die Funktionserzeugungsverarbeitung für den folgenden Block startet. Wenn die Warteanzahl 1 ist, überspringt die Kollisionsverhinderungsvorrichtung die nächste Funktionserzeugung einmal. Genauer gesagt, führt die Kollisionsverhinderungsvorrichtung nach dem Abschließen der Funktionserzeugungsverarbeitung für den aktuellen Block in der nächsten Funktionserzeugungsperiode keinerlei Funktionserzeugung aus. Dann startet die Kollisionsverhinderungsvorrichtung, in der auf die übersprungene Periode folgenden Periode, die Funktionserzeugung für den nächsten Block. [Tabelle 1]
    (Schlüssel) Richtungsänderungswinkel θ Grad (Daten) Warteanzahl
    0 0
    10 0
    20 1
    30 2
    : :
    170 8
    180 8
  • Eine Warteanzahltabelle-Erzeugungseinheit 74 wertet das Ausmaß der Abweichung durch Simulieren der Beschleunigungs/Verzögerungs-Einheiten 18x und 18z für die jeweiligen Achsen, die die Faktoren mit dem größten Einfluss auf die Abweichung sind, und die Vorstufen derselben zur positionierenden Funktionserzeugung aus. Dann erzeugt die Warteanzahltabelle-Erzeugungseinheit 74 die Abweichungsunterdrückungswarteanzahltabelle 72 auf Grundlage des erhaltenen Auswertungsergebnisses. Die Warteanzahltabelle-Erzeugungseinheit 74 kann nicht nur die Verarbeitung simulieren, sondern sie kann auch zuverlässig das Ausmaß der Abweichung unter Verwendung geeigneter Parameter (z. B. aktuelle Beschleunigungs/Verzögerungs-Zeitkonstante bei der Beschleunigungs-/Verzögerungsverarbeitung sowie aktuelle Vorschubgeschwindigkeit bei der Funktionserzeugung) auswerten. Nachfolgend wird eine Prozedur für die durch die Warteanzahltabelle-Erzeugungseinheit 74 auszuführende Verarbeitung detailliert beschrieben.
  • Die oben beschriebene Simulation erfordert einen großen Rechenumfang. Jedoch kann die Warteanzahltabelle-Erzeugungseinheit 74 die erforderlichen Berechnungen als Teil einer Initialisierungsverarbeitung ausführen. Daher unterbricht die oben beschriebene Simulation den tatsächlichen Betrieb der numerisch gesteuerten Maschine (z. B. Operationen in einem mit der Interpretation in Zusammenhang stehenden Teil und einem mit der Ausführung in Zusammenhang stehenden Teil, wie unten beschrieben) nicht wesentlich.
  • Eine Abweichungsunterdrückungswarteanzahl-Ermittlungseinheit 76 wählt aus der Abweichungsunterdrückungswarteanzahltabelle 72 eine dem Richtungsänderungswinkel entsprechende Warteanzahl aus. Der Richtungsänderungswinkel entspricht einer Winkeländerung in der Verstellrichtung zwischen dem aktuellen und dem vorigen Block. Wenn beispielsweise die Verstellrichtung für den aktuellen Block mit derjenigen für den vorigen Block identisch ist, entspricht der Richtungsänderungswinkel 0 Grad. Wenn die Verstellrichtung für den aktuellen Block derjenigen für den vorigen Block entgegengesetzt ist, entspricht der Richtungsänderungswinkel 180 Grad. Die Verstellrichtung kann unter Verwendung des Verstellvektors ausgedrückt werden, der einem der Ausführungsdatenwerte entspricht. Die in der Tabelle 1 aufgelisteten Richtungsänderungswinkel sind diskrete Werte. Wenn der Richtungsänderungswinkel 15 Grad beträgt, wählt die Abweichungsunterdrückungswarteanzahl-Ermittlungseinheit 76 die 20 Grad entsprechende Warteanzahl aus, da dieser Winkel am dichtesten bei 15 Grad liegt. Die ausgewählte Warteanzahl wird als einer der mit dem aktuellen Block in Zusammenhang stehenden Ausführungsdatenwerte im Puffer 14 gespeichert. Die Abweichungsunterdrückungswarteanzahl-Ermittlungseinheit 76 führt vorab eine der ”Interpretations” verarbeitung ähnliche Verarbeitung für den Block aus. Obwohl eine zeitliche Einschränkung dahingehend besteht, dass die Funktionserzeugung im mit der Interpretation in Zusammenhang stehenden Teil stetig auszuführen ist, ist die durch die Abweichungsunterdrückungswarteanzahl-Ermittlungseinheit 76 auszuführende Verarbeitung im Wesentlichen vernachlässigbar, da sie mit einer Tabellennachschlageverarbeitung vergleichbar ist.
  • Die Warteverwaltungseinheit 70 zur Abweichungsunterdrückung verschiebt die Funktionserzeugungsverarbeitung für den Zielblock unter Bezugnahme auf eine den Ausführungsdaten entsprechende Abweichungsunterdrückungswarteanzahl. Die Warteverwaltungseinheit 70 zur Abweichungsunterdrückung arbeitet auf die Weise, wie sie unter Bezugnahme auf die Abweichungsunterdrückungswarteanzahltabelle 72 beschrieben wurde. Für die Verarbeitung in der Warteverwaltungseinheit 70 zur Abweichungsunterdrückung und der Funktionserzeugungseinheit 16 kann derselbe mit der Ausführung in Zusammenhang stehende Teil verwendet werden. Der mit der Ausführung in Zusammenhang stehende Teil führt eine Verarbeitung mit konstanten Intervallen (die der Funktionserzeugungsperiode entsprechen) aus. Daher muss der mit der Ausführung in Zusammenhang stehende Teil die Verarbeitung innerhalb der konstanten Periode abschließen. Jedoch kann eine derartige zeitliche Einschränkung eingehalten werden, da die oben beschriebene Verarbeitung mit dem Zählen der Warteanzahl vergleichbar ist.
  • Nachfolgend wird unter Bezugnahme auf das in der 11 dargestellte Flussdiagramm und die in den 12a bis 12e dargestellten Diagramme ein Beispiel einer durch die Warteanzahltabelle-Erzeugungseinheit 74 auszuführenden Verarbeitung beschrieben.
  • Die Tabelle speichert Zahlendaten, die jedem Richtungsänderungswinkel θ im Bereich von 0 Grad bis 180 Grad entsprechen. Daher enthält, um fortlaufend für jeden Richtungsänderungswinkel θ eine Warteanzahl zu erhalten, das in der 11 dargestellte Flussdiagramm Schritte S1, S2 und S11 zur Schleifenverarbeitung.
  • In einem Schritt S3 erzeugt die Warteanzahltabelle-Erzeugungseinheit 74, um eine Warteanzahl zu erhalten, einen Richtungsänderungswinkel θ enthaltenden Pfad. Genauer gesagt, erzeugt die Warteanzahltabelle-Erzeugungseinheit 74, wenn ein Richtungsänderungspunkt P[0] mit dem Ursprung in Simulationskoordinatensystem übereinstimmt, einen Referenzpfad, der sich ausgehend vom Minuspunkt P[–1] zum Ursprung P[0] auf der Z-Achse erstreckt, sowie einen in der Richtung geänderten Pfad mit dem Richtungsänderungswinkel θ in Bezug auf den Referenzpfad. Gemäß dem in der 12a dargestellten Beispiel entspricht der Richtungsänderungswinkel des erzeugten Pfads 60 Grad. Der Grund, weswegen der Richtungsänderungspunkt P[0] im Ursprung platziert wird, besteht darin, dass Berechnungen vereinfacht werden können.
  • Als Nächstes erzeugt die Warteanzahltabelle-Erzeugungseinheit 74, in einem Schritt S4 eine Gruppe von Punkten Q durch Simulieren der positionierenden Funktionserzeugung bei einer schnellen Vorschubgeschwindigkeit F. In diesem Fall ist die Anzahl der zum Erhalten des Ausmaßes der Abweichung benötigten Punkte mit einer Zeitkonstanten τ für die nächste Beschleunigungs-/Verzögerungssimulation vergleichbar. Die Hälfte der zu erhaltenden Punkte (d. h. τ/2) liegt auf dem Referenzpfad, der sich vom Punkt P[–1] zum Ursprung P[0] erstreckt. Die andere Hälfte der zu erhaltenden Punkte (d. h. τ/2) liegt auf dem in der Richtung geänderten Pfad, der sich vom Ursprung P[0] zum Punkt P[1] erstreckt. Die 12b veranschaulicht ein Beispiel für den Fall τ = 9.
  • In einem Schritt S5 initialisiert die Warteanzahltabelle-Erzeugungseinheit 74 die Warteanzahl W auf 0, bevor sie die Simulation in Bezug auf die Warteanzahl startet.
  • In einem Schritt S6 führt die Warteanzahltabelle-Erzeugungseinheit 74 eine Beschleunigungs-/Verzögerungssimulation aus. Wenn die Warteanzahl W 0 ist (W = 0), erhält die Warteanzahltabelle-Erzeugungseinheit 74 R[0] als Mittelwert aus der Gruppe von Punkten Q, deren Gesamtanzahl dem Wert τ entspricht. Wenn τ = 9 gilt, berechnet die Warteanzahltabelle-Erzeugungseinheit 74 den Mittelwert der neun Punkte von Q[–4] bis Q[4] (siehe die 12c). Wenn W = 1 und τ = 9 gelten, ersetzt die Warteanzahltabelle-Erzeugungseinheit 74 den Punkt Q[4] durch den zentralen Punkt Q[0] (= Wartefaktor), und dann erhält sie den Mittelwert der neun Punkte (d. h. Q[–4], Q[–3], Q[–2], Q[–1], Q[0], Q[1], Q[2], Q[3] und 1 × Q[0]). Wenn W = 2 und τ = 9 gelten ersetzt die Warteanzahltabelle-Erzeugungseinheit 74 ferner den Punkt Q[–4] durch den zentralen Punkt Q[0] und hält dann den Mittelwert der neun Punkte (d. h., Q[–3], Q[–2], Q[–1], Q[0], Q[1], Q[2], Q[3] und 2 × Q[0]). Wenn W = 3 und τ = 9 gelten, ersetzt die Warteanzahltabelle-Erzeugungseinheit 74 ferner den Punkt Q[3] durch den zentralen Punkt Q[0] und enthält dann den Mittelwert der neun Punkte (d. h., Q[–3], Q[–2], Q[–1], Q[0], Q[1], Q[2] und 3 × Q[0]) (siehe die 12d). Wie es aus den 12c und 12d ersichtlich ist, nähert sich mit zunehmender Rate der Wartekomponente der gemittelte Punkt R[0] dem Ursprung P[0] an. Wenn die Warteanzahl W der Zeitkonstanten τ entspricht, fällt der gemittelte Punkt R[0] mit dem Ursprung P[0] zusammen.
  • Obwohl der gemittelte Punkt R[0] zu einer Position benachbart zum Ursprung P[0] bewegt werden kann, kann die Länge des Vektors P[0] → R[0] nicht als das Ausmaß der Abweichung repräsentierender Wert erhalten werden. Daher erhält die Warteanzahltabelle-Erzeugungseinheit 74, in einem Schritt S7, das Ausmaß d der Abweichung auf Grundlage des gemittelten Punkts R[0]. Das Ausmaß d der Abweichung kann entlang einer Linie gemessen werden, die sich ausgehend vom Ursprung P[0] mit der Hälfte des Änderungswinkels erstreckt, wie er zwischen dem Pfad P[–1] → P[0] und dem Pfad P[0] → P[1] gebildet ist. Das Ausmaß d der Abweichung entspricht der Distanz des auf die oben beschriebene Linie projizierten Vektors R[0]. Wie es in der 12e dargestellt ist, erhält die Warteanzahltabelle-Erzeugungseinheit 74 einen Einheitsvektor h in der Richtung des halben Winkels auf Grundlage des Richtungsänderungswinkels θ, und sie berechnet das Ausmaß d der Abweichung als inneres Produkt aus dem Vektor R[0] und dem Einheitsvektor h.
  • In einem Schritt S8 wertet die Warteanzahltabelle-Erzeugungseinheit 74 das erhaltene Ausmaß d der Abweichung aus. Wenn das Ausmaß d der Abweichung einer Toleranz ε 78 oder weniger entspricht, registriert die Warteanzahltabelle-Erzeugungseinheit 74, in einem Schritt S10, die Warteanzahl W in der Abweichungsunterdrückungswarteanzahltabelle 72. Wenn das Ausmaß d der Abweichung größer als die Toleranz ε 78 ist, inkrementiert die Warteanzahltabelle-Erzeugungseinheit 74, in einem Schritt S9, die Warteanzahl W um 1. Die Verarbeitung kehrt zum Schritt S6 zurück.
  • Wie oben beschrieben, speichert die Abweichungsunterdrückungswarteanzahltabelle 72 diskrete Werte (mit vorbestimmten Intervallen entnommene Werte) in Bezug auf den Richtungsänderungswinkel. Jedoch kann die Abweichungsunterdrückungswarteanzahltabelle 72 auf solche Weise modifiziert werden, dass sie die Warteanzahl jeweils um eins erhöht, solange Warteanzahlen ausgewählt werden können. Darüber hinaus besteht für den Richtungsänderungswinkel keine Einschränkung auf den oben beschriebenen Winkel, sondern er kann durch jeden beliebigen anderen vergleichbaren Parameter ersetzt werden, wie den Cosinuswert, der lediglich im Bereich von 0 Grad bis 180 Grad variabel ist.
  • Wenn ermittelt wird, dass in einem Zielblock eine Kollision auftreten kann, wartet die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform für eine vorbestimmte Zeit, die der Anzahl der durch die Warteverwaltungseinheit 70 zur Abweichungsunterdrückung angewiesenen Funktionserzeugungsperioden entspricht, und dann führt sie die Funktionserzeugungsverarbeitung für den Zielblock aus. Daher kann die Abweichung eines Verstellpfads in der Nähe des Richtungsänderungspunkts auf einen Pegel verringert werden, der dem Toleranzwert entspricht oder kleiner ist. Daher kann die Kollisionsverhinderungsvorrichtung gemäß der vorliegenden Ausführungsform im Vergleich zum herkömmlichen Gerät selbst dann, wenn die Kollisionsprüfungseinheit 26 an der durch das Teileprogramm 10 definierten Sollbahn eine Kollisionsprüfung ausführt, zuverlässig verhindern, dass das Bearbeitungswerkzeug mit einem Kollisionsobjekt kollidiert.
  • Bezugszeichenliste
  • 10
    Teileprogramm,
    12
    Programminterpretiereinheit,
    14
    Puffer,
    16
    Funktionserzeugungseinheit,
    17x
    Antriebseinheit für die X-Achse,
    17z
    Antriebseinheit für die Z-Achse,
    18x, 18z
    Beschleunigungs-/Verzögerungseinheit,
    20x, 20z
    Servoeinheit,
    22x, 22z
    Motor/Detektor,
    26
    Kollisionsprüfungseinheit,
    28
    Ausführungsverwaltungs einheit,
    30
    Beschleunigungs/Verzögerungs-Simuliereinheit,
    32
    Verzögerungseinheit,
    34
    Zweite Kollisionsprüfungseinheit
    36
    Verstellsollwert-Blockiereinheit.

Claims (4)

  1. In eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung mit: einer Funktionserzeugungseinheit (16), die einen Verstellsollwert auf Grundlage eines numerischen Steuerungsprogramms erstellt; einer Beschleunigungs/Verzögerungs-Verarbeitungseinheit (18x, 18z), die für den durch die Funktionserzeugungseinheit (16) erzeugten Verstellsollwert für jede Achse (x, z) eine Beschleunigungs-/Verzögerungsverarbeitung ausführt, um einen Stoß abzuschwächen, wie er auftreten kann, wenn eine Werkzeugmaschine arbeitet; einer Einheit (26), die vorab an einem Sollpfad eine Kollisionsprüfung ausführt und, wenn ermittelt wird, dass eine Kollision auftreten kann, jede Kollision durch Hindern der Funktionserzeugungseinheit (16) am Erzeugen des Verstellsollwerts verhindert; gekennzeichnet durch eine Simulationseinheit (50), die die Funktionserzeugungseinheit (16) und die Beschleunigungs/Verzögerungs-Verarbeitungseinheit (18x, 18z) simuliert und entsprechend dem numerischen Steuerungsprogramm einen Pfad erzeugt; und eine Sollpfad-Änderungseinheit, die den von einer Programminterpretiereinheit (12) erzeugten Pfad von Ausführungsdaten ändert, um die Differenz zwischen dem Sollpfad und dem durch die Simulationseinheit erhaltenen Pfad zu verringern; wobei diese Kollisionsverhinderungsvorrichtung eine Funktionserzeugung auf Grundlage des durch die Sollpfad-Änderungseinheit (56) geänderten Pfads ausführt und die numerisch gesteuerte Maschine einen Betriebsvorgang entlang einem Verstellpfad ausführt, der benachbart zum Sollpfad liegt, der der Kollisionsprüfung unterzogen wurde.
  2. In eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung mit: einer Funktionserzeugungseinheit (16), die einen Verstellsollwert erzeugt; einer Beschleunigungs/Verzögerungs-Verarbeitungseinheit (18x, 18z), die für den durch die Funktionserzeugungseinheit (16) erzeugten Verstellsollwert für jede Achse (x, z) eine Beschleunigungs-/Verzögerungsverarbeitung ausführt, um einen Stoß abzuschwächen, wie er auftreten kann, wenn eine Werkzeugmaschine arbeitet; einer Einheit (26), die vorab an einem Sollpfad eine Kollisionsprüfung ausführt und, wenn ermittelt wird, dass eine Kollision auftreten kann, jede Kollision durch Hindern der Funktionserzeugungseinheit (16) am Erzeugen des Verstellsollwerts verhindert; gekennzeichnet durch eine Bestimmungseinheit (60) für eine Vorschubgeschwindigkeit zur Abweichungsunterdrückung, die eine Vorschubgeschwindigkeit zum Unterdrücken einer Abweichung zwischen dem Sollpfad und einem Vorstellpfad bis innerhalb einer vorbestimmten Toleranz bestimmt; und eine Vorschubeinheit (62) mit Abweichungsunterdrückung, die die Funktionserzeugungseinheit (16) so steuert, dass sie einen Verstellsollwert entsprechend der Vorschubgeschwindigkeit erzeugt, wie sie durch die Bestimmungseinheit (60) für die Vorschubgeschwindigkeit zur Abweichungsunterdrückung bestimmt wurde; wobei die numerisch gesteuerte Maschine einen Betriebsvorgang entlang dem Verstellpfad ausführt, dessen Abweichung in Bezug auf den der Kollisionsprüfung unterzogenen Sollpfad innerhalb einer vorbestimmten Toleranz (64) liegt.
  3. In eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung mit: einer Funktionserzeugungseinheit (16), die einen Verstellsollwert auf Grundlage eines numerischen Steuerungsprogramms erstellt; einer Beschleunigungs/Verzögerungs-Verarbeitungseinheit (18x, 18z), die für den durch die Funktionserzeugungseinheit (16) erzeugten Verstellsollwert für jede Achse (x, z) eine Beschleunigungs-/Verzögerungsverarbeitung ausführt, um einen Stoß abzuschwächen, wie er auftreten kann, wenn eine Werkzeugmaschine arbeitet; einer Einheit (26), die vorab an einem Sollpfad eine Kollisionsprüfung ausführt und, wenn ermittelt wird, dass eine Kollision auftreten kann, jede Kollision durch Hindern der Funktionserzeugungseinheit (16) am Erzeugen des Verstellsollwerts verhindert; gekennzeichnet durch einer Abweichungsunterdrückungswarteanzahltabelle, die eine Abweichungsunterdrückungswarteanzahl entsprechend einem Richtungsänderungswinkel für den Sollpfad speichert; einer Abweichungsunterdrückungswarteanzahl-Bestimmungseinheit (76), die aus der Abweichungsunterdrückungswarteanzahltabelle eine dem Richtungsänderungswinkel entsprechende Abweichungsunterdrückungswarteanzahl auswählt, wenn ein Befehl des numerischen Steuerungsprogramms interpretiert wird; und einer Warteverwaltungseinheit (70) zur Abweichungsunterdrückung, die den Startzeitpunkt für die Funktionserzeugung um einen Wert verzögert, der der durch die Abweichungsunterdrückungswarteanzahl-Bestimmungseinheit (76) ausgewählten Abweichungsunterdrückungswarteanzahl entspricht; wobei die numerisch gesteuerte Maschine einen Betriebsvorgang entlang einem Verstellpfad ausführt, dessen Abweichung in Bezug auf den der Kollisionsprüfung unterzogenen Sollpfad innerhalb einer vorbestimmten Toleranz liegt.
  4. In eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung nach Anspruch 3, ferner mit einer Erzeugungseinheit für die Abweichungsunterdrückungswarteanzahl, die das Ausmaß der Abweichung dadurch auswertet, dass sie die Funktionserzeugungseinheit (16) und die Beschleunigungs/Verzögerungs-Verarbeitungseinheit (18x, 18z) für jede Achse (x, z) simuliert und in der Abweichungsunterdrückungswarteanzahltabelle eine maximale Warteanzahl für den Start der Funktionserzeugung, die innerhalb der Toleranz liegt, registriert.
DE102009048252.0A 2008-10-06 2009-10-05 In eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung Active DE102009048252B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008259753A JP5139230B2 (ja) 2008-10-06 2008-10-06 数値制御装置における衝突防止装置
JP2008-259753 2008-10-06

Publications (2)

Publication Number Publication Date
DE102009048252A1 DE102009048252A1 (de) 2010-06-17
DE102009048252B4 true DE102009048252B4 (de) 2015-12-24

Family

ID=42076384

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102009048252.0A Active DE102009048252B4 (de) 2008-10-06 2009-10-05 In eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung

Country Status (5)

Country Link
US (1) US8126585B2 (de)
JP (1) JP5139230B2 (de)
CN (1) CN101713981B (de)
DE (1) DE102009048252B4 (de)
IT (1) IT1396054B1 (de)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2058717B1 (de) * 2007-11-12 2011-07-20 Siemens Aktiengesellschaft Verfahren und Einrichtung zum Betrieb einer Werkzeugmaschine
JP5142880B2 (ja) * 2008-08-06 2013-02-13 株式会社豊田中央研究所 加工パラメータ最適化装置、加工パラメータ最適化方法およびプログラム
CN102375901A (zh) * 2010-08-20 2012-03-14 深圳富泰宏精密工业有限公司 模具设计工序云处理系统
EP2515193B1 (de) * 2011-04-18 2014-04-02 Siemens Aktiengesellschaft Verfahren zur Vermeidung einer ungewollten Kollision zwischen einem Werkzeug und einem Werkstück bei einer Werkzeugmaschine
JP5149421B2 (ja) * 2011-05-20 2013-02-20 ファナック株式会社 加工時間予測部および加工誤差予測部を有する数値制御装置
DE102011105141A1 (de) 2011-06-09 2012-12-13 Dmg Electronics Gmbh Verfahren und system zur simulation eines arbeitsprozesses an einer werkzeugmaschine
ES2883177T3 (es) * 2011-06-22 2021-12-07 Tornos Sa Ejecución de un programa pilotado por un operario
JP2013069123A (ja) * 2011-09-22 2013-04-18 Fanuc Ltd コーナ部の許容内回り量による速度制御を行う数値制御装置
JP5970880B2 (ja) * 2012-03-15 2016-08-17 オムロン株式会社 動力源の制御装置
JP6066041B2 (ja) * 2012-07-17 2017-01-25 三菱日立パワーシステムズ株式会社 加工支援装置および加工支援システム
JP2014127204A (ja) * 2013-11-20 2014-07-07 Mitsubishi Electric Corp 位置決め装置および位置決め方法
JP5800885B2 (ja) * 2013-12-11 2015-10-28 ファナック株式会社 パラメータ調整を支援する機能を備えたパラメータ調整支援装置
JP5845300B2 (ja) * 2014-03-07 2016-01-20 ファナック株式会社 誤った軸指令をチェックする数値制御装置
EP2998066B1 (de) * 2014-09-19 2017-06-14 Mikron Agie Charmilles AG Hochspannungsvorrichtung zur Vorbeugung von Kollisionen für Werkzeugmaschinen
CN104503366B (zh) * 2014-11-24 2017-04-26 上海拓璞数控科技有限公司 一种六坐标系运动的动态互斥控制方法
TWI582559B (zh) * 2015-01-29 2017-05-11 國立臺灣大學 整合數值控制機之加工軌跡配置系統、軌跡規劃裝置、軌跡規劃方法及其電腦程式產品
JP6100816B2 (ja) * 2015-02-19 2017-03-22 ファナック株式会社 位置偏差過大を抑制する速度制御を行う数値制御装置
JP2016218934A (ja) * 2015-05-26 2016-12-22 株式会社アイエイアイ ロボット言語プログラムの修正装置,方法およびプログラム
JP6321583B2 (ja) * 2015-06-30 2018-05-09 ファナック株式会社 速度変化に対応した3次元干渉チェックを行う数値制御装置
JP6396273B2 (ja) * 2015-10-14 2018-09-26 ファナック株式会社 ワークとの干渉を避ける位置決めを行う数値制御装置
JP6651815B2 (ja) * 2015-11-30 2020-02-19 ブラザー工業株式会社 数値制御装置と数値制御装置の制御方法
EP3220223B1 (de) * 2016-03-16 2021-07-14 Siemens Aktiengesellschaft Verfahren zur bearbeitung eines werkstücks in einer werkzeugmaschine mit optimierter bearbeitungszeit
CN106383493B (zh) * 2016-09-30 2018-12-18 同济大学 一种数控机床的实时防碰撞方法
JP6444969B2 (ja) * 2016-12-21 2018-12-26 ファナック株式会社 数値制御装置
JP6923736B2 (ja) * 2018-06-26 2021-08-25 ファナック株式会社 数値制御装置
JP6838028B2 (ja) * 2018-10-31 2021-03-03 ファナック株式会社 自動プログラム修正装置および自動プログラム修正方法
DE102018008815A1 (de) * 2018-11-09 2020-05-14 Focke & Co. (Gmbh & Co. Kg) Verfahren zum Erkennen und/oder Vermeiden von Kollisionen von Maschinenorganen einer Verpackungsmaschine
TWI716849B (zh) * 2019-04-10 2021-01-21 財團法人工業技術研究院 預先檢測加工路徑碰撞方法及系統
EP3792716B1 (de) * 2019-09-13 2022-11-09 Siemens Aktiengesellschaft Numerische steuerung mit pufferung von lagesollwerten
EP3797937A1 (de) * 2019-09-27 2021-03-31 Siemens Aktiengesellschaft Anhalten einer produktionsmaschine auf kollisionsfreier bahn

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10114811A1 (de) * 2001-03-26 2002-10-10 Volkswagen Ag System und Verfahren zur Erstellung von mehrachsigen Bearbeitungs-Vorgängen an Werkstücken
JP2006059187A (ja) * 2004-08-20 2006-03-02 Okuma Corp 数値制御装置
DE102006029527A1 (de) * 2006-06-20 2007-12-27 Stama Maschinenfabrik Gmbh Verfahren und Vorrichtung zum Bearbeiten eines Werkstücks
US20080024083A1 (en) * 2006-07-25 2008-01-31 Fanuc Ltd Numerical controller

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62123504A (ja) * 1985-11-22 1987-06-04 Toshiba Mach Co Ltd ロボツトの制御方法
JPS62136340A (ja) * 1985-12-10 1987-06-19 Fanuc Ltd 4軸旋盤用ncプログラムの修正方法
US4833617A (en) * 1987-08-14 1989-05-23 General Electric Company Solid modeling based adaptive feedrate control for NC machining
JP3168682B2 (ja) * 1992-04-27 2001-05-21 ソニー株式会社 数値制御装置
JPH09146621A (ja) * 1995-11-01 1997-06-06 Mitsubishi Electric Corp ロボットのシミュレーション装置
JPH09265311A (ja) * 1996-03-29 1997-10-07 Mitsubishi Electric Corp 位置決めプログラム装置
JPH11217850A (ja) * 1998-02-03 1999-08-10 Hitachi Constr Mach Co Ltd 自動運転ショベル
JP3853752B2 (ja) * 2003-04-22 2006-12-06 三菱電機株式会社 シミュレーション装置
JP4672288B2 (ja) * 2004-06-09 2011-04-20 シチズンホールディングス株式会社 工作機械の可動部の移動を制御する制御装置、制御装置を有する工作機械及び可動部の移動方法
JP2007172068A (ja) 2005-12-19 2007-07-05 Fanuc Ltd 数値制御装置
JP4913545B2 (ja) * 2006-10-30 2012-04-11 オークマ株式会社 加工シミュレーションシステム
JP2008259753A (ja) 2007-04-13 2008-10-30 Juki Corp ミシンの糸切断装置
JP4298770B2 (ja) * 2007-08-28 2009-07-22 ファナック株式会社 干渉チェック機能を備えた数値制御装置
WO2009130759A1 (ja) * 2008-04-22 2009-10-29 三菱電機株式会社 数値制御方法及びその装置
JP5142880B2 (ja) * 2008-08-06 2013-02-13 株式会社豊田中央研究所 加工パラメータ最適化装置、加工パラメータ最適化方法およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10114811A1 (de) * 2001-03-26 2002-10-10 Volkswagen Ag System und Verfahren zur Erstellung von mehrachsigen Bearbeitungs-Vorgängen an Werkstücken
JP2006059187A (ja) * 2004-08-20 2006-03-02 Okuma Corp 数値制御装置
DE102006029527A1 (de) * 2006-06-20 2007-12-27 Stama Maschinenfabrik Gmbh Verfahren und Vorrichtung zum Bearbeiten eines Werkstücks
US20080024083A1 (en) * 2006-07-25 2008-01-31 Fanuc Ltd Numerical controller

Also Published As

Publication number Publication date
DE102009048252A1 (de) 2010-06-17
ITRM20090508A1 (it) 2010-04-07
CN101713981A (zh) 2010-05-26
CN101713981B (zh) 2013-10-30
JP5139230B2 (ja) 2013-02-06
JP2010092161A (ja) 2010-04-22
US20100087948A1 (en) 2010-04-08
IT1396054B1 (it) 2012-11-09
US8126585B2 (en) 2012-02-28

Similar Documents

Publication Publication Date Title
DE102009048252B4 (de) In eine numerisch gesteuerte Maschine eingebaute Kollisionsverhinderungsvorrichtung
DE102005037779B4 (de) Numerische Steuereinheit
DE69417323T2 (de) Verfahren zur Optimierung der Bewegung eines Mehr-Achsen-Roboters
DE102010017763B4 (de) Gerät zum Anzeigen des Werkzeugwegs für Werkzeugmaschinen
DE69331787T2 (de) Robotische Bewegung eines Gegenstanden über einer Werkstücksfläche
DE102011108282B4 (de) Numerische Steuerung für eine Mehrachsenmaschine zum Bearbeiten einer geneigten Bearbeitungsebene
DE3408523C2 (de)
DE102015223258A1 (de) Verfahren zum Bearbeiten der Oberfläche eines dreidimensionalen Objekts
DE102014018973B4 (de) Numerische Steuerung zum Glätten des Werkzeugwegs im Betrieb basierend auf Daten in Tabellenform
WO2013037693A2 (de) System und verfahren zur automatisierten erstellung von roboterprogrammen
DE3545795C2 (de) Vorrichtung zur numerischen Steuerung
DE102009004285A1 (de) Verfahren und Vorrichtung zur Optimierung, Überwachung oder Analyse eines Prozesses
DE102015116522B3 (de) Synchronisierung mehrerer Roboter
DE102011082800A1 (de) System und Verfahren zur automatisierten Erstellung von Roboterprogrammen
WO2016087590A1 (de) Verfahren zur bewegungssimulation eines manipulators
DE102020124734A1 (de) Simulationsgerät
WO2017063887A1 (de) Synchronisierung mehrerer roboter
WO2019166229A1 (de) Verfahren zum automatischen erzeugen einer bewegungstrajektorie und zugehöriges computerprogrammprodukt
EP4177688A1 (de) Verfahren und vorrichtung zur kollisionsvermeidung bei der werk-stückbearbeitung durch eine mehrachsige bearbeitungsmaschine
WO2008025577A1 (de) Verfahren zur einrichtung zur kollisionsüberwachung eines maschinenelements mit einem gegenstand bei einer werkzeugmaschine, produktionsmaschine und/oder bei einer als roboter ausgebildeten maschine
DE4336863A1 (de) Verfahren zur Steuerung von Koordinatenmeßgeräten
DE3307615C2 (de)
EP4147102B1 (de) Betreiben einer wenigstens zweiachsigen werkzeugmaschine
DE112019007579T5 (de) Numerische-Steuerung-Vorrichtung und Maschinelles-Lernen-Gerät
EP3438773B1 (de) Bearbeitung von werkstücken mit modellgestützter fehlerkompensation

Legal Events

Date Code Title Description
R012 Request for examination validly filed

Effective date: 20120712

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final