DE102015016523A1 - Numerische Steuerung mit Tabellendatenbetrieb - Google Patents

Numerische Steuerung mit Tabellendatenbetrieb Download PDF

Info

Publication number
DE102015016523A1
DE102015016523A1 DE102015016523.2A DE102015016523A DE102015016523A1 DE 102015016523 A1 DE102015016523 A1 DE 102015016523A1 DE 102015016523 A DE102015016523 A DE 102015016523A DE 102015016523 A1 DE102015016523 A1 DE 102015016523A1
Authority
DE
Germany
Prior art keywords
reference value
movement
amount
output
control axis
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.)
Granted
Application number
DE102015016523.2A
Other languages
English (en)
Other versions
DE102015016523B4 (de
Inventor
Akira KANEMARU
Yasushi Takeuchi
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.)
Fanuc Corp
Original Assignee
Fanuc Corp
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 Fanuc Corp filed Critical Fanuc Corp
Publication of DE102015016523A1 publication Critical patent/DE102015016523A1/de
Application granted granted Critical
Publication of DE102015016523B4 publication Critical patent/DE102015016523B4/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/19Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • 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/41Numerical 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 interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • G05B19/4103Digital interpolation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31475Zoom or pan display for flexible access to information
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41206Lookup table, memory with certain relationships

Abstract

Ist ein Befehl zum Ausgeben eines Bewegungsbetrages bei einem spezifischen Referenzwert in einem Befehlsblock enthalten, registriert eine numerische Steuerung, welche eine Position der Steuerachse synchron mit einem Referenzwert unter Verwendung von Tabellendaten steuert, den Referenzwert und den Bewegungsbetrag des Befehls in einer Verschiebungstabelle unter Verknüpfung des Referenzwertes mit dem Bewegungsbetrag. Wenn sodann der laufende Referenzwert den in der Verschiebungstabelle registrierten Referenzwert erreicht, überlagert die numerische Steuerung den Bewegungsbetrag der Steuerachse, welcher mit dem Referenzwert in der Verschiebungstabelle verknüpft ist, über einen distributierten Bewegungsbetrag für die Steuerachse und gibt den überlagerten Bewegungsbetrag als Bewegungsbetrag für die Steuerachse aus.

