DE1563596C3 - Positionierungseinrichtung für einen beweg ichen Teil einer Arbeitsmaschine, insbesondere Werkzeugmaschine - Google Patents

Positionierungseinrichtung für einen beweg ichen Teil einer Arbeitsmaschine, insbesondere Werkzeugmaschine

Info

Publication number
DE1563596C3
DE1563596C3 DE19661563596 DE1563596A DE1563596C3 DE 1563596 C3 DE1563596 C3 DE 1563596C3 DE 19661563596 DE19661563596 DE 19661563596 DE 1563596 A DE1563596 A DE 1563596A DE 1563596 C3 DE1563596 C3 DE 1563596C3
Authority
DE
Germany
Prior art keywords
positioning
signal
interpolator
speed
phase
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
DE19661563596
Other languages
English (en)
Other versions
DE1563596A1 (de
DE1563596B2 (de
Inventor
Auf Nichtnennung Antrag
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.)
Telecom Italia SpA
Original Assignee
Ing C Olivetti and C SpA
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 Ing C Olivetti and C SpA filed Critical Ing C Olivetti and C SpA
Publication of DE1563596A1 publication Critical patent/DE1563596A1/de
Publication of DE1563596B2 publication Critical patent/DE1563596B2/de
Application granted granted Critical
Publication of DE1563596C3 publication Critical patent/DE1563596C3/de
Expired legal-status Critical Current

Links

Description

Die Erfindung betrifft eine Positionierungseinrichtung für einen beweglichen Teil einer Arbeitsmaschine, insbesondere Werkzeugmaschine, längs einer oder mehrerer Achsen, die von einer diskontinuierlichen Positionierungsbefehle liefernden Programmeinheit gespeist wird und einen Interpolator aufweist, der in aufeinanderfolgenden Interpolationszyklen Positionierungsinkremente errechnet, für jede der Achsen einen die Positionierung des beweglichen Teils durchführenden Servomechanismus speist, und einen Sender sowie eine von der Programmeinheit gespeiste, mit dem Speicher verbundene arithmetische Einheit enthält.
Es ist eine numerische Steuervorrichtung bekannt, bei der für jede Achse eine Anzahl von Impulsen zwecks Steuern des betreffenden Servomechanismus erzeugt wird, wobei die Impulse proportional zur Differenz der beiden Endkoordinaten eines Laufsegments des beweglichen Teils sind (DT-ÄS 11 29 592). Die Information der erforderlichen Geschwindigkeit wird dazu verwendet, um für jede Achse einen Multiplikator zu errechnen, damit die den Servomechanismus speisende Impulsmenge definiert werden kann. Aus diesem Grund ist diese Vorrichtung nicht in der Lage, die erforderliche Geschwindigkeit durch irgendeine Beschleunigung im Startabschnitt oder Verzögerung im Stoppabschnitt : eines Segments zu modulieren, wodurch sie in diesen Abschnitten keine zuverlässigen Operationen durchführen kann.
Auch ist ein numerischer Integrator für eine digitale Bewegungssteuerung bekanntgeworden, bei dem sich das bewegende Teil entlang einer einzigen Koordinate bewegt und bei dem die Beschleunigung, die Verzögerung und die Höchstgeschwindigkeit in besonderen Zählern festgelegt wird (AEG-Sonderdruck »Ziffernintegrator für digitale Wegregelung«, vom Juni 1965, S. 1 bis 3, Nr. 4303601). Ein derartiger Integrator, der auch kein Interpolationssystem aufweist, ist für ein sich bewegendes Teil vorgesehen, das für den Transport von Menschen ausgebildet ist, und kann ein sich bewegendes Teil einer Werkzeugmaschine nicht entlang mehr als einer Achse mit sehr hoher Genauigkeit steuern.
Es ist weiterhin eine numerische Steuervorrichtung bekannt, bei der die erforderliche Geschwindigkeit des beweglichen Teils auf der Basis der Differenz zwischen den Koordinatenwerten von zwei aufeinanderfolgenden Interpolationsschritten errechnet und unter der Steuerung einer Rückkoppelungsvorrichtung, die die tatsächliche Geschwindigkeit feststellt, eingestellt wird, wodurch die Geschwindigkeit immer genau proportional zu dieser Differenz ist (DT-AS 1169 007). Diese Vorrichtung kann autch die benötigte Geschwindigkeit nicht modulieren und weist im wesentlichen den gleichen Nachteil wie die vorstehend beschriebenen Vorrichtungen auf.
Der Erfindung liegt die Aufgabe zugrunde, eine Positionierungseinrichtung der eingangs genannten Art zu schaffen, die in der Lage ist, über einen geradlinigen Bahnabschnitt die Weglinie zwischen zwei aufeinanderfolgenden Punkten zu interpolieren, so daß trotz der Speisung der Positionier-Steueranordnung mit intermittierend gelieferten Daten eine stetige Stellungssteuerung ermöglicht wird, ohne daß besondere Mittel für das Beschleunigen des zu verstellenden Maschinenteils am Startpunkt und für sein Abbremsen vor dem Zielpunkt erforderlich sind, ohne daß Sprünge, Schwingungen oder Lageungenauigkeiten im Zusammenhang mit Geschwindigkeitsänderungen des zu verstellenden Maschinenteils auftreten körinen und ohne daß besonders komplizierte, zusätzlich durchzuführende Programmierungsarbeiten erforderlich sind.
Diese Aufgabe wird erfindüngsgemäß dadurch gelöst,.
daß der Interpolator ferner ein Register in dem Speicher zum Speichern der Koordinaten-Differenzen des von der Programmeinheit hinsichtlich seiner Koordinaten gelieferten Zielpunkts und Ausgangspunkts enthält, ferner eine Verschiebeeinrichtung zum Verschieben der Koordinaten-Differenzen in dem Register zur Bestimmung von den Koordinaten-Differenzen proportionalen Pdsitioriierinkrernenten für jede Achse in der Weise, daß der bewegliche Teil sich längs einer geraden Linie zwischen' den beiden Punkten verschiebt, sowie logische Vergleichskreise zum Vergleich vorbestimmter, von der Programmeinheit gelieferter Daten für die maximale Geschwindigkeit und für die Koordinaten des Ankünftspunkts mit der Ist-Geschwindigkeit und Stellung des beweglichen Teils zwecks Modulation der Geschwindigkeit des beweglichen Teils gemäß einer vorgegebenen Bewegungsablaufvorschrift und einen logischen Schaltkreis, der auf die logischen Vergleichskreise anspricht, indem er die
arithmetische Einheit zur Ansammlung der Positionierinkremente für jede Achse in einem anderen Register des Speichers zusätzlich zu den Ist-Koordinaten des beweglichen Teils einstellt.
Die mit der Erfindung erzielten Vorteile bestehen insbesondere darin, daß ein Interpolationssystem mit einer Einrichtung zum Modulieren der Geschwindigkeit nach einem vorbestimmten Bewegungsgesetz bereitgestellt wird, um plötzliche Bewegungen oder Arretierungen der Teile zu vermeiden. ι ο
Ein Ausführungsbeispiel der Erfindung ist in der Zeichnung dargestellt und wird im folgenden näher beschrieben. Es zeigt
F i g. 1 ein Beispiel einer von der erfindungsgemäßen Anordnung gesteuerten Bewegungsbahn,
F i g. 2, 3, 4 und 5 mögliche Geschwindigkeitsdiagramme entlang einer Verschiebungsachse der Anordnung gemäß der Erfindung,
F i g. 6 die Zeitsteueranordnung in dem Interpolator der erfindungsgemäßen Anordnung,
F i g. 7 die den Vorschub des Programmbandes der erfindungsgemäßen Anordnung steuernde Einheit,
Fig.8 eine in der erfindungsgemäßen Anordnung vorgesehene logische Schaltung zur Feststellung von Programmlesefehlern,
F i g. 9 die Programmeinheit der erfindungsgemäßen Anordnung,
Fig. 10 ein Ziffernzählwerk und einen Transcoder der erfindungsgemäßen Anordnung,
F i g. 11 einen Serienspeicher der erfindungsgemäßen Anordnung,
Fig. 12 den mit Lese- und Schreibregistern versehenen Informationsspeicher der erfindungsgemäßen Anordnung,
Fig. 13 zwei Addierwerke der erfindungsgemäßen Anordnung,
F i g. 14 eine logische Schaltung zur Steuerung der Dateneingabe und der Berechnung des Mindestinkrements in der erfindungsgemäßen Anordnung,
F i g. 15 ein allgemeines Blockschaltbild einer bevorzugten Ausführungsform der erfindungsgemäßen Anordnung,
F i g. 16 ein Zeitdiagramm der von der Zeitsteuereinrichtung der erfindungsgemäßen Anordnung gelieferten Hauptsignale,
Fig. 17 und 18 die Anordnung der Bits in den Informationsspeicher-Registern der erfindungsgemäßen Anordnung zu zwei verschiedenen Zeitpunkten,
Fig. 19 ein Zeitdiagramm der Hauptsignale, die die Dateneingabe in den Interpolator der erfindungsgemä-Ben Anordnung steuern, ;
F i g. 20 und 21 Zeitdiagramme der Hauptsignale, die während der Eingabe von Geschwindigkeitsstellen bzw. von Koordinatenstellen in den Interpolator der erfindungsgemäßen Anordnung vorhanden sind,
Fig.22 ein Zeitdiagramm einiger Signale, die die Interpolations-Operationen in der Anordnung gemäß der Erfindung steuern,
Fig.23 und 24 logische Netzwerke, die die Berechnung des Geschwindigkeitsinkrements in dem Interpolator der erfindungsgemäßen Anordnung konditionieren, ■-< .;*...
F i g. 25 ein Zeitdiagramm der Hauptsignale, die die Operationen des Interpolators in der erfindungsgemäßen Anordnung steuern,
F i g. 26, 27, 28, 29 und 30 logische Schaltungen, die die Operationen zur Veränderung der Beschleunigung in der erfindungsgemäßen Anordnung steuern.
Allgemeine Beschreibung
Die erfindungsgemäße Positionierungsanordnung ermöglicht die stetige Positioniersteuerung des beweglichen Teils einer Werkzeugmaschine oder einer ähnlichen Maschine, z. B. einer Zeichen- oder Meßmaschine, über einen für jede Achse getrennt vorgesehenen Servomechanismus, der in der Lage ist, den beweglichen Teil unter der Steuerung von in einem Programm gespeicherten und der Anordnung kontinuierlich gelieferten Positionierbefehlen in die richtige Stellung zu bringen.
In der folgenden Beschreibung wird auf eine Werkzeugmaschine Bezug genommen, in der dieser bewegliche Teil an zwei oder mehreren Achsen entlang verschiebbar ist. Beispielsweise wird angenommen, daß Verschiebungen des beweglichen Teils an zwei Achsen (X, Y oder X, Z oder Y, Z) entlang möglich sind. Der bewegliche Teil kann das in bezug auf ein feststehendes Werkstück zu verschiebende Werkzeug der Maschine oder, umgekehrt, das in bezug auf das feststehende Werkzeug sich verschiebende Werkstück sein.
Es wird angenommen, daß der bewegliche Teil Verschiebungen längs einer ununterbrochenen Weglinie (die auf der Ebene der Achsen X und Y liegt) ausführt, die durch einen in geradlinige Abschnitte gebrochenen Linienzug approximiert wird, dessen Eckpunkte auf der idealen ununterbrochenen Weglinie liegen und von Punkten gebildet werden, die durch ein aufgezeichnetes Programm bestimmt werden. Somit bewegt sich der bewegliche Teil zwischen jeweils zwei aufeinanderfolgenden Punkten des Programms entlang einer geradlinigen Bahn (Fig. 1).
Die Vorbereitung des Programms wird in der gleichen Weise wie für eine Zweipunkt-Positioniersteuerung ausgeführt. Für jeden geradlinigen Abschnitt Pl-P2, P2-P3,... der Weglinie genügt es, die Koordinaten der Endpunkte und die Vorschubgeschwindigkeit anzugeben.
Im allgemeinen kann die Vorschubgeschwindigkeit am Anfang des registrierten Programms und allemal wenn ihr Wert modifiziert wird, angegeben werden, weil es genügt, den Interpolator der erfindungsgemäßen Anordnung mit einem Informationsspeicher zu versehen, aus dem die Vorschubgeschwindigkeit für alle Abschnitte der Weglinie, für die sie gültig ist, abgerufen werden kann. Deshalb besteht das registrierte Programm aus einer Reihe von Programmblöcken, von denen jeder eine Folge von Datenzeichen folgenden Typs aufweist: IX - IV- KlV- K2V - K3 V - KA V -K5V- IX- SX- KiX- K2X- K3X- KAX-K5X- K6X- KlX-IY- IV- KlV- K2V-K3V- KAV- K5V- IY- SY-KiY- K2Y- K3Y- KAY- K5Y- K6Y- KlY- CA,wobei IV, IX, IYBezugssymbole sind, die angeben, daß sich die folgende Information auf die Geschwindigkeit V bzw. die Achse X bzw. die Achse Y bezieht; die Zeichen SX und SY geben das algebraische Vorzeichen der zu der Achse X bzw. Y des Zielpunkts des von dem beweglichen Teil zu durchfahrenden geradlinigen Wegabschnitts gehörenden Koordinaten an; die Zeichen K1 Vbis K 5 Vstellen die fünf Dezimalziffern einer den Wert der Geschwindigkeit V definierenden Zahl dar; die Zeichen KIX bis K7X bzw. K1Y bis KlY stellen sieben Dezimalziffern einer Zahl dar, die den Wert der Koordinaten definiert, die zu der Achse X bzw. Y dieses Zielpunktes gehören; CR ist ein Endblockzeichen, das das Anlaufen des Interpolators
bestimmt, um den in der Datenfolge desselben Blocks enthaltenen Positionierbefehl auszuführen.
Vor der Reihe von auf eine Verschiebeachse sich beziehenden Zeichen oder vor dem Zeichen CR können besondere Zeichen AUi 4-i-AUN eingesetzt werden, um die Nebenfunktionen (Drehzahl und Drehrichtung des Spannfutters, Schmierung, automatischer Werkzeugwechsel usw.) der Werkzeugmaschine zu steuern.
Die sieben Zeichen KiX bis K7Xbzvt. KiY bis K 7 Kgestatten die Darstellung von Dezimalwerten der ι ο zu der Achse X bzw. Y gehörenden Koordinaten zwischen 1 μηι und 10 m, wobei diese Werte ausreichen, um diese Koordinaten mit der gewöhnlich geforderten Annäherung voreinzustellen (Vorpositionierung) und um die Koordinaten der maximalen Bewegungsseite darzustellen. Auch die Zeichen KlV bis K5V sind weitgehend ausreichend, um die in Werkzeugmaschinen normalerweise verwendeten Geschwindigkeitswerte darzustellen, wie in der folgenden Beschreibung noch ausführlich dargelegt wird. '
Deshalb bestehen die in den Interpolar als einzigen Programmblock eingegebenen Daten nur aus der Vorschubgeschwindigkeit und aus den Koordinaten des Zielpunktes. Die weitere Information, die erforderlich ist, um den Weg des beweglichen Teils zwischen dem Startpunkt und dem Zielpunkt linear zu interpolieren, wird von dem Interpolar gemäß der Erfindung in der im folgenden beschriebenen Weise errechnet.
Die von dem beweglichen Teil der Maschine entlang einem geradlinigen Wegabschnitt zwischen einem Startpunkt Pi (xi, yi) und einem Zielpunkt P2 (x2, y2) auszuführende Bewegungsart ist im wesentlichen die folgende: von dem Startpunkt Pi wird der bewegliche Teil beschleunigt werden, bis er die höchste zulässige Vorschubgeschwindigkeit erreicht; anschließend fährt er mit gleichbleibender Geschwindigkeit, und schließlich verzögert er seine Geschwindigkeit in einer bestimmten Entfernung vom Zielpunkt, um den Zielpunkt P 2 selbst mit Nullgeschwindigkeit zu erreichen. Diese Art der Bewegung ist in Fig.2 dargestellt, in der nur auf die Bewegungen entlang der Achse X Bezug genommen wird, die auf der Abszisse angegeben sind, während die Werte der Geschwindigkeit VX entlang dieser Achse in dem durch die Koordinaten χ 1 und χ 2 bezeichneten Abschnitt auf der Ordinate angegeben sind. Ein entsprechendes Diagramm gilt auch für die Verschiebung entlang der Achse Y. Gemäß einer bevorzugten Ausführungsform der Erfindung werden die Abschnitte zwischen den Koordinaten χ 1 und xa sowie zwischen den Koordinaten xv und xd mit konstanter Beschleunigung bzw. mit konstanter Verlangsamung zurückgelegt. Um den zwischen zwei Punkten Pi und P 2, die die Enden eines als geradlinig programmierten Abschnitts darstellen, zurückgelegten Weg tatsächlich geradlinig zu machen, muß das Verhältnis zwischen den Inkrementen dx, dy der beiden Koordinaten χ und y, die in dem gleichen Zeitabschnitt erzielt werden, stets gleich dem Verhältnis der zwischen den beiden Endpunkten liegenden und an den Achsen X, Y( F i g. 1) entlang gemessenen Strecke (x2-xi) und(y2-yi) sein, d.h.
■■■ dx_ _;_xl-^xi;'; V ■■'"'■■'"
.■■· . dy ~ y2-y\ .*.."·■/
wobei dx und dy die Inkremente der Koordinaten x, y (Positionsinkremente) angeben, die sich in dem erwähnten Zeitabschnitt ergeben. Deshalb stehen auch die momentanen Geschwindigkeiten sowohl als auch die momentanen Beschleunigungen entlang dieser beiden Achsen in demselben Verhältnis zueinander.
Um den geradlinigen Weg zwischen Pi und P2 mit einer Vorschubgeschwindigkeit gemäß dem Diagramm der F i g. 2 zurückzulegen, ist es notwendig, eine Reihe von Berechnungen durchzuführen, die von dem Interpolator entsprechend den im folgenden näher erläuterten Kriterien ausgeführt werden.
Der Interpolator arbeitet zyklisch, wobei DT die konstante Zeitdauer eines Interpolationsumlaufes ist.
Zuerst soll die Bewegungskomponente entlang der Achse X untersucht werden. Dabei soll angenommen werden, daß χ 1 die Koordinate des Startpunktes P1 der von dem beweglichen Teil zurückgelegten geradlinigen Strecke, χ 2 die Koordinate des Ankunftssendpunktes P 2, xn die Koordinate desjenigen Punktes auf der Weglinie zwischen Pi und P2, an dem sich der bewegliche Teil in dem Augenblick Tn befindet, in welchem der Λ-te Interpolationsumlauf beginnt, Dxn das Inkrement von xn während des (n — 1.) Interpolationsumlaufs (dieses Inkrement, das später als Positionsinkrement bezeichnet wird, ist der momentanen Geschwindigkeit Vx entlang der Achse X annähernd proportional, da DT konstant ist), hx das Inkrement von Dxn während eines Interpolationsumlaufes in der Beschleunigungsphase Ti und in der Verlangsamungsphase f 3 (dieses Inkrement ist der momentanen Beschleunigung entlang der Achse X annähernd proportional, da DT konstant ist) und DxM eine vor Beginn der Interpolation festgelegte Konstante ist, die das für die Koordinate xn höchstzulässige Inkrement, d. h. nach den vorangehenden Ausführungen, die höchstzulässige Geschwindigkeit entlang den Achsen X, VxM angibt. Während der gesamten Bahninterpolation zwischen xi und χ2 muß der Interpolator die Bedingung
Dxn Dxn
x2-x\
yl-yl
erfüllen, um die Weglinie geradlinig zu machen.
Während der Anfangsphase Ti (F i g. 2) konstanter Beschleunigung arbeitet der Interpolator außerdem nach den folgenden Formeln
Dx(n + 1) = Dxn+ /ix,
χ (n + 1) == xn + Dx (h +-1).
Die Formel (3) legt fest, welche x(n +1) der bewegliche Teil am Ende des λ-ten Interpolationsumlaufes einnehmen muß, und zwar auf der Basis der zu Beginn dieses Umlaufs eingenommenen Position xn.
Die Formel (2) bestimmt auf der Basis des Positionsinkrements während des vorhergehenden Interpolationsumlaufs den Wert des in dem gegenwärtigen n-ten Interpolationsumlauf zu verwendenden Positionsinkrements (d. h. Geschwindigkeit) Dn(n +1).
Da hx konstant ist, ist es klar, daß die Formel (2) gewährleistet, daß die Wegstrecke (xa — xi) mit einer mit hx verhältnisgleichen konstanten Beschleunigung zurückgelegt wird.
Während dieser Anfangsphase Π werden außer den durch die Formeln (1), (2) und (3) bezeichneten Operationen noch weitere Operationen ausgeführt, um einige Daten zu errechnen, die zur Bestimmung der
509 585/8
Zeitpunkte notwendig sind, an denen in dem Schaubild der F i g. 2 Beschleunigungsänderungen stattfinden:
M- I
Dxn = 2_ Dxn + Dxn.
ι' ι
>_ Dxn + Dxn = Pxn. X2-Xn = Rxn. Dxn > DxM.
(4)
(5)
(6)
(7)
Die Operation (4) definiert den Wert der von dem beweglichen Teil vom Startpunkt xi des in Rede stehenden geradlinigen Wegabschnitts bis zum Ende des (n — 1.) Interpolationsumlaufs zurückgelegten progressiven Distanz
xn χ 1 =^2
die von der am Ende des (n — 2.) Interpolationsumlaufs zurückgelegten progressiven Distanz
11-1
Dxn
und von dem in dem (n — 1.) Interpolationsumlauf erfolgten Positionsinkrement abgeleitet ist.
Die Operation (5) definiert den Wert einer fiktiven Distanz Pn, die der um das letzte Inkrement Dxn der Koordinate χ angewachsenen progressiven Distanz
Dxn = χ« — χ 1
35
40
gleich ist.
Die Operation (6) definiert den Wert Rxn der restlichen Distanz, die von dem beweglichen Teil am Ende des (n — 1.) Interpolationsumlaufs noch zurückzulegen ist, damit es den Endpunkt χ 2 erreicht.
Außerdem wird während der gesamten bei konstanter Beschleunigung verlaufenden Phase Tl für jeden Interpolationsumlauf die Vergleichsoperation (7) ausgeführt, d. h., es wird geprüft, ob die augenblickliche Geschwindigkeit (Positionsinkrement) Dxn die höchstzulässige Geschwindigkeit DxM, d. h. VxM, überschritten hat oder nicht.
Außerdem werden von dem Interpolator während der Phase Ti den Operationen (4), (5), (6) und (7) analoge Operationen für die Achse Y ausgeführt, die man durch einfache Substitution von χ durch y aus (4), (5), (6) und (7) erhält.
Die . Anfangsphase 'Ti konstanter Beschleunigung endet am Ende des Interpolationsumlaufs, in dem sich die Ungleichung (7) entweder für die Achse X oder für die Achse Vergibt. Genauer gesagt, die Phase Ti endet am Ende desjenigen Interpolationsumlaufs, in welchem für die Achse AOder V auf der Basis der Formel (2) ein Inkrement DxM bzw. DyM errechnet worden ist, das größer als das höchstzulässige Inkrement DxM bzw. DyM ist. Im weiteren Verlauf dieser Beschreibung soll das am Ende der Phase Tl errechnete letzte Inkrement mit DxM bzw. DynM (das sind die erreichten Geschwindigkeiten) bezeichnet werden. Es ist zu beachten, daß die Endinkremente DxnM und DynM die maximalen Inkremente DxM bzw. DyM um einen Betrag übersteigen können, der nicht größer als das maximale Inkrement hx bzw. hy ist. Mit anderen Worten, die Phase Ti endet, wenn die höchstzulässige Geschwindigkeit VxM bzw. VyM auf der Achse X bzw. ^erreicht worden ist.
Ferner ist zu beachten, daß es in Abhängigkeit von der Bahnneigung gegenüber den Achsen und von der möglichen Verschiedenheit der für die beiden Achsen zulässigen Höchstgeschwindigkeit vorkommen kann, daß die Ungleichung (7) für die Achse AToder die Achse Fschon vorher eintritt.
Am Ende der Phase Ti repräsentiert die auf der Basis der Formel (4) erhaltene Summe
Dxn
die gesamte am Ende des Interpolationsumlaufes entlang der Achse X zurückgelegte Distanz (xa — χ 1), auf der die zulässige Höchstgeschwindigkeit entlang der Achse A'bzw. ^erreicht oder überschritten wurde.
Die Distanz (xa — χ 1) stellt somit die Distanz dar, die zurückgelegt werden mußte, um bei konstanter Beschleunigung die Höchstgeschwindigkeit zu erreichen. ,
Der Wert PnM der fiktiven Distanz Pn, der der gemäß Formel (5) verlängerten Distanz (xa—xi) entspricht, wird am Ende der Phase Ti in einem speziellen Register gespeichert.
Auf die Anfangsphase Ti konstanter Beschleunigung folgt (s. F i g. 2) die Phase Tl konstanter Geschwindigkeit, in der der bewegliche Teil mit einer Geschwindigkeit gleich DxnM für die Achse X bzw. DynM für die Achse F fortsetzt, die er am Ende der Phase Ti erreicht hat.
In der Phase T2 führt der Interpolator die folgenden Operationen aus:
χ (n + 1) = XH + DxnM. X 2 — xn = Rxn.
Rxn < Pxn M.
(6)
(8)
Die Formel (3') entspricht der Formel (3), mit dem einzigen Unterschied, daß das Positionsinkrement in den aufeinanderfolgenden Interpolationsumläufen konstant und gleich DxnM ist, so daß die Geschwindigkeit ebenfalls konstant ist.
Die Formel (6) ist schon erläutert worden.
Die Ungleichheit (8) wird ermittelt, indem für jeden Interpolationsumlauf die zur Erreichung des Endpunktes χ 2 noch zurückzulegende restliche Distanz Rxn mit der in dem Register gespeicherten fiktiven Distanz PxnMverglichen wird.
Die Phase T2 konstanter Geschwindigkeit endet am Ende des Interpolationsumlaufs, in welchem die Ungleichheit (8) zum ersten Mal auftritt.
Der Phase T2 konstanter Geschwindigkeit folgt (Fig.2) die Phase Γ3 konstanter Verlangsamung, in der der bewegliche Teil mit dem gleichen absoluten Beschleunigungswert (für die beiden Achsen mit hx bzw. hy verhältnisgleich) langsamer wird, der schon in der Beschleunigungsphase Tl verwendet wurde.
In der Phase T3 führt der Interpolator die folgenden Operationen aus:
Dx[n+]) = Dxn-hx.
Dxn < 1 μηι.
(T)
(3)
(9)
Die Operation (2') entspricht, abgesehen von dem Vorzeichen des Geschwindigkeitsinkrements hx, der Formel (2).
Die Vergleichsoperation (9) wird ausgeführt, um auf eine später erläuterte Weise das Ende der Phase konstanter Verlangsamung festzulegen.
Der Vergleich (8) zur Festsetzung des Beginns der Verlangsamung wird ausgeführt, indem die fiktive Distanz PxnM, die auf die im Hinblick auf die während der Beschleunigung zurückgelegte Distanz schon erwähnte Weise vergrößert wurde, an Stelle der letztgenannten Distanz in Betracht gezogen wird, und zwar weil es eine Aufgabe der Erfindung ist, den beweglichen Teil gegen die Möglichkeit zu sichern, die Endposition (x2, y2) mit einer anderen Geschwindigkeit als Null zu erreichen und damit in unzulässiger Weise über den Ankunftspunkt Pl hinauszufahren. In einer Zweipunktsteuerung hätte dies keine Folgen, doch sollte es im vorliegenden Falle vermieden werden, weil die gesamte Bewegungsbahn gesteuert werden soll, da sie beispielsweise zurückgelegt wird, um ein Profil auszuschneiden. Es sei darauf hingewiesen, daß es zur Vermeidung der erwähnten Möglichkeit nicht genügt, die Interpolation abzubrechen und einen Haltebefehl an den beweglichen Teil zu senden, sobald die Distanz (x2-xn) kleiner als die gewünschte Annäherung wird. Tatsächlich kann die zu diesem Zeitpunkt der Verlangsamungsphase erreichte Geschwindigkeit noch so hoch sein, daß der verbleibende Platz zum Anhalten nicht ausreicht. Dagegen ist es zur Vermeidung dieser Möglichkeit notwendig, wie es bereits getan wurde, für die Verlangsamungsphase eine Distanz vorzusehen, die der in der Beschleunigungsphase zurückgelegten Distanz plus eines zusätzlichen Sicherheitsraums entspricht und zum Anhalten ausreicht Da die Koordinate xn in der Phase T2 konstanter Geschwindigkeit um die Inkremente DxnM zunimmt, darf dieser zusätzliche Raum nicht kürzer als DxnMsein.
Da der Beginn der Phase T3 durch Anwendung des mit (8) bezeichneten Vergleichs bestimmt wird (d. h., die Verlangsamung beginnt, sobald die Distanz vom Ankunftspunkt P2 kürzer als die in der Beschleunigungsphase plus DxnM zurückgelegte Distanz ist), hat der bewegliche Teil der Maschine somit Zeit, seine Verlangsamung zu vollenden, bevor er den Endpunkt P 2 passiert. Genauer gesagt, wenn die Phase konstanter Beschleunigung bis zum Anhalten verlängert wird, würde der bewegliche Teil den Ankunftspunkt P2 nicht erreichen und einen Stellungsfehler aufweisen, der höchstens -DxnM für die Koordinate χ und -DynM für die Koordinate/beträgt.
Deshalb ist es erforderlich, die Phase konstanter Beschleunigung nicht bis zürn Anhalten zu verlängern, sondern vorher abzubrechen und durch eine langsame Bewegung zu ersetzen, mit der er sich dem Endpunkt P2 nähert.
Es wäre möglich, diese langsame Annäherungsbewegung solange auszuführen, bis die restliche Distanz x2-xn (bzw. y2-yn) einen Grenzwert erreicht, der niedrig genug ist, um die erforderliche Positionsgenauigkeit zu bekommen, und in diesem Moment die ,,interpolation abzubrechen.
ν! Wenn aber die Geschwindigkeit der Annäherungsbewegung zu niedrig gewählt wurde, geht zuviel Zeit verloren. Wenn diese Geschwindigkeit dagegen zu hoch gewählt wird, kann es vorkommen, daß der Endpunkt während der Annäherungsbewegung passiert wird. Dieser Nachteil kann sich einstellen, weil das Beharrungsvermögen des beweglichen Teils kein rechtzeitiges Anhalten zuläßt, nachdem festgestellt worden ist, daß die restliche Distanz (x2-xn) kleiner als der vorher festgesetzte Grenzwert ist, und weil das in einem Interpolationsumlauf ausgeführte Positionsinkrement Dxn höher als die erforderliche Positionsgenauigkeit ist, so daß es vorkommen kann, daß der bewegliche Teil während eines einzigen Interpolationsumlaufs, zu dessen Beginn er den Endpunkt noch nicht mit der gewünschten Annäherung erreicht hat, diesen Endpunkt passiert, ohne daß es möglich ist, dieses Vorbeifahren vorzunehmen.
Eine bessere Lösung ist in F i g. 2 dargestellt, nach der die Annäherungsbewegung in zwei Phasen Γ4 und T5 unterteilt wird.
Die Phase TA beginnt bei Eintritt der Ungleichheit (9). In dieser Phase T4 führt der Interpolator die folgenden Operationen aus:
χ (n + 1) = xn + Dxn f. x2 xn < 16 [im.
(3") (10)
Die Operation (3") ruft die Bewegung mit konstanter
Geschwindigkeit Vxf hervor, d. h. mit konstanten Positionsinkrementen, die dem Inkrement Dxnf am Ende der Verlangsamungsphase, d. h. beim erstmaligen Eintreten der Ungleichheit (9), entsprechen.
Die Vergleichsöperation (10) endet am Ende der Phase Γ4.
In der Phase T5 tätigt der Interpolator die folgenden Operationen:
X(n+\) = x Xl — xn < 1 μηι.
Die Operation (3'") erzeugt die Bewegung mit konstanter Geschwindigkeit, die Vxo=hx/DT entspricht. Die Wahl dieses Geschwindigkeitswertes ist, wenn auch nicht notwendig,so doch[zweckmäßig.
Die Vergleichsoperation (IQ') hat das Ende der Phase T5 und somit auch das Ende der gesamten Interpolation zur Folge. -':;'';- ';:'":' ;;\"":'".:^-'''" V""''.' ■' " /
Daraus ergibt sich, daß die Phase Γ3 endet, wenn während der Verlangsamungsphase eine ausreichend niedrige Geschwindigkeit erreicht wird, z. B. eine Geschwindigkeit, die gemäß (9) einem Inkrement entspricht, das den Wert 1 jirri hat und sich in einem Interpolationsumlauf ergeben hat Eberiso ist es klar, daß die Phase Γ4 endet, wenn der bewegliche Teil eine vorher festgelegte Distanz vom Endpunkt P2 erreicht hat, wobei diese Distanz gemäß Formel (10) beispielsweise den Wert 16 μπι hat, und daß die letzte Phase T5 endet, wenn der bewegliche Teil gemäß Formel (10') vom Endpunkt aus eine Distanz erreicht, die kleiner als die gewünschte Genauigkeit (angenommen gleich 1 μΐη) ist
Nachdem der bewegliche Teil eine Position erreicht hat, die weniger als 1 μπι (erforderliche Genauigkeit) von dem Endpunkt entfernt ist, wird die Interpolation, wie schon beschrieben, unterbrochen, und der bewegliche Teil kann in seiner Stellung mit bekannten Mitteln, wie z. B. einer Bremsvorrichtung oder einer mechanischen Klemmfeststellung, arretiert werden. Doch wird der bewegliche Teil vorzugsweise von dem mit stetigen Positionsbefehlen gespeisten Servomechanismus selbst in seiner Stellung festgehalten. Zu diesem Zweck kann der Positionsbefehl sowohl aus den letzten während der Interpolation berechneten Koordinaten als auch, vorzugsweise, aus den vom Programm gelieferten Koordinaten des Endpunktes P 2 bestehen.
Außer dem in Fig.2 dargestellten Fall können je nach der zwischen den Punkten Pi und P 2 zurückzulegenden Distanz auch andere Fälle eintreten. Fig.3 zeigt den Fall, in welchem die mit konstanter Geschwindigkeit VxM ausgeführte Bewegung im Geschwindigkeitsdiagramm fehlt, weil die die Verlangsamungsphase einleitenden Bedingungen vor dem Ende der Beschleunigungsphase eintreten. Deshalb weist die Verschiebung des beweglichen Teils der Maschine zwischen den Positionen χ 1 und χ 2 eine zwischen den Positionen χ 1 und xa liegende erste Beschleunigungsphase von einer Dauer Ti auf, an deren Ende die erreichte Geschwindigkeit niedriger als die zulässige oder dieser gleich ist, sowie eine zwischen den Positionen xa und xd liegende zweite nachfolgende Verlangsamungsphase von einer Dauer Γ3. Diesen Phasen folgen die Phasen Γ4 und T5, deren Geschwindigkeit konstant ist und von Phase zu Phase niedriger wird, wie in dem in F i g. 2 dargestellten Fall. Die Position xa wird durch den Eintritt der Verlangsamungsbedingung (8), d. h.
χ 2 — xn <
Dxn + Dxn,
oder durch den Eintritt der entsprechenden Bedingung für die Achse Fbestimmt.
Fig.4 zeigt den Fall, in welchem die Distanz (x2—xi) größer als 16 μηι ist, und zwar während gleichzeitig auch die Ungleichung (9) gültig ist: unter dieser Bedingung wird eine Beschleunigungsphase von *1 bis xa ausgeführt, der eine Phase konstanter Geschwindigkeit Vxf folgt, die ein Positionsinkrement Dxnf aufweist, das konstant und dem gleichen Inkrement Dxn der Beschleunigungsphase gleich ist Anschließend, wenn die Bedingung (10) durch die Gegenwart des beweglichen Teils in der Position xe erfüllt ist, erfolgt eine Phase konstanter Geschwindigkeit von xe bis χ 2, in der Dxn = hx ist.
F i g. 5 zeigt den Fall, in welchem die Differenz (x2—x\) kleiner als 16 μπι ist Hierdurch ist die Bedingung der Ungleichheit (10) unmittelbar erfüllt, so daß die Bewegung zwischen χ 1 und χ 2 mit konstanter Geschwindigkeit Vxo erfolgt, da Dxn = hx ist
Damit sind die die Interpolation bestimmenden Kriterien aufgezeigt worden.
Die . Werte DxM und DyM, die der zulässigen Höchstgeschwindigkeit des beweglichen Teils entlang der Achse X bzw. Y proportional sind, werden, wie schon erläutert, als Daten von der Programmeinrichtung geliefert. Dagegen werden die Werte hx und hy, die der Beschleunigung entlang der Achse X bzw. Y während der Phasen konstanter Beschleunigung und konstanter Verlangsamung proportional sind, aus den Programmdaten errechnet, und zwar aus den Koordinaten der Endpunkte jeder geradlinigen Wegstrecke, wobei zu beachten ist, daß diese Werte immer niedriger sein sollten als der der höchstzulässigen Beschleunigung entlang jeder Achse entsprechende Wert. Gemäß einem bevorzugten Ausführungsbeispiel der Erfindung kann diese Höchstbeschleunigung unter mehreren Werten ausgewählt werden, und zwar je nach Art der verwendeten Maschine und der auszuführenden Arbeit, wie noch näher erläutert werden wird.
Bei der Berechnung der Werte hx und hx, die in der jetzt zu beschreibenden Ausführungsform auch den Wert des maximalen Inkrements entsprechen, das den Koordinaten xn bzw. yn in einem Interpolationsumlauf zugeteilt werden kann, wird auch die gewünschte Winkelgenauigkeit für die von dem beweglichen Teil zurückzulegende geradlinige Bahn berücksichtigt. Es ist in der Tat zu beachten, daß, wenn die Bahn durch eine Interpolation zurückgelegt wird, die man durch Summierung von Positionsinkrementen Dxn, Dyn erhält, welche ein Vielfaches der Werte hx und Λ/sind, jeder Fehler in der Anfangsberechnung von hx und hy die Bahn wohl noch geradlinig aber nicht mit der richtigen Neigung gegenüber den Achsen X und Y verlaufen läßt, da die Bedingung (1) stets erfüllt ist; unter dieser Bedingung fällt der von dem Interpolator errechnete Endpunkt der Bahn nicht mit dem programmierten Endpunkt zusammen. Wenn der Abstand zwischen diesen beiden Endpunkten die entlang jeder Achse höchstzulässige Positionsungenauigkeit nicht überschreiten soll, wird es notwendig sein, die Berechnungsgenauigkeit für hx und hy zweckmäßig zu begrenzen.
Wenn die höchstzulässige Ungenauigkeit von 1 μηι auch am Ende einer Verschiebung P2-Pi, die der größtmöglichen Verschiebung, nämlich 10 m oder ΙΟ7 μπι entspricht, eingehalten werden soll, ist es erforderlich, die Inkremente Axund hy der Koordinaten xn bzw. yn mit einer Annäherung von 10~7 μπι Schreibweise, mit einer Annäherung von 2~24 μπι) zu bestimmen.
Um die Berechnung der Werte hx und hy so durchzuführen, daß
a) ihr Verhältnis gleich
yl-y\ '
d. h. die Formel (1) erfüllt ist,
b) diese Werte mit einer Genauigkeit bestimmt werden, die ausreicht, um die erforderliche Winkelgenauigkeit der Bahn zu gewährleisten,
c) diese Werte kleiner als der der höchstzulässigen Beschleunigung entsprechende Wert sind, werden die folgenden Operationen ausgeführt.
Zunächst werden die Größen (x 2- xi)H und (y2-y\)H berechnet, wobei (x2-x\) und (y2—y\) durch reine, aus jeweils 24 Bits bestehende Binärziffern verkörpert' werden, so daß ihr Wert mit einer Genauigkeit von 2~2* bestimmt wird, mit der, wie schon angezeigt, die Bedingung b) erfüllt wird; H ist eine dimensionslose Konstante, die einer Potenz von 2 entspricht, wie beispielsweise {x2-x\)H und (y2-y\)H mit Sicherheit kleiner als das für die Maschine höchstzulässige Geschwindigkeitsinkrement (Beschleunigung) sind, wobei das letztgenannte Inkre-
ment, wie schon erwähnt, eine an einem Kommutator der Maschine einstellbare Konstante ist.
Anschließend werden die beiden Größen (x2-x\)H und (y2-y\)H gleichzeitig und wiederholt mit 2 multipliziert, bis eine der beiden Größen den der Höchstbeschleunigung entsprechenden Wert an-, nimmt.
Es ist klar, daß die Größen in diesen aufeinanderfolgenden Multiplikationen mit 2 weiterhin die Bedingung a) erfüllen. Doch erfüllen diese Größen auch weiterhin ι ο die Bedingung b), vorausgesetzt, daß während der Durchführung der folgenden Multiplikationen keine Binärziffer verworfen wird.
Ebenso klar ist es, wenn die aufeinanderfolgenden Multiplikationen zu dem vorherbestimmten Zeitpunkt angehalten werden, die Bedingung c) erfüllt ist.
In einer bevorzugten Ausführungsform weist die Anordnung gemäß der Erfindung eine Programmeinheit (F i g. 15), wie beispielsweise einen Streifenleser 57 auf, der einen Interpolator 100 speist, welcher im wesentlichen als Digitalrechner ausgebildet ist. Der Interpolator speist einen Digital-Analog-Umsetzer, der seinerseits den Servomechanismus 102,103 und 104 speist, welcher den beweglichen Teil entlang der Achsen X, Fbzw. Z in die richtige Stellung bringt, wenn angenommen wird, daß die Werkzeugmaschine drei zu steuernde Achsen aufweist.
In dem bevorzugten Ausführungsbeispiel umfaßt die Arbeitsweise der erfindungsgemäßen Anordnung einen Zeitabschnitt, in dem die Programmeinheit 57 die vorstehend beschriebenen Daten in den Interpolator 100 eingibt, d.h. die Koordinaten χ2 und y2 des Endpunktes P 2 der Bahn sowie die Höchstgeschwindigkeit DxM und DyM, mit der diese Bahn zurückzulegen ist. In diesem Zeitabschnitt befindet sich der bewegliche Teil noch an dem Start- oder Ausgangspunkt Pi. Diesem Zeitabschnitt folgt ein zweiter Zeitabschnitt, in dem der Interpolator 100, während der bewegliche Teil und die Programmeinheit sich noch im Ruhezustand befinden, die Berechnung der Werte hx und hy (Geschwindigkeitsinkremente) auf der Basis der vorerwähnten Kriterien vorbereitet. Es folgt ein dritter Zeitabschnitt, in dem die entsprechende Interpolation ausgeführt wird, während die Programmeinheit 57 noch unwirksam ist. In diesem dritten Zeitabschnitt ist der Interpolator 100 wirksam, um die Verstellung des beweglichen Teils in der reellen Zeit zu steuern.
Genauer gesagt, die Servomechanismen 102,103 und 104 sind Stellmechanismen, die nach Empfang eines Positions- oder Stellbefehls in der Lage sind, den beweglichen Teil in die durch den Befehl bezeichnete Stellung zu bringen, wobei die momentane Geschwindigkeit und Beschleunigung der Bewegung durch den Momentanwert des Stellungsfehlers bestimmt werden. Die Stellmechanismen und die Art ihrer Speisung durch den Digital-Analog-Umsetzer 101 sind unwesentlichen von dem in der deutschen - Patentanmeldung 0 11 720 VIIIb/21c der Anmelderin vom T. Oktober 1964 beschriebenen Typ. -;■:;%
Somit ist es offensichtlich, daß, gemäß der Erfindung, die Servomechanismen ihre Stellbefehle mit einer Geschwindigkeit erhalten, die von der Geschwindigkeit der Aufeinanderfolge der einzelnen Interpolationsumläufe abhängt.
In einer bevorzugten Ausführungsform ist jede Verstellachse mit einem Digital-Analog-Umsetzer versehen, dessen Eingang mit dem von dem Interpolator errechneten Ziffernsignal gespeist wird und dessen Ausgang ein analoges Steuersignal an einen Wandler liefert, der die Bewegung des beweglichen Teils der Maschine entlang der entsprechenden Verschiebungsachse steuert.
Wenn der Wandler ein zyklischer Positions-Meßwertumwandler ist, dann genügt es, um den beweglichen Teil der Maschine in die richtige Stellung zu bringen, in jedem Zyklus oder jeder Teilung des Meßwertumwandlers die absolute Position numerisch genau zu bestimmen. Die Verwendung eines Umlaufmeßwertwandlers für jede Verschiebungsachse ermöglicht es, die Anzahl der Binärziffern zu reduzieren, die erforderlich ist, um alle möglichen Stellungen des beweglichen Teils auf der Achse darzustellen. Wenn beispielsweise ein Meßwertumwandler von dem in der US-PS 27 99 833 beschriebenen Typ verwendet wird, der eine feste mehrpolige Windung und zwei mit dem beweglichen Teil der Maschine verbundene bewegliche Windungen aufweist, kann die Position des beweglichen Teils durch die in elektrischen Winkeln ausgedrückte Relativverschiebung zwischen der festen Windung und den beweglichen Windungen dargestellt werden. Wenn angenommen wird, daß die Polteilung der festen Windung 2 mm beträgt und für die Position eine Annäherung von 1 μπι erwünscht ist, werden die zwischen 1 μπι und 2 mm liegenden Positionen durch die 10 niedrigsten geltenden Binärstellen der den Wert der Koordinate repräsentierenden Zahl ausgedrückt, während die anderen am meisten geltenden Binärstellen dieser Zahl bei der Darstellung der Position auf der betreffenden Achse außer Acht gelassen werden können, weil sie lediglich die Anzahl der vollen schon zurückgelegten Teilungen des Positions-Meßwertumwandlers angeben.
In einer anderen bevorzugten Ausführungsform, in der die Anzahl der notwendigen Digital-Analog-Umsetzer reduziert werden soll, kann ein einziger Umsetzer für alle Verschiebungsachsen verwendet werden. In diesem Fall ist es erforderlich, die Informationssignale nach der bekannten Zeitaufteilungstechnik an den zu den verschiedenen Verschiebungsachsen gehörenden Wandler zu senden. Das heißt, die Achsen werden zyklisch adressiert, um ihnen die entsprechenden Signale zu senden; folglich werden die zu demselben Zeitpunkt gehörenden Informationssignale an aufeinanderfolgenden Zeitpunkten an die verschiedenen Achsen geleitet. Dies ist in Fig. 15 symbolisch dargestellt, in der die Schalter 105A-105 Fund 105Zzyklisch geschlossen werden, um den Digital-Analog-Umsetzer zu speisen, während die Schalter 106A", 106 Y und 106Z ebenfalls zyklisch geschlossen werden, um die Stellmotoren 102, 103 und 104 zu speisen. :-
Noch einmal auf den Fall mit nur zwei Verschiebungsachsen Fund Xzurückkommend ist zu bemerken, daß es klar ist, daß es in dem Zeitaufteilungssystem vorkommt, daß der Wert der Koordinate /n durch den einzigen Digital-Analog-Umsetzer 101 mit einiger Verzögerung an den Wandler des zu der Achse Ygehörenden Stellmechanismus gesendet wird, nachdem der Wert der Koordinate xn an den Wandler des zu der Achse X gehöhrenden Stellmechanismus gesendet würde. Um diese Verzögerung zu kompensieren, wird in jedem Interpolationsumlauf zu dem für die Koordinate yn errechneten Wert ein Korrekturinkrement addiert, bevor dieser Wert an den Wandler des über den Umsetzer 101 mit der Achse Ym Verbindung stehenden Stellmechanismus gesendet wird. Beispielsweise beträgt dieses Korrekturinkrement in einem weiter unten
509 585/8
beschriebenen Fall, in dem die Verzögerung einem halben Interpolationsumlauf entspricht, 0,5 Dyn.
Tatsächlich bedient man sich eines äquivaltenten arithmetischen Verfahrens, d. h. der Addition
2yn + Dyn
(H)
wird ausgeführt, und dann wird der Wert jeder die Summe (11) numerisch darstellenden Binärstelle durch 2 dividiert. ι ο
Die bis hierher für den Fall mit nur zwei Verschiebungsachsen Xund ^entwickelten Argumente können direkt auf den Fall mit drei Verschiebungsachsen X, Fund Zangewandt werden.
Genauer gesagt, eine der Formel (1) analoge Formel muß von den Koordinaten xn und zn erfüllt werden. Außerdem wird die Koordinate zn allen Operationen und Vergleichen unterzogen, bevor sie in der Beschreibung des Interpolationsverfahrens untersucht wird. In dem Fall mit drei Achsen erfolgt außerdem an beiden Achsen Y und Z, wie schon in Verbindung mit der Formel (11) für die Achse y erläutert, eine Art von Korrektur, wobei für die Korrekturinkremente der beiden Koordinaten y und ζ selbstverständlich geeignete Werte gewählt werden.
Genauer gesagt, die Korrekturinkremente für die Achsen Y und Z werden so gewählt, daß sie einen Bruchteil des in dem vorangehenden Interpolationsumlaufs angesammelten Inkremente entsprechen. Dieser Bruchteil wird so gewählt, daß er dem Bruchteil des Interpolationsumlaufs gleich ist, der der Verzögerung zwischen dem Zeitpunkt, an dem der zu der Achse Y bzw. Zgehörende Servomechanismus gespeist wird, und dem Zeitpunkt, an dem der zu der Achse X gehörende Servomechanismus gespeist wird, entspricht.
Speicher
Der Interpolator weist einen zyklischen Informationsspeicher auf, der von einer Verzögerungsleitung LDR (Fig. 12), beispielsweise vom magnetostriktiven Typ, gebildet wird, die eine Verzögerung von beispielsweise 2,4 ms hat. Genauer gesagt, der Informationsspeicher ist von dem in der deutschen Patentanmeldung 0 10 686 IXc/42m der Anmelderin vom 2. März 1965 beschriebenen Typ. Deshalb wird er hier nur kurz beschrieben. Bits mit einer Periode von 1 \xs werden in dieser Verzögerungsleitung gespeichert, die somit höchstens 2400 Bits enthalten kann.
Eine Zeitsteuerung ermöglicht es, jedem aus der Verzögerungsleitung kommenden Bit eine besondere Ziffer zuzuordnen, die die Lage des Bits im Inneren des Speichers angibt.
Die Synchronisierung der Verzögerungsleitung LDR wird durch einen Quarzoszillator 1 (Fig.6).mit einer Frequenz von 8 MHz gesteuert, der einen Frequenzteiler 4 speist, dessen Ausgangssignal MAOO eine Rechteckwelle (F i g. 16) mit einer Periode von 1 μβ ist.
Das Zählen des Frequenzteilers 4 kann angehalten werden, indem der Ausgang 2 des Oszillators gesperrt wird. ,·.:.·.:· . .-.■. ■ ■■... ·■■·-..■. ν....-. ,
Die Verzögerungsleitung LDR ist nicht vollständig mit den darin umlaufenden Bits gefüllt; die Anzahl der in ihr zu speichernden Informationsbits beträgt nur 2160, die bei der Nennfrequenz von IMHz nur 2160 μβ einnehmen, gegenüber 2,4 ms, die der eigentlichen Verzögerung der Verzögerungsleitung entsprechen.
Der Frequenzteiler 4 wird von dem ersten aus der Verzögerungsleitung LDR kommenden Bit wirksam gemacht, wenn das Tor 3 durch den Ausgangsimpuls FEAS der Flip-Flop-Schaltung 5 erregt wird, die durch das Ausgangssignal ULIM der Verzögerungsleitung LDR oder durch ein Signal STAR, das später beschrieben wird, abgeschaltet wird. Nachdem der Zeitzähler alle 2160 Binärbezeichnungen des Speichers gezählt hat, wird ein Signal STOP erzeugt, das die Flip-Flop-Schaltung 5 abschaltet und den Ausgang FEAS erregt, der seinerseits den Inhalt des Frequenzteilers nullt. Wenn also das Zählen der Bits der Verzögerungsleitung nicht wirksam gemacht wird, bleibt der Frequenzteil dauernd genullt.
Der Ausgangsimpuls MA 00 des Frequenzteilers 4 definiert die aufeinanderfolgenden Bit-Perioden, die eine Länge von 1 μβ haben. Der Teiler 4 zählt, wie schon erläutert, 2160 Bit-Perioden in jedem Speicherumlauf. Jeder Impuls MAOO definiert auf eine später zu erläuternde Weise die Zeit, in der ein Bit gelesen oder in die Verzögerungsleitung geschrieben wird. Somit kann das den Oszillator 1, den Frequenzteiler 4 und die zum Abschalten des Frequenzteilers verwendete Schaltung 3,5 umfassende Systeme in jedem Speicherumlauf 2160 Binärbenennungen definieren und einen Platz der Verzögerungsleitung freihalten, dessen Länge entsprechend der Veränderung der reellen Verzögerung der Verzögerungsleitung variiert.
Das Ausgangssignal MA 00 steuert einen Zähler 6 mit sechs Ausgängen 7700 bis T/05, die die Eingänge der Ausgaberegister LjEAjB, LEEF, LEIL, LECD (Serienparallel- oder Ableseregister genannt) der Verzögerungsleitung (F i g. 12) erregen. Die Ausgänge 7700 bis 7705 werden in periodischer Aufeinanderfolge erregt, und zwar jeweils während einer Zeitspanne von 1 \is. Wie später noch genau erläutert wird, arbeitet der Zähler 6, um die Serienparallel- und Parallelserienumwandlung der in der Verzögerungsleitung enthaltenen Bits zu verzögern. Wenn der Ausgang MA 00 nicht erregt wird, bleibt das Register 6 im Nullzustand (Ausgang 7700 erregt und alle anderen Ausgänge energielos).
Ein von dem Signal 7700 des Registers 6 gespeister Binärzähler 7 erregt zwei Ausgänge G/00 und G/00, die zwei verschiedene Umläufe des Zählers 6 bestimmt (deren Periode jeweils 6 \ls beträgt).
Auf diese Weise können 12 Informationsbits in die Leseregister der Verzögerungsleitung LDR geleitet werden, und zwar sechs in dem ersten, durch das Signal G/00 = »0« bestimmten Umlauf des Registers 6 und. sechs in dem folgenden zweiten Umlauf des Registers 6, der durch das Signal G/00 = »1« bestimmt wird. Die sechs während des zweiten Umlaufs gleichzeitig in den sechs Leseregistern anwesenden Bits .verkörpern Binärziffern mit demselben Bedeutungswert, die zu 12 verschiedenen Zahlen gehören, welche den Wert von 12 verschiedenen Größen kennzeichnen. Die 12 Bits, die untereinander den gleichen Binärwert haben, werden serienmäßig in der Verzögerungsleitung LDR gespeichert, wobei jedes Bit die Binärziffer einer bestimmten Binärbezeichnung für jede der 12 Zahlen darstellt. Weitere 12 Bits mit gleichem Binärwert, die jeweils die Binärziffer des nächst niedrigeren Binärnennwertes für jede der 12 Zahlen darstellen, werden nach der ersten Gruppe von 12 Bits serienmäßig in der Verzögerungsleitung LDR gespeichert usf. Damit werden die Ziffernwerte der 12 Rechengrößen in verflochtener Form in der Verzögerungsleitung LDR gespeichert.
Genauer erläutert, der Speicher umfaßt 12 Register A, B, C... N für jede Achse X, Y, Z, wobei jedes Register 60 Binärbenennungen D£00-^D£59 umfaßt, alles in allem also genau 3 · 12 -60 = 2160 Binärbezeichnungen. Wenn also die n-te Binärbezeichnung des allgemeinen Registers K durch DEnK angegeben wird, ergibt sich in der Verzögerungsleitung für jede Achse die folgende Anordnung der Binärbezeichnungen:D£00A DEOOB, DEOOC... DEOON; DEOiA, DEOiB, DEOiC... DEOiN;...DE59A, DE59B, w DE59C... DE59N. Drei in dieser Weise angeordnete Gruppen von 12-60 Bits, die zu drei Achsen gehören, liegen in der Verzögerungsleitung hintereinander.
Im folgenden wird die Art und Weise beschrieben, in der die Binärbezeichnungen der verschiedenen Register genau bestimmt werden.
In jeder 12ten μ5 (Periode des Signals GIOO) steuert der Ausgang des Teilers 7 den Binärwertzähler 13 in der Weise, daß dieser einen Schritt weiterschaltet, so daß er von 1 bis 60 zählt und getrennt sowie nacheinander die Ausgänge DEOO bis DE59 erregt. Das Signal DE59 hat die Erregung des Ausgangs RECO der Flip-Flop-Schaltung 11 zur Folge, die den Zähler 13 auf Null bringt, d. h. sein Ausgang DEOO wird wieder erregt. Der Ausgang RECO der Flip-Flop-Schaltung 11 wird dann, wenn der Zähler 13 zu zählen beginnt, durch das Signal DEOi energielos gemacht. Der Zeitvergleich zwischen einigen Ausgangssignalen des Zählers 13 und anderen Zeitsteuersignalen ist in Fig. 16 dargestellt
Die Signale DEOO bis DE59 bestimmen für jedes der 12 Register des Speichers LDR das lte, das 2te,... und das 59te Bit, d. h. die Binärbezeichnungen 0 bis 59.
Die Binärbezeichnungen 1 bis 56, durch die Signale DEOi bis DE56 bestimmt, werden verwendet, um die Ziffernwerte 2~33 bis 2~24 μηι (d.h. die Dezimalwerte 10"10 bis 107μΐη) zu verkörpern, mit denen alle Positionen zwischen 1 μηι und 10 m mit der gewünschten Annäherung von 2~24 μηι dargestellt werden können. Die durch DE33 bestimmte 33te Position entspricht deshalb dem Wert 1 μπι. Es ist klar, daß in den Speicherregistern alle Größen mittels 56 Bits dargestellt werden.
Diese 56 Bits werden in den arithmetischen oder in den Übertragungs- und Vergleichsoperationen berechnet, die von dem Interpolator ausgeführt werden. Dagegen werden die von der Eingabeeinheit eingegebenen Daten, wie später noch erläutert wird, von nur 24 geltenden Bits gebildet, die, wenn die Daten von Koordinaten gebildet werden, die Werte 1 bis 107μηι darstellen. Bei der Eingabe von Daten aus der Programmeinheit in den Speicher werden diese 24 Bits demnach in die 24 dem Nennwert dieser Bits entsprechenden Binärbezeichnungen eingegeben, während die übrigen Binärbezeichnungen rechts und links von den 24 Binärbezeichnungen mit einigen Null-Bits gefüllt werden. So werden, wie beispielsweise in F i g. 17 dargestellt ist, die 24 Bits vonx2 (die zwischen 1 und 224μηι liegende Werte darstellen) in das Register D eingegeben, nämlich in die Binärbezeichnungen von 33 bis 56, die durch die Signale von DE33 bis DE56 bestimmt werden. Auf die gleiche Weise werden die 24 Bits von DxM, die das höchste Inkrement darstellen und jeweils den Werten 2~" bis 2>° μηι entsprechen, in die von den Signalen DE20 bis DE43 bestimmten Binärbezeichnungen 20 bis 43 des Registers B eingegeben.
Ebenso ist es klar, wenn der Interpolator gemäß der Erfindung dazu verwendet wird, eine Werkzeugmaschine zu steuern, der durch den Bereich der Werte von DxM dargestellte Drehzahlbereich übermäßig groß ist. In normalen Anwendungsfällen genügt die Anwesenheit von 14 geltenden Bits in den Bezeichnungen von 30 bis 43, um die Werte des höchsten Inkrements darzustellen, das zwischen 2~3 und 2!0 μίτι liegt. Wenn angenommen wird, daß von dem Interpolator alle 5 ms (Periode des Speicherumlaufs) das Ausgangssignal einer Koordinate xn kommt, erhält man entsprechende Geschwindigkeitswerte zwischen 1,4 und 12,288 m/min, die für alle normalen Verwendungszwecke ausreichend sind. Diese Werte des maximalen Inkrements können mit fünf Ziffern auch in Dezimalschreibweise ausgedrückt werden, wie es schon in der Allgemeinen Beschreibung angenommen wurde.
Die Bezeichnung 57, die durch das Signal DE57 bestimmt wird, verwendet man, um das Vorzeichen der Zahl zu speichern. Genauer gesagt, da an Stelle von negativen Binärzahlen Komplemente verwendet werden, wird die letztgenannte Bezeichnung dazu benutzt, eine positive Zahl von einer komplementierten Zahl zu unterscheiden.
Die durch das Signal DE58 bestimmte Bezeichnung 58 wird zum Speichern der Überträge verwendet.
Die durch das Signal DE59 bzw. DEOO bestimmten Bezeichnungen sind in allen Speicherregistern frei und werden zur Trennung der zu verschiedenen Achsen gehörenden Register, verwendet, so daß die Möglichkeit ausgeschaltet wird, daß die Überträge von einer Achse zur benachbarten überwechseln.
In der Verzögerungsleitung LDR werden zuerst alle auf die Achse X sich beziehenden Informationen (insgesamt 12 · 60 = 720 Bits), dann die auf die Achse Y sich beziehenden Informationen (720 Bits) und schließlich die auf die Achse Zsich beziehenden Informationen (720 Bits) gespeichert Die Anzahl der für die drei Achsen besetzten Binärbezeichnungen des Informationsspeichers beträgt somit 2160.
Der Zähler 13 wiederholt dreimal die Zählung der 60 Binärbezeichnungen, einmal für jede Adresse X, Y, Z. Die zu den drei Adressen gehörenden Zeiten werden durch die Signale INIC, INIP Und INAZ (F i g. 6) bestimmt, die von einem Zähler 14 erzeugt werden, indem dessen Ausgänge INIC, INIP, INAZ zu Beginn jedes Zählvorgangs des Zählers 13 (d.h. wenn das Signal DEOO vorhanden ist) nacheinander erregt werden. ::--r): -..·.■:
Die Signale GAPi (logisches Produkt der Signale GI00, /M4Zund DE59) und GAP2 (logisches Produkt der Signale GI00, INIC, und DEOO) verzögern für jeden Umlauf der Information in der Verzögerungsleitung LDR das Ende bzw. den Beginn dieser Information.
Ein Zähler 15 wird durch das Signal GAP2 gesteuert, das abwechselnd seine Ausgänge GIRIund GIRI erregt. Die Periode des Signals GIRI entspricht somit 2 Umläufen der Information in der Leitung LDR. Diese Periode kennzeichnet die Zeit eines Interpolationsumlaufs. . ■' , ■■' ■■ ■. ■::■·.■"·. ■ :■ '\:-'τ^:·ί-->^^ι<.: ■ ·■■■'.■■
Es ist zu beachten, daß das Signal STOP, das die Stillsetzung der Zähler 6,7,13,14 und 15 bestimmt, erst wirksam wird, wenn das Zählen der in dem Speicher gespeicherten 2160 Informationsbits beendet ist, d. h., wenn die Koinzidenz der Signale GAPi, GI00, 7705 in Gegenwart von MAOO (zweite Halbperiode des von dem Teiler 4 erzeugten Signals) eintritt, wird die Flip-Flop-Schaltung 49 erregt und somit seine Ausgangsleistung FEST wirksam. Bei dem darauffolgenden Signal MA 00, das die Zähler 6,7,13,14 und 15 auf Null
bringt, kann das Signal das Haltesignal STOP erzeugen, indem es die Flip-Flop-Schaltung 5 erregt und damit deren Ausgangsleistung FEAS unwirksam macht, und indem es außerdem die Flip-Flop-Schaltung 49 auf Null \stellt. Damit ist die Speisung von dem Oszillator 1 zu dem Teiler 4 unterbrochen.
Der Zähler 13 wird von zwei Zählern 8 und 9 und von einem Dekoder 10 gebildet. Der Zähler 8 besteht aus acht Binärstufen mit jeweils zwei Ausgängen (einem positiven und einem negativen), d.h. insgesamt 16 Ausgängen, nämlich 0000 bis 0007 und 0000 bis 0007.
Der bis 16 zählende Zähler 8 steuert über eine Verbindung 12 den Zähler 9, indem er alle 16 Perioden des Signals GI00 einen Zählimpuls sendet. Der Zähler 9 zählt bis 4 und besteht aus zwei Binärstufen mit jeweils zwei Ausgängen, d. h. insgesamt vier Ausgängen C008, C008,C009undC009.
Durch eine geeignete Kombination der 64 Ausgänge der Zähler 8 und 9 ermöglicht es der Dekoder 10, die 60 Ausgänge DEOO bis DE59 für den Zähler 13 zu halten. Wenn der Ausgang DE59 wirksam ist, wird der Zähler 8 auf Null gebracht, so daß eine Zählung bis 60 tatsächlich erreicht wird.
Die Register des Speichers haben entsprechende Binärregister, die die Schreibdaten (bei der Eingabe) und die Lesedaten (bei der Ausgabe) statisch parallel machen. Wenn, wie schon erläutert, nur 8 Speicherregister A, B, C, D, E, F, /und L berücksichtigt werden, da 4 dieser Speicherregister (A, E, I und C) in der ersten, durch G/00 = »1« bestimmten Halbperiode durch die Signale 7700, T/02, 7703 und 7704 bestimmt werden, während die übrigen 4 Speicherregister (B, D, Fund L) in der ersten, durch GI00 = »0« bestimmten Halbperiode noch durch dieselben Signale 7700, 7702, 7703 und 7704 bestimmt werden, reichen 4 binäre Serienparallel-Wandler und -Speicher aus, um die Speicherdaten sowohl zu lesen als auch zu schreiben, wobei diese Serienparallel-Wandler und -Speicher in einer ersten Halbperiode als Register A, E, I und C und in einer zweiten Halbperiode als Register B1F1L und D arbeiten.
Deshalb (s. Fig. 12) sind 4 Schreibregister REAB, REEF, REIL und RECD vorhanden, deren Eingänge nur in Gegenwart des Signals 7705 in Tätigkeit gesetzt werden und deren Ausgänge von den Signalen TI 00, 7702, 7703 und 7704 in Tätigkeit gesetzt werden, und es sind auch 4 Leseregister LEAB, LEEF, LEIL und LECD vorhanden, deren Eingänge nur in Gegenwart des Signals 7700 bzw. der Signale 7700, 7702, 7703 und 7704 in Tätigkeit gesetzt werden.
Die logische Summe der Ausgangsinformationen der vier Schreibregister REAB, REEF, REIL und RECD liefert das Signal SCRI, das, mit dem Signal ΜΛ00 verstärkt, das Signal- BOBI wird, welches in den Speicher LDR geht Der Ausgang der Verzögerungsleitung LDR liefert das Signal ULIM,das die vier Leseregister LEAB, LEEF, LEIL und LECD speist Die Ausgangsihformationen GIAB, GIEF, GILL und GlCD von jedem dieser Leseregister geht durch die Übertragungseinheit 51, um den Eingang GUAB, GUEF, GUIL und GUCD des entsprechenden Schreibregisters zu erregend ~<-:.\-■.·-.■■·.:' ■':■■■■ .■■':.■ : -. ■'■ -/^/.r .:..
. Außerdem speisen die Ausgänge GIAB, GIEF, GILL und GICD durch einen Eingabeblock 70(Fi g. 13) zwei Addierer 71 und 72.
Somit ist es klar, daß die Schreibregister REAB, REEF, REIL und RECD zusammen mit den zugeordneten Einheiten einen die Verzögerungsleitung LDR speisenden Parallelserien-Umsetzer bilden, während die Leseregister LEAB, LEEF, LEIL und LECD zusammen mit den zugeordneten Einheiten einen von der Verzögerungsleitung LDR gespeisten Serienparallel-Umsetzer bilden. Für die äußeren Rechengeräte ist die Verzögerungsleitung somit gleichbedeutend mit einem Satz von vier parallel umlaufenden Registern A, F, I, C mit Eingängen GUAB, GUEF, GUIL und GUCD sowie Ausgängen GIAB, GIEF, GILL und GICD, plus weiteren vier parallel umlaufenden Registern B, F, L und D, die mit den ersten vier Registern die Eingänge und Ausgänge gemeinsam haben und ihnen gegenüber um sechs Bitperioden phasenverschoben sind.
Bezugnehmend auf die Achse X ist die Funktion der Speicherregister die folgende.
Das Register A wird während der Interpolation (F i g. 18) verwendet, um die Summe
Dxn
aus der Operation (4) zu speichern, d. h. die bis jetzt zurückgelegte progressive Distanz (xn χ 1).
Das Register B wird bei der Eingabe der Daten aus dem Programmgerät (Fig. 17) verwendet, um das maximale Inkrement DxM (höchstzulässige Geschwindigkeit entlang der Achse X)zu speichern. Der Wert DxM bleibt in dem Register B unverändert, bis von dem Programmgerät ein anderer Wert eingegeben wird.
Das Register'C wird bei der Eingabe der Daten aus dem Programmgerät (Fig. 17) verwendet, um die Koordinate χ 2 des Endpunktes P 2 zu speichern, um die Iog2 H = 33 Binärstellen zu den niedrigsten geltenden Binärstellen hin verschoben ist. Somit enthält das Register C schließlich die Größe H- χ 2, die für die Berechnung des Geschwindigkeitsinkrements hx verwendet wird.
Das Register D wird bei der Eingabe der Daten aus dem Programmgerät (Fig. 17) verwendet, um die Koordinate χ 2 des Endpunktes P 2 zu speichern. Diese Größe bleibt in dem Register D während der ganzen Interpolationszeit unverändert, um die Ausführung der Operation (6) zur Berechnung der noch zurückzulegenden restlichen Distanz zu ermöglichen.
Am Ende der- Interpolation wird der Inhalt des Registers £>auf das Register L übertragen und in diesem zurückbehalten, um als Anfangskoordinate χ 1 für den nächsten geradlinigen Abschnitt verwendet zu werden. Es ist ja bereits erläutert worden, daß das Programm nur die Endkoordinaten der geradlinigen Abschnitte liefert.
Das Register E wird verwendet, um während der Interpolationszeit (Fig. 18) das Geschwindigkeitsinkrement hx zu speichern.
Das zu der Achse Y gehörende Register F enthält während der Interpolationszeit die Größe 2yn, die zur Durchführung der Korrektur nach Formel (11) verwendet wird. ■ ■■-..;;.■.. ·'■· !:
Am Ende der Interpolationszeit (Fig. 17) wird die bis dahin in dem Register C gespeicherte Größe H- χ 2 auf das Register / übertragen. Infolgedessen wird das Register / die Größe H-xi enthalten, die für den nächsten zurückzulegenden geradlinigen Abschnitt gültig ist, da der Endpunkt P2 eines geradlinigen Abschnitts mit dem Standpunkt des darauffolgenden geradlinigen Abschnitts zusammenfällt. Die Größe H-xi wird in dem Register / gespeichert, um die Berechnung von hx zu ermöglichen, die, wie schon beschrieben, vor Beginn der Interpolation ausgeführt wird. Folglich ist das Register / während der
Interpolationszeit (Fig. 18) frei, um die Inkremente Dxn aufzunehmen, wenn sie errechnet sind.
Der Inhalt des Registers L, in das, wie schon erwähnt, die Anfangskoordinate des zurückzulegenden geradlinigen Abschnitts aus dem Register D eingetragen wird, wird während der Interpolation ständig erhöht, so daß das Register L schließlich die aufeinanderfolgenden Werte der augenblicklichen Koordinate xn enthält. Folglich ist es klar, daß das Register L die Servomechanismen speisen kann; es ist in der Tat auch das einzige Speicherregister, dessen Ausgang an Umwandler 101 angeschlossen ist.
In F i g. 17 und 18 zeigen die auf die Register B, Cund D Bezug nehmenden gestrichelten Linien die 24 benachbarten unter den 56 Binärstellen jedes Registers, in die aus der entsprechenden Einheit die relevante gegebene Größe eingegeben wird, während die zu den Registern I und L gehörigen gestrichelten Linien angeben, daß der Inhalt der Register C und D in die entsprechenden Binärstellen der Register / und L übertragen werden, d. h., ohne jede Verschiebeoperation.
Funktion und Inhalt der zu den Achsen Y und Z gehörigen Register entsprechen denen der für die Achse ^beschriebenen Register.
Steuerung der Programmeinheit
Während des automatischen Betriebs sind die Wahlschalter 16, 17, 31 und 24 auf der Schalttafel 50 (Fig. 7), die die Betriebsarten wählen können, von Hand in die Stellung A UTzu bringen.
Wenn die Maschine eingeschaltet ist, wird die Drucktaste RESET betätigt, wodurch das Signal RESE erzeugt wird und alle Flip-Flop-Schaltungen sowie die Zähler auf Null gestellt werden.
Der Beginn der Dateneingabe von dem Band 56 über den Leser 57 und den Entschlüßler 58 erfolgt dann durch Betätigung der Drucktaste START, wodurch das Signal PUVI erzeugt wird, das die Flip-Flop-Schaltung 18 in Tätigkeit setzt. Der Ausgang 19 der Flip-Flop-Schaltung erregt über einen Univibrator 20 und in Gegenwart des von dem Bandleser 57 (Fig.9) kommenden Signale LELE {ά. h. wenn sich das Band in dem Leser befindet und dieser geschlossen ist) den Ausgang VIMA der Flip-Flop-Schaltung 21.
Da der Wahlschalter 16(Fi g. 17) auf AUT steht, erregt das Signal VIMA das Signal BOVI, das die Kette von Univibratoren 22 und 23 in Betrieb setzt. Der Ausgang 24 des Univibrators 23 erregt den Ausgang UNIF der Flip-Flop-Schaltung 25, so daß das Signal RILE (das die Bandablesung verzögert) an dem gleichnamigen Ausgang des Univibrators 26 erzeugt werden kann. Das Signal RILE erzeugt den Univibrator 27, an dessen Ausgang ein Signal A VAN erzeugt wird, das den Zählvorgang des Ziffernzählers 74 (Fig. 10) steuert. Außerdem (F i g. 7) wird das Signal A VAN durch eine Torschaltung 35 zu einem Signal A VAB, das die Speisung des Bandlesers steuert -■- "''"■: —' -·:.-·
In Gegenwart der ZustimmungssighaleJRJSSE [Fehlen des allgemeinen NullungssignalsJ■> ORER [keine Lesefehler] und A UTO [Wahl der automatischen Dateneingabe vom Band]) ist die Torschaltung 35 offen. Die Flip-Flop-Schaltung 25 wird jedesmal, wenn das Bandlese-Verzögerungssignal RILE abwesend ist, durch den erregten Ausgang RILE des Univibrators 26 und durch die gleichzeitige Abschaltung des Ausgangs 24 des Univibrators 23 stromlos gemacht. .
Das Signal AUTO wird durch Erregung der Flip-Flop-Schaltung 28 erzeugt, d. h., wenn die Wahl der Stellung AUT für den Wahlschalter 17 das Signal AUMA hervorruft und das Endrechnungssignal LAFJ
anwesend ist. '■»*
Es wird darauf hingewiesen, daß das Signal LAFI in dem gegenwärtigen Stadium anwesend ist, weil am Ende der einleitenden, RESE erzeugenden Nullungsoperation ein Signal FINE erzeugt wird, das die
ίο Flip-Flop-Schaltung 30 erregt und folglich dessen Ausgang Ly4F/wirksam werden läßt.
Nach der Erregung bleibt die Flip-Flop-Schaltung 28 in diesem Zustand, so daß das Signal AUTO ständig anwesend ist.
Das Signal BOVIerregt auch einen Flip-Flop 29 und macht so sein Ausgangssignal BOA Vunwirksam, so daß das Signal ORER anwesend ist, das die Torschaltung 35
geöffnet hält.
Die Anwesenheit des Signals BOA V bewirkt auch, daß das Signal BOA U anwesend ist, das den Vorschub des Bandes 56 in dem Leser 57 auslöst.
Das Programmband 56 bewegt sich in dem Leser 57 unter der Steuerung des Signals A VAB jedesmal einen Schritt weiter, und nach dem Anhalten des Bandes wird das Codezeichen, das sich vor den Leserfühlern befindet, abgelesen.
Das Signal A VAN dauert beispielsweise 4,5 ms, d. h. eine Zeitspanne, die genügt, um zu bewirken, daß sich das Band einen Schritt weiterbewegt, während das Signal RILE länger dauert, z. B. 15 ms, und infolgedessen das Lesen des Zeichens verzögern, nachdem das Band in der Lesestellung zum Stillstand gekommen ist, so daß die Fühler auf dem Band sich vorbereiten können.
Ferner macht das Signal RILE den Flip-Flop 21 energielos und so das Signal VIMA und folglich das Signal SO Wunwirksam.
Der Flip-Flop 18 bleibt erregt, und jede folgende Betätigung der Drucktaste START bleibt ohne Wirkung.
Auch der Flip-Flop 29 bleibt erregt, so daß das Signal BOAVfehlt und die Signale ORER (das die Torschaltung 35 offen hält) und das Signal BOAU (das die Auslösung des Lesers 57 aufrechterhält) infolgedessen anwesend sind.
Danach wird der Univibrator 26 stromlos, so daß das Signal RILE erzeugt wird, das das Lesen der ersten Zeichen auf dem Band ermöglicht.
Anschließend wird das erste Zeichen gelesen und entschlüsselt. Wenn es sich um Adressenzeichen oder ein Hilfsbefehlszeichen handelt, wird ein entsprechendes Signal wirksam gemacht, und eine statisch parallele Information umgewandelt, während, wenn es sich um ein Zifferzeichen oder ein Vorzeichen handelt, das Zeichen in dem Speicher LDR gespeichert wird.
Am Ende der in dem vorangehenden Absatz beschriebenen Operationen erzeugt die den Interpolator steuernde Steuerungseinrichtung auf jeden Fall ein Signal, das die Weiterschaltung des Bandes um einen Schritt und das Lesen eines neuen Zeichens bewirkt.
Genauer gesagt, das Lesen eines Adressenzeichens, das eins der decodierten Signale A UIV, A UIP und AUIZ hervorruft, erzeugt in Gegenwart der Signale Ä/L£"und BOAUdie Signale A VNA, die in der gleichen Weise wie das Signal BOVI die Weiterbewegung des Bandes steuern. Das Lesen von Hilfsbefehlszeichen AUXi,.. .AUXN(oder auch von leeren Zeichen, d. h. leeres Band oder Löcher auf allen Spuren) ruft das
509 585/8
Signal ORAUhervor, das, in der gleichen Weise wie im vorhergehenden Fall, das Signal AVNA erzeugt. Das Lesen einer Ziffer oder eines Vorzeichens verlangt deren Speicherung in dem Speicher LDR; am Ende dieses Speichervorgangs wird ein Signal ANOi erzeugt, ; das ebenso wie die Signale BOVI und AVNA die Weiterbewegung des Bandes bewirkt. Auch das Lesen eines Geschwindigkeitszeichens ruft ein die Weiterbewegung des Bandes veranlassendes Signal ANOl hervor. Die Erzeugung des Signals ANOi wird in dem to die Dateneingabe, durch ein Programmband behandelnden Teil der Beschreibung erläutert.
Das Lesen des Blockendzeichens DR, das auch ein Interpolationsbeginnzeichen ist, erzeugt das decodierte Signal AUVI, das kein besonderes Signal für den Weitertransport des Bandes erzeugt. Das Band bleibt somit in der Stellung des zuletzt gelesenen Zeichens, und zwar während der ganzen Zeit, die die Steuereinrichtung benötigt, um die Interpolation und die entsprechende Lageverstellung des beweglichen Teils der Maschine auszuführen.
Am Ende der Operationen, die die Interpolation und Lageverstellung für einen Programmblock betreffen, wird das Signal FIPA erzeugt (und zwar wie in dem von den Interpolationsoperationen handelnden Teil der Beschreibung erläutert), das über den auf AUT stehenden Wahlschalter 31 das Signal ANOA wirksam macht, das wiederum, wie die Signale BOVI, AUNA und ANOi, den Weitertransport des Bandes um einen Schritt bewirkt.
Am Ende des vollständigen Programms liest der Leser 57 ein Hilfszeichen, das als Signal AUXM decodiert wird, welches den Flip-Flop 18 und auch den Flip-Flop 29 energielos macht, wobei der Ausgang BOAV des letzteren wirksam wird, um die Signale BOAU (Blockierung des Lesers) und ORER (Abschaltung der Torschaltung 35 und Erregung des Flip-Flops 30) zu erzeugen.
Die Abschaltung des Flip-Flops 30 erfolgt durch das Signal INOR immer, wenn ein Adressenzeichen oder ein Hilfsbefehlszeichen gelesen wird, während seine Erregung durch eins der Signale FINE (Ende eines Interpolationstaktes) und ORER (Fehler oder Programmende) erfolgt.
Das Endrechnungssignal LAFI ist somit während der Zeit abwesend, die die Steuereinrichtung für die Interpolationsoperationen benötigt, wodurch verhindert wird, daß eine unzulässige Handlung der Wahlschalter 16, 17 und 31 während dieser Zeitspanne irgendeine Wirkung auf den Betrieb der Steuereinrichtung ausübt. .
Die Anwesenheit des Signals LAFI (durch Aufleuchten einer Lampe 36 signalisiert) am Ende eines Interpolationstaktes und bei Auftreten eines Fehlersignals ermöglicht es der Programmeinheit, auf die Betriebsart überzuwechseln, bei der die Daten durch Handeinstellung (Wahlschalter 16, 17 und 31 auf CON gebracht) eingegeben werden. In diesem Fall ist das Signal AUMA anwesend, das den Flip-Flop 28 abschaltet und seinen Ausgang AUTO erregt. Letzterer erregt das Signal VEMA oder POMA (je nachdem, ob der Wahlschalter 32 auf VEL oder POS steht), das die Dateneingabe aus den Setzern 59, 60, 61 (die Geschwindigkeit betreffend) und 62 (die Positionskoordinaten betreffend) (F i g. 9) erlaubt.
Auch ist ein halbautomatischer Betrieb möglich, wenn die Wahlschalter 16, 17 und 31 auf SING gestellt werden. Der einzige Unterschied gegenüber der automatischen Arbeitsweise besteht hierbei in der Abwesenheit der Signale AN04 am Ende jedes Interpolationstaktes. Deshalb muß die Bedienungsperson nach jedem durch das Band gespeisten Programmtakt das Lesen des zu dem folgenden Takt gehörenden Datenblocks erneut starten.
Zu diesem Zweck ist die Programmeinheit mit einem vierten Wahlschalter 34 versehen, der ein Signal MASI erzeugt, wenn er auf SING eingestellt wird. Ein Signal GOPA (das das Ende der Verstellbewegung des beweglichen Teils während eines Interpolationstaktes bestimmt) kann durch eine durch das Signal M/45/offen gehaltene Torschaltung den Flip-Flop 18 abschalten. Eine darauffolgende Betätigung der Drucktaste START bewirkt die Erregung des Flip-Flops 18 und infolgedessen die Wiederingangsetzung des Bandlesers analog zu der schon beschriebenen Weise.
Beim Lesen der Zeichen können Fehler vorkommen, die die Fehlersignale ERLEund ERPEerzeugen, welche die Stillsetzung des Bandlesers (F i g. 8 und 9) bestimmen.
Wenn das Lesen eines Zeichens auf dem Band kein decodiertes Signal an den Ausgang des Dekoders 58 (F i g. 9) liefert, fehlt das Signal ORPI (»oder«-Funktion aller decodierten Bandsignale) (F i g. 8), und infolgedessen erregt das durch das Signal STRI verstärkte, wirksam gemachte Signal ORPI den Fehler-Flip-Flop 37, dessen Ausgang ERLE wirksam gemacht wird. Letzterer läßt eine Zeichenfehlerlampe 38 aufleuchten und blockiert, wie schon erwähnt, den Bandleser 57. Das Taktsignal STRI ergibt sich aus dem durch eine Kette von Univibratoren 39 und 40 verzögerten Signal RILE.
Wenn dagegen ein Programmfehler auftritt (z. B. weil die Bedingungen, daß während der von dem Ziffernzähler 74 [ F i g. 10] gelieferten Ziffernzählsignale CIFi bis CIF8 nur Ziffern-, Vorzeichen- oder Geschwindigkeitscodes zu lesen sind und daß während des Ziffernzählsignals CIF9 desselben Ziffernzählers nur der Startcode CR zu lesen ist, nicht eingehalten werden), wird der Flip-Flop 41 erregt und sein Ausgang ERPE wirksam.
Letzterer läßt eine Lesefehlerlampe 42 aufleuchten und blockiert, wie schon erwähnt, die Bandleser 57.
Genauer gesagt, der Flip-Flop 41 wird durch das Signal AUVI (Abwesenheit des decodierten Startsignals) erregt, das während des Ziffernzählsignals CIF9 auftritt und durch das Signal STRI verstärkt wird. Außerdem wird der Flip-Flop 41 durch das Auftreten des Signals ORNU (Abwesenheit von auf Ziffer oder Vorzeichen oder Geschwindigkeit Bezug nehmender decodierter Signale) erregt, das durch das Signal RILE in Gegenwart von BLA V verstärkt wird. Das Signal BLAVwird wirksam gemacht, wenn der Flip-Flop 43 durch das Auftreten des Ziffernzählsignals CIFi abgeschaltet wird. Dieser Flip-Flop 43 wird dann durch eins der Signale VIAP (wirksam gemacht durch den erregten Flip-Flop 18 in Anwesenheit des Signals AUTO), FUN (Ende der Dateneingabe) und ORAU (»oder«-Funktion der Hilfsbefehlssignale) erregt.
Die Flip-Flop-Schaltungen 37 und 41 werden dann durch eins der Signale RESE, LELE (Leser offen oder leeres Band) und A UTO abgeschaltet:
Wie schon erwähnt, wird bei offenem Bandleser 57 oder leerem Band das Signal LELE erzeugt, das die Flip-Flops 18, 29 (F i g. 7), 37 und 41 (F i g. 8) nullt und den Erregereingang des Flip-Flops 21 sperrt. In diesem Zustand bleibt somit jede Betätigung der Drucktaste START ohne Wirkung, und der Weitertransport des Bandes ist blockiert.
Außerdem erregt das Signal LELEeinen Flip-Flop 44, dessen Ausgang AVER erregt bleibt und in diesem Zustand ein Signal BLINhervorruft, das den Ziffernzähler 74 stillsetzt und so die Eingabe jedes Vorzeichens oder Ziffernzeichens blockiert. Es ist zu beachten, daß das Signal BLIN auch durch Lesen eines Adressenzeichens oder eines Hilfsbefehlszeichens erzeugt wird. Das Signal A VER wird dann durch das Signal INOR (F i g. 7 und 9) unwirksam gemacht, d. h. durch das Signal RESE oder durch das Lesen eines Adressenzeichens oder Hilfsbefehlszeichens.
Das Signal AVER wird auch zur Steuerung des Weitertransports des Bandes nach einem Fehler verwendet. Genauer gesagt, wenn ein Fehler auftritt, wird das Signal BOAU erzeugt, das den Bandleser 57 blockiert. Dann öffnet die Bedienungsperson den Leser 57 und prüft das Band, wobei er gegebenenfalls korrigiert, wenn dies möglich ist (wenn der Fehler beispielsweise durch ein oder mehrere unförmige Löcher erzeugt wird, kann die Bedienungsperson diese Löcher verbessern, um sie gültig zu machen). Nach Beseitigung der Fehlerursache legt die Bedienungsperson das Band in dem Leser auf ein Mittelzeichen des Programmblocks, der dem vorangeht, der den Fehler enthielt, dann schließt er den Bandleser, und infolgedessen wird das Signal LELE unwirksam. Durch Betätigung der Drucktaste START erregt die Bedienungsperson wieder den Flip-Flop 29 und löscht so das Sperrsignal BOAU. Das noch vorhandene Signal A VER erzeugt nun das Signal AVNA, welches den Weitertransport des Bandes bewirkt, bis ein Adressen- oder Hilfsbefehlszeichen gelesen wird, das, wie schon beschrieben, den Ausgang A VER der Flip-Flop-Schaltung 44 energielos macht. Von diesem Moment an beginnt wieder die normale Arbeitsweise des Lesers.
Schließlich ist noch zu bemerken, daß, sowie die Maschinenspannung durch irgendeine Störung die Toleranzgrenzen über- bzw. unterschreitet, der Univibrator 45 erregt und so das allgemeine Nullungssignal RESE erzeugt wird, das die Steuereinrichtung auf Null zurückstellt.
Dateneingabe durch ein Programmband
Bevor man das auf Band aufgezeichnete Programm ablaufen läßt, muß der bewegliche Teil der Maschine an den als Programmausgang gewählten Punkt gebracht werden, der im allgemeinen in Übereinstimmung mit einer Nullpunktstellung der Positions-Meßwertumwandler gewählt wird. ■: ; \:ϊ, ■'..^;'-/':". ','."7 '.':■·.
Zu diesem Zweck werden die Wahlschalter 16,17,31 und 34 nach dem Einschalten der Maschine auf MAN (F i g. 7) gestellt: damit ist die Verbindung zwischen der automatischen Steuereinrichtung und der Maschine unterbrochen. Die Handsteuerung der Maschine erfolgt dann durch das Bedienungsfeld. Deshalb wird der bewegliche Teil nach den Kriterien, die in der deutschen . Patentanmeldung 0 10 771 VIIIb/21c der Anmelderin vom 7. April 1965 beschrieben sind, von Hand in die Nullstellung des Programms gebracht.
Anschließend werden die Wahlschalter 16,17,31 und 34 auf Λ t/r gestellt. :'[ ;; ;;.;·...; f.. ViP. -j'J ■'[/.' ,'. '.'.'/;
Zu Beginn der automatischen Dateneingabe durch ein Programmband wird die Drucktaste RESET niedergedrückt (F i g. 6) und so das Signal RESE erzeugt, das die allgemeine Nullung der Steuereinrichtung bewirkt. Genauer gesagt, es bewirkt die Rückstellung der Zähler 6, 7, 8, 9, 14 und 15 und des Bitwertzählers 74 (durch das Signal INOR, Fig.9 und 10) sowie die Einstellung der Flip-Flop-Schaltungen 5 und 11.
Das durch die Univibratorkette 47, 48 verzögerte Signal RESE erzeugt das Signal STAR, das die zyklischen Arbeitsgänge der Verzögerungsleitung LDR einleitet. In der Tat wird der Ausgang FEAS des Flip-Flops 5 (da das L£>#-Ausgangssignal ULIM gegenwärtig abwesend ist, weil die Verzögerungsleitung ungeladen ist) durch das Signal STAR erregt, so
ι ο daß die Torschaltung 3 geöffnet und der Oszillator 1 an den Frequenzteiler 4 geschaltet wird. In dieser Weise wird der Ausgang MAOO des Frequenzteilers erregt, wodurch der Zähler 6 aus dem Ruhezustand in Gang gesetzt wird (Ausgang 7700 erregt), in der Weise, daß nacheinander und zyklisch die sechs Ausgänge 7700 bis 7705 erregt und infolgedessen auch die Zähler 7,13,14 und 15 in Gang gesetzt werden, wie schon in dem von dem Informationsspeicher handelnden Teil der Beschreibung erläutert wurde.
Anschließend drückt die Bedienungsperson die Drucktaste START(Fig.7) und erregt so eine Reihe von Flip-Flop-Schaltungen und Univibratoren, wie bereits in dem von der Steuerung der Programmeinheit handelnden Teil der Beschreibung erläutert wurde.
Anschließend wird das Signal A VAN wirksam, das den Bitwertzähler 74 (Fig. 10) steuert, und in der Folge wird durch die offene Torschaltung 35 das Signal AVAB erzeugt, das den Weitertransport des Bandes um einen Schritt steuert. '
Das Programmband 56 (Fig. 9), das beispielsweise aus einem perforierten Papierstreifen besteht, weist beispielsweise 8 parallele Aufzeichnungsspuren auf, wobei jedes Zeichen 8 parallele Stellen auf diesen Spuren einnimmt.
Um die Bedingungen der erforderlichen Annäherung und maximalen Verschiebung zu erfüllen, werden die Werte der Koordinaten, wie schon in der allgemeinen Beschreibung erläutert, durch sieben Zeichen dargestellt (d. h. durch sieben Dezimalziffern, die es ermöglichen, Distanzen zwischenA μπιund 10 m darzustellen), die auf dem Programmband aufgezeichnet sind. Für die Geschwindigkeitswerte entlang den verschiedenen Achsen genügen fünf Zeichen (d.h. fünf Dezimalziffern). - ■ ■■··■ v.;\':\ ■:■-. .■:·-.
Ein Normaldatenblock, wie er schon in der allgemeinen Beschreibung angenommen wurde, wird von den folgenden Zeichen gebildet:
einem Hilfsbefehlszeichen (unter AUi bis AUN ausgewählt; ■: V r-'- ρ
einem auf eine erste Verschiebungsachse Bezug nehmenden Adressenzeichen (z. B. IX);
sieben auf die erste" Verschiebungsachse Bezug nehmenden Ziffernzeichen (z. B. K1 X bis K 7 X).
Der folgende Datenblöck kann wieder mit einem Hilfsbefehlszeichen oder auch mit dem auf eine zweite Verschiebungsachse Bezug nehmenden Adressenzeichen (z.B. IY) beginnen, dem sieben auf diese zweite Verschiebungsachse Bezug nehmende Ziffernzeichen
Wenn der bewegliche Teil der Maschine sich an mehr als zwei Achsen entlangbewegen soll, sind diese beiden Datenblöcke von anderen gleichartigen Blöcken gefolgt, die zu diesen anderen Verschiebungsachsen gehören. , ,:
Die Ziffernzeichen werden stets von der höchsten geltenden Ziffer ausgehend auf das Band aufgezeichnet.
Am Anfang des Programms ist es erforderlich, für jede Achse einen Datenblock aufzuzeichnen, der die zulässige Höchstgeschwindigkeit entlang der jeweiligen Achse bestimmt. Dieser Geschwindigkeitsdatenblock weist die folgenden Zeichen auf: ν
ein Anfangsadressenzeichen, das sich auf eine Verschiebungsachse bezieht;
ein darauffolgendes Geschwindigkeitszeichen (IV); fünf Ziffernzeichen (K IV bis K 7 V), die den Wert der Höchstgeschwindigkeit für diese Verschiebungsachse darstellen.
Dieser Geschwindigkeitsdatenblock wird für jede Achse nur dann wiederholt, wenn die entsprechende zulässige Höchstgeschwindigkeit verändert werden soll.
Als Programmblock soll eine Reihe von Datenblökken bezeichnet werden, die die Koordinaten des Ankunftspunktes des von dem beweglichen Teil zurückzulegenden Wegabschnitts und die Werte der entlang den verschiedenen Achsen zulässigen Höchstgeschwindigkeiten genau angeben.
Jeder Programmblock endet mit einem Blockendzeichen CR, das auch als Spezialzeichen interpretiert wird, welches die Interpolationsoperationen anlaufen läßt.
Das Programmband bewegt sich unter der Steuerung der Vorschubsignale A VAB jeweils einen Schritt weiter, und der Leser liest jedesmal ein Zeichen.
Die gelesenen Zeichen werden durch Lesekanäle Hi bis H 8 in einen Zeichendekoder 58 übertragen, der (durch das Signal AUTO erregt) einen seiner Ausgänge erregen kann. Genauer gesagt, er erregt
einen seiner Ausgänge AUXi bis AUXN, wenn das gelesene Zeichen eines der Hilfsbefehlszeichen AUibisAUNisi;
einen der Ausgänge AUIC, AUIP, AUIZ, wenn das gelesene Zeichen eines der Adressenzeichen IX, IY, IZist;
den Ausgang SEPO, wenn das gelesene Zeichen ein Vorzeichen-Zeichen ist;
den Ausgang VAUT, wenn das gelesene Zeichen ein Geschwindigkeitszeichen ist;
einen der Ausgänge AUIC, AUIP, AUIZ, wenn das das gelesene Zeichen eine der Dezimalziffern 1 bis 9 ist, beispielsweise angegeben durch die entsprechenden Ziffernzeichen K iX bis K9X für die Koordinate x, K1 Fbis K 9 Y für die Koordinate y, K lZbis K9Zfür die Koordinate z, K1 Vbis K5V für die Höchstgeschwindigkeit;
den Ausgang A UVI, wenn das gelesene Zeichen ein Blockendzeichen CR ist.
Die Ausgänge BA 01 bis BA 09 speisen einen Umkodierer 69 (F i g. 10).
Die Ausgänge AUXi bis AUXN speisen entsprechende Hilfsfunktionen-Steuerrelais, während ihre Oder- Funktion ein Signal ORA U erzeugt
Die Ausgänge AUIC, AUIP und AUIZ liefern die Adressensignale MAIC, MAIP und MAEZ, die durch entsprechende Torschaltung«!, die auf Grund der Anwesenheit des Signals RILE offen sind und entsprechende Eingänge NOIC, NOIP und NOEZ in den Adressen-Serienparallel-Wandler und -Speicher 64, 65 bzw. 66 eingespeichert werden. Außerdem erzeugt die Oder-Funktion des Signals NOIC, NOIP, NOEZ, ORAUund RESEin Anwesenheit des Signals RILEdas Signal INOR, das die Nullung des Ziffernzählers 74 (F i g. 10) und des Flip-Flops 44 (F i g. 7 und 19) steuert Jedes Adressensignal bleibt in seinem Serienparallel-Wandler und -Speicher, bis ein anderes Adressenzeichen gelesen wird. Die Oder-Funktion der Ausgänge ICSI, IPSI und ZETA, erregt die Eingänge des Flip-Flops 52 (F i g. 10), d. h., es setzt den Ziffernzähler 74 in Gang.
Die Ausgänge VAUT und SEPO des Dekoders 58 liefern das Geschwindigkeitssignal DEVE bzw. das Vorzeichensignal MASE, die durch entsprechende Torschaltungen, die durch die Anwesenheit des Signals CIFi offen sind, und entsprechende Eingänge CAVE und NOSEm den Adressen-Serienparallel-Wandler und -Speicher 67 bzw. in den Vorzeichen-Serienparallel-Wandler und -Speicher 68 eingespeichert werden. Die Geschwindigkeits- und Vorzeichensignale bleiben in ihrem jeweiligen Serienparallel-Wandler und -Speicher, bis neue Geschwindigkeits- und Vorzeichen-Zeichen gelesen werden.
Der Ausgang VELO des Geschwindigkeits-Serienparallel-Wandlers und -Speichers 67 bringt, wie später ausführlich beschrieben wird, einige Torschaltungen in den gewünschten Zustand, während der Ausgang SEPI des Vorzeichen-Serienparallel-Wandlers und -Speichers 68 die Torschaltung 73 (Fig. 13) in den gewünschten Zustand, so daß sie dem Addierer 73 gestattet, wahlweise als Additions- oder Subtraktionswerk zu arbeiten.
Wenn einer der Ausgänge ICSE, IPSI und ZETA durch eine auf Grund der Anwesenheit der Signale RILE und BUIN offene Torschaltung erregt wird, erzeugt er das Signal INDI, das die abwechselnde Erregung und Abschaltung des Flip-Flops 52 durch entsprechende Torschaltungen 53 und 54 steuert, die in Gegenwart des Signals A VAN offen sind. Infolgedessen wird durch die abwechselnde Erregung der beiden Ausgänge ACIF und ACIP des Flip-Flops 52, die in Oder-Funktion an den Eingang des Ziffernzählers 74 geschaltet sind, ein Impuls an den letztgenannten Eingang gesendet, wodurch der Ziffernzähler 74 jedesmal einen Schritt weitergeschaltet wird, so daß seine Ausgänge CIFi bis CIF9 nacheinander und zyklisch erregt werden.
Es ist zu beachten, daß das Zustimmungssignal INDI nur unterbrochen wird, wenn das Signal BLIN anwesend ist, d. h, wenn irgendein Hilfsbefehlssignal abwesend ist (ORAU= »0«) oder keiner der Ausgänge A UIC, A UIP, A UIZerregt ist.
Angenommen, daß, nachdem das erste Signal A VAB den Weitertransport des Bandes um einen Schritt bewirkt hat, das erste gelesene Zeichen aus leerem Band oder aus Löchern in allen Spuren besteht, wird ein besonderer Ausgang AUXL erregt und infolgedessen die Signale ORAU und AVNA erzeugt, die den Weitertransport des Bandes um einen weiteren Schritt bewirken.
- Die Operationen wiederholen sich, bis ein erstes Adressenzeichen gelesen wird.
Angenommen, der erste auf das Programmband aufgezeichnete Datenblock wird durch die folgende Zeichenreihe verkörpert: IX, IV, KiV, K2V, K3V, KAV, K5V, IX, SX, KiX, K2X, K3X, KAX, K5X, KSX, K7X, dann führt die Steuereinrichtung während der automatischen Eingabe der durch diese Zeichen dargestellten Daten die im folgenden beschriebenen Arbeitsgänge aus. ;
Nach dem Lesen des Zeichens IX liefert der Entschlüßler 58 das decodierte Signal AUIC, das dann von dem Serienparallel-Wandler und -Speicher 64 gespeichert wird, während alle anderen Serienparallel-
Wandler und -Speicher 63, 65, 66, 67 und 68 auf Null zurückgestellt werden. Ferner ruft das Signal AUIC auch das Signal A VAN hervor, das die Weiterschaltung des Bandes und des Ziffernzählers 74,um je einen Schritt steuert. Deshalb zählt der Ziffernzähler 74 so, daß er seinen Ausgang CIF \ erregt.
Nach dem Lesen des darauffolgenden Geschwindigkeitszeichens IV, liefert der Dekoder 58 das decodierte Signal VAUT, das dann von dem Serienparallel-Wandler und -Speicher 67 gespeichert wird.
Da eins der vorangehenden Signale AVAN den Flip-Flop 74 (F i g. 14) erregt hat, und infolgedessen das Signal PEIN anwesend ist, erregt das erste Signal, das, nachdem das Band in die Lesestellung gebracht wurde, von der Zeitsteuereinrichtung unter diesen Bedingungen geliefert wird, den Ausgang DATA des Flip-Flops 75.
Der erregte Ausgang DATA (da die Signale INDI, CIF8 und CIF9 anwesend sind) schaltet den Flip-Flop 76 so, daß er das Signal ANOi liefert, das, wie schon erwähnt, ein neues Signal AVAN und somit den Bandvorschub um einen weiteren Schritt hervorruft.
Der Flip-Flop 76 wird durch die Signale ORER, RESE und RILE, von denen das letztere auch durch ANOi erzeugt wird, zurückgestellt, während der Flip-Flop 74 durch die UND-Funktion der Signale DATA und DE32 zurückgestellt wird.
Der Flip-Flop 75 wird durch das Signal GAPi zurückgestellt, das das Ende der Zählung für die Speicherstellen bestimmt. Deshalb ist der Flip-Flop 75 während eines vollen Speicherumlaufs erregt.
Das durch Lesen des Geschwindigkeitszeichens IV erzeugte Signal A VAN steuert die Weiterschaltung des Ziffernzählers 74 um einen Schritt, so daß dessen Ausgang CIF2 erregt wird.
Anschließend wird die erste Geschwindigkeitsziffer gelesen und infolgedessen ein Ausgang unter BA 01 -τ- BA 09 erregt, der ihren Wert im Dezimal-Binärcode wiedergibt. Mit diesem Dezimalwert wird dann der Umcodierer 69 gespeist.
Jede durch die neun Eingabeschaltungen 501 bis BA 09 in den Umcodierer 69 eingegebene Ziffer wird dann auf die 24 Ausgänge MAOl bis MA 24 dieses Umcodierers übertragen und parallel durch 24 Bits dargestellt. Diese 24 Bits gestatten die Darstellung von Zahlen mit 7 Dezimalstellen. Der Umcodierer 69 weist deshalb 7 Sektionen auf, von denen jede in der Lage ist, eine Ziffer mit einem bestimmten Dezimalwert aus der Dezimal-Binärform in die reine Binärform umzucödieren. Die Eingänge jeder dieser Sektionen werden durch ein entsprechendes Ziffernsignal unter CF2 bis CF8 gesteuert, das den Wert der eingegebenen Dezimalzifferangibt. ■ ·· "V"· ■■■■■■·: ''■■■■'-■■ ~~ ■■'■■■ "-'■■■■ ■·■■ ν-ί^,ν:·-,
Die 24 Bits, die nebeneinander an den 24 Ausgängen des Umcodierers 69 vorhanden sind, werden dann in einen Serienwändler 78 übertragen, der die 24 Bits in Serien an seinen Ausgang SRINlieien. ;ϊ r,
Genauer gesagt, die Zähler 8 und 9 (F i g. 6) verzögern den Serienwandler 78 durch ihre Ausgänge COOO bis C007 und COOO bis C007 bzw. C008, C008. Der Zähler 8 kann zyklisch bis 16 zählen, während der Zähler 9 vier verschiedene Zählumläufe bestimmen kann. Deshalb werden die Ausgänge DEOl, DE 17, £>£·33, DE49 des Zählers 13 erregt, wenn derselbe Ausgang in dem Zähler 8 erregt wird, während in dem Zähler 9 ein anderer Ausgang erregt wird. Entsprechendes gilt für andere Ausgangsgruppen des Zählers 13, vorausgesetzt, daß diese Ausgänge nach demselben Kriterium ausgewählt werden.
Die 24 Bits einer Geschwindigkeitsziffer werden mit den durch die Signale DEYJ bis DE40 (Fig. 17) spezifizierten Nennwerten in das Register B 'des Speichers LDR eingegeben.
Zu diesem Zweck gestattet es eine geeignete logische Schaltung, die 24 Bits der umcodierten Ziffer nur während des von den Signalen DE 17 bis DE 40 eingenommenen Zeitintervalls serienmäßig zu ordnen.
ίο Genauer gesagt, wenn das Signal VELO (Fig. 11) anwesend ist, während der Zähler 8 (C008 — »1«) das erste Mal bis 16 zählt, d. h. während des Abtastens der ersten 16 Eingänge ΜΛ01 -i- MA 16 des Umcodierers 78, wird der Steuereingang CODE erregt, so daß er verhindert, daß die ersten 16 Eingangsbits an den Ausgang SEIN dieses Umcodierers 78 überführt werden. Beim zweiten Zählen bis 16 (C008 = »0«) wird dagegen der Steuereingang CODE erregt, so daß die ersten 16 Eingangsbits von den nacheinander abgetasteten Eingängen MA 01 -r MA16 in Reihe an den Ausgang SEIN des Umcodierers 78 überführt werden. Beim dritten Zählen bis 16 (C008 = »1«), d. h. während des Abtastens der folgenden 8 Eingänge MA 17-h MA 24 des Umcodierers 78, wird schließlich der Steuereingang CODE erregt, so daß die verbleibenden 8 Eingangsbits von den nacheinander abgetasteten Eingängen Ma Π bis ΜΛ24 an den Eingang SEIN überführt werden. *
Der Ausgang SEIN des Serien-Wandlers 78 speist den Speicher LDR über ein logisches Netzwerk 70, einen Addierer 71 (Fig. 12) und ein weiteres logisches Netzwerk51(Fig. 12).
Da die Zeitsteuereinrichtung gegenwärtig das Signal INIC liefert, das die Speicherstellungen in bezug auf die Achse X angibt, während der Serienparallel-Wandler und -Speicher 65 das Adressensignal ICSI liefert, wird das Signal COIN erzeugt (Fig. 14). Da die Signale VELO und DATA wirksam sind, erzeugt das Signal COIN das Steuersignal INVE, das die Eingabe der Geschwindigkeitsziffern in den Speicher erlaubt
(Fig. 2O)L : : :
Die Signale INVE und GIOO (von denen das letztere das Speicherregister B bestimmt) gestatten deshalb die Übertragung der ersteh Geschwindigkeitsziffer von dem Umcodierer-Ausgang SEIN auf den Ausgang S 002 des Addierers 71. Da der zweite Eingang 5001 des Addierers 71 nur mit einer Reihe von Nullen gespeist wird, kommen die Bits derersten Geschwindigkeitsziffer ohne jede Veränderung an den Ausgang USOMdes Addierers71.
Der Addierer-Ausgang :>t/5OM; speist über das logische Netzwerk 51 und dens Eingabekanal GUAB (Fig. 12) den Schreibe-Serienparallel-Wandler und -Speicher. ■ . '.ΗΗ-χΙέΆ'- :.;-.". ......
Die Geschwindigkeitsbits werden dann in das Register B des Speichers';·:; LDR geschrieben, was bekanntlich durch die Zeitsteuersignale G/00 und 7700 bestimmt wird. ::-K':j b K ν -, : :
Wenn danach diel zweite; Geschwindigkeitsziffer K 2 V eingegeben wird, werden die 24 Bits, die diese Ziffer ah den Ausgängen ν des Serien-Wandlers 78 verkörpern, über den Addierer 71 zu den 24 Bits addiert, die gleichzeitig durchs den Kanal GIAB an den Ausgang 5001 des Addierers 71 geliefert werden und die schon in den Speicher LDR eingegebene Geschwindigkeitsziffer darstellen.
Die anderen Geschwindigkeitsziffern werden auf eine ähnliche Weise eingegeben. Somit ist es klar, daß die
509 585/8
Konversion der fünf die Geschwindigkeit darstellenden Ziffernzahlen aus der Dezimal-Binärform in die reine Binärform durch aufeinanderfolgendes Addieren der den aufeinanderfolgenden Dezimalziffern äquivalenten Binärziffern erfolgt. "
Am Ende des Speichergangs, in dem die fünf Geschwindigkeitsziffern KIV -r- K 5 V eingegeben wurden, wird das Signal FIN durch die UND-Funktion der den Flip-Flop 77 (F i g. 14) einstellenden Signale DATA, DE59, INAZ, CIF8 erzeugt.
In der Folge wird das Signal SIVE erzeugt, das das Tor 115 öffnet und so gestattet, die Verzögerungsleitung LDR in einen Ring zu schließen, der das Tor 114, den Lese-Serienparallel-Wandler und -Speicher LEAB und seinen Ausgabekanal GIAB, das offene Tor 114, den Eingabekanal GUAB, den Schreibe-Serienparallel-Wandler und -Speicher REAB, das dreistufige Schieberegister 113 und das Tor 115 aufweist, so daß im folgenden Speichergang der Inhalt des Registers B um drei Binärstellen verschoben und infolgedessen die 24 Bits der zulässigen Höchstgeschwindigkeit, die von dem Band 56 in den Speicher LDR eingegeben wurden, in die Binärbenennungen von 20 bis 43 gebracht werden.
Da das Signal INVE den Flip-Flop 76 so eingestellt hat, daß das Signal ANOi (Fig. 14) erzeugt wird, wird der Weitertransport des Bandes um einen Schritt bewirkt, so daß wieder ein Adressenzeichen gelesen wird, z. B. IX, was den schon erwähnten Programmblock anbetrifft. Das entsprechende decodierte Signal AUIC (F i g. 9) wird in den Serienparallel-Wandler und -Speicher 64 eingespeichert, wobei es gleichzeitig alle anderen Eingangs-Serienparallel-Wandler und -Speieher 63, 65, 66, 67 und 68 auf Null stellt. So wird der Serienparallel-Wandler und -Speicherausgang ICSI erregt, was, wie schon erwähnt, den Vorschub des Bandes um einen weiteren Schritt und die Einstellung des Ziffernzählers auf CIF\ zur Folge hat. Nach dem Anhalten des Bandes liest der Leser 57 ein Vorzeichen-Zeichen SX, dessen decodiertes Signal SEPO dann in den Serienparallel-Wandler und -Speieher 68 eingespeichert wird. So wird der Ausgang SEPI des Serienparallei-Wandlers und -Speichers erregt oder nicht, je nachdem ob dieses Vorzeichensignal das Vorzeichen » + « oder » —« darstellt. Folglich, da das Signal INNU jetzt wirksam gemacht wird (durch die Anwesenheit der Signale DATA, VELO und COIN, wobei letzteres die UND-Funktion des Adressensignals ICSI und des Taktsignals INIC ist) (F i g. 14), wird der Addierer 71 für die Addition bzw. für die Subtraktion vorbereitet.
Da zu Beginn des durch GAP2 bestimmten Speichergangs das Signal DATA erzeugt und infolgedessen auch der Ausgang ANOi des Flip-Flops 76 erregt wurde (Fig. 14), bewirkt nun die Steuerung einen weiteren Bandvorschub.
Nach dem Anhalten des Bandes liest der Leser 57 das erste Ziffernzeichen KiX, das die größte geltende Ziffer der Koordinate χ 2 darstellt. Diese Ziffer und die sechs folgenden Ziffern K2X, K3X, KAX, K5X, K SX, K 7Xwerden, auf eine ähnliche Weise wie die fünf Geschwindigkeitsziffern, in das Register D eingegeben. Das Signal INNU(das die Eingabe der Koordinatenziffern steuert) ist jetzt an Stelle des Signals //VVfT(das die Eingabe der Geschwindigkeitsziffern steuert) (Fig. 12 und 21) wirksam.
Es ist zu beachten, daß, genauer gesagt, die 24 Bits der Endkoordinate χ 2 sowohl in die Stellen 33 bis 56 (die durch die Taktsignale D£"33 bis DE56 bestimmt sind) des Registers D als auch in die Stellen 1 bis 24 (durch die Taktsignale DEOl bis DElA, bestimmt) des Registers C eingegeben werden, weil unter den gegebenen Bedingungen (VELO =' »0«) das Signal CODE gleichzeitig mit dem Signal C008 (Fig.21) erzeugt wird und es infolgedessen gestattet, daß die auf den Linien MA 01 bis MA 24 dargestellten Bits jedesmal, wenn diese Linien abgetastet werden, auf den Ausgang SEIN des Serienspeichers 78 (F i g. 11) übertragen werden, so daß während der zeitlichen Steuerung der ersten 32 Stellen eines Speicherregisters, die durch die Zeitsignale DEOi bis DE32 (INSI = »1«) (Fig. 13) bestimmt werden, diese Linien MA 01 -=- MA 24 ein erstes Mae abgetastet und ihre Bits auf das Speicherregister C (GI00 = »1«) übertragen werden, während bei der zeitlichen Steuerung der übrigen Stellen eines Speicherregisters, die durch die Zeitsignale £»£33 bis DE59 (INSI = »0«) bestimmt werden, diese Linien MA 01 -r MA 24 ein zweites Mal abgetastet und ihre Bits in das Speicherregister D(G/00 = »0«) übertragen werden.
Auf Grund dieser besonderen Eingabe ist es klar, daß in dem Register D eine Größe H · χ 2, die schon in der allgemeinen Beschreibung in Betracht gezogen wurde, gespeichert ist.
Ferner ist zu beachten, daß, entsprechend dem gelesenen und in dem Serienparallel-Wandler und -Speicher 68 gespeicherten Vorzeichen-Zeichen, der Addierer 71 zum, Addieren oder Subtrahieren eingerichtet worden ist (d.h., um unveränderte Bits zu liefern, oder um sie zu komplementieren, wenn nur einer seiner Eingänge gespeist wurde). Deshalb werden die 24 Bits der Endkoordinate χ 2 entsprechend dem Vorzeichen dieser Endkoordinate entweder unverändert oder komplementiert in den Speicherregistern Cund Dgespeichert.
Die Eingabeoperationen für die Höchstgeschwindigkeit und die Endkoordinate mit Bezug auf die Achse X werden der Reihe nach für die anderen Achsen Yund Z wiederholt. Die von dem Band abgelesenen Daten werden in den Abschnitt des Speichers LDR eingegeben, der der gelesenen Adresse entspricht, die an der Spitze jeder Programmnummer steht. Diese Operation wird unter der Steuerung des Signals COIN (Fig. 14) ausgeführt, das die Koinzidenz der Adresse des gelesenen Ziffernblocks mit der Adresse des Speicherregisters angibt. Genauer gesagt, die von den Serienparallel-Wandlern und -Speichern 64, 65 und 66 gelieferten Adressensignale /CS/, IPSI bzw. ZETA geben die Adresse der jetzt gelesenen Geschwindigkeits- oder Koordinatenziffern an, während die von dem Zeitzähler 14 als Zeitsteuersignale INIC, INIP und INAZ gelieferten Speicheradressen die Speicherstellen angeben, in denen auf die Achsen X, Y und Z Bezug nehmende Daten enthalten sind. ,·
Zusammengefaßt ist das Auftreten der die Weiterschaltung des Bandes 56 und des;,Ziffernzählers 74 betätigenden Steuersignale wie folgt: Nach dem Lesen und Decodieren jedes neuen Adressenzeichens (AUIC, AUIPund AUIZ) wird dieses in eine statisch parallele Form umgewandelt, wobei alle anderen zuvor statisch parallel gemachten Adressensignale annulliert werden; die ODER-Funktion des Adressensignals stellt den Ziffernzähler 74 auf Null (d. h., CIFi wird erregt); nach jedem Anlaufen und Anhalten des Bandes wird das Signal /TVD/ erzeugt, welches bewirkt, daß der Ziffernzähler eine Ziffer weiterzählt. Wenn das Bandzeichen gelesen werden kann (RILE = »0«), wird das Signal DATA wirksam gemacht, das einen
Speichergang andauert und den Flip-Flop 76 so einstellt, daß er ANOi wirksam macht, das den Weitertransport des Bandes um einen Schritt bewirkt.
Am Ende der Dateneingabe wird der Flip-Flop 77** erregt, so daß das Signal FUN wirksam wird, welches 1S das die Berechnung des Mindestinkrements hx steuernde Signal CAINerzeugt. Wie schon erläutert, ergibt sich dieses Mindestinkrement aus der Differenz H-x2 — H-x\, wobei H-x2 und HxI am Ende der Interpolationsoperationen in dem Speicherregister Cbzw. /gespeichert werden (xi ist die Koordinate des Ausgangspunktes des nächstfolgenden zurückzulegenden Bahnabschnitts). Deshalb bewirkt das Signal CAIN die Subtraktion des Inhalts H ■ χ 1 des Speicherregisters /von dem Inhalt Η·χ2 des Speicherregisters C (Fig. 13). Im einzelnen bedeutet dies, daß die Größe H ■ χ 2 durch den Kanal GICD und das Tor 112 dem Eingang 5001 des Addierers 71 zugeführt wird, während die Größe H ■ χ 1 durch den Kanal GIIL und das Tor 120 dem Eingang 5002 desselben Addierers zugeführt und letzterer von CAIN so eingerichtet wird, daß er als Subtraktionswerk arbeitet. Das Resultat aus der Subtraktion H ■ χ 2 — H ■ xi wird dann dem Addierer-Ausgang USOMzugeleitet und durch das Tor 121 und den Kanal GUEF in das Speicherregister E eingespeichert, bestimmt durch die Zeitsteuersignale 7702 und GI00. Außerdem wird der Inhalt H- χ2 wieder in das Speicherregister Ceingetragen.
Das Signal CAINstellt ferner den Flip-Flop 76 so ein, daß der Ausgang ΑΝΌΙ erregt wird, der den Weitertransport des Bandes um einen Schritt bewirkt.
Nun können zwei Fälle eintreten: a) der Leser 57 liest ein Hilfsbefehlszeichen; in diesem Fall bleibt der Ziffernzähler 74 im Ruhezustand, ein Hilfsbefehlssignal wird an das entsprechende Betätigungsrelais gesendet, und das Band wird noch einmal weitertransportiert; b) der Leser liest das Blockendzeichen CR, dessen decodiertes Signal AUVI in dem Serienparallel-Wandler und -Speicher 63 gespeichert wird; der erregte Ausgang VIA C des Serienparallel-Wandlers und -Speichers läßt dann die Interpolationsoperationen anlaufen.
Dateneingabe mittels Handeinsteller
Die einleitenden Arbeitsgänge (d h. die allgemeine Nullung der Maschine und das Einstellen des beweglichen Teils auf den Programm-Nullpunkt) entsprechen denen bei der Dateneingabe durch ein Programmband.
Danach werden die Wahlschalter 16, 17, 31 und 34 (Fig. 7) auf CON gestellt, wodurch die Dateneingabe mittels der Handeinsteller auf der Schalttafel 55 ermöglicht wird (Fig. 9). Unter diesen Betriebsbedingungen schaltet das wirksam gemachte Signal A UMA in Anwesenheit des Signals LAFI (nach der allgemeinen Nullung durch FINE wirksam gemacht) den Flip-Flop 28 ab, so daß dessen Ausgang AUTO erregt wird.
Anschließend wird der Wahlschalter 32 auf VEL oder POS gestellt, je. nachdem, ob Geschwindigkerts- oder Koordinatendaten eingegeben werden sollen, so daß der Flip-Flop 33 durch das Signal VEMA oderPOMA eingestellt bzw. zurückgestellt wird Wenn der Flip-Flop 33 erregt und sein Ausgang ABIM wirksam gemacht wird, können die Handkoordinateneinsteller betätigt werden, während, wenn der Flip-Flop 33 abgeschaltet und sein Ausgang ABIM wirksam gemacht wird, der Handgeschwindigkeitseinsteller betätigbar ist
Ein Wahlschalter 45 ermöglicht die Wahl der gewünschten Achse für die Geschwindigkeit und für die Koordinaten. Genauer gesagt, die Stellung ICMA bezieht sich auf die Achse X, die Stellung IPMA auf die Achse Y und die Stellung ZEMA auf die Achse Z. Die Ausgänge dieser Stellungen werden wahlweise durch das Signal MAVI wirksam gemacht, das von dem Flip-Flop 21 geliefert wird, wenn die Drucktaste START niedergedrückt wird, und arbeiten analog zu den decodierten Adressensignalen AUIC, AUIPund AUIZ, während der Ausgang VEMA des Wahlschalters 32 wie das decodierte Geschwindigkeitssignal VA £/Twirkt.
In der in F i g. 7 dargestellten Ausführungsform muß jede Achse X, Y, Z mittels des Wahlschalters 45 von Hand gewählt werden, bevor die zu dieser Achse gehörenden Daten eingegeben werden. Es ist auch möglich, die Programmeinheit mit geeigneten Mitteln auszurüsten, die in der Lage sind, nach der Handwahl einer Achse die anderen Achsen automatisch zu wählen.
Die Koordinateneinsteller 59, 60 und 61 (die zu den Koordinaten x, ybzw. ζ gehören) und der Geschwindigkeitseinsteller 62 werden durch die Steuersignale ICSI', IPSI', ZEAT'bzw. ABIVwirksam gemacht, die bei den vorstehend beschriebenen Bedingungen erzeugt werden. ·■....
Jeder Koordinateneinsteller 59,60 und 61 weist einen Vorzeichenwähler (+/—)'und 7 Dezimalziffernwähler auf, die mit m, dm, cm, mm, de, ce, μ bezeichnet sind und den Wert der damit wählbaren Dezimalziffer definieren. Jeder dieser 7 Wähler, der die Einstellung jeder Dezimalziffer 1 bis 9 ermöglicht, wird durch ein entsprechendes Ausgangssignal CIF2 bis CIF8 des Ziffernzählers 74 betätigt und ist mit 9 Ausgangskanälen versehen, von denen jeder eine Dezimalziffer von 1 bis 9 darstellen kann.
Die ODER-Funktion der Ausgänge SEIC, SEIP und SEZE der Vorzeichenwähler arbeitet in der gleichen Weise wie das decodierte Vorzeichensignal SEPO.
Der Geschwindigkeitseinsteller 62 weist fünf mit dam/l, m/l', dm/1', cm/ !',mm/ Γ bezeichnete Dezimalziffernwähler auf, die den Geschwindigkeitsbereich der damit wählbaren Dezimaiziffern definieren. Jeder der fünf Wähler, der die Einstellung jeder Dezimalziffer von 1 bis 9 ermöglicht, wird durch ein entsprechendes Ausgangssignal CIF2 bis CIF6 des Ziffernzählers 74 betätigt und ist, ebenso wie die Koordinateneinsteller, mit 9 Ausgangskanälen versehen.
Die Ausgangskanäle der Einsteller 59, 60, 61 und 62, die den gleichen Dezimalwert verkörpern, sind in ODER-Funktion geschaltet, so daß man 9 Handeinstellkanäle BA01 -τ- BA09'.,.erhält, von denen jeder in ODER-Funktion an den entsprechenden Ziffernausgang (BA 01 -r- BA 09) des Dekoders 58 geschaltet ist.
Die Dateneingabe mitteis, Harideinsteller simuliert genau die Dateneingabe, durch, das Programmband. Deshalb werden die entsprechenden Vorgänge hier nicht beschrieben. Es soll lediglich erwähnt werden, daß nach der Zusammenstellung eines Programmblocks an der Schalttafel 55, d.h.[.nach dem. Einstellen der Koordinatenziffern an den Einstellern 59,60 und 61 und dem Einstellen der ,-Geschwindigkeitsziffern an dem Einsteller 62, sowie nach der Einstellung des Adressenwählers 45 und des Geschwihdigkeits-Koordinatenwählers 32 die Eingabe durch Niederdrücken der Drucktaste 5IÄÄreingeIeitet wird. Der Ziffernzähler 74 beginnt dann wie bei der automatischen Eingabe zu zählen und durch seine Ausgänge CIF2 bis CIF8 werden die verschiedenen vorgegebenen, auf die Koordinaten und die Geschwindigkeit sich beziehenden Ziffern wirksam gemacht, wobei stets von der größten geltenden Ziffer ausgegangen wird.
Interpolationsoperationen .
progressive Distanz
Nach dem Lesen des letzten zu einem Programmblock gehörenden Ziffernzeichens wird das Signal CAIN erzeugt, wie schon erwähnt wurde, um das Signal BOIN(Fig. 19 und 23) wirksam zu machen. Wenn das nächste gelesene Zeichen ein Blockendzeichen DR ist, d. h. ein die Interpolation in Gang setzendes Zeichen, das das decodierte Signal VIAC wirksam macht, wird der Ausgang INVI des Flip-Flops 122 erregt und infolgedessen das Steuersignal GOP1 erzeugt, das eine Verschiebung des Inhalts des Speicherregisters E nach den größten geltenden Benennungen hin bewirkt (F i g. 22 und 25). Es wird daran erinnert, daß der Inhalt des Speicherregisters £?aus dem Ergebnis der Differenz H ■ χ 2 — H ■ χ 1 besteht, das auf die schon beschriebene Weise ausgerechnet und dazu verwendet wird, das Mindestinkrement hxzu erhalten.
Diese Verschiebung wird durch die Anwesenheit von GOP \ bedingt, welches bewirkt, daß der Inhalt des Registers E des Rückführspeichers LDR durch das einstufige Verzögerungselement 115 und das offene Tor 116 geht und so wieder in das bei jeder Drehung des Speichers um eine Benennung verschobene Speicherregister E eingeschrieben wird (F i g. 12).
Wenn die größte geltende Ziffer der in dem Speicherregister E enthaltenen Zahl eine vorherbestimmte Binärbenennung erreicht hat, z. B. die durch das Zeitsteuersignal DE27 bestimmte 27te Benennung, wird der Ausgang FISIdes Flip-Flops 123(Fi g. 23) am Ende des entsprechenden Speichergangs erregt, wodurch das Signal GOP1 annulliert und so der Verschiebevorgang beendet wird.
Das größte geltende Bit des so errechneten Mindestinkrements hx liegt somit in der in bezug auf die vorherbestimmte Binärbenennung nächstfolgenden Binärbenennung des Registers E, d. h. in dem betrachteten Beispiel, in der 28ten Benennung.
Die vorherbestimmte Binärbenennung ist durch einen Wählschalter 117 (Fig.23) veränderbar, der fünf Stellungen aufweist, die DE 27, DE 28, DE 29, DE 30 und DE 31 entsprechen.
Wenn angenommen wird, daß die Interpolationsperiode 5 ms dauert, dann entsprechen die vier Stellungen den folgenden Werten der höchstzulässigen Beschleunigung: 2,5 mm/s2, 5 mm/s2, 10 mm/s2, 20 mm/s2 bzw. 40 mm/s2.
Da FISI wirksam ist, wird in dem folgenden Speichergang der Ausgang OPER des Flip-Flops 124 erregt, der das Steuersignal GOP2 (Fig.22 und 24) erzeugt, während dessen Dauer alle Vergleichsoperatiohen für die Beschleunigungsänderung und die Berechnungen (4) und (6) ausgeführt werden. In dem nächstfolgenden Speicherumlauf erzeugt OPER außerdem das Steuersignal GOP 3, während dessen Dauer die neuen Stellungen des beweglichen Teils der Maschine in bezug auf die Beschleunigungsphase an Hand der Formeln (2) und (3) errechnet werden.
Ferner wird die Berechnung (11) während der Anwesenheit des Steuersignals GOP 2 und die Berechnung (5) während der Anwesenheit des Steuersignals GOP 3 ausgeführt Da die Berechnungen (11) und (6) sowie (5) und (3) jeweils gleichzeitig ausgeführt werden, muß die Steuereinrichtung mit zwei Addierwerken 71 und 72 versehen sein.
Genauer gesagt, im Laufe der ersten Interpolationsphase TX (Fig. 2) wird während der Anwesenheit des Steuersignals GOP 2 die Operation (4), die die xn
x\ =y Dxn
liefert, von dem als Subtraktionswerk eingerichteten Addierer 71 ausgeführt, dessen Eingang 5001 durch den Kanal GIIL und das Tor 126 mit dem Inhalt Dxn des Registers / gespeist wird und dessen Eingang 5002 ίο durch den Kanal GIABund das Tor 128 mit dem Inhalt
Dxn
des Registers A gespeist wird.
Ferner wird auch die den Wert Rxn der noch zurückzulegenden Distanz definierenden Operation (6) während der Dauer des Steuersignals von dem Addierer
71 ausgeführt, dessen Eingang 5001 zu diesem Zweck durch den Kanal GICD und das Tor 112 mit dem Inhalt χ 2 des Registers D gespeist wird, während sein Eingang 5002 durch den Kanal GIIL und das Tor 120 mit dem Inhalt xn des Registers L gespeist wird.
Für die Achsen Y und Z wird die die korrigierende Koordinate definierende Operation (11) von dem Addierer 72 ausgeführt, und zwar gleichzeitig mit der Operation (6).
Während der Dauer des Steuersignals G0P3 wird die das Positionsinkrement (Dx/x +1) liefernde Berechnung (2) von 'dem Addierer 71 ausgeführt, dessen Eingang 5001 durch den Kanal GIIL und das Tor 126 mit dem Inhalt Dxn des Registers / gespeist wird und dessen Eingang 5002 durch den Kanal GIEF und das Tor 127 mit dem Inhalt des Registers E gespeist wird. Das an den Ausgang USOM gelieferte Resultat Dx(n +1) wird dann durch das Tor 125 und den Kanal GUIL in das Register /eingeschrieben.
Auch die Operation (3), die die von dem beweglichen Teil der Maschine am Ende des 77-ten Interpolationsumlaufs eingenommene Position x(n +1) definiert, wird während der Dauer des Steuersignals GOP 3 von dem Addierer 71 ausgeführt, wobei dessen Eingang 5001 durch den Kanal REIL und das Tor 129 mit dem Inhalt xn des Registers L gespeist wird, während sein Eingang 5002 mit dem durch den Kanal GIIL und das Tor 120 gelieferten Inhalt Dxn des Registers / gespeist wird.
Gleichzeitig mit der Operation (3) führt der Addierer
72 die die fiktive Distanz Pxn definierende Operation (5) aus, indem er seinem Eingang 5021 zugeführten Inhalt
1XIl
des Registers A zu dem seinem Eingang 5022 zugeführten Inhalt Dxn des Registers /addiert.
· Wenn die zulässige Höchstgeschwindigkeit Dxn erreicht ist und infolgedessen das Steuersignal VECO wirksam gemacht wurde (wie im nächsten Teil der Beschreibung erläutert wirdX werden die Operationen (2) und (4) angehalten, weil das Signal VECO die Eingabe des zweiten Summanden in den entsprechenden Addierer 71, 72 sperrt In der zweiten Interpolationsphase T2 werden deshalb nur die Operationen (3) und (6) ausgeführt, so daß sich der bewegliche Teil mit konstanter Geschwindigkeit weiterbewegt.
Zu Beginn der dritten Interpolationsphase T3 (die ihren Anfang nimmt, wenn die noch zurückzulegende Distanz Rxn kleiner als die am Ende der Beschleunigungsphase in dem Register A gespeicherte fiktive
Distanz PxnM wird) wird ein Verlangsamungssignal ORDE wirksam gemacht, das den Addierer 71 so einrichtet, daß er während der Phase Γ3 als Subtraktionswerk arbeitet, um die Operation (2') auszuführen.
Am Ende der Verlangsamungsphase Γ3 (d. h., wenn das Positionsinkrement Dxn kleiner als der vorherbestimmte Wert wird) wird ein Verlangsamungsendsignal FIDE wirksam gemacht, das die Operation (2') anhält, indem es die Eingabe des zweiten Summanden in den Addierer 71 sperrt. Deshalb wird während der nächsten Phase Γ4 nur die Operation (3) ausgeführt, so daß sich der bewegliche Teil mit konstanter Geschwindigkeit weiterbewegt.
Wenn der Ankunftspunkt Pl erreicht ist, wird ein Signal FINE erzeugt, welches das GOPZ (F i g. 24) annullierende Steuersignal GOP 4 wirksam macht. Das Steuersignal GOP 4 erregt das Tor 118 und gestattet so die Übertragung der Endkoordinate χ 2 aus dem Register D in das Register L an die Stelle der stetig angewachsenen Koordinate xn. GOP4 annulliert ferner den Inhalt aller anderen Register des Speichers LDR, um sie auf neue Interpolationsoperationen vorzubereiten.
Das Steuersignal GOP4 endet, wenn der Flip-Flop OPER am Ende eines Speicherumlaufs durch GAP 1 zurückgestellt wird.
Die Steuersignale GOPl, GOP2, GOP3 und GOP4 haben gewöhnlich die Dauer eines Speicherumlaufs. Doch es ist möglich, ihre Dauer durch in den Zeichnungen nicht dargestellte geeignete Mittel auf einen Bruchteil des Speicherumlaufs zu reduzieren, wobei dann während dieses Bruchteils nur eine vorherbestimmte Achse berücksichtigt wird, um die Interpolation nur entlang dieser Achse auszuführen.
Um die im folgenden Teil der Beschreibung erläuterten Vergleichsoperationen korrekt auszuführen, wird die Bewegungsrichtung mittels eines Flip-Flops 130 für die Achse X und eines Flip-Flops 131 für die , Achse y(Fig.23) gespeichert. Das Signal SEME wird entweder von der Achse X oder Y erzeugt, wenn ihre Bewegungsrichtung negativ ist.
Der Digital-Analog-Umsetzer 101 ist während des ersten Speichergangs jedes Intefpolationszyklus (GIRI = »0«) über einen geeigneten Parallelwandler und -Speicher 119 (Fig. 12) an das xn enthaltende Register L geschaltet, während er beim zweiten Speichergang jedes Interpolationszyklus (GIRI = »1«) an den Ausgang SOM 2 des zweiten Addierers 72 geschaltet ist. Infolgedessen wird der Digital-Analog-Umsetzer 101 während des ersten Speichergangs mit xn gespeist, während er beim zweiten Speichergang mit 2 YN+Dyn (für die Achse Fund auf entsprechende Weise für die Achse Z) gemäß der Korrekturformel (11) gespeist wird. Die Größe 2yn + Dyn wird dann durch 2 dividiert (wie in der allgemeinen Beschreibung erläutert), indem einfach eine Binärstelle verschoben wird, wenn sie in den Parallelwandler und -Speicher 119 eingegeben wird.
Vergleichsoperationen
Die während der Interpolation ausgeführten Vergleichsoperationen erzeugen die Steuersignale VECO, ORDE, FIDE, PAFI und FINE, die die verschiedenen Bewegungsphasen des beweglichen Teils entlang eines Bahnabschnitts kennzeichnen.
VECO (Steuersignal der konstanten Geschwindigkeit) wird bei Auftreten der Ungleichheit (7), Dxn > DxM, erzeugt. Zu diesem Zweck vergleicht ein :, einen Flip-Flop 132 (Fig.26) steuerndes logisches ■5 Netzwerk die aus den Registern B (DxM enthaltend) und I (Dxn enthaltend) kommenden aufeinanderfolgenden Bitpaare nach den folgenden Kriterien:
Während der Anwesenheit von GOP2 und GI00, und wenn SEME = »0« ist, ergibt sich jedesmal der ίο folgende Sachverhalt:
REIL = »U<(Dxn darstellend),
GIAB = »0« (ΖλτΜ darstellend),
so daß die Bedingung (7) erfüllt ist und infolgedessen der Ausgang VERA des Flip-Flops 132 wirksam wird.
Wenn sich dagegen der folgende Sachverhalt
REIL = »0«(Dxn darstellend),
GIAB = »l«f£>ATMdarstellend),
ergibt, dann ist Dxn <DxM, und somit wird der Flip-Flop 132 abgeschaltet.
Wenn SEME = »1« (negative Bewegungsrichtung) ist, müssen die obigen Überlegungen umgekehrt werden.
Während der Anwesenheit von GOP 3 erregt der wirksam gemachte Ausgang VERA des Flip-Flops 132 den Flip-Flop 133, dessen wirksam gemachter Ausgang VECO die Interpplationsphase Γ2 konstanter Geschwindigkeit steuert.
ORDE (Verlangsamungs-Steuersignal) wird erzeugt, wenn die Ungleichheit (8), Rxn <PxnM, eingetreten ist. Wie im vorhergehenden Fall vergleicht ein einen Flip-Flop 134 (Fig. 27) steuerndes logisches Netzwerk die aus dem Register A (PxnM enthaltend) und aus dem Ausgang USOM des Addierers 72 [der die Größe Rxn liefert, da er von den Registern D und L gespeist wird, um die Rxn darstellende Differenz (x2 — xn) zu erhalten] kommenden, aufeinanderfolgenden Bitpaare nach den folgenden Kriterien:
Während der Anwesenheit von GOP 2 und GI 00, und wenn SEME = »0« ist, ergibt sich jedesmal der folgende Sachverhalt:
USOM= »0«(Rxn darstellend),
REAB = »l«fPA7jMdarstellend),
so daß die Ungleichheit (8) erfüllt ist und infolgedessen der Ausgang PIDIdes Flip-Flops 134 wirksam gemacht wird.
Wenn sich dagegen der folgende Sachverhalt
USOM= »\«(Rxn darstellend),
REAB = »0« (P^Mdarstellend),
ergibt, dann ist Rxn > PxnM, und infolgedessen wird der Flip-Flop 134 abgeschaltet.
Wenn SEME = »1« (negative Bewegungsrichtung) ist, müssen die obigen Überlegungen umgekehrt werden.
Während der Anwesenheit von GOP 3 erregt das Signal PIDI den Flip-Flop 135, dessen wirksam gemachter Ausgang ORDE die Interpolationsphase T3 konstanter Geschwindigkeit steuert.
FIDE (Verlangsamungssignal) wird erzeugt, wenn die Ungleichheit (9), Dxn< 1 μπι. eintritt, wobei das Steuersignal ORDE vorher vorhanden ist. Zu diesem Zweck sieht ein einen Flip-Flop 136 (Fi g. 28) steuerndes logisches Netzwerk vor, das Dxn enthaltende Register / abzutasten, um festzustellen, ob Bits mit
509 585/8
einem größeren Wert als 1 μτη vorhanden sind oder nicht (die geprüften Binärnennungen sind diejenigen, welche durch die Zeitsignale DE33 bis DE59 bestimmt werden, wobei diese Benennungen durch das Signal INSIvollständig bestimmt werden). ;:
Deshalb ergibt sich während der Anwesenheit von DOP2, GIOO und INSI, und wenn SEME= »0« ist, jedesmal der Umstand, daß
GIIL = »0« (Dxn darstellend) ist,
so daß die Bedingung (9) erfüllt ist und der Ausgang GRIN des Flip-Flops 136 infolgedessen nicht wirksam gemacht wird. Der Flip-Flop 136 wird durch DE\5 abgeschaltet.
Wenn SEME = »1« (negative Bewegungsrichtung) ist, müssen die obigen Überlegungen umgekehrt werden.
Während der Anwesenheit von GOP3 und PIDI erregt das Signal GRIN den Flip-Flop 137, dessen wirksam gemachter Ausgang FIDE die Interpolationsphase T4 konstanter Geschwindigkeit steuert.
PAFI (Endschrittsignal) wird erzeugt, wenn die Ungleichheit (10), χ2-*/7<16μιτι, erfüllt ist. Zu diesem Zweck sieht ein einen Flip-Flop 138(Fi g. 29) steuerndes logisches Netzwerk vor, die durch den Ausgang USOM des Addierers 71 gelieferte Differenz χ 2 — xn zu prüfen, um festzustellen, ob Bits mit einem größeren Wert als 8 μΐη vorhanden sind oder nicht (die geprüften Binärbenennungen sind diejenigen, die durch die Zeitsignale DE37 bis DE59 bestimmt werden). Während der Anwesenheit von GOP2 und G/00, und wenn SEME = »0« ist, ergibt es sich somit jedesmal, daß
USOM = »0« (x2-xn darstellend) ist,
so daß die Bedingung (10) erfüllt ist und der Ausgang MIDI des Flip-Flops 138 folglich wirksam bleibt, da dieser Flip-Flop durch die Koinzidenz der Signale GOP 2 und DE 32 erregt wurde.
Wenn SEME = »1« (negative Bewegungsrichtung)
ι ο ist, sind die obigen Überlegungen umzukehren.
Das Signal DINU erzeugt die Signale FINE und FIPA, die das Ende der Steueroperationen bzw. das Ende eines Programmtaktes bestimmen.
Es ist offensichtlich, daß die Positionierungsanordnung gemäß der Erfindung nicht nur für Maschinen mit einem an geradlinigen Achsen entlangbeweglichen Teil, sondern auch für Maschinen mit einem an einer oder mehreren Drehachsen entlangbeweglichen Teil verwendbar ist. Wenn ein beweglicher Teil einer Maschine an einer oder mehreren geradlinigen Achsen entlangbewegt wird, so stehen die Momentangeschwindigkeiten entlang dieser Achsen in einem Verhältnis zueinander, das, wie gezeigt, durch die Formel (1) dargestellt wird. Es ist klar, daß die Positionierungsan-Ordnung gemäß der Erfindung auch dann nach der Formel (1) arbeitet, wenn eine oder mehrere Achsen Drehachsen sind.
So ist es, wenn eine Maschine, beispielsweise eine Drehbank, eine geradlinige Achse und eine Drehachse hat, möglich, mit der von dem Interpolator numerisch errechneten Bahn zylindrische, konische oder schraubenlinienförmige Oberflächen herzustellen.
Hierzu 18 Blatt Zeichnungen

Claims (13)

Patentansprüche:
1. Positionierungseinrichtung für einen beweglichen Teil einer Arbeitsmaschine, insbesondere Werkzeugmaschine, längs einer oder mehrerer Achsen, die von einer diskontinuierliche Positionierungsbefehle liefernden Programmeinheit gespeist wird und einen Interpolator aufweist, der in aufeinanderfolgenden Interpolationszyklen Positionierungsinkremente errechnet, für jede der Achsen einen die Positionierung des beweglichen Teils durchführenden Servomechanismus speist, und einen Speicher sowie eine von der Programmeinheit gespeiste, mit dem Speicher verbundene arithmetisehe Einheit enthält, dadurch gekennzeichnet, daß der Interpolator (100) ferner ein Register
in dem Speicher (LDR) zum Speichern der Koordinaten-Differenzen des von der Programmeinheit (56, F i g. 9) hinsichtlich seiner Koordinaten gelieferten Zielpunkts und Ausgangspunkts enthält, ferner eine Verschiebeeinrichtung (76, 77, Fig. 14) zum Verschieben der Koordinaten-Differenzen in dem Register zur Bestimmung von den Koordinaten-Differenzen proportionalen Positionierinkrementen für jede Achse in der Weise, daß der bewegliche Teil sich längs einer geraden Linie zwischen den beiden Punkten verschiebt, sowie logische Vergleichskreise (133, Fig. 26; 135, Fig. 27; 137, Fig. 28; 139, Fig. 29; 140, Fig. 30) zum Vergleich vorbestimmten von der Programmeinheit (56) gelieferter Daten für die maximale Geschwindigkeit und für die Koordinaten des Ankunftspunkts mit der Ist-Geschwindigkeit und Stellung des beweglichen Teils zwecks Modulation der Geschwindigkeit des beweglichen Teils gemäß einer vorgegebenen Bewegungsablaufvorschrift und einem logischen Schaltkreis (70, F i g. 13), der auf die logischen Vergleichskreise anspricht, indem er die arithmetische Einheit (71,72, F i g. 13) zur Ansammlung der Positionierinkremente für jede Achse in einem anderen Register des Speichers (LDR) zusätzlich zu den Ist-Koordinaten des beweglichen Teils einstellt. .
2. Positionierungseinrichtung nach Anspruch 1, wobei der bewegliche Teil an wenigstens zwei Achsen entlang bewegbar und das Verhältnis der vom Interpolator in jedem Interpolationszyklus für diese beiden Achsen errechneten Positionierungsinkremente zwischen zwei aufeinanderfolgenden, von der Programmeinheit gegebenen Positionierungsbefehlen konstant ist, dadurch gekennzeichnet, daß während eines dritten Zeitabschnittes, in dem der Interpolator (100) die Positionierungsinkremente errechnet und in wirklicher Zeit die Positionierung des beweglichen Teils steuert, der Interpolator (100) die Positionierung des beweglichen Teils längs der Bewegungsbahn (P\-P2) in einer ersten Phase (Ti) mit konstanter Beschleunigung, in einer, zweiten Phase (T2) mit konstanter Geschwindigkeit und in einer dritten Phase (T 3) mit im wesentlichen konstanter Verzögerung steuert
3. Positionierungseinrichtung nach Anspruch 2, dadurch gekennzeichnet, daß während eines zweiten Zeitabschnittes, in dem der Interpolator (100) das Geschwindigkeitsinkrement (hx, hg) auf der Basis des gegebenen Positionierungsbefehls errechnet, der Interpolator (100) die Differenz x2 - xi und y2 — yi zwischen den dem gegebenen Positionierungsbefehl entsprechenden Koordinaten (x2, y2) und den dem vorhergehenden Positionierungsbefehl entsprechenden Koordinaten (x\, yi) hintereinander, in demselben Verhältnis herabgesetzt, bisi eine der so modifizierten Differenzen einen der höchstzulässigen Beschleunigung entsprechenden, durch einen Wählschalter (117) vorherbestimmten Wert erreicht, so daß die endgültigen Werte der so modifizierten Differenzen die Geschwindigkeitsinkremente (hx, hy) bilden.
4. Positionierungseinrichtung nach Anspruch 3, dadurch gekennzeichnet, daß während des dritten Zeitabschnitts, in dem der Interpolator (100) die Positionierungsinkremente errechnet und in wirklicher Zeit die Positionierung des beweglichen Teils steuert, der Interpolator (100) in. der Phase (TX) konstanter Beschleunigung die aufeinanderfolgenden Positionierungsinkremente (Dx, Dy) durch positive Summation der konstanten Geschwindigkeitsinkremente (hx, hy) und in der Phase (T3) der im wesentlichen konstanten· Verzögerung durch negative Summation der konstanten Geschwindigkeitsinkremente (hx, hy) errechnet.
5. Positionierungseinrichtung nach Anspruch 4, dadurch gekennzeichnet, .daß der Interpolator (100) in den Interpolationszyklen der Phase (Ti) die Geschwindigkeitsinkremente (hx, hy) stetig summiert, bis das'Positionsinkrement (Dx, Dy) den der Höchstgeschwindigkeit entsprechenden vorherbestimmten Wert (DxM, DyM) erreicht.
6. Positionierungseinrichtung nach Anspruch 5, dadurch gekennzeichnet, daß der Interpolator (100) während der Interpolationszyklen der Phase (Ti) die Summe aller aufeinanderfolgenden Positionierungsinkremente speichert und die Interpolationszyklen der Phase (T3>) beginnt, wenn die Entfernung des beweglichen Teils von der durch den gegebenen Positionierungsbefehl dargestellten Position (P 2) der um einen vorherbestimmten Betrag erhöhten gespeicherten Summe entspricht.
7. Positionierungseinrichtung nach Anspruch 6, dadurch gekennzeichnet, daß der. Interpolator (100) in der Phase (T3) die negative Summation der Geschwindigkeitsinkremente (hx, hy) beendet, wenn ein vorherbestimmter Wert des Positionierungsinkrementes (Dx, Dy) erreicht ist, und daß der negativen. Summation eine erste Unterphase konstanter Geschwindigkeit folgt, in der die vom Interpolator (100) in jedem Interpolationszyklus gerechneten Positionierungsinkremente (Dx, Dy) konstant sind und den so angenommenen, vorherbestimmten Wert behalten.
S. Positionierungseinrichtung nach Anspruch 7, dadurch gekennzeichnet, daß unmittelbar auf die erste Unterphase konstanter Geschwindigkeit wenigstens eine zweite Uriterphase konstanter Geschwindigkeit folgt, in der der Interpolator (100) konstante Positionierungsinkremente (Dx, Dy) errechnet, die einen niedrigeren Wert als derjenige der ersten Unterphase haben. - .
9. Positionierungseinrichtung nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, daß der Servomechanismus (102, 103, 104) an Stelle von dem interpolator (100) von dem letztgegebenen Positionierungsbefehl gespeist wird, wenn der bewegliche Teil eine Position nahe dem Punkt (P2) erreicht, der durch den von der
Programmeinheit (57) gegebenen Positionierungsbefehl (x 2, y 2) dargestellt wird.
10. Positionierungseinrichtung nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, daß der Interpolator (100) mit einem zyklischen Speicher (LDR) versehen ist, der eine Vielzahl von parallel zugänglichen, umlaufenden Registern (A, B, C1 D, E, F, G, I, L) aufweist, wobei die Periode eines Speicherzyklus in der Periode jedes der Interpolationszyklen mehrmals enthalten ist.
11. Positionierungseinrichtung nach Anspruch 10, in der ein Digital-Analog-Umsetzer (101) zwischen den Interpolator (100) und jeden der Servomechanismen (102, 103, 104) geschaltet ist, dadurch gekennzeichnet, daß die Verbindung zwischen jedem Servomechanismus (102, 103, 104) und dem entsprechenden Register in Zeitintervallen hergestellt wird, die einer ganzen Zahl der Interpolationszyklen entsprechen.
12. Positionierungseinrichtung nach Anspruch 10, in der jeder Interpolationszyklus wenigstens zwei Speicherzyklen umfaßt, dadurch gekennzeichnet, daß der Interpolator (100) in dem ersten dieser Speicherzyklen logische Vergleichsoperationen ausführt, um die erforderlichen Beschleunigungsänderungen zu definieren, und in dem zweiten dieser Speicherzyklen die Berechnung des zu diesem Interpolationszyklus gehörenden Positionierungsinkrementes auf der Basis der Resultate der Vergleichsoperationen ausführt.
13. Positionierungseinrichtung nach Anspruch 10, in der der zyklische Speicher π in Reihe angeordnete Register aufweist, von denen jedes m Zeichen mit jeweils b Bits enthalten kann, wobei die Zeichen und die Bits jedes Registers im Serien-Betrieb verarbeitet werden, dadurch gekennzeichnet, daß die Register in Form einer einzigen Verzögerungsleitung (LDR) angeordnet sind, die η ■ m ■ b Bits enthalten kann, wobei einander zugeordnete Bits der einzelnen Register in benachbarten Stellen der Verzögerungsleitung/Z-DÄ^ gespeichert sind.
DE19661563596 1965-09-03 1966-09-01 Positionierungseinrichtung für einen beweg ichen Teil einer Arbeitsmaschine, insbesondere Werkzeugmaschine Expired DE1563596C3 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
IT2044065 1965-09-03
IT2044065 1965-09-03
DEO0011920 1966-09-01

Publications (3)

Publication Number Publication Date
DE1563596A1 DE1563596A1 (de) 1969-12-04
DE1563596B2 DE1563596B2 (de) 1976-01-29
DE1563596C3 true DE1563596C3 (de) 1976-09-09

Family

ID=

Similar Documents

Publication Publication Date Title
DE2124983C2 (de) Numerische Bahnsteuerung für eine Werkzeugmaschine
DE2838375C2 (de)
DE2724602C3 (de) Einrichtung zur Gleichlaufregelung einer Zahnradbearbeitungsmaschine
DE2745914A1 (de) Numerische steuerung fuer die treibereinrichtung von schrittmotoren
DE1763946B2 (de) Positionierungseinrichtung für einen beweglichen Teil einer Arbeitsmaschine, insbesondere Werkzeugmaschine
DE2432311A1 (de) Lesegeraet
DE2633846A1 (de) Numerische regeleinrichtung
DE1538522B2 (de) Lageregeleinrichtung
DE2111635C2 (de) Einrichtung zum Umsetzen der sich im Vergleich zu einer Bezugsphasenlage ändernden Phasenlage eines periodischen Eingangssignals in eine Folge von Impulsen
DE1538512A1 (de) Numerisches Steuerungssystem
DE2713869A1 (de) Positioniersystem in einer numerisch gesteuerten vorrichtung
DE1948490B2 (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
DE1963237C3 (de) Numerische Programm-Steuervorrichtung mit Zeitmultiplexbetrieb
DE2001935C2 (de) Digitale Steuereinrichtung zur Steuerung von Vorschubbewegungen
DE2643148C2 (de)
DE1538408B2 (de) Numerisch arbeitende programmsteuerung zur stetigen bahnsteuerung fuer maschinenantriebe
DE2702498B2 (de) Vorrichtung zur numerischen Steuerung des Anfangspunktes des Gewindeschneidvorganges für mehrgängige Gewinde
DE1563596C3 (de) Positionierungseinrichtung für einen beweg ichen Teil einer Arbeitsmaschine, insbesondere Werkzeugmaschine
DE2111889A1 (de) Numerische Regeleinrichtung
DE2034373A1 (de) Steuereinrichtung zum Steuern der Geschwindigkeit des Vorschubs eines Werk zeugs
EP0672976B1 (de) Elektronische Steuereinrichtung für Einzelantriebe von Bearbeitungsmaschinen und Verfahren zum Steuern der Einzelantriebe
DE1763934A1 (de) Numerische Steuereinrichtung
DE2246375B2 (de) Numerisch gesteuerte gewindeschneideanlage
DE1965127C3 (de) System für numerisch gesteuerte Werkzeugmaschinen
DE1538595C3 (de) Numerisch arbeitende Programmsteuerungsanordnung für Werkzeugmaschinen