DE1563596B2 - Positionierungseinrichtung fuer einen beweglichen teil einer arbeitsmaschine, insbesondere werkzeugmaschine - Google Patents
Positionierungseinrichtung fuer einen beweglichen teil einer arbeitsmaschine, insbesondere werkzeugmaschineInfo
- Publication number
- DE1563596B2 DE1563596B2 DE19661563596 DE1563596A DE1563596B2 DE 1563596 B2 DE1563596 B2 DE 1563596B2 DE 19661563596 DE19661563596 DE 19661563596 DE 1563596 A DE1563596 A DE 1563596A DE 1563596 B2 DE1563596 B2 DE 1563596B2
- Authority
- DE
- Germany
- Prior art keywords
- positioning
- signal
- speed
- interpolator
- memory
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/41—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
- G05B19/4103—Digital interpolation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C21/00—Digital stores in which the information circulates continuously
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/43—Speed, acceleration, deceleration control ADC
- G05B2219/43006—Acceleration, deceleration control
Landscapes
- Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Numerical Control (AREA)
- Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)
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 Endköordinaten eines Laufsegments des beweglichen
Teils sind (DT-AS 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 11 69 007). Diese Vorrichtung kann aifch 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önnen und ohne daß besonders
komplizierte, zusätzlich durchzuführende Programmierungsarbeiten erforderlich sind.
Diese Aufgabe wird erfindungsgemäß dadurch gelöst,.
Diese Aufgabe wird erfindungsgemäß 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 Pösitioriierinkrementen 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,
F i g. 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,
Fig. 11 einen Serienspeicher der erfindungsgemäßen
Anordnung,
F i g. 12 den mit Lese- und Schreibregistern versehenen
Informationsspeicher der erfindungsgemäßen Anordnung,
F i g. 13 zwei Addierwerke der erfindungsgemäßen Anordnung,
Fig. 14 eine logische Schaltung zur Steuerung der
Dateneingabe und der Berechnung des Mindestinkrements in der erfindungsgemäßen Anordnung,
Fig. 15 ein allgemeines Blockschaltbild einer bevorzugten
Ausführungsform der erfindungsgemäßen Anordnung,
Fi 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äßen 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,
F i g. 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 (F i g. 1).
Die Vorbereitung des Programms wird in der gleichen Weise wie für eine Zweipunkt-Positioniersteuerung
ausgeführt. Für jeden geradlinigen Abschnitt Pi-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- KiV- K2V - K3V - KAV-K5V- IX- SX-KiX- K2X- K3X- KAX-K5X- K6X- KTX-IY- IV- KiV- K2V-K3V- KAV- K5V- IY- SY-KiY- K2Y-K3Y- KAY- K5Y- K6Y- KlY- CR,wobei
IV, IX, IYBezugssymbole sind, die angeben, daß sich die
folgende Information auf die Geschwindigkeit V bzw. die Achse Xbzw. die Achse Fbezieht; 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 AT5 Vstellen die fünf Dezimalziffern einer
den Wert der Geschwindigkeit V definierenden Zahl dar; die Zeichen KiX bis KTXbzw. Ki Y bis K7Y
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 -f- AUN eingesetzt werden,
um die Nebenfunktionen (Drehzahl und Drehrichtung des Spannfutters, Schmierung, automatischer Werkzeugwechsel
usw.) der Werkzeugmaschine zu steuern.
Die sieben Zeichen K iX bis K7Xbzw. K iY bis
AT7Kgestatten 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 KiV 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 F i g. 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 P2, 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 7, die in dem gleichen
Zeitabschnitt erzielt werden, stets gleich dem Verhältnis der zwischen den beiden Endpunkten liegenden und an
den Achsen X, Y(Flg. 1) entlang gemessenen Strecke
(x2 - χ 1) und (y2 - y 1) sein, d. h. >
dx ; x2 — xi -\
dy .. y2 — yi \ ..
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 feiner 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.
ι Um den geradlinigen Weg zwischen Pi und P2 mit feiner 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
P2, 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 r3
(dieses Inkrement ist der momentanen Beschleunigung entlang der Achse X annähernd proportional, da DT
konstant ist) und DxMeine 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 χ 1 und χ 2 muß der Interpolator die Bedingung
Dxn
Dxn
x2-x\
y2-yi
erfüllen, um die Weglinie geradlinig zu machen.
Während der Anfangsphase Ti (Fig.2) konstanter
Beschleunigung arbeitet der. Interpolator außerdem nach den folgenden Formeln
Dx («
Dxn-\-hx\
Dx(n+\).
Die Formel (3) legt fest; Welche x(n+l) der bewegliche Teil am Ende des n-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) £>η(π +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. V
Während dieser Anfangsphase Ti 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 = 2i_ Dxn + Dx/7.
Dx/; + Dx;i = Pxn.
Dx/; + Dx;i = Pxn.
Xl- Xn = Rxn.
Dxn > DxM.
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 — xl=.
die von der am Ende des (n — 2.) Interpolationsumlaufs
zurückgelegten progressiven Distanz
n-\
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 = xn — χ 1
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 71 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 71 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 71 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 Xoder yauf 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 Ti 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 Xoder 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 — xi),
auf der die zulässige Höchstgeschwindigkeit entlang der Achse Xbzw. Ferreicht oder überschritten wurde.
Die Distanz (xa —xl) 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 72 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 72 führt der Interpolator die folgenden
Operationen aus:
x (n+ 1) = xn + DxnM.
Xl — xn = Rxn.
Rxn < PxnM.
(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 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 PxnM verglichen wird. ;
Die Phase 72 konstanter Geschwindigkeit endet am Ende des Interpolationsumlaufs, in' welchem die
Ungleichheit (8) zum ersten Mal auftritt.
Der Phase 72 konstanter Geschwindigkeit folgt (Fig.2) die Phase 73 konstanter Verlangsamung, in
der der bewegliche Teil mit dem gleichen absoluten Beschleunigungs wert (für die beiden Achsen mit hx bzw.
hy verhältnisgleich) langsamer wird, der schon in der Beschleunigungsphase 71 verwendet wurde.
In der Phase Γ3 führt der Interpolator die folgenden
Operationen aus:
ΰχ:(η + 1) = Dxn - hx. (T)
x(n+\) = xn+'Dx{n+\). (3)
Dx/; < 1 μΐ-η. (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 P2 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 72 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 y beträgt.
Deshalb ist es erforderlich, die Phase konstanter Beschleunigung nicht bis zum 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.
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 T4 und T5
unterteilt wird. ,
Die Phase T4 beginnt bei Eintritt der Ungleichheit
(9). In dieser Phase TA führt der Interpolator die folgenden Operationen aus:
χ (n + 1) = xn + Dxn f.
x2 — xn < 16 [i.m.
(3")
(10)
(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 TA. ;
In der Phase Γ5 tätigt der Interpolator die folgenden
Operationen: ; ^ !
X 2 — xn < 1 μηι.
(10')
Die Operation (3'") erzeugt die Bewegung mit konstanter Geschwindigkeit,;die Vxo—hx/DT entspricht.
Die Wahl dieses Geschwihdigkeitswertes ist,
wenn auch nicht riotwendigVso doch zweckmäßig.
Die Vergleichsoperation (10') hat das Ende der Phase T5 und somit auch das Ende der gesamten Interpolation
zurFolge. '-'_'■ '■''r': ,''■)"''-
Daraus ergibt sich, daß die Phase 7"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 μπι hat und sich in einem
Interpolationsumlauf ergeben hat. Ebenso 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. F i g. 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 T3. Diesen
Phasen folgen die Phasen T4 und Γ5, 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.
x2 — xn
Dxn + Dxn,
oder durch den Eintritt der entsprechenden Bedingung für die Achse Fbestimmt.
Fig.4 zeigt den Fall, in welchem die Distanz (*2-xl) größer als 16 μΐη ist, und zwar während
gleichzeitig auch die Ungleichung (9) gültig ist: unter dieser Bedingung wird eine Beschleunigungsphase von
xi 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
Fig.5 zeigt den Fall, in welchem die Differenz
(^2-xl) 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 iWert. 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 hy 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 hxuna 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
xl
xl
x\
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 (x2 — xi)H und
(y2 —y i)H berechnet, wobei (x2—xi) und (y2-yi)
durch reine, aus jeweils 24 Bits bestehende Binärziffern verkörpert werden, so daß, ihr Wert; mit einer
Genauigkeit von 2~24 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 (x 2—Xi)H und
(y2-yi)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-xi)H
und (y2—yl)H gleichzeitig und wiederholt mit 2
multipliziert, bis einecder beiden Größen den der Höchstbeschleunigung entsprechenden Wert annimmt.
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 j2 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 im wesentlichen von dem in der deutschenΛ Patentanmeldung
0 11 720 VIIIb/21c der Anmelderin vom 7. 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 ahn 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 F i g. 15 symbolisch dargestellt, in der die Schalter 105Λ", 105 Yund 105Z zyklisch 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 yund X zurückkommend ist zu bemerken, daß
es klar ist, daß es in dem Zeitaufteilungssystem vorkommt, daß der Wert der Koordinate 7/2 durch den einzigen Digital-Analog-Umsetzer 101 mit einiger Verzögerung
an den Wandler des zu der Achse Vgehörenden Stellmechanismus gesendet wird, nachdem der Wert der
Koordinate xn an den Wandler des zu der Achse X gehöhrenden Stellmechanismus gesendet wurde. 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, Yund 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 yund ζ 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 Λ" 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 μβ 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 MA 00 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. ....■' L
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
FEASerregt, 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 TVOO bis 7705, die die Eingänge der
Ausgaberegister LEAB, 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 μβ. 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 μ5 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 GI00 = »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-r £>£59 umfaßt,
alles in allem also genau 3 · 12 · 60 = 2160 Binärbezeichnungen. Wenn also die /i-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£O0A
DEOOB, DEOOC... DEOON; DEOiA, DEOiB, DEOW... DEOiN;... DE59A, DE59B,
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 μβ (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 DE 59 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 F i g. 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~u μίτι (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 Fig. 17
dargestellt ist, die 24 Bits von χ 2 (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 210 μπι 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 210 μΐη 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 ig. 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. : ^ ·■':;,
Die Signale GAPi (logisches Produkt der Signale GIOO, INAZund DE59) und GAP2 (logisches Produkt
der Signale GI00, INIC, und DEOO) verzögern für jeden
Umlauf der Information in derV 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 GIRIerregt.
Die Periode des Signals GIRI entspricht somit 2 Umläufen der Information in der Leitung LDR. Diese
Periode kennzeichnet die Zeit eines Interpolationsumlaufs. ' Λ ..-.■■ ■'■■---:.. '--.■■' ':"hr.K:i :'i ■- U-V'- '.['■■
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, GIOO, TI05 in
Gegenwart von MA 00 (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 yon 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 GI00 = »1« bestimmten Halbperiode durch die
Signale 7700, 7702, 7703 und 7704 bestimmt werden, während die übrigen 4 Speicherregister (B, D, Fund L)
m der ersten, durch G/00 = »0« bestimmten Halbpe-Vriode
noch durch dieselben Signale 7700, 7702, 7703 und 7704 bestimmt werden, reichen 4 binäre Serienpar-
; allel-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 B, F, L und D arbeiten.
Deshalb (s. Fig. 12) sind 4 Schreibregister REAB, REEF, REIL und RECD vorhanden, deren Eingänge nur
in Gegenwart des Signals TI05 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 TI 04 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 MAOO
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 Ausgangsinformationen GIAB, GIEF, GILL und GICD
von jedem dieser Leseregister geht durch die Übertragungseinheit 51, um den Eingang GUAB, GUEF, GUIL
und GUCD des entsprechenden Schreibregisters zu erregen:' "■-: ■■· . .->
■■■ .. -V-.- .·■■..· J-*:·"'■
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
Xf!
aus der Operation (4) zu speichern, d. h. die bis jetzt zurückgelegte progressive Distanz (xn —xt).
Das Register B wird bei der Eingabe der Daten aus dem Programmgerät (F i g. 17) verwendet, um das
maximale Inkrement DxM (höchstzulässige Geschwindigkeit entlang der Achse X) zu speichern. Der Wert
DxMbleibt in dem Register B unverändert, bis von dem
Programmgerät ein anderer Wert eingegeben wird.
Das Register 1C wird bei der Eingabe der Daten aus dem Programmgerät (F i g. 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 1C wird bei der Eingabe der Daten aus dem Programmgerät (F i g. 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 D 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.
Am Ende der Interpolation wird der Inhalt des Registers D 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
hxzu speichern.
Das zu der Achse Y gehörende Register F enthält während der Interpolationszeit die Größe lyn, die zur
Durchführung der Korrektur nach Formel (11) verwendet wird.
Am Ende der Interpolationszeit (F ig. 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 - χ 1 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· x\ 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 / 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 LTzu 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 V7M/4derFlip-Flop-SchaItung21.
Da der Wahlschalter 16 (Fig. 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 UNIFder Flip-Flop-Schaltung^S, 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 Zustimmungssignale (RESE [Fehlen
des allgemeinen Nullungssignals], ORER [keine
Lesefehler] und AUTO [Wahl der automatischen Dateneingabe vom Band]) ist die Torschaltung 35 offen.
Die Flip-Flop-Schaltung 25 wird jedesmal, wenn das
Bandlese-Verzögerungssignal RILEabwesend ist, durch
den erregten Ausgang RILE des Univibrators 26 und durch d|e 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 LAFI
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 L/4F/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 BOVI erregt auch einen Flip-Flop 29 und macht so sein Ausgangssignal BOA ^unwirksam, 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 BOAUanwesend 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 BO V/unwirksam.
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 BOA V fehlt 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.
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 AUIV, AUIP und
AUIZ hervorruft, erzeugt in Gegenwart der Signale
RILEund 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 ANOl erzeugt,
das ebenso wie die Signale BOVI und A VNA die Weiterbewegung des Bandes bewirkt. Auch das Lesen
eines Geschwindigkeitszeichens ruft ein die Weiterbewegung des Bandes veranlassendes Signal ANOi
hervor. Die Erzeugung des Signals ANOi wird in dem 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 AN04 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
BOA V 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 ΛΛ/04 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 GOP4 (das das Ende der Verstellbewegung des
beweglichen Teils während eines Interpolationstaktes bestimmt) kann durch eine durch das Signal MASI 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 OÄP/(»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
CIFS 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 C/F9 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 5LA V wird wirksam gemacht, wenn der Flip-Flop 43
durch das Auftreten des Ziffernzählsignals CIF1
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), FIIN(EnOe 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 LELE e'mtn Flip-Flop 44,
dessen Ausgang AVER erregt bleibt und in diesem Zustand ein Signal BLlNhervorruft, das den Ziffernzähler
74 stillsetzt und so die Eingabe jedes Vorzeichens öder 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 AVER
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; V:
Zu diesem Zweck werden die Wahlschalter 16,17,31
und 34 nach dem Einschalten der Maschine auf MAN
(F ig. 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 10771 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 A ί/Tgestellt. :y; r ; Γ ['.'. .
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 LD/?-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 A VAB
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 zwischen 1 μπτ 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/.';.
einem auf eine erste Verschiebungsachse Bezug nehmenden Adressenzeichen (z. B. IX);
sieben auf die erste Verschiebungsachse Bezug
nehmenden Ziffernzeichen (£ B. K ί Χ bis K 7 X).
Der folgende Datenblock 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
foigen(z.kkw^kjy). 5Iv,;;: >
■.;;■.·.'
' Wenn der bewegliche Teil der Maschine sich an mehr
als zwei Achsen entlängbewegen 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[Kl Vbis K7V), die den Wert der Höchstgeschwindigkeit für diese Verschiebungsachse darstellen.
ein darauffolgendes Geschwindigkeitszeichen (IV); fünf Ziffernzeichen[Kl Vbis K7V), 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 VAS jeweils einen Schritt weiter,
und der Leser liest jedesmal ein Zeichen.
Die gelesenen Zeichen werden durch Lesekanäle H1
bis i/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 AUXl bis AUXN, wenn
das gelesene Zeichen eines der Hilfsbefehlszeichen A U Ibis A UN ist;
einen der Ausgänge AUIC, AUIP, AUIZ wenn das gelesene Zeichen eines der Adressenzeichen IX, IY,
IZ'ist;
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 KiX bis K9X für die Koordinate x, K1 Ybis K9Yfü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.
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 KiX bis K9X für die Koordinate x, K1 Ybis K9Yfü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 BAOl bis £4 09 speisen einen
Umkodierer 69 (F ig. 10).
Die Ausgänge AUXl bis AUXN speisen entsprechende
Hilfsfunktionen-Steuerrelais, während ihre Oder-Funktion ein Signal ORAU erzeugt
Die Ausgänge AUIQ AUIP und AUIZ liefern die
Adressensignale MAIC, MAIP und MAEZ die durch entsprechende Torschaltungen, 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 RESE'in 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 (Fig. 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 CIFl 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 CIFl 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,
K4V, K5V, IX, SX, KlX, KlX, K3X, K4X, K5X,
K6X, 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 CIFi 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, CIFS 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.
Pas 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 -i- 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 B 01 bis A4 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 umzucodieren.
Die Eingänge jeder dieser Sektionen werden durch ein entsprechendes Ziffernsignal unter CF2 bis CF8
gesteuert, das den Wert der eingegebenen Dezimalzifferangibt. ■ : , ;v ^f-;
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 SRINliefert. . Vv :j ;
Genauer gesagt, die Zähler 8 und 9 (Fig.6) verzögern den Serienwandler 78 durch ihre Ausgänge
COOO bis C007 und COOO bis C007 bzw. C008, ÜÖÖ8.
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 DEOi, DEiT, DE33, 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 DEH 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 DEYI bis DE40
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 MAOl -~ 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 (C 008 = »1«), d. h. während
des Abtastens der folgenden 8 Eingänge MA 17 h- M/4 24 des Umcodierers 78, wird schließlich
der Steuereingang CODi?erregt, so daß die verbleibenden
8 Eingangsbits von den nacheinander abgetasteten Eingängen Ma 17 bis MA 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 (F i g. 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 /CS/ 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. 20).
Die Signale INVE und GI00 (von denen das letztere
das Speicherregister B bestimmt) gestatten deshalb die Übertragung der ersten Geschwindigkeitsziffer von
dem Umcodierer-Ausgang SEIN auf den Ausgang S 002
des Addierers 71. Da der zweite Eingang SOOi des Addierers 71 nur mit einer Reihe von Nullen gespeist
wird, kommen die Bits der ersten Geschwindigkeitsziffer ohne jede Veränderung an den Ausgang USOMdes
Addierers71. O :
Der Addierer-Ausgang * USOM speist über das logische Netzwerk 51 und den 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 GI00 und 7700
bestimmt wird. ·ί·ίΐ\>?ί· ϊ *, >
■ .·. .-'. ·;.
Wenn danach diei zweite: Geschwindigkeitsziffer
K 2 V eingegeben wird; werden die 24 Bits, die diese Ziffer an den Ausgängen; des Serien-Wandlers 78
verkörpern, über den Addierer 71 zu den 24 Bits addiert, die gleichzeitig durch 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 + K5V 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 /MC ist) (Fig. 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 K \X, das die größte geltende
Ziffer der Koordinate χ 2 darstellt. Diese Ziffer und die sechs folgenden Ziffern K2X, K3X, KAX, K5X,
K 6X, 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 INVE (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 DEOi bis.DE24 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 (GI 00 = »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(GI00 = »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 D gespeichert.
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 ICSI, 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)WiTa 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 INDI 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 ANQi 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
das die Berechnung des Mindestinkrements hx steuernde Signal C4/A/erzeugt. 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 (x\ ist die Koordinate des
Ausgangspunktes des nächstfolgenden zurückzulegenden Bahnabschnitts). Deshalb bewirkt das Signal CAIN
die Subtraktion des Inhalts Hxi des Speicherregisters
/von dem Inhalt H-χ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- x\ 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- χ I wird dann dem
Addierer-Ausgang USOMzugeleitet und durch das Tor
121 und den Kanal GUEF in das Speicherregister E
eingespeichert, bestimmt durch die Zeitsteuersignale Γ/02 und G/00. Außerdem wird der Inhalt Hx2
wieder in das Speicherregister Ceingetragen.
Das Signal CAINstellt ferner den Flip-Flop 76 so ein,
daß der Ausgang ANQX 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 VMC 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 AUMA 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 Geschwindigkeits- 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 Handkoordinateneiristeller 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 Fund die Stellung ZEMA auf die Achse Z. Die
Ausgänge dieser Stellungen werden wahlweise durch das Signal MA VI 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, AUlPund AUIZ,
während der Ausgang VEMA des Wahlschalters 32 wie das decodierte Geschwindigkeitssignal VA t/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, y bzw. ζ gehören) und der Geschwindigkeitseinsteller
62 werden durch die Steuersignale ICSI', IPSI', ZEATbzw. 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/Γ, cm/Γ, mm/1' 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
A401 -4- BA0Θ', erhält,, von denen jeder in
ODER-Funktion an den entsprechenden Ziffernausgang (BA 01 -τ- BA 09) des Dekoders 58 geschaltet ist.
Die Dateneingabe mittels: Händeinsteller simuliert
genau die Dateneingabe; durchdas 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.i 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 Geschwindigkeits-Koordinatenwählers
32 die Eingabe durch Niederdrücken der Drucktaste 5Ti4/?reingeleitet 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
Nach dem Lesen des letzten zu einem Programmblock gehörenden Ziffernzeichens wird das Signal
CAINerzeugt, 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 VMC 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 hx zu erhalten.
Diese Verschiebung wird durch die Anwesenheit von GOP 1 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 F/S/des Flip-Flops 123 (F i 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 Abliegt 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 DE27, DE28, DE29, DE30 und
DE31 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 Vergleichsoperationen für die Beschleünigungsändening und die Berechnungen
(4) und (6) ausgeführt werden. In dem nächstfolgenden Speicherumlauf erzeugt OPER außerdem
das Steuersignal GOPZ, 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
GOP3 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 Ti (F i g. 2) wird während der Anwesenheit des
Steuersignals GOP 2 die Operation (4), die die progressive Distanz
xn — χ 1 —y Dxn
liefert, von dem als Subtraktionswerk eingerichteten Addierer 71 ausgeführt, dessen Eingang SOOl 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 Fund 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 GOP3 wird
die das Positionsinkrement (Dx/x +1) liefernde Berechnung
(2) von dem Addierer 71 ausgeführt, dessen Eingang SOOl durch den Kanal GIIL und das Tor 126
mit dem Inhalt Dxn des Registers / gespeist wird und dessen Eingang S 002 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 /i-ten Interpolationsumlaufs
eingenommene Position x(n +1) definiert, wird während der Dauer des Steuersignals GOP3 von dem
Addierer 71 ausgeführt, wobei dessen Eingang SOOl durch den Kanal REIL und das Tor 129 mit dem Inhalt
xn des Registers L gespeist wird, während sein Eingang S002 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
Gleichzeitig mit der Operation (3) führt der Addierer
72 die die fiktive Distanz Pxn definierende Operation (5) aus, indem er seinem Eingang S021 zugeführten Inhalt
Dxn
des Registers Λ zu dem seinem Eingang S 022
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 wird), 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 T3 (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 T4 nur die Operation (3) ausgeführt, so daß sich der bewegliche Teil mit konstanter Geschwindigkeit
weiterbewegt.
Wenn der Ankunftspunkt P 2 erreicht ist, wird ein Signal FINE erzeugt, welches das GOP3 (Fig.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 ATund 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 Interpolationszyklus
(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 Y und auf entsprechende Weise für die Achse Z) gemäß der Korrekturformel (11)
gespeist wird. Die Größe lyn + 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
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 GI 00, und
wenn SEME = »0« ist, ergibt sich jedesmal der ίο folgende Sachverhalt:
REIL = >A«(Dxn darstellend),
GIAB = »0« fßxMdarstellend),
GIAB = »0« fßxMdarstellend),
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
Wenn sich dagegen der folgende Sachverhalt
REIL = »0«(Dxn darstellend),
GIAB = »l«p^Mdarstellend),
GIAB = »l«p^Mdarstellend),
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 GOP3 erregt der wirksam gemachte Ausgang VERA des Flip-Flops 132
den Flip-Flop 133, dessen wirksam gemachter Ausgang VECO die Interpplationsphase T2 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«(RrflMdarstellend),
REAB = »l«(RrflMdarstellend),
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
Wenn sich dagegen der folgende Sachverhalt
USOM = »1« (Rxn darstellend),
REAB = »0« (KrnMdarstellend),
REAB = »0« (KrnMdarstellend),
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 GOP3 erregt das Signal PIDI den Flip-Flop 135, dessen wirksam gemachter Ausgang ORDE die Interpolationsphase T3 konstanter Geschwindigkeit steuert.
Während der Anwesenheit von GOP3 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 /NS/vollständig bestimmt werden).
Deshalb ergibt sich während der Anwesenheit von DOP 2, G/00 und INSI, und wenn SEME= »0« ist,
jedesmal der Umstand, daß
GIIL = »Q«(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 15 abgeschaltet.
Wenn SEME = »1« (negative Bewegungsrichtung) ist, müssen die obigen Überlegungen umgekehrt
werden.
Während der Anwesenheit von GOPZ 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), x2 - χη<\6μπ\, 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
GOP2 und DE32 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.
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)
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 Positio- ι ο nierungsinkremente 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, F ig. 26; 135,
Fig. 27; 137, Fig. 28; 139, Fig. 29; 140, Fig. 30)
zum Vergleich vorbestimmter, 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, Fig. 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 (P1-P2) in
einer ersten Phase (Ti) mit konstanter Beschleunigung, in einer, zweiten Phase (T2) mit konstanter.
Geschwindigkeit und in einer dritten Phase (T3) 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 *2 - xl und
y2 — y\ zwischen den dem gegebenen Positionierungsbefehl
entsprechenden Koordinaten (x2, y2)
und den dem vorhergehenden Positionierungsbefehl entsprechenden Koordinaten (xi, y\) hintereinander,
in dernselben Verhältnis herabgesetzt, bis 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, Abbilden.
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 (Ti)
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.
8. 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 habea .·■■..■·■■■·-.··
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, C, 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 (LDR) gespeichert sind.
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 true DE1563596B2 (de) | 1976-01-29 |
DE1563596C3 DE1563596C3 (de) | 1976-09-09 |
Family
ID=
Also Published As
Publication number | Publication date |
---|---|
CH466403A (de) | 1968-12-15 |
BE686384A (de) | 1967-02-15 |
SE338460B (de) | 1971-09-06 |
CH439396A (it) | 1967-07-15 |
AT267662B (de) | 1969-01-10 |
US3518513A (en) | 1970-06-30 |
DE1279749B (de) | 1968-10-10 |
GB1154761A (en) | 1969-06-11 |
DE1563596A1 (de) | 1969-12-04 |
BR6683504D0 (pt) | 1973-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2124983C2 (de) | Numerische Bahnsteuerung für eine Werkzeugmaschine | |
DE2832646C2 (de) | Elektronische Steuereinrichtung für den Antriebsmotor der Werkstückspindel einer Nockenschleifmaschine | |
DE2745914A1 (de) | Numerische steuerung fuer die treibereinrichtung von schrittmotoren | |
DE2724602C3 (de) | Einrichtung zur Gleichlaufregelung einer Zahnradbearbeitungsmaschine | |
DE2833981A1 (de) | Anordnung zur steuerung der drehzahl eines motors, insbesondere eines magnetband-transportmotors | |
DE1538512A1 (de) | Numerisches Steuerungssystem | |
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 | |
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 | |
DE1763934C3 (de) | Positionierungseinrichtung für einen beweglichen Teil einer Arbeitsmaschine, insbesondere Werkzeugmaschine | |
DE2246375C3 (de) | Numerisch gesteuerte Gewindeschneideanlage | |
DE1538408B2 (de) | Numerisch arbeitende programmsteuerung zur stetigen bahnsteuerung fuer maschinenantriebe | |
EP0672976B1 (de) | Elektronische Steuereinrichtung für Einzelantriebe von Bearbeitungsmaschinen und Verfahren zum Steuern der Einzelantriebe | |
DE1563596C3 (de) | Positionierungseinrichtung für einen beweg ichen Teil einer Arbeitsmaschine, insbesondere Werkzeugmaschine | |
DE1563596B2 (de) | Positionierungseinrichtung fuer einen beweglichen teil einer arbeitsmaschine, insbesondere werkzeugmaschine | |
DE1965127C3 (de) | System für numerisch gesteuerte Werkzeugmaschinen | |
DE3425472A1 (de) | Verfahren und vorrichtung zur digitalen bestimmung der zahl der umdrehungen sich drehender koerper | |
DE1538595C3 (de) | Numerisch arbeitende Programmsteuerungsanordnung für Werkzeugmaschinen | |
DE1763932B2 (de) | Vorrichtung für eine numerisch arbeitende Programmsteuerung | |
DE2900738C2 (de) | Steuereinrichtung für eine Maschine zum Herstellen von Glasgegenständen | |
DE2747448C2 (de) | ||
DE1638035C (de) | Anordnung zur Ermoghchung einer wahl weise einstellbaren Korrektur von Steue rungszahlen fur numerisch gesteuerte Werk zeugmaschinen | |
DE1763761B2 (de) | Digitale stelleinrichtung mit vielphasensteuerung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
E77 | Valid patent as to the heymanns-index 1977 | ||
AG | Has addition no. |
Ref document number: 1763934 Country of ref document: DE |