Description

  • HINTERGRUND DER ERFINDUNG
  • 1. Gebiet der Erfindung
  • Die Erfindung betrifft eine numerische Steuerung, welche mit Überlagerung mehrerer Einheiten von Tabellendaten arbeitet.
  • 2. Zum Stand der Technik
  • Als ein Verfahren zum synchronen Antreiben und Steuern jeweiliger Steuerachsen synchron zur Bewegung einer Referenzachse ist eine Betriebsfunktion auf Basis von Tabellendaten allgemein bekannt, wobei Positionsinformationen von Steuerachsen vorab als Tabellendaten abgespeichert werden, welche in einem Speicher oder dergleichen bereitgehalten werden, und zwar in Beziehung zu der Position einer Referenzachse und wobei die jeweiligen Steuerachsen auf Basis der in den Tabellendaten gespeicherten Informationen synchron zur Referenzachse angetrieben werden.
  • Bei der auf Tabellendaten basierenden Betriebsfunktion werden vorläufig Tabellendaten in einem Speicher (oder einer über ein Netzwerk verbundenen Speichereinrichtung) gespeichert, in denen eine Position der jeweiligen Achse oder eine Hilfsfunktion, wie ein M-Code, basierend auf der Zeit eingestellt sind, und die jeweiligen Achsen bzw. die Hilfsfunktion werden unter sequenzieller Auslesung der Tabellendaten gesteuert.
  • In den offengelegten japanischen Patentanmeldungen 59-177604 und 2003-303005 werden eine Pfadtabellen-Betriebsfunktion unter Verwendung einer auf Tabellendaten basierenden Betriebsfunktion oder eine numerische Steuerung beschrieben, welche eine elektronische Steuerung gemäß Steuerkurven ausführt. Damit kann eine von einem Bearbeitungsprogramm unabhängige Werkzeugbewegung ermöglicht werden und somit eine Verkürzung der Bearbeitungszeit und eine Verbesserung der Bearbeitungsgenauigkeit.
  • Beim Betrieb auf Basis von Tabellendaten gemäß dem Stand der Technik werden Referenzwerte in Tabellendatenform und Koordinatenwerte, welche den Referenzwerten entsprechen, bezüglich einer Achse oder Spindel als Steuerpunkte eingestellt und ein Bewegungsbetrag wird auf Basis dieser zwei Steuerpunkte berechnet, welche als Startpunkt und Endpunkt eingestellt sind. Im Einzelnen: aus einem Referenzwert und einem Koordinatenwert einer Achse oder einer Spindel an einem Steuerpunkt, welcher Startpunkt und Referenzwert ist, und aus einem Koordinatenwert einer Achse oder Spindel an einem Steuerpunkt, welcher ein Endpunkt ist, werden die Differenz zwischen Referenzwerten zweier Punkte und eine Differenz zwischen Koordinatenwerten einer Achse oder Spindel der beiden Punkte berechnet und es wird pro Referenzwerteinheit ein Bewegungsbetrag berechnet.
  • 7 zeigt ein Beispiel für die Achsensteuerung mit Tabellendaten gemäß dem Stand der Technik.
  • Tabellendaten <TIME_TABLE_0001_X> steuern eine X-Achse in Bezug auf die Zeit. L bedeutet einen Referenzwert (Referenzzeit; Einheit: msek) und X bedeutet einen Koordinatenwert (Einheit: mm), was einen Referenzwert für die X-Achse bedeutet, welche die Steuerachse ist. Ist ein laufender Referenzwert 1000 msek, bewegt sich die X-Achse (Steuerachse) zwischen zwei Steuerpunkten, nämlich einem Startpunkt mit Referenzwert 1000 msek und einem Koordinatenwert 100,0 mm, und einem Endpunkt mit Referenzwert 2000 msek und einem Koordinatenwert 200,0 mm.
  • 8 ist ein schematisches Blockdiagramm zur Erläuterung einer numerischen Steuerung zum Berechnen eines Bewegungsbetrages.
  • Eine numerische Steuerung 100 sendet von einer Leseeinheit (nicht dargestellt) ausgelesene Befehlsblöcke als zwei Steuerpunkte (ein Startpunkt und ein Endpunkt) an eine Distributionsverarbeitungseinheit 130 und die Distributionsverarbeitungseinheit 130 gewinnt aus der Differenz der zwei Referenzwerte zwischen den zwei Steuerpunkten und der Differenz der Koordinatenwerte zwischen den beiden Steuerpunkten einen Bewegungsbetrag einer Achse pro Einheit des Referenzwertes und gibt den so gewonnenen Bewegungsbetrag an eine Motorsteuereinheit (nicht dargestellt).
  • Beim Beispiel der X-Achsensteuerung unter Verwendung der Tabellendaten <TIME_TABLE_0001_X> wird ein Startpunkt mit Referenzwert 1000 msek und dem Koordinatenwert 100,0 mm gesetzt und ein Endpunkt wird gesetzt mit Referenzwert 2000 msek und dem Koordinatenwert 200,0 mm und sodann berechnet die Distributionsverarbeitungseinheit 130 aus der Differenz des Referenzwertes (2000 msek – 1000 msek = 1000 msek) und der Differenz im Koordinatenwert (200,0 mm – 100,0 mm = 100,0 mm) einen Bewegungsbetrag für die Steuerachse pro Einheit des Referenzwertes mit 0,1 mm/1 msek.
  • Bei diesem Stand der Technik werden Referenzwerte und Koordinatenwerte einer Achse oder Spindel, welche in Tabellendaten vorliegen, als Startpunkt und Endpunkt zur Berechnung eines Bewegungsbetrages eingesetzt. Werden deshalb Bewegungsbeträge bei einem bestimmten Referenzwert ausgegeben, wie z. B. ein Korrekturbetrag, ist es erforderlich, die Koordinatenwerte zu beschreiben unter Berücksichtigung des Korrekturbetrages für Steuerpunkte als Startpunkt und als Endpunkt. Weiterhin wird ein Bewegungsbetrag einer Steuerachse aus einer Differenz zwischen zwei Steuerpunkten berechnet, welche der Startpunkt und der Endpunkt sein müssen. Wird deshalb ein Koordinatenwert eines Blockes abgeändert, müssen Koordinatenwerte von nachfolgenden Blöcken ebenfalls relativ verschoben werden und daraus ergibt sich ein Anwachsen der modifizierten Tabellendaten. Weiterhin muss ein Steuerpunkt, welcher ein Endpunkt eines vorangehenden Blockes sein soll, unmittelbar vor Ausgabe des Korrekturbetrages hinzugefügt werden und dies bringt einen Nachteil dahingehend, dass die Tabellendaten im Volumen anwachsen.
  • 9 zeigt ein Beispiel für eine Achsensteuerung mit Tabellendaten <TIME_TABLE_0002_X>, welche durch Modifikation der Tabellendaten <TIME_TABLE_0001_X>, gewonnen werden, wobei ein Korrekturbetrag 1,0 mm zum Referenzwert 1500 msek der Tabellendaten >TIME TABLE_0001> ausgegeben wird.
  • Um einen Korrekturbetrag 1,0 mm am Referenzwert 1500 msek auszugeben, muss gemäß 9 ein Koordinatenwert 149,0 mm am Referenzwert 1499 msek spezifiziert werden, also unmittelbar bevor der Korrekturbetrag ausgegeben wird, so dass eine Bewegung bis unmittelbar vor Ausgabe des Korrekturbetrages die gleiche ist wie eine Bewegung im Falle, dass kein Korrekturbetrag ausgegeben wird. Dabei wird ein Block (”L1499X149,0”) zur Ausgabe des Korrekturbetrages unmittelbar vor Ausgabe des Korrekturbetrages hinzugefügt, so dass ein Problem dahingehend entsteht, dass die Tabellendaten im Volumen ansteigen.
  • Bei einem Referenzwert von 1500 msek, bei dem der Korrekturbetrag ausgegeben wird, wird ein Koordinatenwert 151,0 mm spezifiziert, der gewonnen wird durch Addition des Korrekturbetrages 1,0 mm zum Koordinatenwert 150,0 mm, also (”L1500X151,0”). Entsprechend wird ein Bewegungsbetrag von 1,0 mm gemäß dem Korrekturbetrag ausgegeben. Bei einem Referenzwert von 2000 msek wird ein Koordinatenwert von 201,0 mm spezifiziert, der gewonnen wird durch Addition eines Korrekturbetrages von 1,0 mm zum Koordinatenwert 200,0 mm, wenn also kein Korrekturbetrag ausgegeben würde, entsprechend (”L2000X201,0”), so dass relative Bewegungsbeträge vom Referenzwert 1500 msek zum Referenzwert 2000 msek den Daten vor Ausgabe des Korrekturbetrages entsprechen.
  • In ähnlicher Weise muss in einem Block nach Ausgabe des Korrekturbetrages ein Koordinatenwert spezifiziert werden, der gewonnen wird durch Addition akkumulierter Korrekturbeträge zum Koordinatenwert im Vergleich zum Fall, wo kein Korrekturbetrag ausgegeben wird. Somit ergibt sich, dass der Anpassungsbedarf anwächst, wenn einmal hergestellte Tabellendaten modifiziert werden.
  • KURZBESCHREIBUNG DER ERFINDUNG
  • Ein Ziel der Erfindung ist die Bereitstellung einer numerischen Steuerung, welche einen spezifizierten Bewegungsbetrag bei einem spezifischen Referenzwert zu einem Zeitpunkt ausgibt, getrennt von einem Bewegungsbetrag, welcher aufgrund von Steuerpunkten berechnet wird, welche ein Startpunkt und ein Endpunkt sind, und welche einen Koordinatenwert um den Bewegungsbetrag nach der Ausgabe verschiebt.
  • Eine numerische Steuerung nach der Erfindung steuert die Position einer Steuerachse synchron mit einem Referenzwert unter Verwendung von Tabellendaten für die Anweisung einer Position jeder Steuerachse auf Basis des Referenzwertes bezüglich Zeit, Achsenposition oder Spindelposition. Die numerische Steuerung enthält: eine Verschiebungstabelle, in welcher der Referenzwert und ein Bewegungsbetrag der Steuerachse in Verknüpfung miteinander abgespeichert sind; eine Befehlsblock-Leseeinheit, welche einen Befehlsblock aus den Tabellendaten ausliest; eine Tabellenanalyseeinheit, welche dann, wenn ein Befehl zur Ausgabe eines Befehlswertes bei einem spezifischen Referenzwert in einem Befehlsblock enthalten ist, welcher durch die Befehlsblock-Ausleseeinheit ausgelesen wurde, einen Referenzwert und einen Bewegungsbetrag des Befehlsblockes in der Verschiebungstabelle unter Verknüpfung des Referenzwertes und des Bewegungsbetrages miteinander registriert; eine Ausgabebestimmungseinheit, welche dann, wenn der laufende Referenzwert den in der Verschiebungstabelle registrierten Referenzwert erreicht, einen Bewegungsbetrag für die Steuerachse ausgibt, welcher dem erreichten Referenzwert zugeordnet ist; eine Distributionsverarbeitungseinheit, welche auf Basis des durch die Befehlsblock-Ausleseeinheit ausgelesenen Befehlsblockes einen Bewegungsbetrag für eine mit den Tabellendaten zu steuernde Achse erzeugt und einen Koordinatenwert der Steuerachse aktualisiert auf Basis des Bewegungsbetrages der Steuerachse, der durch die Ausgabebestimmungseinheit ausgegeben ist; und eine Ausgabesteuereinheit, welche als Bewegungsbetrag für jede Steuerachse folgendes ausgibt: den Bewegungsbetrag der Steuerachse, wie durch die Ausgabebestimmungseinheit ausgegeben und den Bewegungsbetrag, welcher durch die Distributionsverarbeitungseinheit erzeugt ist.
  • Die Verschiebungstabelle kann eingerichtet sein, einen Referenzwert für eine Löschung und die Art eines Löschungsverfahrens in Verknüpfung miteinander abzuspeichern. Wenn in einem von der Befehlsblock-Ausleseeinheit ausgelesenen Befehlsblock ein Befehl zum Löschen eines Bewegungsbetrages bei einem spezifischen Referenzwert enthalten ist, kann die Tabellenanalyseeinheit eingerichtet sein, den Referenzwert des Befehlsblockes und den Typ des Löschungsbefehls in der Verschiebungstabelle in Verknüpfung miteinander zu registrieren. Die Ausgabebestimmungseinheit kann eingerichtet sein, bis zum gegebenen Zeitpunkt einen akkumulierten Wert der Bewegungsbeträge der Steuerachse aufzuzeichnen und die Art des Löschungsbefehls und den akkumulierten Wert entsprechend dem spezifischen Referenzwert für die Löschung auszugeben, welcher in der Verschiebungstabelle registriert ist. Und die Distributionsverarbeitungseinheit kann eingerichtet sein, einen Koordinatenwert der Steuerachse rückzuführen auf Basis der Art des Löschungsbefehls und des akkumulierten Wertes, welche durch die Ausgabebestimmungseinheit ausgegeben sind.
  • Das durch die Distributionsverarbeitungseinheit ausgeführte Verfahren zur Rückführung eines Koordinatenwertes der Steuerachse kann entweder ein Verfahren sein zur Rückführung des Koordinatenwertes auf Basis des akkumulierten Wertes oder ein Verfahren zur Nachführung entsprechend einer momentanen Position der Steuerachse.
  • Die Erfindung ermöglicht die Anweisung eines Bewegungsbetrages, welcher aus Steuerpunkten berechnet wird, die ein Startpunkt und ein Endpunkt sind, und ein Bewegungsbetrag wird zu einem spezifischen Referenzwert in diskriminierender Weise als ein Satz von Tabellendaten ausgegeben. Ein Koordinatenwert wird um einen Bewegungsbetrag verschoben, welcher bei einem spezifischen Referenzwert ausgegeben wird, so dass Koordinatenwerte in Blöcken, welche einem abgeänderten Block folgen, nicht mehr relativ zu verschieben sind. Dementsprechend können gewünschte Tabellendaten mit geringem Änderungsvolumen erzeugt werden bei geringem Anstieg der Menge an Tabellendaten.
  • KURZBESCHREIBUNG DER FIGUREN
  • Obige sowie weitere Ziele und Merkmale der Erfindung werden noch deutlicher aus der nachfolgenden Beschreibung bevorzugter Ausführungsbeispiele mit Blick auf die Figuren:
  • 1 erläutert ein erfindungsgemäßes Verfahren zur Ausgabe eines spezifizierten Bewegungsbetrages bei einem spezifischen Referenzwert;
  • 2 ist ein Blockdiagramm wesentlicher Teile einer numerischen Steuerung gemäß einem Ausführungsbeispiel der Erfindung;
  • 3 zeigt ein Beispiel einer Achsensteuerung unter Verwendung der numerischen Steuerung gemäß 2;
  • 4 zeigt eine Abwandlung von Tabellendaten gegenüber 3;
  • 5 zeigt ein weiteres Beispiel einer Achsensteuerung mit einer numerischen Steuerung entsprechend 2;
  • 6 zeigt als Flussdiagramm die Struktur des mit der numerischen Steuerung nach 2 ausgeführten Verfahrens;
  • 7 zeigt ein Beispiel für eine Achsensteuerung gemäß dem Stand der Technik mit Verwendung von Tabellendaten;
  • 8 zeigt als Blockdiagramm wesentliche Komponenten eines Beispiels einer numerischen Steuerung gemäß dem Stand der Technik zur Berechnung eines Bewegungsbetrages einer Steuerachse, die durch eine Achsensteuerung gemäß 7 gesteuert wird; und
  • 9 erläutert ein Problem bei einem weiteren Beispiel einer Steuerachsensteuerung mit Tabellendaten gemäß dem Stand der Technik.
  • BESCHREIBUNG BEVORZUGTER AUSFÜHRUNGSBEISPIELE IM EINZELNEN
  • Ausführungsbeispiele der Erfindung werden nachfolgend mit Blick auf die Figuren näher erläutert. Konfigurationen, die identisch oder ähnlich denen des Standes der Technik sind, werden mit den gleichen Bezugszeichen versehen.
  • Mit der Erfindung werden die obigen Probleme überwunden durch Bereitstellung einer Technik, mit welcher ein spezifizierter Bewegungsbetrag zu einem Zeitpunkt entsprechend einem spezifischen Referenzwert ausgegeben wird und zwar getrennt von einem Bewegungsbetrag, welcher aus Steuerpunkten berechnet wird, welche ein Startpunkt und ein Endpunkt sein müssen, wobei nach der Ausgabe ein Koordinatenwert um den Bewegungsbetrag verschoben wird.
  • Die Erfindung führt einen Befehl ein zur Diskriminierung von Steuerpunkten, welche ein Start- und ein Endpunkt sind, von einem Punkt, bei dem ein Bewegungsbetrag bei einem spezifischen Referenzwert ausgegeben wird. 1 zeigt ein Beispiel einer Achsensteuerung, bei welcher eine numerische Steuerung gemäß der Erfindung eingesetzt wird, auf Basis von Tabellendaten <TIME_TABLE_0003_X>, welche gewonnen werden durch Modifizierung der Tabellendaten <TIME_TABLE_0001_X> derart, dass ein Korrekturbetrag 1,0 mm bei einem Referenzwert von 1500 msek bezüglich Tabellendaten <TIME_TABLE_0001_X> ausgegeben wird. Hier ist G70 ein Beispiel eines Befehls zur Ausgabe eines Bewegungsbetrages bei einem spezifischen Referenzwert.
  • Die Steuerung wird so durchgeführt, dass ein Bewegungsbetrag berechnet wird durch Einstellen eines Punktes auf einen Referenzwert 1000 msek und einen Koordinatenwert X100,0 mm als Startpunkt und Einstellen eines Punktes als Referenzwert 2000 msek und mit einem Koordinatenwert X200,0 mm als Endpunkt, wobei bei einem Referenzwert 1000 msek, bei dem der G70-Befehl vorgesehen ist, 1,0 mm zum Bewegungsbetrag als Korrekturbetrag addiert wird. Deshalb hat ein Block mit dem G70-Befehl keinen Steuerpunkt, der ein Startpunkt oder ein Endpunkt sein muss. Dementsprechend kann ein spezifizierter Bewegungsbetrag bei einem spezifischen Referenzwert ausgegeben werden, unabhängig von einem Bewegungsbetrag, welcher aus Steuerpunkten berechnet wird, bei denen es sich um einen Startpunkt und einen Endpunkt handeln muss.
  • Wenn der oben erläuterte Bewegungsbetrag, der bei einem spezifischen Referenzwert ausgegeben wird, zu einem Bewegungsbetrag addiert wird, welcher berechnet wird aus Steuerpunkten als Start- und Endpunkten, wird eine Lücke erzeugt zwischen einem Koordinatenwert gemäß Tabellendaten und einer tatsächlichen Position einer Achse entsprechend dem Bewegungsbetrag. Beim Beispiel gemäß 1 ist ein Koordinatenwert gemäß der Tabellendaten 200,0 mm bei einem Referenzwert von 2000 msek, während eine tatsächliche Position der Achse bei einem Koordinatenwert 201,0 mm liegt. Deshalb wird der obige Bewegungsbetrag mit einer Verschiebungstabelle berücksichtigt und ein in den Tabellendaten enthaltener Koordinatenwert wird durch einen akkumulierten Wert von Bewegungsbeträgen so verschoben, dass die Steuerung mit einem Koordinatenwert in den Tabellendaten erfolgt, welcher mit der tatsächlichen Position der Achse übereinstimmt. Deshalb ändert sich der Bewegungsbetrag gemäß der Tabellendaten zwischen Steuerpunkten nicht, auch wenn der oben beschriebene Bewegungsbetrag bei einem spezifischen Referenzwert ausgegeben wird, so dass Koordinatenwerte nach Ausgabe des obigen Bewegungsbetrages nicht relativ verschoben werden müssen.
  • 2 ist ein Blockdiagramm wesentlicher Komponenten der numerischen Steuerung gemäß einem Ausführungsbeispiel der Erfindung.
  • Erfindungsgemäß sind eine Tabellenanalyseeinheit 120, eine Ausgangsbestimmungseinheit 140 und eine Ausgangssteuereinheit 150 als zusätzliche funktionale Einrichtungen einer numerischen Steuerung 100 (vgl. 8) hinzugefügt und durch die einzelnen funktionellen Einrichtungen werden die nachfolgenden Steuerfunktionen ausgeführt.
  • Die Tabellenanalyseeinheit 120 ermittelt, ob ein ausgelesener Block einen Befehl enthält zur Ausgabe eines Bewegungsbetrages bei einem spezifischen Referenzwert (G70-Befehl im Beispiel gemäß 2) und weist eine Befehlsblock-Ausleseeinheit 110 an, die Auslesung fortzuführen bis ein Block erscheint, welcher keinen derartigen Befehl (G70-Befehl) enthält. Wenn die Tabellenanalyseeinheit 120 einen Block ausliest, welcher einen G70-Befehl enthält, registriert sie einen Referenzwert und einen Bewegungsbetrag des Blockes in einer Verschiebungstabelle. Wird ein Block gelesen, welcher keinen G70-Befehl enthält, unterrichtet die Tabellenanalyseeinheit 120 eine Distributionsverarbeitungseinheit 130 über einen Startpunkt (L1000 X100,0 als momentane Position) und einen Endpunkt (L2000 X200,0), welche als Steuerpunkte dienen. Gleichzeitig unterrichtet die Tabellenanalyseeinheit 120 die Ausgabebestimmungseinheit 140 über eine aktualisierte Verschiebungstabelle.
  • Die Ausgabebestimmungseinheit 140 berücksichtigt den Referenzwert und ermittelt, ob der laufende Referenzwert den in der Verschiebungstabelle registrierten Referenzwert erreicht oder nicht. Wird ermittelt, dass der laufende Referenzwert den Referenzwert erreicht, unterrichtet die Ausgangsbestimmungseinheit 140 sowohl die Ausgangssteuereinheit 150 als auch die Distributionsverarbeitungseinheit 130 über den Bewegungsbetrag, welcher dem oben erwähnten Referenzwert entspricht.
  • Die Distributionsverarbeitungseinheit 130 verschiebt den in den Tabellendaten entsprechend genannten Koordinatenwert um den von der Ausgangsbestimmungseinheit 140 abgegebenen Bewegungsbetrag, um so die Übereinstimmung zwischen dem Koordinatenwert gemäß den Tabellendaten und einer aktuellen Position der Achse beizubehalten. Sodann gibt die Distributionsverarbeitungseinheit 130 ein Verarbeitungsergebnis an die Ausgabebestimmungseinheit 140 und diese bestätigt, dass der in der Verschiebungstabelle registrierte Bewegungsbetrag empfangen wurde und fügt diesen Bewegungsbetrag zu Bewegungsbeträgen hinzu, welche bis dahin ausgegeben worden sind, um den so gewonnenen Bewegungsbetrag als akkumulierten Wert zu speichern.
  • Sodann überlagert die Ausgangssteuereinheit 150 den von der Ausgangsbestimmungseinheit 140 mitgeteilten Bewegungsbetrag dem Bewegungsbetrag, welcher von der Distributionsverarbeitungseinheit 130 mitgeteilt worden ist und unterrichtet die Motorsteuereinheit 160 über den überlagerten Wert (akkumulierten Wert).
  • Im Falle einer Löschung einer Verschiebung eines Koordinatenwertes ist der Verfahrensgang der gleiche wie oben beschrieben. Ermittelt die Tabellenanalyseeinheit 120, dass ein ausgelesener Block einen Befehl enthält zum Löschen der Verschiebung eines Koordinatenwertes, registriert die Tabellenanalyseeinheit 120 einen Referenzwert zum Löschen und den Typ eines Löschungsverfahrens in der Verschiebungstabelle. Entsprechend dem Referenzwert der Löschung und dem Typ des Löschungsverfahrens unterrichtet die Ausgangsbestimmungseinheit 140 sowohl die Distributionsverarbeitungseinheit 130 als auch die Ausgangssteuereinheit 150 über den Typ des Löschungsverfahrens und den akkumulierten Wert der Bewegungsbeträge, welche bis dahin einer Verschiebung unterzogen wurden. Typen von Löschungsverfahren sind beispielsweise ein Verfahren, bei dem ein Koordinatenwert (ein Endpunkt-Koordinatenwert oder dergleichen), welcher durch die Distributionsverarbeitungseinheit 130 verarbeitet wird, auf einen Koordinatenwert rückgeführt wird, welcher in den Tabellendaten enthalten ist, oder ein Verfahren, bei dem eine momentane Position einer Achse verfolgt wird.
  • Ein Beispiel für eine Achsensteuerung durch die numerische Steuerung 100 gemäß 2 ist in 3 näher dargestellt.
  • Bei Tabellendaten <TIME_TABLE_0004_X> gemäß 3 wird eine Bewegung zwischen zwei Steuerpunkten ausgeführt, wobei ein Startpunkt auf einen Referenzwert 1000 msek und einen Koordinatenwert 100,0 mm eingestellt ist und ein Endpunkt ist eingestellt auf einen Referenzwert 3000 msek und einen Koordinatenwert 300,0 mm; Bewegungsbeträge von 5,0 mm und 2,0 mm werden zu Referenzwerten 1500 msek bzw. 2500 msek ausgegeben. Bei einem Referenzwert von 3500 msek wird eine Verschiebung des Koordinatenwertes um die Bewegungsbeträge, welche bei Referenzwerten von 1500 msek und 2500 msek ausgegeben werden, gelöscht. G71 ist ein Befehl zum Löschen einer Verschiebung eines Koordinatenwertes zur Rückführung einer Achsenposition einer Steuerachse auf einen Koordinatenwert, welcher in den Tabellendaten angegeben ist.
  • Wenn ein Korrekturpunkt der in 3 gezeigten Tabellendaten von einem Referenzwert von 2500 msek auf einen Referenzwert von 2000 msek entsprechend einer Änderung des Bearbeitungszustandes geändert wird, muss bei Einsatz der vorliegenden Erfindung nur der Referenzwert von 2500 msek auf den Referenzwert von 2000 msek geändert werden. Somit ist die Änderung der Tabellendaten einfach. Tabellendaten <TIME_TABLE_0005_X>, welche durch eine Modifikation gewonnen wurden, sind in 4 dargestellt.
  • Ein weiteres Beispiel für eine Achsensteuerung mit der numerischen Steuerung 100 gemäß 2 ist in 5 näher dargestellt.
  • Bei der Tabellendaten <TIME_TABLE_0006_X> gemäß 5 wird ein Verfahren des Nachführens als weiteres Beispiel für die Löschung einer Verschiebung eines Koordinatenwertes eingesetzt. G72 ist ein Befehl zum Löschen einer Verschiebung eines Koordinatenwertes, um eine Nachführung in Bezug auf eine Achsenposition einer Steuerachse auszuführen.
  • 6 ist ein Flussdiagramm zur Erläuterung der Struktur des von der numerischen Steuerung nach 2 ausgeführten Verfahrens.
    • – [Schritt S01] Die Befehlsblock-Ausleseeinheit 110 liest einen Befehlsblock aus Tabellendaten aus, welche in einem Speicher (nicht dargestellt) gespeichert sind.
    • – [Schritt SA02] Die Tabellenanalyseeinheit 120 ermittelt, ob ein Befehl (G70 oder dergleichen) zum Ausgeben eines Bewegungsbetrages bei einem spezifischen Referenzwert im in Schritt SA01 ausgelesenen Befehlsblock enthalten ist. Ist ein Befehl zum Ausgeben eines Bewegungsbetrages bei einem spezifischen Referenzwert enthalten, geht das Verfahren zu Schritt SA03. Ist der Befehl zum Ausgeben eines Bewegungsbetrages bei einem spezifischen Referenzwert nicht enthalten, geht das Verfahren zu Schritt SA04.
    • – [Schritt SA03] Die Tabellenanalyseeinheit 120 gewinnt aus dem in Schritt SA02 ermittelten Befehlsblock mit Befehl zum Ausgeben eines Bewegungsbetrages bei einem spezifischen Referenzwert einen Referenzwert und einen Bewegungsbetrag und registriert den Referenzwert und den Bewegungsbetrag in der Verschiebungstabelle.
    • – [Schritt SA04] Die Distributionsverarbeitungseinheit 130 empfängt den durch die Befehlsblock-Ausleseeinheit 110 ausgelesenen Block und aktualisiert einen Referenzwert für die Distributionsverarbeitung mit Bezug auf eine Referenzzeit, eine Achsenpositionsreferenz oder eine Spindelpositionsreferenz, welche in dem Block verwendet werden.
    • – [Schritt SA05] Die Distributionsverarbeitungseinheit 130 distributiert den in dem Block vorgegebenen Bewegungsbetrag in Bewegungsbeträge zur Instruktion einer beweglichen Komponenten jeder Achse für jeden Distributionszyklus auf Basis des Referenzwertes, welcher in Schritt SA04 aktualisiert worden ist.
    • – [Schritt SA06] Die mit der Distributionsverarbeitung in Schritt SA05 gewonnenen Bewegungsbeträge werden an die Ausgangssteuereinheit 150 gegeben und diese registriert die Bewegungsbeträge für die jeweiligen Achsen.
    • – [Schritt SA07] Die Ausgangsbestimmungseinheit 140 ermittelt, ob Daten für einen Referenzwert und einen Bewegungsbetrag, welche noch nicht verarbeitet sind, in der Verschiebungstabelle registriert sind. Sind Daten bezüglich Referenzwert und Bewegungsbetrag, welche bisher noch nicht verarbeitet sind, registriert, geht das Verfahren zu Schritt SA08. Sind Daten bezüglich Referenzwert und Bewegungsbetrag, welche noch nicht verarbeitet worden sind, nicht registriert, geht das Verfahren zu Schritt SA11.
    • – [Schritt SA08] Die Ausgangsbestimmungseinheit 140 ermittelt, ob unter den Daten, die in der Verschiebungstabelle registriert sind, Daten enthalten sind, bei denen ein laufender Referenzwert einen Referenzwert eines Befehls zur Ausgabe eines Bewegungsbetrages erreicht oder nicht. Liegen Daten vor, bei denen ein laufender Referenzwert einen Referenzwert zur Ausgabe eines Befehls eines Bewegungsbetrages erreicht, geht das Verfahren zu Schritt SA09. Liegen keine Daten vor, bei denen ein laufender Referenzwert einen Referenzwert erreicht für einen Befehl zur Ausgabe eines Bewegungsbetrages, geht das Verfahren zu Schritt SA11.
    • – [Schritt SA09] Die Ausgangsbestimmungseinheit 140 gibt an die Ausgangssteuereinheit 150 einen Bewegungsbetrag der Daten, deren laufender Referenzwert einen Referenzwert eines Befehls zur Ausgabe eines Bewegungsbetrages erreicht hat.
    • – Schritt SA10] Die Ausgangsbestimmungseinheit 140 gibt an die Distributionsverarbeitungseinheit 130 den Bewegungsbetrag der Daten, deren laufender Referenzwert einen Referenzwert eines Befehls zur Ausgabe eines Bewegungsbetrages erreicht hat, und die Distributionsverarbeitungseinheit 130 verschiebt einen Koordinatenwert für die Distributionsverarbeitung entsprechend dem empfangenen Bewegungsbetrag.
    • – [Schritt SA11] Die Ausgangssteuereinheit 140 unterrichtet die Motorsteuereinheit 160 über den Bewegungsbetrag, welcher gewonnen wurde durch Überlagerung des Bewegungsbetrages, wie von der Ausgangsbestimmungseinheit 140 empfangen, über den Bewegungsbetrag, wie von der Distributionsverarbeitungseinheit 130 empfangen.
    • – [Schritt SA12] Es wird ermittelt, ob die Tabellendaten enden oder nicht. Enden die Tabellendaten, ist das Verfahren beendet. Sind die Tabellendaten noch nicht abgearbeitet, geht das Verfahren zurück zu Schritt SA01.
  • Ein Ausführungsbeispiel der Erfindung wurde oben beschrieben. Jedoch ist die Erfindung nicht auf Beispiele gemäß dem obigen Ausführungsbeispiel beschränkt, vielmehr kann die Erfindung auch verwirklicht werden mit anderen Ausführungsbeispielen durch Hinzufügung von willkürlichen Abwandlungen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • JP 59-177604 [0004]
    • JP 2003-303005 [0004]

