DE2146627A1 - Steuersystem für mehrere numerisch gesteuerte Werkzeugmaschinen - Google Patents

Steuersystem für mehrere numerisch gesteuerte Werkzeugmaschinen

Info

Publication number
DE2146627A1
DE2146627A1 DE19712146627 DE2146627A DE2146627A1 DE 2146627 A1 DE2146627 A1 DE 2146627A1 DE 19712146627 DE19712146627 DE 19712146627 DE 2146627 A DE2146627 A DE 2146627A DE 2146627 A1 DE2146627 A1 DE 2146627A1
Authority
DE
Germany
Prior art keywords
register
path
machine
data
count
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.)
Pending
Application number
DE19712146627
Other languages
English (en)
Inventor
John Fairview Park Ohio Klein (V.StA.)
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.)
Warner and Swasey Co
Original Assignee
Warner and Swasey Co
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 Warner and Swasey Co filed Critical Warner and Swasey Co
Publication of DE2146627A1 publication Critical patent/DE2146627A1/de
Pending 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/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4181Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by direct numerical control [DNC]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

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

Description

Steuersystem für mehrere numerisch gesteuerte Werkzeugmaschinen
Die Erfindung betrifft ein Steuersystem für mehrere numerisch gesteuerte Werkzeugmaschinen und insbesondere ein System, das ein zentrales datenverarbeitendes Gerät aufweist, mit dem die Maschine nach den in diesem Gerät gespeicherten Daten gesteuert wird.
Ein Problem beim Steuern einer Vielzahl von Werkzeugmaschinen mit Hilfe eines zentralen datenverarbeitenden Gerätes, beispielsweise eines allgemein verwendbaren Computers, besteht darin, daß die Zahl der Maschinen, die sich mit diesem Gerät steuern läßt, bisher beschränkt war, wenn das datenverarbeitende Gerät zur Interpolation eines binären Signals aus paremetrischen Daten benutzt wurde, wobei das binäre Signal die abeolute Größe der Vektorkomponenten entlang
2098U/0954
Patentanwälte Dipl.-Ing. Martin Licht, Dipl.-Wirtsch.-Ing. Axel Hansmann, Dipl.-Phys. Sebastian Herrmann
Oppenauer BOro: PATENTANWALT DR. REINHOLD SCHMIDT
eines orthogonalen Koordinatensystems angafc , um einen beweglichen Körper der Werkzeugmaschine, beispielsweise das Schneidwerkzeug, längs einer Bahn zu bewegen, die einer mathematischen Kurve angenähert ist, welche durch die parametrisehen Daten oder Parameterwerte bestimmt ist. Wenn diese Interpolation nicht in dem zentralen datenverarbeitenden Gerät erfolgt, muß jede Werkzeugmaschine mit einem Interpolator versehen sein, der die Signale erzeugen kann, um dadurch die absolute Höhe der Vektorkomponenten zu bestimmen, die zur Bewegung des Körpers, beispielsweise eines Werkzeugs, über mehrere geradlinige Segmente erforderlich sind, die eine gewünschte Bahn approximieren.
Erfindungsgemäß wird nun ein neuartiges, verbessertes Lteuersystem zur Steuerung mehrerer Werkzeugmaschinen durch einen Computer geschaffen, in dem Programme zur Herstellung unterschiedlicher Werkstücke gespeichert sind, wobei ein mit hoher Geschwindigkeit laufendes, einem speziellen Zweck dienendes Datenverarbeitungsgerät unter der Steuerung des Computers Kreisinterpolation ausführt, um den Computer von dieser normalerweise zeitaufwendigen Aufgabe zu befreien und die Notwendigkeit zu beseitigen, in jede Maschine einen solchen Interpolator einzubauen.
Bei dem neuartigen und verbesserten Steuersystem wird das oben genannte Datenverarbeitungsgerät außerdem zur Durchführung linearer InterpdLationen benutzt, um den beweglichen Körper auf einer linearen Bahn zu bewegen.
3ei dem erfindungsgemäßen Steuersystem für mehrere Werkzeugmaschinen wird ein Datenverarbeitungsvorgang, beispielsweise eine zirkuläre oder kreisförmige Interpolation, die die Zahl der Maschinen begrenzt, die durch ein zentrales Hauptdatenverarbeitungsgerät gesteuert werden, das die durch die
209814/09SA
2U6627
Haschinen auszuführenden Befehle speichert und den Maschinenbetrieb lenkt, von einem zentralen, für einen speziellen Zweck vorgesehenen Datenverarbeitungsgerät durchgeführt, und zwar unter der Steuerung des Hauptverarbeitungsgerätes, wobei das dem speziellen Zweck dienende Verarbeitungsgerät mit einer Geschwindigkeit arbeitet, die eine erhebliche Vergrößerung der Anzahl der Maschinen zuläßt, die von dem zentralen Ilauptdatenverarbeitungsgerät gesteuert werden kann9 wobei das zentrale Ilauptdatenverarbeitungsgerät vorzugsweise wie ein Ilochgeschwindigkeitspufferspeicher für das zentrale, spezielle Datenverarbeitungsgerät wirkt.
Erfindungsgemäß sind in dem zentralen Datenverarbeitungsgerät, mit dem mehrere Werkzeugmaschinen in dem neuartigen Steuersystem gesteuert werden können, Befehlssignale gespeichert, die die gewünschten Werkzeugraaschinenoperationen veranlassen, wobei die Interpolation zur Erzeugung binärer Signale, mit denen ein beweglicher Körper auf mehreren geradlinigen Segmenten bewegt wird, um einer eng angenäherten mathematischen Kurve zu folgen, die durch in einem zentralen Ilauptdatenverarbeitungsgerät zur Steuerung der Maschinen gespeicherte Parameterwerte definiert ist, von einem zentralen, einem speziellen Zweck dienenden Hochgeschwindigkeitsdatenverarbeitungsgerät ausgeführt wird, das mit größeren Taktgeschwindigkeiten arbeitet als das Hauptdatenverarbeitungsgerät und das zentrale Datenverarbeitungsgerät. Der mit höheren Taktgeschwindigkeiten ablaufende Betrieb erfolgt gemäß den von dem zentralen Ilauptdatenverarbeitungsgerät zugeführten Daten mit dem speziellen Verarbeitungsgerät, das die geradlinigen Segmente berechnet, und zwar immer ein Segment auf einmal, und die Information auf die Werkzeugmaschine zur Erzeugung des Segments übertr*ägt und eine Anforderung nach mehr Informationen von der Maschine und dem zentralen Hauptverarbeitungsgerät abwartet, bevor die absolute Größe der Vektorkomponenten für das nächste Segment berechnet
20981 Λ / 09 S A
wird. Das spezielle Datenverarbeitungsgerät benutzt dabei das zentrale Datenverarbeitungsgerät als Pufferspeicher für Informationen, die sich auf die Erzeugung der restlichen Segmente beziehen, wodurch das spezielle Verarbeitungsgerät für die Verwendung zur Berechnung der Segmentkomponenten für andere Werkzeugmaschinen frei wird, während die Befehlssignale für ein berechnetes Segment von einer Maschine ausgeführt werden.
Dazu kommt noch, daß mit Hilfe des erfindungsgemäßen Systems Zirkularinterpolationen zur Steuerung der Bahn eines beweglichen Körpers einer Werkzeugmaschine möglich sind, wodurch die Informationen, die gespeichert werden müssen und zur Durchführung der Interpolation zugeführt werden müssen, auf ein Mindestmaß beschränkt werden, und wodurch die Interpolation mit einer hohen Geschwindigkeit durchgeführt werden kann, um mehrere Signale zu erhalten, die die absolute Größe der Vektorkomponenten mehrerer geradliniger Segmente bestimmen, die eine mathematische Kurve, welche durch die gespeicherten Parameterwerte bestimmt wird, eng approximieren.
Erfindungsgemäß wird außerdem ein neuartiges Steuersystem für eine Werkzeugmaschine geschaffen, bei dem Kreisoder Linearinterpolationen zur Schaffung mehrerer Signale, die die absolute Größe von Vektorkomponenten mehrerer geradliniger Segmente bestimmen, welche eine mathematische Kurve, beispielsweise einen Kreis, eng approximieren, dadurch erfolgen, daß Inkremente summiert werden, die Verschiebungen in bezug auf die orthogonalen Achsen der Vektorkomponenten darstellen.
Die Erfindung betrifft also zusammenfassend ein Steuersystem für mehrere numerisch gesteuerte Werkzeugmaschinen, das einen Grobinterpolator zur Erzeugung mehrerer Signale
2098U/0954
aus Paranieterwerteii aufweist. Diese Signale bestimmen die absolute Größe von Vektorkomponenten längs zweier orthogonaler Achsen mehrerer geradliniger Segmente, die eine mathematische Kurve, welche durch die Parameterwerte bestimmt ist, eng approximieren. Mehrfacheinrichtungselemente (Hardware) sind für die Zeitaufteilung des Grobinterpolators unter mehreren Maschinenwerkzeugen vorgesehen. Ein Digitalcomputer beliefert den Grobinterpolator mit Parameterwerten und arbeitet als Ilochgeschwindigkeitspufferspeicher, der den Grobinterpolator bei der Zeitteilung unterstützt. Schließlich ist eine Datenverkettungseinrichtung vorgesehen, mit der Signale zwischen den Steuervorrichtungen der einzelnen Werkzeugmaschinen und dem Grobinterpolator oder dem Computer übertragen werden können.
Die Erfindung wird nachfolgend anhand von Ausführungsbeispielen der Zeichnung näher erläutert. In der Zeichnung zeigen:
Fig. 1 eine geometrische Darstellung eines Teils eines Kreisbogens und von X- und Z-Koordinaten,
Fig. 2 geometrische Darstellung eines Teils des Kreisbogens von Fig. 1, übertragen in I- und K— Koordinaten,
Fig. 3 eine vergrößerte geometrische Darstellung
des Kreisbogenteils von Fig. 2 mit den Schritten der graphischen Integration zur Erzeugung des Kreisbogenteils,
Fig. k eine sehr vergrößerte geometrische Darstellung eines Kreisbogenteils, aus der die schrittweise Erzeugung des Kreisbogens ersichtlich ist,
Fig„ 5 die Darstellung eines Kreisbogens, aus der
hervorgeht^ wie sich die Sehnenlänge bei konstanten Inkrementen in einer Achse ändert,
20981 4/0954
Fig. 6 eine geometrische Darstellung eines Kreisbogenteils, aus der ersichtlich ist, wie sich die relative Verschiebung in zxvei Koordinatenachsen bei konstanter Sehnenlänge ändert,
Fig. 7 ein schematisehes Schaltbild des Werkzeugmaschinens teuersys teras,
Fig. 8 ein schematisches Schaltbild, aus dem im einzelnen der Computer, die Mehrfachhardware und ein Grobinterpolator ersichtlich sind,
Fig. 9 ein schematisches Schaltbild mit dem Digitaltaktgeber,
Fig. 10 eine graphische Darstellung der IVellenformen der von dem Digitaltaktgeber erzeugten Signale,
Fig. 11 ein schematisches Logikdiagramm, aus dem die Berichtigungsanfrageflaggen, der Vorrichtungszähler und Berichtigungsanfragedetektor, der Übersetzer, das Adressenregister, der Wortzähler und die Datenlenkgatter ersichtlich sind,
Figo 12 ein scheraatisches Logikdiagramm der Datenauswahlgatter,
Fig. 13 ein schematisches Blockdiagramm des arithmetischen Teils des Grobinterpolators,
Fig. 14 ein schematisches Logikdiagramm des lenkenden
2 Logikteils des Grobinterpolators, der L -Ver-
2 Schlüsselungseinrichtung und des L -Registers,
Fig. 15 eine graphische Darstellung eines durch den Grobinterpolator erzeugten Kreisbogens,
Fig. 1.6 ein schematisches Blockdiagramm der Datenlänge an der Zentralsteuerung für eine der Werkzeugmaschinen des Systems, und
Fig. 17 ein Teilblockdiagramm einer Werkzeugmaschinensteuerung und der Werkzeugmaschinenservoantriebe*
2098U/Q954
-7- 2U6627
Obgleich das hier beschriebene Steuersystem verschiedene Formen und Abänderungen erfahren kann und zur Steuerung verschiedenartiger Maschinen, beispielsweise einer Zeichenmaschine, benutzt werden kann, eignet es sich jedoch insbesondere, wie im folgenden beschrieben, zur Steuerung von Werkzeugmaschinen.
Auf dem Gebiet der numerischen Steuerung von Werkzeugmaßchinen wird verlangt, Länge und Zahl der Befehle oder Eingangsdaten, die zur Lenkung eines Schneidwerkzeugs oder einer anderen Vorrichtung über einen gewünschten Weg erforderlich sind, auf ein Mindestmaß zu beschränken oder abzukürzen. So ist beispielsweise nahezu jeder mit dem Verfahren der Aufzeichnung einer Kurve aus einem mathematischen Ausdruck vertraut. Je mehr Punkte über einen gegebenen Wertebereich aufgetragen werden, desto genauer folgt die nach den Punkten eingezeichnete Kurve der wahren Kurve. D.h., je größer die Genauigkeit, desto mehr Daten sind erforderlich. Für die gewünschte Genauigkeit können zehntausend Koordinatenabmessungen innerhalb einer Bewegungsstrecke von einem Zoll erforderlich sein. In den Fällen jedoch, in denen die verlangte Kurve sich durch einen verhältnismäßig einfachen mathematischen Ausdruck beschreiben läßt, besteht die Möglichkeit, die Anzahl der dem Steuersystem einzuspeisenden Eingangsdaten weitgehend zu reduzieren. Dies wird dadurch erreicht, daß ein Steuersystem aufgebaut wird, das so beschaffen ist, daß es aufgrund der Eingangsdaten eine gewünschte Kurve erzeugt, wobei die Eingangsdaten nur aus Parametern der gewünschten Kurve bestehen und nicht eine große Zahl Koordinatenabmessungen beinhalten.
Steuersysteme, die in der Lage sind, eine solche Kurve zu erzeugen, sind in diesem Zweig der Technik bekannt und werden im allgemeinen stetige Bahnkontursteuersysteme genannt. Zwei mathematische Kurven werden gewöhnlich verwendet, nämlich die gerade Linie und der Kreisbogen, wobei letzterer entweder im Uhrzeigersinn oder im Gegenuhrzeigersinn erzeugt werden kann.
20981 U /0954 .
2U6627
Die Schaltung zur Erzeugung von Kreisbögen ist etwas komplizierter als die zur Erzeugung gerader Linien erforderliche. Deshalb ist es in den Fällen, in denen mehrere Werkzeugmaschinen durch eine zentrale Steuereinrichtung gesteuert werden sollen, vorteilhaft, die Benutzungszeit für die Kreisinterpolationsschaltung zu teilen (time sharing). Dies war bei bekannten Steuersystemen nicht möglich, weil die Interpolation in Echtzeit durchgeführt wurde, so daß für jedes Achsenpaar ein eigener Interpolator erforderlich war.
Erfindungsgemäß wird die Interpolatorfunktion zwischen zwei Kreisen getrennt, nämlich einem Grobinterpolator und einem Feininterpolator. Der Grobinterpolator kann entweder linear oder kreisförmig interpolieren und teilt seine Zeit zwischen mehreren Werkzeugmaschinen-Achsenpaaren. Der Feininterpolator kann nur linear interpolieren, und jedem Werkzeugmaschinen—Achsenpaar,' das von dem Grobinterpolator bedient wird, ist ein Feininterpolator zugeordnet.
Kurz gesagt, der Grobinterpolator erzeugt eine&eihe Verschiebungsbefehle, die der Reihe nach von dem Feininterpolator ausgeführt werden. Der Feininterpolator arbeitet in Echtzeit und läuft deshalb mit einer Taktfrequenz, die proportional der Werkzeugvorschubgesoliwindigkeit ist. Der Grobinterpolator arbeitet mit einer Taktfrequenz oder -geschwindigkeit, die viele Male höher ist alc die maximale Vorschubgeschwindigkeit irgendeines Achsenpaaros, das er bedient, so daß er für mehrere Achsenpaare Verschiebungs- oder Stellbefehle erzeugen kann, während ein Achseiipaar sich entsprechend einem vorbei' erzeugten Verschiebungsbefehl bewegt, wird.
Wenn der Grobinterpolator von einer Taktgeschwindigkeit befreit wird, die von der Werkzeugvorsohubgeschwindigkeit abhängt, so kann dadurch eine Schaltung verwendet werden, die genauer arbeitet als Gesohwindiglceitsvervielfacher und mit einer viel größeren Geschwindigkeit als digitale
2098U/09SA
H6627
Differentialanalysatoren. Die Endkoordinaten jedes von dem Grobinterpolator erzeugten linearen Verschiebungsbefehls weichen niemals stärker von der wahren Kurve ab als ein Steuerinkrement. Des weiteren läßt sich die maximale Abweichung von der wahren Kurve des linearen Verschiebungsbefehls, der von dem Grobinterpolator erzeugt wird, auf irgendeine gewünschte Entfernung begrenzen.
Zum vollständigen Verständnis der Funktionsweise des neuartigen Steuersystems wird zunächst die mathematische Herleitung und die stufenweise Erzeugung eines Kreisbogens diskutiert. Dies wird dann auf die Möglichkeiten des Steuersystems angewendet, woraufhin schließlich die Eigenheiten, Beschreibung und Funktionsweise der Vorrichtung wiedergegeben werden.
Die Gleichung eines Kreises mit dem Radius r in einem kartesischen Koordinatensystem in X und Z, wie in Fig. 1 gezeigt, lautet
(1) r2 = (x - xo)2 + (z - Z0)2 ,
worin (χ , ζ ) die Koordinaten des Kreismittelpunktes und r der Radius sind.
Die partiellen Ableitungen der Gleichung (l) ergeben sich zu
(2) 2rdr = 2(x - xQ) d (x - xq) + 2(z - zq) d (z - zQ)
und weil χ und ζ Konstante sind, sind dx und dz null. Deshalb ergibt sich
(3) 2rdr = 2(x - xq) dx - 2(x - xq) dxQ
+ 2(z - zo) dz - 2(z - zo) dz drdr = 2(x - χ ) dx + 2(z - ζ ) dz
2098U/09SA
2U6627
und schließlich
(k) rdr = (x - χ ) dz + (z - ζ ) dz.
Die direkte Integration der Gleichung 4 würde zu Ausdrucken erster Ordnung für χ und ζ führen. Um diese Ausdrücke zu beseitigen und dadurch die mathematische Lösung zu vereinfachen, werden die Achsen in die veränderlichen Größen I und K übertragen, wie dies in den Fig. 1 und 2 gezeigt ist, wobei I= (x - χ ) und K= (z - zQ) sind. Daraus folgt, daß dl = dx und dK = dz ist. Die Gleichung k läßt sich nun wie folgt schreiben
(5) rdr = IdI + KdK
Integration der Gleichung 5 führt zu dem unbestimmten Integral
l/2r2 = t/2I2 + 1/2K2 + 1/2C 9 2 P
wobei G die Integrationskonstante ist. C fällt natürlich in dem bestimmten Integral heraus, und es ergibt sich
222
Diese Gleichung ist als Gleichung eines Kreises mit dem Radius r bekannt, dessen Mittelpunkt im Ursprung des kartesischen Koordinatensystems mit den Achsen I und K ist. Deshalb führt eine schrittweise Integration der Gleichung 5 zu einem Kreisbogen der gewünschten Form. Es ist dann nur noch notwendig, die Achsen zurückzuübertragen, um den Bogen in dem X, Z-Koordinatensystem richtig anzuordnen. Dies könnte in einem absoluten Positionierungssystem erforderlich sein, jedoch möglicherweise nicht in einem inkrementalen Positionierungssystem«, Die obigen Ausdrücke sind dem Fachmann geläufig,
209814/095*
und es wird angenommen, daß die gewählten Buchstaben, die die verschiedenen variablen Größen und Konstanten darstellen, denjenigen entsprechen, die allgemein auf dem Gebiet der numerischen Steuerung benutzt werden.
Für den Radius r soll gelten, r = konstant, und deshalb ist dr = 0. Da für Punkte auf dem wahren Kreisbogen dr = 0 ist, kann die Gleichung 5 wie folgt geschrieben werden
(6) 0 = IdI + KdK
und wird die Gleichung 6 nach dK aufgelöst, so ergibt sich
(7) dK = - I dl .
Die physikalische Deutung der Gleichung 7 besagt, daß dann, wenn von einem Punkt auf der wahren Kurve eine Bewegung dl in der I-Achse ausgeführt wird, es notwendig ist, eine Entfernung dK - ^ dl auf der K-Achse zurückzulegen, um auf die wahre Kurve zurückzukommen. Dies ist die Basis für die graphische oder schrittweise Integration. Von einem Ausgangspunkt (i , K ) -wird die unabhängig Veränderliche I um einen Betrag dl differentiell vergrößert oder verkleinert, wobei der Betrag dl klein genug gewählt ist, um die gewünschte Genauigkeit zu bewirken. Dies ist in Fig. 3 gezeigt, wo ein Teil des durch die Gleichung 6 bestimmten Kreises dargestellt ist. Aus Fig. 3 ergibt sich, daß die Größe des dl konstant ist. D.h., dl = dl, - dl . Die Größe von dK ist jedoch eine Funktion von I und K sowie von dl. Deshalb hängt die Größe von dK von dem jeweiligen Punkt auf dem erzeugten Bogen ab. Somit wird unter Bezug auf Fig. 3 und ausgehend beim Punkt P auf dem zu erzeugenden Bogen eine Strecke dl nach links gegangen. Üblicherweise ist dies die negative Richtung und deshalb ist dl = -dl . Wenn dann die Gleichung 7 nach dK
ti a
aufgelöst wird, so ergibt sich
20981 A/09BA .
) (-dia) = 6,) (dia)
a) = 6,) (dia
° Ivo
Dadurch gelangt man zum Punkt P„ auf der Kurve. Dann wird
ei
wiederum eine Strecke dl = -dl^ nach links gegangen, und die Gleichung nach dK, aufgelöst. Es ergilbt sich
Man erkennt, daß I =1 - dl, I, = I - dl, I, - dl ist usw.
Auch ist Ka = Ko + dKa, K^ = Ka + dKb, Kc = K1, + dKc usw. Somit bewegt man sich hei der schrittweisen Integration der Gleichung 7 jeweils um ein Inkrement dl weiter, berechnet den neuen Wert I, den Wert dK am Punkt des Bogens und dann den neuen Wert K, woraufhin der Prozeß wiederholt wird, um den nächsten Punkt auf der Kurve zu finden.
Um die obige schrittweise Integration mit Hilfe eines numerischen Steuersystems auszuführen, ist es erforderlich, sowohl einen Quotienten (l) als auch ein Produkt (l) (dl)
K K
zu bilden. Dies geschieht bei gegenwärtig bekannten numerischen Steuersystemen, die entweder Impulsratenvervielfacher oder ein digitaler Differentialanalysator sind,in Verbindung mit querverbundenen, vorher einstellbaren Zählern/Registern. Gewisse Abänderungen der oben beschriebenen Stufenmethode vermeiden jedoch die Erzeugung des Quotienten und des Produkts und vereinfacht dadurch weitgehend das Steuersystem, das zur Erzeugung dei" gewünschten Kurve erforderlich ist.
Wie bereits oben erwähnt wurde, ist für alle Punkte auf dem wahren Bogen dr = o, Wenn jedoch eine schrittweise Integration ausgeführt wird, kann r nicht exakt konstant
2 0 9 8 1 U I 0 9 B A
-2H6627
gehalten werden, so daß deshalb im allgemeinen dr nicht null ist. Je größer dr wird, desto weiter ist man von der wahren Kurve entfernt, die man herzustellen versucht. Deshalb kann dr als ein Fehlerindikator betrachtet werden. Je kleiner dr gehalten wird, desto genauer wird die Kurve erzeugt.
Die Schaltung, die zur Erzeugung von dr über die ganze schrittweise Integration erforderlich wäre, würde ziemlich kompliziert sein. Glücklicherweise ist ein anderer Weg gangbar, weil der tatsächliche ¥ert von dr nicht bekannt zu sein braucht, sondern dr nur auf ein Mindestmaß beschränkt werden muß. Dies ergibt sich aus der Tatsache, daß dr im Vergleich zu r sehr klein ist. Deshalb darf r so betrachtet werden, als ob es aus zwei Teilen zusammengesetzt wäre, nämlich einem konstanten Teil r und einem variablen Teil d . Somit kann geschrieben werden
(8) r = ro + dr.
Das Produkt rdr läßt sich dann wie folgt schreiben
rdr = (r £ dr) dr
+ r dr + (dr)
ο —
Der Ausdruck (dr) kann in dieser Gleichung vernadiLässigt werden, so daß sich ergibt
(9) rdr = r dr.
Daraus ergibt sich also, daß rdr für alle in Betracht gezogenen Werte, d.h. für die Fälle, wo dr^rr ist, im wesentlichen proportional dr ist, so daß durch eine Beschränkung von dr auf ein Mindestmaß auch rdr auf ein Mindestmaß reduziert wird. Deshalb kann rdr als ein Indikator für das angesehen werden, was zur Beschränkung von dr auf ein Mindestmaß erfolgen muß. Die Verwendung von rdr als eine auf ein
20981 U /09BA
Mindestmaß zu beschränkende Fehlergröße ermöglicht die Durchführung der schrittweisen Integration durch Benutzung der Gleichung 5» wie dies im folgenden beschrieben wird.
Beginnend an einem Punkt P , wie er in Fig. 4 gezeigt ist, kann ein Inkrement dl = dlin der I-Achsenrichtung bewegt werden. Während am Punkt P , von dem angenommen wird, daß er auf der wahren Kurve liegt. I=I und K=K sind, befindet
* ο ο "
man sich jetzt am Punkt P1, in dem I = I. = I - dl und KsK sind. Aus der Gleichung 7 ergibt sich nun, daß man sich in K-Achsenrichtung eine Strecke
I1
dK = -(^ ) (-dl)
bewegen muß, 11SUf die wahre Kurve zurückzukommen. Aufgrund der physikalischen Beschränkungen der Maschine kann man sich jedoch nur in Integralvielfachen von d in der K-Achsenrichtung bewegen. Wenn deshalb ( 1 ) nicht eine ganze Zahl
Ko
ist, muß deshalb kurz vor der wahren Kurve angehalten werden, oder es muß über sie hinausgegangen werden. Es ist natürlich wünschenswert, so nahe wie möglich an der wahren Kurve anzuhalten. Dies könnte durch Überwachung des Wertes für rdr geschehen, der, wie oben erwähnt, als Indikator dafür verwendet werden kann, wie gut dr vermindert wird. Eine derartige tlberwachungs- und Vergleichsschaltung kann jedoch ziemlich kompliziert werden und läßt sich dadurch beseitigen, daß ein sehr geringer Anstieg des Durchschnittswertes von dr inkauf genommen wird. D.ho, statt sich mit der präzisen Verkleinerung von dr zu befassen, sollte alles unternommen werden, was notwendig ist, um rdr bei jedem Integrationsschritt gegen null zu bringen. Um dies zu tun, braucht nur das Vorzeichen von dr oder, wie ausgeführt, rdr bestimmt zu werden.
Unter Bezugnahme auf Fig. 4t/oll dr als positiv definiert werden, wenn der in Betracht kommende Punkt auf der Außenseite des wahren Bogens liegt, und als negativ, sobald er
2098U/095A
2H6627
sich auf der Innenseite des wahren.Bogens befindet. Somit ist am Punkt P^ dr negativ, und es kann geschrieben werden dr = dr., wobei der Index 1 den Wert von dr am Punkt P. anzeigt.
Der Fehler dr^ ergab sich dadurch, daß die Strecke -dl in swe I-Achsenrichtung zurückgelegt wurde. Es kann gezeigt werden, daß
(10) r± = (-dl)eos QQ ist,
wobei β der Winkel zwischen der Bewegungsrichtung dl in der I-Achse und dem Radius r am Punkt P ist, auf dem dr liegt. Es kann ferner gezeigt werden, daß der Radius r, der durch den Punkt P läuft, mit der I-Achse denselben Winkel θ einschließt, so daß sich ergibt
cos
Wenn dieser Ausdruck für cos β in der Gleichung 10 substituiert wird, erhält man
T1 = (-dl) Ii . r
Der Wert für dr am Punkt Pl läßt sich durch Hinzuaddieren
von Ar, zu dem Wert für dr am Punkt P finden, d.h. ι ο *
(11) d^ = dro +Ar1
Da dr = 0 ist und ^-.soeben bestimmt worden ist, läßt sich schreiben
dr. = 0 + (-dl) 1I
Jetzt sind sowohl I^ als auch r positiv«. Deshalb ergibt sich für das Beispiel von Fig«, 4
20981 U/095 U
2H6627
(12) Ht1 = -(Jl) (dl) .
Die Bewegung ist auf inkrementaIe Schritte entlang der I-Achse oder K-Achse beschränkt. Um auf die wahre Kurve zurückzukommen oder so nahe an sie heranzukommen, wie dies das hier beschriebene System zuläßt, muß man sich entweder in der +I-Richtung oder der +K-Richtung bewegen. Da gerade eine Bewegung in der -I-Richtung erfolgt ist, um vom Punkt P zum Punkt P1 zu gelangen, würde das wieder aufgehoben werden, was eben getan worden ist, um zum Punkt P zurückzukehren«, Es erfolgt deshalb eine Bewegung in der +K-Richtung. Es taucht dann die Frage auf, wieweit man sich in der +K-Richtung bewegen soll. Um darauf eine Antwort zu finden, bewegt man sich zunächst um ein Steuerinkrement dl in der +K—Richtung.
Bewegt man sich um dl in der +K-Richtung vom Punkt P^, so gelangt man zum Punkt Po· Dabei ändert sich der Wert K von K zu K. und bewirkt eine Änderung des Radius Δ r„, Es läßt sich zeigen, daß
^ T2 β (dl) sin O1 ist,
wobei 3, der Winkel zwischen dem durch den Punkt P2 laufenden Radius r und der I-Achse ist. Sin O1 läßt sich auch wie folgt ausdrücken
Durch Substitution des Ausdruckes für sin ©^ in der obigen Gleichung erhält man
(13) Δγ = (dl) (f±) .
Wenn somit drg den Wert von dr am Punkt P2 darstellt, läßt sich schreiben
(14) dr2 = dr±
209814/0954
2U6627
Wenn nun in der Gleichung 14 die Werte für dr., und Δ ro substituiert werden, wie sie durch die Gleichungen 12 und 13 gegeben sind, erhält man
dr2 = -(ii) (dl) + (ii)" (dl)
Weitere Schritte auf K-Achse, von denen jeder Schritt dl lang ist, führen hintereinander zu den Punkten P-, P. und P-. Am Punkt P^ läßt sich dr wie folgt ausdrücken
und am Punkt P5 läßt sich dr ausdrücken
Man erkennt, daß zwischen den Punkten P. und P1. die wahre Kurve gekreuzt wird, und daß sich dabei das Vorzeichen von dr von negativ zu positiv ändert.
Vom Punkt P1- aus ist es wieder notwendig, sich in der -I-Achsenreichtung zu bewegen, um auf die wahre Kurve zurückzugelangen. Deshalb beweg man sich nocheinmal um ein Steuer— inkrement dl in der -I-Achsenrichtung, um zu dem Punkt Pg zu gelangen. Dabei überquert man wieder die wahre Kurve, und das Vorzeichen von dr ändert sich von positiv zu negativ.
Aus dem obigen ist ersichtlich, daß abnehmendes I bei positiven dr zu einem negativen Ar führt, und daß dann, wenn dr negativ ist, zunehmendes K ein positives Δτ erzeugt, das ^r, das sich aus dem abnehmenden I ergibt, läßt sich mit Ar. bezeichnen, und das Ar, das sich aus dem zunehmenden K ergibt, läßt sich mit Δ r. bezeichnen, so daß geschrieben werden kann
η m
(15) dr(m+n) = / ri + / rk
i«l k=l
209814/0954
-is- 2H6627
I1 Es ist jedoch Δγ± = -(-j) dl
und Ark =
Deshalb ergibt sich η
i=l Und weil r = konstant, kann geschrieben werden
rodr(m+n)
k=l
Venn nun dl in dem hier beschriebenen System die Einheitslänge darstellt} kann dl durch die Ziffer 1 ersetzt werden, und man erhält
Vr(m+n)
k=l
Die Gleichung 18 zeigt somit, daß r dr durch Summation von I1 und Κ, erhalten werden kann« Dies läßt sich leicht durch ein numerisches Steuersystem ausführen und kann, wie im obigen bereits erwähnt wurde, erreicht werden, ohne unmittelbare Ermittlung eines Quotienten oder eines Produkts,
Ein weiteres Merkmal des hier beschriebenen Systems ist darin zu sehen, daß die maximale Abweichung jeder durch den Grobinterpolator befohlenen linearen Verschiebung von der wahren Kurve auf eine beliebige gewünschte Strecke beschränkt werden kann. Wenn die wahre Kurve ein Kreisbogen ist, dann
209814/0954
2U6627
beschreibt die Reihe linearer Verschiebungen, die von dem Grobinterpolator befohlen wird, Sehnen von Segmenten des Bogens. Die maximale Abweichung tritt an den Mittelpunkten der Sehnen auf· Somit müssen die Bogensegmente zur Aufrechterhaltung einer gegebenen maximalen Abweichung umso kürzer sein, je kürzer der Krümmungsradius des Bogens ist. Umgekehrt, je länger der Krümmungsradius des Bogens ist, desto länger können die Bogensegmente gemacht werden, ohne daß die gegebene Maximalabweichung überschritten wird« Anders ausgedrückt heißt das, je stärker die Krümmung des Bogens, desto näher beieinander müssen die Datenpunkte liegen, um die wahre Kurve innerhalb der gewünschten Genauigkeit zu approximieren, d.h., ohne Überschreitung der gegebenen maximal zulässigen Abweichung· Ferner wird darauf hingewiesen, daß der Abstand zwischen den Datenpunkten längs des Bogens gemessen werden muß und nicht auf einer der Koordinatenachsen.
Wenn beispielsweise die Datenpunkte entlang der X-Achse in gleichem Abstand in Intervallen von Δχ angeordnet sind, wie dies in Fig. 5 gezeigt ist, dann ist der Bogenabstand vom Punkt P zum Punkt P, sehr viel größer als Δχ, während der Abstand vom Punkt Pn* zum Punkt P nahezu gleich Ax ist. Wenn also das Intervall bei P für die gewünschte Genauigkeit ausreicht, dann werden in der Nähe Pn mehr Datenpunkte verwendet als notwendig sind. Umgekehrt, wenn das Intervall bei P für die gewünschte Genauigkeit benötigt wird, dann reichen die in der Nähe des Punktes P vorhandenen Datenpunkte nicht aus, um die geforderte Genauigkeit zu erhalten«
Die Lösung besteht natürlich darin, entlang dem Bogen gleiche Datenintervalle zu schaffen oder, mit anderen Worten, zwischen den Datenpunkten konstante Sehnenlängen zu benutzen· Wiederum besteht wie bei der oben abgehandelten Methode zur Bogenerzeugung das Problem darin, die Lösung in eine Form zu kleiden, mit der ein numerisches Steuersystem leicht arbeiten kann.
20Ö8H/0964
In Fig, 6 ist ein Kreisbogen dargestellt, der drei Sehnen As gleicher Länge aufweist« Die entsprechenden inkrementalen Verschiebungen Ax und Δζ weichen jedoch für jede Sehne Ab voneinander ab* 4x und Δζ und nicht s sind jedoch die Parameter, die in dem numerischen Steuersystem leicht erhältlich sind.
Um einen Hinweis auf As von Ax und ^z zu bekommen, werden zwei mathematische Beziehungen verwendet· Die erste dieser Beziehungen ist als Pythagoreisches Theorem, das ausgedrückt in den Veränderlichen £x, Δζ und^s ergibt
(19) Us)2 = Ux)2 + (ώζ)2 Die andere mathematische Beziehung läßt sich wie folgt schrei «sw*
P
(20) ρ2 =£ (2i-l)
Wie ersichtlich, ermöglicht diese Beziehung, durch Summen— bildung das Quadrat einer Zahl zu errechnen, ein Verfahren, das, wie oben erwähnt, durch ein numerisches Steuersystem leicht durchgeführt werden kann. Die Ableitung des tatsächlichen Verfahrens ist wie folgt:
Bei der Erzeugung des gewünschten Kreisbogens gemäß der Gleichung 18 werden I und K wahlweise, je nach Fall, schrittweise verkleinert oder vergrößert· Von einem Anfangspunkt P0 aus, an dem χ = xQ, ζ = z. ist, begeben sich die Koordinaten des Erzeugungspunktee ständig zu χ s χ — ndl
und ζ = zA + mdl. wobei η die Zahl der Schritte ist. mit ο ' '
denen I schrittweise verkleinert wurde, und m die Anzahl der Schritte ist, mit denen K schrittweise vergrößert wurde· Wenn wiederum dl als die Einheitslänge des Systems betrachtet wird, dann läßt sich dl gleich der Einheit setzen, und es
20981 A/0954
2U6627
läßt sich schreiben χ = χ — η und ζ = ζ + m, Da χ = χ -
ο ο ο
und ζ = ΖΊ- Δζ ist, ergibt sich demnach ^x - η und ^ ζ = m, und daraus folgt, daß
(21) (äs)2 = n2 + m2
und deshalb ist
n_ m
(22) (As)2 = / (21-1) +} (2k-l)
k=i
Un demnach Sehnen konstanter Länge zu erzeugen, braucht nmr (as) berechnet zu werden und dann die Gleichung 22 schrittweise in dem Maße, wie sich η und m schrittweise vergrößern, gelöst zu werden· Dadurch wird die gewünschte Genauigkeit mit den wenigsten Datenpunkten oder Bogensegmenten erreicht. Anstatt nun eine Differenz (as) für jeden zu erzeugenden Bogen zu berechnen, obgleich dies geschehen könnte, verwendet das erfindungsgemäße Gerät aus Vereinfachungsgründen drei diskrete (as) Werte, von denen jeder einen Bogenkrümmungsbereich abdeckt· Es wird der jeweilige Wert von (As) benutzt, der die gewünschte Genauigkeit liefert oder, wie im obigen erläutert, verhindert, daß die Abweichung von der wahren Kurve der befohlenen Linearverschiebung die maximal zulässige Abweichung nicht überschreitet.
Es wird darauf hingewiesen, daß die vorausgegangene Abhandlung der mathematischen Zusammenhänge zwischen den einzelnen Veränderlichen sich nur auf die Bogenerzeugung in Uhrzeigerrichtung im ersten Quadranten bezieht. Es versteht •ich jedoch, daß der Bogen auch in irgendeinem anderen Quadranten entweder im Uhrzeigersinn oder im Gegenuhrzeiger- ■inn erzeugt werden kann, wenn die richtige Verzeiehenänderung
2093U/096A
vorgenommen wird. Auch läßt sich, wie im folgenden erläutert ist, mit demselben Gerät, das die Kreisbogenerzeugung (Zirkularinterpolation) durchführt, eine gerade Linie erzeugen (lineare Interpolation)·
In Fig· 7 ist ein Blockdiagramm eines Werkzeugmaschinensteuersystems zur Steuerung mehrerer Werkzeugmaschinen dargestellt· Das hier beschriebene System ist in erster Linie für die Steuerung zweiachsiger und vierachsiger Revolverkopfdrehbänke geschaffen. Das System kann jedoch auch für Fräsmaschinen, Bohrmaschinen, Lochpressen, Positionierungstische und andere Werkzeugmaschinen verwendet werden. Tatsächlich lassen sich auch unterschiedliche Werkzeugmaschinenarten gleichzeitig durch dasselbe System steuern.
Das Steuersystem ist mit einem digitalen Computer 21 und seinen zugehörigen Eingabe/Ausgabevorrichtungen versehen, beispielsweise einem Bandleser 22 und einer Schreibmaschine Der Digitalrechner 21 ist mit einem Hilfsspeicher 24 versehen, der eine rotierende Scheibe oder Trommel sein kann und sich wahlweise mit dem anderen Computer 25 koppeln läßt. Die Steuersignale für jede der Werkzeugmaschinen werden durch die Software des Computers und einem Grobinterpolator 26 aus Teilprogrammen gewonnen, die die verschiedenen Teile beschreiben, die maschinell bearbeitet werden sollen.
Jede Werkzeugmaschine 30 ist mit einer Werkzeugmaschinen-Steuerung 31 ausgestattet und kann beliebig mit einer Tastatur und einer Bildschirmeinheit 32 versehen werden. Die Tastatur und Bildschirmeinheit 32 an der Werkzeugmaschine erfüllt im wesentlichen dieselben Aufgaben wie die Schreibmaschine 23 am Computer, kann jedoch durch die Computer-Software auf das Aufrufen gewisser Programmteile beschränkt werden, di« gerade in anderen Werkzeugmaschinen gebraucht werden. Die mit dem Grobint erpolator 26 und dem Computer 21 verbundene Mehrfach« Hardwar· 34 arbeitet mit «Ur Computer-Software zur Steuerung
209814/0dS4
2U6627
des Datenflusses zwischen der Computerzentralbehandlungseinheit, dem Grobinterpolator 26 und den einzelnen Werkzeugmaschinen zusammen«, Die Kommunikation zwischen der Vielfach-Hardware 34t und jeder Werkzeugmaschinensteuerung 31 und der Tastatur und Bildschirmeinheit 32 erfolgt durch eine Datenkette, die den Datenfluß gemäß einer festgelegten Priorität zeitlich vervielfacht.
Die Computer—Software ist so geschrieben, daß sie Teilprogramme in entweder dem ElA oder ASCII-Standard—Lochstreifenformat aufnehmen kann· Die Teilprogramme werden durch die Software modifiziert und in dem Hilfsspeicher 2k gespeichert· Jedes Teilprogramm, das in einer bestimmten Werkzeugmaschine 30 brauchbar ist, läßt sich dadurch aktivieren, daß der richtige Teilprogrammcode auf der Tastatur eingetippt wird, der zu der betreffenden Werkzeugmaschine gehört« Durch Eintippen des richtigen Codes auf der Tastatur wird bewirkt, daß das gewünschte Teilprogramm, das von dem Hilfsspeicher 2k in einen Kernbereich im Computer 21 eingelesen werden soll, für die zugehörige Weife zeugmaschine abseits eingestellt wird. Von dem Kern aus stellt die Software das Teilprogramm blockweise der Werkzeugmaschinensteuerung 30 und dem Grobinterpolator 26 zur Verfügung. Jeder Block, des Teilprogramms kann eine Anzahl codierter Befehle für die Werkzeugmaschine enthalten, beispielsweise Vorschubgeschwindigkeitszahl, Spindildrehzahl, Revolverkopfflächen- und Werkzeugverschiebung, etc. sowie die Umriß- oder Positionierungsinformation· Die Umrißinformation weist einen vorbereitenden Code auf, der die Umrißbewegung identifiziert (Rast, linear, Uhrzeigersinnbogen, Gegenuhrzeigersinnbogen), die Verschiebung für zwei infrage kommende Achsen und, falls die Bewegung kreisförmig ist, die Bogenmittelpunktverschiebungsabmessungen für jede Achse. Bei dem vorliegenden System kann sich der Grobinterpolator 26 der Umrißinformation bedienen, und alle anderen Informationen stehen direkt der Werkzeugmaschinensteuerung 31 zur Verfügung sowie seiner
2098U/0956
2146527
zugehörigen Bildschirmeinheit 32. Um zu erläutern, wie dies erreicht wird, wird nun auf Fig. 8 Bezug genommen.
In Fig. 8 werden in Form eines Blockdiagramms der Computer 21, eine Anzahl Komponenten, die die Mehrfach—Hardware 3^ umfassen, und der Grobinterpolator 26 dargestellt. Der gegenwärtig bevorzugte Digitalcomputer ist ein Modell FDP/8, das von der Digital Equipment Corporation hergestellt wird. Andere Computer können natürlich auch benutzt werden. Der Computer besitzt zwei Kanäle für die Eingabe- und Ausgabedaten. Der erste dieser Kanäle ist der Niedriggeschwindigkeitskanal, der im folgenden mit I/O-Kanal bezeichnet wird. Der i/O-Kanal ist mit Anschlüssen zum parallelen Lesen und Schreiben von zwölf Bits versehen, um einen 6«iBit-Vorrichtungscode parallel zu erzeugen, eine Ein-Bit-Sprunganforderung zu empfangen und in Reihe drei Eingabe-Ausgabe-Impulse (lOPl, I0P2, I0P4) zu erzeugen, von denen jeder an einem getrennten Kanal zur Verfügung steht. Der Hochgeschwindigkeits-Datenkanal, der manchmal Datenunterbrechungskanal genannt wird, ist mit Anschlüssen zum parallelen Lesen und Schreiben von zwölf Datenbits, ferner zum parallelen Empfangen von zwölf Bit-Adressen, zum Empfangen einer Ein-Bit-Unterbrechungsanforderung, eines Ein-Bit-Lenksignals, zur Ausgabe eines Ein-Bit-Empfangsimpulses und zur Ausgabe eines Ein-Bit-Abtastimpulses versehen. Allgemein gesprochen, unterscheiden sich diese beiden Datenkanäle darin, daß der i/O-Kanal unter Software-Steuerung steht, und eine Sprunganforderung oder Abfrage nur dann anerkannt wird, wenn die Software sich in einer Kennzeichenschleife—Überprüfungs· Eingabe-Ausgabe-Vorrichtung befindet, der Datenunterbrechungskanal jedoch hauptsächlich unter der Steuerung der Außeneinrichtung steht, und eine Unterbrechungsabfrage sofort die an das zentrale Verarbeitungsgerät abgegebenen Taktimpulse anhält, um es zu lassen, wie es in einem Zustand schwebende Erregung wäre, bis die Unterbrechung abgeschlossen ist. Bei dem hier beschriebenen System wird die Umrißinformation über den Datenunterbrecherkanal geleitet, während alle anderen
20981 4/09S4
2H6627
Informationen über den i/O-Kanal wandern«,
Der Datenfluß von den einzelnen Werkzeugmaschinensteuerungen 31 und den Tastaturen 32 zu der zentralen Steuerung kennzeichnet sich durch zwei verschiedene Arten, nämlich durch die Umrißinformationsberichtigungsanfragen und die Daten für das zentrale Verarbeitungsgerät· Durch die Datenkette wirkt eine Berichtigungsanfrage dahingehend, daß eine Flip-Flop-Schaltung 41 betätigt wird, die manchmal auch als ein Berichtigungsanfragekennzeichen bezeichnet wird. Ein Berichtigungsanfragekennzeichen 41 ist für jedes Achsenpaar jeder Werkzeugmaschine 30 in dem System vorgesehen. Die Daten für das zentrale Verarbeitungsgerät werden über die Datenkette zu einem Computer—Eingabepufferspeicher 43 geleitet. Jedesmal, wenn Daten in einen Computer-Eingabepufferspeicher 43 eingegeben werden, wird eine entsprechende Flip—Flop-Schaltung 44 eingestellt. Diese Flip-Flops werden Computer-Eingabepufferkennzeichen genannt. Ein Acht-Bit-Speicher und ein Kennzeichen bilden den Computer—Eingabepuffer für jede Werkzeugmaschine im System.
Alle eingestellten Ausgabe- oder Ausgangssignale der Computer—Eingabespeicherkennzeichen sind über UND-Gatter 45 an die Sprunganfrageneingabe des l/0-Kanals angeschlossen. Somit wird eine Sprunganfrage immer dann bewirkt, wenn irgendeines der Computer-Eingabespeicherkennzeichen 44 eingestellt wird und sein zugehöriges UND-Gatter betriebsbereit gemacht wird. Die Software führt periodisch eine Routinearbeit aus, durch die aufeinanderfolgend Sechs-Bit-Vorrichtungscodes erzeugt werden. Diese Vorrichtungscodes werden von einer Vorrichtungswählschaltung 46 entschlüsselt. In dieser Schaltung wird der Sechs-Bit-Vorrichtungscode so entschlüsselt, daß für jede Vorrichtung sechs separate Ausgangsleitungen 47 geschaffen werden. Jede der Ausgangsleitungen 47 ist an das UND-Gatter 45 angeschlossen, das zu dem Computer-Eingabespeicherkennzeichen seiner entsprechenden Vorrichtung gehört, um das UND-Gatter betriebsbereit zu machen, sobald der Vorrichtungs-
20981 Λ/0 9 S Λ
2U6627
code dem Computer-Eingabespeicher entspricht. Wean also die Software den Vorrichtungscode erzeugt, der einem Speicher bei eingestelltem Kennzeichen entspricht, so ergibt sich ein Sprungsignal·
Die Ausgangs- oder Ausgabeleitungen 47 der Vorrichtungswählschaltung 46 sind ebenfalls an die Computer-Eingabedatenwählgatter 48 angeschlossen und verbinden jedes Computer-Eingabespeicherregister mit den Eingabesignalen des i/O-Kanals solange, wie der entsprechende Vorrichtungscode von dem Computer ausgegeben wird. D.h., in dem Maße, wie die Routinearbeit der Software aufeinanderfolgend Vorrichtungscodes erzeugt, werden die entsprechenden Computer—Eingabespeicher mit den Leseanschlüssen des i/O-Kanals verbunden.
Es werden jedoch solange keine Daten gelesen, bis ein Sprungsignal vorhanden ist. Ein Sprungsignal bewirkt, daß die Daten in den Computer eingelesen werden, der dann einen Eingabe/ Ausgabe-Impuls I0P2 erzeugt. Der Impuls I0P2 wird durch die Ausgabeleitungen 47 der Vorrichtungsauswahlschaltung durch UND-Gatter 51 geleitet, um das Kennzeichen des Computer-Eingabespeichers, das gerade abgelesen worden ist, von neuem einzustellen.
Der Datenfluß von dem zentralen Verarbeitungsgerät zu den einzelnen Werkzeugmaschinensteuerungen 31 und den Bildschirmen 32 über den I/O-Kanal ist dem soeben beschriebenen Datenstrom zum Verarbeitungsgerät hin sehr ähnlich. Die Ausgabeleitungen 47 der Vorrichtungswählschaltung sind ebenfalls mit den Computer-Ausgabedatenlenkgattern 53 verbunden sowie mit den Computer-Eingabedatenlenkgattern 49. Die Computer-Aus gabedatenlenkgatt er 53 weisen mehrere Zweieingabe—UND-Gatter auf, von denen jedes eine Eingabe besitzt, die an eine der Vorrichtungswählschaltungs-Ausgabeleitungen 47 angeschlossen ist, während die andere Eingabe mit der Eingabe/
20981 Λ/0 9
2H6627
Ausgabe-Impulsleitung I0P4 in Verbindung steht. Die Computer-Ausgabedatenlenkgatter 53 lenken den Impuls I0P4 zu der richtigen Abtasteingabe eines mehrerer Computer-Ausgabespeicher 56, Die Computerausgabespeicher 56, die auch mit Puffer bezeichnet werden könnten, entsprechen im wesentlichen den Computer-Eingabespeichern, die ebenfalls mit Puffer bezeichnet werden könnten, wobei für jede Werkzeugmaschine im System ein Acht-Bit-Register und —Kennzeichen vorhanden ist. Die Lenkimpulse aller Register werden an die Datenschreibanschlüsse des i/o— Kanals angeschlossen, jedoch wird kein Register eingestellt, bis es durch die Leitung I0P4 abgetastet ist. Die Computer-Ausgabespeicher 56 sind ebenfalls so angeordnet, daß die I0P4— Leitung das Kennzeichen des gewählten Speichers einstellt«
Die andere Art des Datentransports von den Werkzeugmaschinensteuerungen 31 zu der zentralen Steuerung, wie sie oben angeführt ist, ist die Berichtigungsanfrage für Umrißdateno Es gibt eh Berichtigungsanfragekennzeichen 41 für jedes Werkzeugmaschinenachsenpaar im System· Sobald eine Werkzeugmaschinensteuerung 31 nach einer zusätzlichen Umrißinformation verlangt, sendet sie einen Berichtigungsanfragecode über die Datenkette zur zentralen Steuerung, die das entsprechende Berichtigungsanfragekennzeichen 41 einstellt. Die Berichtungsanfragekennzeichen 41 werden von einem Vorrichtungszähler und einem Berichtigungsanfragedetektor 59 gesucht; der wiederum bewirkt, daß eine Datenunterbrechung vorgenommen wird« Während der Datenunterbrechung wird die Umrißinformation von dem Computerkern in den Grobinterpolator 26 eingelesen. Der Grobinterpolator erzeugt die Berichtigungsinformation«, Die Vorrichtungszählerschaltungen lenken dann die Berichtigungsinformation zu einem Interpolator-Ausgabespeicher 6l, und zwar über Interpolator-Ausgabelenkgatter 63, woraufhin sie dann an die Werkzeugmaschinensteuerung übertragen wird, von der sie erfragt wird.
2098U/09SA
" 28 " 2H6627
Alle Funktionen des Systems, die nicht durch den Taktgeber des Computers gesteuert werden, werden von einem Taktgeber 71 des Interpolators gesteuert. Deshalb wird der Interpolatortaktgeber 71 nunmehr kurz beschrieben, so daß seine Aufgabe und Funktionsweise erkannt werden. Wie aus Fig. 9 ersichtlich, weist der Interpolatortaktgeber 71 einen Oszillator und Wellenformungsschaltungen 72 auf, die eine Zehn-Megahertz-Quadratwelle erzeugen, welche mit dem Buchstaben F bezeichnet ist. Die Quadratwelle F treibt die Eingabe eines vierstufigen Zählers 73 an, dessen Stufen so geschaltet sind, daß sie einen 1-2-4-5—binärcodierten Dezimalcode erzeugen. Diese Zählerausgänge und die an ihnen auftretenden Signale werden mit Cl, C2, C3 und C4 bezeichnet. Die Signale sind graphisch in Fig. iOB dargestellt.
Der Ausgang C4 ist eine symmetrische Ein-Megahertz-Quadratwelle und treibt den Eingang eines zweiten Zählers 74 an, der in identischer Weise mit dem ersten verbunden ist, um Signale Bl, B2, B3 und B4 an den Ausgängen zu erzeugen, die in gleicher Weise bezeichnet sind. Diese Signale sind graphisch in Fig. IOC dargestellt. Umkehrverstärker werden dazu benutzt, komplementäre Signale Bl, B2 und B? zu erzeugen. Der B4-Ausgang treibt einen dritten vierstufigen Zähler 76 an, der sich von dem ersten und dem zweiten darin unterscheidet, daß er einen 1-2-4-8-binärcodierten Dezimalcode erzeugt. Die Signale und Ausgänge der vier Stufen dieses Zählers sind mit Ai, A2, A3 und A4 bezeichnet. Die Signale sind graphisch in Fig. IOD dargestellt. Die Umkehrverstärker 75 erzeugen die komplementären Signale AT, A2*, Aj und A4 jedes dieser Signale.
In Fig. 9 ist außerdem ein Gray-Code-Generator 77 gezeigt, der einen Eingang aufweist, der als Taktgebereingang bezeichnet ist. Sein anderer Eingang, bezeichnet mit SR2, wird im folgenden beschriebene
2098U/Q9S4
2U6627
Der Taktgebereingang kann an F, Cl, C2, C3 oder Ch angeschlossen werden, und zwar in Abhängigkeit davon, wie schnell der Grobinterpolator 26 arbeiten soll. Es wird im folgenden angenommen, daß der Taktgebereingang des Gray-Code-Generators 77 an F angeschlossen ist. Der Gray-Code-Generator erzeugt die Ausgangssignale CA, ÜÄ, CB und US, Diese Ausgangssignale stehen mit den zwei UND-Gattern 78 und 79 in Verbindung, wie dies in Fig. 9 gezeigt,ist, um auf diese Weise ein Zähltaktsignal und ein Addiertaktsignal zu erzeugen. Die Wellenformen CA, CB, der Zähltakt und der Addiertakt sind in Figo 1OA zusammen mit dem Signal F dargestellt. Die anderen in Fig. 9 gezeigten Taktgeberausgangssignale werden von den Datenketten und der Mehrfach—Hardware verwendet und im folgenden beschrieben.
Was nun wiederum die Berichtigungsanfragefolge anbelangt, so werden die Berichtigungsanfragekennzeichen hl und der Vorrichtungszähler sowie die Berichtigungsanfragedetektor oder -sucher 59 im einzelnen in Fig. 11 dargestellt. Acht Berichtigungsanfragekennzeichen werden gezeigt und sind mit 41a—41h bezeichnet. Die Berichtigungsanfragen von den Werkzeugmaschinensteuerungen über die Datenketten triggern die eingestellten Eingangssignale der Berichtigungsanfragekennzeichen hl. Die eingestellten Ausgangssignale der Berichtigungsanfragekennzeichen sind mit UF0-UF7 bezeichnet. Ein binärer Zähler wird von dem Taktsignal C2 angetrieben, um Ausgangssignale 1, 7, 2, 2, h und 4* zu erzeugen. Diese Ausgangs signale sind die Vorrichtungszählung und werden von UND-Gattern 83 entschlüsselt, so daß für jede binäre Zählung ein Ausgangssignal in einer getrennten Leitung erzeugt wird. Diese Ausgangssignale werden Vorrichtungszählsignale genannt und sind mit DC^-DC7 bezeichnet. Jedes Vorrichtungszählsignal wird in UND-Gattern 85 zu seinem entsprechenden Berichtigungskennzeichensignal addiert, um dadurch Berichtigungsanfragesuchsignale A0-A7 zu erzeugen. Alle Berichtigungsanfragesuchsignale werden in demODE^Gatter 87 zusammengeführt, um ein zusammengesetztes Berichtigungsanfragesuchsignal zu erzeugen, das mit A
2098U/0954
2H6627
bezeichnet ist. Das Signal A bildet das Eingangssignal für eine Impulserzeugungsschaltung 89, die durch den vorderen Rand des Signals A getriggert wird, um ein Impulsausgangssignal A1 zu erzeugen.
Wie aus Fig. 8 hervorgeht, ist ein Adressenregister 9i mit dem Vorrichtungszähler und dem Berichtigungsanfragedetektor 59 über einen Umsetzer 93 verbunden. Die Aufgabe des Adressenregisters 91 besteht darin, die richtige 12~Bit-Kernadresse zum Herauslesen der Umrißinformation aus dem Computer und zum Hineinlesen dieser Information in den Grobinterpolator zu erzeugen und danach die Umrißinformation aus dem Grobinterpolator heraus in den Computerkern zurückzulesen. Jedes Achsenpaar in dem System ist einem bestimmten Bereich der Computerkern— erinnerung zugeteilt, der eine vorher festgelegte Startadresse besitzt. Die Computer-Software behält die Daten in diesem Erinnerungsbereich im Fluß, wie dies im folgenden erläutert wird. Die Aufgabe des Umsetzers 93 besteht darin, aus den Vorrichtungszählsignalen die Startadressen der Bereiche im Kern zu erzeugen, die den Werkzeugmaschinen und Achsenpaaren zugeordnet sind, für die eine Berichtigung verlangt wird. Der Umsetzer 93 und das Adressenregister 91 sind im einzelnen in Fig. 11 dargestellt.
Die Berichtigungsanf ragesuchs ignale AJ#-A7 sind an mehrere 0DEBGatter 93a ...93g angeschlossen, die den Umsetzer umfassen. Die Ausgangssignale der OR-Gatter 93a...93g sind mit CA1-CA7 gekennzeichnet, die sieben von zwölf Computeradressensignalen CA^-CAIl bilden. Diese Signale sind mit den lenkenden Eingangssignalen des Adressenregisters 91 verbunden, das einen zwölfstufigen, vorher einstellbaren binären Zähler bildet. Der Computerkernbereich für jedes Achspaar ist in der Tabelle I angezeigte Die Adressen sind im oktalen Rechensystem dargestellt, wobei die Anfangsadresse jedes Bereiches auch im binären Rechensystem dargestellt isto Die Binärziffern entsprechen Computer-Adressensignalen CAJf-CAIl0 Sechs Kern-
2098U/0954
2U6627
adressen sind für jedes Achsenpaar bereitgestellt. So nimmt beispielsweise der Kernadressenbereich für die Achsenpaarnummer 1 des Maschinenkörpers 2, das dem Berichtigungsanfragekennzeichen-Suchsignal A2 entspricht, die Kernadressen 0175-0202 oktal in dem Computerkern in Anspruch. Oktal 0175 ist dasselbe wie binär 000 001 111 101.
TABELLE I
(Oktal)
Computer-
Kernbereich ,
fcAll 000
AO 0161-0166 000
Al 0167-0174 000
A2 0175-0202 000
A3 0203-0210 000
A4 0211-0216 000
A5 0217-0224 000
a6 0225-0232 000
A7 0233-0240
σ\α>ζ-νο in .# to cm -η "ä.
«5j ^J ^j ^J ^* ^j ^J ^j ^J
- ο ϋ.ϋ ο ο, ο ο ο
001 101 001
001 101 111
001 111 101
010 000 Oil
010 001 001
010 001 111
010 010 101
OiO Oil Oil
Wie aus der Tabelle I hervorgeht, sind die Signale und CA8-CA11 für alle benutzten Anfangsadressen gleich. Da dies so ist, brauchen die Ziffern nicht von dem Umsetzer umgesetzt zu werden und können deshalb mit der richtigen Höhe oder Stufe hartverdrahtet werden. So sind die CA^-SignaIe an den Adressenregisterlenkeingängen mit der einen Stufe und die CA8-CA11-Signale mit der Nullstufe verdrahtet. Es wird jedoch darauf hingewiesen, daß selbstverständlich dann, wenn andere Kernbereiche mit anderen Anfangsadressen benutzt worden wären,
2098U/0954
2U6627
geeignete Änderungen in den Umsetzeranschlüssen und den Adressenregisterlenk-Eingangsanschlüssen hätten durchgeführt werden müssen.
Wie weiter aus Fig. 8 hervorgeht, ist der A'-Ausgang von dem Vorrichtungszähler und Berichtungsanfragedetektor 59 über ein ODER-Gatter 95 mit dem Zähleingang 96 eines Zustandsregisters 97 verbunden. Das Zustandsregister 97 weist einen zweistufigen binären Zähler und Entschlüsseier auf, um dadurch einen mit vier Ausgängen versehenen Ringzähler zu bilden, dessen Ausgänge mit SR^, SRI, SR2 und SR3 bezeichnet sind,, Mit Hilfe eines UND-Gatters 101 ermöglicht es der SR^-Ausgang den Taktsignalen C2, den Vorrichtungszähler 81 zu zählen« Wenn der Vorrichtungszähler 81 bim Zählvorgang an einen Zählwert gelangt, der einem Achsenpaar entspricht, das eine Berichtigung anfordert, wird ein A'-Signal erzeugte Dieses Signal zählt das Zustandsregister vom Zustand null zum Zustand eins, wodurch das Signal SR^ veranlaßt wird, vom logischen Einszustand zum logischen Nullzustand zu wandern, während das Signal SRI dazu gebracht wird, vom logischen Nullzustand zum logischen Einszustand zu gehen·
Somit wird der Vorrichtungszähler 81 an der Vorrichtungs— zählung zum Stillstand gebracht, die dem Achsenpaar entspricht, das eine Berichtigung fordert« Das von dem entsprechenden UND-Gatter 83 erzeugte Vorrichtungszählsignal wird durch den Umsetzer 91 auf die Startadresse der Computer-Kernerinnerung übertragen, wo die Information für dieses Achsenpaar gespeichert ist. Das SRl-Signal ist an einen Impulsgenerator IO3 angeschlossen, der den vorderen Rand triggert, um ein Impulssignal SR1 zu erzeugen, das über ein ODER-Gatter 105 mit dem eingestellten Abtasteingang 107 des Adressenregisters 91 verbunden ist. Dadurch wird bewirkt, daß das Adressenregister 91 auf die Computerkernadresse des ersten Datenworts eingestellt wird, das zur Beladung des Registers des 5robinterpolators 26
2098U/09S*
2U6627
erforderlich ist. Der Impuls SR1 triggert außerdem den eingestellten Eingang eines Unterbrecheranfrage-Flip-Flops 109
dessen eingestellter Ausgang mit dem Unterbrecheranfrage-Anschluß des Datenunterbrecherkanals des Computers 21 in Verbindung steht. Der Impuls SR1 triggert ferner den eingestellten Eingang eines Datenlenk-Flip-Flps 111, dessen eingestellter Ausgang mit dem Lenkanschluß des Datenunterbrecherkanals verbunden ist. Ein logisches 1—Signal an dem Lenkanschluß zeigt an, daß die Daten in dem Computer einfließen, während ein logisches null—Signal bedeutet, daß die Daten aus dem Computer ausfließen.
Unmittelbar nach Erhalt einer Unterbrecheranfrage bzw. -förderung werden die Taktimpulse zu dem zentralen Verarbeitungsgerät des Computers 21 gestoppt und eine Datenunterbrechung begonnen. Zunächst überprüft der Computer eine Adresse um zu bestimmen, ob die Adresse, die an den Adressenanschlüssen erscheint, aufnehmbar ist. Wenn die Adresse aufnehmbar ist, wird ein Aufnähmeimpuls erzeugt, die an dem addressierten Kernplatz vorhandenen Daten werden an den Schreibdatenanschlüssen des Datenunterbrechungskanals zur Verfügung gestellt, und es wird ein Abtastimpuls erzeugt. Die Empfangsimpulsleitung wird an den Zähleingang des Adressenregisters angeschlossen und zählt das Adressenregister bis eins. Dadurch wird dem Datenunterbrechungskanal eine neue Adresse gegeben, der, wenn die Unterbrechungsförderung noch besteht, die neue Adresse überprüft und, wenn er sie für annehmbar hält, einen Annahmeimpuls erzeugt, der die von dem adressierten Kernplatz kommenden Daten an den Schreibdatenanschlüssen zur Verfügung stellt und einen Abtastimpuls erzeugt. Diese Folge setzt sich solange fortj wie die Unterbrechungsförderung besteht und die Adressen annehmbar erscheinen. Um die Datenunterbrechung zu beenden und den Datenfluß aus dem Computer heraus zu den richtigen Registern im Grobinterpolator zu lenken, wird ein Wortzähler und -entschlüsseler 115 benutzt.
2098U/09S4
2H6627
Wie aus Fig. 11 hervorgeht, weist der Wortzähler und Entschlüsseier 111 einen einstellbaren Binärzähler 113 und Dezimalentschlüsseler 115 auf. Der Dezimalentschlüsseler arbeitet insoweit ebenso wie die UND-Gatter 83 des Vorrichtungszählers und des Berichtigungsanfragedetektors 59 und steht in Form einer integrierten Schaltungspackung zur Verfugung. Die Ausgänge des Dezimalentsehlüsselers identifizieren die Wortzählung und sind mit WC0-WC9 bezeichnet. Der Binärzähler 113 wird durch die Impulse SRI1 über dasGDER-Gatter 119 auf null zurückgestellt und wird durch den von dem Datenunterbrechungskanal aufgenommenen Impuls gezählte Es wird daran erinnert, daß ein aufgenommener Impuls erzeugt wird, bevor die gespeicherten Daten an den Schreibanschlüssen zur Verfügung stehen und der Abtastimpuls erzeugt wird. Deshalb wM der Wortzähler von 0000 bis 0001 gezählt, bevor der richtige Datenwert an den Schreibanschlüssen zur Verfügung steht. Deshalb wird der WC^-Ausgang des Dezimalentsehlüsselers des Wortzählers und -entschlüsselers nicht benutzt. Ferner werden, wie man sich unter Bezug auf Tabelle I erinnert, bei dem hier beschriebenen Ausführungsbeispiel nur sechs Adressen pro Achsenpaar verwendet. Dies erfordert sechs Wortzählungen. So werden, wie in Fig. 11 gezeigt, WC7, WC8 und WC9 nicht benutzt, jedoch WCl bis WC6, die an die Datenlenkgatter 120 angeschlossen sind, welche aus sechs UND-Gattern 121 bestehen, von denen jedes einen an eines der Signale WCl bis WC6 angeschlossenen Eingang aufweist, während der andere Eingang an den Abtastimpuls angeschlossen ist. Ein UND-Gatter 122 verhindert, daß ein Abtastimpuls zu den Datenlenkgattern wandert, es sei denn, das Zustandsregister befindet sich auf dem Zustand eins und das Signal SRI ist eins. Die Ausgänge der Datenlenkgatter sind mit WCl1 - WC6f bezeichnet. Diese Ausgänge sind an die vorher eingestellten Abtasteingänge der einstellbaren Register im Grobinterpolator 26 angeschlossen, wie dies im folgenden beschrieben isto Es wird hier festgestellt, daß unterschiedliche Speicherformate verwendet werden können.
20 9 8 U/0 9 5
Wenn beispielsweise eines der sechs Register im Grobinterpolator ein längeres Wort als 12 Bits erfordert, dann kann ein Sieben-Wort-Format verwendet werden, bei dem das erste Wort den unteren Teil eines aufgeteilten Registers belädt, während das zweite Wort den oberen Teil dieses aufgeteilten Registers belädt·
Wie wiederum aus Figo 8 hervorgeht, weist der Wortzähler und Entschlüsseier 115 einen Ausgang auf, der mit "last" bezeichnet ist. Dieser Ausgang ist an das Wortzählungssignal angeschlossen, das das letzte von dem Computerkern auszulesende Wort anzeigt« Bei dem vorliegenden Beispiel ist dies WC6, da das Sechs-Wort-Format pro Achsenpaar benutzt wurde. Wenn somit das WC6-Signal sich in dem Logisch—Eins—Zustand befindet, «acht es ein Zwei-Eingangs-UND-Gatter 124 betriebsbereit, dessen zweiter Eingang an den Abtastimpulsanschluß des Datenunterbrechungskanals angeschlossen ist. Deshalb läßt das UND-Gatter 124 den Abtastimpuls, der zu dem sechsten Wort gehört, passieren« Der Ausgang dieses UND-Gatters 124 ist an den Rückstellanschluß der Unterbrecheranfrage-Flip-Flops 109 angeschlossen, um den Unterbrecheranfrage-Logisch-Eins-Zustand aufzuheben, sobald das sechste Wort an den Grobinterpolator 26 übertragen worden ist. Nach Beendigung der Unterbrecheranfrage oder —förderung werden die Tastimpulse des zentralen Verarbeitungsgerätes gespeichert, und der Computer kann seinen eigenen Weg verfolgen.
Der sechste Wortabtastimpuls wird zusätzlich zur Unterbrechung des Anfrage-Flip-Flops 109 auch durch das ODER-Gatter 95 geleitet, um das Zustandsregister 97 aus dem Zustand eins in den Zustand zwei zu schalten, wodurch das SRl-Slgnal veranlaßt wird, von logisch eins nach logisch null zu wandern, während das SR2-Signal von logisch null nach logisch eins wandert, SR2 ist an die Impulserzeugerschaltung 126 angeschlossen, die den vorderen Rand betätigt, um einen Impuls SR21
2098U/09SA
2U6627
zu erzeugen. SR21 ist gleich SRi1 an den eingestellten Abtasteingang 107 des Adressenregisters 9i durch das ODER-Gatter iO5 angeschlossen* Das Adressenregister 91 wird auf die gleiche Adresse eingestellt, auf die es durch das SRI'—Signal eingestellt worden ists da der Zähler 81 und damit der Umsetzer sich während des Zustande 1 des Zustandsregisters nicht geändert hat. Das Signal SR2 dient auch zur Betätigung des in FIg, 9 gezeigten Gray-Code-Generators. Die Gray-Code—Ausgänge CA und CB befinden sich beide immer auf dem Niveau logisch nullι wenn der Gray-Code-Generator betätigt wird, und kommen auf dem Niveau logisch null zur Ruhe, sobald das Betätigungssignal entfernt wird0 Dies stellt sicher, daß ein Zähltaktimpuls immer zuerst und ein Addiertaktimpuls immer zuletzt kommt.
Der Grobinterpolator, der auf die Zähltakt— und Addier— taktsignale hin arbeitet, erzeugt eine A X-Verschiebung und eine ΔZ-Verschiebung oder eine Δ U-Verschiebung und eine A W— Verschiebung, und zwar· in Abhängigkeit von dem Achsenpaar, das die Berichtigung anfordert, X und Z bezeichnen das einzige Achsenpaar einer zweiachsigen Werkzeugmaschine und das erste Achsenpaar einer vierachsigen Werkzeugmaschine, U und W stellen das zweite Achsenpaar einer vierachsigen Werkzeugmaschine dar. Bei der Erzeugung von beispielsweise Δ X und AZ werden die Daten, die zu den Grobinterpolatorregxstern übertragen wurden, von dem Computer modifiziert, und am Ende eines Interpolationszyklus müssen diese Daten dann zu dem Computerkern zurück— transportiert werden. Dieser Prozeß wird durch ein Endinterpolierungssignal, genannt END INT», das von dem Grobinterpolator erzeugt wird, eingeleitet. Das END-INT,-Signal ist über das ODER-Gatter 95 an den Zähleingang 96 des Zustandsregisters 97 angeschlossen und zählt das Zustandsregister vom Zustand zwei zum Zustand drei, wodurch das SR2-Signal veranlaßt wird, von logisch eins nach logisch null zu wandern, und das SR3-Signal dazu gebracht wird, von logisch null nach logisch eins zu gehen, SR3 ist an eine Impulserzeugungsschaltung 129 angeschlossen, die die vordere Kante zur Erzeugung eines Ausgangs-
2 0 9 8 U / 0 9 S 4
impulses SR31 betätigt. SR31 stellt den Unterbrechungsforderungs-Flip-Flop 109 über das ODER-Gatter 119 ein und stellt den Lenk-Flip-Flop 111 zurück. Somit wird eine Datenunterbrechung ausgelöstj wenn sich das Datenlenksignal bei logisch null befindet, wodurch angezeigt wird, daß die Daten in den Kern eingelesen werden sollen. Die Daten werden aus den Grobinterpolatorregistern in den Kern durch die Datenauswahlgatter 130 eingelesen, die im Detail in Fig. 12 dargestellt sind. Jedes Datenauswahlgatter besteht aus einer Reihe I31 von drei Eingangs-UND-Gattern 132, die alle mit einem Eingang an SR3 angeschlossen sind. Der zweite Eingang der Gatter einer Reihe steht mit dem zugehörigen Wortzählsignal in Verbindung. So sind beispielsweise die zweiten Eingänge aller UND-Gatter I32 in der ersten Reihe an VCl angeschlossen. Die zweiten Eingänge aller UND-Gatter in der zweiten Reihe sind an WC2 angeschlossen usw. Der dritte Eingang jedes UND-Gatters ist an die erste Stufe des Grobinterpolatorregisters angeschlossen, der zu der Reihe gehört. Die Ausgänge dieser UND-Gatter stehen mit den Datenunterbrechungsleseenden in Verbindung«, Wenn sich somit SR3 bei logisch eins befindet und WCl bei logisch eins, dann ist das erste Register des Grobinterpolators über die erste Reihe UND-Gatter mit den Lesegattern des Datenunterbrechungskanals verbunden.
Die Daten werden auf etwa dieselbe Weise in den Kern eingelesen, wie sie in den Grobinterpolator eingelesen wurden,, D.h., sobald die Datenunterbrechung ausgelöst wird, überprüft der Computer die Adresse an den Datenunterbrechungs-Adressenenden und, wenn er sie annehmbar findet, sendet er einen Annahmeimpuls und einen Abtastimpuls aus. Da sich der Lenkeingang bei logisch null befindet, wird der Abtastimpuls zu dem Kernregister geleitet, das durch die Adresse in dem Adressenregister bestimmt wird. Wie im vorigen bewegt der Annahmeimpuls den Wortzähler von 0000 zu 0001, verändert also WCi binär, indem er dieses Signal auf die logisch-eins-Ebene
20981U/0954
hebt. Deshalb entsprechen die den Datenunterbrechungskanal—Leseenden zugewiesenen Daten der Kernadresse, die gerade von dem Computer angenommen wurde. Wenn das letzte Wort, das sechste Wort im vorliegenden Beispiel also, in den Kern eingelesen wird, wird der Abtastimpuls zu dem Rückstelleingang des Datenunterbrechungs-Flip-Flops 109 geleitet, um auf diese Weise die Datenunterbrechung zu beenden. Dies ist das Gleiche, wie wenn die Daten aus dem Computer in den Grobinterpolator eingelesen würden. Hier jedoch wird der Datenunterbrechungs-Rückstellimpuls durch das SR3-Signal veranlaßt, durch ein UND-Gatter I36 zu wandern, um ein mit UFR bezeichnetes Berichtigungskennzeichen—Rückstellsignal zu erzeugen. Das UFR-Signal wird durch den Gerätezähler und die Berichtigungsforderungs-Suchschaltungen 59 so abgetastet, daß das Berichtigungsforderungskennzeichen 41, das dem Achsenpaar entspricht, für das die Umrißdaten soeben interpoliert worden sind, zurückgestellt wird. Dies ergibt sich im einzelnen aus Fig. 11, in der mehrere Zweieingangs-UND-Gatter 137 zu sehen sind, von denen jedes einen Eingang aufweist, der an UFR angeschlossen ist. Der andere Eingang jedes UND-Gatters 137 ist an sein entsprechendes Gerätezählsignal OCfi bis DC7 angeschlossen. Die Ausgänge dieser UND-Gatter 137 sind mit den Rückstelleingängen ihrer entsprechenden Berichtigungsforderungskennzeichen oder Flip-Flops 41 verbunden. Somit wird, da der Binärzähler 81 des Gerätezählers und Berichtigungsforderungs-Sichschaltkreises 59 angehalten worden ist, weil SRfO von logisch eins nach logisch null ging, das UFR-Signal so gesteuert, daß das ermittelte Kennzeichen und kein anderes zurückgestellt wird.
Das UFR-Signal wird außerdem dazu verwendet, ein Interpolier-A—Abtastsignal, genannt INT. A, sowie ein Interpolier-B—Abtastsignal, genannt INT. B, mit Hilfe der ODER-Gatter 14i und UND-Gatter 142 zu erzeugen. Diese beiden Abtastsignale dienen zur Abtastung der Verschiebungsdaten,
2098U/0954
2H6627
die durch den Grobinterpolator 26 von den Grobinterpolatorregistern bis zu den Grobinterpolator-Ausgangspuffern 6l erzeugt werden. Zwei Abtastsignale werden benötigt, weil das System sowohl für Zweiachsen-Werkzeugmaschinen als auch für Vierachsen-Werkzeugmaschinen benutzt wird. Zu Erläuterungszwecken sind der Gerätezähler und der Beriehtigungsforderungs— detektor in Fig. 11 so angeschlossen, daß sie für drei Vierachsen-Werkzeugmaschinen und zwei Zweiachsen-Werkzeugmaschinen benutzt werden. Auf diese Weise bestimmt DCJüf das erste Achsenpaar der ersten Maschine, DCl das zweite Achsenpaar der zweiten Maschine, DC2 das erste Achsenpaar der zweiten Maschine, DC3 das zweite Achsenpaar der zweiten Maschine, DC4 das erste Achsenpaar der dritten Maschine, DC5 das zweite Achsenpaar der dritten Maschine, DC6 das Achsenpaar der vierten Maschine und DC7 das Achsenpaar der fünften Maschine. Die vierte und fünfte Maschine sind natürlich Zweiachsen-Werkzeugmaschinen. Somit wird das INT.-A-Abtastsignal erzeugt, wenn das Achsenpaar, für das die Daten interpoliert worden sind, das erste Achsenpaar einer Vierachsen-Maschine oder das Achsenpaar einer Zweiachsen-Maschine ist. Andererseits wird, wenn die Vorrichtung, für die gerade die Daten interpoliert worden sind, das zweite Achsenpaar einer Vierachsen-Maschine ist, das INT.-B-Abtastsignal erzeugt. Eine vollständige Beschreibung der Benutzung dieser Abtastsignale wird im folgenden im Zusammenhang mit der Beschreibung der Datenkette gegeben.
In den Fig. 13 und 14 ist schematisch der hier verwendete Grobinterpolator dargestellt, wobei der arithmetische Teil ganz allgemein in Fig. 13 und der lenkende bzw. steuernde Logikteil ganz allgemein in Fig. 14 gezeigt sind. Wie bereits erwähnt wurde, werden die Daten von dem Computer über den Datenunterbrechungskanal zu den Registern 146 des Grobinterpolators übertragene Diese Daten haben bei dem gezeigten Ausführungsbeispiel ein Sechs-Wort-Format und erscheinen der Reihe nach an den Datenunterbrechungs-Schreibausgängen. Jedes Register in dem Grobinterpolator, das mit Daten aus
209814/095/»
2U6627
dem Computer beladen werden soll, hat seine Steuereingänge, die an die Schreibausgänge des Datenunterbrechungskanals angeschlossen sind. Die richtigen Daten werden mit Hilfe der Vortzählimpulse WCl1 bis WC61 in die richtigen Grobinterpolatorregister eingespeist. Diese Wbrtzählimpulse sind tatsächlich die Datenunterbrechungsabtastimpulse, welche von dem Wortzähler gesteuert werden. Bei dem gegenwärtig bevorzugten System ist das erste Wort des Sechs-Wort-Formats die vorbereitende Funktion, die ganz allgemein auf dem Gebiete der numerischen Steue rung G-Wort oder Η-Wort genannt wird. Dies geschieht deshalb, weil auf dem standarti— sierten Papierlochstreifenformat die vorbereitende Funktion entweder durch den Buchstaben G oder den Buchstaben H gekennzeichnet wird, auf den dann zwei Zahlen folgen. Auf einer Vierachsen-Maschine bestimmt der Buchstabe G den Vorbereitungscode für das Seitenrevolverkopf-Achsenpaar, während der Buchstabe H die Vorbereitungsfunktion für das Endrevolverkopf-Achsenpaar kennzeichnet. Obgleich es eine Anzahl Vorbereitungsfunktionen gibt, zu denen Verweilen, Gewindeschneiden mit konstanter Steigung, Gewindeschneiden mit sich linear vergrößernder Steigung, etc. gehören, werden hier nur drei Funktionen behandelt. Diese sind GOl, G02, und GO3, die entsprechend die lineare Interpolation, die kreisförmige Interpolation im Uhrzeigersinn und die kreisförmige Interpolation im Gegenuhrzeigersinn kennzeichnen«.
Die zweiten und dritten Worte legen die X-Achsen und Z-Achsen-Verschiebungen fest, die während der Durchführung der Interpolation auszuführen sind. Wenn die Interpolation kreisförmig ist bzw. auf einem Kreis erfolgen soll, dann werden die Bogenmittelpunkt-Abstandswerte auf jeder Achse verlangt. Somit sind die vierten und fünften Worte die Bogenmittelpunkt-AbstandBwerte in der X—Achse bzw. Z—Achse. Falls die Interpolation linear sein soll, stellen die vierten und fünften Worte die Z-Achsen- und X-Achsen-Verschiebungen dar, dasselbe also wie die dritten bzw„ zweiten Wortec Das sechste Wort des Sechs-Wort-Formats wird durch
20981 A/0954
2U6627
die Software anfänglich zu null und ist für den Grobinterpolator vorgesehen, wie dies im folgenden beschrieben wird.
Die Vorbereitungsfunktion wird durch die Software für die Benutzung durch den Grobinterpolator von dem Standardstreifenformat ausgehend erheblich abgewandelt. Zur vollständigen Erläuterung des hier beschriebenen Systems brauchen nur sechs Bits der Vorbereitungsfunktion, die in das Grobinterpolator-Wort-1-Register 146-1 eingegeben wird, betrachtet zu werden. Die ersten beiden Bits, nämlich gO und gl, bilden die Interpolierungsfunktion wie folgt:
gO gJL Funktion
0 1 Linearinterpolation
1 0 Kreisinterpolation, im Uhrzeigersinn
1 1 Kreisinterpolation, im Gegenuhrzeigersinn
Das dritte Bit g2 ist das Zeichen für die X-Verschiebung, während das vierte Bit g3 das Zeichen für die Z-Verschiebung darstellt^ Das fünfte und sechste Bit g4 bzw. g5 kennzeichnen die von dem Grobinterpolator zu benutzende Sehnenlänge. Das erste und das zweite Bit werden durch UND-Gatter 151 entschlüsselt, um mit LIN, CW und CCW etikettierte Signale zu schaffen. Das dritte und vierte Bit werden durch NAND-Gatter 152 und einen Negator 153 entschlüsselt, um ein GLEICH-Signal und ein UNGLEICH-Signa1 zu erzeugen. Das fünfteund sechste Bit werden durch UND-Gatter 154 und Negatoren 155 entschlüsselt, um die mit Ll, L2 und L3 bezeichneten Signale zu erzeuge».
Wie aus Fig. 13 hervorgeht, sind zusätzlich zu den X, Z, I, K und D-Registern 146-2, 146-3, 146,4, 146-£ und 146-6 ein Δ X-Register 157-1, ein Λ Z-Register 157-2, ein Integrator-
209814/0954
-42- 2H6627
addierwerk 158, ein L -Register 159 und ein Interpolator-Addierwerk l6l vorhandene Jede Stufe des Interpolator-Addierwerks l6l hat zwei Eingänge, von denen der eine an die entsprechende Stufe der D-Register-Ausgänge angeschlossen ist. Die anderen"Eingänge des Interpolator-Addierwerks sind entweder an das I-Register 146-4 oder das K—Register 146-5 durch mehrere ODER_Gatter 164 und UND-Gatter I65 und angeschlossen. Das D-Register 146-4 hat zwei Eingänge pro Stufe, nämlich einen festgesetzten und einen eingestellten Eingang. Die festgesetzten Eingänge sind an die Datenunterbrechungs-Schreibausgänge angeschlossen, während die eingestellten Eingänge mit den Ausgängen des Interpolator-Addierwerks verbunden sind. Die D-Registerausgänge sind ebenfalls an die beschriebenen Datenwählgatter angeschlossen.
Das Integrator-Addierwerk 158 ist im wesentlichen mit
dem Interpolator-Addierwerk Ιοί identisch und besitzt einen
Satz Eingänge, die an die Ausgänge des L -Registers 159 angeschlossen sind, sowie einen anderen Satz Eingänge, die über mehrere NOR-Gatter 171 und UND-Gatter 172 und 173 entweder
ο mit dem Λ X- oder fc Z-Register verbunden sind. Das L rRegister 159 ist im wesentlichen gleich dem D-Register 146-6 und hat festgesetzte Steuereingänge, die an den L -Verschlüsseier angeschlossen sind, und ist mit eingestellten Eingängen versehen, die an die Ausgänge des Integrator-Addierglieds 158 angeschlossen sind«.
Es wird an dieser Stelle darauf hingewiesen, daß die Ax- und .Δ Z-Register nicht unmittelbar stufenweise mit den Integratoraddiergliedeingängen verbunden sind, sondern um eine Stufe in Richtung auf die bedeutendste Ziffer verschoben sind. Dadurch wird der am wenigsten bedeutungsvolle Zifferneingang 179 oder das 2°-Bit unabhängig von den Werten ^ X und Δ Z gelassen. Dieser Eingang 179 ist ständig mit der logisch 1 Ebene verdrahtet. Es wird außerdem darauf hingewiesen, daß die Ausgänge der NOR-Gatter 171 umgekehrt sind,
2098U/0954
U6627
wodurch entweder das 1—Komplement von entweder^ X oder A Z erzeugt wird. Außerdem besitzt das Integratoraddierglied einige Stufen mehr als entweder das Δ X-oder das Δ Z-Register. Die ersten Eingänge der bedeutenderen Stufen der ^ X- oder
ΔZ-Register stehen ständig bei 181 mit den logisch—1-Signalen in Verbindung. Somit ist die Zahl, die tatsächlich dem Integratoraddierglied durch die UND-Gatter 172 und 173 und ODER—Gatter 171 sowie die Permanentverdrahtung zugeführt werden, entweder 2 ,Δ X + 1 oder 2 £\"Z + 1. Der Ausgang des Integratoraddierglieds erzeugt ein Signal, das mit INT SIGN bezeichnet ist und dessen Verwendung im folgenden erläutert wird«
Der wichtigste Stufenausgang 180 des D-Registers erzeugt ein als —D gekennzeichnetes Signal» Ein Umkehrer oder Negator 183, der an den Ausgang 180 angeschlossen ist, erzeugt dessen Komplement, das mit +D bezeichnet ist. Zwei andere, in Fig. dargestellte Signale sind ebenfalls wichtig. Dies sind die XO- und ZO-Signale, die von den Null-Detektoren 185 und 187 erzeugt werden, die an die X— bzw. Z—Register angeschlossen sind. Da das 1—Komplement in dem Grobinterpolator verwendet wird, sind diese Detektoren tatsächlich eher 1-Detektoren als Null-Detektoren. In jedem Fall besteht jedoch ihre Aufgabe darin anzuzeigen, wenn die X-Abmessung oder die Z-Abmessung "verarbeitet" worden sind. Umkehrer 189 erzeugen die Komplemente XU und Zu.
Wie aus Fig. 14 hervorgeht, sind die GLEICH-, UNGLEICH-, CW- und CCW-Signale logisch durch UND-Gatter 191 und ODER-Gatter 193 verknüpft, um ein i/UP-und ein Κ/UP-Signal zu erzeugen. Mathemetisch kann gezeigt werden, daß dann, wenn die Summen von X und Z gleich sind, d.h., beide positiv oder beide negativ sind, das X-Achsen-Bogenmittelpunktabstandsmaß I sich für Bögen im Uhrzeigersinn kontinuierlich vergrößert, während das Z—Achsen-Bogenmittelpunktabstandsmaß K sich kontinuierlich verkleinert. Für im Gegenuhrzeigersinn laufende Bögen nimmt K zu, während sich I verkleinerte Wenn die Vor-
2098U/095*
zeichen von X und Z ungleich sind, d.h., wenn das eine positiv und das andere negativ ist, vergrößert sich K für im Uhrzeigersinn laufende Bögen, während sich I verkleinert. Für im Gegen— Uhrzeigersinn laufende Bögen vergrößert sich I, während sich K verkleinert. Dies ist die Logik, der bei der Erzeugung des i/UP-Signals und des κ/UP-Signals gefolgt wird. Mit anderen Worten, wenn das i/UP-Signal hei logisch 1 oder auch genannt binär 1 ist, so zeigt es an, daß I zunimmt, während E abnimmt, und wenn das Κ/UP—Signal bei logisch 1 bzw. binär 1 ist, so zeigt es an, daß K wächst, während I abnimmt.
Diel/UP-, k/üP-, LIN-, +D-, -D-, XU- und ZÜ-Signale sind logisch mit den äHj$ und den Zähl takt Signalen verknüpft, so daß sechs Ausgänge entstehen, die mit K/ZÄHLUNG, FREIGABE K/ADD, Z/ZÄHLUNG, i/ZÄHLUNG, FREIGABE I/ADD und X/ZÄHLUNG bezeichnet werden. Diese letztgenannten Signale bilden die Steuerlogik für den Rechenteil des Grobinterpolators, die im folgenden beschrieben wird.
Bei der bevorzugten Ausführungsform werden alle Rechenvorgänge in dem Grobinterpolator im binären System ausgeführt. Die Zähler/Register zählen nur aufwärts. Um daher ein Abwärts— zählen zu erreichen, wird das 1-Komplement in ein Register eingeführt und nicht die wahre binäre Zahl. Die Komplementbildung wird durch die Computer—Software als Funktion der Vorzeichen der X- und Z-Verschiebungen sowie in Abhängigkeit davon, ob die Interpolation im Uhrzeigersinn oder im Gegen— uhrzeLgersinn läuft, durch eine Schaltlogik vorgenommen, die analog der Grobinterpolator-Steuerlogik ist. Beispielsweise soll angenommen werden, daß ein Uhrzeigerbogen erzeugt werden soll, wobei die X-Verschiebung +13 und die Z—Verschiebung +23 tragen sollen und die Bogenmittelpunktentfernung I 21 sein soll, während die Bogenmittelpunktentfernung K 27 betragen soll« Unter diesen Bedingungen wird I aufwärts gezählt, während K abwärts gezählt wird. Deshalb wird der wahre Wert von I in das I—Register eingespeist, während das Komplement von K in des K—Register eingegeben wird« Die
20981 4/0954
2U6627
1-Komplemente von X und Z sind ständig in den X- und Z-Registern enthalten. Die A X-und ^Z-Register sind auf null zurückgestellt, und das D-Register wird anfänglich von dem Computer mit dem Wert null beladen. Somit sind für die gegebenen Werte die Anfangsbedingungen in dem in der Tabelle II gezeigten Registern 146 gegeben·
Das i/UP-Signal befindet sich bei logisch 1, auch binär genannt, das durch die gleichen Vorzeichen von X und Z bestimmt wird sowie durch die Vorbereitungsfunktion, die eine Interpolation im Uhrzeigersinn verlangt. Ob deshalb nun I und K schrittweise zunehmen, oder ob K und Z schrittweise zunehmen, ist eine Punktion des Vorzeichens des D-Registers. Die logische Verknüpfung ist dabei so geartet, daß die Abwärtsfunktion immer zuerst schrittweise vergrößert wird. Deshalb ist der erste Zähltaktimpuls ein Κ/ZÄHLUNG-und ein X/ZÄHLUNG-Signalo Das FREIGABE/K-Signal schaltet das K-Register zu dem Interpolatoraddierglied, dessen Ausgang als Zeit für die Addiertaktimpulse festgesetzt ist. Wenn der Addiertaktimpuls kommt, dann ist der Interpolator-Addierausgang, der in das D-Register 146-6 eingetastet wird, die Summe aus dem vorhandenen D—Registerwerfc und dem K-Registerwert. Da der Anfangswert von D null ist, und das K-Register 146-5 gerade durch den Zähltakt auf 1 aufgezählt wurde, ist der neue Wert in dem D-Register der Ausgangswert im K-Register plus einso
Die bedeutendste Ziffer des D-Registers zeigt das Vorzeichen von D an. Es wird darauf hingewiesen, daß in der Tabelle II diese Ziffer von 0 nach 1 gegangen ist«. Dadurch wird bewirkt, daß die logische Steuerschaltung den nächsten Zähltaktimpuls nach X und I steuert und das I-Register während des nächsten Addierimpulses zu dem Interpolatoraddierglied schaltet. Wie aus Tabelle II ersichtlich ist, wird der dritte Zählimpuls zu I und X gelenkt, da nach dem zweiten Addierinpuls das Vorzeichen von D noch negativ war. Nach dem dritten Addierimpuls ist das Vorzeichen von D wieder positiv,
20981 4/0954
2H6627
wie dies durch die Nullebene der bedeutendsten Ziffer angezeigt wird. Deshalb werden K und Z wieder gezählt und K wird zu dem Interpolatoraddierglied gelenkt. Dieser Prozeß setzt sich solange fort, bis entweder X oder Z null ist, oder, da 1-Komplemente verwendet werden, bis das X-Register oder das Z-Register alle 1-Komplemente enthält. Wie aus Fig. 15 und der Tabelle II hervorgeht, führt der hier beschriebene Grobinterpolator die stufenweise graphische Integration aus, wie sie hier beschrieben wird. Die lineare Interpolation geschieht in der gleichen oben angeführten Weise mit Ausnahme der Tatsache, daß das LIN-Signal in der Steuerlogik die I- und K-Register daran hindert, gezählt zu werden, um dadurch eine gerade Linie konstanter Neigung zu erzeugen*
In der Tabelle II zeigen i/C den Anfangszustand, K/c und i/C die K-Zählung bzw. I-Zählung und K/A und i/A die K-Additien bzw. !-Addition.
2098U/Q9S4
I K 47 - Z 000000 Λζ D
010101 100100 TABELLE II 101000 000000 000000
100101 X 101001 000001 100101
110010 ooopoi 100101
κ/c 010110 010110
k/a 000010 111011
I/C 010111 110011 010111
I/A 010010
I/C 100110 110100 101010 000010 100110
I/A 000011 111000
K/C 011000 011000
k/a 010000
I/C 100111 110101 101011 000011 100111
I/A 000100 110111
K/C 011001 011001
k/a 010000
I/C 101000 110110 101100 000100 101000
I/A 000101 111000
k/c 011010 011010
k/a 010010
I/C 101001 110111 101101 000101 101001
I/A 111011
k/c
k/a
erstes Segment vollendet
20981 A/095A
noch
tabelle ιι
I/Co I
011011
K X
111000
Z 4*
000001
4z D
011011
dl
I/A
κ/c
101010 101110 000001 010110
101010
K/A
K/C
101011 101111 000010 000000
101011
k/a
i/c
011100 111001 000010 101011
011100
I/A
k/c
101100 110000 000011 000111
101100
k/a
i/c
011101 111010 000011 110011
011101
I/A
K/C
101101 110001 000100 010000
101101
k/a
I/C
011110 111011 000100 111101
011110
I/A
k/c
101110 110010 000101 011011
101110
k/a
k/c
k/a
101111 110011 000110 001001
101111
111000
zweites Segment vollendet
2098U/09BA
noch TABELLE II
I/A K/C
κ/c κ/α I/C I/A K/C k/a k/c k/a I/C I/A k/c k/a k/c k/a k/c k/a
IKXZ 011111 111100
100000
100001
110000
110001
111101
110010
110011
111110
110100
110101
110110
110100
110101
110110
110111
111000
111001
111010 A x 4z D
000001 011111
000010 000011 000011 000101 010111
000001 110000
000100 000110 000111
000010 110001
000111 111000
100000
011000
110010
001010
110011
111101
100001
011110
110100
010010
110101
000111
110110
111101
drittes Segment vollendet
2098U/09S4
2H6627
noch
TABELLE II
ι κ xzAx Ai D
100010 111111 000001 100010
I/A k/g k/a k/c k/a k/g k/a k/c k/a k/c
110111
111000
111001
111010
111011
111011
111100
111101
111110
111111
000001 011111
110111
000010 010110
111000
000011 001110
111001
000100 000111
111010
000101 000001
111011
Bogen vollendet
Die konstante Sehnenlänge wird im allgemeinen von dem Integrator-
2 addierglled 158 und dem L -Register 159 geschaffen. Jedesmal, wenn das X-Register gezählt wird, wird das ΔΧ-ßegister gezählt. Jedesmal, wenn das Z-Register gezählt wird, wird das Δ Z-Register gezählt. Die A χ- und 4 Z-Register werden zu Beginn jedes Interpolationszyklus auf null zurückgestellt. In der mathematischen Herleitung wurde gezeigte, daß die konstante Sehnenlänge durch Erzeugung der
Summe
+ ( Δ z)2 und durch Anhalten der Interpolation erhalten
20Ö8U/0Ö6A
werden kann, sobald diese Summe den vorher festgelegten Wert
2
von L erreicht. Der Interpolator erreicht dieses Ergebnis auf eine etwas andere Art und Weise. Anstatt die Summe zu erzeugen und sie mit einem in einem anderen Register gespeicherten Wert
2 2
zu vergleichen, wird der Wert von L in das L —Register eingegeben· Daraufhin wird anstelle der Addition von 2 A X-I oder 2 A Z-I die Menge 2 Δ X + 1 oder 2^ Z + 1 addiert. Diese Verfahrensweise wird annähernd das gleiche Ergebnis erzielen, jedoch erfordert sie weniger Speicher- und Gattervorrichtungen.
Obgleich, wie bereits erwähnt wurde, irgendein gewünschter
ο Wert durch die Software erzeugt werden kann und in das L -Register eingegeben werden kann, eignet sich der erfindungsgemäße Interpolator zur Erzeugung drei verschiedener Sehnenlängen: Ll, L2 und L3. Ll ist 15 Steuerinkremente lang, L2 ist 31 Steuerinkre—
2 mente lang und L3 ist 255 Steuerinkremente lang. Somit kann L die Werte 225, 96l oder 65 025 haben. In Fig. 14 ist eine etwas detaillierte Darstellung des L-Registers 159 wiedergegeben. Dieses Register hat l6 Stufen und hält, wie dargestellt, das am wenigsten bedeutende oder charakteristische Bit in der am weitesten links befindlichen Stufe 195 und das bedeutungsvollste oder charakteristischste Bit in der ganz rechts befindlichen Stufe 197· Die Ll, L2 und L3-Signale sind logisch bzw. binär durch zwei OBflBgatter 199 kombiniert, so daß ein D2 und D4-Signal entstehtc Die Ll-, L2- und L3-Signale werden wieder mit Dl, D3 bzwo D5 gekennzeichnet« Die D-Signale sind, wie aus Fig. 14 hervorgeht, an die festgesetzten Steuereingänge der sechsten
2
bis sechzehnten Stufe des L -Registers 159 angeschlossen. Der Steuereingang der ersten Stufe mit steht einer logisch-1—Ebene in ständiger Verbindung, während die Steuereingänge der zweiten bis fünften Stufe mit einer logisch-null-Ebene dauernd verbunden sind« Eine Betrachtung dieses Logikdiagramme zeigt, daß dann, wenn Ll ausgewählt wird, binär 225 in den Steuer-
2
tngängen des L -Registers dargeboten werden. Wenn L2 ausgewählt
2 wird, dann wird binär 961 mit den Steuereingängen des L -Registers konfrontiert, und wenn L3 ausgewählt wird, dann wird binär 65 025 den Steuereingängen zugeführt.
2098U/0954
Da ein vollständiges Beispiel, das die Erzeugung der Sehnenlänge demonstriert, sogar für eine Sehnenlänge von nur 15 Einheiten, sehr lang sein würde, wird eire Sehnenlänge von
acht Einheiten verwendet 0 wobei L gleich 64 gemacht wird. Binär 64 beträgt 1 000 000.
Es wurde bereits festgestellt, daß der erfindungsgemäße Interpolator annähernd dieselbe mathematische Summenbildung ausführt, wie sie in der mathematischen Herleitung zur Erzeugung konstanter Sehnenlängen gezeigt wurde. Dies ist deshalb der Fall, weil der Interpolator nicht die Anfangseins der Summenreihen 1, 3, 5f 7» oot 2n-i erzeugt. Stattdessen erzeugt er die Reihen 3» 5, 7, 9» o.e., 2n-l. D.h., daß der die konstante Sehnenlänge erzeugende Teil des Grobinterpolators durch überspringen der anfänglichen 1 der Reihe die Summe der Quadrate von ^ X und ^ Z eine Stufe vor dem wirklichen Δ Χ
ο und 4 Z erzeugt. Deshalb wird der Wert von L , der in das
ο
L -Register eingespeist wurde, auf null reduziert, und das Vorzeichen des Registers wird ein oder zwei Steuerinkremente , bevor ( Δ Χ)2 + ( Λ Ζ)2 = L2 ist, negativ. In Wirklichkeit wirkt sich, da die Summenbildung auf jeder Achse ein Schritt oder eine Stufe vorher erfolgt, das so aus, daß das Integratoraddierglied das Vorzeichen ändert, wenn (^ X) + ( Λ Ζ) =
/ \ 2 2
(L-I) ist. Wenn deshalb das L -Register auf 225 eingestellt wird, dann wird die Sehnenlänge auf 14 Steuerinkremente und
nicht auf 15 begrenzt. Wenn das L -Register auf 64 eingestellt wird, dann wird die Sehnenlänge auf sieben Einheiten begrenzt. Die Betriebsweise des die konstante Sehnenlänge aufweisenden Teils des Grobinterpolators ist in der Tabelle III aufgezeigt,
in der die Werte für ^X, ^Z, und L in jeder Interpolationsstufe, die in der Tabelle II und Fig. 15 dargestellt ist, gezeigt werden.
2 Wie aus der Tabelle III hervorgeht, ist das L -Register
auf binär 64 eingestellt worden, und A x und /\ Z null sind, sind /5~X und 2Γζ alle binär 1. Zur Vereinfachung der Darstellung
2098U/09B4
haben Δ X und AZ nur vier binäre Ziffern. Die am wenigsten kennzeichnende oder 2°-Ziffer ist in der Tabelle III rechts gezeigt. Wie aus Fig. 13 hervorgeht, sind die AX und ,dZ-Stufen eine Stufe höher mit dem Integratoraddierglied verbunden, so daß das 2°-Bit von 4 X und AZ mit der 2 -Stufe des Integratoraddierglieds verbunden ist und so/fort, und die 2 -Stufe ist mit der logisch-l-Eben?verbunden, wie dies bei den Stufen der Fall ist, die bedeutender oder kennzeichnender sind als die mit Δ X oder Λ Z verbundenen. Dies ist in der Tabelle III durch die in Kästchen eingeschlossenen binär 1 angezeigt. Wenn somit 4 Z = 1110 ist, so ist der dem Integrator-
addierglied zur Addition zu dem vorherigen Wert von L zugeführte Wert 11111101. Die ersten drei binär 1 und die letzte 1, die in den Kästchen eingeschlossen sind, werden durch die permanente Verdrahtung erzeugt.
2098U/0954
TABELLE III
2H6627
1 Δ xli
ll)l ZTz 1
H
CA
I/C 1111 1111
Zählung_Z 1110
Add. (24Z+1)
Zählung_X 1110
Add.. (2/lX+l)
Zählung_X 1101
Add. (2ΔΧ+1)
Zählung_Z 1101
Add. (2-dZ+l)
ZählungX 1100
Add. (24X+1)
Zählung_Z
Add. (24Z+1)
1100
Zählung_X 1011
Add. (24X+1)
Zahlung Z 1011
Add. (24Z+1)
Zählung_X 1010
Add. (24X+1)
Zählung Z 1010
Add. (2M+±)
w 01000000
i/c
Zählung X Add. (22X+1)
Zählung Z Add. (2IZ+I)
Zählung_Z Add. (24Z+I)
Zählung X Add. (23X+1)
Zählung_Z Add. (24Z+1)
Zählung_X Add. (2AX+1)
Zählung_Z Add. (24Z+1)
ZählungX Add. (24X+I)
Zählung_Z Add. (24Z+1)
Zählung Z Add. (2IZ+I)
111
1111 1110
1101
1100
1011
TABELLE III fortgesetzt
I1ItIl 1
1 00111101
ΓϊϊΐΙιιιοοΠ
1 00111010
ITIIiiionrl
1 00110101 tlllHlOfD 1 00110000
1 00101001
1 00100010
1 00011001
1 00010000
1 00000101
O 11111010
!z;
CU
M
co
1111 H 01000000
[ϊΐΐιιιοίϊΐ
64
1 00111101 61
1110 !ΪΪΪΙιιιοΤΙ
1 00111010 58
1101 Ιΐΐΐιιοιίϊΐ
1 00110101 53
iriiiiiojJIi
1 Q0J.10000 48
1100 1IiUiIOOiI 1
1 (20101001
HLlIiIlOdTI
41
1 00100010 34
1011 ΓιιϋίοιιΙΐΙ
1 00011001 25
iTnjioiiIH
1 00010000 16
1010 fiiUioidil
1 00000101 5
1001 iTIilioojJTl
0 llliiOOO
2098U/0954
TABELLE III fortgesetzt
ik
kl/Γζ 111
!25
O H
i/c im
Zählung_X 1110
Add. (24X+1) Zählung Z
Add. (2iZ+l) Zählung Z
Add. (2ΪΖ+1) Zählung X 1101
Add. (221+1) Zählung Z
Add. (2/fZ+l) Zählung Z_
Add. (2dZ+i) Zählung X 1100
Add. (2θ+ΐ) Zählung Z
Add. (2 3Έ+1) Zählung Z
Add. (2 2~Z+l) Zählung Z
Add. (2TZ+I)
1111
1110 1101
1100 1011
1010 1001 1000
01000000
ild
1 00111101 'iUdil
1 00111010.
'ilUllOllll
1 pqiioioi. 1 ppi10000 1 0010100.1
rJHl011|l|
1 00100000
1 00011001 H3fi
1 00001110
'ΪΪΙιοοιΕΓΙ
ι oooooooi
64 61 58 53 48 41 32 25 14 Ol
O 11110010
i/c
Zählung Z Add. (2ΖΓΖ+1) Zählung Z Add. (2B+I) Zählung Z Add. (24ΓΖ+Ι) Zählung JZ_ Add. (2.4 Z+l) Zählung J5_ Add. (2 Λ
1111
lihlil ZTi Ii
1111 1110
1101 1100 1011 1010
oipooooo ll
1 00111101
rnjiiojjil 1 ppiiiooo
liiiinodil 1 poiioooi
!illjioiiSl 1 00101000
1 00011101
209814/09BA
2U6627
Wie bereits festgestellt wurde, erscheint am Ausgang des Integrator Additionsglieds das ΙΝίΓ-Vorzeichensignal. Solange das INT-Vorzeichensignal auf logisch bzw. binär 1 steht, wird die Interpolation fortgeführt· Wenn jedoch das INT-Vorzeichen— signal auf logisch null wechselt, wird ein Endinterpolations— signal, bezeichnet mit END INT durch einen Umkehrer 201 erzeugt, und ein ODER-Gatter 202 läuft vom Zustand 2 zum Zustand 3» um dadurch den Interpolator-Zähltakt und die Addiertaktimpulse, die unmittelbar auf den nächsten Addiertaktimpuls folgen, anzuhalten. Bei dem dargestellten Ausführungsbeispiel geht das INT-Vorzeichen von 1 auf null, wenn Z^ Z das fünfte Mal gezählt wird. Dadurch wird der Interpolationszyklus, wie oben festgestellt, beendet, und die Werte, die in den G-, I—, K-, X-, Z- und D-Registern 146 vorhanden sind, werden an den Kernspeicher im Computer zurückübertragen. Die Werte in den 4 X und ^ Z-Eegistern werden an den richtigen Interpolatorausgangspuffer 61 abgegeben, um durch die Datenkette an die geeignete Maschinen« werkzeugsteuerung übertragen zu werden. Wenn die nächste Berich— tigungsförderung für die Umrißinformation für dasselbe Achsenpaar empfangen wird, dann werden diese Werte von dem Computer-Kernspeicher zu den Grobinterpolator-Registern 146 zurücktransportiert, und die Interpolation wird wieder aufgenommene Nur
die A Xj Δ Z und L -Register werden jedesmal auf null zurückgestellt. Im zweiten Zyklus wird die Interpolation, wie in der Tabelle III gezeigt, solange fortgesetzt, bis Z das sechste Mal gezählt und addiert wird, woraufhin die Reste, die in jedem Register 146 verbleiben, an den Computerkernspeicher zurückgegeben werden. Der dritte Interpolationszyklus für dieses besondere Beispiel wird beendet, nachdem 4 z siebenmal gezählt worden ist·
Der vierte Interpolationszyklus wird nicht wegen der Sehnenlänge beendete Vielmehr wird er deshalb beendet, weil X und Z auf null zurückgegangen sind. Es wird darauf hingewiesen unter Bezug auf Tabelle II, daß im vierten Interpolationszyklus bei dem hier gezeigten Beispiel X einmal gezählt und
2098U/0954
2U6627
dan Z fünfmal gezählt werden. Das D-Registervorzeichen lenkt normalerweise die Zählimpulse richtig entweder zu dem I- oder dem K-Register, um den gewünschten Bogen genau zu interpolieren. Wenn jedoch entweder X oder Z null wird (das Komplement aller), dann werden alle Impulse zu dem anderen Register gelenkt. Deshalb werden, da der erste Addierimpuls in dem vierten Interpolationszyklus bei dem dargestellten Ausführungsbeispiel die X-Äbmessung "aufgebraucht11 hat, die das X-Register alle binär 1 halten läßt, werden alle aufeinanderfolgenden Impulse solange zu dem Z-Register gelenkt, bis das Z-Register alle binär 1 enthält, oder bis sich das INT-Vorzeichen ändert, um die Integration zu stoppen. In jedem Fall befinden sich, wenn sowohl das X- als auch das Z-Register alle binär 1 enthält, wodurch angezeigt wird, daß X null ist und dass Z null ist, sowohl XO als auch ZO auf logisch 1, und erzeugen durch ein UND-Gatter 203 ein Endblocksignal EOB sowie durch ein ODER-Gatter 202 ein END INT-Signal. Das Interpolations-Endsignal END INT zählt das Zustandsregister auf den Zustand drei, um die Interpolation, wie oben beschrieben, zu beenden, und das Blockendsignal EOB wird der Datenkette zugänglich gemacht. Dadurch wird die Interpolatinfi des in Fig. 15 gezeigten Uhrzeigerbogens abgeschlossen.
Es gibt einen Teil der Datenkettenausrüstung, der ,wie in Fig. 16 gezeigt, in der zentralen Steuerung für jede in dem System befindliche Werkzeugmaschine angeordnet ist. Wenn die Werkzeugmaschine nur eine Zweiachsen-Werkzeugmaschine ist, dann brauchen keine Vorkehrungen zur Verarbeitung von A U und AW getroffen zu werden. Zur vollständigen Beschreibung der Erfindung wird jedoch die Datenkette für eine Vierachsen-Werkzeugmaschine erläutert. Deshalb 1st der Interpolatorausgangpuffer 6l mit einem Δ X-Puffer 207, einem ^ Z-Puffer 209, einem Δ U-Puffer 211 und einem Δ W-Puffer 213 versehen. Jeder Puffer besitzt ein 8-Bit-Register 214 und ein Kennzeichen 215» das eingestellt wird, sobald das zugehörige Register abgetastet wird.
209814/095/♦
2U6627
Die von der zentralen Steuerung zu der Werkzeugmaschinen— steuerung oder dem zu der Werkzeugmaschinensteuerung gehörenden Sichtgerät fließenden Daten können aus zwei Quellen stammen, entweder dem Grobinterpolator 26 oder dem Computer 21„ Berichtigungsinformationen von dem Grohinterpolator werden zu dem richtigen Interpolatorausgangspuffer 6l geleitet, und zwar mit Hilfe des Gerätezählers 59o Es wird daran erinnert, daß der Gerätezähler auf einem Zählstand gehalten wird, bei dem ein Berichtigungsanforderungskennzeichen gefunden wird, und auf diesem Stand solange bleibt, bis der Interpolationszyklus abgeschlossen ist. Die Berichtigungsinformation wird in die Interpolatorausgangspuffer mit Hilfe des INT. A ABTAST-Signals oder des INT. B-ABTAST—Signals hinein abgetastet, wobei das erstere Signal zur Einspeicherung der A X und Δ Z-Information in die Interpolatorausgangspuffer benutzt wird und das letztere Signal zur Einspeicherung der Δ U und Δ W-Information in die Interpolatorausgangspuffer verwendet wird.
Ebenfalls in Fig. 16 ist der Computerausgangspuffer 217 für die jeweilige Werkzeugmaschine gezeigte Auch er weist ein 8-Bit-Register 214 und ein Flip-Flop-Kennzeichen 215 auf. Das festgesetzte Abtastsignal für den Computerausgangspuffer 217 ist I0P4 und wird von der Vorrichtungswahlausgangsleitung 47 entsprechend dem Vorrichtungscode vom i/o-Kanal gesteuert.
Jedes Register 214 der Interpolatorausgangspuffer und des Computerausgangspuffers, ist über eine Steuermatrix 221 an die festgesetzten Steuereingänge eines vorher einstellbaren Schieberegisters 225 angeschlossen, das Leitungspuffer genannt wird. Die Daten werden in den Leitungspuffer parallel eingetastet und durch ein Schiebezeit- oder Taktsignal jLn einer Reihe ausgegeben· Der Leitungspuffer wird auch zur Aufnahme von Daten aus der Weik zeugmaschinensteuerung 31 und dem Tastatur- und Sichtanzeigegerät 32 benutzt. Somit könno} sobald Daten, die an die Werkzeugmaschinensteuerung 31 oder an das Tastatur- und Sichtanzeigegerät 32 übertragen werden, aus dem Leitungspuffer ausgegeben werden, Daten aus der
209814/0954
2Ί46627
Werkzeugmaschinensteuerung oder dem Tastatur- und Sichtanzeige— gerät eingegeben werden. Wenn der Leitungspuffer 225 vollständig verschoben worden ist, werden die gerade empfangenen Daten, die von Datenerkennungsgattern 227 gesteuert werden, in den Computereingangspuffer 217 eingetastet und stellen dessen Kennzeichen 215 ein. Wenn die soeben empfangenen Daten Berichtigungsanforderungs— bzw. Anfragedaten sind, so werden sie von den Datenerkennungsgattern so gesteuert, daß das richtige Berichtigungsanforderungskennzeichen eingestellt wird.
Die Datenkette arbeitet mit einem 20-Bit-Zyklus, der von dem in den Fig. 9 und 1OE gezeigten Taktgeber erzeugt wird· Bei der bevorzugten Ausführungsform werden sechs Übertragungsimpulse benutzt. Diese Impulse sind mit TPi, TP2, TP3, TP4, TP5 und TP6 bezeichnet. Jeder Übertragungsimpuls hat eine Dauer von fünf Mikrosekunden und ist zeitverschoben, so daß TP2 auf TPl folgt und TP3 auf TP2 folgt. Nach TP3 verweilt das Versohiebesignal für 65 Mikrosekunden, woraufhin sofort TP4, TP5 und TP6 folgen. Auf TP6 folgt ein Synchronisierungsimpuls SYNC, der den Digitaltaktgeber oder die Digitaluhr der Werkzeugmaschinensteuerung mit der Hauptuhr der Zentralsteuerung in zeitlicher Übereinstimmung hält. Die Verschiebetakt impulse dauern 0,5 Mikrosekunden und treten während der letzten 0,5 Mikrosekunden der Übertragungsimpulse auf«. D.h., der Übertragungsimpuls TPl dauert bei logisch 1 4,5 Mikrosekunden, bevor der Verschiebetaktimpuls in Erscheinung tritt. Dadurch werden die logischen Gatter in die Lage versetzt, zur Ruhe zu kommen, bevor die Register und Kennzeichen von den Verschiebetaktimpulsen abgetastet werden.
Die Daten werden in einem 13-Bit-Format übertragen. Sie Bits 1-4 und 5-9 tragen die Daten von dem Interpolator-Ausgangspuffer oder dem Computer-Ausgangspuffer. Die Bits 5 und 10 stehen zur Benutzung als Paritätsbits zur Verfügung. Die Bits 11-13 werden zur Kenntlichmachung der Bestimmung der in den Bits 1-10 enthaltenen Daten benutzt. Es sind also die Bits
20981 4/09BA
2U6627
11-13ι die von Datenerkennungsgattern 227 dazu verwendet werden, die empfangenen Daten zu dem richtigen Puffer oder Kennzeichen zu lenken. Fig. 16 zeigt das Logikdiagramm zur Erzeugung der Bits 11-13. Die Tbenutzte Codierung zur Kennzeichnung der Daten ist in der Tabelle IV wiedergegeben.
TABELLE IV
Δχα Bit
11
4ZA O
4UA O
Δ VA 1
epuA 1
^XA 1
LETZTES ΛϋΑ O
LETZTES 1
Bit
12
Bi
12
1 O
O 1
1 O
O 1
O O
1 1
1 1
Wie bereits festgestellt wurde, hat jeder Ausgangspuffer ein zugehöriges Flip-Flop-Kennzeichen 215, das eingestellt wird, sobald die Daten in das zugehörige Register 214 eingespeist werden«. Die eingestellten Ausgänge dieser Kennzeichen stehen alle mit einer Prioritätsschaltung 231 in Verbindung, die die Priorität oder den Vorrang der Datenübertragung bestimmt. Der Übertragungsimpuls TP2 wird mit Hilfe dieser Prioritätsschaltung durch die eingestellten Ausgänge der Flip-Flop-Kennzeiohen 215 so gesteuert, daß eine der fünf Prioritäts-Flip-Flops 217 eingestellt wird. Die eingestellten Ausgänge der Priotltäts-Flip-Flops 215 sind mit A XA, ^J ZA,
20981 A /0954
4 UA, Δμα und CPUA bezeichnet. Nur einer der Prioritäts-Flip-Flops kann sich zu einer gegebenen Zeit in dem eingestellten Zustand befinden. Dies ist deshalb der Fall, weil alle Priorität-Flip-Flops 217 durch TP6 in jedem Datenkettenzyklus zurückgestellt werden, und nur einer von TP2 in dem nächsten Datenkettenzyklus eingestellt werden kann, und dies ist der mit der höchsten Priorität«, Deshalb kann zu einer beliebigen Zeit nur ein Prioritätssignal 4XA5 4ZA» iiUA> VA oder GPUA auf logisch eins sein«, Die Prioritätssignale werden dazu benutzt, das richtige Pufferregister 214 zu den Steuereingängen des Leitungspuffers 225 zu führen» Die von dem geführten Register kommenden Daten werden mit Hilfe eines Verschiebetaktimpulses, der mit TP3 durch ein UND-Gatter 233 gelenkt wird, in den Leitungspuffer eingetastete Außerdem werden in den Leitungspuffer während der Eintastung über TP3 die Identifikationsbits 11, 12, 13 eingetastet, die durch logische Kombination der Prioritätssignale und des Blockendsignals EOB, wie in Figo 16 gezeigt, sowie der Paritätsbits 5 und 10 gebildet werden«,
Die Daten werden über ein Telephonpaar übertragen, das eine Leitung 1 und eine Leitung 2 besitzt, die mit UND—(lattern 237 bzw. 239 verbunden sind. Die steuernde Logik 241, die mit den UND-Gattern 237 und 239 verbunden ist, wie dies in Fig. gezeigt ist, ist so geschaffen, daß die Leitung 1 während das VERSCHIEBE-FREIGABE-Signal in bezug auf die Leitung 2 positiv ist, sobald die am weitesten links befindliche Stufe auf logisch 1 ist, unter der Steuerung der am weitesten links befindlichen Stufe des Leitungspuffers 225 steht. Wenn das Verschiebe—Freigabe-Signal nicht vorhanden ist, steht die Leitung 1 unter der Steuerung des XMT-OHNE-DATEN-Anschlusses. Unabhängig von der Höhe irgendeines anderen Signals wird die Leitung 2, sobald das SYNC-Signal auftritt, in bezug auf die Leitung 1 positiv gemacht. Diese Anordnung dient zur Übertragung eines eindeutigen SYNC-Signals an die Maschinensteueruhr sowie zur Übertragung einer Paritätsüberprüfung und Rückmeldung
209814/0954
über den XMT-OHNE-DATEN-Anschluß, wenn des VERSCHIEBE-FREIGABE Signal nicht vorhanden ist.
Da die 13 Bits, die in dem Leitungspuffer bei der zentralen Steuerung gespeichert sind, ausgesendet werden, werden 13 Datenbits in den zentralen Steuerleitungspuffer eingespeist, wenn sie von der Werkzeugmaschinensteuerung empfangen werden. Nach der 13. Verschiebung wandert das Verschiebe-Freigabe-Signal von logisch 1 nach logisch 0, und es erscheint das TP4t-Signal. Während des TP4-Signals sind die Datenerkennungsgatter 227 aktiv und analysieren die Bits 11, 12 und 13 um zu bestimmet} ob die Daten für den Grobinterpolator oder für den Computer vorgesehen sind. Wenn die Daten für den Grobinterpolator vorgesehen sind, werden alle empfangenen Informationen in die Bits 11, 12 und 13 eingeschlossene D.h., es ist eine einfache Berichtigungsanforderung für das Seitenrevolverkopf—Achsenpaar oder für das Endrevolverkopf—Achsenpaar vorhandeno Dadurch wird entweder eine Bericht— tigungsanforderung A oder eine Berichtigungsanforderung B erzeugte Wenn die empfangenen Daten für den Computer vorgesehen sindj, dann ermöglichen es die Datenerkennungsgatter dem Computereingangspuffer während des TP4-Signals durch den Verschiebetakt bzw. die Verschiebeuhr abgetastet zu werden« Dadurch wird außerdem das Computer-Eingangspufferkennzeichen eingestelltj wodurch eine Sprungforderung entsteht, die dem ' l/0-Kanal (Eingangs/Ausgangs-Kanal) des Computers zuzuführen ist, sobald der Gerätecode des eingestellten Puffers durch den Computer in der oben beschriebenen Weise ausgegeben worden ist.
Die Datenkettenschaltungen für jede Werkzeugmaschinensteuerung sind im wesentlichen gleich denjenigen der zentralen Steuerung, wie sie in Fig. 16 gezeigt sind« Der Datenkettenempfänger ist ein Differentialverstärker, und sein Ausgang ist direkt an ein UND-Gatter 2%1 angeschlossen, das auf die
20981 A/095A
. - 63 -
2H6627
empfangenen Datensignale anspricht« Der Ausgang des DifferentialVerstärkers an jeder Maschinensteuerung 31 ist über einen Umkehrverstärker 243 auch mit einem zweiten UND-Gatter 245 verbunden, das nur auf das SYNC—Signal anspricht und nicht auf die übermittelten Daten· Dieses aufgenommene SYNC—Signal steht dann dafür zur Verfügung, den Oszillator der örtlichen Digitaluhr an der Werkzeugmaschinensteuerung mit der Hauptuhr der zentralen Steuerung synchron zu halten«
Fig. 17 zeigt den Linearinterpolator und Servoantrieb der Werkzeugmaschinensteuerung, der im allgemeinen gleich dem gegenwärtig bei lochstreifengesteuerten Werkzeugmaschinen verwendeten ist« Ein Vorschubgeschwindigkeitsoszillator 247 erzeugt in unveränderlicher Menge Vorschubgeschwindigkeitsimpulse« Diese Impulse werden durch einen binären Betragvervielfacher 251 unter der Steuerung einer Vorschubgeschwindigkeitszahl F in einem Register 253 gespeichert, das an den binären Betragvervielfacher 251 angeschlossen ist« Der Ausgang des binären Betragvervielfachers 251 bestimmt die Vo rschubgesohwindigkeit des durch die X— und Z—Achse angetriebenen Werkzeugsο Ein ähnlicher binärer Betragvervielfacher, der nicht dargestellt ist, bedient die U- und W-Achse, die im wesentlichen gleich der X- und Z-Achse sind. Der binäre Betragvervielfacher 251 erzeugt das Eingangssignal für die beiden anderen binären Betragvervielfacher 257 und 259, und zwar je einer für jede Achse des gesteuerten Achsenpaares, in diesem Falle also für die X- und die Z-Achse. Jeder dieser binären Betragsvervielfacher hat ein zu ihm gehörendes Vervielfacherregister, von dem das eine mit Δ X-aktiv und das andere mit Δ Z-aktiv bezeichnet ist. Die Ausgänge der binären Betragsvervielfacher 257 und 259 biiefern die impulsempfindlichen Servosysteme der beiden Achsen mit Impulsen« Das X-Achsen Servosystem 261 ist schematisch dargestellt. Das nicht
209814/09BA
gezeigte Z-Achsen-Servosystem gleicht im wesentlichen dem Servosystem für die X—Achse.
Jeder Teil der Daten, der von der Maschinensteuerung verlangt wird, wird über die Datenkette empfangen und durch die Datenerkennungsgatter 227 zu dem richtigen Maschinensteuerpufferregister geleitet, so beispielsweise dem F-Nummern-Puffer 265, dem Δ. X-Puffer 267 oder dem A Z-Puffer 269. Eine komplette Befehlsschaltung erzeugt einen Übertragungsimpuls T, sobald jeder A X- und A Z-Befehl ausgeführt wird, um den nächsten A X- und A Z-Befehl vom Pufferspeicher zum aktiven Speicher zu übertragen, und erzeugt ein Berichtigungsanforderungs— signal, das die zentrale Steuerung veranlaßt, einen anderen X- und A Z-Befehl zu erzeugen.
Wenn die Datenerkennungsgatter 227 der Datenkette in der Werkzeugmaschinensteuerung 31 ein LETZTES A X oder ein LETZTES A U ermitteln, dann wird eine neue Blockforderung erzeugt. Dieses Signal wird über die Datenkette dem Computer zugeführt, der den nächsten Datenblock der Werkzeugmaschinensteuerung 3i und dem Grobinterpolator zugänglich macht, wenn die Umrißbildung in dem Block enthalten ist.
20981A/0954

Claims (1)

  1. PATENTANSPRÜCHE
    1.1 Steuersystem für mehrere Maschinen zur Ausführung
    ner Relativbewegung zwischen einem ersten und einem zweiten Körper entlang einer gewünschten Bahn, wobei jede Maschine mit Elementen versehen ist, die auf Signale ansprechen, welche Vektorkomponenten in bezug auf die beiden orthogonalen Achsen darstellen, um die Relativbewegung entlang einer geradlinigen Strecke zu bewirken, die die Resultierende der Vektorkomponenten ist, dadurch gekennzeichnet, daß das System ein erstes digitales Datenverarbeitungsgerät (21) aufweist, das mit einem Speicher (24) zur Speicherung mehrerer Befehle einschließlich parametrischer Daten versehen ist, die die gewünschte Bahn definieren, daß das System ferner ein spezielles digitales Datenverarbeitungsgerät (26) aufweist, mit dem aus den parametrisehen Daten aufeinanderfolgende Signalgruppen erzeugbar sind, die Vektorkomponenten von aufeinanderfolgenden Bahnsegmenten darstellen, welche die gewünschte Bahn approximieren, daß ferner Datenketten zur Übertragung der Signalgruppen von dem speziellen digitalen Datenverarbeitungsgerät zu den Maschinen (30, 3i) vorgesehen sind, und daß zur Übertragung der parametrisehen Daten zwischen dem ersten digitalen Datenverarbeitungsgerät und dem speziellen digitalen Datenverarbeitungsgerät Übertragungseinrichtung en vorhanden sind«
    2» Steuersystem nach Anspruch I1 dadurch gekennzeichnet, daß das spezielle digitale Datenverarbeitungsgerät mit Einrichtungen zur Modifizierung der von dem ersten digitalen Datenverarbeitungsgerät während der Erzeugung eines die Vektorkomponenten eines linearen Bahnsegments darstellenden Signalsatzes empfangenen parametrisehen Daten versehen ist sowie zur Übertragung der Signalsätze über die Datenketten zu einer Maschine (30a, 30b, 30c, 3Od) und der modifizierten parametrisehen Daten zu dem ersten digitalen Datenverarbeitungs·
    209814/0964
    gerät über die Datenübertragungseinrichtung.
    3. Steuersystem nach Anspruch 1, gekennzeichnet durch Datenketten zwischen den Maschinen (30a, 30b, 30c, 3Od) und dem Datenverarbeitungsg-erät zur Steuerung der Maschihenfunktionen und der Bewegung der beweglichen Körper entsprechend den binär kodierten Signalen, die als Teil der Befehle gespeichert sind, welche die eine Bewegungsbahn begrenzenden parametrischen Daten darstellen, wobei die Datenketten mit Einrichtungen zur Anforderung eines Befehlssignals von dem Datenverarbeitungsgerät versehen sind und das spezielle Datenverarbeitungsgerät die absolute Größe der Vektorkomponenten längs der Achsen für mehrere Liniensegmente berechnet, die der Bewegungsbahn folgen oder sie approximieren und binäre Signale für die Komponenten erzeugt, die ein Bahnliniensegment bilden, ferner die ursprünglichen parametrischen Werte berichtigt und die berichtigten parametrischen Werte, die zur Formulierung der Komponenten der Liniensegmente für den übrigen Teil der Bahn benutzt werden speichert, und wobei Mittel vorgesehen sind, mit denen die Erzeugung des nächsten Liniensegmentes der Bahn aufgrund einer von der Werkzeugmaschine ausgehenden Anforderung zur Information über die Ausführung eines Befehls für ein Liniensegment einleitbar ist, und wobei schließlich eine Einrichtung vorhanden ist, mit der ein Befehl für eine Maschine erlassen werden kann, sobald die Komponenten für alle Liniensegmente der Bahn erzeugt worden sind,
    *tο Steuersystem für eine Werkzeugmaschine nach Anspruch 3» dadurch gekennzeichnet, daß das zentrale Datenverarbeitungsgerät (21) einen digitalen Computer für allgemeine Zwecke aufweist, der mit einer ersten Taktgeschwindigkeit arbeitet, daß das spezielle Datenverarbeitungsgerät mit einer wesentlich höheren Taktgeschwindigkeit arbeitet als der allgemeinen Zwecken dienende Computer, wodurch es sich zur Erzeugung binärer Signale für die Liniensegmentkomponenten einer Vielzahl von
    2098U/095A
    2H6627
    Maschinen (30, 30b, 30c, 3Od). während des Zeitintervalls zwischen der Signalerzeugung fur benachbarte Liniensegmente irgendeiner der Werkzeugmaschinen verwenden läßt.
    5. Steuersystem nach Anspruch i, dadurch gekennzeichnet,
    daß jede Maschine mit Einrichtungen versehen ist, die aufgrund von Befehlen in Form binärer Signale betätigbar sind, welche die Größen der Vektorkomponenten in bezug auf die beiden orthogonalen Achsen bestimmen, um die Körper längs einer linearen Bahn, die die Resultierende der Komponenten ist, relativ zu verschieben, daß das erste digitale Datenverarbeitungs· gerät (21) mit einer ersten Taktgeschwindigkeit arbeitet, daß das spezielle digitale Datenverarbeitungsgerät mit einer Takt— geschwindigkeit arbeitet, die größer ist als die erste Taktgeschwindigkeit, um die absoluten Größen der Vektorkomponenten der geradlinigen Segmente zu berechnen und dadurch die Bahn aufgrund der parametrischen Daten zu bestimmen und die binären Signale, die die Größen der an eine Maschine zu übertragenden Vektorkomponenten darstellen, zu erzeugen, und daß eine Einrichtung vorgesehen ist, mit der das spezielle Datenverarbeitungs· gerät an den Computer anschließbar ist, um in dem Computer Daten zu speichern, mit denen die übrigen geradlinigen Liniensegmente der Bahn erzeugt werden, nachdem die binären Signale für ein Bahnsegment erzeugt worden sind, und daß schließlich eine Einrichtung vorhanden ist, durch die die Werkzeugmaschine mit dem Datenbehandlungsgerät verbindbar ist, um eine Aktivierung der dem speziellen Zweck dienenden Verarbeitungsschaltung zur Erzeugung binärer Signale zu bewirken und dadurch die Vektorkomponenten eines folgenden Bahnsegments zu bestimmen, nachdem ein früheres Segment bestimmt worden ist.
    6. Steuersystem zur Steuerung beweglicher Körper einer Maschine nach einem der Ansprüche 1 bis 5, gekennzeichnet durch einen Speicher (24), der die Befehle zum Betrieb der Maschine speichert, zu denen WortInstruktionen gehören^ die
    2098U/0964
    als binäre Signale gespeichert werden, welche parametrische Daten darstellen, die die Bewegungsbahn des beweglichen Körpers bestimmen, ein Datenverarbeitungsgerät (2l), das so angeschlossen ist, daß es binäre Signale erzeugt, die ein Segment der Bewegungsbahn darstellen, das durch die Instruktion eines in dem Speicher gespeicherten Befehls festgelegt ist, wobei das dem speziellen Zweck dienende Datenverarbeitungsgerät einen ersten und zweiten Zähler aufweist, die auf ein Signal einstellbar sind, sobald eine vorher festgelegte Zählung von den Zählern erreicht wird, wobei ferner dritte und vierte Register zum Zählen der Inkremente längs der ersten bzw. zweiten Achse vorgesehen sind, fünfte und sechste Register zur Speicherung der Ziffern, die zur Bestimmung der Neigung der zu erzeugenden Liniensegmente benutzt werden, eine Additionsschaltung vorgesehen ist, eine Einrichtung zur stufenweisen Weiterschaltung eines der dritten und vierten Register und zur Addition einer der Ziffern zu der.Additionssehaltung vorhanden sind, und wobei schließlich eine Einrichtung vorgesehen ist, die auf einen Wechsel im Vorzeichen des Addierers oder der Summe des Addierers anspricht, die null wird, um die anderen Register stufenweise weiterzu— schalten und die anderen Ziffern dem Addierer hinzuzuaddieren und dadurch die Summe gegen null zu t>rringem«
    7. Verfahren zur Steuerung einer Maschine, die einen beweglichen Körper aufweist, der durch binär kodierte Befehle betätigbar ist einschließlich binärer Signale, die Verschiebungen längs orthogonaler Koordinatenachsen befehlen, um eine Relativbewegung eines beweglichen Körpers längs einer vorher festgelegten Bahn zwischen einem Ausgangspunkt und einem von diesem getrennten Punkt entsprechend den genanrfen Verschiebungen zu bewirken, unter Verwendung des Steuersystems nach den Ansprüchen 1-6, dadurch gekennzeichnet, daß eine in dem digitalen Datenverarbeitungsgerät, das einen Speicher aufweist, gespeicherte Information gelesen wird,
    209814/0354
    -69- 2H6627
    die die Bahn mit binären Signalen begrenzt, welche parametrische Daten für die Bahn darstellen, daß ferner eine Gruppe anteiliger binärer Signale erzeugt wird, wobei die Gruppe die "^Schiebungen längs der Koordinatenachsen zwischen
    dem Anfangspunkt der Bahn und einem Zwischenpunkt, der sich im wesentlichen auf der Bahn befindet, definieren, wodurch die Resultierende der beiden Verschiebungen im wesentlichen ein Anfangssegment der Bahn ist, daß die binären Signale an die Werkzeugmaschine übertragen werden, um den beweglichen Körper so zu steuern, daß er sich entlang dem Anfangssegment der Bahn bewegt, und daß gespeicherte Berichtigungswerte übertragen werden, um die Erzeugung des Anfangssegments anzuzeigen, und daß schließlich die obigen Schritte periodisch wiederholt werden, wenn die Maschine einen zusätzlichen Befehl anfordert, bis die Liniensegmente, die zur Bewegung der Körper längs der Bahn notwendig sind, berechnet und an die Maschine übertragen worden sind»
    8«, Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß in der Speichervorrichtung mehrere Befehle gespeichert sind, um mehrere Werkzeugmaschinen zu steuern, von denen jede einen beweglichen Körper aufweist, der in Abhängigkeit von in dem Speicher befindlichen Befehlen gesteuert werden soll, wobei mehrere Befehle Instruktionen zur Bewegung mehrerer dieser beweglichen Körper auf vorbestimmten Bahnen enthalten, und wobei das Segment einer Bahn für die eine Maschine auf die von dieser Maschine ausgehende Datenanforderung hin berechnet wird, während eine andere Maschine ein Segment einer Bahn erledigt, dessen binäre Signale bereits berechnet und zu der Maschine übertragen worden sind.
    9· Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß die Befehle, die diese Instruktionen zur Bewegung eines beweglichen Körpers einer Werkzeugmaschine entlang einer vorbestimmten Bahn enthalten, in einem Speicher gespeichert sind,
    2098U/0954
    "70" 2U6627
    um mehrere Werkzeugmaschinen zu betätigen, die mit beweglichen Körpern ausgerüstet sind, welche gesteuert werden sollen, daß das digitale Datenverarbeitungsgerät ein allgemeinen Zwecken dienender Computer ist, der dazu benutzt wird, Befehle an irgendeine mehrerer Maschinen auf eine von einer solchen Maschine ausgehende Anfrage nach einem auszuführenden Befehl hin zu lenken, und in dem ein Befehl, der eine Instruktion enthält, welche eine Bewegungsbahn für einen beweglichen Körper festlegt, den Computer in Abhängigkeit von einer Befehlsanforderung und der Instruktion arbeiten läßt, um Bahnparameter der Bewegung, die als Teil der Instruktion gespeichert sind, einem für einen speziellen Zweck vorgesehenen, digitalen Datenverarbeitungsgerät zuzuführen, das nur ein Segment der Bahn berechnet, um binäre Signale zur Bewegung des beweglichen Körpers zu erzeugen, der entlang nur eines Bahnsegments zu steuern ist8 und das auf eine gespeicherte BerichtigungsInstruktion einwirkt, um die übrigen Segmente auf nachjagende Befehlsanforderungen hin zu berechnen, um dadurch das für den speziellen Zweck vorhandene Datenverarbeitungsgerät zur Verwendung für die Berechnung von Liniensegmenten für andere Maschinen freizumachen.
    1O0 Verfahren nach Anspruch 71 dadurch gekennzeichnet, daß die parametrischen Daten eine erste Zahl und eine zweite Zahl aufweisen, die kennzeichnend für die Verschiebung längs der orthogonalen Achsen der Bewegungsbahn eines Punktes auf der Bewegungsbahn sind, der von dem Ausgangspunkt mit Abstand getrennt ist, daß die binären Signale zur Steuerung des beweglichen Körpers sich berechnen lassen, und zwar durch Addition eines Y-Zählstandes von eines in einem Y-inkrementalen Zählregister, welcher ein Bewegungsinkrement längs einer ersten Achse der orthogonalen Achsen darstellt, ferner durch Addition einer zweiten Zahl zu einem Addiergerät, um eine Summe mit einem speziellen Vorzeichen zu erzeugen, weiter durch schrittweises Weiterschalten eines Z-Inkrement-Zählregisters
    2098U/0954
    2U6627
    um einen Z-Zählwert oder Zählstand von eins, der einen Zählwert längs der zweiten Achse der orthogonalen Achsen darstellt, ferner durch algebraische Addition der ersten Zata 1 zu dem Summenregister in dem Addiergerät, um die Summe in diesem Gerät auf null zu bringen, und durch schrittweises Weiter— schalten des Z-Registers und Addieren der ersten Zahl zu dem Addiergerät, um die Summe solange null werden zu lassen, bis die Summe in dem Addiergerät null ist oder das Vorzeichen der Summe sich ändert, woraufhin das Y-Inkrement—Register-schrittweise weitergeschaltet wird und die zweite Zahl algebraisch zu dem Addiergerät acftert wird, um die Summe in diesem Gerät auf null zu bringen und das Z-Inkrement-Register wiederholt schrittweise weiterzuschalten und die zweite Zahl zu addieren, bis die Summe in dem Addiergerät null ist oder sich das Vorzeichen geändert hat, woraufhin der Prozeß nach einer festgelegten Anzahl inkrementaler Änderungen beendet wird und der Zählstand in dem Y-Inkrement-Register sowie der Zählstand in dem Z-Inkrement-Register zu der Maschine übertragen werden, um den beweglichen Körper zu steuern und ihn auf der Bahn zu bewegen, die als Ergebnis von Komponentenvektoren längs erster und zweiter orthogonaler Achsen festgelegt wurde, wobei die absoluten Größen der Vektoren den inkrementalen Y— und Z-Zählständen oder —Zählwerten entsprechen.
    11· Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß der bewegliche Körper entlang einer Bahn bewegt werden soll, die einem Kreisbogen angenähert ist und an einem Anfangspunkt beginnt und an einem Endpunkt endet, wobei der Bogen einen Bogenmittelpunkt aufweist, dessen Koordinaten auf die ersten und zweiten Achsen bezogen sind, wobei die Koordinaten der ersten Achse als erste Zahl eingegeben werden und die Koordinaten der zweiten Achse als zweite Zahl eingegeben werden, und daß die erste und zweite Zahl jedesmal dann um ein Inkrement verkleinert werden, wenn der der Achse entsprechende inkrementale oder Schrittzähler schrittweise weitergeschaltet wird.
    2098U/095A
    " 72 " 2H6627
    12. Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß die Befehle, die die Instruktionen zur Bedienung mehrerer Maschinen enthalten, in einem allgemeinen Zwecken dienenden Computer gespeichert werden, der dazu benutzt wird, die Befehle an irgendeine dieser Maschinen weiterzugehen, wenn von dieser.Maschine eine Anforderung für einen auszuführenden Befehl vorliegt, wobei in dem Computer ein Befehl, der eine eine Bewegungsbahn definierende Instruktion enthält, gelesen wird und binäre Signale, die nur ein Segment der gewünschten Bahn ausführen, durch ein einem speziellen Zweck dienendes Hochgeschwindigkeitsdatenverarbeitungsgerät erzeugt werden, wobei das letztgenannte Gerät binäre Signale erzeugt, die die Bewegung der beweglichen Körper längs der gewünschten Bahnsegmente mit Hilfe der Instruktionen in einem Mehrfachschal tungsbetrieb veranlassen, in dem die binären Signale für eine gegebene Maschine berechnet werden, während von den anderen Maschinen Befehle ausgeführt werden.
    13· Verfahren zur Bestimmung der Vektorkomponenten zur Erzeugung einer Bahnlinie entlang der ersten und zweiten Achse eines orthogonalen Achsensystems nach einem der Ansprüche 7 bis 12, dadurch gekennzeichnet, daß erste und zweite Zahlen erzeugt werden, die die Verschiebung eines Punktes auf der Bahnlinie von einem Ausgangpunkt aus entlag der orthogonalen Achsen darstellen, daß ein Y-Zählwert von eins in einem Y-inkrementalen Zählregister erzeugt wird, der ein Inkrement der Bewegung entlang der ersten Achse darstellt, daß die erste Zahl einem Addiergerät oder -werk für den Y-Zählstand von eins hinzuaddiert wird, um eine Zahl mit einem bestimmten Vorzeichen zu erzeugen, daß ein z-inkrementales Zählregister um einen Z-Zählwert weitergezählt wird, der ein Bewegungsinkrement entlang der zweiten Achse darstellt, daß die zweite Zahl algebraisch zu der ersten Zahl in dem Addierwerk addiert wird, um die Summe in dem Addierwerk gegen null laufen zu lassen, daß die inkrementale Weiterschaltung oder Weiterzählung des Z-Registers und die Änderung der Summe in dem
    2098 H /09.54
    Register auf null durch die zweite Zahl solange wiederholt wird, bis die Summe null ist oder das Vorzeichen der Summe wechselt, daß dann das Y-Register inkremental weitergezählt wird und die erste Zahl algebraisch zu dem Zählwerk addiert wird, um die Summe in dem Zählwerk gegen null laufen zu lassen, daß das inkrementale Weiterzählen und Addieren solange wiederholt werden, bis die Summe in dem Addierwerk null ist oder das Vorzeichen sich geändert hat, und daß der Prozeß nach einer festgelegten Anzahl inkrementaler Änderungen in wenigstens einem der Register beendet wird, woraufhin der inkrementale Zählwert in das Y-inkrementale Zählregister übertragen wird und der inkrementale Zählwert in dem Z-Zählregister an die Maschine geliefert wird, um den beweglichen Körper zu steuern und ihn entlang einer Bahn zu bewegen, die als Ergebnis der Vektorkomponenten längs der ersten und zweiten Achsen festliegt, wobei die Vektorkomponenten absolute Größen aufweisen, die den inkrementalen Y- und Z-Zählständen entsprechen.
    14. Verfahren nach Anspruch 13, dadurch gekennzeichnet, daß der Körper auf einer gebogenen Bahn bewegt wird, die durch mehrere geradlinige Segmente approximiert wird und bei der die erste und die zweite Zahl die Koordinaten des Mittelpunkts des zu approximierenden Bogens sind und jedesmal dann um ein Inkrement verkleinert werden, wenn das diesbezügliche inkrementale Register geändert wird.
    15. Verfahren zur Steuerung einer Werkzeugmaschine, um eine Relativbewegung zwischen einem Werkzeug und einem Werkstück entlang einer gewünschten Bahn durchzuführen, nach einem der Ansprüche 7-14» dadurch gekennzeichnet, daß (a) eine erste Zahl in einem ersten Register gespeichert wird, die das allgemeine Merkmal der gewünschten Bahn anzeigt, daß in zweiten und dritten Registern zweite und dritte Zahlen gespeichert werden, die die Verschiebungen eines Endpunktes entlang der ersten und zweiten Achse eines
    2098H/0954
    orthogonalen Achsensystems auf der gewünschten Bahn in bezug auf einen auf der gewünschtenBahn liegenden Anfangspunkt darstellen, daß in vierten, fünften und sechsten Registern vierte, fünfte und sechste Zahlen gespeichert werden, daß (b) ein erstes inkrementales Register um eins weitergezählt wird, daß die in dem vierten Register gespeicherte Zahl der in dem sechsten Register gespeicherten hinzuaddiert wird und die Summe in dem sechsten Register gespeichert wird, daß (c), falls der Verfahrensschritt (b) keiiFVorzeichenwechselin dem sechsten Register verursacht, dieser Verfahrensschritt wiederholt wird, daß (d), falls der Verfahrensschritt (b) in dem sechsten Register zu einem Vorzeichenwechsel führt, der Verfahrensschritt (e) ausgeführt wird, daß (e) ein zweites inkrementales Register um eins weitergezählt wird, daß die in dem fünften Register gespeicherte Zahl der in dem sechsten Register gespeicherten hinzuaddiert wird und die Summe in dem sechsten Register gespeichert wird, daß ^f), falls der Verfahrensschritt (e) in dem sechsten Register zu keinem Vorzeichenwechsel führt, dieser Verfahrensschritt wiederholt wird, daß (g), falls der Verfahrensschritt (e) in dem sechsten Register zu einem Vorzeichenwechsel führt, der Verfahrensschritt (b) ausgeführt wird, daß (h) die oben beschriebenen Verfahrensschritte
    beendet werden, nachdem die inkrementalen Register eine vorher festgelegte Anzahl Male inkremental weitergezählt worden sind, und daß (i) die in jedem inkrementalen Register gespeicherte Zahl einer Werkzeugmaschine übermittelt wird.
    2098U/0954
DE19712146627 1970-09-18 1971-09-17 Steuersystem für mehrere numerisch gesteuerte Werkzeugmaschinen Pending DE2146627A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US7356770A 1970-09-18 1970-09-18

Publications (1)

Publication Number Publication Date
DE2146627A1 true DE2146627A1 (de) 1972-03-30

Family

ID=22114481

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19712146627 Pending DE2146627A1 (de) 1970-09-18 1971-09-17 Steuersystem für mehrere numerisch gesteuerte Werkzeugmaschinen

Country Status (5)

Country Link
US (1) US3720814A (de)
CA (1) CA971250A (de)
DE (1) DE2146627A1 (de)
FR (1) FR2106619B1 (de)
GB (2) GB1369262A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3722084A1 (de) * 1986-07-04 1988-01-07 Mitsubishi Electric Corp Numerisch gesteuerte einrichtung

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6076652A (en) 1971-04-16 2000-06-20 Texas Instruments Incorporated Assembly line system and apparatus controlling transfer of a workpiece
US3875382A (en) * 1973-07-26 1975-04-01 Hymie Cutler Path generating apparatus and method particularly for generating a two-lobed epitrochoid contour
US3969703A (en) * 1973-10-19 1976-07-13 Ball Corporation Programmable automatic controller
US3996456A (en) * 1975-02-13 1976-12-07 Armco Steel Corporation Recursive interpolation
US4031369A (en) * 1975-08-12 1977-06-21 The Bendix Corporation Interpolation and control apparatus and method for a numerical control system
US4100597A (en) * 1976-04-02 1978-07-11 International Business Machines Corporation Computer controlled distribution apparatus for distributing transactions to and from controlled machine tools having means independent of the computer for completing or stopping a tool function initiated by a computer transaction
US4472783A (en) * 1980-07-21 1984-09-18 Kearney & Trecker Corporation Flexible manufacturing system
CA1171942A (en) * 1980-07-21 1984-07-31 Richard Johnstone Flexible manufacturing system
JPS57127207A (en) * 1981-01-30 1982-08-07 Toyoda Mach Works Ltd Numerical controlling system
EP0059170A1 (de) * 1981-02-24 1982-09-01 Bystronic Maschinen AG Verfahren und Vorrichtung zur Steuerung der Bewegung eines Einrichtungsteils
US4423481A (en) * 1981-05-26 1983-12-27 Rca Corporation Numerically controlled method of machining cams and other parts
US4446525A (en) * 1981-07-20 1984-05-01 Allen-Bradley Numerical control with paramacro capability
FR2514530B1 (fr) * 1981-10-09 1987-06-19 Lemoine Cie Ets Procede de saisie de donnees representatives de la forme d'un objet
DE3640987C1 (de) * 1986-12-01 1993-04-29 Agie Ag Ind Elektronik Numerisches Steuersystem fuer hochdynamische Prozesse
NL8700725A (nl) * 1987-03-27 1988-10-17 Optische Ind De Oude Delft Nv Werkwijze en stelsel dienende om een voorwerp, meer in het bijzonder een bewerkingsorgaan, een ruimtelijk gegeven doelbaan te laten volgen onder gebruikmaking van een met betrekking tot het voorwerp voorlopende waarnemingsfunctie.
JPH02146607A (ja) * 1988-11-29 1990-06-05 Fanuc Ltd Nc移動指令補間方式
US5388268A (en) * 1992-09-18 1995-02-07 Hewlett-Packard Company Methods of indicating states of software processes cooperating on a single task
US5438522A (en) * 1992-12-18 1995-08-01 Cincinnati Milacron Inc. Method and apparatus for sub-span interpolation
DE19650878C1 (de) * 1996-12-07 1998-07-30 Richter Hans Verfahren zum Regeln der Bewegungen mindestens eines Antriebselements eines Industrieroboters
DE10043636A1 (de) * 1999-09-08 2001-03-15 Heidenhain Gmbh Dr Johannes Verfahren und Schaltungsanordnung zur Erzeugung von Lagesollwerten für einen Lageregelkreis einer numerisch bahngesteuerten Maschine
US8200354B2 (en) 2006-04-21 2012-06-12 The Boeing Company Assembly task verification system and method
CN105243234B (zh) * 2015-11-02 2018-08-24 中山大学 一种保周长的曲线细分方法及系统

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3416056A (en) * 1960-06-04 1968-12-10 Fujitsu Ltd Programmed digital motor control for a machine tool using a pulse distribution technique
NL282618A (de) * 1961-08-31
US3473157A (en) * 1965-12-23 1969-10-14 Universal Drafting Machine Cor Automatic drafting-digitizing apparatus
US3465298A (en) * 1966-10-26 1969-09-02 Bunker Ramo Time shared automatic machine tool control system
US3544972A (en) * 1967-12-13 1970-12-01 California Computer Product In Digital plotting system
US3573738A (en) * 1968-01-15 1971-04-06 Ibm Demand computer system for machine tool control

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3722084A1 (de) * 1986-07-04 1988-01-07 Mitsubishi Electric Corp Numerisch gesteuerte einrichtung

Also Published As

Publication number Publication date
FR2106619A1 (de) 1972-05-05
US3720814A (en) 1973-03-13
GB1369263A (en) 1974-10-02
CA971250A (en) 1975-07-15
GB1369262A (en) 1974-10-02
FR2106619B1 (de) 1978-06-02

Similar Documents

Publication Publication Date Title
DE2146627A1 (de) Steuersystem für mehrere numerisch gesteuerte Werkzeugmaschinen
DE2636148C2 (de) Verfahren zur Bahnsteuerung eines Elementes mittels linearer oder zirkularer Interpolation
EP0246422B1 (de) Vorrichtung zur Gewinnung von Werkstückkonturen
DE1181461B (de) Adressenaddierwerk einer programm-gesteuerten Rechenmaschine
DE4014594A1 (de) Cad/cam-einrichtung
DE3238360C2 (de)
DE1303071B (de)
DE2927413A1 (de) Elektronenstrahl-belichtungsvorrichtung
DE1549438C3 (de)
CH372732A (de) Steuereinrichtung für einen Servomechanismus
DE2164793A1 (de) Verfahren und Datenverarbeitungsanlage zur Steuerung einer Vielzahl von Eingabe/ Ausgabe-Einheiten mittels eine Zentraleinheit
DE1588093A1 (de) Anordnung zum automatischen Steuern von Werkzeugmaschinen
DE1948490C3 (de) Schaltungsanordnung zur numerischen Steuerung der Bewegung eines verstellbaren Organs längs einer Bahnkurve, insbesondere zur numerischen Steuerung der Bewegung des Werkzeug- oder Werkstückträgers einer Werkzeugmaschine
DE1966794A1 (de) Steuerungssystem
DE2103049C3 (de) Vorrichtung eines numerisch gesteuerten Folgesystems
DE2632278C2 (de) Verfahren zur Interpolation der Bahn eines bewegbaren Teils einer numerisch gesteuerten Maschine
DE2147415B2 (de) Verfahren zum Herstellen eines Programmträgers
DE1923917C3 (de) Werkzeugmaschinenantriebssteuerung mittels eines Rechners
DE1538408B2 (de) Numerisch arbeitende programmsteuerung zur stetigen bahnsteuerung fuer maschinenantriebe
DE1549399A1 (de) Verfahren und System zur grafischen Aufzeichnung von Kurvenzuegen
DE1763875A1 (de) Werkzeugmaschinensteueranlage
DE2531298A1 (de) Numerisches steuersystem
DE3609056C2 (de)
DE1226641B (de) Statischer Zaehler zum Vor- und Rueckwaertszaehlen von Impulsen
DE3706275C2 (de)

Legal Events

Date Code Title Description
OD Request for examination
OHW Rejection