DE19614232A1 - Verfahren und Vorrichtung für die numerische Steuerung - Google Patents

Verfahren und Vorrichtung für die numerische Steuerung

Info

Publication number
DE19614232A1
DE19614232A1 DE19614232A DE19614232A DE19614232A1 DE 19614232 A1 DE19614232 A1 DE 19614232A1 DE 19614232 A DE19614232 A DE 19614232A DE 19614232 A DE19614232 A DE 19614232A DE 19614232 A1 DE19614232 A1 DE 19614232A1
Authority
DE
Germany
Prior art keywords
cycle
speed
command pulse
movement
sampling cycle
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.)
Withdrawn
Application number
DE19614232A
Other languages
English (en)
Inventor
Yuji Mizukami
Yoshihiko Tsurumi
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE19614232A1 publication Critical patent/DE19614232A1/de
Withdrawn legal-status Critical Current

Links

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/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/34Director, elements to supervisory
    • G05B2219/34095Look ahead segment calculation
    • 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/34Director, elements to supervisory
    • G05B2219/34179Variable interpolation speed or resolution
    • 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/34Director, elements to supervisory
    • G05B2219/34366Interpolation interrupt so as to avoid fractions of command pulses
    • 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/42Servomotor, servo controller kind till VSS
    • G05B2219/42266Variable sampling rate, slow at low velocity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)
  • Feedback Control In General (AREA)

Description

Die vorliegende Erfindung betrifft ein Achsensteuerverfahren in einer numerischen Steuervorrichtung, und insbesondere eine numerische Steuervorrichtung und ein numerisches Steuerverfahren, bei welchen dann, wenn ein NC- Bearbeitungsprogramm (numerisch gesteuertes Bearbeitungsprogramm) ausgeführt wird, Schwankungen einer Vorschubgeschwindigkeit und eine Verschiebung einer Bewegungsortskurve, die in einem Intervall zwischen einem bestimmten Programmblock und einem nächsten Programmblock erzeugt werden, ausgeschaltet sind, und die Bearbeitungsgenauigkeit eines Werkstücks dadurch verbessert wird, daß sehr feinfühlige Befehle während der Beschleunigung oder Verzögerung ausgegeben werden.
Fig. 16 ist ein Blockschaltbild, welches den Gesamtaufbau einer konventionellen numerischen Steuervorrichtung zeigt. In dieser Figur weist die konventionelle numerische Steuervorrichtung ein Bearbeitungsprogramm 1 auf, einen Programmanalyseabschnitt 2, einen Interpolationsabschnitt 3, einen Bewegungsbefehlsimpulsverteilungsabschnitt 4, einen Beschleunigungs-/Verzögerungsabschnitt 5, einen Befehlsimpulsausgabeabschnitt 6, einen Antriebsabschnitt 7, und einen Motor 8, welcher das Objekt der Steuerung darstellt.
Das Bearbeitungsprogramm 1 ist ein NC-Bearbeitungsprogramm, und ist einer Speichervorrichtung gespeichert. Es wird darauf hingewiesen, daß das Bearbeitungsprogramm 1 in mehrere Programmblöcke unterteilt ist, und in der numerischen Steuervorrichtung auch als ein diskreter Programmblock behandelt wird. Der Programmanalyseabschnitt 2 analysiert das Bearbeitungsprogramm 1, und berechnet einen Bewegungsstartpunkt und einen Bewegungsendpunkt in jedem Programmblock. Der Interpolationsabschnitt 3 führt eine Interpolation in Abhängigkeit von einem Bewegungsstartpunkt und einem Bewegungsendpunkt für jeden Programmblock durch, der von dem Programmanalyseabschnitt 2 analysiert wurde, und gibt Bewegungsraten in jede Axialrichtung aus, beispielsweise Bewegungsraten in der X-, Y- und Z-Axialrichtung, wenn der Raum für die Steuerung ein dreidimensionaler Raum ist.
Der Bewegungsbefehlsimpulsverteilungsabschnitt 4 berechnet eine Bewegungsrate für einen Einheitszeitraum in Abhängigkeit von einer Bewegungsrate in jede Axialrichtung, die in dem Interpolationsabschnitt 3 erhalten wird, und gibt einen Geschwindigkeitsbefehlsimpuls aus. Es wird darauf hingewiesen, daß während der Ausführung der Steuerung des Motors 8 einmal für jeden vorbestimmten Zeitraum (nachstehend als Abtastzyklus bezeichnet) eine Bewegungsrate für den Einheitszeitraum für einen Abtastzyklus berechnet wird, und daß die Impulsbreite eines Geschwindigkeitsbefehlsimpulses einem Abtastzyklus entspricht.
Der Beschleunigungs-/Verzögerungsabschnitt 5 empfängt einen Geschwindigkeitsbefehlsimpuls von dem Bewegungsbefehlsimpulsverteilungsabschnitt 4, und führt eine Verarbeitung zur Beschleunigung oder Verzögerung des Geschwindigkeitsbefehlsimpulses durch, wenn eine Änderung des Inhalts des Geschwindigkeitsbefehls auftritt. Der Befehlsimpulsausgabeabschnitt 6 ist eine Ausgangsschnittstelle zum Liefern des Geschwindigkeitsbefehlsimpulses, der in dem Beschleunigungs-/Verzögerungsabschnitt 5 eine Bearbeitung in Bezug auf eine Beschleunigung oder Verzögerung erhalten hat, an den Antriebsabschnitt 7. Dann steuert der Antriebsabschnitt 7 den Motor 8, der den zu steuernden Gegenstand darstellt, entsprechend dem ihm zugeführten Geschwindigkeitsbefehlsimpuls.
Nachstehend erfolgt eine Beschreibung von Bearbeitungsvorgängen bei der voranstehend geschilderten, konventionellen numerischen Steuervorrichtung. Bei der nachfolgenden Beschreibung werden Befehle für einen Startpunkt und einen Endpunkt der Bewegung auf einer zweidimensionalen Ebene in jedem Programmblock beschrieben, sowie ein Geschwindigkeitsbefehlsimpuls, der von dem Bewegungsbefehlsimpulsverteilungsabschnitt 4 bei einem festgelegten Abtastzyklus eingestellt wird, und es werden die Schwierigkeiten erläutert, die bei dieser numerischen Steuervorrichtung auftreten, die auf der konventionellen Technik beruht.
Fig. 17 zeigt einen Geschwindigkeitsbefehlsimpuls, der von dem Geschwindigkeitsbefehlsimpulsverteilungsabschnitt 4 für einen Bewegungsstartpunkt 101, einen Bewegungsendpunkt 102 und einen festgelegten Abtastzyklus T101 eingestellt wird, und dies stellt einen Fall dar, in welchem in dem endgültigen Abtastzyklus kein Bruchteil erzeugt wird, wenn eine Bewegungsrate für einen Programmblock durch einen Abtastzyklus unterteilt wird.
Wie voranstehend geschildert wird ein Geschwindigkeitsbefehlsimpuls, der dem Antriebsabschnitt 7 zugeführt wird, für einen festgelegten Abtastzyklus berechnet. Wenn ein Bewegungsbereich und eine Vorschubgeschwindigkeit in jeder Axialrichtung festgelegt werden, abhängig von dem Ergebnis der Untersuchung eines Programmblocks, berechnet der Bewegungsbefehlsimpulsverteilungsabschnitt 4 einen Geschwindigkeitsbefehlsimpuls für jede Abtastzeit über die folgende Beziehung:
Bewegungsbereich für einen Abtastzyklus
= Vorschubgeschwindigkeit×Abtastzyklus
Wenn irgendeine Änderung bei dem Geschwindigkeitsbefehl auftritt, wird eine Bearbeitung für eine Beschleunigung oder Verzögerung von dem Beschleunigungs-/Verzögerungsabschnitt 5 bei dem Geschwindigkeitsbefehlsimpuls durchgeführt, und wird der Geschwindigkeitsbefehlsimpuls, mit welchem eine Bearbeitung bezüglich einer Beschleunigung oder einer Verzögerung durchgeführt wurde, über den Befehlsimpulsausgabeabschnitt 6 an den Antriebsabschnitt 7 geliefert, wodurch der Motor 8 angetrieben wird.
Wenn beispielsweise irgendeine Änderung einer Geschwindigkeit auftritt, wenn Programmblöcke jeweils für einen Schneidvorschub nacheinander ablaufen, kann die schneidend bearbeitete Oberfläche beschädigt werden, und aus diesem Grund wird gewöhnlich dann, wenn die Vorschubgeschwindigkeit konstant ist, die Bearbeitung zur Beschleunigung oder Verzögerung durch den Beschleunigungs-/Verzögerungsabschnitt 5 oder eine Bearbeitung zum Anhalten der Werkstückbearbeitung nicht durchgeführt, und geht die Systemsteuerung zur Steuerverarbeitung durch den nächsten Programmblock über.
Wenn ein Abtastzyklus in jedem Programmblock auf einem konstanten Wert gehalten wird, kann in einem Fall, in welchem eine Bewegungsrate für einen Programmblock durch einen Abtastzyklus unterteilt wird, manchmal ein Bruchteil in dem endgültigen Abtastzyklus erzeugt werden, infolge einer Bewegungsrate für den Programmblock. Der Geschwindigkeitsbefehlsimpuls in diesem Fall ist in Fig. 18 dargestellt. Die Figur zeigt einen Geschwindigkeitsbefehlsimpuls für einen Startpunkt P101 und einen Endpunkt P103 jeweils für die Bewegung, und den Abtastzyklus T101.
Wie voranstehend geschildert wird dann, wenn ein Geschwindigkeitsbefehlsimpuls mit einem Bruchteil, der in dem endgültigen Abtastzyklus erzeugt wird, unverändert für die Antriebssteuerung des Motors 8 verwendet wird, eine hohe Geschwindigkeitsänderung in einem Intervall zwischen Programmblöcken erzeugt, was auf nachteilige Weise die Werkstücksbearbeitungsgenauigkeit verschlechtert.
Als Verfahren zur Lösung dieses Problems wurde bei der konventionellen Technik eine Vorgehensweise verwendet, bei welcher ein in dem endgültigen Abtastzyklus erzeugter Bruchteil zum nächsten Programmblock hinzuaddiert wurde, oder eine Vorgehensweise, bei welcher die Amplitude eines Geschwindigkeitsbefehlsimpulses (Befehlsgeschwindigkeit) geändert wurde, so daß nicht ein Bruchteil in jedem Programmblock erzeugt wird.
Fig. 19 zeigt einen Geschwindigkeitsbefehlsimpuls in einem Fall, in welchem die Vorgehensweise verwendet wird, bei welcher ein Bruchteil eines Geschwindigkeitsbefehlsimpulses, der in dem endgültigen Abtastzyklus in einem ersten Programmblock erzeugt wird, einem Geschwindigkeitsbefehlsimpuls in einem ersten Abtastzyklus in einem darauffolgenden, zweiten Programmblock hinzuaddiert wird. Fig. 20 zeigt einen Geschwindigkeitsbefehlsimpuls in einem Fall, in welchem die Vorgehensweise verwendet wird, bei welcher eine Amplitude (Befehlsgeschwindigkeit) eines Geschwindigkeitsbefehlsimpulses für jeden Programmblock geändert wird, so daß ein Bruchteil nicht erzeugt wird.
Zuerst erfolgt eine Beschreibung von Schwierigkeiten, die in einem Fall auftreten, in welchem die Vorgehensweise des Hinzuaddierens eines in dem endgültigen Abtastzyklus erzeugten Bruchteils zum nächsten Programmblock verwendet wird, unter Bezugnahme auf die Fig. 21A und 21B. Die Fig. 21A und 21B zeigen Geschwindigkeitsbefehlsimpulse, die von zwei Programmblöcken erzeugt werden, nämlich einem ersten und einem zweiten Programmblock, in einem zweidimensionalen Vektor, der Y-Axialrichtung und der X-Axialrichtung (Fig. 21A), sowie eine Ortskurve, die ursprünglich entsprechend dem Befehl verfolgt werden sollte, und die tatsächliche Bewegungsortskurve (Fig. 21B).
Das Bearbeitungsprogramm 1 bei diesem konkreten Beispiel ist nachstehend angegeben:
N1 G1 Y20. F1000;
N2 G1 X15. Y15.
In Fig. 21B wird nämlich eine Bewegung von einem Startpunkt P104 zu einem Endpunkt P105 in dem ersten Programmblock befohlen, und eine Bewegung von einem Startpunkt P105 zu einem Endpunkt P106 in dem zweiten Programmblock befohlen, und daher wird eine Steuerung entsprechend einem festgelegten Abtastzyklus T101 zur Verfügung gestellt.
Wie aus Fig. 21A hervorgeht, wird zuerst als Richtungsbefehl für einen zweidimensionalen Vektor ein Bruchteil eines Geschwindigkeitsbefehlsimpulses, der in dem endgültigen Abtastzyklus in dem ersten Programmblock erzeugt wird, zu einem Geschwindigkeitsbefehlsimpuls in dem ersten Abtastzyklus in dem nächsten, zweiten Programmblock hinzuaddiert, und wird ein Geschwindigkeitsbefehlsimpuls für einen Richtungsbefehl eines Vektors erzeugt. Dann werden in Abhängigkeit von dem Geschwindigkeitsbefehlsimpuls für einen Richtungsbefehl für einen Vektor Geschwindigkeitsbefehlsimpulse für jede Axialrichtung (die Y-Axialrichtung und die X-Axialrichtung) erzeugt.
Aus diesem Grund wird eine Bewegungssteuerung in dem ersten Abtastzyklus in dem zweiten Programmblock auf solche Weise zur Verfügung gestellt, daß trotz der Tatsache, daß ursprünglich eine Bewegung von einem Punkt P107 über einen Punkt 105 zu einem Punkt 108 durchgeführt werden sollte, tatsächlich eine Bewegung direkt von dem Punkt P107 zum Punkt P108 erfolgt. Die tatsächliche Bewegungsortskurve wird nämlich gegenüber jener verschoben, die ursprünglich entsprechend dem Befehl folgen sollte, und es wird ein Fehler in der Bewegungsortskurve erzeugt.
Nachstehend erfolgt eine Beschreibung von in einem Fall auftretenden Problemen, in welchem die Vorgehensweise der Änderung einer Amplitude eines Befehlsimpulses (Befehlsgeschwindigkeit) verwendet wird, so daß in jedem Programmblock kein Bruchteil erzeugt wird, unter Bezugnahme auf Fig. 22. Fig. 22 zeigt Geschwindigkeitsbefehlsimpulse, die in drei Programmblöcken erzeugt werden, nämlich in dem ersten, zweiten und dritten Programmblock. Wie aus dieser Figur hervorgeht, wird bei diesem Verfahren eine Befehlsgeschwindigkeit in jedem Programmblock so geändert, daß sich die Geschwindigkeit in jedem Programmblock ändert, und selbst in einem Fall, in welchem eine Befehlsgeschwindigkeit in mehreren Programmblöcken auf einem konstanten Niveau gehalten werden sollte, tritt manchmal eine Geschwindigkeitsänderung auf, wodurch die Werkstücksbearbeitungsgenauigkeit verschlechtert wird.
Weiterhin zeigt Fig. 23 einen Geschwindigkeitsbefehlsimpuls in einem Fall, in welchem versucht wird, eine Bewegungssteuerung durchzuführen, die eine schnelle Beschleunigung oder Verzögerung hervorruft, und zwar unter Verwendung der konventionellen Vorgehensweise. In einem Fall, in welchem eine rechteckige Form einer Geschwindigkeitsänderung angefordert wird, wie durch die durchgezogene Linie bezeichnet, entsprechend einem Programmbefehl, weist das erzeugte Beschleunigungs- oder Verzögerungsmuster eine Trapezform auf, wie durch die gestrichelte Linie angedeutet ist. Darüberhinaus ist der tatsächlich erzeugte Geschwindigkeitsbefehlsimpuls konstant, unabhängig davon, ob der Abtastzyklus eine Beschleunigung oder eine Verzögerung betrifft, so daß der Befehl sehr ungenau wird, und eine Geschwindigkeitsänderung bei der Beschleunigung oder Verzögerung nicht auf einen hohen Wert gesetzt werden kann, da die Werkstückbearbeitungsgenauigkeit auf einem bestimmten Niveau gehalten werden muß.
Wie voranstehend geschildert treten bei dem konventionellen Typ einer numerischen Steuervorrichtung deswegen, da ein Abtastzyklus auf einem konstanten Wert gehalten wird, die nachstehend geschilderten Schwierigkeiten auf.
Erstens tritt in einem Fall, in welchem ein Bruchteil in einem Geschwindigkeitsbefehlsimpuls für den endgültigen Abtastzyklus eines Programmblocks erzeugt wird, eine hohe Geschwindigkeitsänderung in einem Intervall zwischen Programmblöcken auf, was die Werkstückbearbeitungsgenauigkeit verringert.
Zweitens wird in einem Fall, in welchem das Verfahren des Addierens eines Bruchteils, der in dem endgültigen Abtastzyklus erzeugt wird, zu einem nachfolgenden Programmblock verwendet wird, um daß voranstehend geschilderte, erste Problem zu lösen, die tatsächliche Bewegungsortskurve gegenüber jener verschoben, die ursprünglich verfolgt werden sollte, wodurch ein Fehler in Bezug auf die Bewegungsortskurve erzeugt wird, und daher die Werkstückbearbeitungsgenauigkeit verschlechtert wird.
Drittens tritt in einem Fall, in welchem das Verfahren der Änderung der Amplitude eines Geschwindigkeitsbefehlsimpulses verwendet wird, so daß nicht ein Bruchteil in jedem Programmblock erzeugt wird, um das erste, voranstehend geschilderte Problem zu lösen, eine Geschwindigkeitsänderung in jedem Programmblock auf, und tritt eine Geschwindigkeitsänderung selbst in einem Fall auf, in welchem eine Befehlsgeschwindigkeit über mehrere Programmblöcke auf einem konstanten Niveau gehalten werden sollte, was die Werkstückbearbeitungsgenauigkeit verringert.
Viertens wird in einem Fall, in welchem eine Bewegungssteuerung erfolgt, die eine schnelle Beschleunigung oder Verzögerung hervorruft, der Befehl grob oder ungenau, und ist es unmöglich, die Geschwindigkeit bei der Beschleunigung oder Verzögerung wesentlich zu ändern, da die Werkstückbearbeitungsgenauigkeit auf einem bestimmten Niveau gehalten werden muß.
Ein Ziel der vorliegenden Erfindung besteht in der Bereitstellung eines numerischen Steuerverfahrens und einer numerischen Steuervorrichtung, bei welchen eine hohe Werkstückbearbeitungsgenauigkeit in einem Intervall dadurch erzielt wird, daß eine Änderung der Vorschubgeschwindigkeit ausgeschaltet wird, und eine Verschiebung der Bewegungsortskurve ausgeschaltet wird, die in einem Intervall der Werkstückbearbeitung zwischen Programmblöcken erzeugt wird, und eine Toleranz bei der Bearbeitung durch eine numerische Steuervorrichtung dadurch erzeugt wird, daß die Arbeitsbelastung der numerischen Steuervorrichtung verringert wird.
Ein weiteres Ziel der vorliegenden Erfindung besteht in der Ermöglichung einer feinen Bewegungssteuerung selbst bei einer Werkstückbearbeitung, welche eine schnelle Beschleunigung oder Verzögerung hervorruft, und in der Verbesserung der Werkstückbearbeitungsgenauigkeit bei der Bearbeitung eines Werkstücks.
Bei einem numerischen Steuerverfahren gemäß einer Zielrichtung der vorliegenden Erfindung wird in einem Fall, in welchem eine Bewegungsrate und eine Vorschubgeschwindigkeit in jeder Axialrichtung aus einer Bewegungsposition eines Werkzeugs und einer Vorschubgeschwindigkeit des Werkzeugs dadurch berechnet werden, daß fortschreitend ein Bearbeitungsprogramm durch einen Programmblock oder durch mehrere Programmblöcke analysiert wird, ein Befehlsimpuls, der von einem festgelegten Abtastzyklus unterteilt wird, erzeugt, abhängig von der berechneten Bewegungsrate und der Vorschubgeschwindigkeit, und wird der Zeitpunkt zur Ausgabe des Befehlsimpulses an ein zu steuerndes Objekt entsprechend dem Abtastzyklus gesteuert, und wird der Abtastzyklus so geändert, daß in dem Befehlsimpuls ein Bruchteil nicht erzeugt wird, wodurch ein Abtastzyklus durch einen Programmblock oder durch mehrere Programmblöcke geändert werden kann, was das Ausschalten einer Schwankung einer Vorschubgeschwindigkeit und eine Verschiebung der Bewegungsortskurve ausschaltet, die in einem Intervall der Werkstückbearbeitung zwischen Programmblöcken erzeugt werden.
Bei einem numerischen Steuerverfahren gemäß einer weiteren Zielrichtung der vorliegenden Erfindung werden eine Bewegungsposition eines Werkzeugs und eine Vorschubgeschwindigkeit des Werkzeugs durch fortschreitende Analyse eines Bearbeitungsprogramms durch einen Programmblock oder mehrere Programmblöcke erhalten, werden eine Bewegungsrate und eine Vorschubgeschwindigkeit entsprechend der Bewegungsgeschwindigkeit eines Werkzeugs und entsprechend einer Vorschubgeschwindigkeit des Werkzeugs berechnet, wird ein Abtastzyklus so geändert, daß ein Bruchteil für einen Befehlsimpuls nicht in dem einen Programmblock oder in den mehreren Programmblöcken erzeugt wird, wird ein Befehlsimpuls erzeugt, der gleichmäßig durch die geänderte Abtastrate unterteilt ist, in Abhängigkeit von der berechneten Bewegungsrate und der Vorschubgeschwindigkeit, und wird der Zeitpunkt zur Ausgabe des erzeugten Befehlsimpuls an ein zu steuerndes Objekt entsprechend dem Abtastzyklus gesteuert, wodurch ein Abtastzyklus durch einen Programmblock oder durch mehrere Programmblöcke geändert werden kann, was eine Ausschaltung einer Schwankung einer Vorschubgeschwindigkeit gestattet, und die Ausschaltung einer Verschiebung der Bewegungsortskurve, die in einem Werkstückbearbeitungsintervall zwischen den Programmblöcken erzeugt wird.
Bei einer numerischen Steuervorrichtung gemäß einer weiteren Zielrichtung der vorliegenden Erfindung erhält eine Analysevorrichtung eine Bewegungsposition eines Werkzeugs und eine Vorschubgeschwindigkeit des Werkzeugs durch fortschreitende Analyse eines Bearbeitungsprogramm anhand eines Programmblocks oder mehrerer Programmblöcke, eine Interpolationsvorrichtung berechnet eine Bewegungsrate und eine Vorschubgeschwindigkeit entsprechend der Bewegungsposition eines Werkzeugs und der Vorschubgeschwindigkeit des Werkzeugs, eine Abtastzyklusberechnungsvorrichtung ändert einen Abtastzyklus, so daß ein Bruchteil eines Befehlsimpulses nicht in einem Programm oder in mehreren Programmblöcken erzeugt wird, eine Befehlsimpulserzeugungsvorrichtung erzeugt einen Befehlsimpuls, der gleichmäßig durch den geänderten Abtastzyklus unterteilt ist, abhängig von der berechneten Bewegungsrate und der Vorschubgeschwindigkeit, und eine Abtaststeuervorrichtung steuert den Zeitpunkt zur Ausgabe des erzeugten Befehlsimpulses an ein zu steuerendes Objekt entsprechend einem Abtastzyklus, wodurch ein Abtastzyklus für einen Programmblock oder für mehrere Programmblöcke geändert werden kann, was eine Ausschaltung von Schwankungen einer Vorschubgeschwindigkeit erlaubt, und ebenso eine Ausschaltung einer Verschiebung der Bewegungsortskurve, die in Intervallen der Werkstückbearbeitung zwischen Programmblöcken erzeugt wird.
Bei einer numerischen Steuervorrichtung gemäß einer weiteren Zielrichtung der vorliegenden Erfindung gleicht die Abtastzyklusberechnungsvorrichtung den Abtastzyklus an, wodurch eine Schwankung einer Vorschubgeschwindigkeit und eine Verschiebung einer Bewegungsortskurve, die in einem Intervall der Werkstückbearbeitung zwischen Programmblöcken erzeugt wird, ausgeschaltet werden können.
Bei einer numerischen Steuervorrichtung gemäß einer weiteren Zielrichtung der vorliegenden Erfindung ändert die Abtastzyklusberechnungsvorrichtung einen Abtastzyklus stärker als den ursprünglichen Abtastzyklus, wenn in einem endgültigen Abtastzyklus für einen Programmblock oder für mehrere Programmblöcke ein Befehlsimpuls für den endgültigen Abtastzyklus einen Bruchteil kleiner ist als ein Befehlsimpuls in einem anderen Abtastzyklus, wodurch die Arbeitsbelastung einer numerischen Steuervorrichtung verringert werden kann.
Bei einer numerischen Steuervorrichtung gemäß einer weiteren Zielrichtung der vorliegenden Erfindung ermittelt die Abtastzyklusberechnungsvorrichtung in Abhängigkeit von der Vorschubgeschwindigkeit, die von der Interpolationsvorrichtung berechnet wird, ob die momentane Betriebsart eine Beschleunigung oder Verzögerung darstellt, oder stellt bei einer Bewegung bei konstanter Geschwindigkeit einen Abtastzyklus auf einen kürzeren Zeitraum ein als jenen für eine Bewegung mit konstanter Geschwindigkeit bei der Beschleunigung oder Verzögerung, und stellt einen Abtastzyklus auf einen längeren Zeitraum ein als jenen für die Beschleunigung oder Verzögerung bei der Bewegung mit konstanter Geschwindigkeit. Wie voranstehend geschildert kann eine Steuerung für die Geschwindigkeit dadurch zur Verfügung gestellt werden, daß sie glatt geändert wird, und zwar dadurch, daß ein Abtastzyklus zeitlich kürzer bei der Beschleunigung oder Verzögerung ausgebildet wird, und kann die Arbeitsbelastung für die numerische Steuervorrichtung dadurch verringert werden, daß ein Abtastzyklus zeitlich länger bei der Bewegung mit konstanter Geschwindigkeit ausgebildet wird.
Bei einer numerischen Steuervorrichtung gemäß einer weiteren Zielrichtung der vorliegenden Erfindung bestimmt die Abtastzyklusberechnungsvorrichtung, ob ein Befehl für die Bewegung ausgegeben wurde oder nicht, und stellt einen Abtastzyklus auf einen längeren Zeitraum ein als einen bestimmten Wert, beispielsweise auf einen unendlich langen Zeitraum, wenn ein Befehl für eine Bewegung nicht ausgegeben wurde, und versetzt die Vorrichtung in den Bereitschaftszustand, wodurch die Arbeitsbelastung für eine numerische Steuervorrichtung verringert werden kann.
Bei einer numerischen Steuervorrichtung gemäß einer weiteren Zielrichtung der vorliegenden Erfindung ändert die Abtastzyklusberechnungsvorrichtung dann, wenn sie einen Befehl für einen Freilauf empfängt, den Abtastzyklus, so daß in dem Befehlsimpuls kein Bruchteil erzeugt wird, wodurch selbst in der Freilaufbetriebsart eine Schwankung einer Vorschubgeschwindigkeit und eine Verschiebung einer Bewegungsortskurve, die in einem Intervall der Werkstückbearbeitung zwischen Programmblöcken erzeugt wird, ausgeschaltet werden können.
Die Erfindung wird nachstehend anhand zeichnerisch dargestellter Ausführungsbeispiele näher erläutert, aus welchen weitere Vorteile und Merkmale hervorgehen. Es zeigt:
Fig. 1 ein Blockschaltbild des Gesamtaufbaus einer numerischen Steuervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung;
Fig. 2 ein konkretes Blockschaltbild eines Unterbrechungssteuerabschnitts in der numerischen Steuervorrichtung gemäß einer Ausführungsform der vorliegenden Erfindung;
Fig. 3 ein Flußdiagramm zur Erläuterung der Bearbeitung in einem Bewegungsbefehlsimpulsverteilungsabschnitt und in einem Abtastzeitintervallberechnungsabschnitt gemäß Ausführungsform 1;
Fig. 4A bis 4C erläuternde Ansichten eines Geschwindigkeitsbefehlsimpulses für einen konkreten Befehl für eine Bewegung auf der Grundlage einer konventionellen Technik und ebenso auf der Grundlage der Ausführungsform 1;
Fig. 5A eine erläuternde Ansicht einer Ortskurve entsprechend einem Befehl für eine Bewegung mit zwei Programmblöcken;
Fig. 5B eine erläuternde Ansicht von Geschwindigkeitsbefehls impulsen in dem zweidimensionalen Vektor in Y-Achsenrichtung und X- Achsenrichtung, der erzeugt werden soll;
Fig. 5C eine erläuternde Ansicht einer aktuellen Bewegungsortskurve des Vektors;
Fig. 6 ein Flußdiagramm zur Erläuterung der Bearbeitung durch einen Bewegungsbefehlsimpulsverteilungsabschnitt und durch einen Abtastzeitintervallberechnungsabschnitt gemäß Ausführungsform 2;
Fig. 7 eine erläuternde Ansicht eines Geschwindigkeitsbefehlsimpulses für einen konkreten Befehl für eine Bewegung gemäß Ausführungsform 2;
Fig. 8 ein Flußdiagramm zur Erläuterung der Verarbeitung durch den Bewegungsbefehls impulsverteilungsabschnitt und durch einen Abtastzeitintervallberechnungsabschnitt gemäß Ausführungsform 3;
Fig. 9 eine erläuternde Ansicht eines Geschwindigkeitsbefehlsimpulses für einen konkreten Befehl für die Bewegung gemäß Ausführungsform 3;
Fig. 10 ein Flußdiagramm zur Erläuterung der Verarbeitung durch den Bewegungsbefehlsimpulsverteilungsabschnitt und einen Abtastzeitintervallberechnungsabschnitt gemäß Ausführungsform 3;
Fig. 11 ein Flußdiagramm zur Erläuterung der Bearbeitung durch den Bewegungsbefehlsimpulsverteilungsabschnitt und einen Abtastzeitintervallberechnungsabschnitt gemäß Ausführungsform 4;
Fig. 12A und 12B Zeitablaufdiagramme, welche den Zeitpunkt für eine normale Übertragung von der numerischen Steuervorrichtung an eine Servoseite gemäß Ausführungsform 4 zeigen;
Fig. 13A und 13B Zeittaktdiagramme, welche einen normalen Übertragungszeitpunkt von der numerischen Steuervorrichtung an die Servoseite gemäß Ausführungsform 4 zeigen;
Fig. 14A und 14B Zeitablaufdiagramme, welche einen Zustand zeigen, in welchem ein Freilaufbefehl (Hochgeschwindigkeitsbefehl) gemäß Ausführungsform 5 empfangen wird;
Fig. 15A und 15B Zeitablaufdiagramme, welche einen Zustand zeigen, in welchem ein Freilaufbefehl (Niedergeschwindigkeitsbefehl) gemäß Ausführungsform 5 empfangen wird;
Fig. 16 ein Blockschaltbild des Gesamtaufbaus einer konventionellen numerischen Steuervorrichtung;
Fig. 17 eine erläuternde Ansicht, welche ein Verfahren zur Unterteilung einer Bewegungsrate in jedem Programmblock durch einen Abtastzyklus für Geschwindigkeitsbefehlsimpulse bei einem Beispiel auf der Grundlage der konventionellen Technik zeigt;
Fig. 18 eine erläuternde Ansicht, welche ein Verfahren zur Unterteilung einer Bewegungsrate in jedem Programmblock durch einen Abtastzyklus für Geschwindigkeitsbefehlsimpulse in dem auf der konventionellen Technik beruhenden Beispiel zeigt; und schließlich einen Fall zeigt, in welchem ein Bruchteil des Geschwindigkeitsbefehlsimpulses in einem endgültigen Abtastzyklus erzeugt wird;
Fig. 19 eine erläuternde Ansicht, welche ein Verfahren zur Unterteilung einer Bewegungsrate in jedem Programmblock durch einen Abtastzyklus für Geschwindigkeitsbefehlsimpulse in dem auf der konventionellen Technik beruhenden Beispiel zeigt; und insbesondere eine erläuternde Ansicht eines ersten Verfahrens zur Behandlung eines Falles zeigt, in welchem ein Bruchteil in dem Geschwindigkeitsbefehlsimpuls erzeugt wurde;
Fig. 20 eine erläuternde Ansicht, welche ein Verfahren zur Unterteilung einer Bewegungsrate in jedem Programmblock durch einen Abtastzyklus für Geschwindigkeitsbefehlsimpulse in dem auf der konventionellen Technik beruhenden Beispiel zeigt; und insbesondere eine erläuternde Ansicht eines zweiten Verfahrens zur Behandlung eines Falles zeigt, in welchem ein Bruchteil in dem Geschwindigkeitsbefehlsimpuls erzeugt wurde;
Fig. 21A und 21B erläuternde Ansichten einiger Probleme in einem Fall, in welchem das erste Verfahren zur Behandlung dieser Probleme bei dem auf der konventionellen Technik beruhenden Beispiel verwendet wird (Fig. 21 ist eine erläuternde Ansicht eines Geschwindigkeitsbefehlsimpulses, der entsprechend zwei Programmblöcken in dem zweidimensionalen Vektor erzeugt wird, nämlich bezüglich der Y-Achsenrichtung und der X-Achsenrichtung, und Fig. 21 ist eine erläuternde Ansicht eines Befehls und dessen aktueller Bewegungsortskurve);
Fig. 22 eine erläuternde Ansicht einiger Probleme, die in einem Fall auftreten, in welchem das zweite Verfahren zur Behandlung dieser Probleme bei dem Beispiel verwendet wird, welches auf der konventionellen Technik beruht; und
Fig. 23 eine erläuternde Ansicht eines Geschwindigkeitsbefehlsimpulses, eines Befehls für ein Programm, und eines Musters bei der Beschleunigung für einen Abtastzyklus bei der Beschleunigung oder Verzögerung in dem auf der konventionellen Technik beruhenden Beispiel.
Fig. 1 ist ein Blockschaltbild, welches den Gesamtaufbau der numerischen Steuervorrichtung gemäß Ausführungsform 1 der vorliegenden Erfindung zeigt. Die numerische Steuervorrichtung bei dieser Ausführungsform kann einen Abtastzyklus so zurücksetzen, daß ein Abtastzyklus in dem Programmblock auf einem konstanten Niveau oder Pegel mit der befohlenen Vorschubgeschwindigkeit gehalten wird, wenn ein Geschwindigkeitsbefehlsimpuls, der von einem Abtastzyklus unterteilt wird, entsprechend einer Bewegungsrate und einer Vorschubgeschwindigkeit für einen Programmblock erzeugt wird.
In Fig. 1 weist die numerische Steuervorrichtung gemäß der vorliegenden Ausführungsform ein Werkstückbearbeitungsprogramm 1 auf, einen Programmanalyseabschnitt (eine Analysevorrichtung) 2, einen Interpolationsabschnitt (eine Interpolationsvorrichtung) 3, einen Bewegungsbefehlsimpulsverteilungsabschnitt (Befehlsimpulserzeugungsabschnitt) 14, einen Beschleunigungs-/Verzögerungsabschnitt 15, einen Befehlsimpulsausgabeabschnitt 16, einen Treiber- oder Antriebsabschnitt 17, einen Abtastzeitintervallberechnungsabschnitt (Abtastzyklusberechnungsvorrichtung) 9, einen Unterbrechungssteuerabschnitt (Abtaststeuerabschnitt ) 10, sowie einen Motor 8, der den zu steuernden Gegenstand darstellt. Es wird darauf hingewiesen, daß in dieser Figur dieselben Bezugszeichen den Bauteilen zugeordnet sind, welche dieselbe Funktion spielen wie in dem auf der konventionellen Technik (Fig. 16) beruhenden Beispiel, und insoweit erfolgt keine erneute Beschreibung.
Der Bewegungsbefehlsimpulsverteilungsabschnitt 14 berechnet eine Bewegungsrate in jeder Axialrichtung, die einen Steuerraum bildet, die in dem Interpolationsabschnitt 3 erhalten wird, beispielsweise in der X-Achsenrichtung, der Y-Achsenrichtung und der Z-Achsenrichtung, und berechnet eine Bewegungsrate für eine Zeiteinheit abhängig von der Vorschubgeschwindigkeit in jeder Axialrichtung, und gibt Geschwindigkeitsbefehlsimpulse in jede Axialrichtung aus. Es wird darauf hingewiesen, daß die Steuerung für den Motor 8 für ein bestimmtes Zeitintervall (nachstehend als Abtastzyklus bezeichnet) durchgeführt wird, so daß eine Bewegungsrate für eine Zeiteinheit für einen Abtastzyklus berechnet wird, und daß eine Impulsbreite eines Geschwindigkeitsbefehlsimpulses einem Abtastzyklus entspricht. In dem Abtastzyklus wird zuerst ein normaler Abtastzyklus auf einen Standardwert eingestellt, und wird an Befehlsimpulse in jede Axialrichtung verteilt und erzeugt von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14, aber wenn dies aufgrund des erzeugten Geschwindigkeitsbefehlsimpulses erforderlich ist, wird der Abtastzyklus durch den Abtastzeitintervallberechnungsabschnitt 9 zurückgesetzt, und wird der zurückgesetzte Abtastzyklus erneut an Geschwindigkeitsbefehlsimpulse in jede Axialrichtung durch den Bewegungsbefehlsimpulsverteilungsabschnitt 14 verteilt.
Der Abtastzyklusberechnungsabschnitt 9 empfängt die Geschwindigkeitsbefehlsimpulse, die durch den normalen Abtastzyklus (Standardwert) unterteilt werden, in dem Bewegungsbefehlsimpulsverteilungsabschnitt 14, bestimmt für einen Programmblock, ob ein Geschwindigkeitsbefehlsimpuls, der einen Bruchteil eines endgültigen Abtastzyklus darstellt, erzeugt wurde oder nicht, und wenn festgestellt wird, daß ein Bruchteil erzeugt wurde, wird der Abtastzyklus so zurückgesetzt, daß der Abtastzyklus in dem Programmblock auf einem konstanten Pegel oder Niveau gehalten wird, ohne einen Bruchteil infolge der befohlenen Vorschubgeschwindigkeit zu erzeugen.
Der Unterbrechungssteuerabschnitt 10 erzeugt eine Unterbrechung (Interrupt) für den Befehlsimpulsausgabeabschnitt 16 für den Abtastzyklus entsprechend dem in dem Abtastzyklusberechnungsabschnitt 9 eingestellten Abtastzyklus. Fig. 2 ist ein Blockschaltbild, welches den konkreten Aufbau des Unterbrechungssteuerabschnitts 10 zeigt. In dieser Figur weist der Unterbrechungssteuerabschnitt 10 einen Zeitgeber 21 auf, einen Zähler 22, einen Oszillator 23 für den Betrieb des Zeitgebers 21, und eine Unterbrechungsroutine 24.
Der Unterbrechungssteuerabschnitt 10 legt einen Wert für einen Zähler 22 aus dem in dem Abtastzyklusberechnungsabschnitt 9 eingestellten Abtastzyklus fest, und stellt ihn für den Zähler 22 ein. Wenn ein von dem Oszillator 23 berechneter Wert für den Zeitgeber 21 den voreingestellten Wert für den Zähler 22 erreicht, gibt der Zeitgeber 21 eine Anforderung nach einer Unterbrechung an die Unterbrechungsroutine 24 aus. Die Unterbrechungsroutine 14 reagiert auf die Anforderung nach einer Unterbrechung, und erzeugt eine Unterbrechung für den Befehlsimpulsausgabeabschnitt 16. Hierdurch steuert der Unterbrechungssteuerabschnitt 10 einen Ausgabezeitpunkt von dem Befehlsimpulsausgabeabschnitt 16 durch den voreingestellten Abtastzyklus.
Der Beschleunigungs-/Verzögerungsabschnitt 15 empfängt Geschwindigkeitsbefehlsimpulse von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14, und in einem Fall, in welchem eine Änderung des Inhalts des Befehls für eine Geschwindigkeit auftritt, führt der Abschnitt eine Bearbeitung zur Beschleunigung oder Verzögerung bei dem Geschwindigkeitsbefehlsimpuls durch. Der Befehlsimpulsausgabeabschnitt 16 ist eine Ausgangsschnittstelle, welche den Geschwindigkeitsbefehlsimpuls, der eine Bearbeitung in Bezug auf eine Beschleunigung oder Verzögerung in dem Beschleunigungs-/Verzögerungsabschnitt 15 erfahren hat, an den Antriebsabschnitt 7 liefert, und reagiert auf die Unterbrechung von dem Unterbrechungssteuerabschnitt 10 mit der Ausgabe eines Geschwindigkeitsbefehlsimpulses. Weiterhin steuert der Antriebsabschnitt 17 den Motor 8, der den zu steuernden Gegenstand darstellt, in Abhängigkeit von dem gelieferten Geschwindigkeitsbefehlsimpuls und dem Abtastzyklus, der in dem Abtastzyklusberechnungsabschnitt 9 voreingestellt wurde.
Nunmehr erfolgt eine Beschreibung der Bearbeitung durch die numerische Steuervorrichtung gemäß der vorliegenden Ausführungsform. Zuerst analysiert der Programmanalyseabschnitt 2 ein Werkstückbearbeitungsprogramm 1, welches in einer Speichervorrichtung gespeichert ist, für einen Speicherblock, und berechnet einen Startpunkt für die Bewegung und einen Endpunkt für diese in dem Programmblock, entsprechend der befohlenen Bewegungsposition für ein Werkzeug und einer Vorschubgeschwindigkeit für das Werkzeug. Der Interpolationsabschnitt 3 führt eine Interpolationsbearbeitung entsprechend dem berechneten Startpunkt für die Bewegung und dem Endpunkt für die Bewegung durch, welche an eine Bewegungsrate in jeder Axialrichtung und eine Vorschubgeschwindigkeit in jeder Axialrichtung verteilt werden.
Als nächstes erfolgt eine detaillierte Beschreibung jeder Bearbeitung durch den Bewegungsbefehlsimpulsverteilungsabschnitt 14 und durch den Abtastzeitintervallberechnungsabschnitt 9, die jeweils einen für die vorliegende Ausführungsform speziellen Abschnitt darstellen, unter Bezugnahme auf Fig. 3 und die Fig. 4A bis 4C. Fig. 3 ist ein Flußdiagramm zur Erläuterung der Bearbeitung durch den Bewegungsbefehlsimpulsverteilungsabschnitt 14 und den Abtastzeitintervallberechnungsabschnitt 9, und die Fig. 4A bis 4C sind Ansichten zur Erläuterung des Geschwindigkeitsbefehlsimpulses auf der Grundlage der konventionellen Technik und auf der Grundlage der vorliegenden Ausführungsform, in Bezug auf den konkreten Befehl für die Bewegung.
Es wird darauf hingewiesen, daß bei der in den Fig. 4A bis 4C gezeigten Ausführungsform, im Gegensatz zum Startpunkt P1 und dem Endpunkt P2 für die Bewegung (vergleiche Fig. 4A), eine konventionelle Art eines Geschwindigkeitsbefehlsimpulses in Fig. 4B ein Geschwindigkeitsbefehlsimpuls ist, der entsprechend einem Abtastzyklus T1 erzeugt wird, und daß es sich um einen Fall handelt, in welchem ein Bruchteil in dem endgültigen Abtastzyklus erzeugt wird, wenn die Bewegungsrate für einen Programmblock durch den Abtastzyklus T1 unterteilt wird. Zwar stellt ein Geschwindigkeitsbefehlsimpuls bei der in Fig. 4C gezeigten Ausführungsform einen Geschwindigkeitsbefehlsimpuls dar, der entsprechend dem rückgesetzten Abtastzyklus T2 erzeugt wurde, und aus diesem Grund wird in dem endgültigen Abtastzyklus kein Bruchteil erzeugt.
In Fig. 3 stellen die Schritte S10 bis S12 und die Schritte 16, 17 eine Bearbeitung dar, die jedesmal von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 durchgeführt wird, und stellen die Schritte S14, S15 sowie S17 eine Bearbeitung dar, die jeweils von dem Abtastzeitintervallberechnungsabschnitt 9 durchgeführt wird.
Zuerst wird im Schritt S10 ein normaler Abtastzyklus T1, der einen Standard- oder Normalwert darstellt, als ein Abtastzyklus eingestellt. Dann werden im Schritt S11 eine Bewegungsrate und als Vorschubgeschwindigkeit (Befehlsgeschwindigkeit) für einen Programmblock von dem Interpolationsabschnitt 3 empfangen. Daraufhin wird im Schritt S12 eine Bewegungsrate für einen Abtastzyklus aus der empfangenen, befohlenen Geschwindigkeit und dem voreingestellten Abtastzyklus T1 berechnet. Der Ausdruck für die Berechnung ist folgendermaßen:
Bewegungsrate für einen Abtastzyklus
= befohlene Geschwindigkeit×Abtastzyklus (T1)
Der Geschwindigkeitsbefehlsimpuls, der von der voranstehend geschilderten Bearbeitung erzeugt wird, entspricht dem konventionellen Typ, der in Fig. 4B gezeigt ist.
Dann werden im Schritt S13 ein Quotient und ein Rest für einen Programmblock entsprechend einem Abtastzyklus berechnet. Der Ausdruck für die Berechnung ist folgendermaßen:
Bewegungsrate für einen Programmblock/Bewegungsrate für einen Abtastzyklus = Quotient + Rest
Dann erfolgt im Schritt S14 eine Festlegung, ob ein Rest vorhanden ist oder nicht (ob ein Rest ungleich Null vorhanden ist oder nicht) . Wenn festgestellt wird, daß es keinen Rest gibt, geht die Systemsteuerung zum Schritt S17 über. Wenn dagegen festgestellt wird, daß ein Rest vorhanden ist, geht die Systemsteuerung zum Schritt S15 über, und wird der Abtastzyklus zurückgesetzt, so daß der Rest gleich Null wird. Der Ausdruck hierfür ist folgendermaßen:
Abtastzyklus = Abtastzyklus×(1 + Rest/Quotient)
Hierdurch kann der zurückgesetzte Abtastzyklus T2 erhalten werden.
Im Schritt S16 wird erneut eine Bewegungsrate für einen Abtastzyklus aus der befohlenen Geschwindigkeit und dem zurückgesetzten Abtastzyklus T2 berechnet. Der Ausdruck für die Berechnung ist folgendermaßen:
Bewegungsrate für einen Abtastzyklus
= befohlene Geschwindigkeit×Abtastzyklus (T2)
Der wie voranstehend geschildert regenierte Geschwindigkeitsbefehlsimpuls ist in Fig. 4C dargestellt. Es wird darauf hingewiesen, daß in dem in Fig. 4C wie voranstehend geschilderten Beispiel dann, wenn ein Abtastzyklus angeglichen werden soll, ein Abtastzyklus trotz der Tatsache, daß er als ein Zeitraum länger als der ursprüngliche Abtastzyklus eingestellt ist, auf einen kürzeren Zeitraum als der ursprüngliche Abtastzyklus eingestellt werden kann.
Weiterhin wird im Schritt S17 der zurückgesetzte Abtastzyklus T2 von dem Abtastzeitintervallberechnungsabschnitt 9 an den Unterbrechungssteuerabschnitt 10 und den Antriebsabschnitt 17 ausgegeben, und wird auch der regenerierte Geschwindigkeitsbefehlsimpuls von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 an den Beschleunigungs-/Verzögerungsabschnitt 15 ausgegeben. Mit diesem Schritt ist jede Verarbeitung in dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 und dem Abtastzeitintervallberechnungsabschnitt 9 fertig.
Dann wird in dem Beschleunigungs-/Verzögerungsabschnitt 15 ein Geschwindigkeitsbefehlsimpuls von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 empfangen, und wird in einem Fall, in welchem irgendeine Änderung des Inhalts des Befehls für eine Geschwindigkeit auftritt, eine Bearbeitung für eine Beschleunigung oder Verzögerung bei dem Geschwindigkeitsbefehlsimpuls durchgeführt. Dann wird in dem Befehlsimpulsausgabeabschnitt 16 der Geschwindigkeitsbefehlsimpuls, mit welchem die Bearbeitung für eine Beschleunigung oder Verzögerung in dem Beschleunigungs-/Verzögerungsabschnitt 15 durchgeführt wird, an den Antriebsabschnitt 7 geliefert. Diese Lieferung wird entsprechend der Unterbrechung von dem Unterbrechungssteuerabschnitt 10 durchgeführt. Weiterhin wird in dem Antriebsabschnitt 17 der Motor 8, der den zu steuernden Gegenstand darstellt, entsprechend dem gelieferten Geschwindigkeitsbefehlsimpuls und den gelieferten Abtastzyklus (T2) gesteuert, der in dem Abtastzyklusberechnungsabschnitt 9 zurückgesetzt wurde.
Nunmehr erfolgt eine Beschreibung unter Bezugnahme auf konkrete Beispiele, bei welchen mit der numerischen Steuervorrichtung gemäß der vorliegenden Erfindung die wie voranstehend bei der konventionellen Technik auftretenden Probleme gelöst werden können. Die vorliegende Erfindung wird nämlich bei einem konkreten Beispiel (vergleiche Fig. 21) eingesetzt, die zur Erläuterung der Probleme bei dem Verfahren verwendet wird, bei welchem ein in dem endgültigen Abtastzyklus erzeugter Bruchteil zu einem darauffolgenden Programmblock hinzuaddiert wird. Fig. 5A ist eine Ansicht zur Erläuterung einer Ortskurve entsprechend einem Befehl für eine Bewegung entsprechend einem ersten und einem zweiten Programmblock, Figur B ist eine erläuternde Ansicht von Geschwindigkeitsbefehlsimpulsen, die von den zwei Programmblöcken in dem zweidimensionalen Vektor erzeugt werden, nämlich Y-Achsenrichtung und X-Achsenrichtung, und Fig. 5C ist eine erläuternde Ansicht einer aktuellen Bewegungsortskurve entsprechend den erzeugten Geschwindigkeitsbefehlsimpulsen.
Fig. 5A zeigt eine Bewegung von einem Startpunkt P104 zu einem Endpunkt P105 in dem ersten Programmblock, sowie eine Bewegung von dem Startpunkt P105 zu einem Endpunkt P106 in dem zweiten Programmblock.
Wie aus Fig. 5B hervorgeht, wird ein Geschwindigkeitsbefehlsimpuls erzeugt. Zuerst wird nämlich ein Abtastzyklus auf T3 und T4 durch einen Abtastzyklusberechnungsabschnitt 9 für einen ersten bzw. zweiten Programmblock zurückgesetzt. Dann wird ein Geschwindigkeitsbefehlsimpuls (Richtungsbefehl für einen zweidimensionalen Vektor) von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 entsprechend den Abtastzyklen T3 und T4 und auch entsprechend der Vorschubgeschwindigkeit (der befohlenen Geschwindigkeit) erzeugt, die wie voranstehend geschildert zurückgesetzt wurde, und werden Geschwindigkeitsbefehlsimpulse für jede Axialrichtung (Y- und X-Axialrichtung) entsprechend dem Geschwindigkeitsbefehlsimpuls auf der Grundlage des Richtungsbefehls für den Vektor erzeugt.
Wie voranstehend geschildert wird bei der vorliegenden Ausführungsform ein Abtastzyklus zurückgesetzt, so daß nicht in jedem Programmblock ein Bruchteil erzeugt wird, und beeinflußt ein in einem Programmblock erzeugter Bruchteil nicht einen Geschwindigkeitsbefehlsimpuls in einem darauffolgenden Programmblock, wie bei der konventionellen Technik, so daß sich die aktuelle Bewegungsortskurve nicht in Bezug auf eine befohlene Bewegungsortskurve verschiebt, und exakte Betriebsabläufe sichergestellt werden, wie in Fig. 5C gezeigt ist.
Wie voranstehend geschildert wird bei der numerischen Steuervorrichtung gemäß der vorliegenden Ausführungsform dann, wenn ein Geschwindigkeitsbefehlsimpuls, der durch einen Abtastzyklus unterteilt wird, entsprechend einer Bewegungsrate und einer Vorschubgeschwindigkeit für einen Programmblock erzeugt wird, ein Abtastzyklus so zurückgesetzt, daß der Abtastzyklus in dem Programmblock für die befohlene Vorschubgeschwindigkeit auf einem konstanten Wert gehalten wird, so daß beispielsweise dann, wenn ein Werkstückbearbeitungsbefehl von einem Bearbeitungsprogramm ausgegeben wird, in welchem Betriebsabläufe für das Schneiden und den Vorschub hintereinander ausgeführt werden, sich der Abtastzyklus für jeden Programmblock ändert, wobei eine Geschwindigkeitsänderung in einem Intervall zwischen Programmblöcken ausgeschaltet ist, was dazu führt, daß die Form eines Abschnitts zwischen einem Bereich, bei dem Werkstückbearbeitung entsprechend einem Programmblock erfolgte, und einem anderen Bereich, der entsprechend einem darauffolgenden Programmblock bearbeitet wurde, exakt bearbeitet werden kann.
Nachstehend erfolgt eine Beschreibung einer numerischen Steuervorrichtung gemäß Ausführungsform 2 der vorliegenden Erfindung. Die numerische Steuervorrichtung gemäß der vorliegenden Ausführungsform ändert einen endgültigen Abtastzyklus auf solche Weise, daß ein Bruchteil in einem Fall nicht erzeugt wird, in welchem anderenfalls ein Bruchteil in dem endgültigen Abtastzyklus für den Programmblock erzeugt werden würde, wenn ein Geschwindigkeitsbefehlsimpuls erzeugt wird, der durch den Abtastzyklus unterteilt wird, und zwar aus einer Bewegungsrate und einer Vorschubgeschwindigkeit für einen Programmblock.
Der Aufbau der numerischen Steuervorrichtung gemäß der vorliegenden Ausführungsform ist ebenso wie bei der Ausführungsform 1 (vergleiche Fig. 1). Allerdings haben der Bewegungsbefehlsimpulsverteilungsabschnitt 14 und der Abtastzyklusberechnungsabschnitt 9 unterschiedliche Funktionen als die entsprechenden Vorrichtungen bei der Ausführungsform 1.
Bei dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 wird nämlich zuerst, wie bei der Ausführungsform 1, eine Bewegungsrate für einen Abtastzyklus (Standardwert) berechnet, entsprechend einer Bewegungsrate in jeder von Axialrichtungen, die einen Steuerraum bilden, der in dem Interpolationsabschnitt 3 erhalten wird, beispielsweise in der X-Axialrichtung, der Y- Axialrichtung und der Z-Axialrichtung, und entsprechend einer Vorschubgeschwindigkeit in jede Axialrichtung, und es wird ein Geschwindigkeitsbefehlsimpuls in jede Axialrichtung ausgegeben. Falls erforderlich, abhängig von dem erzeugten Geschwindigkeitsbefehlsimpuls, wird ein zweiter Abtastzyklus von dem Abtastzyklusberechnungsabschnitt 9 berechnet, und wird ein Geschwindigkeitsbefehlsimpuls in jede Axialrichtung von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 unter Verwendung des zweiten Abtastzyklus erzeugt.
Der Abtastimpulsberechnungsabschnitt 9 empfängt den Geschwindigkeitsbefehlsimpuls, der in einem normalen Abtastzyklus (Standardwert) in dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 erzeugt wird, stellt fest, ob ein Geschwindigkeitsbefehlsimpuls, der ein Bruchteil in dem darauffolgenden Abtastzyklus sein kann, erzeugt wird oder nicht, in einem Abtastzyklus von Programmblöcken, und berechnet bei der Erzeugung eines Bruchteils den endgültigen Abtastzyklus als den zweiten Abtastzyklus durch die befohlene Vorschubgeschwindigkeit, so daß in dem endgültigen Abtastzyklus in dem Programmblock kein Bruchteil erzeugt wird.
Nunmehr erfolgt eine Beschreibung der Bearbeitung durch die numerische Steuervorrichtung gemäß der vorliegenden Ausführungsform. Die Bearbeitung abgesehen von jener in dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 und dem Abtastzeitintervallberechnungsabschnitt 9 ist ebenso wie bei der Ausführungsform 1, so daß insoweit keine erneute Beschreibung erfolgt.
Nunmehr erfolgt im einzelnen eine Beschreibung der Bearbeitung durch den Bewegungsbefehlsimpulsverteilungsabschnitt 14 und den Abtastzeitintervallberechnungsabschnitt 9 unter Bezugnahme auf die Fig. 6 und 7. Fig. 6 ist ein Flußdiagramm zur Erläuterung der Bearbeitung durch den Bewegungsbefehlsimpulsverteilungsabschnitt 14 und den Abtastzeitintervallberechnungsabschnitt 9, und Fig. 7 ist eine Ansicht zur Erläuterung eines Geschwindigkeitsbefehlsimpulses bei einem konkreten Befehl für die Bewegung.
Es wird darauf hingewiesen, daß das konkrete Beispiel gemäß Fig. 7 einen Fall zeigt, in welchem eine Bewegungssteuerung entsprechend zwei Programmblöcken zur Verfügung gestellt wird, also einem ersten und einem zweiten Programmblock, wobei angenommen wird, daß ein Startpunkt P3 und ein Endpunkt P4 für die Bewegung von dem ersten Programmblock berechnet werden, und ein Startpunkt P4 und ein Endpunkt P5 für die Bewegung von dem zweiten Programmblock berechnet werden, und die befohlene Geschwindigkeit (Sollgeschwindigkeit) in dem ersten Programmblock dieselbe ist wie jene in dem zweiten Programmblock.
Das Flußdiagramm von Fig. 6 zeigt die Verarbeitung, die bei einem Abtastzyklus für jeden Programmblock durchgeführt wird, die Schritte S20, S26 bezeichnen Bearbeitungen, die jeweils von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 durchgeführt werden, und die Schritte S21 bis S26 zeigen Bearbeitungen, die jeweils von dem Abtastzeitintervallberechnungsabschnitt 9 durchgeführt werden. Da für die Programmblöcke die Bearbeitung dieselbe ist, wird nachstehend der erste Programmblock beschrieben.
Im Schritt S20 wird ein Abtastzyklus auf die normale Abtastzeit T5 eingestellt, die einen Standard- oder Normwert darstellt. Dann wird im Schritt S21 ein Bewegungsbereich (momentan übrigbleibender Bereich) berechnet, der in dem Programmblock verbleiben sollte, in Abhängigkeit von dem Bewegungsbereich, der zu dem Zeitpunkt übrigbleibt, wenn der vorherige Abtastzyklus endet (der vorherige, verbleibende Bereich), und abhängig von dem Bewegungsbereich für einen Abtastzyklus T5 zu dem Zeitpunkt, wenn der momentane Abtastzyklus endet. Der für die Berechnung verwendete Ausdruck ist folgendermaßen:
Momentan verbleibender Bereich = Vorher verbleibender Bereich - Bewegungsbereich für einen Abtastzyklus (T5)
Hierbei wird angenommen, daß in einem Anfangs schritt der Bearbeitung für jeden Programmblock eine Bewegungsrate des Programmblocks auf den vorher verbleibenden Bereich eingestellt wird, und daß die Bewegungsrate der vorher verbleibenden Rate in dem ursprünglichen Abtastzyklus entspricht.
Im Schritt S22 erfolgt eine Bestimmung, ob der wie voranstehend geschildert berechnete, momentan verbleibende Bereich kleiner als ein Bewegungsbereich für einen Abtastzyklus T5 ist oder nicht. In einem Fall, in welchem festgestellt wird, daß der momentan übrigbleibende Bereich größer als der Bewegungsbereich für eine Abtastzeit ist, wird hier ein Bruchteil nicht in dem darauffolgenden Abtastzyklus erzeugt, und geht die Systemsteuerung zum Schritt S26 über. Ebenfalls wird in einem Fall, in welchem festgestellt wird, daß der momentan verbleibende Bereich kleiner als der Bewegungsbereich eine Abtastzeit ist, ein Bruchteil in dem darauffolgenden Abtastzyklus erzeugt, und die Systemsteuerung geht zum Schritt S23 über, um dort den zweiten Abtastzyklus zu berechnen.
Im Schritt S23 wird eine Bewegungsrate, die von dem momentanen Abtastzyklus gesteuert werden soll (momentane Bewegungsrate), aus folgendem Ausdruck berechnet:
Momentane Bewegungsrate = Bewegungsrate eines Abtastzyklus + Momentan verbleibender Bereich
Im Schritt S24 wird der momentane Abtastzyklus (der zweite Abtastzyklus) T5′ durch folgenden Ausdruck berechnet, und zurückgesetzt:
Zweiter Abtastzyklus = Momentane Bewegungsrate/Befohlene Geschwindigkeit
Da der Abtastzyklus, der in dem Pfad dieser Folge von Bearbeitungsschritten liegt, die Tatsache anzeigt, daß der Abtastzyklus zum momentanen Zeitpunkt ein endgültiger Zyklus in dem Programmblock ist, wird dann der verbleibende Bereich auf Null im Schritt S25 zurückgesetzt, zur Bearbeitung durch den darauffolgenden Programmblock.
Weiterhin wird im Schritt S26 der zweite Abtastzyklus T5′, der in dem Abtastzyklus T5 berechnet wurde, oder in dem Abtastzeitintervallberechnungsabschnitt 9, an den Unterbrechungssteuerabschnitt 10 ausgegeben, den Bewegungsbefehlsimpulsverteilungsabschnitt 14, und den Antriebsabschnitt 17, und weiterhin wird der Geschwindigkeitsbefehlsimpuls, der in Abhängigkeit von dem Abtastzyklus T5 oder dem zweiten Abtastzyklus T5′ erzeugt wurde, von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 an den Beschleunigungs-/Verzögerungsabschnitt 15 ausgegeben.
Wie voranstehend geschildert wird bei der numerischen Steuervorrichtung gemäß der vorliegenden Ausführungsform dann, wenn ein durch einen Abtastzyklus unterteilter Geschwindigkeitsbefehlsimpuls entsprechend einer Bewegungsrate und einer Vorschubgeschwindigkeit für einen Programmblock erzeugt wird, und in einem Fall, in welchem ein Bruchteil in dem endgültigen Abtastzyklus des Programmblocks erzeugt wird, der endgültige Abtastzyklus so geändert, daß kein Bruchteil erzeugt wird, so daß beispielsweise dann, wenn ein Befehl zur Werkstückbearbeitung von einem Werkstückbearbeitungsprogramm ausgegeben wird, in welchem Betriebsabläufe zum Schneiden und für den Vorschub nacheinander durchgeführt werden, der Abtastzyklus für jeden Programmblock geändert werden kann, was Auswirkungen auf andere Programmblöcke ausschaltet, und ebenso eine Geschwindigkeitsänderung in einem Intervall zwischen Programmblöcken, und dies führt dazu, daß die Form eines Abschnitts zwischen einem Bereich, der entsprechend einem Programmblock bearbeitet wurde, und einem anderen Bereich, der entsprechend einem darauffolgenden Programmblock bearbeitet wurde, exakt bearbeitet werden kann.
Nachstehend erfolgt eine Beschreibung einer numerischen Steuervorrichtung gemäß Ausführungsform 3 der vorliegenden Erfindung. Die numerische Steuervorrichtung gemäß der vorliegenden Erfindung stellt eine Steuerung für eine glatte Bewegung zur Verfügung, durch kürzere Ausbildung eines Abtastzyklus bei der Beschleunigung oder Verzögerung, wenn ein Geschwindigkeitsbefehlsimpuls erzeugt wird, der durch einen Abtastzyklus unterteilt wird, entsprechend einer Bewegungsrate und einer Vorschubgeschwindigkeit für einen Programmblock, der eine Steuerung für die Beschleunigung oder Verzögerung einschließt.
Der Aufbau der numerischen Steuervorrichtung gemäß der vorliegenden Ausführungsform ist grundsätzlich ebenso wie bei der Ausführungsform 1 (vgl. Fig. 1). Allerdings sind die Funktionen des Bewegungsbefehlsimpulsverteilungsabschnitts 14 und des Abtastzyklusberechnungsabschnitts 9 anders als bei der Ausführungsform 1.
In dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 wird zuerst, wie bei der Ausführungsform 1, eine Bewegungsrate für einen Abtastzyklus (Standardwert) berechnet, entsprechend einer Bewegungsrate in jeder der Axialrichtungen, die einen Steuerraum bilden, welche in dem Interpolationsabschnitt 3 erhalten wird, beispielsweise der X-Axialrichtung, der Y- Axialrichtung und der Z-Axialrichtung, und entsprechend einer Vorschubgeschwindigkeit in jeder Axialrichtung, und es wird ein Geschwindigkeitsbefehlsimpuls für jede Axialrichtung ausgegeben. Falls dies entsprechend dem erzeugten Geschwindigkeitsbefehlsimpuls erforderlich ist, wird ein zweiter Abtastzyklus von dem Abtastzyklusberechnungsabschnitt 9 berechnet, und wird ein Geschwindigkeitsbefehlsimpuls in jeder Axialrichtung von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 unter Verwendung des zweiten Abtastzyklus erzeugt.
Weiterhin empfängt der Abtastzyklusberechnungsabschnitt 9 einen Geschwindigkeitsbefehlsimpuls, der in einem normalen Abtastzyklus erzeugt wird (Standardwert) in dem Bewegungsimpulsverteilungsabschnitt 14, stellt einmal für jeden Abtastzyklus fest, ob es sich um eine Steuerung für die Beschleunigung oder die Verzögerung handelt oder nicht, und wenn festgestellt wird, daß es um eine Steuerung für die Beschleunigung oder Verzögerung geht, wird ein Abtastzyklus auf einen zweiten Abtastzyklus eingestellt, der durch Teilen des normalen Abtastzyklus durch einen festgelegten, positiven ganzzahligen Wert erhalten wird.
Nunmehr erfolgt eine Beschreibung von Bearbeitungsvorgängen der numerischen Steuervorrichtung gemäß der vorliegenden Erfindung. Arbeitsgänge abgesehen von denen, die von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 und dem Abtastzeitintervallberechnungsabschnitt 9 durchgeführt werden, sind ebenso wie jene, die unter Bezugnahme auf die Ausführungsform 1 geschildert wurden, so daß insoweit keine erneute Beschreibung erfolgt.
Unter Bezugnahme auf die Fig. 8 und 9 erfolgt nunmehr eine detaillierte Beschreibung der Bearbeitung in dem Bewegungsbefehlsimpulsverteilungsabschnitt und dem Abtastzeitintervallberechnungsabschnitt 9. Fig. 9 ist ein Flußdiagramm, welches die Bearbeitung in dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 und in dem Abtastzeitintervallberechnungsabschnitt 9 zeigt, wogegen Fig. 9 eine Darstellung zur Erläuterung eines Geschwindigkeitsbefehlsimpulses für einen bestimmten Befehl für eine Bewegung ist. Es wird darauf hingewiesen, daß das konkrete Beispiel in Fig. 9 einen Geschwindigkeitsbefehlsimpuls für einen Bewegungsbefehl durch einen Programmblock zeigt, der einen Steuerung für die Beschleunigung oder Verzögerung einschließt, und daß in dieser Figur die durchgezogene Linie und eine gestrichelte Linie einen Programmbefehl bzw. ein Beschleunigung/Verzögerungsmuster bezeichnet.
Das Flußdiagramm von Fig. 8 zeigt die Bearbeitung, die in einem Abtastzyklus für jeden Programmblock ausgeführt wird, und der Schritt S50 bezeichnet die Bearbeitung, die von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 ausgeführt wird, wogegen die Schritte S51 und S52 die Bearbeitung zeigen, die von dem Abtastzeitintervallberechnungsabschnitt 9 durchgeführt wird.
Zuerst wird im Schritt S50 als Abtastzyklus eine normale Zeit T6 eingestellt, die einen Standardwert darstellt.
Dann erfolgt im Schritt S51 eine Bestimmung, ob sich eine von dem Programmblock befohlene Geschwindigkeit von der momentanen Vorschubgeschwindigkeit unterscheidet oder nicht, nämlich ob eine von dem Programmblock befohlene Geschwindigkeit ungleich der momentanen Geschwindigkeit ist oder nicht. Daher wird in einem Fall, in welchem festgestellt wird, daß die von dem Programmblock befohlene Geschwindigkeit gleich der momentanen Vorschubgeschwindigkeit ist, dies so angesehen, daß die Steuerung für eine Bewegung mit konstanter Geschwindigkeit vorgesehen ist, und die Bearbeitung endet mit unverändertem momentanen Abtastzyklus, und in einem Fall, in welchem festgestellt wird, daß sich die befohlene Geschwindigkeit von der momentanen Vorschubgeschwindigkeit unterscheidet, so wird dies so angesehen, daß eine Steuerung für die Beschleunigung oder Verzögerung vorhanden ist, und es wird im Schritt S52 der Abtastzyklus T6 so zurückgesetzt, daß er kürzer wird. Den zweiten Abtastzyklus T6′, der wie voranstehend geschildert zurückgesetzt wird, erhält man beispielsweise aus nachstehender Gleichung:
Abtastzeitintervall = Abtastzeitintervall/n
Hierbei ist n eine positive ganze Zahl (N < 1).
Weiterhin wird, obwohl dies nicht im den Flußdiagramm von Fig. 8 gezeigt ist, der in dem Abtastzeitintervallberechnungsabschnitt 9 berechnete Abtastzyklus T6 oder der zweite Abtastzyklus T6′ an den Unterbrechungssteuerabschnitt 10 ausgegeben, an den Bewegungsbefehlsimpulsverteilungsabschnitt 14, und an den Antriebsabschnitt 17, und von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 wird ein Geschwindigkeitsbefehlsimpuls, der entsprechend dem Abtastzyklus T6 oder dem zweiten Abtastzyklus T6′ erzeugt wird, an den Beschleunigungs/Verzögerungsabschnitt 15 ausgegeben.
Fig. 9 zeigt einen Fall, in welchem n gleich 4 ist, und der Abtastzyklus T6′ bei der Beschleunigung oder Verzögerung kürzer gewählt wird. Wie aus dieser Figur hervorgeht, kann in diesem Falle eine glattere Geschwindigkeitssteuerung zur Verfügung gestellt werden, verglichen mit einem Fall, in welchem ein Geschwindigkeitsbefehlsimpuls auf der Grundlage des üblichen Abtastzyklus erzeugt wird (vgl. Fig. 23).
Wie voranstehend geschildert wird bei der numerischen Steuervorrichtung gemäß der vorliegenden Ausführungsform eine glatte Bewegungssteuerung dadurch zur Verfügung gestellt, daß ein Abtastzyklus für die Beschleunigung oder Verzögerung kürzer ausgebildet wird, wenn ein durch eine Abtastrate dividierter Geschwindigkeitsbefehlsimpuls aus einer Bewegungsrate und einer Vorschubgeschwindigkeit für einen Programmblock erzeugt wird, der eine Steuerung für die Beschleunigung oder Verzögerung aufweist, so daß eine schnelle Geschwindigkeitsänderung selbst dann ausgeschaltet werden kann, wenn eine Steuerung für die Beschleunigung oder Verzögerung vorgesehen ist, wodurch eine Werkstückbearbeitung mit hoher Geschwindigkeit und hoher Genauigkeit ausgeführt werden kann.
Nachstehend erfolgt die Beschreibung eines Falles, in welchem eine glatte Bewegungssteuerung dadurch durchgeführt wird, daß ein Abtastzyklus für die Beschleunigung oder Verzögerung relativ kürzer ausgebildet wird.
Der Aufbau der numerischen Steuervorrichtung in diesem Fall ist grundsätzlich ebenso wie bei der Ausführungsform 1. Allerdings unterscheidet sich die Funktion des Abtastzyklusberechnungsabschnitts 9 bezüglich folgender Einzelheiten. Wenn nämlich der Abtastzyklusberechnungsabschnitt 9 einen Geschwindigkeitsbefehlsimpuls empfängt, der entsprechend einem Abtastzyklus (Standardwert) in dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 erzeugt wird, und eine Bestimmung erfolgt, ob die Steuerung die Beschleunigung oder Verzögerung oder eine Bewegung mit konstanter Geschwindigkeit in jedem Abtastzyklus für einen Programmblock betrifft, und wenn festgestellt wird, daß es sich um eine Steuerung für die Beschleunigung oder Verzögerung handelt, wird der Abtastzyklus auf einen zweiten Abtastzyklus zurückgesetzt, der durch Multiplizieren des Abtastzyklus (des Standardwertes) mit einem festgelegten, positiven ganzzahligen Wert erhalten wird.
Nachstehend erfolgt eine Beschreibung eines Bearbeitungsvorgangs bei dieser numerischen Steuervorrichtung. Die Bearbeitung abgesehen von jener durch den Bewegungsbefehlsimpulsverteilungsabschnitt 14 und den Abtastzeitintervallberechnungsabschnitt 9 ist ebenso wie bei der Ausführungsform 1, so daß insoweit hier keine erneute Beschreibung erfolgt.
Unter Bezugnahme auf Fig. 10 wird im einzelnen die Bearbeitung durch den Bewegungsbefehlsimpulsverteilungsabschnitt 14 und den Abtastzeitintervallberechnungsabschnitt 9 beschrieben. Fig. 10 ist ein Flußdiagramm zur Erläuterung der Bearbeitung durch den Bewegungsbefehlsimpulsverteilungsabschnitt 14 und den Abtastzeitintervallberechnungsabschnitt. Das Flußdiagramm in dieser Figur zeigt die Bearbeitung, die in jedem Abtastzyklus für jeden Programmblock durchgeführt wird, wobei der Schritt S60 die Bearbeitung angibt, die von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 durchgeführt wird, während die Schritte S61, S62 die Bearbeitung zeigen, die von dem Abtastzeitintervallberechnungsabschnitt 9 durchgeführt wird.
Zuerst wird im Schritt S60 als Abtastzyklus eine übliche Abtastzeit (T7) eingestellt, welche einen Standardwert darstellt.
Dann erfolgt im Schritt S61 eine Festlegung, ob eine von dem Programmblock befohlene Geschwindigkeit gleich der momentanen Vorschubgeschwindigkeit ist, nämlich ob der nachstehende Ausdruck erfüllt ist oder nicht:
Von einem Programmblock befohlene Geschwindigkeit = momentane Geschwindigkeit
Wenn daher in einem Fall bestimmt wird, daß sich die von dem Programmblock befohlene Geschwindigkeit von der momentanen Vorschubgeschwindigkeit unterscheidet, wird dies als ein Fall angesehen, in welchem eine Steuerung für die Beschleunigung oder Verzögerung vorgesehen ist, und die Bearbeitung wird mit unverändertem Abtastzyklus beendet. Falls die befohlene Geschwindigkeit gleich der momentanen Vorschubgeschwindigkeit ist, so wird dies als solcher Fall angesehen, daß nunmehr eine Steuerung für eine Bewegung mit konstanter Geschwindigkeit zur Verfügung gestellt wird, und es wird im Schritt S62 der Abtastzyklus T7 zurückgesetzt, so daß er länger wird. Der wie voranstehend geschildert zurückgesetzte, zweite Abtastzyklus T7′ wird beispielsweise aus folgender Gleichung erhalten:
Abtastzeitintervall = Abtastzeitintervall×n
Hierbei ist n eine positive ganze Zahl (n < 1).
Obwohl dies nicht in Fig. 20 dargestellt ist, wird dann der Abtastzyklus T7 oder der zweite Abtastzyklus T7′, der von dem Abtastzeitintervallberechnungsabschnitt 9 berechnet wird, an den Unterbrechungssteuerabschnitt 10, den Bewegungsbefehlsimpulsverteilungsabschnitt 14 und den Antriebsabschnitt 17 ausgegeben, und von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 wird an den Beschleunigungs/Verzögerungsabschnitt 15 ein Geschwindigkeitsbefehlsimpuls ausgegeben, der entsprechend dem Abtastzyklus T7 oder dem zweiten Abtastzyklus T7′ erzeugt wurde.
Wie voranstehend geschildert wird bei der numerischen Steuervorrichtung gemäß der vorliegenden Ausführungsform eine glatte Bewegungssteuerung dadurch zur Verfügung gestellt, daß ein Abtastzyklus für die Beschleunigung oder Verzögerung relativ kürzer ausgebildet wird, wenn ein Geschwindigkeitsbefehlsimpuls, der durch einen Abtastzyklus geteilt wird, aus einer Bewegungsrate und einer Vorschubgeschwindigkeit für einen Programmblock erzeugt wird, der eine Steuerung für die Beschleunigung oder Verzögerung umfaßt, so daß selbst dann, wenn eine Steuerung der Beschleunigung oder Verzögerung erfolgt, eine schnelle Geschwindigkeitsänderung ausgeschaltet ist, und eine Werkstückbearbeitung mit hoher Geschwindigkeit und hoher Genauigkeit durchgeführt werden kann. Weiterhin wird durch Einstellung eines Abtastzyklus auf den üblichen Abtastzyklus bei der Beschleunigung oder Verzögerung, und durch eine Einstellung des Abtastzyklus auf einen längeren Wert bei der Steuerung für eine Bewegung mit konstanter Geschwindigkeit, die Arbeitsbelastung der numerischen Steuervorrichtung in der Betriebsart mit konstanter Vorschubgeschwindigkeit verringert, und kann eine Bearbeitung abgesehen von jener des Motors 8, beispielsweise eine Bearbeitung für eine Bildschirmanzeige, mit hoher Geschwindigkeit ausgeführt werden.
Nachstehend erfolgt eine Beschreibung einer numerischen Steuervorrichtung gemäß Ausführungsform 4 der vorliegenden Erfindung. Die numerische Steuervorrichtung gemäß der vorliegenden Ausführungsform gibt keinen Befehl an einen zu steuernden Gegenstand (Objekt) aus, wenn ein Befehl für eine Bewegung nicht von einem Bearbeitungsprogramm ausgegeben wurde, so daß die Arbeitsbelastung der numerischen Steuervorrichtung verringert ist.
Der Aufbau der numerischen Steuervorrichtung gemäß der vorliegenden Ausführungsform ist grundsätzlich ebenso wie bei der Ausführungsform 3. Allerdings unterscheidet sich die Funktion des Abtastzyklusberechnungsabschnitts 9 in folgender Hinsicht. Der Abtastzyklusberechnungsabschnitt 9 empfängt nämlich einen Geschwindigkeitsbefehlsimpuls, der entsprechend einem Abtastzyklus (Standardwert) in dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 erzeugt wird, stellt fest, ob ein Befehl für eine Bewegung in jedem Abtastzyklus für einen Programmblock ausgegeben wurde oder nicht, und dann wird in einem Fall, in welchem festgestellt wird, daß ein Befehl für eine Bewegung nicht ausgegeben wurde, der Abtastzyklus auf den Wert unendlich zurückgesetzt.
Nunmehr erfolgt eine Beschreibung der Bearbeitung durch die numerische Steuervorrichtung gemäß der vorliegenden Ausführungsform. Die Bearbeitung abgesehen von jener durch den Bewegungsbefehlsimpulsverteilungsabschnitt 14 und den Abtastzeitintervallberechnungsabschnitt 9 ist ebenso wie bei der Ausführungsform 1, so daß insoweit keine erneute Beschreibung erfolgt.
Unter Bezugnahme auf Fig. 11 erfolgt eine detaillierte Beschreibung der Bearbeitung durch den Bewegungsbefehlsimpulsverteilungsabschnitt 14 und den Abtastzeitintervallberechnungsabschnitt 9. Fig. 11 zeigt ein Flußdiagramm zur Erläuterung der Bearbeitung durch den Bewegungsbefehlsimpulsverteilungsabschnitt 14 und den Abtastzeitintervallberechnungsabschnitt 9. Das Flußdiagramm in dieser Figur zeigt die in jedem Abtastzyklus für jeden Programmblock durchgeführte Bearbeitung, wobei der Schritt S70 die von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 durchgeführte Bearbeitung zeigt, wogegen die Schritte S71, S72 die von dem Abtastzeitintervallberechnungsabschnitt 9 durchgeführte Bearbeitung zeigen.
Zuerst wird im Schritt S70 als Abtastzyklus eine Abtastzeit (T8) eingestellt, die einen Standardwert darstellt.
Dann erfolgt im Schritt S71 eine Bestimmung, ob ein Befehl für eine Bewegung ausgegeben wurde oder nicht. Falls festgestellt wird, daß ein Befehl für eine Bewegung ausgegeben wurde, endet die Bearbeitung mit unverändertem Abtastzyklus. Falls ein Befehl für eine Bewegung nicht ausgegeben wurde, so wird dies so betrachtet, daß eine Steuerung für eine Bewegung mit konstanter Geschwindigkeit vorgesehen ist, und dann wird im Schritt S72 der Abtastzyklus auf den Wert unendlich zurückgesetzt.
Obwohl dies in dem Flußdiagramm von Fig. 11 nicht gezeigt ist, wird der Abtastzyklus T8 auch an den Unterbrechungssteuerabschnitt 10 ausgegeben, an den Bewegungsbefehlsimpulsverteilungsabschnitt 14, und an den Antriebsabschnitt 17, und wird von dem Bewegungsbefehlsimpulsverteilungsabschnitt 14 ein Geschwindigkeitsbefehlsimpuls, der entsprechend dem Abtastzyklus T8 erzeugt wird, an den Beschleunigungs/Verzögerungsabschnitt ausgegeben. Aus diesem Grund wird in einem Fall, in welchem der Abtastzyklus T8 den Wert unendlich aufweist, ein Geschwindigkeitsbefehlsimpuls von dem Befehlsimpulsausgabeabschnitt 16 nicht ausgegeben, und auch kein Steuersignal von dem Antriebsabschnitt, so daß die Arbeitsbelastung der numerischen Steuervorrichtung verringert werden kann.
Nunmehr erfolgt eine Beschreibung der Ausgabe an den Antriebsabschnitt und des Betriebszustandes der numerischen Steuervorrichtung in einem Fall, in welchem ein Abtastzyklus länger als ein festgelegter Wert gewählt wird.
Fig. 12A ist ein Zeitablaufdiagramm, welches den Zeitpunkt der Übertragung von einer üblichen numerischen Steuervorrichtung an eine Servoseite zeigt, und wie aus dieser Figur hervorgeht, wird ein Befehl für eine Bewegung von der numerischen Steuervorrichtung an die Servoseite innerhalb eines Intervalls von mehreren Millimetern (variabel) ausgegeben. Dieser Befehl für eine Bewegung enthält eine Zeit, bis ein nächster Befehl übertragen wird (einen Zeitraum bis zum Zeitablauf), und in einem Fall, in welchem ein nächster Befehl für die Bewegung nicht ausgesandt wird, selbst wenn dieser Zeitraum für den Zeitablauf abgelaufen ist, so wird festgestellt, daß irgendein anomaler Zustand aufgetreten ist, und wird ein Notfallstoppsignal ausgegeben.
Fig. 12B zeigt einen Fall, in welchem ein Befehlszyklus an die Servoseite sehr lang ausgebildet wird, und die Bearbeitung zur Übertragung in der Seite einer numerischen Steuervorrichtung weggelassen ist, und in diesem Fall wird ein sehr langer Zeitablauf-Zeitraum T bis zum nächsten Befehl in dem endgültigen Befehl für die numerische Steuervorrichtung eingestellt. Aus diesem Grund wird an der Servoseite nach Ausführung des endgültigen Befehls, bis der Zeitablauf-Zeitraum T vergangen ist, nicht angenommen, daß irgendein anomaler Zustand aufgetreten ist, und der Bereitschaftszustand wird beibehalten. Während dieses Zeitraums kann eine Zeit entsprechend einem Zeitraum, der für die tatsächlich nicht durchgeführte Übertragung in der numerischen Steuervorrichtung erforderlich ist, für eine andere Bearbeitung verwendet werden, beispielsweise eine Bildschirmanzeige oder Eingabe/Ausgabe- Bearbeitung (I/O-Bearbeitung).
Falls es erforderlich ist, den Bereitschaftszustand für einen Zeitraum fortzusetzen, der länger als der Zeitablaufzeitraum T ist, wie in Fig. 13A gezeigt, so wird ein Befehl für den Zeitablauf-Zeitraum erneut von der numerischen Steuervorrichtung an die Servoseite ausgegeben, mit einer Bewegungsrate von 0 innerhalb des Zeitablauf-Zeitraums T. Die Servoseite setzt den Bereitschaftszustand über einen weiteren Zeitablauf-Zeitraum T nach Empfang dieses Befehls fort (ein anomaler Zustand tritt nicht auf).
Wenn es erforderlich ist, eine Bewegung an der Servoseite innerhalb des Zeitablauf-Zeitraums T erneut zu beginnen, wie in Fig. 13B gezeigt, so wird ein Befehl mit einer Bewegungsrate, die nicht gleich 0 ist, von der numerischen Steuervorrichtung an die Servoseite innerhalb des Zeitablauf-Zeitraums T ausgegeben. Wenn die Servoseite diesen Befehl empfängt, verläßt sie den Bereitschaftszustand, und startet erneut den normalen Betrieb für eine Bewegung.
Wie voranstehend geschildert wird bei der numerischen Steuervorrichtung gemäß der vorliegenden Ausführungsform in einem Fall, in welchem ein Befehl für eine Bewegung nicht von einem Werkstückbearbeitungsprogramm ausgegeben wurde, nicht ein Befehl an einen zu steuernden Gegenstand ausgegeben, so daß die Arbeitsbelastung der numerischen Steuervorrichtung verringert wird, wenn ein Befehl nicht ausgegeben wurde, und eine Bearbeitung für andere Teile als den Motor 8 oder dergleichen, beispielsweise für eine Bildschirmanzeige, mit hoher Geschwindigkeit durchgeführt werden kann.
Nunmehr erfolgt eine Beschreibung der numerischen Steuervorrichtung gemäß Ausführungsform 5 der vorliegenden Erfindung. Die numerische Steuervorrichtung gemäß der vorliegenden Ausführungsform erzeugt nicht einen Bruchteil eines Abtastzyklus durch Änderung des Abtastzyklus, wenn der Bruchteil in dem Abtastzyklus erzeugt wurde, wenn ein Geschwindigkeitsbefehlsimpuls aus einer Bewegungsrate und einer Vorschubgeschwindigkeit für jeden Programmblock in einem Fall erzeugt wird, in welchem ein Befehl für einen Freilauf empfangen wird.
Der Aufbau der numerischen Steuervorrichtung gemäß der vorliegenden Ausführungsform ist grundsätzlich ebenso wie bei der Ausführungsform 1 (vgl. Fig. 1). Allerdings sind die Funktionen des Bewegungsbefehlsimpulsverteilungsabschnitts 14 und des Abtastzyklusberechnungsabschnitts 9 anders als bei der Ausführungsform 1.
Die Fig. 14A und 14B sind Zeitablaufdiagramme, die einen Geschwindigkeitsbefehlsimpuls in einem Fall zeigen, in welchem ein Befehl für einen Freilauf (120%) eingegeben wurde. In dieser Figur wird, wenn der Freilaufbefehl zum Zeitpunkt t eingegeben wird, ein Ausgangsimpuls gegenüber dem Punkt t1 um das 1,2-fache verstärkt. Wenn in diesem Fall ein Befehl mit dem Abtastzyklus ausgegeben wird, bevor die Eingabe des Freilaufbefehls erfolgt, wird in dem Ausgangsimpuls ein Bruchteil erzeugt, wie durch die durchgezogene Linie in Fig. 14A gezeigt ist. Daher wird wie in Fig. 14B gezeigt der Abtastzyklus geändert, so daß in dem Befehlsimpuls kein Bruchteil erzeugt wird.
Die Fig. 15A und 15B sind Zeitablaufdiagramme, die einen Geschwindigkeitsbefehlsimpuls in einem Fall zeigen, in welchem ein Befehl für einen Freilauf (80%) eingegeben wurde. In dieser Figur wird, wenn der Freilaufbefehl zum Zeitpunkt t eingegeben wird, ein Ausgangsimpuls gegenüber dem Zeitpunkt t1 um das 0,8-fache verringert. Wenn in diesem Fall ein Befehl mit dem Abtastzyklus ausgegeben wird, bevor die Eingabe des Freilaufbefehls erfolgt ist, wird in dem Ausgangsimpuls ein Bruchteil erzeugt, wie durch die durchgezogene Linie in Fig. 15A gezeigt ist. Daher wird wie in Fig. 15B gezeigt der Abtastzyklus geändert, so daß in dem Befehlsimpuls kein Bruchteil erzeugt wird.
Wie voranstehend geschildert kann bei der numerischen Steuervorrichtung gemäß der vorliegenden Ausführungsform selbst dann, wenn ein Befehl für einen Freilauf empfangen wird, ein Abtastzyklus so geändert werden, daß ein Bruchteil in dem Befehlsimpuls nicht erzeugt wird, so daß selbst beim Freilauf eine Änderung einer Vorschubgeschwindigkeit und eine Verschiebung der Bewegungsortskurve ausgeschaltet werden können, die in einem Intervall der Werkstückbearbeitung zwischen Programmblöcken erzeugt werden.
Wie voranstehend geschildert wird bei dem numerischen Steuerverfahren gemäß einer Zielrichtung der vorliegenden Erfindung in einem Fall, in welchem eine Bewegungsrate und eine Vorschubgeschwindigkeit in jeder Axialrichtung aus einer Bewegungsposition eines Werkzeugs und einer Vorschubgeschwindigkeit des Werkzeugs durch fortschreitende Analyse eines Werkstückbearbeitungsprogramms programmblockweise oder anhand mehrerer Programmblöcke berechnet werden, ein durch einen festgelegten Abtastzyklus unterteilter Befehlsimpuls entsprechend der berechneten Bewegungsrate und Vorschubgeschwindigkeit erzeugt, und wird der Ausgabezeitpunkt des Befehlsimpuls an einen zu steuernden Gegenstand entsprechend dem Abtastzyklus gesteuert, und wird der Abtastzyklus so geändert, daß in dem Befehlsimpuls kein Bruchteil erzeugt wird, wodurch ein Abtastzyklus durch einen Programmblock oder durch mehrere Programmblöcke geändert werden kann, und sich eine hochgenaue Werkstückbearbeitung zwischen zu bearbeitenden Bereichen entsprechend jedem Programmblock dadurch erzielen läßt, daß Schwankungen einer Vorschubgeschwindigkeit und eine Verschiebung einer Bewegungsortskurve ausgeschaltet werden, die in einem Intervall der Werkstückbearbeitung zwischen Programmblöcken erzeugt werden, und gleichzeitig eine Toleranz für die Bearbeitung in der numerischen Steuervorrichtung dadurch erzeugt werden kann, daß die Arbeitsbelastung der numerischen Steuervorrichtung verringert wird.
Bei dem numerischen Steuerverfahren gemäß einer weiteren Zielrichtung der vorliegenden Erfindung werden eine Bewegungsposition eines Werkzeugs und eine Vorschubgeschwindigkeit des Werkzeugs dadurch erhalten, daß fortschreitend ein Werkstückbearbeitungsprogramm durch einen Programmblock oder mehrere Programmblöcke analysiert wird, werden eine Bewegungsrate und eine Vorschubgeschwindigkeit entsprechend der Bewegungsposition eines Werkzeugs und der Vorschubgeschwindigkeit des Werkzeugs berechnet, wird ein Abtastzyklus so geändert, daß ein Bruchteil in einem Befehlsimpuls in einem Programmblock oder in mehreren Programmblöcken nicht erzeugt wird, wird der Befehlsimpuls erzeugt, der durch den geänderten Abtastzyklus entsprechend der berechneten Bewegungsrate und der Vorschubgeschwindigkeit gleichmäßig unterteilt ist, und wird der Ausgabezeitpunkt des erzeugten Befehlsimpuls an einen zu steuernden Gegenstand entsprechend dem Abtastzyklus geändert, wodurch ein Abtastzyklus durch einen Programmblock oder durch mehrere Programmblöcke geändert werden kann, und durch Ausschaltung von Schwankungen einer Vorschubgeschwindigkeit und der Verschiebung einer Bewegungsortskurve, die in einem Intervall der Werkstückbearbeitung zwischen Programmblöcken erzeugt werden, eine hochexakte Werkstückbearbeitung zwischen zu bearbeitenden Flächen entsprechend jedem Programmblock erzielt werden kann, und gleichzeitig durch Verringerung der Arbeitsbelastung einer numerischen Steuervorrichtung eine Toleranz zur Bearbeitung durch die numerische Steuervorrichtung erzeugt werden kann.
Bei der numerischen Steuervorrichtung gemäß einer Zielrichtung der vorliegenden Erfindung erhält eine Analysevorrichtung eine Bewegungsposition eines Werkzeugs und eine Vorschubgeschwindigkeit des Werkzeugs durch fortschreitende Analyse eines Werkstückbearbeitungsprogramms durch einen Programmblock oder durch mehrere Programmblöcke, eine Interpolationsvorrichtung berechnet eine Bewegungsrate und eine Vorschubgeschwindigkeit entsprechend der Bewegungsposition eines Werkzeugs und der Vorschubgeschwindigkeit des Werkzeugs, eine Abtastzyklusberechnungsvorrichtung ändert einen Abtastzyklus, so daß ein Bruchteil eines Befehlsimpulses nicht in dem einen Programmblock oder in den mehreren Programmblöcken erzeugt wird, eine Befehlsimpulserzeugungsvorrichtung erzeugt einen Befehlsimpuls, der gleichförmig durch den geänderten Abtastzyklus entsprechend der berechneten Bewegungsrate und der berechneten Vorschubgeschwindigkeit unterteilt ist, und eine Abtaststeuervorrichtung steuert den Ausgabezeitpunkt des erzeugten Befehlsimpulses an einen zu steuernden Gegenstand entsprechend dem Abtastzyklus, wodurch ein Abtastzyklus durch einen Programmblock oder durch mehrere Programmblöcke geändert werden kann, und sich durch Ausschaltung von Schwankungen einer Vorschubgeschwindigkeit und einer Verschiebung der Ortskurve, die in einem Intervall der Werkstückbearbeitung zwischen Programmblöcken erzeugt werden, eine hochgenaue Werkstückbearbeitung zwischen Bereichen, die entsprechend jedem Programmblock bearbeitet werden sollen, erzielen läßt, und gleichzeitig durch Verringerung der Arbeitsbelastung einer numerischen Steuervorrichtung eine Toleranz für die Bearbeitung durch die numerische Steuervorrichtung erzeugt werden kann.
Bei der numerischen Steuervorrichtung gemäß einer anderen Zielrichtung der vorliegenden Erfindung gleicht die Abtastzyklusberechnungsvorrichtung einen Abtastzyklus an, wodurch eine hochgenaue Werkstückbearbeitung zwischen zu bearbeitenden Bereichen entsprechend jedem Programmblock dadurch erzielt werden kann, daß Schwankungen einer Vorschubgeschwindigkeit und eine Verschiebung einer Bewegungsortskurve ausgeschaltet werden können, die in einem Intervall der Werkstückbearbeitung zwischen Programmblöcken erzeugt werden, und gleichzeitig die Toleranz zur Bearbeitung durch die numerische Steuervorrichtung durch Verringerung der Arbeitsbelastung der numerischen Steuervorrichtung erzeugt werden kann.
Bei der numerischen Steuervorrichtung gemäß einer weiteren Zielrichtung der vorliegenden Erfindung ändert die Abtastzyklusberechnungsvorrichtung einen Abtastzyklus stärker als den ursprünglichen Abtastzyklus, wenn in einem endgültigen Abtastzyklus in dem einen Programmblock oder den mehreren Programmblöcken ein Befehlsimpuls für den endgültigen Abtastzyklus einen Bruchteil kleiner ist als ein Befehlsimpuls in einem anderen Abtastzyklus, wodurch die Arbeitsbelastung der numerischen Steuervorrichtung verringert werden kann.
Bei der numerischen Steuervorrichtung gemäß einer weiteren Zielrichtung der vorliegenden Erfindung stellt die Abtastzyklusberechnungsvorrichtung entsprechend der von der Interpolationsvorrichtung berechneten Vorschubgeschwindigkeit fest, ob die momentane Betriebsart eine Beschleunigung oder Verzögerung oder eine Bewegung mit konstanter Geschwindigkeit ist, stellt einen Abtastzyklus auf einen kürzeren Zeitraum ein als jenen für die Bewegung bei konstanter Geschwindigkeit, bei einer Beschleunigung oder Verzögerung, und stellt einen Abtastzyklus auf einen längeren Zeitraum ein als jenen für die Beschleunigung oder Verzögerung bei der Bewegung mit konstanter Geschwindigkeit. Wie voranstehend geschildert wird ein Abtastzyklus bei der Beschleunigung oder Verzögerung zeitlich kürzer eingestellt, was es ermöglicht, eine Geschwindigkeit durch deren glatte Änderung zu steuern, und weiterhin wird ein Abtastzyklus auf einen längeren Zeitraum bei der Bewegung mit konstanter Geschwindigkeit eingestellt, was eine Feinsteuerung der Bewegung bei der Werkstückbearbeitung entsprechend einer schnellen Beschleunigung oder Verzögerung gestattet, und aus diesem Grunde kann die Werkstückbearbeitungsgenauigkeit verbessert werden, und die Arbeitsbelastung einer numerischen Steuervorrichtung verringert werden.
Bei der numerischen Steuervorrichtung gemäß einer weiteren Zielrichtung der vorliegenden Erfindung stellt die Abtastzyklusberechnungsvorrichtung fest, ob ein Befehl für eine Bewegung ausgegeben wurde oder nicht, stellt einen Abtastzyklus auf einen Zeitraum ein, der länger als ein festgelegter Wert ist, beispielsweise auf einen unendlich langen Zeitraum, wenn ein Befehl für eine Bewegung nicht ausgegeben wurde, und versetzt die Vorrichtung in den Bereitschaftszustand, wodurch die Arbeitsbelastung der numerischen Steuervorrichtung verringert werden kann, und daher eine andere Bearbeitung als die Steuerung eines zu steuernden Gegenstands auf schnelle Weise durchgeführt werden kann, beispielsweise eine Bildschirmanzeige.
Bei der numerischen Steuervorrichtung gemäß einer weiteren Zielrichtung der vorliegenden Erfindung ändert die Abtastzyklusberechnungsvorrichtung dann, wenn sie einen Freilaufbefehl empfängt, einen Abtastzyklus so , daß ein Bruchteil in dem Befehlsimpuls nicht erzeugt wird, wodurch Schwankungen einer Vorschubgeschwindigkeit und eine Verschiebung der Bewegungsortskurve, die in einem Intervall der Werkstückbearbeitung zwischen Programmblöcken erzeugt werden, selbst in der Freilaufbetriebsart ausgeschaltet werden, was eine hochgenaue Werkstückbearbeitung zwischen Bereichen ermöglicht, die entsprechend jedem Programmblock bearbeitet werden sollen, wobei gleichzeitig eine Toleranz für die Bearbeitung der numerischen Steuervorrichtung dadurch erzeugt werden kann, daß die Arbeitsbelastung der numerischen Steuervorrichtung verringert wird.
Zwar wurde die Erfindung unter Bezugnahme auf bestimmte Ausführungsformen zum Zwecke einer vollständigen und deutlichen Offenbarung geschildert, jedoch sollen die beigefügten Patentansprüche hierdurch nicht eingeschränkt werden, sondern sollen das Wesen und den Umfang der vorliegenden Erfindung widerspiegeln, die sich aus der Gesamtheit der vorliegenden Anmeldeunterlagen ergeben, und insbesondere sämtliche Abänderungen und alternativen Ausbildungen der Ausführungsbeispiele umfassen, die einem Fachmann auf diesem Gebiet bei der Lektüre auffallen.
LEGENDE ZU DEN FIGUREN Fig. 1
1: Bearbeitungsprogramm
2: Programmanalyseabschnitt
3: Interpolationsabschnitt
8: Motor
9: Abtastzyklusberechnungsabschnitt
10: Unterbrechungssteuerabschnitt
14: Bewegungsbefehlsimpulsverteilungsabschnitt
15: Beschleunigungs/Verzögerungsabschnitt
16: Befehlsimpulsausgabeabschnitt
17: Antriebsabschnitt
Fig. 2
9: Abtastzyklusberechnungsabschnitt
10: Interpolationsabschnitt
16: Befehlsimpulsausgabeabschnitt
21: Zeitgeber
22: Zähler
24: Unterbrechungsroutine
Fig. 3
NO: Nein
YES: Ja
S10: Abtastzyklus = normaler Abtastzyklus
S11: Eingabe der Bewegungsrate für einen Programmblock
S12: Bewegungsrate für Abtastrate berechnet
a) : Bewegungsrate für einen Abtastzyklus = befohlene Geschwindigkeit×Abtastzyklus
S13: Berechnung von Quotient und Rest
b) : Bewegungsrate für einen Programmblock- Bewegungsrate für einen Abtastzyklus = Quotient + Rest
S14: Ist ein Rest vorhanden ?
S15: Abtastzyklus = Abtastzyklus×(1 + Rest/Quotient)
S16: Bewegungsrate = Abtastzyklus×befohlene Geschwindigkeit
S17: Abtastzyklus und Geschwindigkeitsbefehlsimpuls ausgegeben
END: Ende
Fig. 4A bis 4C
MIGRATION RANGE FOR A SAMPLING CYCLE:
Bewegungsbereich für einen Abtastzyklus
END POINT P2:
Endpunkt P2
START POINT P1:
Startpunkt P1
FRACTION:
Bruchteil
SPEED:
Geschwindigkeit
INSTRUCTED SPEED:
Befohlene Geschwindigkeit
TIME:
Zeit
SAMPLING CYCLE T1:
Abtastzyklus T1
NEW SAMPLING CYCLE T2:
Neuer Abtastzyklus T2
Fig. 5A bis 5C:
LOCUS ACCORDING TO INSTRUCTION FOR MIGRATION:
Ortskurve entsprechend Bewegungsbefehl
SPEED:
Geschwindigkeit
FIRST BLOCK:
Erster Block
SECOND BLOCK:
Zweiter Block
INSTRUCTED SPEED:
Befohlene Geschwindigkeit
INSTRUCTION FOR VECTOR DIRECTION:
Befehl für Vektorrichtung
SAMPLING CYCLE T3:
Abtastzyklus T3
SAMPLING CYCLE T4:
Abtastzyklus T4
TIME:
Zeit
INSTRUCTION FOR Y-AXIAL:
Befehl für Y-Achse
INSTRUCTION FOR X-AXIAL:
Befehl für X-Achse
MIGRATION RANGE FOR A SAMPLING CYCLE:
Bewegungsbereich für einen Abtastzyklus
Fig. 6
S20: Abtastzyklus = normaler Abtastzyklus
S21: Momentan verbleibender Bereich = vorher verbleibender Bereich - Bewegungsbereich für Abtastzyklus
NO: Nein
YES: Ja
S22: Momentan verbleibender Bereich < Bewegungsbereich für einen Abtastbereich
S23: Momentaner Bewegungsbereich = Bewegungsbereich eines Abtastzyklus + momentan verbleibender Bereich
S24: Momentaner Abtastzyklus = momentaner Bewegungsbereich/befohlene Geschwindigkeit
S25: Verbleibender Bereich = 0
S26: Abtastzyklus und Geschwindigkeitsbefehlsimpuls ausgegeben
END: Ende
Fig. 7
END POINT OF FIRST BLOCK (START POINT OF SECOND BLOCK):
Endpunkt des ersten Blocks (Startpunkt des zweiten Blocks
MIGRATION RANGE FOR A SAMPLING CYCLE:
Bewegungsbereich für einen Abtastzyklus
START POINT OF FIRST BLOCK:
Startpunkt des ersten Blocks
END POINT OF SECOND BLOCK:
Endpunkt des zweiten Blocks
SPEED:
Geschwindigkeit
INSTRUCTED SPEED:
Befohlene Geschwindigkeit
TIME:
Zeit
NORMAL SAMPLING CYCLE T5:
Normaler Abtastzyklus T5
SAMPLING CYCLE T5′:
Abtastzyklus T5′
SAMPLING CYCLE T5′′:
Abtastzyklus T5′′
FIRST BLOCK:
Erster Block
SECOND BLOCK:
Zweiter Block
Fig. 8
S50: Abtastzyklus = normaler Abtastzyklus
NO: Nein
YES: Ja
S51: Befohlene Geschwindigkeit des Blocks = momentane Geschwindigkeit ?
S52: Abtastzyklus = Abtastzyklus/n
END: Ende
Fig. 9
SPEED:
Geschwindigkeit
TIME:
Zeit
PROGRAM INSTRUCTION:
Programmbefehl
ACCELERATION/DECELERATION PATTERN:
Beschleunigungs/Verzögerungsmuster
ACTURAL PULSE OUTPUTTED:
Tatsächlich aus gegebener Impuls
SAMPLING CYCLE In ACCELERATION OR DECELERATION T6′:
Abtastzyklus bei Beschleunigung oder Verzögerung T6′
NORMAL SAMPLING CYCLE T6:
Normaler Abtastzyklus T6
Fig. 10
S60: Abtastzyklus = normaler Abtastzyklus
NO: Nein
YES: Ja
S61: Befohlene Geschwindigkeit des Blocks = momentane Geschwindigkeit ?
S62: Abtastzyklus = Abtastzyklus/n
END: Ende
Fig. 11
S70: Abtastzyklus = normaler Abtastzyklus
YES: Ja
No: Nein
S71: Befehl für Bewegung ausgegeben ?
S72: Abtastzyklus = unendlich
END: Ende
Fig. 12A, 12B
TIMING FOR TRANSMISSION FROM ORDINARY NC TO SERVO:
Zeitpunkt für Übertragung von normaler Numeriksteuerung an Servo
TRANSMISSION FROM NC TO SERVO:
Übertragung von Numeriksteuerung an Servo
SEVERAL MILLIMETERS:
Einige Millimeter
CASE WHERE INSTRUCTION CYCLE . . . IN NC OMITTED:
Fall, in welchem Befehlszyklus an Servo sehr lang ausgebildet ist, und Bearbeitung für Übertragung in Numeriksteuerung weggelassen ist
(STAND-BY-STATE):
(Bereitschaftszustand)
TIME OUT PERIOD T:
Zeitablauf-Zeitraum T
Fig. 13A, 13B
TRANSMISSION FROM NC TO SERVO:
Übertragung von Numeriksteuerung an Servo
(STAND-BY STATE):
(Bereitschaftszustand)
(TIME OUT PERIOD CONTINUED):
(Zeitablauf-Zeitraum fortgesetzt)
TIME OUT PERIOD T:
Zeitablauf-Zeitraum T
Fig. 14A, 14B
CASE OF INSTRUCITON FOR OVERRIDE (HIGH-SPEED):
Fall eines Befehls für Freilauf (hohe Geschwindigkeit)
ACTUAL INSTRUCTION:
Tatsächlicher Befehl
CASE OF NO OVERRIDE:
Fall ohne Freilauf
SPEED:
Geschwindigkeit
OVERRIDE:
Freilauf
TIME:
Zeit
Fig. 15A, 15B:
CASE OF INSTRUCTION FOR OVERRIDE (LOW-SPEED):
Fall eines Befehls für Freilauf (niedrige Geschwindigkeit)
ACTUAL INSTRUCITON:
Tatsächlicher Befehl
CASE OF NO OVERRIDE:
Fall ohne Freilauf
SPEED:
Geschwindigkeit
OVERRIDE:
Freilauf
TIME:
Zeit
Fig. 16
1: Bearbeitungsprogramm
2: Programmanalyseabschnitt
3: Interpolationsabschnitt
4: Bewegungsbefehlsimpulsverteilungsabschnitt
5: Beschleunigungs/Verzögerungsabschnitt
6: Befehlsimpulsausgabeabschnitt
7: Antriebsabschnitt
8: Motor
Fig. 17
INSTRUCTED SPEED:
Befohlene Geschwindigkeit
START POINT P101:
Startpunkt P101
END POINT P102:
Endpunkt P102
SPEED:
Geschwindigkeit
INSTRUCTED SPEED:
Befohlene Geschwindigkeit
TIME:
Zeit
SAMPLING CYCLE T101:
Abtastzyklus T101
Fig. 18
MIGRATION RANGE FOR A SAMPLING CYCLE:
Bewegungsbereich für einen Abtastzyklus
END POINT:
Endpunkt
START POINT:
Startpunkt
FRACTION:
Bruchteil
SPEED:
Geschwindigkeit
INSTRUCTED SPEED:
Befohlene Geschwindigkeit
TIME:
Zeit
SAMPLING CYCLE:
Abtastzyklus
Fig. 19
SPEED:
Geschwindigkeit
FIRST BLOCK:
Erster Block
SECOND BLOCK:
Zweiter Block
INSTRUCTED SPEED:
Befohlene Geschwindigkeit
TIME:
Zeit
SAMPLING CYCLE:
Abtastzyklus
Fig. 20
MIGRATION RANGE FOR A SAMPLING CYCLE:
Bewegungsbereich für einen Abtastzyklus
END POINT:
Endpunkt
START POINT:
Startpunkt
SPEED:
Geschwindigkeit
INSTRUCTED SPEED:
Befohlene Geschwindigkeit
TIME:
Zeit
ACTUAL SPEED:
Tatsächliche Geschwindigkeit
SAMPLING CYCLE:
Abtastzyklus
Fig. 21A
SPEED:
Geschwindigkeit
FIRST BLOCK:
Erster Block
SECOND BLOCK:
Zweiter Block
INSTRUCTION FOR VECTOR DIRECTION:
Befehl für Vektorrichtung
INSTRUCTED SPEED:
Befohlene Geschwindigkeit
SAMPLING CYCLE:
Abtastzyklus
FRACTION:
Bruchteil
TIME:
Zeit
INSTRUCTION FOR Y-AXIAL:
Befehl für Y-Achse
INSTRUCTION FOR X-AXIAL:
Befehl für X-Achse
Fig. 21B
ACTUAL LOCUS:
Tatsächliche Ortskurve
INSTRUCTED LOCUS:
Befohlene Ortskurve
MIGRATION RANGE FOR A SAMPLING CYCLE:
Bewegungsbereich für einen Abtastzyklus
Fig. 22
SPEED:
Geschwindigkeit
FIRST BLOCK:
Erster Block
SECOND BLOCK:
Zweiter Block
THIRD BLOCK:
Dritter Block
INSTRUCTED SPEED:
Befohlene Geschwindigkeit
TIME:
Zeit
SAMPLING CYCLE:
Abtastzyklus
Fig. 23
SPEED:
Geschwindigkeit
PROGRAM INSTSRUCTION:
Programmbefehl
ACCELERATION/DECELARATION PATTERN:
Beschleunigungs/Verzögerungsmuster
ACTUAL PULSE OUTPUTTED:
Tatsächlich aus gegebener Impuls
TIME:
Zeit
SAMPLING CYCLE:
Abtastzyklus

Claims (8)

1. Numerisches Steuerverfahren, mit folgenden Schritten:
Berechnen einer Bewegungsrate und einer Vorschubgeschwindigkeit in jeder Axialrichtung aus einer Bewegungsposition eines Werkzeugs und einer Vorschubgeschwindigkeit des Werkzeugs durch fortschreitende Analyse eines Werkstücksbearbeitungsprogramms durch einen Programmblock oder durch mehrere Programmblöcke;
Erzeugung eines Befehlsimpulses, der entsprechend einem festgelegten Abtastzyklus unterteilt wird, in Abhängigkeit von der berechneten Bewegungsrate und Vorschubgeschwindigkeit;
Steuern des Ausgabezeitpunktes des Befehlsimpulses an einen zu steuernden Gegenstand entsprechend dem Abtastzyklus; und
Ändern des Abtastzyklus auf solche Weise, daß in dem Befehlsimpuls kein Bruchteil erzeugt wird.
2. Numerisches Steuerverfahren, mit folgenden Schritten:
Erhalten einer Bewegungsposition eines Werkzeugs und einer Vorschubgeschwindigkeit des Werkzeugs durch fortschreitende Analyse eines Werkstückbearbeitungsprogramms durch einen Programmblock oder durch mehrere Programmblöcke;
Berechnen einer Bewegungsrate und einer Vorschubgeschwindigkeit entsprechend der Bewegungsposition eines Werkzeugs und der Vorschubgeschwindigkeit des Werkzeugs;
Änderung eines Abtastzyklus auf solche Weise, daß ein Bruchteil eines Befehlsimpulses nicht in dem einen Programmblock oder in den mehreren Programmblöcken erzeugt wird;
Erzeugung eines Befehlsimpulses, der gleichmäßig durch den Abtastzyklus unterteilt ist, in dem dritten Schritt, entsprechend der Bewegungsrate und der Vorschubgeschwindigkeit, die in dem zweiten Schritt berechnet wurden; und
Steuern des Ausgabezeitpunktes des Befehlsimpulses, der in dem vierten Schritt erzeugt wurde, an einen zu steuernden Gegenstand entsprechend dem Abtastzyklus.
3. Numerische Steuervorrichtung, welche aufweist:
eine Analysevorrichtung zum Erhalten einer Bewegungsposition eines Werkzeugs und einer Vorschubgeschwindigkeit des Werkzeugs durch fortschreitende Analyse eines Werkstückbearbeitungsprogramms durch einen Programmblock oder durch mehrere Programmblöcke;
eine Interpolationsvorrichtung zur Berechnung einer Bewegungsrate und einer Vorschubgeschwindigkeit entsprechend der Bewegungsposition eines Werkzeugs und der Vorschubgeschwindigkeit des Werkzeugs;
eine Abtastzyklusberechnungsvorrichtung zur Änderung eines Abtastzyklus auf solche Weise, daß ein Bruchteil eines Befehlsimpulses nicht in dem einen Programmblock oder in den mehreren Programmblöcken erzeugt wird;
eine Befehlsimpulserzeugungsvorrichtung zur Erzeugung eines Befehlsimpulses, der gleichmäßig durch einen Abtastzyklus unterteilt ist, der durch die Abtastzyklusberechnungsvorrichtung entsprechend der Bewegungsrate und der Vorschubgeschwindigkeit geändert wird, die von der Interpolationsvorrichtung berechnet werden; und
eine Abtaststeuervorrichtung zum Steuern des Ausgabezeitpunktes eines Befehlsimpulses, der von der Befehlsimpulserzeugungsvorrichtung erzeugt wird, an einen zu steuernden Gegenstand, entsprechend dem Abtastzyklus.
4. Numerische Steuervorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß die Abtastzyklusberechnungsvorrichtung den Abtastzyklus angleicht.
5. Numerische Steuervorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß die Abtastzyklusberechnungsvorrichtung einen Abtastzyklus stärker ändert als den ursprünglichen Abtastzyklus, wenn in einem endgültigen Abtastzyklus des einen Programmblockes oder der mehreren Programmblöcke ein Befehlsimpuls für den endgültigen Abtastzyklus einen Bruchteil kleiner ist als der Befehlsimpuls in anderen Abtastzyklen.
6. Numerische Steuervorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß die Abtastzyklusberechnungsvorrichtung entsprechend der Vorschubgeschwindigkeit, die von der Interpolationsvorrichtung berechnet wird, bestimmt, ob die momentane Betriebsart eine Beschleunigung oder Verzögerung oder eine Bewegung mit konstanter Geschwindigkeit ist, einen Abtastzyklus auf einen kürzeren Zeitraum als den Zeitraum für eine Bewegung mit konstanter Geschwindigkeit bei der Beschleunigung oder Verzögerung einstellt, und auch einen Abtastzyklus auf einen längeren Zeitraum als jenen für Beschleunigung oder Verzögerung bei der Bewegung mit konstanter Geschwindigkeit einstellt.
7. Numerische Steuervorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß die Abtastzyklusberechnungsvorrichtung bestimmt, ob ein Befehl für eine Bewegung ausgegeben wurde oder nicht, eine Abtastzeit auf einen längeren Zeitraum als einen festgelegten Wert einstellt, wenn ein Befehl für eine Bewegung nicht ausgegeben wurde, und die Vorrichtung in den Bereitschaftszustand versetzt.
8. Numerische Steuervorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß die Abtastzyklusberechnungsvorrichtung dann, wenn sie einen Freilaufbefehl empfängt, den Abtastzyklus so ändert, daß ein Bruchteil nicht in dem Befehlsimpuls erzeuge wird.
DE19614232A 1995-04-20 1996-04-10 Verfahren und Vorrichtung für die numerische Steuerung Withdrawn DE19614232A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7094728A JPH08292809A (ja) 1995-04-20 1995-04-20 数値制御方法および数値制御装置

Publications (1)

Publication Number Publication Date
DE19614232A1 true DE19614232A1 (de) 1996-10-24

Family

ID=14118182

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19614232A Withdrawn DE19614232A1 (de) 1995-04-20 1996-04-10 Verfahren und Vorrichtung für die numerische Steuerung

Country Status (4)

Country Link
US (1) US5723962A (de)
JP (1) JPH08292809A (de)
DE (1) DE19614232A1 (de)
TW (1) TW263578B (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10255037A1 (de) * 2002-11-26 2004-06-09 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Bearbeiten eines Werkstücks
WO2009080131A1 (de) * 2007-12-20 2009-07-02 Dr. Johannes Heidenhain Gmbh Verfahren und vorrichtung zur signalabtastung

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998019820A1 (fr) * 1996-11-07 1998-05-14 Kabushiki Kaisha Mori Seiki Seisakusho Procede et dispositif d'analyse de programme cn destine a l'usinage cn
JPH11149306A (ja) * 1997-11-14 1999-06-02 Fanuc Ltd 加工機の制御装置
FR2809242B1 (fr) * 2000-05-18 2002-10-11 Delphi Tech Inc Systeme de detection de la position de fin de course d'une piece mobile par detection du courant de blocage
JP3603051B2 (ja) * 2001-06-22 2004-12-15 東芝機械株式会社 数値制御工作機械の送り速度・加速度制御方法および数値制御装置
US7904870B2 (en) * 2008-04-30 2011-03-08 International Business Machines Corporation Method and apparatus for integrated circuit design model performance evaluation using basic block vector clustering and fly-by vector clustering
JP2010170435A (ja) * 2009-01-24 2010-08-05 Tamagawa Seiki Co Ltd モーション制御用指令システム、モーション制御用指令方法およびモーション制御システム
JP2012135821A (ja) * 2010-12-24 2012-07-19 Seiko Epson Corp ロボットシミュレーション装置、ロボットシミュレーション方法、及びロボットシミュレーションプログラム
JP5778430B2 (ja) * 2011-01-12 2015-09-16 Dmg森精機株式会社 工作機械の制御装置
JPWO2019064919A1 (ja) * 2017-09-26 2020-10-15 日本電産株式会社 ロボット教示装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3854081A (en) * 1973-05-14 1974-12-10 Bendix Corp Servo error signal generator for numerical control systems
JPS5332476B2 (de) * 1973-08-30 1978-09-08
US3825735A (en) * 1973-11-12 1974-07-23 Atomic Energy Commission Command pulse generator for computer-controlled machining
JPS54123673A (en) * 1978-03-16 1979-09-26 Fanuc Ltd Positioning control system
JPS60198606A (ja) * 1984-03-21 1985-10-08 Fanuc Ltd 数値制御装置の加減速方式
JP2793804B2 (ja) * 1987-02-23 1998-09-03 株式会社東芝 パルス分配方法
JPS6479808A (en) * 1987-09-21 1989-03-24 Toshiba Machine Co Ltd Method for controlling feeding speed
JPH02121006A (ja) * 1988-10-31 1990-05-08 Fujitsu Ltd ディジタルサーボ制御用関数発生装置
JPH04205114A (ja) * 1990-11-30 1992-07-27 Hitachi Seiko Ltd 速度パターン生成方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10255037A1 (de) * 2002-11-26 2004-06-09 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Bearbeiten eines Werkstücks
US7292910B2 (en) 2002-11-26 2007-11-06 Kuka Roboter Gmbh Method and device for machining a workpiece
WO2009080131A1 (de) * 2007-12-20 2009-07-02 Dr. Johannes Heidenhain Gmbh Verfahren und vorrichtung zur signalabtastung

Also Published As

Publication number Publication date
JPH08292809A (ja) 1996-11-05
US5723962A (en) 1998-03-03
TW263578B (en) 1995-11-21

Similar Documents

Publication Publication Date Title
DE60302920T2 (de) Numerische Steuerung
DE102018000369B4 (de) Numerische steuerung
DE102005015810A1 (de) Bearbeitungszeit-Berechnungsvorrichtung
DE3750020T2 (de) Numerische Vorschubeinrichtung für eine Werkzeugmaschine.
DE3545795A1 (de) Verfahren und vorrichtung fuer die numerische steuerung mit geschwindigkeitsdifferenz-verminderung
DE112019007578T5 (de) Numerische Steuerung, numerisches Steuerverfahren und Maschinenlernvorrichtung
DE3851387T2 (de) Geschwindigkeitsregelvorrichtung in einem servolenksystem.
DE19614232A1 (de) Verfahren und Vorrichtung für die numerische Steuerung
DE2138815A1 (de) Numerische Werkzeugmaschinensteue rung
DE102016007688A1 (de) Numerische Steuervorrichtung, die entsprechend einer Vorschubgeschwindigkeitsänderung eine dreidimensionale Interferenzprüfung durchführt
DE4011591A1 (de) Apparat zur numerischen steuerung einer werkzeugmaschine mit einer lernfunktion und verfahren zum lernen eines bearbeitungsprogramms fuer den apparat
DE19532146A1 (de) NC-Verfahren und zugehörige Vorrichtung
DE69910119T2 (de) Steuerungseinheit für Maschine
EP0543034B1 (de) Verfahren zum Betrieb einer numerisch gesteuerten Werkzeugmaschine und Werkzeugmaschine zur Ausübung des Verfahrens
DE102015004930B4 (de) Numerische Steuervorrichtung für Maschinenwerkzeug
DE4005042A1 (de) Architektur eines digitalen bewegungssteuerungselements hoher geschwindigkeit
DE102020003527A1 (de) Numerische Steuervorrichtung
DE2103049C3 (de) Vorrichtung eines numerisch gesteuerten Folgesystems
DE4335830A1 (de) Drahtschneidemaschine mit elektrischer Entladung und zugehöriges Verfahren
EP3955073A1 (de) Betreiben einer wenigstens zweiachsigen werkzeugmaschine
EP3438773A1 (de) Bearbeitung von werkstücken mit modellgestützter fehlerkompensation
DE602004000384T2 (de) Numerische Steuereung
DE3902460C2 (de)
DE102019007392A1 (de) Numerisches Steuersystem
DE19600882C1 (de) Verfahren zur dezentralen Steuerung eines Motorantriebs

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8139 Disposal/non-payment of the annual fee