DE102014018177B4 - Numerische Steuerung mit Servoausgangsverzögerungseinheit - Google Patents

Numerische Steuerung mit Servoausgangsverzögerungseinheit Download PDF

Info

Publication number
DE102014018177B4
DE102014018177B4 DE102014018177.4A DE102014018177A DE102014018177B4 DE 102014018177 B4 DE102014018177 B4 DE 102014018177B4 DE 102014018177 A DE102014018177 A DE 102014018177A DE 102014018177 B4 DE102014018177 B4 DE 102014018177B4
Authority
DE
Germany
Prior art keywords
accumulated
unit
pulses
communication
pulse data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102014018177.4A
Other languages
English (en)
Other versions
DE102014018177A1 (de
Inventor
c/o FANUC Corporation Oota Yuu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Publication of DE102014018177A1 publication Critical patent/DE102014018177A1/de
Application granted granted Critical
Publication of DE102014018177B4 publication Critical patent/DE102014018177B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • 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/404Numerical 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 control arrangements for compensation, e.g. for backlash, overshoot, tool offset, tool wear, temperature, machine construction errors, load, inertia
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4063Monitoring general control system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • 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/33Director till display
    • G05B2219/33235Redundant communication channels, processors and signal processing hardware
    • 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/33Director till display
    • G05B2219/33253Correction data transmission errors, protection against noise, twisted pair
    • 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/34406Effect of computer, communication delay in real time control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/41Servomotor, servo controller till figures
    • G05B2219/41173Delay of compensation output signal as function of sampling and computation time

Abstract

Eine numerische Steuervorrichtung mit einer Servoausgangsverzögerungseinheit ist eingerichtet, Pulsdaten von einem manuellen Pulsgenerator über eine Kommunikationseinheit zu empfangen und einen Motor anzutreiben, wobei die numerische Steuervorrichtung folgendes aufweist: einen Speicher mit einem Zwischenspeicherbereich zum Speichern der Pulsdaten für jede Kommunikationsperiode; eine Kommunikationssteuereinheit, die eingerichtet ist, über die Kommunikationseinheit empfangene Pulsdaten in den Zwischenspeicherbereich einzuschreiben; eine Steuereinheit, die eingerichtet ist, die Pulsdaten aus dem Zwischenspeicherbereich auszulesen und die Pulsdaten an eine Servoprozessoreinheit zum Antreiben des Motors abzugeben; eine Recheneinheit für eine akkumulierte Pulsanzahl, die eingerichtet ist, die Anzahl von Pulsen zu bestimmen, die entsprechend eines akkumulierten Werts des Auftretens von Kommunikationsfehlern bei den durch die Kommunikationseinheit innerhalb einer vorgegebenen Zeitspanne empfangenen Pulsdaten in dem Zwischenspeicherbereich zu akkumulieren sind; und eine Servoausgangsverzögerungseinheit, die eingerichtet ist, der Steuereinheit den Start der Ausgabe an die Servoprozessoreinheit zu befehlen nachdem die empfangenen Pulse auf eine Anzahl akkumuliert sind, welche durch die Recheneinheit für die akkumulierte Pulsanzahl bestimmt ist.

Description

  • HINTERGRUND DER ERFINDUNG
  • Gebiet der Erfindung
  • Die Erfindung betrifft eine numerische Steuerungseinrichtung zum Steuern einer Werkzeugmaschine und insbesondere eine numerische Steuerungseinrichtung mit einer Servoausgangsverzögerungseinheit.
  • Zum Stand der Technik
  • Bei manuellem Achsenvorschub, beispielsweise beim anfänglichen Einstellen einer von einer numerischen Steuerungseinrichtung gesteuerten Werkzeugmaschine, dreht eine Bedienungsperson eine Einstellscheibe eines manuellen Pulsgenerators, um entsprechend der Bewegungsstrecke beim manuellen Vorschub Pulse zu erzeugen.
  • Die vom manuellen Pulsgenerator erzeugten Pulse empfängt die numerische Steuerungsvorrichtung über eine Netzwerkkommunikation. Die von der numerischen Steuerungsvorrichtung empfangenen Pulsdaten werden in einen Zwischenspeicher der Steuerungsvorrichtung eingeschrieben. In der numerischen Steuerungsvorrichtung werden die in den Zwischenspeicher eingeschriebenen Pulsdaten ausgelesen und an eine Servoprozessoreinheit abgegeben, um so einen Servomotor anzutreiben zum Aktivieren mechanischer Komponenten der Werkzeugmaschine oder einer anderen industriellen Maschine.
  • Tritt ein Kommunikationsfehler in der Steuervorrichtung auf, werden die durch den manuellen Pulsgenerator erzeugten Pulsdaten nicht von der Steuervorrichtung über die Netzwerkkommunikation empfangen. Deshalb können die Pulsdaten nicht in den Zwischenspeicher der numerischen Steuerungsvorrichtung eingeschrieben werden und ein Puls für den betreffenden Zyklus wird nicht an eine Servosteuereinheit zum Steuern des Servomotors abgegeben. Dementsprechend stoppt die Maschine plötzlich, wodurch es zu mechanischen Erschütterungen („Schock”) kommen kann (siehe 8). Wie 8 zeigt, erzeugt das Auftreten eines Kommunikationsfehlers einen Leerzyklus in den Pulsdaten, die vom manuellen Pulsgenerator übertragen werden. Da die von der numerischen Steuereinrichtung empfangenen Pulsdaten unterbrochen sind, kann die Steuerung des Servomotors zum Antrieb der Maschine nicht normal durchgeführt werden und es kommt zu mechanischen Erschütterungen.
  • Beispielsweise beschreibt Anspruch 2 der japanischen Patentveröffentlichung JP 2002-268 751 A eine Servosteuerungseinrichtung, die eingerichtet ist, eine Achsenbewegung in Richtung auf eine Stellung zwischen Zielpositionen auszuführen, welche vor und nach dem Auftreten eines möglichen Kommunikationsfehlers während der Bewegung abgespeichert werden. Die in dieser Patentveröffentlichung beschriebene Servosteuereinrichtung kann aber keine Achsenbewegung erreichen, die genau den von einem manuellen Pulsgenerator ausgegebenen Pulsdaten entspricht. Deshalb wird bei diesem bekannten Verfahren ein zuvor abgespeicherter Wiederaufnahmebetrieb eingeschoben wenn eine Kommunikationsfehler auftritt, sodass es dazu kommen kann, dass befohlene Operationen möglicherweise nicht durchgeführt werden.
  • Das Dokument DE 690 24 788 T2 offenbart ein Pulsübertragungssystem für einen manuellen Pulsgenerator. Hierbei wird ein Ausgabe-Pulssignal einer manuellen Pulsgeneratoreinheit drahtlos an eine numerische Steuerung übertragen. Das offenbarte Pulsübertragungssystem umfasst einen Zähler zum Zählen von Impulsen, die entsprechend der Rotation des manuellen Pulsgenerators ausgehend von einer Referenzzeit erzeugt werden, einen Signalübertrager zum drahtlosen Übertragen eines numerischen Wertes des Zählers mit einem codierten Signal und einen in der numerischen Steuerung angeordneten Signalempfänger, der den numerischen Wert des Zählers empfängt, die Impulse des manuellen Pulsgenerators zählt und das codierte Signal überprüft.
  • KURZBESCHREIBUNG DER ERFINDUNG
  • Um diese Probleme des Standes der Technik zu überwinden, hat die Erfindung das Ziel, eine numerische Steuereinrichtung mit einer Servoausgangsverzögerungseinheit bereitzustellen.
  • Eine numerische Steuervorrichtung mit einer Servoausgangsverzögerungseinheit gemäß der Erfindung ist eingerichtet, Pulsdaten von einem manuellen Pulsgenerator über eine Kommunikationseinheit zu empfangen und einen Motor anzutreiben. Die numerische Steuervorrichtung hat einen Speicher mit einem Zwischenspeicherbereich zum Speichern der Pulsdaten für jede Kommunikationsperiode, eine Kommunikationssteuereinheit, die eingerichtet ist, die über die Kommunikationseinheit empfangenen Pulsdaten in den Speicherbereich einzuschreiben, eine Steuereinheit, die eingerichtet ist, die Pulsdaten aus dem Speicherbereich auszulesen und an eine Servoprozessoreinheit zum Antreiben des Motors abzugeben, eine Recheneinheit für akkumulierte Pulse, die eingerichtet ist, die Anzahl in dem Speicherbereich zu akkumulierender Pulse zu bestimmen entsprechend der Frequenz des Auftretens von Kommunikationsfehlern bei den durch die Kommunikationseinheit empfangenen Pulsdaten, und eine Servoausgangsverzögerungseinheit, die eingerichtet ist, die Steuereinheit anzuweisen, die Ausgabe an die Servoprozessoreinheit zu starten nachdem die empfangenen Pulse auf eine Anzahl akkumuliert sind, die von der Recheneinheit für akkumulierte Pulse bestimmt ist.
  • Die numerische Steuereinrichtung mit Servoausgangsverzögerungseinheit kann eine Fehlerfrequenzberechnungseinheit aufweisen, die eingerichtet ist, die Frequenz des Auftretens von Kommunikationsfehlern zu gewinnen durch Zählung der Anzahl des Auftretens von Kommunikationsfehlern, die in einer vorgegebenen Zeitspanne vorkommen bis der Antrieb des Motors durch den manuellen Pulsgenerator gestartet wird nach dem Beginn der Kommunikation zwischen der numerischen Steuereinrichtung und dem manuellen Pulsgenerator nach Einschalten der numerischen Steuerung. Die Recheneinheit für die akkumulierte Pulsanzahl kann eingerichtet sein, die Anzahl der im Zwischenspeicherbereich zu akkumulierenden Pulse aus der Frequenz des Auftretens von Kommunikationsfehlern, wie von der Fehlerfrequenzberechnungseinheit bestimmt, abzuleiten.
  • Die numerische Steuervorrichtung mit Servoausgangsverzögerungseinheit kann eine Überwachungseinheit („Monitor”) aufweisen, die eingerichtet ist, einen Überschuss oder einen Mangel an in dem Zwischenspeicherbereich akkumulierten Pulsen zu ermitteln durch Überwachung einer Unterbrechung der an die Servoprozessoreinheit ausgegebenen Pulse und einer Verzögerungszeitspanne von der Beendigung des Pulsdatenempfangs bis zur Beendigung der Ausgabe an die Servoprozessoreinheit, und eine Einstelleinheit, die eingerichtet ist, die Frequenz des Auftretens der Kommunikationsfehler neu zu berechnen und die Anzahl der im Zwischenspeicherbereich zu akkumulierenden Pulse anzupassen wenn ein Überschuss oder eine Fehlmenge von im Zwischenspeicherbereich akkumulierten Pulsen detektiert wird.
  • Mit der oben beschriebenen erfindungsgemäßen Konfiguration kann eine numerische Steuereinrichtung bereitgestellt werden mit einer Servoausgangsverzögerungseinheit.
  • KURZBESCHREIBUNG DER FIGUREN
  • Die obigen und andere Ziele und Merkmale der Erfindung werden noch deutlicher aus der nachfolgenden Beschreibung von Ausführungsbeispielen mit Blick auf die Figuren:
  • 1 ist ein schematisches Blockdiagramm eines Ausführungsbeispieles der Erfindung;
  • 2 erläutert das Ausführungsbeispiel;
  • 3 erläutert das Ausführungsbeispiel;
  • 4 ist ein Flussdiagramm des Prozesses beim Zählen der Frequenz der Akkumulation von Pulsdaten;
  • 5 ist ein Flussdiagramm des Prozesses beim Schreiben von Pulsdaten in einen Zwischenspeicher eines Speichers einer numerischen Steuereinrichtung;
  • 6 ist ein Flussdiagramm des Prozesses beim Lesen von Pulsdaten;
  • 7 ist ein Flussdiagramm eines Prozesses für die erneute Berechnung der Frequenz der Akkumulation von Pulsdaten; und
  • 8 zeigt eine herkömmliche Technik.
  • BESCHREIBUNG BEVORZUGTER AUSFÜHRUNGSBEISPIELE IM EINZELNEN
  • <Erstes Ausführungsbeispiel>
  • 1 ist ein schematisches Blockdiagramm eines Ausführungsbeispieles der Erfindung. Für manuelle Vorschubachsen, beispielsweise beim anfänglichen Einstellen einer Werkzeugmaschine, die durch eine numerische Steuereinrichtung 20 gesteuert wird, dreht eine Bedienungsperson eine Einstellscheibe eines manuellen Pulsgenerators 10, um Pulse zu erzeugen, die der Bewegungsstrecke beim manuellen Vorschub entsprechen. Der manuelle Pulsgenerator 10 hat einen Zwischenspeicher 11, welche für jede Kommunikationsperiode die vom manuellen Pulsgenerator erzeugten Pulse speichert einschließlich aktueller Pulse und Pulse, die in einigen vorherigen Zyklen erzeugt worden sind.
  • Die numerische Steuereinrichtung 20 zum Steuern der Werkzeugmaschine (nicht gezeigt) empfängt über eine Kommunikationseinheit 21 Pulsdaten, die vom manuellen Pulsgenerator 10 übertragen werden. Die numerische Steuereinrichtung 20 hat einen Speicher 23 mit einem Zwischenspeicherbereich, der eingerichtet ist, für jede Kommunikationsperiode die empfangenen Pulsdaten zu speichern. Eine Kommunikationssteuereinheit 22 schreibt die für jeden Zyklus über die Kommunikationseinheit 21 empfangenden Pulsdaten in einen Zwischenspeicherbereich für den Speicher 23. Eine Steuereinheit 24 liest die Pulsdaten aus dem Zwischenspeicherbereich des Speichers 23 und gibt sie an eine Servoprozessoreinheit 25, welche einen Servomotor 30 antreibt. Die Servoprozessoreinheit 25 verwendet die eingegebenen Pulsdaten, um eine Servosteuerung durchzuführen und steuert antriebsmäßig den Servomotor 30, welcher an einer mechanischen Komponente der Werkzeugmaschine angebracht ist.
  • Eine Recheneinheit 26 bestimmt die akkumulierte Pulsanzahl, die im Zwischenspeicherbereich entsprechend der Frequenz des Auftretens der Fehler in der Kommunikation der durch die Kommunikationseinheit 21 empfangenen Pulsdaten zu akkumulieren sind. Eine Servoausgangsverzögerungseinheit 27 befiehlt der Steuereinheit 24, die Ausgabe an die Servoprozessoreinheit 25 zu beginnen wenn die empfangenen Pulse auf eine Anzahl akkumuliert sind, welche durch die Berechnungseinheit 26 für die akkumulierte Pulsanzahl bestimmt ist.
  • Es folgt eine Beschreibung der Frequenz des Auftretens von Kommunikationsfehlern der Pulsdaten. 2 erläutert ein erstes Ausführungsbeispiel entsprechend Anspruch 1. Die linke Hälfte der 2 veranschaulicht in den Zwischenspeicherbereich des Speichers 23 geschriebene Pulse und Ausgangspulse, die aus dem Zwischenspeicherbereich des Speichers 23 zur Servoprozessoreinheit 25 abgegeben werden, ohne Anwendung des Verfahrens gemäß dem ersten Ausführungsbeispiel. Die rechte Hälfte von 2 veranschaulicht in den Zwischenspeicherbereich des Speichers 23 geschriebene Pulse und aus dem Zwischenspeicherbereich ausgelesene und an die Prozessoreinheit 25 abgegebene Pulse unter Anwendung des ersten Ausführungsbeispiels.
  • Kommunikationsfehler treten auf und ein Zykluszähler zählt bis das Bedienelement des manuellen Pulsgenerators 10 gedreht wird nachdem die numerische Steuereinrichtung 20 eingeschaltet worden ist. Wenn eine manuelle Pulseingabenzeitspanne, welche durch den Zykluszähler vorgegeben wird, erreicht ist, wird die Anzahl des Auftretens von Kommunikationsfehlern gezählt und als Auftrittsfrequenz von Kommunikationsfehlern eingeordnet.
  • Basierend auf dieser Auftrittsfequenz der Kommunikationsfehler wird die zu akkumulierende Pulsanzahl beim Start der Drehung des Bedienelementes des manuellen Pulsgenerators 10 bestimmt. Treten zwei Kommunikationsfehler innerhalb der manuellen Pulseingabenzeitspanne beispielsweise auf, dann ist die Auftrittsfrequenz des Kommunikationsfehlers „2”, sodass Pulse für zwei Zyklen akkumuliert werden (siehe rechte Hälfte von 2). Wird das Auslesen der in den Zwischenspeicherbereich eingeschriebenen Pulsdaten und die Abgabe an die Servoprozessoreinheit 25 um die Akkumulation von zwei Zyklen verzögert, erfolgt keine Unterbrechung der Pulsdaten, wie weiter unten näher ausgeführt ist.
  • <Zweites Ausführungsbeispiel>
  • Ändert sich die Auftrittsfrequenz von Kommunikationsfehlern durch Änderung der Kommunikationsumgebung nachdem die Anzahl akkumulierter Pulsdaten durch die Berechnungseinheit 26 für akkumulierte Pulsdaten berechnet worden ist, wird die Anzahl zu akkumulierender Pulse unpassend. 3 erläutert ein zweites Ausführungsbeispiel mit Bezug zu Anspruch 3. Die linke Hälfte von 3 zeigt den Fall, bei dem die Anzahl der zu akkumulierenden Pulse relativ klein ist. In diesem Fall ist die im Zwischenspeicherbereich akkumulierte Anzahl von Pulsen zu klein im Vergleich mit der Auftrittsfrequenz von Kommunikationsfehlern, sodass der Pulsausgang (= Pulsabgabe) zu der Servoprozessoreinheit 25 unzureichend ist. Die rechte Hälfte von 3 zeigt den Fall, in dem die Anzahl zu akkumulierender Pulse relativ groß ist. In diesem Fall ist die im Zwischenspeicherbereich akkumulierte Pulsanzahl zu groß im Vergleich zur Auftrittsfrequenz von Kommunikationsfehlern, sodass der Pulsausgang (= Pulsabgabe) an die Servoprozessoreinheit 25 verzögert ist. Deshalb braucht es eine relativ lange Zeit bis der Servomotor 30 nach vollständigem Pulseingang stoppt.
  • Ist daraufhin die Auftrittsfrequenz von Kommunikationsfehlern so groß, dass die Anzahl zu akkumulierender Pulse unzureichend ist, wird beispielsweise die Anzahl des Auftretens von Kommunikationsfehlern innerhalb einer vorgegebenen Zeitspanne neu berechnet und die Anzahl zu akkumulierender Pulse erhöht. Verringert sich hingegen die Auftrittsfrequenz von Kommunikationsfehlern sodass die Anzahl zu akkumulierender Pulse ansteigt, wird die Anzahl des Auftretens von Kommunikationsfehlern innerhalb der vorgegebenen Zeitspanne neu berechnet und die Anzahl von zu akkumulierenden Pulse reduziert. Auf diese Weise kann die Anzahl zu akkumulierender Pulse optimal auf die Kommunikationsumgebung eingestellt werden.
  • Das Verfahren bezüglich der Servoausgangsverzögerung wird nun mit Blick auf die Flussdiagramme gemäß den 4 bis 7 beschrieben.
  • 4 ist ein Flussdiagramm des Ablaufs beim Zählen der Frequenz der Akkumulation der Pulsdaten. Die Schritte werden nun sequentiell bezüglich des Verfahrens beschrieben. Das Verfahren gemäß dem Flussdiagramm nach 4 wird durch die Recheneinheit 26 für die akkumulierte Pulsanzahl ausgeführt.
  • [Schritt sa01] Es wird ermittelt, ob ein Kommunikationsfehler aufgetreten ist oder nicht. Ist ein Kommunikationsfehler aufgetreten (JA), geht das Verfahren zu Schritt sa02.
  • Wenn nicht (NEIN), geht das Verfahren zu Schritt sa03.
  • [Schritt sa02] Eins wird im Fehlerzähler addiert.
  • [Schritt sa03] Eins wird im Zykluszähler addiert.
  • [Schritt sa04] Es wird ermittelt, ob der Wert des Zykluszählers beim Zählen in Schritt sa03 nicht kleiner ist als die manuelle Pulseingabe-Andauerzeit. Ist der Wert des Zykluszählers nicht kleiner als die manuelle Pulseingabe-Andauerzeit (JA), geht das Verfahren zu Schritt sa05. Wenn nicht (NEIN), geht das Verfahren zurück zu Schritt sa01, woraufhin das Verfahren fortgesetzt wird.
  • [Schritt sa05] Das Verfahren wird beendet mit Annahme des Wertes des Fehlerzählers zum Zählen in Schritt sa02 als Frequenz der Akkumulation.
  • 5 ist ein Flussdiagramm der Verarbeitung beim Einschreiben von Pulsdaten in den Zwischenspeicher des Speichers der numerischen Steuervorrichtung. Die Verarbeitung gemäß dem Flussdiagramm nach 5 wird durch die Kommunikationseinheit 21 und die Kommunikationseinheit 22 ausgeführt.
  • [Schritt sb01] Pulsdaten für einige abgelaufene Zyklen werden zusammen mit aktuellen Pulsdaten des Pulsgenerators empfangen. Die Pulsdaten für einige vergangene Zyklen werden eingestellt auf Basis der Frequenz der Akkumulation, die gemäß 4 gewonnen worden sind.
  • [Schritt sb02] Es wird ermittelt, ob im vorangegangenen Zyklus ein Kommunikationsfehler aufgetreten ist oder nicht. Ist kein Kommunikationsfehler aufgetreten (JA), geht das Verfahren zu Schritt sb03. Liegt ein Kommunikationsfehler vor (NEIN), geht das Verfahren zu Schritt sb04.
  • [Schritt sb03] Die aktuellen Pulsdaten werden in den Zwischenspeicher eingeschrieben, woraufhin das Verfahren beendet ist.
  • [Schritt sb04] Pulsdaten für den Fall des Auftretens eines Kommunikationsfehlers und die aktuellen Pulsdaten werden in den Zwischenspeicher eingeschrieben, woraufhin das Verfahren endet.
  • 6 ist ein Flussdiagramm des Prozesses für das Lesen der Pulsdaten. Das Verfahren gemäß 6 wird durch die Servoausgangsverzögerungseinheit 27 und die Steuereinheit 24 ausgeführt. Das Verfahren gemäß 6 entspricht der Funktion der Servoausgangsverzögerungseinheit.
  • [Schritt sc01] Es wird festgestellt, ob die Frequenz der Akkumulation „0” ist oder nicht. Ist die Frequenz der Akkumulation „0”, geht das Verfahren zu Schritt sc03. Wenn nicht (NEIN), geht das Verfahren zu Schritt sc02.
  • [Schritt sc02] Die Frequenz der Akkumulation wird um eins reduziert, woraufhin das Verfahren endet.
  • [Schritt sc03] Es wird ermittelt, ob die Positionen des Schreib-Pointers und des Lese-Pointers verscheiden voneinander sind. Sind die Positionen verschieden (JA), geht das Verfahren zu Schritt sc04. Wenn nicht (NEIN), endet das Verfahren.
  • [Schritt sc04] Die Position des Lese-Pointers wird um eins vorgeschoben.
  • [Schritt sc05] Ein Puls wird an die Servoprozessoreinheit abgegeben, woraufhin das Verfahren endet.
  • 7 ist ein Flussdiagramm des Prozesses zum Neuberechnen der Frequenz der Akkumulation von Pulsdaten. Das Verfahren nach 7 wird durch die Recheneinheit 26 für die akkumulierte Pulsanzahl ausgeführt.
  • [Schritt sd01] Es wird ermittelt, ob der Unterschied zwischen den Positionen der Schreib- und Lese-Pointer größer ist als die Frequenz der Akkumulation oder ob sie gleich „0” oder kleiner ist. Ist die Differenz größer als die Frequenz der Akkumulation oder ist sie gleich „0” oder kleiner (JA), geht das Verfahren zu Schritt sd02. Wenn nicht (NEIN), endet das Verfahren.
  • [Schritt sd02] Die Frequenz der Akkumulation wird neu berechnet, woraufhin das Verfahren endet.

Claims (3)

  1. Eine numerische Steuervorrichtung mit einer Servoausgangsverzögerungseinheit ist eingerichtet, Pulsdaten von einem manuellen Pulsgenerator über eine Kommunikationseinheit zu empfangen und einen Motor anzutreiben, wobei die numerische Steuervorrichtung folgendes aufweist: einen Speicher mit einem Zwischenspeicherbereich zum Speichern der Pulsdaten für jede Kommunikationsperiode; eine Kommunikationssteuereinheit, die eingerichtet ist, über die Kommunikationseinheit empfangene Pulsdaten in den Zwischenspeicherbereich einzuschreiben; eine Steuereinheit, die eingerichtet ist, die Pulsdaten aus dem Zwischenspeicherbereich auszulesen und die Pulsdaten an eine Servoprozessoreinheit zum Antreiben des Motors abzugeben; eine Recheneinheit für eine akkumulierte Pulsanzahl, die eingerichtet ist, die Anzahl von Pulsen zu bestimmen, die entsprechend eines akkumulierten Werts des Auftretens von Kommunikationsfehlern bei den durch die Kommunikationseinheit innerhalb einer vorgegebenen Zeitspanne empfangenen Pulsdaten in dem Zwischenspeicherbereich zu akkumulieren sind; und eine Servoausgangsverzögerungseinheit, die eingerichtet ist, der Steuereinheit den Start der Ausgabe an die Servoprozessoreinheit zu befehlen nachdem die empfangenen Pulse auf eine Anzahl akkumuliert sind, welche durch die Recheneinheit für die akkumulierte Pulsanzahl bestimmt ist.
  2. Numerische Steuervorrichtung mit einer Servoausgangsverzögerungseinheit gemäß Anspruch 1, aufweisend eine Fehleranzahlberechnungseinheit, die eingerichtet ist, den akkumulierten Wert des Auftretens von Kommunikationsfehlern zu gewinnen durch Zählen der Anzahl des Auftretens von Kommunikationsfehlern, die innerhalb der vorgegebenen Zeitspanne auftreten bis der Antrieb des Motors durch den manuellen Pulsgenerator gestartet wird nach Beginn der Kommunikation zwischen der numerischen Steuervorrichtung und dem manuellen Pulsgenerator nach Einschalten der numerischen Steuervorrichtung, und wobei die Berechnungseinheit für die akkumulierte Pulsanzahl eingerichtet ist, die Anzahl der in dem Zwischenspeicherbereich zu akkumulierenden Pulse aus dem Wert der Anzahl des Auftretens von Kommunikationsfehlern zu berechnen, welcher durch die Fehleranzahlberechnungseinheit bestimmt ist.
  3. Numerische Steuervorrichtung mit einer Servoausgangsverzögerungseinheit gemäß Anspruch 1, aufweisend eine Überwachungseinheit, die eingerichtet ist, einen Überschuss oder eine Fehlmenge an in dem Zwischenspeicherbereich akkumulierten Pulsen zu ermitteln durch Beobachtung einer Unterbrechung der an die Servoprozessoreinheit abgegebenen Pulse und einer Verzögerungszeitspanne vom Abschluss des Empfangs der Pulsdaten bis zum Abschluss der Ausgabe an die Servoprozessoreinheit, und mit einer Einstelleinheit, die eingerichtet ist, den akkumulierten Wert des Auftretens von Kommunikationsfehlern neu zu berechnen und die Anzahl der in dem Zwischenspeicherbereich zu akkumulierenden Pulse anzupassen wenn ein Überschuss oder eine Fehlmenge an in dem Zwischenpufferbereich akkumulierten Pulsen detektiert wird.
DE102014018177.4A 2013-12-16 2014-12-09 Numerische Steuerung mit Servoausgangsverzögerungseinheit Active DE102014018177B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-259479 2013-12-16
JP2013259479A JP5877826B2 (ja) 2013-12-16 2013-12-16 サーボ出力遅延手段を備えた数値制御装置

Publications (2)

Publication Number Publication Date
DE102014018177A1 DE102014018177A1 (de) 2015-06-18
DE102014018177B4 true DE102014018177B4 (de) 2017-10-12

Family

ID=53192601

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014018177.4A Active DE102014018177B4 (de) 2013-12-16 2014-12-09 Numerische Steuerung mit Servoausgangsverzögerungseinheit

Country Status (4)

Country Link
US (1) US9417623B2 (de)
JP (1) JP5877826B2 (de)
CN (1) CN104714472B (de)
DE (1) DE102014018177B4 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10732602B2 (en) * 2015-05-12 2020-08-04 Mitsubishi Electric Corporation Numerical control apparatus
EP3438771A1 (de) * 2017-07-31 2019-02-06 Siemens Aktiengesellschaft Bearbeitung von werkstücken mit fehlerkompensation
CN111596615A (zh) * 2020-06-09 2020-08-28 上海交通大学 一种数控机床在线监测及控制系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69024788T2 (de) * 1989-11-27 1996-06-05 Fanuc Ltd Pulsübertragungssystem für einen manuellen pulsgenerator
JP2002268751A (ja) * 2001-03-14 2002-09-20 Hitachi Via Mechanics Ltd サーボ制御装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4568866A (en) * 1983-10-26 1986-02-04 Allen-Bradley Company Programmable controller for stepping motor control
JPH03252706A (ja) * 1990-03-01 1991-11-12 Nec Corp 数値制御システム
US6255789B1 (en) * 1999-02-04 2001-07-03 Matsushita Electric Industrial Co., Ltd. Motor
JP4080980B2 (ja) * 2003-09-26 2008-04-23 三菱電機株式会社 電子制御装置
JP2006227719A (ja) * 2005-02-15 2006-08-31 Yaskawa Electric Corp モーションコントロールシステム
CN101008842A (zh) * 2007-01-24 2007-08-01 大连光洋科技工程有限公司 用于集成手动脉冲发生器和总线式机床控制面板的装置
CN101067747A (zh) * 2007-05-23 2007-11-07 天水锻压机床有限公司 基于伺服系统总线控制技术的三维空间自动定位系统
JP2009232666A (ja) * 2008-03-25 2009-10-08 Panasonic Corp 逆起電力位相検出装置及び方法並びに励磁制御装置及び方法
WO2012114435A1 (ja) * 2011-02-21 2012-08-30 三菱電機株式会社 電動機制御システムおよび通信方法
CN102621974B (zh) * 2012-04-24 2013-11-27 上海维宏电子科技股份有限公司 基于通信总线的工业自动化实时控制装置及控制方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69024788T2 (de) * 1989-11-27 1996-06-05 Fanuc Ltd Pulsübertragungssystem für einen manuellen pulsgenerator
JP2002268751A (ja) * 2001-03-14 2002-09-20 Hitachi Via Mechanics Ltd サーボ制御装置

Also Published As

Publication number Publication date
DE102014018177A1 (de) 2015-06-18
CN104714472B (zh) 2017-03-15
JP2015118399A (ja) 2015-06-25
US20150168941A1 (en) 2015-06-18
US9417623B2 (en) 2016-08-16
JP5877826B2 (ja) 2016-03-08
CN104714472A (zh) 2015-06-17

Similar Documents

Publication Publication Date Title
DE102016010064B4 (de) Numerische Steuerung mit Bearbeitungsbedingungsanpassungsfunktion zum Verringern des Auftretens von Rattern oder Werkzeugverschleiss/-bruch
DE102014015007B4 (de) Numerische Steuerung mit Programm-Vorablesefunktion
DE60302920T2 (de) Numerische Steuerung
EP1226476B1 (de) Verfahren und schaltungsanordnung zur erzeugung von lagesollwerten für einen lageregelkreis einer numerisch bahngesteuerten maschine
DE102005015810B4 (de) Bearbeitungszeit-Berechnungsvorrichtung
DE102012008541B4 (de) Numerische Steuervorrichtung mit einer Operationsfunktion auf der Grundlage von Daten im Tabellenformat
DE102014003204A1 (de) Numerische Steuervorrichtung für eine Maschine mit einer Komponenteninspektionszeitgabebenachrichtigungsfunktion
DE102014018177B4 (de) Numerische Steuerung mit Servoausgangsverzögerungseinheit
DE102016111595A1 (de) Kollisionsprüfsystem für eine Werkzeugmaschine und einen Roboter
DE102013101838A1 (de) Kurvenverlauf-Anzeigevorrichtung mit Datenverwaltungsfunktion
DE102016112668A1 (de) Wärmeversatzkorrekturvorrichtung für eine Werkzeugmaschine
DE102017005811A1 (de) Numerische Steuervorrichtung, die eine Zeitkonstante für ein Beschleunigungs-/Verzögerungsfilter dynamisch wechselt
DE102019203821B3 (de) Verfahren und System zum Durchführen einer Roboterapplikation
DE102019003731A1 (de) Numerische Steuervorrichtung
DE102016011623A1 (de) Numerische Steuerung mit Funktion zur automatischen Parameterauswahl entsprechend der Größe eines Bearbeitungsbereiches
DE102016000160B4 (de) Numerische Steuerung, eingerichtet für einen Teach-Betrieb mit wechselnden Arbeitsbereichen
DE102015008246A1 (de) Numerische Steuerung mit Werkzeugspitzenpunktsteuerungsfunktion
DE102016002235A1 (de) Numerische Steuerung, die Maschinenkoordinatenwerte durch Verwenden eines absoluten Positionsdetektors wiederherstellt
DE102015013603B4 (de) Numerische Steuervorrichtung
DE102015009583A1 (de) Numerische Steuerung mit DNC-Betriebseinheit
DE102015011363A1 (de) Numerische steuerungsvorrichtung
DE10144788A1 (de) Verfahren und Vorrichtung zur sicheren hochperformanten Aufzeichnung von Prozessdaten bei numerisch gesteuerten industriellen Bearbeitungsmaschinen
DE102016012042A1 (de) Numerische Steuerung mit Positionierung zur Vermeidung einer Kollision mit einem Werkstück
DE102016012334A1 (de) Numerische steuervorrichtung mit programmprüffunktion durch override-schalter
DE102015016523B4 (de) Numerische Steuerung mit Tabellendatenbetrieb

Legal Events

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