DE60012815T2 - Numerisches Steuersystem - Google Patents

Numerisches Steuersystem Download PDF

Info

Publication number
DE60012815T2
DE60012815T2 DE60012815T DE60012815T DE60012815T2 DE 60012815 T2 DE60012815 T2 DE 60012815T2 DE 60012815 T DE60012815 T DE 60012815T DE 60012815 T DE60012815 T DE 60012815T DE 60012815 T2 DE60012815 T2 DE 60012815T2
Authority
DE
Germany
Prior art keywords
clock data
axis
numerical control
main unit
unit
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.)
Expired - Fee Related
Application number
DE60012815T
Other languages
English (en)
Other versions
DE60012815D1 (de
Inventor
Mitsuo Kurakake
Kentaro Fujibayashi
Seiji Yamanashi Akashi
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
Application granted granted Critical
Publication of DE60012815D1 publication Critical patent/DE60012815D1/de
Publication of DE60012815T2 publication Critical patent/DE60012815T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related 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/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • G05B19/4141Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller characterised by a controller or microprocessor per axis
    • 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/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0421Multiprocessor system
    • 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/33337For each axis a processor, microprocessor
    • 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/33338DNC distributed, decentralised nc, concurrent, multiprocessing
    • 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/34397Synchronize manipulators and machine by using a reference clock for all

Description

  • Die vorliegende Erfindung bezieht sich auf ein numerisches Steuersystem, das durch Zusammenschalten einer Vielzahl von numerischen Steuereinrichtungen (CNC-Einrichtungen) die Anzahl von gesteuerten Achsen erhöht und diese Vielzahl von CNC-Einrichtungen synchronisiert. Ein solches numerisches Steuersystem wird hauptsächlich mit Maschinen benutzt, für die eine Vielfach-Achsensynchronisierung, wie für eine Rotationsdruckpresse, eine Verpackungsmaschine, eine Zeichenmaschine und dgl. erforderlich ist.
  • Um eine Steuerung unter Benutzung einer Vielzahl von CNC-Einrichtungen auszuführen, werden die jeweiligen Achsen dieser CNC-Einrichtungen synchronisiert. Als ein Verfahren zum Synchronisieren dieser Achsen gibt es ein bekanntes Verfahren, bei dem Bewegungsbefehls-Daten von einer CNC-Einrichtung, die eine Haupteinheit bildet, an jede Achse anderer CNC-Einrichtungen, die Nebeneinheiten bilden und eine synchronisierte Steuerung durchführen, gesendet werden (s. Japanische Patentanmeldungs-Offenlegungsschriften (JP-A) Nr. 9-204215, 10-13394 u. 9-146623).
  • Ferner gibt es außerdem ein bekanntes Verfahren, bei dem Positionierungs-Daten einer Achse, die eine Referenz, wie eine sog. elektronische Steuerkurve bildet, an jede CNC-Einrichtung gesendet werden und auf der Grundlage der Position dieser Referenzachse die Positionen der Achsen gesteuert werden, die jeweils durch jede CNC-Einrichtung gesteuert werden (s. JF-A Nr.7-302103).
  • Es gibt die folgenden zwei Betriebsarten zum Senden dieser Referenzachsen-Positionierungs-Daten an jede CNC-Einrichtung.
  • 1. Externimpuls-Synchronisierungs-Betriebsart
  • In dieser Betriebsart ist extern, wie in 18 gezeigt, eine Hauptachse 80 (beispielsweise eine Steuerwelle) vorgesehen, die eine Referenz bildet, und durch einen Impulsgenerator 81 wird ein Impuls erzeugt, der die Position dieser Hauptachse 80 angibt. Dann wird dieser Impuls jeder CNC-Einrichtung #1 – #n eingegeben, die Nebeneinheiten sind. Durch diese Vorgehensweise führt jede CNC-Einrichtung #1-#n mittels Berechnung des Positionierungsorts (Ort einer motorgetriebenen Achse) der Achsen (Nebenachsen) eine Positionierungssteuerung durch, wobei jede derselben durch die eingegebene Position dieser Hauptachse 80 gesteuert wird. Das bedeutet, dass die jeweiligen Achsen (Nebenachsen) von CNC-Einrichtungen #1 – #n synchron mit der Hauptachse 80 gesteuert werden.
  • Um den Positionierungsort ein Nebenachse relativ zu dieser Hauptachse 80 zu steuern, wird ein Koeffizient N/M als ein Parameter für jede Nebenachse gesetzt. Dann führen die CNC-Einrichtungen #1 – #n, die jede Nebenachse steuern, derart eine Achse-Positionierungssteuerung aus, dass eine Nebenachse eine N/M-Position relativ zu der Position der Hauptachse 80 annimmt. Dieses Verfahren wird in einem Fall benutzt, in dem eine Nebenachse durch eine Reihe von Getrieben mit der Hauptachse 80 verbunden ist.
  • Ferner wird auch ein Verfahren eingesetzt, bei dem die Position X der Hauptachse 80 als ein Argument behandelt wird und die Position Y einer Nebenachse durch eine Funktion f(X) bestimmt wird. Bei diesem Verfahren wird für eine Hauptachsenposition X, die den CNC-Einrichtungen #1 – #n, die Nebeneinheiten sind, eingegeben wird, eine Nebenachsenposition Y = f(X) durch die Funktion f(X) jeder Nebenachse bestimmt, die jeweils in diesen CNC-Einrichtungen #1 – #n gesetzt wird, und jede Nebenachse wird zu dieser Position positionierungsgesteuert.
  • Überdies gibt es als ein anderes Verfahren zum Bestimmen der Position einer Nebenachse unter Benutzung entweder des zuvor erwähnten Koeffizienten oder der Funktion ein Verfahren, bei dem eine Nebenachsenposition durch Modellbildung bestimmt wird. Bei diesem Verfahren wird, wie in 20 gezeigt, eine Datentabelle bereitgestellt, welche die entsprechende Position jeder Nebenachse relativ zu der Position einer Hauptachse speichert. Dann werden die CNC-Einrichtungen #1 – #n, die Nebeneinheiten bilden, derart gesteuert, dass jede Nebenachse relativ zu der Position der Hauptachse in einer Position positioniert wird, die in dieser Datentabelle gesetzt und gespeichert ist.
  • 2. Internimpuls-Synchronisierungs-Betriebsart
  • In dieser Betriebsart wird, wie in 19 gezeigt, eine CNC-Einrichtung #1 ohne Vorsehen einer externen Hauptachse als eine Haupteinheit bestimmt, und die verbleibenden CNC-Einrichtungen #2 – #n werden als Nebeneinheiten bestimmt. Dann steuert die Haupteinheit #1 die Achse derselben (virtuelle Hauptachse), veranlasst ein Impulserzeugungsmittel 82, einen Referenzimpuls (der die Position der virtuellen Hauptachse angibt) zu erzeugen, und gibt diesen Impuls an jede Nebeneinheit (CNC-Einrichtung) #2 – #n aus.
  • Durch diese Vorgehensweise führt jede Nebeneinheit #2 – #n durch Berechnen des Positionierungsorts der Achse (Nebenachse) aus einer eingegebenen virtuellen Hauptachsenposition eine Positionierungssteuerung durch, welche Achse die Nebeneinheit selbst steuert.
  • Ferner ist in der Haupteinheitauch eine Nebenachse angeordnet, und diese Nebenachse wird ebenfalls durch ein Achsensteuermittel 83 auf der Grundlage von Hauptachsenposition-Daten bezüglich der virtuellen Hauptachse gesteuert.
  • Überdies wird in der Internimpuls-Synchronisierungs-Be triebsart die Position einer Nebenachse relativ zu einer Hauptachse entweder durch einen Koeffizienten (N/M), eine Funktion Y = f(X) oder eine Datentabelle, wie derjenigen, die in 20 gezeigt ist, wie im Falle der Externimpuls-Synchronisierungs-Betriebsart bestimmt, die zuvor erklärt wurde.
  • Bei dem zuvor erwähnten Stand der Technik wird für die Externimpuls-Synchronisierungs-Betriebsart, ein wirkliches Betätigungsteil, wie eine Steuerwelle, auf der Außenseite benötigt. Das Vorsehen einer wirklichen Betätigungs-Steuerwelle oder dgl. ist vom Standpunkt der Kosten der Wartung unvorteilhaft.
  • Im Gegensatz dazu ist die Internimpuls-Synchronisierungs-Betriebsart dahingehend vorteilhaft, dass kein Bedarf dafür besteht, eine externe Steuerwelle oder dgl. vorzusehen. Es besteht jedoch ein Nachteil derart, dass da die Position einer virtuellen Hauptachse durch die Haupteinheit gesteuert werden muss, die Anzahl der durch die Haupteinheit gesteuerten Achsen um 1 verringert ist, weil eine komplexe Steuerung erforderlich ist. Das bedeutet, dass bei der Hauptachsen-Positionierungssteuerung zuätzlich zu einer einfachen Bewegung, einem Stoppen und einer Übersteuerung eine Notwendigkeit für eine komplexe Steuerung, wie eine Beschleunigungs/Verzögerungs-Steuerung, und eine vorgreifende Steuerung besteht, die auf der Grundlage von zukünftigen Positionierungs-Daten durchgeführt wird. Daher muss die Hauptachse als eine Haupteinheit-Steuerachse benutzt werden, was dazu führt, dass die wirklichen Steuerachsen um 1 verringert sind.
  • Überdies ist es bei dem zuvor erwähnten Stand der Technik, da die Nebenachsen abhängig von einer Hauptachsenposition positioniert werden, worüber Information von einer Haupteinheit gesendet wird, nicht möglich, entweder eine bestimmte Nebenachse oder eine bestimmte Nebenachse relativ zu anderen Nebenachsen unabhängig von der Position der Hauptachse zu steuern. Das bedeutet, dass es nicht möglich ist, eine bestimmte Nebenachse (nicht die Hauptachse) in Synchronisierung mit einer anderen Nebenachse zu steuern. Beispielsweise ist es nicht möglich, verschiedene numerische Steuereinrichtungen in einer Weise zu betreiben, dass die Achsen verschiedener numerischer Steuereinrichtungen (Nebeneinheiten) in einem bestimmten Abschnitt in Synchronismus miteinander arbeiten, jedoch ohne Synchronismus in einem anderen Abschnitt arbeiten. Ferner ist es auch nicht möglich, gewaltsam die programmierte Geschwindigkeit nur einer bestimmten Nebenachse durch Anwenden einer Übersteuerung unabhängig von der Hauptachse oder einer anderen Nebenachse zu ändern.
  • Ein Beispiel für ein numerisches Steuersystem, wie es in dem Oberbegriff des vorliegenden Anspruchs 1 angegeben ist, ist in der Druckschrift US-A-5,391,970 offenbart.
  • Eine Aufgabe der vorliegenden Erfindung besteht darin, ein numerisches Steuersystem zu schaffen, das in der Lage ist, eine Nebenachse in bezug auf eine Hauptachse frei zu synchronisieren oder zu desynchronieren.
  • Das numerische Steuersystem gemäß der vorliegenden Erfindung umfasst: eine numerische Steuereinrichtung, die eine Haupteinheit bildet, und eine oder mehrere numerische Steuereinrichtungen, die Nebeneinheiten bilden, wobei die Achsen, die durch diese verschiedenen numerischen Steuereinrichtungen gesteuert werden, in Synchronismus miteinander gesteuert werden.
  • Die numerische Steuereinrichtung, die eine Haupteinheit bildet, umfasst: Takt-Datenerzeugungsmittel zum Erzeugen von Takt-Daten durch entweder Heraufzählen oder Herabzählen mit einem vorgeschriebenen Zeitintervall, Sendemittel zum Senden der Takt-Daten, die durch die Takt-Datenerzeugungs mittel erzeugt sind, von der Haupteinheit an die Nebeneinheit, Speichermittel zum Speichern eines Programms, das Bewegungsbefehle für ein Achse enthält, die durch diese Haupteinheit gesteuert wird, und Mittel zum Starten des Programms auf der Grundlage der Takt-Daten.
  • Jede der numerischen Steuereinrichtungen, die Nebeneinheiten bilden, umfasst: Speichermittel zum Speichern eines Programms, das Bewegungsbefehle für eine Achse enthält, die durch jede Nebeneinheit gesteuert wird, und Mittel zum Starten eines Programms auf der Grundlage von Takt-Daten aus der Haupteinheit.
  • Ein numerisches Steuersystem gemäß der vorliegenden Erfindung kann die Form folgender Ausführungsbeispiele annehmen:
  • Die Haupteinheit und die Nebeneinheiten können ferner Startzeit-Speichermittel zum Speichern von Startzeit-Daten zum Starten eines Programs und Startmittel zum Starten eines Programms zu einer Startzeit umfassen, die in diesem Startzeit-Speichermittel gespeichert ist.
  • Die numerische Steuereinrichtung kann Mittel zum Steuern eines Zählbetriebs von Takt-Datenerzeugungsmitteln durch ein Signal von entweder außerhalb oder innerhalb umfassen.
  • Mittel zum Steuern eines Zählbetriebs können zumindest eine oder mehrere der Funktionen Zählrücksetzung und Zählstart, Zählunterbrechung und Wiederstarten und eine Zählübersteuerungs-Funktion umfassen.
  • Ein Signal von entweder außerhalb oder innerhalb kann von der Haupteinheit und/oder einer Nebeneinheit erzeugt werden.
  • Die Haupteinheit und die Nebeneinheiten können Mittel zum Einstellen von Takt-Daten für Verzögerungen umfassen, die mit einem Senden der Takt-Daten einhergehen.
  • Die Nebeneinheiten können Mittel zum Einstellen von Takt-Daten für Verzögerungen, die mit einer Takt-Datenübertragung einhergehen, und eine Unstimmigkeit einer Betriebs-Referenz-Zeiteinheit umfassen.
  • Das numerische Steuersystem kann Mittel zum Starten eines Programms umfassen, das Bewegungsbefehle für jede Achse ohne Abhängigkeit von Takt-Daten enthält, betätigt in einem bestimmten Abschnitt Achsen verschiedener numerischer Steuereinrichtungen mit Synchronisierung und betätigt solche Achsen in einem anderen Abschnitt ohne Synchronisierung.
  • Die Haupteinheit kann mit einer Vielzahl von Mitteln zum Erzeugen von Takt-Daten zum Senden einer Vielzahl von Takt-Daten ausgestattet sein, so dass die Nebeneinheiten eine Vielzahl von Takt-Daten mit dem Ergebnis empfangen können, dass für jede Achse der Nebeneinheiten ausgewählt werden kann, auf welchen der Takt-Daten aus der Vielzahl von Takt-Daten ein Programm beruhen sollte, was eine Steuerung der Achsen mit Synchronisierung durch Unterteilen derselben in Gruppen ermöglicht.
  • Das numerische Steuersystem kann statt einer Haupteinheit eine Vielzahl von Haupteinheiten umfassen, so dass durch jede Haupteinheit Takt-Daten individuell erzeugt werden, eine Vielzahl von Takt-Daten gesendet werden und die Nebeneinheiten die Vielzahl von Takt-Daten mit dem Ergebnis empfangen können, dass für jede Achse der Nebeneinheiten ausgewählt werden kann, auf welchen der Takt-Daten aus der Vielzahl von Takt-Daten ein Programm beruhen sollte, was eine Steuerung der Achsen mit Synchronisierung durch Unterteilen derselben in Gruppen ermöglicht.
  • Gemäß der vorliegende Erfindung bestehr keine Norwendigkeit, die Anzahl von Steuerachsen der CNC-Einrichtung, die als die Haupteinheit dient, zu verringern. Ferner ist es leicht, die Kombination von zu synchronisierenden Achsen zu ändern und einen Abschnitt, der synchronisiert ist, und einen Abschnitt, der nicht synchronisiert ist, zu schaffen. Überdies ist die vorliegende Erfindung dadurch vorteilhaft, dass es durch Übersteuerung der Takt-Daten möglich ist, alle synchronisierten Achsen zu übersteuern, während die Achsen, die nicht synchronisiert sind, nicht übersteuert werden. um da-durch das Erhöhen der Zykluszeit zu steuern.
  • Zum besseren Verständnis der Erfindung und um zu zeigen, wie dieselbe zur Wirkung gebracht werden kann, wird im folgenden auf die vorliegenden Figuren Bezug genommen, die Ausführungsbeispiele darstellen.
  • 1 zeigt ein Blockschaltbild der Hauptteile eines ersten Ausführungsbeispiels der vorliegenden Erfindung.
  • 2 zeigt ein Blockschaltbild der Hauptteile einer Haupteinheit gemäß einem zweiten Ausführungsbeispiel der vorliegenden Erfindung.
  • 3 zeigt ein Blockschaltbild der Hauptteile einer Haupteinheit, das ein erstes modifiziertes Beispiel des zweiten Ausführungsbeispiels darstellt.
  • 4 zeigt ein Blockschaltbild einer Haupteinheit, das ein zweites modifiziertes Beispiel des zweiten Ausführungsbeispiels darstellt.
  • 5 zeigt ein Blockschaltbild der Hauptteile eines dritten Ausführungsbeispiels der vorliegenden Erfindung.
  • 6 zeigt ein Blockschaltbild der Hauptteile eines vierten Ausführungsbeispiels der vorliegenden Er findung.
  • 7 zeigt ein Blockschaltbild der Hauptteile eines fünften Ausführungsbeispiels der vorliegenden Erfindung.
  • 8 zeigt ein Beispiel für ein Stufenleiterprogramm, das ausgeführt wird, wenn der Betrieb in Übereinstimmung mit einer anderen Bedingung als Takt-Daten beginnt.
  • 9 zeigt ein Beispiel für ein Stufenleiterprogramm, das ausgeführt wird, wenn der Betrieb in Übereinstimmung mit Takt-Daten beginnt.
  • 10 zeigt ein Flussdiagramm der Verarbeitung, welche die Haupteinheit zum Korrigieren einer Übertragungsverzögerung durchführt.
  • 11 zeigt ein Flussdiagramm der Verarbeitung, welche die Nebeneinheit zum Korrigieren einer Übertragungsverzögerung durchführt.
  • 12 zeigt ein Flussdiagramm der Verarbeitung, welche die Nebeneinheit gemäß einem anderen Verfahren zum Korrigieren einer Übertragungsverzögerung durchführt.
  • 13 zeigt ein Diagramm, welches das Prinzip des Übertragungsverzögerungs-Korrekturverfahrens veranschaulicht, das in 12 gezeigt ist.
  • 14 zeigt ein Zeitdiagramm eines ersten Beispiels für einen synchronisierten Betrieb gemäß der vorliegenden Erfindung.
  • 15 zeigt ein Zeitdiagramm eines Falls, in dem eine Übersteuerung auf den zweiten Zyklus in dem ersten Beispiel für den synchronisierten Betrieb gemäß 14 angewendet ist.
  • 16 zeigt ein Zeitdiagramm eines zweiten Beispiels für den synchronisierten Betrieb gemäß der vorliegenden Erfindung.
  • 17 zeigt ein Zeitdiagramm eines Falls, in dem eine Übersteuerung auf den zweiten Zyklus in dem zweiten Beispiel für den synchronisierten Betrieb gemäß 16 angewendet ist.
  • 18 zeigt ein Blockschaltbild der Hauptteile eines herkömmlichen Beispiels für eine Externimpuls-Synchronisierungs-Betriebsart, in der eine Hauptachse extern vorgesehen ist.
  • 19 zeigt ein Blockschaltbild der Hauptteile eines herkömmlichen Beispiels für eine Internimpuls-Synchronisierungs-Betriebsart, in der innerhalb einer Haupteinheit eine virtuelle Hauptachse vorgesehen ist.
  • 20 zeigt ein Beispiel für eine Datentabelle, die zum Synchronisieren der Position einer Nebenachse relativ zu der Position einer Hauptachse benutzt worden ist.
  • 1 zeigt ein Blockschaltbild der Hauptteile eines ersten Ausführungsbeispiels der vorliegenden Erfindung. In diesem ersten Ausführungsbeispiel sind eine Vielzahl von Achsen in Gruppen unterteilt und werden durch eine Vielzahl von CNC-Einrichtungen gesteuert. Diese Achsen werden durch Erreichen einer Synchronisierung gesteuert.
  • Aus der Vielzahl von CNC-Einrichtungen wird eine Einheit als die Haupteinheit 100 behandelt, und die anderen CNC-Einrichtungen werden als Nebeneinheiten 200, 300,... behandelt. 1 zeigt nur eine Haupteinheit 100 und zwei Nebeneinheiten 200, 300. Mit der Haupteinheit 100 und jeder Nebeneinheit 200, 300 sind über Servoverstärker A eine Vielzahl von Servomotoren M verbunden, die Achsen antreiben.
  • Die Haupteinheit 100 ist praktisch gleich wie eine herkömmliche CNC-Einrichtung gebildet, ist jedoch von einer herkömmlichen CNC-Einrichtungen durch die Tatsache verschieden, dass die Haupteinheit 100 mit einem Zähler 9 zum Erzeugen von Takt-Daten, einen Treiber 10 zum Senden dieser Takt-Daten an Nebeneinheiten 200, 300, ... und einem Takt-Datenspeicher 8 zum Speichern von Takt-Daten ausgestattet ist.
  • Auf der Grundlage eines Takt-Signals aus einem Takt-(Kristall-)Oszillator) 1 erzeugt ein ITP-Erzeugungsmittel 2 einen Impuls einer Grund-Zeiteinheit des Betriebs (im folgenden als ITP bezeichnet). Ferner erzeugt der Zähler 9 Takt-Daten durch Abzählen der Takt-Signale aus dem Takt-Oszillator 1. Diese Takt-Daten werden durch den Treiber 10 über ein Kabel 50 an jede Nebeneinheit 200, 300, ... gesendet. Überdies werden diese Takt-Daten durch einen CNC-Prozessor 3 in einen Takt-Datenspeicher 8 eingelesen und darin gespeichert. Wie zuvor ausgeführt ist das Takt-Datenerzeugungsmittel durch diesen Zähler 9 und den Takt-Oszillator 1 gebildet.
  • In einem Programm-Speicher 4 ist ein Teilprogramm gespeichert, das durch den CNC-Prozessor 3 ausgeführt wird. Ferner ist in einem Stufenleiterprogramm-Speicher 6 ein Stufenleiterprogramm, das durch einen Prozessor zur Programmsteuerung (im folgenden als PC-Prozessor bezeichnet) 7 ausgeführt wird, und ein Achsensteuerprogramm für eine Programm-Steuereinrichtung gespeichert. Diese Programme können über ein mit einer Aneigeeinrichtung ausgestattetes Steuerschaltfeld (in der Figur nicht gezeigt) eingegeben und in den Speichern 4, 6 gesetzt werden, können von einem Haupt-Computer gesendet und über eine Kommunikations-Schnittstelle eingegeben werden oder können über einen Papierstreifen, eine Floppy Disk oder eine IC-Karte eingegeben werden.
  • Der PC-Prozessor 7 startet entweder das Programm, das in dem Programm-Speicher 4 gespeichert ist, oder das Achsensteuerprogramm für eine programmierbare Steuereinrichtung, das in dem Stufenleiterprogramm Speicher 6 gespeichert ist, auf der Grundlage von Takt-Daten, die in dem Takt-Daten-Speicher 8 gespeichert sind, und das Stufenleiterprogramm, das in Stufenleiterprogramm Speicher 6 gespeichert ist.
  • Der CNC-Prozessor 3 berechnet den Betrag einer Bewegung jeder Achse (durch die Haupteinheit achsengesteuert) in ITP-Einheiten von Impulsen, die von dem ITP-Erzeugungsmittel 2 augegeben sind, und gibt diesen Wert an einen Achsensteuerprozessor 5 aus. Der Achsensteuerprozessor 5, der den Betrag der Bewegung jeder Achse empfangen hat, treibt und steuert den Motor M jeder Achse über einen Servoverstärker A.
  • Die Nebeneinheiten 200, 300, ... sind wie die Haupteinheit 100 mit einem Takt-Oszillator 1, einem ITP-Erzeugungsmittel 2, einem CNC-Prozessor 3, einem Programm Speicher 4, einem Achsensteuerprozessor 5, einem Stufenleiterprogramm-Speicher 6, einem PC-Prozessor 7 und einem Takt-Daten-Speicher 8 versehen. Die Nebeneinheiten 200, 300, ... sind jedoch dadurch von der Haupteinheit 100 verschieden, dass die Nebeneinheiten 200, 300, ... nicht mit einem Takt-Datenerzeugungsmittel (Zähler 9 u. Treiber 10), sondern mit einem Empfänger 11 zum Empfangen der Takt-Daten ausgestattet sind, die über den Treiber 10 der Haupteinheit 100 und das Kabel 50 gesendet werden.
  • Takt-Daten, die über das Kabel 50 an einen Empfänger 11 gesendet werden, werden durch den CNC-Prozessor 3 einer Nebeneinheit ausgelesen und in dem Takt-Daten-Speicher 8 gespeichert. Ein Programm wird auf der Grundlage der Takt-Daten, die in diesem Speicher 8 gespeichert sind, und einem Stufenleiterprogramm, das in dem Stufenleiterprogramm-Speicher 6 gespeichert ist, gestartet. Dann wird jede Achse jeder Nebeneinheit 200, 300, ... unter Betriebszuständen ähnlich dem zuvor erwähnten Betriebszustand der Haupteinheit 100 angetrieben und gesteuert. Überdies sind Teilprogramme, die durch die CNC-Prozessoren jeder Nebeneinheit auszuführen sind, vorab in dem Programm-Speicher 4 jeder Nebeneinheit 200, 300, ... gespeichert. Ferner sind ein Stufenleiterprogramm und ein Achsensteuerprogramm für eine programmierbare Steuereinrichtung jeder Nebeneinheit in dem Stufenleiterprogramm-Speicher 6 jeder Nebeneinheit 200, 300, ... gespeichert.
  • Wie zuvor beschrieben starten die Haupteinheit 100 und jede Nebeneinheit 200, 300, ... jedes Programm und steuern die Achsen auf der Grundlage von Takt-Daten. Folglich kann jede durch die Haupteinheit 100 und jede Nebeneinheit 200, 300, ... zu steuernde Achse auch entweder einer synchronisierten Steuerung oder einer unsynchronisierten Steuerung auf der Grundlage dieser Takt-Daten unterzogen werden.
  • Die synchronisierte Steuerung jede Achse will wird im folgenden erklärt.
  • In dem Stufenleiterprogramm-Speicher 6 der Haupteinheit 100 ist, wie in 8 gezeigt, ein Stufenleiterprogramm gespeichert, in dem die Startbedingung einer bestimmten Achse ausgewählt wird, wenn eine andere Achse eine vorbestimmte Position erreicht hat. In diesem Fall ändert sich ein Startsignal ACT, wenn diese Startbedingung erfüllt ist, nach "1", und entweder wird der Betrieb einer bestimmten Achse in Übereinstimmung mit einer Sequenz aus der program mierbaren Steuereinrichtung gestartet oder es wird ein Bewegungsprogramm durch ein Teilprogramm gestartet, das sich auf eine bestimmte Achse bezieht. Auf diese Weise kann diese Achse gesteuert werden, deren Betrieb im Zusammenhang mit dem Betrieb einer anderen Achse steht. Das bedeutet, dass sie nicht auf Takt-Daten angewiesen ist.
  • Ferner ändert sich das Startsignal ACT, wenn ein Stufenleiterprogramm, wie dasjenige, das in 9 gezeigt ist, vorab in dem Stufenleiterprogramm-Speicher 6 der Haupteinheit 100 und/oder einer bestimmten Nebeneinheit 200, 300, ... gesetzt ist, nach "1", wenn die Takt-Daten einen vorbestimmten Wert n erreichen, um dadurch entweder einen Achsenbetrieb gemäß einer Sequenz aus einer programmierbaren Steuereinrichtung oder ein Bewegungsprogramm, das sich auf eine Achse der Haupteinheit 100 und/oder eine Achse einer bestimmten Nebeneinheit 200, 300, ... bezieht, zu starten,
  • 2 zeigt ein Blockschaltbild des Hauptteils einer CNC-Einrichtung, die eine Haupteinheit 100 eines zweiten Ausführungsbeispiels der vorliegenden Erfindung bildet.
  • Die Haupteinheit 100 gemäß diesem zweiten Ausführungsbeispiel ist dadurch von der Haupteinheit 100 in 1 gezeigten (erstes Ausführungsbeispiel) verschieden, dass ein Rücksetz-Signal SR eines Zählers 9, ein Rücksetzaufhebungs-Signal SRR, ein Halt-Signal SH und ein Haltaufhebungs-Signal SHR von einem PC-Prozessor 7 ausgegeben werden, dadurch, dass ein Zähler 9, der ein Takt-Datenerzeugungsmittel bildet, derart beschaffen ist, dass ein Rücksetzen, ein Halten und die Aufhebung derselben ermöglicht ist, und überdies dadurch, dass das Ausgabeintervall von Takt-Daten eingestellt und eine Übersteuerung auf die Takt-Daten angewendet werden kann.
  • Obwohl in 2 fortgelassen, sind in der Haupteinheit 100 gemäß dem zweiten Ausführungsbeispiel genau wie in der Haupteinheit gemäß dem ersten Ausführungsbeispiel, das in 1 gezeigt ist, ein ITP-Erzeugungsmittel 2, ein Programm-Speicher 4, ein Achsensteuerprozessor 5, ein Takt-Daten-Speicher 8 und ein Treiber 10 vorgesehen, und die Haupteinheit 100 gemäß dem zweiten Ausführungsbeispiel arbeitet in gleicher Weise wie die Haupteinheit 100 gemäß dem ersten Ausführungsbeispiel. In 2 sind nur Elemente gezeigt, die sich auf Operationen beziehen, welche die Haupteinheit 100 gemäß dem zweiten Ausführungsbeispiel durchführt, die andere als die Operationen sind, welche die Haupteinheit 100 gemäß dem ersten Ausführungsbeispiel durchführt, die in 1 gezeigt ist.
  • Der Takt-Daten-Erzeugungszähler 9 gibt jedesmal Takt-Daten entweder durch Heraufzählen um 1 oder Herunterzählen um 1 aus, wenn eine bestimmte Anzahl von Takt-Signalen aus dem Takt-Oszillator 1 abgezählt ist. Wenn dieser Zähler 9 auf Null rückgesetzt wird, werden Takt-Daten initialisiert (gelöscht). Ferner kann, wenn das Zählen des Zählers 9 in einen Haltzustand versetzt wird, entweder das Heruafzählen oder das Herunterzählen gestoppt werden. Das bedeutet, dass das Fortschreiten des Takts, wenn das Zählen des Zählers 9 in einen Haltzustand versetzt ist, unterbrochen wird, und wenn der Halt augehoben ist, das Fortschreiten des Takts wieder gestaartet wird. Überdies kann das Takt-Daten-Ausgabeintervall, wenn der Zähler 9 derart ausgebildet ist, dass die Anzahl von Takt-Signalen für entweder das Heraufzählen um 1 oder das Herunterzählen um 1 eingestellt werden kann, geändert werden, und es kann eine Takt-Datenübersteuerung vorgenommen werden.
  • Demgemäß gibt in diesem zweiten Ausführungsbeispiel ein PC-Prozessor 7 an den Zähler 9 das zuvor erwähnte Rücksetz-Signal SR, das Halt-Signal SH und die Aufhebungs-Signale SRR, SHR dafür entweder durch ein Signal aus, das über eine Eingabeschaltung DI 13 von einem Steuerschaltfeld oder dgl. her (in der Figur nicht gezeigt) eingegeben ist, oder durch ein internes Signal, das durch Ausführen eines Stufenleiterprogramms erzeugt wird, das in dem Stufenleiterprogramm-Speicher 6 gespeichert ist, um dadurch ein Rücksetzen, ein Halten und ein Aufheben derselben für diesen Zähler 9 durchzuführen. Überdies ist das zweite Ausführungsbeispiel derart ausgebildet, dass ein Register 12 vorgesehen ist und dass jedesmal dann, wenn ein Wert, der in diesem Register 12 gesetzt ist, abgezählt ist, der Zähler entweder Takt-Daten heraufzählt oder herunterzählt und die Takt-Daten ausgibt. Dann änder der PC-Prozessor 7 auf der Grundlage entweder eines externen oder eines internen Signals über den CNC-Prozessor 3 den Wert, der in diesem Register zu setzen ist.
  • Folglich wird das Intervall der Takt-Daten geändert, die von dem Zähler 9 auszugeben sind, und es ändert sich die Geschwindigkeit der anzutreibenden Achse auf der Grundlage dieser Takt-Daten-Änderungen. Das bedeutet, dass die Arbeitsgeschwindigkeit jeder Achse durch Anwenden der Übersteuerung auf die Takt-Daten übersteuert werden kann.
  • 3 zeigt ein erstes modifiziertes Beispiel für die Haupteinheit 100 gemäß diesem zweiten Ausführungsbeispiel. In der Haupteinheit 100, die in 3 gezeigt ist, hat der Zähler 9 weder eine Halt-Funktion noch eine Aufhebungs-Funktion dafür.
  • Dem Zähler 9 wird über ein Gatter 15 ein Signal von dem Takt-Oszillator 1 eingegeben. Wenn dieses Gatter 15 durch ein Halt-Signal SH von dem PC-Prozessor 7 geschlossen ist, ist das Eingeben eines Takt-Signals für den Zähler 9 unterbrochen, und der Zähler 9 behält zu dieser Zeit die Gesamtanzahl bei. Wenn dann der PC-Prozessor 7 ein Haltaufhebungs-Signal SHR an das Gatter 15 ausgibt, öffnet das Gatter 15, dem Zähler 9 wird wieder ein Takt-Signal von dem Takt-Oszillator 1 eingegeben und das Zählen wird wieder gestartet.
  • 4 zeigt ein zweites modifiziertes Beispiel für die Haupteinheit 100 gemäß dem zweiten Ausführungsbeispiel. In der Haupteinheit 100 gemäß 4 können ein Rücksetzen, ein Halten und eine Aufhebung des Rücksetzens oder Haltens des Zählers 9, eine Takt-Datenübersteuerung und andere Operationen von den Nebeneinheiten 200, 300, ... durchgeführt werden.
  • In diesem zweiten modifizierten Beispiel für das zweite Ausführungsbeispiel sind die Nebeneinheiten 200, 300, ... in einer sog. Daisy-Chain-Betriebsart verbunden. Dann werden die digitalen Signale für das Rücksetzen, das Halten und die Aufhebung des Rücksetzens oder Haltens des Zählers 9 sowie ein Takt-Datenübersteuerungswert, die von jeder Nebeneinheit ausgegeben werden, entweder durch einen Empfänger oder eine Eingabeschaltung 13 in der Haupteinheit 100 empfangen. Der PC-Prozessor 7 setzt dann auf der Grundlage dieser empfangenen Signale in dem Zähler 9 irgendeines dieser Signale, nämlich das Rücksetz-Signal SR, das Halt-Signal SH und das Aufhebungs-Signal SRR, SHR dafür und setzt in dem Register 12 einen Wert für das Übersteuern von Takt-Daten.
  • Wenn das Kabel 50 zum Senden von Takt-Daten für Zweiweg-Verbindungen ausgelegt ist, können das zuvor erwähnte Rücksetz-Signal SR, das Halt-Signal SH und die Aufhebungs-Signale SRR, SHR dafür sowie das Signal für die Übersteuerung über dieses Kabel 50 gesendet werden.
  • 5 zeigt ein Blockschaltbild der Hauptteile einer CNC-Einrichtung, die eine Haupteinheit 100 eines dritten Ausführungsbeispiels der vorliegenden Erfindung bildet. Gemäß diesem dritten Ausführungsbeispiel werden Verzögerungen bei der Übertragung von Takt-Daten von der Haupteinheit 100 zu jeder Nebeneinheit 200, 300,... korrigiert, und es wird eine genauere synchronisierte Steuerung erreicht.
  • Dieses dritte Ausführungsbeispiel, das in 5 gezeigt ist, ist dadurch von dem ersten Ausführungsbeispiel, das in 1 gezeigt ist, verschieden, dass ein Parameter-Speicher 17 in der Haupteinheit 100 vorgesehen ist, und in jeder der Nebeneinheiten (in 5 ist nur die Nebeneinheit 200 gezeigt) sind ein Parameter-Speicher 17 und ein Zähler 18 vorgesehen.
  • Eine Übertragungs-Verzögerungszeit ist der Gesamtwert einer Verzögerungszeit in einem Treiber 10 der Haupteinheit, einer Verzögerungszeit in dem Kabel 50, die durch die Länge des Kabels bestimmt ist, und einer Verzögerungszeit in einem Empfänger 11 einer Nebeneinheit.
  • Von diesen ist die Verzögerungszeit, die sich durch den Treiber 10 ergibt, jeder Nebeneinheit gemeinsam. Ferner kann die Verzögerungszeit, die sich durch einen Empfänger 11 ergibt, für jede Nebeneinheit unterschiedlich sein, jedoch sind die Differenzen der Verzögerungszeiten s are geringfügig. Die Länge des Kabels 50 wird jedoch für jede Nebeneinheit unterschiedlich sein. Daher werden die Übertragungs-Verzögerungen für jede Nebeneinheit ganz durch die Länge des Kabels 50 bestimmt. In anderen Worten ausgedrückt heißt dies, dass die größte Übertragungs-Verzögerung in der Nebeneinheit auftreten wird, die durch das längste Kabel 50 mit der Haupteinheit 100 verbunden ist.
  • Demgemäß sei angenommen, dass n Nebeneinheiten, die mit einer Haupteinheit 100 verbunden sind, eine Nummer von Nr. 1 bis Nr. n in der Reihenfolge zugewiesen ist, die sich aus einer, die das kürzeste Kabel zu der Haupteinheit 100 aufweist, bis zu derjenigen ergibt, die das längste Kabel aufweist (die n-te Nebeneinheit ist durch das längste Kabel 50 mit der Haupteinheit 100 verbunden).
  • Hierbei ist die Übertragungs-Verzögerung, die sich aus der Länge des Kabels 50 für die i-te (1 – ≤ i – ≤ n) Nebenein heit ergibt, als Di ausgedrückt. Ferner ist der Gesamtwert der Verzögerungszeit, die sich durch einen Treiber 10 ergibt, und der Verzögerungszeit, die sich durch einen Empfänger 11 ergibt, als D0 ausgedrückt, wobei die Umstände derart betrachtet sind, dass es keine Differenz zwischen den Verzögerungszeiten aller Nebeneinheiten gibt.
  • Durch diese Vorgehensweise ist es möglich, die Übertragungs-Verzögerung, die auftritt, wenn Daten von der Haupteinheit 100 zu der i-ten Nebeneinheit gesendet werden, als D0 + Diauszudrücken. Die Übertragungs-Verzögerung ist bei einer Übertragung zu der n-ten (i = n) Nebeneinheit maximal. Das bedeutet, dass die maximale Übertragungs-Verzögerung zu D0 + Dnwird. In dem Parameter-Speicher 17 der i-ten Nebeneinheit wird ein Wert gespeichert, der durch Subtrahieren der Übertragungs-Verzögerung bei der i-ten Nebeneinheit von der Übertragungs-Verzögerung bei der n-ten Nebeneinheit (maximale Übertragungs-Verzögerung) gewonnen ist. Das bedeutet, dass D0 + Dn – (D0 + Di) = Dn – Digespeichert wird. Natürlich wird in dem Parameter-Speicher der n-ten (der letzten) Nebeneinheit Null gespeichert (wobei i = n ist). In der Parameter-Speichereinheit der Haupteinheit wird D0 + Dn gespeichert.
  • Hierbei sei angenommen, dass von dem Zähler 9 der Haupteinheit 100 Takt-Daten "t" ausgegeben werden. Durch diese Vorgehensweise speichert der CNC-Prozessor 3 der Haupteinheit 100 in seinem eigenen Takt-Daten-Speicher 8 einen Wert t – (D0 + Dn),der durch Subtrahieren des Werts (Do + Dn), der als ein Korrektur-Parameter in dem Parameter Speicher 17 gespeichert ist, von diesen Takt-Daten "t" als korrigierte Takt-Daten gewonnen ist.
  • Dies bedeutet, dass die Takt-Daten der Haupteinheit 100 nach Ablauf von (D0 + Dn) von dem Zeitpunkt an, zu dem der Zähler 9 der Haupteinheit 100 Takt-Daten "t" ausgegeben hat, "t" werden.
  • Andererseits liest der CNC-Prozessor 3 der i-ten Nebeneinheit nach einem Zeitunterschied entsprechend der Übertragungs-Verzögerungszeit (D0 + Di) Takt-Daten "t" ein, die durch den Zähler 9 der Haupteinheit ausgegeben werden. Dann speichert der CNC-Prozessor 3 dieser i-ten Nebeneinheit einen Wert t – (Dn – Di)in dem Takt-Daten-Speicher 8 der i-ten Nebeneinheit, der durch Subtrahieren des Werts (Dn – Di), der in dem Parameter-Speicher 17 gespeichert ist, von den eingelesenen Takt-Daten "t" gewonnen ist, als korrigierte Takt-Daten.
  • Dies bedeutet, dass die Takt-Daten der i-ten Nebeneinheit nach Ablauf von (Dn – Di) von demjenigen Zeitpunkt an, zu dem t – (Dn – Di) in diesem Takt-Daten-Speicher 8 gespeichert wurde, "t" werden. In anderen Worten ausgedrückt heißt dies, dass dies bedeutet, dass die Takt-Daten der i-ten Nebeneinheit nach Ablauf von (D0 + Di) + (Dn – Di) = D0 + Dn ... (1)von dem Zeitpunkt an, zu dem der Takt-Oszillator 1 der Haupteinheit 100 Takt-Daten "t" ausgegeben hat, "t" werden.
  • Hierbei ist, wie zuvor erklärt, der zuvor angegebene Wert (D0 + Di) die Zeit (Übertagungszeit) von der Ausgabe der Takt-Daten "t" durch den Takt-Oszillator 1 der Haupteinheit 100 an bis zu dem Empfang der Daten durch den CNC-Prozessor 3 der i-ten Nebeneinheit.
  • Die rechte Seite der zuvor angegebenen Formel (1) stützt sich nicht auf die Nebeneinheit-Nummer 1. Dies bedeutet, dass die Takt-Daten jeder Nebeneinheit zu einer Zeit "t" werden, zu der eine feste Zeitperiode (D0 + Dn) von dem Zeitpunkt an abläuft, zu dem der Takt-Oszillator 1 der Haupteinheit 100 Takt-Daten "t" ausgegeben hat.
  • Überdies wird, wie zuvor erklärt, wenn (D0 + Dn) von dem Zeitpunkt an, zu dem der Takt-Oszillator 1 der Haupteinheit 100 Takt-Daten "t" ausgegeben hat, abläuft, "t" auch in dem Takt-Daten-Speicher 8 der Haupteinheit gespeichert.
  • Daher werden stets die gleichen Takt-Daten zur gleichen Zeit in dem Takt-Daten-Speicher 8 der Haupteinheit und demjenigen jeder Nebeneinheit gespeichert.
  • Wie zuvor erklärt ist es, da die Haupteinheit und jede Nebeneinheit an den gleichen Takt-Daten in ihren Takt-Daten-Speichern 8 teilhaben, möglich, ein Programm auszuführen, das eine bestimmte Nebeneinheit veranlasst, eine Synchronisierung mit einer anderen Nebeneinheit auf der Grundlage der korrigierten Takt-Daten, die in diesem Takt-Daten-Speicher 8 gespeichert sind, zu starten.
  • Es werden Daten D0 (bezüglich des Gesamtwerts einer Verzögerungszeit in einem Treiber 10 und einer Verzögerungszeit in einem Empfänger 11), die in dem Parameter-Speicher 17 der Haupteinheit 100 gespeichert werden, bestimmt, wenn einmal die Treiber 10 und die Empfänger 11, die in einem CNC System zu benutzten sind, bestimmt sind. Ferner wird die Übertragungs-Verzögerung Di (einschließlich Dn), die sich aus der Länge des Kabels 50 ergibt und in dem Parameter-Speicher 17 der Haupteinheit 100 und jeder Nebeneinheit gespeichert wird, durch Multiplizieren der Kabellänge mit der Verzögerungszeit je Längeneinheit des Kabels (einem festen Wert) gewonnen. Daher wird die Übertragungs-Verzögerung Di, die sich aus der Länge des Kabels 50 ergibt, dann wenn das System bestimmt wird, automatisch durch Eingeben der Länge des Kabels bis zu der i-ten Nebeneinheit unter Benutzung eines Hand-Eingabemittels (in der Figur nicht gezeigt) in den Parameter-Speicher 17 bestimmt.
  • 10 zeigt ein Flussdiagramm einer Takt-Daten-Korrekturverarbeitung, die der CNC-Prozessor 3 der Haupteinheit 100 für jeden ITP-Zyklus ausführt.
  • Wie zuvor erklärt werden die Takt-Daten "t" aus dem Zähler 9 ausgelesen, Korrektur-Daten (D0 + Dn), die in dem Parameter-Speicher 17 gespeichert sind, werden von diesen ausgelesenen Takt-Daten "t" subtrahiert, und das Ergebnis wird in dem Takt-Daten-Speicher 8 als korrigierte Takt-Daten t' (= t – (D0 + Dn)) gespeichert.
  • 11 zeigt ein Flussdiagramm einer Takt-Daten-Korrekturverarbeitung, die der Prozessor 3 der i-ten Nebeneinheit CNC für jeden ITP-Zyklus ausführt.
  • Wie zuvor erklärt werden Takt-Daten t aus dem Empfänger 11 ausgelesen, es wird der Gesamtwert der Übertragungs-Verzögerung (Dn – Di) von diesen ausgelesenen Takt-Daten t subtrahiert, und das Ergebnis wird in dem Takt-Daten-Speicher 8 als korrigierte Takt-Daten t' (=t–(Dn–Di)) gespeichert. Es sei jedoch angemerkt, dass, wie zuvor beschrieben, Takt-Daten t aus dem Empfänger 11 einer Nebeneinheit zu einer Zeit ausgelesen werden, zu der eine Zeitperiode (D0 + Di) von dem Zeitpunkt an abläuft, zu dem der Zähler 9 der Haupteinheit 100 Takt-Daten "t" erzeugt hat.
  • Bei dem zuvor erwähnten Takt-Daten-Korrekturverfahren liest der CNC-Prozessor 3 das Ausgangssignal des Empfängers 11 jeder Nebeneinheit (5) direkt aus. Statt dieses Takt-Daten-Korrekturverfahrens kann auch das folgende Korrekturverfahren angenommen werden:
  • Bei diesem Korrekturverfahren wird ein Vergleich des speziellen Takts durchgeführt, den jede Nebeneinheit hat. Der Takt-Oszillator 1, den die Haupteinheit 100 hat, wird sich körperlich von dem Takt-Oszillator 1 unterscheiden, den jede Nebeneinheit hat. Gewöhnlich hat ein CNC-System einen ITP-Zyklus als eine Grund-Zeiteinheit des Betriebs, und in dieser ITP-Zykluseinheit wird ein Betrieb ausgeführt. Da der Takt jeder Einheit unterschiedlich ist, wird die Zeit, zu der dieser ITP-Zyklus beginnt, für jede Einheit unterschiedlich sein. Ferner ist die Breite eines ITP-Zyklus nicht für jede Einheit völlig die gleiche. Dies ist deswegen der Fall, weil es eine Abweichung, wenn auch eine geringfügige, bezüglich des Takts selbst gibt. Selbst wenn die Startzeit der Takte aller der Einheiten angeglichen sein könnte, würde sich die geringfügige Breitenabweichung über eine länge Zeitperiode hinweg akkumulieren, so dass eine Zeit-Unstimmigkeit auftritt. Diese Unstimmigkeit bildet das Haupthindernis für eine vollständige Synchronisierung einer Vielzahl von Einheiten.
  • Um das zuvor genannte Problem zu bewältigen, werden die Takt-Daten, an denen alle Nebeneinheiten teilhaben, mit einem extrem kurzen, festen Intervall von der Haupteinheit 100 an jede Nebeneinheit ausgegeben. Hierbei wird dieses "feste Intervall" als der ITP-Zyklus behandelt. Dann trifft, wenn diese Takt-Daten eine bestimmte Nebeneinheit ereichen, diese Nebeneinheit eine Bestimmung dahingehend, wo innerhalb eines ITP-Zyklus dieser Nebeneinheit (dieser ITP-Zyklus unterscheidet sich von dem ITP-Zyklus der Haupteinheit) die Takt-Daten aufgetreten sind. Auf der Grundlage dieser Bestimmung wird der Wert der Takt-Daten bezüglich der Startzeit des ITP-Zyklus in dieser Nebeneinheit gewonnen. Um diesen Vorgang zu erreichen, ist jede Nebeneinheit ist provided mit einem ITP-Erzeugungsmittel 2 und einem Zähler 18 versehen, wie dies in 5 gezeigt ist. Dieser Zähler 18 zählt, nachdem er durch ein ITP-Signal rückgesetzt ist, das von dem ITF-Erzeugungsmittel 2 ausgegeben ist, ein Takt-Signal des Takt-Oszillators 1 ab. Ferner stoppt der Zähler 18 diesen Abzählbetrieb, wenn der Empfänger 11 Takt-Daten empfängt. Auf diese Weise wird der Punkt innerhalb eines ITP-Zyklus bestimmt, bei dem Takt-Daten empfangen wurden, so dass eine Abweichung zwischen den Takt-Daten der Haupteinheit und denjenigen einer Nebeneinheit ermittelt wird.
  • Beispielsweise kann, wenn eine Takt-Daten-Auftrittsüberwachung mit einem Takt durchgeführt, der 100-mal schneller als eine ITP-Zyklusbreite ist, ermittelt werden, bei welchem von 100 Teilen, in die ein ITP-Zyklus unterteilt ist, die Takt-Daten aufgetreten sind. Da jedoch ein zwischenliegender Wert zwischen einem Takt und dem nächsten Takt nicht gemessen werden kann und eine Abweichung bildet, weicht die Synchronisierung um diesen Grad ab. Durch Erhöhen der Geschwindigkeit eines Takt-Daten-Auftrittsüberwachungs-Takts (d. h. durch Erhöhen der Auflösung) ist es jedoch möglich, die Synchronisierungsgenauigkeit zu erhöhen.
  • 13 zeigt ein Beispiel für Takt-Daten, welche die Takt-Signale in hundertstel Teilen für jeden ITF-Zyklus der Haupteinheit 100 abzählen.
  • Von der Haupteinheit 100 werden Takt-Daten t "100", "200", "300" ... für jeden ITP-Zyklus T1, T2, T4,... ausgegeben. Eine Nebeneinheit ist mit einem Zähler 18 versehen, der durch sein eigenes ITP-Signal rückgesetzt wird und Takt-Signale abzählt, wie dies zuvor beschrieben wurde. Ferner stoppt dieser Zähler 18 den Zählbetrieb, wenn der Empfänger 11 Takt-Daten empfängt.
  • Überdies liest der CNC-Prozessor 3 einer Nebeneinheit den Wert des Zählers 18 für jeden ITP-Zyklus aus, korrigiert empfangene Takt-Daten "t" in Übereinstimmung mit diesem ausgelesenen Wert, einem ITP-Zyklus, Verzögerungszeiten bei einem Treiber und einem Empfänger, und eine Übertragungs-Verzögerung, die sich durch das Kabel ergibt, und speichert die korrigierten Takt-Daten in dem Takt-Daten-Speicher 8.
  • Bei dem Beispiel gemäß 13 ist angenommen, dass Takt-Daten t = 100 empfangen wurden, als der Wert eines Zählers 18 zwischen ITP-Zyklus T11 u. T12 lag, beispielsweise bei "40" (40/100 eines ITP). Ferner ist angenommen, dass der Gesamtwert (= D0 + Di) der gesamten Verzögerungszeit bei dem Treiber 10 der Haupteinheit 100, der Verzögerungszeit D0 bei dem Empfänger einer Nebeneinheit und der Übertragungs-Verzögerung Di, die sich durch das Kabel ergibt, z. B. "5" war. Demzufolge ist der Zählwert des Zählers 9 der Haupteinheit "105", wenn eine Nebeneinheit Takt-Daten t = 100 empfängt. Ferner ist, weil Takt-Daten empfangen werden, wenn der Zählwert des Zählers 18 in der Nebeneinheit "40" ist und da ein ITP-Zyklus 100 Takt-Signalen entspricht, das nächste ITP-Signal T12 zu erzeugen, wenn Takt-Daten t empfangen und 60 Takt-Signals abgezählt sind. Demgemäß werden bei dem ITP-Signal T12 Takt-Daten, die zu 100 + 5 + 60 = 165 korrigiert worden sind, in dem Takt-Daten-Speicher 8 gespeichert.
  • Das bedeutet, dass der CNG Prozessor 3 der i-ten Nebeneinheit korrigierte Takt-Daten t' durch Ausführen einer Berechnung gemäß der untenstehenden Formel (2) bestimmt und dieselben in dem Takt-Daten-Speicher 8 speichert. t' = t + D0 + Di + Q – P = t – P + (Q + D0 + Di) ... (2)
  • Hierbei ist D0 in der vorstehenden Formel der Gesamtwert der Verzögerungszeit bei dem Empfänger der i-ten Nebenein heit, Di ist die Übertragungs-Verzögerung, die sich durch das Kabel von der Haupteinheit zu dieser i-ten Nebeneinheit ergibt, Q ist die Anzahl von Takt-Signalen zwischen ITP-Zyklusbreiten, t sind Takt-Daten und P ist der Wert des Zählers 18, wenn die Nebeneinheit die Takt-Daten empfängt.
  • Wenn dieses Korrektur-Verfahren ausgeführt wird, sind sowohl die Verzögerungszeit bei dem Treiber der Haupteinheit, die Verzögerungszeit bei einem Empfänger als auch die Verzögerungszeit je Längeneinheit des Kabels wie auch in dem vorhergehenden Verfahren vorab in dem Parameter-Speicher 17 gespeichert. Wenn dann einmal das System bestimmt worden ist, wird die Länge des Kabels für jede der Nebeneinheiten als ein Parameter gesetzt. In Übereinstimmung damit stellt jede Nebeneinheit die Übertragungs-Verzögerung Di, die sich durch das Kabel ergibt, durch Multiplizieren der Verzögerungszeit je Längeneinheit mit der gesetzten Länge des betreffenden Kabels fest und speichert den Wert "Q + D0 + Di", der durch Addieren dieser Verzögerung "Di" und des Gesamtwerts der Verzögerungszeiten bei einem Treiber und einem Empfänger "D0" zu der Anzahl von Takt-Signalen Q innerhalb eines ITP-Zyklus gewonnen ist, als Taktzeit-Korrektur-Daten.
  • Wenn dann die Operation ausgeführt ist, führt der CNC-Prozessor 3 jeder Nebeneinheit die Verarbeitung, die durch das Flussdiagramm gemäß 12 angegeben ist, für jeden ITP-Zyklus aus und speichert korrigierte Takt-Daten t' in dem Takt-Daten-Speicher 8.
  • Zuerst werden Takt-Daten t, die von der Haupteinheit 100 gesendet sind, eingelesen, und es wird der Zählwert P des Zählers 18 eingelesen. Als Nächstes werden die korrigierten Takt-Daten t' durch Durchführen der Berechnung gemäß der zuvor angegebenen Formel (2) gewonnen. Diese korrigierten Takt-Daten t' werden in dem Takt-Daten-Speicher 8 gespeichert, und diese Verarbeitung wird beendet.
  • Überdies wird auf der Seite der Haupteinheit 100, weil Takt-Daten t, die von dem Zähler 9 ausgegeben sind, in dem Takt-Daten-Speicher 8 wie sie vorliegen gespeichert sind, die Verarbeitung in der Haupteinheit ausgelassen.
  • Die PC-Prozessoren 7 der Haupteinheit 100 und der Nebeneinheiten 200, 300, ... synchronisieren, treiben und steuern jede Achse durch Starten entweder eines Teilprogramms, das in dem Programm-Speicher 4 gespeichert ist, oder eines Achsensteuerprogramms für eine programmierbare Steuereinrichtung, das in dem Stufenleiterprogramm-Speicher 6 gespeichert ist, auf der Grundlage der Takt-Daten, die in dem Takt-Daten-Speicher 8 gespeichert sind, und eines Stufenleiterprogramms, das in dem Stufenleiterprogramm-Speicher 6 gespeichert ist.
  • 6 zeigt ein Blockschaltbild der Hauptteile eines CNC-Systems, das eine Haupteinheit 100 gemäß einem vierten Ausführungsbeispiel der vorliegenden Erfindung enthält. Dieses vierte Ausführungsbeispiel ist dadurch von dem in 1 gezeigten Ausführungsbeispiel verschieden, dass zwei Haupteinheiten 100, 100' vorgesehen sind und zwei Arten von Takt-Daten t1, t2 erzeugt werden und dass zwei Empfänger 11, 11' in allen (oder einer Anzahl von ausgewählten) Nebeneinheiten vorgesehen sind und diese in der Lage sind, Takt-Daten t1 bzw. t2 zu empfangen.
  • Eine Nebeneinheit ist derart beschaffen, dass Takt-Daten t1 und Takt-Daten t2 empfangen werden und der Betrieb von Achsen auf der Grundlage von Takt-Daten t1 gesteuert wird und der Betrieb von anderen Achsen auf der Grundlage von Takt-Daten t2 gesteuert wird. Zusätzlich wird der Betrieb von noch weiteren Achsen auf der Grundlage der Startbedingung gesteuert, die durch die Position einer anderen Achse, nicht auf der Grundlage dieser Takt-Daten bestimmt wird. Auf diese Weise können durch Vorsehen einer Vielzahl von Haupteinheiten zum Ausgeben von Takt-Daten, die Takt-Daten zweier oder mehrerer Arten erzeugen, und Vorsehen der Anzahl von Empfängern für die Arten von Takt-Daten, die diese Nebeneinheit erfordert, in einer Nebeneinheit Achsen für jede Art von Takt-Daten mit Synchronisierung gesteuert werden.
  • Das bedeutet, dass in irgendeiner Nebeneinheit Achsen, die durch jede Art von Takt-Daten synchronisiert werden, derart selektiv gruppiert werden können, dass eine Achse, die zu einer ersten Gruppe gehört, auf der Grundlage von Takt-Daten t1 synchronisiert und betrieben wird und eine Achse, die zu einer zweiten Gruppe gehört, auf der Grundlage von Takt-Daten t2 synchronisiert und betrieben wird. Überdies können Achsen, die unter anderen Bedingungen – ohne sich auf Takt-Daten zu stützen – angetrieben werden, auch derart ausgewählt werden, dass eine Achse, die zu einer dritten Gruppe gehört, durch Benutzung der gegenwärtigen Position einer anderen Achse als eine Startbedingung angetrieben wird.
  • 7 zeigt ein Blockschaltbild der Hauptteile eines CNC-Systems, das eine Haupteinheit 100 gemäß einem fünften Ausführungsbeispiel der vorliegenden Erfindung enthält. Dieses fünfte Ausführungsbeispiel ist derart ausgebildet, dass zwei Zähler 9, 9' vorgesehen sind und zwei Arten von Takt-Daten erzeugt werden.
  • Ein erster Zähler 9 erzeugt erste Takt-Daten t1 eines Zeitintervalls, das durch ein erstes Register 12 gesetzt ist, und gibt sie aus. Ferner erzeugt ein zweiter Zähler 9' zweite Takt-Daten t2 eines Zeitintervalls, das durch ein zweites Register 12' gesetzt ist, und gibt sie aus. Das Zeitintervall der ersten Takt-Daten t1 muss nicht mit dem Zeitintervall der zweiten Takt-Daten t2 identisch sein.
  • Ferner wird der erste Zähler 9 durch ein Rücksetz-Signal SR1, ein Halt-Signal SH1 und Aufhebungs-Signale SRR1, SHR1, die von dem PC-Prozessor 7 ausgegeben werden, rückgesetzt, angehalten bzw. freigegeben. In ähnlicher Weise wird der zweite Zähler 9' durch ein Rücksetz-Signal SR2, ein Halt-Signal SH2 und Aufhebungs-Signale SRR2, SHR2, die von dem PC-Prozessor 7 ausgegeben werden, rückgesetzt, angehalten bzw. freigegeben.
  • Überdies ist es durch Ändern der Werte, die in den ersten und zweiten Registern 12, 12' gesetzt sind, möglich, die Zeitintervalle der ersten und zweiten Takt-Daten t1, t2 zu ändern. Das bedeutet, dass auf die ersten und zweiten Takt-Daten t1, t2 eine Übersteuerung angewendet werden kann.
  • Überdies kann die Anzahl von Arten von Takt-Daten durch Erhöhen der Anzahl von Paaren von Zählern und Registern erhöht werden.
  • 14 zeigt ein Beispiel für Betriebszustände in dem Fall, in dem alle Achsen unter Benutzung von Takt-Daten in Synchronismus miteinander betrieben werden.
  • Die Achse 1 und die Achse 5 beginnen ihren synchronisierten Betrieb zu einem Zeitpunkt 0, und die Achse 3 und die Achse 6 beginnen ihren synchronisierten Betrieb zu einem Zeitpunkt 2. Überdies beginnen die Achse 1 und die Achse 7 ihren synchronisierten Betrieb zu einem Zeitpunkt 4, und die Achse 4, die Achse 6 und die Achse 8 beginnen ihren synchronisierten Betrieb zu einem Zeitpunkt 6.
  • 15 zeigt Betriebszustände in einem Fall, in dem während des zweiten Zyklus des Betriebsbeispiels, das in 14 gezeigt ist, eine Übersteuerung auf die Takt-Daten angewendet wird.
  • Wenn auf die Takt-Daten eine Übersteuerung angewendet wird, wird eine Übersteuerung auf alle Achsen angewendet, und die Zykluszeit in dem zweiten Zyklus unterscheidet sich von der Zykluszeit des ersten Zyklus (in dem Beispiel, das in 15 gezeigt ist, wird die Zykluszeit des zweiten Zyklus länger).
  • 16 zeigt ein Beispiel für einen Fall, in dem ein Teil der Achsen synchron arbeitet und der andere Teil der Achsen unter anderen Bedingungen arbeitet.
  • Die Achse 1 und die Achse 5 beginnen ihren synchronisierten Betrieb zu einem Zeitpunkt 0, und die Achse 2, die Achse 3 und die Achse 6 beginnen ihren synchronisierten Betrieb zu einem Zeitpunkt 2. Die Achse 7 beginnt ihren Betrieb jedoch am Ende des Betriebs der Achse 6, ohne sich auf Takt-Daten zu stützen. Ferner beginnt die Achse 1 auf der Grundlage dieser Takt-Daten ihren Betrieb nochmals zu einem Zeitpunkt 4. Die Achse 8 beginnt ihren Betrieb am Ende des Betriebs der Achse 7, ohne sich auf die Takt-Daten zu stützen, und dann beginnen die Achse 4 und die Achse 6 nochmals ihren synchronisierten Betrieb zu einem Zeitpunkt 6.
  • 17 zeigt Betriebszustände in einem Fall, in dem während des zweiten Zyklus für den Fall des Betriebsbeispiels, das in 16 gezeigt ist, eine Übersteuerung auf die Takt-Daten angewendet wird.
  • Wie in 17 gezeigt werden diese Achsen, weil die Achse 7 und die Achse 8 starten, ohne sich auf die Takt-Daten zu stützen, selbst dann, wenn eine Übersteuerung auf die Takt-Daten angewendet wird, dadurch nicht beeinflusst. Folglich werden die Betriebszeiten von Achsen, die nicht die Achse 7 und die Achse 8 sind, einer Änderung in Übereinstimmung mit der Übersteuerung unterzogen, die Betriebszeiten der Achse 7 und der Achse 8 ändern sich jedoch nicht. Als Ergebnis davon ist es in einem Fall derart, dass beispielsweise die Achse 7 und die Achse 8 in dem peripheren Teil einer Maschine arbeiten und der nächste Zyklus nicht beginnen kann, bis ein bestimmter Betrag von Zeit (absolute Zeit) folgend auf den Abschluss des Betriebs der Achse 8 verstrichen ist, selbst dann, wenn eine Übersteuerung auf die Takt-Daten angewendet wird und eine Übersteuerung auf die gesamte Maschine angewendet wird, möglich, den Betrieb derselben schnell ohne Anwendung einer Übersteuerung auf diese Achse 7 und die Achse 8 des peripheren Teils zu beenden. In Übereinstimmung damit kann ein Verkürzen der Zykluszeit versucht werden. Wenn eine Übersteuerung auf die zuvor erwähnte Achse 7 und die Achse 8 angewendet wird, wie dies in 15 gezeigt ist, werden der Betrieb in einem Fall, in dem der Abschluss des Betriebs der Achse 8 verzögert ist und danach der Betrieb nicht zu dem nächsten Zyklus fortschreitet, bis eine vorgeschrieben Zeit verstrichen ist, und die Startzeit des nächsten Zyklus um den Betrag dieser Verzögerung des Abschlusses des Betriebs der Achse 8 verzögert, und die Gesamtbetriebszeit wird länger.