Claims (3)

  1. Numerische Steuerung, welche eine Position einer Steuerachse synchron mit einem Referenzwert steuert unter Verwendung von Tabellendaten zur Anweisung einer Position jeder Steuerachse auf Basis des Referenzwertes bezüglich der Zeit, einer Achsenposition oder einer Spindelposition, aufweisend: eine Verschiebungstabelle, in welcher der Referenzwert und ein Bewegungsbetrag der Steuerachse in Verknüpfung miteinander abgespeichert sind; eine Befehlsblock-Ausleseeinheit, welche einen Befehlsblock aus den Tabellendaten ausliest; eine Tabellenanalyseeinheit, welche dann, wenn ein Befehl zur Ausgabe eines Bewegungsbetrages bei einem spezifischen Referenzwert in einem Befehlsblock enthalten ist, welcher durch die Befehlsblock-Ausleseeinheit ausgelesen ist, einen Referenzwert und einen Bewegungsbetrag des Befehlsblockes in der Verschiebungstabelle unter Verknüpfung des Referenzwertes und des Bewegungsbetrages miteinander registriert; eine Ausgangsbestimmungseinheit, welche dann, wenn der laufende Referenzwert den Referenzwert erreicht, welcher in der Verschiebungstabelle registriert ist, einen Bewegungsbetrag der Steuerachse ausgibt, welcher mit dem erreichten Referenzwert verknüpft ist; eine Distributionsverarbeitungseinheit, welche einen Bewegungsbetrag für eine mit den Tabellendaten zu steuernde Achse auf Basis des durch die Befehlsblock-Leseeinheit ausgelesenen Befehlsblockes erzeugt und einen Koordinatenwert der Steuerachse auf Basis des Bewegungsbetrages der Steuerachse, welcher durch die Ausgangsbestimmungseinheit ausgegeben ist, aktualisiert; und eine Ausgangssteuereinheit, welche den von der Ausgangsbestimmungseinheit ausgegebenen Bewegungsbetrag der Steuerachse ausgibt sowie als Bewegungsbetrag für jede Steuerachse den Bewegungsbetrag, der von der Distributionsverarbeitungseinheit erzeugt ist.
  2. Numerische Steuerung gemäß Anspruch 1, wobei die Verschiebungstabelle eingerichtet ist, einen Referenzwert für eine Löschung und die Art des Löschungsverfahrens in Verknüpfung miteinander abzuspeichern, die Tabellenanalyseeinheit eingerichtet ist, dann, wenn ein Befehl zum Löschen eines Bewegungsbetrages bei einem spezifischen Referenzwert in einem von der Befehlsblock-Leseeinheit ausgelesenen Befehlsblock enthalten ist, den Referenzwert des Befehlsblockes und die Art des Löschungsbefehls in der Verschiebungstabelle in Verknüpfung miteinander abzuspeichern, die Ausgangsbestimmungseinheit eingerichtet ist, einen akkumulierten Wert von Bewegungsbeträgen der Steuerachse, welche bis dahin ausgegeben sind, aufzuzeichnen, und die Art des Löschungsbefehls und den akkumulierten Wert entsprechend dem spezifischen Referenzwert auszugeben, welcher in der Verschiebungstabelle registriert ist, und eine Distributionsverarbeitungseinheit, welche eingerichtet ist, einen Koordinatenwert der Steuerachse rückzuführen auf Basis der Art des Löschungsbefehls und des akkumulierten Wertes, welche durch die Ausgangsbestimmungseinheit ausgegeben sind.
  3. Numerische Steuerung gemäß Anspruch 2, wobei das Verfahren zum Rückführen eines Koordinatenwertes der Steuerachse mittels der Distributionsverarbeitungseinheit ausgeführt wird entweder als Verfahren zum Rückführen des Koordinatenwertes auf Basis des akkumulierten Wertes oder als Verfahren mit Nachführung einer momentanen Position der Steuerachse.
DE102015016523.2A 2014-12-25 2015-12-18 Numerische Steuerung mit Tabellendatenbetrieb Active DE102015016523B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2014263098A JP6235457B2 (ja) 2014-12-25 2014-12-25 テーブル形式データによる運転を行う数値制御装置
JP2014-263098 2014-12-25

Publications (2)

Publication Number Publication Date
DE102015016523A1 true DE102015016523A1 (de) 2016-06-30
DE102015016523B4 DE102015016523B4 (de) 2019-11-21

Family

ID=56116754

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015016523.2A Active DE102015016523B4 (de) 2014-12-25 2015-12-18 Numerische Steuerung mit Tabellendatenbetrieb

Country Status (4)

Country Link
US (1) US9964943B2 (de)
JP (1) JP6235457B2 (de)
CN (1) CN105739431B (de)
DE (1) DE102015016523B4 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6203780B2 (ja) * 2015-04-21 2017-09-27 ファナック株式会社 テーブル形式データによる運転を行う数値制御装置
JP6520545B2 (ja) * 2015-08-10 2019-05-29 オムロン株式会社 サポート装置およびサポートプログラム
JP6943268B2 (ja) 2019-03-29 2021-09-29 オムロン株式会社 制御装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59177604A (ja) 1983-03-28 1984-10-08 Fanuc Ltd 数値制御方法
JP2003303005A (ja) 2002-04-09 2003-10-24 Fanuc Ltd 数値制御装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3941987A (en) * 1973-09-04 1976-03-02 Danly Machine Corporation Method and apparatus for numerical control
DE59309138D1 (de) * 1993-09-14 1998-12-24 Siemens Ag Verfahren zur numerischen Bahnsteuerung von mehrachsigen Maschinen
JPH11110047A (ja) 1997-10-07 1999-04-23 Fanuc Ltd モーションコントローラ
JP4233540B2 (ja) * 2005-04-13 2009-03-04 ファナック株式会社 テーブル形式データを用いて各軸モータを駆動する数値制御装置
JP4282632B2 (ja) * 2005-04-25 2009-06-24 ファナック株式会社 テーブル形式データで運転を行う数値制御装置
DE112006000330T5 (de) * 2006-07-26 2009-06-04 Mitsubishi Electric Corp. Numerische Steuerungsvorrichtung
JP4554697B2 (ja) 2008-07-03 2010-09-29 ファナック株式会社 任意の軸を動作させるテーブル形式データを有する数値制御装置
JP4807475B1 (ja) * 2011-03-15 2011-11-02 オムロン株式会社 演算ユニット、出力制御方法、およびプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59177604A (ja) 1983-03-28 1984-10-08 Fanuc Ltd 数値制御方法
JP2003303005A (ja) 2002-04-09 2003-10-24 Fanuc Ltd 数値制御装置

Also Published As

Publication number Publication date
CN105739431A (zh) 2016-07-06
US9964943B2 (en) 2018-05-08
US20160187868A1 (en) 2016-06-30
CN105739431B (zh) 2018-06-26
DE102015016523B4 (de) 2019-11-21
JP2016122399A (ja) 2016-07-07
JP6235457B2 (ja) 2017-11-22

Similar Documents

Publication Publication Date Title
DE102005059530B4 (de) Befehlsgenerierungsvorrichtung
DE102018000369B4 (de) Numerische steuerung
DE102005015810A1 (de) Bearbeitungszeit-Berechnungsvorrichtung
DE102012008541B4 (de) Numerische Steuervorrichtung mit einer Operationsfunktion auf der Grundlage von Daten im Tabellenformat
DE102013009520A1 (de) Simulationsvorrichtung einer numerischen Steuerung
DE102015016523B4 (de) Numerische Steuerung mit Tabellendatenbetrieb
DE102016007688A1 (de) Numerische Steuervorrichtung, die entsprechend einer Vorschubgeschwindigkeitsänderung eine dreidimensionale Interferenzprüfung durchführt
DE102016003049A1 (de) Numerische Steuerung zur Ausführung reziproken Drehens in komplex fixiertem Zyklus
DE102017000471A1 (de) Numerisches Steuersystem mit Einsatz von durch Bearbeitungssimulation analysierten Daten bei der tatsächlichen Bearbeitung
DE102013103000A1 (de) Bearbeitungsprogramm-Erzeugungsvorrichtung für eine Simulation einer Bearbeitung auf einem interaktiven Bildschirm
DE102016003642A1 (de) Servosteuervorrichtung für eine lernende Steuerung durch Änderung einer Referenzachse
DE102016002235B4 (de) Numerische Steuerung, die Maschinenkoordinatenwerte durch Verwenden eines absoluten Positionsdetektors wiederherstellt
DE102015016489A1 (de) Numerische Steuerung
DE102015004930A1 (de) Numerische Steuervorrichtung für Maschinenwerkzeug
DE102016000160A1 (de) Numerische Steuerung, eingerichtet für einen Teach-Betrieb mit wechselnden Arbeitsbereichen
DE102015015291A1 (de) Numerische Steuerung mit Unterstützungsfunktion für die Parametereinstellung in Zusammenhang mit einer Zykluszeit
DE102015007130B4 (de) Numerische Steuerung mit Funktion zur Überlagerung eines Überlagerungsablaufs synchron mit einem periodischen Bearbeitungszyklus
DE102014008572A1 (de) Numerische Steuereinheit mit einer Funktion zum glatten bzw. sanften Ändern der Vorschubgeschwindigkeit, wenn ein Override geändert wird
DE102016007651A1 (de) Numerische Steuerung mit Funktion zur automatischen Auswahl eines Speicherungsziels für ein Bearbeitungsprogramm
DE2338880A1 (de) Verfahren und vorrichtungen zur steuerung der beweglichen teile einer werkzeugmaschine durch ein numerisches umriss- oder punkt-fuer-punkt-steuerungssystem, wobei zwei teile der maschine unabhaengig voneinander entlang einer gemeinsamen achse bewegt werden koennen
DE102016009127A1 (de) Synchronisationssteuerung mit Funktion zur Vermeidung von in einem Synchronisationsstartblock erzeugtem Schock
DE102014105431B4 (de) Betriebssystem für eine direkte numerische Steuerung
EP3438773A1 (de) Bearbeitung von werkstücken mit modellgestützter fehlerkompensation
DE102015015954A1 (de) Numerische Steuerung
DE102014016807B4 (de) Numerische Steuervorrichtung mit einer Funktion zur gleichzeitigen Ausführung einer Vielzahl von Befehlen unter Verwendung von Daten im Tabellenformat

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final