Claims (10)

  1. Numerisches Steuersystem, das eine numerische Steuereinrichtung, die eine Haupteinheit (100) bildet, und eine oder mehrere numerische Steuereinrichtungen umfasst, die Nebeneinheiten (200, 300, ...) bilden, wobei Achsen, die durch diese verschiedenen numerischen Steuereinrichtungen gesteuert werden, in Synchronismus miteinander gesteuert werden und wobei die numerische Steuereinrichtung, die eine Haupteinheit, (100) bildet, umfasst: Takt-Datenerzeugungsmittel (1, 9) zum Erzeugen von Takt-Daten, ein Sendemittel (10) zum Senden der Takt-Daten, die durch die Takt-Datenerzeugungsmittel (1, 9) erzeugt sind, von der Haupteinheit (100) an die Nebeneinheiten (200, 300, ...), und Speichermittel (4, 6) zum jeweiligen Speichern eines Programms, das Bewegungsbefehle für eine Achse enthält, die durch diese Haupteinheit (100) gesteuert wird, dadurch gekennzeichnet , dass die Haupteinheit (100) die Takt-Datenerzeugungsmittel (1, 9), die zum Erzeugen der Takt-Daten durch entweder ein Heraufzählen oder ein Herunterzählen mit einem vorgeschriebenen Zeitintervall angeordnet sind, und ein Mittel (7) zum Starten des gespeicherter Programms auf der Grundlage der Takt-Daten hat, und dadurch, dass die numerische Steuereinrichtung, die eine Nebeneinheit (200) bildet, oder jede der numerischen Steuereinrichtungen (200, 300, ...), die Nebeneinheiten bilden, umfasst/umfassen: Speichermittel (4, 6) zum Speichern eines Programms, das Bewegungsbefehle für eine Achse enthält, die durch die jeweilige Nebeneinheit gesteuert wird, und ein Mittel (7) zum Starten des gespeicherten Programms auf der Grundlage der Takt-Daten aus der Haupteinheit.
  2. Numerisches Steuersystem nach Anspruch 1, wobei die Haupteinheit (100) und die Nebeneinheit (200, 300, ...) ferner umfassen: ein Startzeit-Speichermittel (8) zum Speichern von Startzeit-Daten zum Starten des Programms und ein Startmittel (7) zum Starten des Programms zu einer Startzeit, die in diesem Startzeit-Speichermittel (8) gespeichert ist.
  3. Numerisches Steuersystem nach Anspruch 1 oder 2, das ferner Mittel (3, 12) zum Steuern eines Zählbetriebs des Takt-Datenerzeugungsmittels durch ein Signal von entweder außerhalb oder innerhalb des Systems umfasst.
  4. Numerisches Steuersystem nach Anspruch 3, wobei die Mittel (3, 12) zum Steuern eines Zählbetriebs zumindest eine von Funktionen zum Rücksetzen und Starten des Zählens, zum Unterbrechen und Wiederstarten des Zählens und zum Anwenden einer Übersteuerung auf das Zählen haben.
  5. Numerisches Steuersystem nach Anspruch 3, wobei das Signal von entweder außerhalb oder innerhalb des Systems durch eine Haupteinheit und/oder eine Nebeneinheit erzeugt wird.
  6. Numerisches Steuersystem nach einem der vorhergehenden Ansprüche, wobei die Haupteinheit und die Nebeneinheit ein Mittel (17) zum Einstellen der Takt-Daten umfassen, um eine Verzögerung, die durch eine Takt-Datenübertragung verursacht wird, bewältigen zu können.
  7. Numerisches Steuersystem nach einem der Ansprüche 1 bis 5, wobei die Nebeneinheit ein Mittel (17) zum Einstellen der Takt-Daten umfasst, um eine Verzögerung, die durch eine Takt-Datenübertragung verursacht wird, und eine Unstimmigkeit einer Referenz-Zeiteinheit eines Betriebs bewältigen zu können.
  8. Numerisches Steuersystem nach einem der vorhergehenden Ansprüche, das Mittel zum Starten eines Programms hat, ohne auf die Takt-Daten angewiesen zu sein, welches Programm Bewegungsbefehle für jede Achse enthält, und das in einem bestimmten Abschnitt den Betrieb von Achsen verschiedener numerischer Steuereinrichtungen synchronisiert und in einem anderen, von dem bestimmten Abschnitt verschiedenen Abschnitt ohne Synchronisierung arbeitet.
  9. Numerisches Steuersystem nach einem der vorhergehenden Ansprüche, wobei die Haupteinheit (100) mit einer Vielzahl von Mitteln (1, 9; 1, 9') zum Erzeugen von Takt-Daten versehen ist und eine Vielzahl von Takt-Daten sendet und die Nebeneinheit derart ausgebildet ist, dass sie die Vielzahl von Takt-Daten empfängt und bestimmte Takt-Daten, die zum Starten eines gespeicherten Programms zu benutzen sind, aus der Vielzahl von Takt-Daten für jede Achse einer Nebeneinheit ausgewählt werden können, um dadurch zu ermöglichen, jede Achse in Synchronismus mit jeder anderen in einer Vielzahl von Gruppen zu steuern.
  10. Numerisches Steuersystem nach einem der vorhergehenden Ansprüche, wobei eine Vielzahl von Haupteinheiten (100) statt einer Haupteinheit enthalten sind, die Takt-Daten individuell durch jede Haupteinheit (100) erzeugt werden und die Vielzahl von Takt-Daten gesendet werden, und die Nebeneinheit (200, 300, ...) derart ausgebildet ist, dass sie die Vielzahl von Takt-Daten empfängt und bestimmte Takt-Daten, die zum Starten eines gespeicherten Programms zu benutzen sind, aus der Vielzahl von Takt-Daten für jede Achse einer Nebeneinheit ausgewählt werden können, um dadurch zu ermöglichen, jede Achse in Synchronismus mit jeder anderen in einer Vielzahl von Gruppen zu steuern.
DE60012815T 1999-05-11 2000-05-11 Numerisches Steuersystem Expired - Fee Related DE60012815T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP12992399 1999-05-11
JP12992399 1999-05-11

Publications (2)

Publication Number Publication Date
DE60012815D1 DE60012815D1 (de) 2004-09-16
DE60012815T2 true DE60012815T2 (de) 2005-08-18

Family

ID=15021759

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60012815T Expired - Fee Related DE60012815T2 (de) 1999-05-11 2000-05-11 Numerisches Steuersystem

Country Status (3)

Country Link
US (1) US6625498B1 (de)
EP (1) EP1052560B1 (de)
DE (1) DE60012815T2 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015007522B4 (de) 2014-06-13 2021-07-29 Fanuc Corporation Numerisches Steuersystem
EP4246257A1 (de) 2022-03-18 2023-09-20 Siemens Aktiengesellschaft Geschwindigkeitsabhängiges überschleifen zwischen sätzen mit unstetigen bahnverläufen

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7024257B2 (en) * 2001-02-09 2006-04-04 Motion Engineering, Inc. System for motion control, method of using the system for motion control, and computer-readable instructions for use with the system for motion control
JP3665008B2 (ja) * 2001-10-25 2005-06-29 ファナック株式会社 同期制御方法及び同期制御装置
DE10248690B4 (de) * 2001-11-15 2019-10-31 Heidelberger Druckmaschinen Ag Verfahren zur Synchronisation mehrerer elektrischer Antriebseinheiten
JP3671020B2 (ja) * 2002-04-09 2005-07-13 ファナック株式会社 数値制御装置
JP3775416B2 (ja) * 2003-02-10 2006-05-17 オムロン株式会社 インバータ装置
JP2004246498A (ja) * 2003-02-12 2004-09-02 Fanuc Ltd 位置制御装置
US6864646B2 (en) * 2003-02-14 2005-03-08 General Motors Corporation Multiple inverter system with low power bus ripples and method therefor
JP2004318378A (ja) * 2003-04-15 2004-11-11 Fanuc Ltd 数値制御装置
JP3720825B2 (ja) * 2003-07-28 2005-11-30 ファナック株式会社 数値制御装置
DE10357824A1 (de) * 2003-12-09 2005-07-14 Kuka Roboter Gmbh Verfahren und Vorrichtung zum Betreiben zusammenarbeitender unterschiedlicher Geräte
US7245975B2 (en) * 2005-04-20 2007-07-17 Parker-Hannifin Corporation Skew compensation
JP4282631B2 (ja) 2005-04-20 2009-06-24 ファナック株式会社 テーブル形式データで運転を行う数値制御装置
US7366939B2 (en) * 2005-08-03 2008-04-29 Advantest Corporation Providing precise timing control between multiple standardized test instrumentation chassis
DE102007029151A1 (de) * 2006-12-15 2008-06-26 Siemens Ag Impulsabgabeeinrichtung zur ortsgenauen Abgabe von Triggerimpulsen
US20090292388A1 (en) * 2006-12-19 2009-11-26 Tatsushi Iimori Semiconductor manufacturing system
ATE535414T1 (de) * 2007-09-11 2011-12-15 Hydro Gear Ltd Partnership Steuersystem für ein fahrzeug mit elektroantrieb
US8207693B2 (en) * 2007-09-11 2012-06-26 Hydro-Gear Limited Partnership Controller assemblies for electric drive utility vehicles
EP2192465B1 (de) * 2008-11-26 2011-09-28 Siemens Aktiengesellschaft Regelung eines Folgeantriebs mit dynamischer Ermittlung der Dynamik der Leitachse
JP4840455B2 (ja) * 2009-02-05 2011-12-21 横河電機株式会社 フィールド制御システム
JP5366600B2 (ja) * 2009-03-16 2013-12-11 キヤノン株式会社 画像形成装置
CN101887250B (zh) * 2009-05-12 2012-05-30 鸿富锦精密工业(深圳)有限公司 Cnc工具机控制装置
JP5676950B2 (ja) * 2009-08-20 2015-02-25 キヤノン株式会社 画像形成装置
JP5351301B2 (ja) * 2012-03-19 2013-11-27 ファナック株式会社 Ioユニットにより時間計測を行う数値制御システム
WO2015159365A1 (ja) * 2014-04-15 2015-10-22 富士機械製造株式会社 Nc工作機械
JP6081954B2 (ja) * 2014-04-24 2017-02-15 ファナック株式会社 工作機械の反転動作を高速化する数値制御装置
CN105938324B (zh) * 2015-03-04 2019-07-16 欧姆龙株式会社 控制装置及同步控制方法
US10268183B2 (en) 2015-03-04 2019-04-23 Omron Corporation Control device and method of synchronizing control
DE112015006524B4 (de) * 2015-05-12 2022-08-11 Mitsubishi Electric Corporation Numerische Steuerungseinrichtung
JP6457376B2 (ja) * 2015-11-19 2019-01-23 ファナック株式会社 サーボ制御部における外部信号の入出力を高速にした数値制御装置
JP7052250B2 (ja) * 2017-08-10 2022-04-12 オムロン株式会社 情報処理装置、情報処理方法、および情報処理プログラム
US10547264B1 (en) * 2017-09-13 2020-01-28 Seagate Technology Llc Motor control circuitry for multiple-actuator support
JP6741924B1 (ja) * 2019-12-23 2020-08-19 株式会社安川電機 分散モータ制御システム、モータ制御装置、及び分散モータ制御方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0727509B2 (ja) 1985-04-06 1995-03-29 ソニー株式会社 機器内バスを利用した動作制御方法
US5050146A (en) * 1989-07-31 1991-09-17 Literal Corporation Track seek recovery system and method
JP2621560B2 (ja) 1990-03-22 1997-06-18 日産自動車株式会社 ロボットの制御システム
JP2693635B2 (ja) 1990-10-11 1997-12-24 ファナック株式会社 Cncの同期動作方式
JP2636534B2 (ja) * 1991-03-22 1997-07-30 三菱電機株式会社 通信システム
JP3036143B2 (ja) * 1991-09-02 2000-04-24 三菱電機株式会社 数値制御装置
DE4238600C2 (de) 1992-11-16 1996-09-26 Kaendler Maschinenbau Gmbh Elektronische Steuereinheit für Textilmaschinen, insbesondere für Wirkmaschinen
US5391970A (en) 1993-09-30 1995-02-21 Allen-Bradley Company, Inc. Motion controller with remote linking and time disturbance correction
JPH08123520A (ja) 1994-10-25 1996-05-17 Mitsubishi Electric Corp 駆動制御指令装置と複数台の駆動制御指令装置の同期制御システム及びその同期制御方法
EP0735444B1 (de) 1995-03-31 2000-06-07 Siemens Aktiengesellschaft Verfahren zum Betrieb einer Werkzeugmaschine oder eines Roboters mit unmittelbar zusammenwirkenden Hauptachsen und zusätzlichen Positionierachsen
JP3282470B2 (ja) 1995-11-08 2002-05-13 三菱電機株式会社 パソコンを用いた数値制御装置及びその制御方法
JP3273303B2 (ja) 1995-12-26 2002-04-08 三井造船株式会社 押出プレスにおけるステム固定装置
KR0136285Y1 (ko) * 1996-07-05 1999-03-30 김광호 신호펄스간의 시간측정기능을 갖는 카운터 제어장치

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102015007522B4 (de) 2014-06-13 2021-07-29 Fanuc Corporation Numerisches Steuersystem
EP4246257A1 (de) 2022-03-18 2023-09-20 Siemens Aktiengesellschaft Geschwindigkeitsabhängiges überschleifen zwischen sätzen mit unstetigen bahnverläufen
WO2023174637A1 (de) 2022-03-18 2023-09-21 Siemens Aktiengesellschaft Geschwindigkeitsabhängiges überschleifen zwischen sätzen mit unstetigen bahnverläufen

Also Published As

Publication number Publication date
US6625498B1 (en) 2003-09-23
EP1052560B1 (de) 2004-08-11
EP1052560A1 (de) 2000-11-15
DE60012815D1 (de) 2004-09-16

Similar Documents

Publication Publication Date Title
DE60012815T2 (de) Numerisches Steuersystem
DE60035651T2 (de) Steuerungssystem zum synchronen kooperativen Betreiben einer Mehrzahl von Robotern
DE69737183T2 (de) Verfahren zur übertragungssynchronisation
DE3300261C2 (de)
EP1659718B1 (de) Synchronisatonsverfahren und Steuerungssystem für die Synchronisation von Nebeneinheiten, sowie synchronisierbare Nebeneinheiten
EP2621193B1 (de) Vorrichtung zur Übertragung von Sensordaten
CH640491A5 (de) Maschine zum herstellen eines gegenstandes aus glas.
DE112012006762B4 (de) Kommunikationsvorrichtung, Kommunikationssystem und synchrones Steuerverfahren
DE19744071B4 (de) Eine programmierbare Logiksteuervorrichtung verwendendes Steuerungssystem
DE4210015C2 (de) Hochgeschwindigkeitszähleinrichtung und Verfahren zum Konfigurieren der Einrichtung
DE19616855B4 (de) Verfahren zur Datenverarbeitung in einer numerisch gesteuerten Antriebseinheit
EP1211070B1 (de) Vorrichtung und Verfahren zur Synchronisation von an mehreren Einheiten ablaufenden Prozessen
DE2051432A1 (de) Numerische Werkzeugmaschinen Lageregelemnchtung
EP0476759A2 (de) Schaltungsanordnung zur zeitweisen Verzögerung des Programmablaufs in einem Mikroprozessor
EP1253494B1 (de) Steuer- und/oder Regelungssystem mit Feldbus
EP3438773B1 (de) Bearbeitung von werkstücken mit modellgestützter fehlerkompensation
DE2001935C2 (de) Digitale Steuereinrichtung zur Steuerung von Vorschubbewegungen
EP0965165B1 (de) Verfahren und vorrichtung zur aufrechterhaltung eines winkelgenauen gleichlaufs einzelner vernetzter antriebe eines dezentralen antriebssystems
DE2034373A1 (de) Steuereinrichtung zum Steuern der Geschwindigkeit des Vorschubs eines Werk zeugs
DE10259494A1 (de) Verfahren zum Steuern einer Druckmaschine
DE4026413C2 (de) Positionier-Steuervorrichtung
DE10208791C5 (de) Druckmaschinenantriebssystem
DE102010064123B3 (de) Verfahren zum Ansteuern von Peripheriegeräten eines taktsynchron arbeitenden Bussystems und von Fremdperipheriegeräten eines Fremdbussystems sowie zugehöriger Busumsetzer
DE4011491C2 (de) Einrichtung zur Steuerung mindestens einer Werkzeugspindel
DE3123379C2 (de)

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee