DE1948490B2 - 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 - Google Patents

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

Info

Publication number
DE1948490B2
DE1948490B2 DE1948490A DE1948490A DE1948490B2 DE 1948490 B2 DE1948490 B2 DE 1948490B2 DE 1948490 A DE1948490 A DE 1948490A DE 1948490 A DE1948490 A DE 1948490A DE 1948490 B2 DE1948490 B2 DE 1948490B2
Authority
DE
Germany
Prior art keywords
register
coordinate values
path
points
macro
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
Application number
DE1948490A
Other languages
English (en)
Other versions
DE1948490A1 (de
DE1948490C3 (de
Inventor
John Kent Houston Tex. Mcgee (V.St.A.)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Giddings and Lewis LLC
Original Assignee
Giddings and Lewis LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Giddings and Lewis LLC filed Critical Giddings and Lewis LLC
Publication of DE1948490A1 publication Critical patent/DE1948490A1/de
Publication of DE1948490B2 publication Critical patent/DE1948490B2/de
Application granted granted Critical
Publication of DE1948490C3 publication Critical patent/DE1948490C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/414Structure of the control system, e.g. common controller or multiprocessor systems, interface to servo, programmable interface controller
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/19Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • G05B19/33Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an analogue measuring device
    • G05B19/37Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an analogue measuring device for continuous-path control
    • G05B19/371Numerical 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 positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an analogue measuring device for continuous-path control the positional error is used to control continuously the servomotor according to its magnitude
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/41Numerical 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/4103Digital interpolation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34132Choosing largest, major coordinate axis
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/34Director, elements to supervisory
    • G05B2219/34167Coarse fine, macro microinterpolation, preprocessor

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Numerical Control (AREA)
  • Feedback Control In General (AREA)

Description

geschwindigkeit beschränkt ist oder aber an die Genauigkeit nicht allzu hohe Anforderungen gestellt werden.
Im Gegensatz zu diesen vorbekannten numerischen Steuerungssystemen soll die Erfindung die Verwendung eines einfachen und für alle Steuerungsvorgänge in gleicher Weise brauchbaren Zeittaktgenerators ermöglichen, wobei infolge der Unabhängigkeit
_ Null und 33Vs kHz für einen solchen Anwendungs-
AX und AY aufnehmenden Speicher (109, 107; 20 fall zu erzeugen.
Fig. 7b) der Stellenzahl der den Regelkreisen Ist der dadurch bedingte Aufwand nicht tragbar,
zugeführten, die jeweilige IST-Stellung des zu so ist man gezwungen, die maximale Impulsfolgeverstellenden Organs darstellenden Koordinaten- frequenz herabzusetzen, mit dem Ergebnis, daß sich werte entspricht und die diese Stellenzahl über- die Qualität der Oberflächenbeschaffenheit eines auf steigende Zahl von Stellen der Koordinatenwerte 25 diese Weise bearbeiteten Werkstücks verringert. So AX und AY in zusätzlichen Restspeichern (113, wird in der Zeitschrift Electronics vom 12. 4. 1973 111; Fig. 7b) abgespeichert werden, so daß sie auf der Seite 112 bei der Beschreibung derartiger bei der Ermittlung der jeweils folgenden Koordi- digitaler Steuerungssysteme darauf hingewiesen, daß natenwerte A X und A Y zur Ermittlung der Ko- infolge der hohen Pulsfrequenzen, die notwendig sein ordinatenwerte des nächsten Makropositions- 3° können, die Anwendung derartiger Verfahren auf punktes berücksichtigt werden können. Steuerungen beschränkt ist, bei denen die Verstell-
16. Schaltungsanordnung nach den Ansprüchen 1 bis 5 und 15, gekennzeichnet durch eine derartige Steuerung der die Restspeicher (113, 111; Fig. 7b) mit dem Rechner (53; Fig. 7a) verbindenden Gatterschaltungen, daß bei der Eingabe der Koordinatenwerte AX und AY in den Rechner zur Ermittlung der Koordinatenwerte (XCP, YCP) der Makropositionspunkte
der Speicherinhalt der Restspeicher (113, 111; 40 der einzelnen Zeitspannen, die durch diesen Zeit-Fig. 7b) in diesen Speicher verbleibt und der taktgenerator festgelegt werden, von dem jeweiligen
Bewegungsvorgang und der jeweiligen Bahnform Taktfrequenzen gewählt werden können, die hinsichtlich der sie verarbeitenden Baugruppen oder der sie erzeugenden Schaltungen keinen unwirtschaftlichen Aufwand erfordern.
Die Erfindung ermöglicht dies dadurch, daß, aus-
gehend von der eingangs geschilderten Schaltungsanordnung, neben den die im Aufzeichnungsträger 50 eingespeicherten Koordinatenwerte von Bahnpunkten und neben den die jeweils ermittelten digitalen
Gegenstand der Erfindung ist eine Schaltungs- Koordinatenwerte von Makropositionspunkten aufanordnung zur numerischen Steuerung der Bewe- nehmenden und zum Vergleich mit den entsprechengung eines verstellbaren Organs längs einer Bahn- den Koordinatenwerten der vom verstellbaren Organ kurve, deren Verlauf durch in einem abtastbaren 55 tatsächlich erreichten Bahn- und Makropositions-Adfzeichnungsträger zusammen mit die jeweils punkte bereitstellenden Registern weitere Register gewünschte Verstellgeschwindigkeit beinhaltenden zur Aufnahme und Bereitstellung der Koordinatennumerischen Daten eingespeicherten Folgen der digj- werte der gegenseitigen Abstände aufeinanderfolgentalen Koordinatenwerte von Bahnpunkten vorgegeben der Bahnpunkte vorhanden sind und daß die dif ist, durch Ermittlung der digitalen Koordinatenwerte 60 Ein- und Ausgänge der erwähnten Register mit der von zwischen den eingespeicherten Bahnpunkten lie- Ein- und Ausgängen eines hinsichtlich seiner Rechgenden Zwischenpunkten (Makropositionspunkte), nerfunktion mit Hilfe einer Funktionssteuerung eindie den den einzelnen Verstelhingsrichtungen zu- stellbaren Digitalrechners verbundenen Gatterschalgeordneten, den Unterschied zwischen den die je- tungen (Lesetore, Schreibtore) durch einen ftste FoI-weilige Soll- und IST-Stellung des verstellbaren 65 gen gleich langer Zeitabschnitte liefernden Zeittakt Organs darstellenden digitalen Koordinatenwerte zur ge^er so gesteuert werden und die Funktion de Steuerung entsprechender Servoantriebe auswerten- Rechners durch eine zeittaktabhängige Programm ten Regelkreisen zugeleitet werden, insbesondere zur steuerung so eingestellt wird, daß in jedem Zeit
Speicherinhalt zu den zur Aufnahme in die gleichen Restspeicher bestimmten Stellen der Koordinatenwerte des jeweils nächstfolgenden Positionspunktes hinzuaddiert wird.
abschnitt die Koordinatenwertc eingespeicherter Bahnpiinkte und des Abstandes zweier aufeinanderfolgender Bahnpunkte voneinander, die die jeweilige Verstellgeschwindigkeit beinhaltende Information sowie eine die jeweilige Kurvenform beinhaltende Information in den Rechner gelangen und durch diesen zur Ermittlung der Koordinatenwerte der in jedem der Zeitabschnitte durch das verstelloare Organ zu erreichenden Makropositionspunkte der vorgegebenen Bahnkurve ausgewertet werden.
Die erfindungsgemäße Anordnung liefert somit in stets gleichen Zeitabständen die Koordiratenwerte von auf der abzufahrenden Bahn liegenden Positionspunkten, die in den hierfür vorgesehenen Regelkreisen mit den Koordinatenwerten entsprechender Bahnpunkte verglichen werden, an denen sich das zu bewegende Organ zu diesem Zeitpunkt gerade befindet. Aus diesem Vergleich ergibt sich die Steuerungsgröße, die die Servoantriebe dazu bringt, das Organ so zu verstellen, daß die jeweils einander zugeordneten Kooidinatenwerte der Soll- und IST-Seite miteinander übereinstimmen. Dabei wird davon ausgegangen, daß im Aufzeichnungsträger nicht nur eine Bahnbeschreibung in Form der Koordinatenwerte von Bahnpunkten mit entsprechender Kurvenangabe vorhanden ist, sondern auch eine Information hinsichtlich der Geschwindigkeit, die das zu steuernde Organ bei der Bewegung von einem programmierten Bahnpunkt zum andern einnehmen soll. Die Zeitspanne, die zwischen den einzelnen Ermittlungen von Zwischenpunkten zwischen den programmierten Bahnpunkten jeweils zur Verfugung steht, ist konstant, und zwar unabhängig von der jeweils einprogrammierten Geschwindigkeit, dem Abstand zweier programmierter Bahnpunkte und der jeweiligen Riehtungsangabe, d. h. der jeweiligen Verstellachse, in der sich die Bewegung vollziehen soll.
Gegenüber Steuerungsanordnungen zur Analogsteuerung des Bewegungsablaufes, wie sie etwa durch die DT-AS 1 162 930 oder die US-PS 3 277 288 gezeigt werden, hat die der Erfindung zugrunde liegende Digitalsteuerung den Vorteil, daß auch bei Verstellungen über große Bereiche hinweg, jede gewünschte Genauigkeit mit einem tragbaren Aufwand erziclbar ist.
Weitere Merkmale der Erfindung, die im einzelnen in den Unteransprüchen niedergelegt sind, befassen sich mit der überlappenden Ansteuerung der einzelnen Bahnpunkte im Hinblick auf deren koordinatenmäßige Zuordnung zur Sicherung eines gleichmäßigen und störungsfreien Kurvenverlaufes, mit der Vorausberechnung der Koordinatenwerte des als nächstes anzusteuernden Bahnpunktes, um eventuell notwendige Korrekturen errechneter Koordinatenwerte für die Abstände zweier Makropositionspunkte noch so rechtzeitig und in einem solchen Ausmaße vornehmen zu können, daß der auf Grund der Steuerung erreichte Bahnpunkt mit dem im Aufzeichnungsträger programmierten Bahnpunkt auch tatsächlich zusammenfällt sowie der Ermittlung digitaler Koordinatenwerte von zwischen den errechneten Makropositionspunkten liegenden Mikropositionspunkte deren Zahl von der Entfernung zweier Makropositionspunkte unabhängig ist.
In den Zeichnungen sind zwei Ausführungsbtispiele der Erfindung dargestellt Es zeigt
F i g. 1 eine perspektivische Ansicht einer Fräsmaschine zur Veranschaulichung eines typischen Anwendungsgebietes, für das sich das erfindungspemäße System eignet,
F i g. 2 die Bahn, die ein Maschinenelement der Fräsmaschine nach den erfindungsgemäß erzeugten Kommandodaten abfährt,
F i g. 3 einen Lochstreifenausschnitt mit mehreren Datenblöcken, die jeweils eines von mehreren hintereinander auftretenden Wegstücken einer mit einem Werkzeug abzufahrenden Bahn darstellen,
F i g. 4 den Aufbau eines Datenblockes im Lochstreifen,
F i g. 5 a und 5 b die Vektorgrößen, die von numerischen Kommandodaten dargestellt werden, welche im Verlauf der erfindungsgemäßen Beschreibung eines geraden Wegstückes erzeugt werden,
Fig. 6a und 6b in allgemeiner Form die Vektorgrößen, die von numerischen Kommandodaten dargestellt werden, welche im Verlauf der erfindungsgemäßen Beschreibung eines zirkulären Wegstückes erzeugt werden,
F i g. 7 — nach entsprechender Zusammensetzung der Teilfiguren 7 a ... 7 d — ein allgemeines Blockschema eines Systems mit den erfindungsgemäßen Merkmalen,
F i g. 8 ein Schema zur Zusammensetzung der aus den Teilfiguren 9 a ... 91 bestehenden F i g. 9,
F i g. 9 ein detailliertes Blockschaltbild der ersten Ausführungsform eines nach Fig. 7 aufgebauten Systems,
F i g. 10 a ... 10c die Beziehung zwischen Programmschemata, nach denen das System von F i g. 9 in entsprechenden Programmschrittzyklen in verschiedenen Betriebsstufen arbeitet,
Fig. 11 ein Impulsdiagramm, aus dem die Zeitbeziehungen zwischen verschiedenen Taktimpulsen ersichtlich sind, die vom System nach Fi g. 9 erzeugt werden,
Fig. 12 die letzten beiden Stufen eines Schieberegisters, das sich als Zwischenregister von F i g. 9 eignet,
Fig. 12a und 12b die Schaltbilder von zwei Lesetoren, die im Register von Fig. 12 verwendet werden,
Fig. 13 das Schaltbild einer Stufe eines Registers, das sich als aktives Register 57 von F i g. 9 eignet,
Fig. 14 ein Zeitdiagramm für den Digitalrechner von F i g. 9,
Fig. 15 eine Darstellung aller Register von Fig. 9 svAvie die Stellung der Dezimalkommas der in diesen Registern stehenden Zahlen,
Fig. 16 das Ausführungsbeispiel einer logischen Schaltungsanordnung, mit der sich in einem gewünschten Zeitabschnitt ein Auftastimpuls aus den vom Zeitbasis- und Taktgebersystem von F i g. 9 erzeugten Programmschrittimpulsen ableiten läßt,
Fig. 17 das Befehlsschema für Operationen, die während der letzten korrigierten Makrobewegung eines geraden Wegstückes ausgeführt werden, einschließlich der für ein neues gerades Wegstück erforderlichen Vorberechnungen,
Fig. 18 das Befehlsschema für Operationen, die während einer Makrobewegung eines geraden Wegstückes ausgeführt werden,
Fig. 19 ein Vektordiagramm, das zeigt, wie die in der X- und der Y-Achse auszuführenden Makrobewegungen korrigiert werden, damit das gerade Wegstück genau am Ende einer Makrobewegung beendet wird,
509 507/40
Fig. 20 ein Flußdiagramm, aus dem ersichtlich ist, in welcher Reihenfolge das System von Fig. 9 in seinen verschiedenen Betriebsstufen arbeitet, um aufeinanderfolgende Geraden und Kreisbogenstiicke zu beschreiben
Fig. 21 das Befehlsschema .ur Operationen, die im Verlauf der letzten mit normaler Geschwindigkeit auszuführenden Makrobewegung beim Beschreiben einer Geraden durchgeführt werden, während der ein großer Überlauf ermittelt wird, so daß Vorberechnungen zur Korrektur der Geschwindigkeit von zehn anschließend auftretenden Makrobewegungen durchgeführt werden, damn der Endpunkt genau am Ende der zehnten Makrobewegung erreicht wird,
Fig 22 das Befehlsschema fur Operationen, die in den Arbeitsspielen 1 ... 9 der zehn Arbeitsspiele mit korngierten Makrobewegungen durchgeführt werden, um den Endpunkt genau anzufahren
FJß;23,daS Befehlsschema fur Operationen, d:e im Verlauf einer linearen Makrobewegung ausgeführt werden, wahrend der em kleiner Überlauf ermittelt
r ι g. 24 das Befehlsschema fur Operationen, die im Verlauf der letzten mit normaler Geschwindigkeit zu beschreibenden Makrobewegung durchgeführt a5 werden, die auf die Makrobewegung (F 1 g. 23) folgt, während ein kleiner Überlauf ermittelt wurde, und in den Vorberechnungen zur Korrektur der Geschwindigkeit von zehn anschließend auftretenden Makrobewegungen durchgeführt werden, damit der Endpunkt genau angefahren wird,
Fig. 2SI... 25? eine Reihe von Vektordiagrammen, aus denen ersichtlich ist, wie aufeinanderfo gende zur Beschreibung eines Kre.sbogenstuckes erforderliche Vektorgroßen aus ursprünglich gegebenen Vektorgrößen berechnet werden,
Fig.26. g. 26c zusammengesetzte Vektordiagramme, in denen eine Reihe von Makrobewegungsveu,™ X und y CargesKlU sind die „»ch lem S in Fig. 25a ... 25f gezeigten Verfahren gewonnen werden, sowie eine Reihe von auf einem Kreisbogen
s^;^^^ Makrob~ führt wird, um festzustellen, wann die Sollstellung auf einem Kreisbogenstück innerhalb eines vorbestimmten Abstandes vom vorgegebenen Endpunkt dieses Wegstückes liegt,
Fig. 33 das Befehlsschema für Datenverarbeitungsoperationen, die während eines Arbeitsspiels ausgeführt werden, in dem ein großer Überlauf ermittelt wird und auf das ein gerades Wegstück folgt
F i g. 34 — ähnlich wie F i g 33 — das Befehlsschema für Datenverarbeitungsoperationen die während eines Arbeitsspiels ausgeführt werden in dem ein großer Überlauf ermittelt wird, auf das jedoch ein zirkuläres Wegstück folgt
F i g. 35 das Befehlsschema für Operationen, die in einem Arbeitsspiel ausgeführt werden, in weichcm ein kleiner Überlauf ermittelt worden i*i
Fig. 36 das Befehlsschcma für Datenverarbeitungsoperationen, die in einem Arbeitsspiel zur Be-Schreibung eines zirkulären Wegstückes ausgeführt werden; dieses Arbeitsspiel tritt im Anschluß an ein Arbeitsspiel (Fig. 35) auf, in dem ein kleiner Überlauf ermittelt worden ist, und nach ihm folgt ein gerades Wegstück
F i g. 37 ein ähnliches Befehlsschema wie F i g 36, außer daß im Anschluß an dieses Arbekssp et ein zirkuläres Wegstück auftritt
del,sfgnalen der "RegelkreiseToT^TIT "
Fi e 39 ein Vhoma 7„r 7„c, . ' j
den -felftau, er, JcT KPm besTeSen^F£ To
gerade als auch zirkuläre WegstückeTach den aHeV-
nierenden Interpolationsverfahren beschrieben Ve den, ucsujiitnui wer
Fjp 41 1 imH jik j- λ, ι
numerUen A^ ti™ welche von il
werden,
Fi s. 4"> in
einestraden %^£?^^ schließüch der füf den Begin! eines Kreisbogen-
ver1aufenden
fur OperaUonen, die
55
^X in denen
die Vorzeichen der Größen / J, AX und IY beim zirkulären Interpolieren im Uhrzeiger- und Gegenzeigersmn dargestellt sind
Fi g. 30 a und 30 b die Verteilung einer Reihe von Mikropositionen auf der X- und der 7-Achse, die im Verlauf eines Verfahrens zur Erzeugung von numerischen Kommandodaten fur em Kreisbogenstück berechnet werden
Fig. 31 das Befehlsschema für Operationen, die während eines typischen Arbeitsspiels zur Beschreibung,eines Kreisbogenstückes ausgeführt werden,
Fi g \2 eine Methode, mit der das zweideutige Resultat einer Prüfung beseitigt wird, die durchge-
Fig. 45 ein Flußdiagramm, aus dem ersichtlich ist, in welcher Reihenfolge das System von Fin 40 in seinen verschiedenen Betriebsstufen arbeitet um aufeinanderfolgende Geraden und Kreisboeenstücke zu beschreiben Kreisbogenstucke
Fig. 46 das Befehlsschema für Operationen, die im letzten alternierend-linearen Arbeitssoiel in welch.m kein überlaui crmittel« wurde, ausgeführt werden, 6
Fig. 47 das Befehlsschema für Operationen die von der zweiten Ausführungsform des Systems im ersten von zwei von linear auf zirkulär übergehenden Arbeitsspielen ausgeführt werden, diese Übergangs-
spiele werden ausgeführt, wenn das gerade Wegstück η der ersten Hälfte eines Arbeitsspiels beendet werden soll,
Fig. 48 das Befehlsschema für Operationen, die von der zweiten Ausführungsform des Systems während des zweiten Übergangsspicls ausgeführt werden, das im Anschluß an das erste Übergangsspiel von Γ i g. 47 auftritt,
F i g. 49 das Befchlsschcma für Operationen, die im letzten altcrnierend-zirkularcn Arbeitsspiel, in welchem kein Überlauf ermittelt wurde, ausgeführt werden,
F i g. 50 das Bcfehlsschema für Operationen, die von der zweiten Ausführungsform des Systems im ersten von drei von linear auf zirkulär übergehenden Arbeitsspielen ausgeführt werden, diese Übergangsspiele werden ausgeführt, wenn das gerade Wegstück in der zweiten Hälfte eines Arbeitsspiels beendet werden soll,
Fig. 51 das Befehisschema für Operationen, die von der zweiten Ausführungsform des Systems während des zweiten Übergangsspiels ausgeführt werden, das im Anschluß an das erste Übergangsspiel von F i g. 50 auftritt,
Fig. 52 f"is Befehisschema für Operationen, die von der zweiten Ausführungsform des Systems während des dritten Übergangsspiels ausgeführt werden, das im Anschluß an das zweite Übergangsspiel von Fig. 51 auftritt,
Fig. 53 das Befehisschema für Operationen, die von der zweiten Ausführungsfonn des Systems im ersten von zwei von zirkulär auf linear übergehenden Arbeitsspielen ausgeführt werden, diese Übergangsspiele werden ausgeführt, wenn das zirkuläre Wegstück in der ersten Hälfte eines Arbeitsspiels beendet werden soll,
F i g. 54 das Befehisschema für Operationen, die von der zweiten Ausführungsform des Systems im zweiten Übergangsspiel ausgeführt werden, das im Anschluß an das erste Übergangsspiel von Fig. 53 auftritt,
F i g. 55 das Befehisschema für Operationen, die von der zweiten Ausfühningsform des Systems im ersten von drei von zirkulär auf linear übergehenden Arbeitsspielen ausgeführt werden; diese Übergangsspicle werden ausgeführt, wenn das zirkulär«. Wegstück in der zweiten Hälfte eines Arbeitsspiels beendet werden soll,
F i g. 56 das Befehisschema für Operationen, die von der zweiten Ausführungsform des Systems während des zweiten Übergangsspiels ausgeführt werden, das im Anschluß an das erste Übergangsspiel von F i g. 55 auftritt,
F i g. 57 das Befehlsschema für Operationen, die von der zweiten Ausfuhrungsform des Systems während des dritten Übergangsspiels ausgeführt werden, das im Anschluß an das zweite Übergangsspiel von F i g. 56 auftritt,
F i g. 58 ein Vektordiagramm, aus dem die Operationen ersichtlich sind, die von der zweiten Ausführungsform des Systems in den Arbeitsspielen von F i g. 46, 47,48 und 49 beim Übergang von einer Geraden auf ein Kreisbogenstück ausgeführt werden, wenn die Gerade in der ersten Haltte eines Arbeitsspiels beendet werden soll,
F i g. 59 ein Vektordiagramm, aus dem die Operationen ersichtlich sind, die von der zweiten Ausführungsfonn des Systems in den Arbeitsspielen von Fig. 46, 50, 51, 52 und 49 beim Übergang von einer Geraden auf ein Kreisbogenstück ausgeführt werden, wenn die Gerade in der zweiten Hälfte eines Arbeitsspiels beendet werden soll, und
F i g. 60 ein Vektordiagramm, aus dem die Operationen ersichtlich sind, die von der zweiten Ausführungsform des Systems in den Arbeitsspielen von Fig. 49, 55, 56 und 57 beim Übergang von einem Kreisbogenstück auf eine Gerade ausgeführt werden, ίο wenn das Kreisbogenstück in der zweiten Hälfte eines Arbeitsspiels beendet werden soll.
Einzelheiten des Systems werden nachstehend an Hand von zwei Ausführungsformen beschrieben.
A. Die Werkzeugmaschine ah Beispiel
Zur Veranschaulichung eines bestimmten Einsatzgebietes, für das sich die vorliegende Erfinduno besonders vorteilhaft eignet, erfolgt ihre Beschreibung hier an Hand der Bahnsteuerung des Bearbeitungs-Werkzeuges einer numerisch gesteuerten Fräsmaschine in zwei senkrecht zueinander verlaufenden Bewegungsachsen. Als typisches Beispiel für die vielen verschiedenen Arten von Werkzeugmaschinen, die sich numerisch steuern lassen und deren numerische Steuerung digitale Kommandosignale benötigt, um arbeiten zu können, zeigt Fig. 1 eine Fräsmaschine 10 mit einem Arbeitstisch 11, der in Horizontalrichtung auf einem Maschinenbett 12 gleitet und ein zu bearbeitendes Werkstück 13 aufzunehmen vermag. Ein Spindelkasten 15 trägt den Fräser 14, der zusammen mit dem Spindelkasten senkrecht verstellbar ist. Der Spindelkasten gleitet in (nicht gezeigten) Führungen auf einem Horizontalschlitten 16, der seinerseits in Horizontalrichtung auf einer Führungsbahn 17 verstellbar ist, die sich mit ihren beiden Enden an zwei im Abstand voneinander angeordneten Ständern 18 und 19 abstützt. Auf diese Weise läßt sich der Fräser 14 in der horizontalen -Y-Achse sowie in der vertikalen >'-Achse relativ zum Werkstück 13 bewegen, das seinerseits in einer horizontalen Z-Achse senkrecht zur horizontalen .Y-Achse verstellbar ist.
Durch entsprechende Bemessung der programmierten Wegstücke und Geschwindigkeiten in der X-. Y- und Z-Achse fräst sich der Fräser 14 durch das Werkstück 13 auf einer Bahn und in einer Tiefe hindurch, um diesem die gewünschte Form zu geben. Zur Erzeugung einer solchen gesteuerten Bewegung des Werkstückes 13 sowie des Fräsers 14 gehört zum Horizontalschlitten 16 eine (nicht gezeigte) Mutter, die mit einer Transportspindel 22 zusammenwirkt, welche über ein geeignetes (nicht gezeigtes) Getriebe von einem umsteuerbaren Stellmotor 21 angetrieben wird. Sobald dieser Motor in der einen oder anderen Richtung mit unterschiedlich hohen Drehzahlen läuft, wird der Horizontalschlitten 16 waagerecht in +X- oder — A'-Richtung verschoben, und zwar mit eine» Geschwindigkeit, die von der Drehzahl des Stellmotors abhängt. In ähnlicher Weise gehört auch zurr Spindelkasten 15 eine (nicht gezeigte) Mutter, die mil einer senkrecht angeordneten Transportspindel TA zusammenwirkt, welche von einem umsteuerbarer Stellmotor 25 angetrieben wird. Durch Einschaltet des Stellmotors 25 in der einen oder anderen Rieh tung wird also der Fräser 14 in +Y- oder - Y-Rich tung bewegt. Schließlich weist auch noch der Arbeits tisch 11 eine (nicht gezeigte) Mutter auf, die mi einer zweiten horizontal angeordneten und von einen
umsteuerbaren Stellmotor 23 angetriebenen Transportspindel 22 zusammenwirkt, so daß der Arbeitstisch 11 und das aufgespannte Werkstück 13 in rZ- oder —Z-Richtung bewegt werden können. Zur Vereinfachung der folgenden Beschreibung ist nur der den Stellmotoren der X- und der Y-Achse zugeordnete Teil der numerischen Steuerung dargestellt. Für den Fachmann ist jedoch klar, daß sich eine solche Steuerung im Rahmen der Erfindung so abwandeln läßj, daß auch noch der für die dritte, d. h. die Z-Achse, vorgesehene Stellmotor 23 miteinbezogen wird, ja daß eine Steuerung von Simultanbewegungen sogar in beliebig vielen Achsen möglich ist.
B. Allgemeine Betrachtungen über Grundlagen X5 und Methoden der numerischen Steuerung
1. Punkt- oder Bahnsteuerung
Aufgabe der Punktsteuerung ist es, ein Werkzeug innerhalb kürzestmöglicher Zeit auf einen bestimmten Punkt zu positionieren. Auf welchem Weg das Werkzeug zwischen zwei aufeinanderfolgenden Punkten bewegt wird, spielt dabei keine Rolle. Bei der Punktsteuerung wird daher in der Regel von einem Informationsträger, wie etwa einem Lochstreifen, ein Informationsblock abgelesen, der als Mindestinformation die Koordinaten X und Y für den nächsten anzufahrenden Punkt enthält. Unter dem Einfluß dieses Informationsblocks werden von der Punktsteuerung elektronische Kommandos erzeugt, die die gewünschte Position des nächsten Punktes für beide Koordinaten X und Y bezeichnen. Die Kommandos für die .Y-Achse werden dabei dem AT-Achsen-Regelkreis und die entsprechenden Kornmandos für die Y-Achse dem Y-Achsen-Regelkreis zugeführt. Jeder Regelkreis hat seine eigene Wegmeßeinrichtung, die die Iststellung des Werkzeuges meldet, sowie einen Vergleicher, der die Differenz zwischen der Sollstellung und der Iststellung des Werkzeuges in der betreffenden Bewegungsachse ermittelt. Der Vergleicher erzeugt ein Fehlersignal, das dem Regelkreis sagt, wie schnell und in welcher Richtung die Bewegung erfolgen soll, um den Positionsfehler in dieser Achse gleich Null zu machen.
Erhielten bei dem in Fig. 2 gezeigten Beispiel eines programmierten Weges die Regelkreise für die X- und die Y-Achse den Befehl, das Werkzeug zunächst auf den Punkt P1 einzustellen und dann den Punkt P2 anzufahren, so würden beide Antriebe infolge des großen Anfangsfeh'ers zu Beginn eine sehr hohe Geschwindigkeit erreichen. Tatsächlich würde die Anfangsgeschwindigkeit in der X- und in der Y-Achse etwa gleich groß seih, so daß die aus X- und Y-Wegkomponenien zusammengesetzte und von den beiden Reglern bewirkte Bewegungsrichtung des Werkzeuges etwa 45° zur Horizontalen verlaufen würde. Der Antrieb der Y-Achse würde seine Zielposition vor dem Antrieb der -Y-Achse erreichen, da er in dem dargestellten Beispiel den kürzeren Weg zurückzulegen hat. Er würde seine Geschwindigkeit sehr rasch drosseln und am Punkt P2 anhalten. Inzwischen würde der Antrieb der -Y-Achse ohne Verlangsamung der Geschwindigkeit weiterfahren, bis auch er sich dem Punkt P2 nähern und nun ebenfalls langsamer werden würde, bis er schließlich anhielte. Bei einer Punktsteuerung der hier beschriebenen Art gibt es also keine Möglichkeit, den vom gesteuerten Werkzeug zurückgelegten Weg zu beeinflussen.
Demgegenüber wird bei einer Bahn- oder Kurvensteuerung die Geschwindigkeit der Bewegungen in der X- und der Y-Achse so gesteuert, daß der resultierende Geschwindigkeitsvektor und der Weg des Werkzeuges vom Punkt P1 zum Punkt P2 auf einer Linie liegen. Die den Regeleinrichtungen übermittelten Signale regeln also die Geschwindigkeiten und verringern sie auf Null, wenn das Werkzeug den Punkt P2 erreicht. Für jede Achse werden Geschwindigkeit und zurückzulegender Weg in Übereinstimmung mit den in einem Datenblock enthaltenen Kommandodaten gesteuert. Zur Bestimmung der resultierenden Geschwindigkeit, d. h. der Vorschubgeschwindigkeit, die insbesondere bei spanabhebender Metallbearbeitung von Bedeutung ist, müssen die Koordinatengeschwindigkeiten jedoch von Block zu Block geändert werden, wobei sie gleichzeitig in einem solchen Verhältnis zueinander stehen müssen, daß die Bewegung auch im gewünschten Winkel erfolgt. Bemißt man die aufeinanderfolgenden und unterschiedlich winklig zueinander verlaufenden geraden Wegstücke relativ kurz und fährt man sie unmittelbar hintereinander ab, so läßt sich auf diese Weise jede beliebige Kurve oder Kontur mit dem gewünschten Grad an Genauigkeit erzeugen. Für reine Kreisbogen jedoch kann man die zirkuläre Interpolation anwenden, bei der die Geschwindigkeit in jeder Bewegungsachse nahezu kontinuierlich nachgeregelt wird, um das Werkzeug auf dem Kreisbogen von einem ersten zu einem zweiten Punkt zu fahren.
?-. Bahnsteuerung nach der vorliegenden Erfindung
F i g. 2 zeigt das Beispiel einer Bahn 27, auf der ein gesteuertes Maschinenelement, wie z. B. der Fräser 14 aus Fig. 1, entlangfährt. Dargestellt sind zwei Koordinatenpaare mit X- und Y-Achse. Das erste Paar besteht aus den Koordinaten 29 und 31 und stellt ein 4-Quadranten-Koordinatensystem dar. in dem der mit der Programmierung der Bahn 27 beschäftigte Programmierer arbeiten kann. Das zweite Koordinatenpaar besteht aus den Koordinaten 33 und 35 und stellt das 1 -Quadrant-Koordinatensystem der zu steuernden Maschine dar, in das die vom Programmierer erstellte Information schließlich übertragen wird. Für die gegenwärtigen Vorbemerkungen, die sich darauf richten, auf welche Weise die die Bahn 27 beinhaltenden Informationen zunächst dargestellt werden, genügt es, sich nur mit dem ersten Paar Koordinaten 29 und 31 zu befassen.
Die Bahn 27 setzt sich aus einer Anzahl gerader und kreisbogenförmiger Wegstücke zusammen, die zwischen einer Reihe von Punkten P0, P1, P._,, P3 und P4 verlaufen. Die Darstellung der Information, die die gewünschte Bewegung auf der Bahn 27 beinhaltet, erfolgt gewöhnlich in Form einer Reihe von Informationsblöcken, die die gewünschte Bewegung in jeweils einem der Wegstücke 27 a ... 27d bezeichnen. Zur Speicherung dieser Informationsblöcke wird als Informationsträger häufig ein Lochstreifen der in F i g. 3 und 4 gezeigten Art verwendet. Natürlich steht der Lochstreifen hier nur stellvertretend für die vielen Arten von Aufzeichnungsträgern, die zur Eingabe von Daten im die zu beschreibende Einrichtung benutzt werden können. Doch erleichtert es das Verständnis der Wirkungsweise des in Fig. 7 allgemein und in Fig. 9 und 39 detailliert dargestell-
15 16
ten Steuerungssystems, wenn man mit dem hier ge- auf dem Wegstück 27 b mit der gewünschten Gezeigten Lochstreifenformat und -schlüssel vertraut ist. schwindigkcit weiterbewegenden Punkt digital anzu-
Der Lochstreifen 37, von dem F i g. 3 und 4 ein zeigen. Bei dem bestimmten hier zu beschreibenden Teilstück zeigen, besteht aus Papier, Kunststoff Ausführungsbeispiel der Erfindung ändert sich der od. dgl. und enthält acht in Längsrichtung ver- 5 auf diese Weise signalisierte Punkt in jeder Sekunde laufende Spuren 1 ... 8 sowie Transportlöcher, um fünfhundertmal. Anders ausgedrückt, für die Regeiden Transport des Streifens durch einen Lochstreifen- antriebe der beiden Bewegungsachsen wird jeweils leser zu erleichtern. Jede in Querrichtung verlaufende alle 2 ms ein neuer Zielpunkt bzw. eine neue Ko-Zeile kann also Löcher aufnehmen, die in unter- Ordinate erzeugt. Bei dem in F i g. 2 gezeif*en Beischiedlichen Kombinationen der acht Spuren einge- io spiel beträgt die Länge des Wegstückes Vs- etwas locht werden, um verschiedene Zahlen, Buchstaben mehr als 6ZoIl. Zur Vereinfachung der i'—jhrei- oder Zeichen in einem beliebigen Code darzustellen. bung sei angenommen, daß das Wegstück 27 b genau Beim vorliegenden Beispiel wird der bekannte 6 Zoll lang ist. Des weiteren sei angenommen, daß Ε.Ι.Α,-Standardcode benutzt. Die Buchstaben, Zah- die gewünschte Geschwindigkeit auf diesem Weglen und Zeichen, die von den in den einzelnen Zeilen 15 stück l"/min beträgt, so daß das gesteuerte Bearbeides Lochstreifens von F i g. 4 auftretenden Lochkom- tungswerkzeug insgesamt 6 min benötigt, um das binationen dargestellt werden, sind links vom Loch- Wegstück 27 b vom Punkt P1 bis zum Punkt P2 abstreifen aufgeführt. Wie ersichtlich, erfolgt die Dar- zufahren. In dieser Zeitspanne werden für jeden der stellung der zehn Dezimalzahlen O ... 9 in den Spu- beiden Regelantriebe nicht weniger als 180000 verren 1, 2, 3 und 4 in nach der Stellenschreibweise an- 20 schiedene, digital dargestellte Sollstellungen erzeugt, geordneten Lochkombinationen, wobei diesen Spuren All diese vielen im Zeitraum von nur 6 min erzeugten die Stellenwerte 1, 2, 4 bzw. 8 zugeordnet sind. Jede Sollstellungen werden aus den relativ wenigen Zah-Dezimalzahl wird also in binärverschlüsselter Dezi- len, die der im Lochstreifen 37 gespeicherte Informalschreibweise wiedergegeben. mationsbloek enthält, automatisch gewonnen.
Die Daten, die jeweils eines der nacheinander ab- 25 „ „ , „ , ,»..,,
zufahrenden Wegstücke 27 a, 27 b, 27c und 27d dar- 3· Berechnung von Makro- und Mikrobewegungen
stellen, treten auf dem Lochstreifen 37 in aufeinan- Wegen der großen Anzahl signalisierter Punkte derfolgenden »Blöcken« auf, wobei sich jeder Block und dem sehr kurzen Intervall, das zwischen dem aus einer Anzahl fortlaufender Zeilen zusammen- Erzeugen aufeinanderfolgender Punkte liegt, wäre es setzt. Einen dieser Informationsblöcke, der die ge- 30 unzweckmäßig, jeden Punkt nach dem gleichen wünschte Bewegung im Wegstück 27 b beinhaltet, Grundrechenprozeß zu berechnen. Statt dessen wird zeigt F i g. 4. Wie ersichtlich, enthält dieser Block gemäß einem wesentlichen Merkmal der Erfindung eine erste Gruppe von acht Zeilen, die Vorzeichen ein aus zwei Schritter, bestehender Rechengang an- und Größe der X-Koordinate des Punktes P2 dar- gewandt. Im ersten Schritt werden für die beiden stellen. Von diesen acht Lochzetlen bezeichnet die 35 Bewegungsachsen X und Y Signale erzeugt, die auferste Zeile die Koordinate, auf die sich die in den einanderfolgende Positionen oder Punkte auf diesen folgenden sieben Zeilen dargestellte Größe bezieht. Achsen darstellen. Diese aufeinanderfolgenden Diese Bezeichnung wird später in ein Adresstnsignal Punkte werden hier mit »Makropositionen« bezeichumgewandelt, um die Information zu ihrem ge- net, und die Bewegungen, die das gesteuerte Werkwünschten Speicherplatz zu leiten. Die zweite Loch- 40 zeug beim Fahren von einem Punkt zum nächsten zeile gibt das Vorzeichen an, und die letzten sechs ausführt, heißen »Makrobewegungen«. Bei dem noch Zeilen stellen die sechs Ziffern dar, aus denen die zu beschreibenden Ausführungsbeispiel werden diese Zahl besteht. In dem dargestellten Beispiel ist diese Makropositionssignale fünfzigmal in der Sekunde, Größe also mit X bezeichnet und ist gleich also alle 20 ms, erzeugt. Die Berechnungen, nach — 03,0000". 45 denen die aufeinanderfolgenden Makroposilionen
Die nächste Gruppe von acht Zeilen auf dem Loch- aus der Grundinformation eines im Lochstreifen gestreifen 37 stellt die V-Koordinate des Punktes P2 speicherten Informationsblockes gewonnen werden, dar, die in Fig. 2 mit 4-20,0000" angegeben ist. sind relativ langwierig.
Ferner enthält der Informationsblock für die beiden Zum zweiten, wesentlich kürzeren Schritt des
Koordinaten X und Y auch die Wegstrecken / und J 5° Rechenganges gehört die Gewinnung von Signalen
vom Punkt P1 zum Punkt P2, die 4 06,0000" bzw. aus den zuvor im zeitlichen Abstand von jeweils
4 02,0000" betragen. Die nächsten drei Lochzeilen 20 ms berechneten Makropositionssignalen. Diese
bezeichnen die Form des abzufahrenden Wegstückes, Signale stellen eine Reihe fortlaufender Mikroposi-
ob es sich also um eine Gerade oder einen Kreis- tionen dar, die jeweils zwischen zwei aufeinander-
bogen handelt. Die folgenden sieben Lochzeilen 55 folgenden Makropositionen liegen. Zusammengefaßt
stellen eine vorberechnete Größe Q dar, die die Ge- wird also für jede Bewegungsachse eine erste Reihe
schwindigkeit angibt, mit der die Bewegung in dem Zielpunkte — Makropositionen genannt — in einem
von den vorhergehenden fünf Lochzeilengruppen ausführlichen Rechenprozeß erzeugt. Aus den
dargestellten Wegstück erfolgen soll. Am Schluß des Signalen, die die Makropositionen darstellen, wird
Blockes steht das Standardzeichen EL, welches das 60 dann in einem wesentlich kürzeren und einfacheren
Ende des Blockes anzeigt. Rechenprozeß eine zweite, viel größere Reihe von
Die Daten, die im Lochstreifen 37 gespeichert sind Zwischenpunkten — Mikropositionen genannt — ge-
und einen bestimmten Wegabschnitt, wie z. B. das wonnen, die im gleichen Abstand voneinander zwi-
Wegstück 27 ft der Bahn 27, darstellen, werden vom sehen den Makropositionen liegen.
Lochstreifen abgelesen und in elektrische Digital- 65
signale umgewandelt. Diese Signale werden dann a" Erzeugung von Geraden
laufend ausgewertet, um zu aufeinanderfolgenden F i g. 5 a und 5 b zeigen im einzelnen die Größen Zeitpunkten die Koordinaten X und Y für einen sich und Beziehungen, die bei der Erzeugung des Weg-
AD=V-AT
(1)
AX AD
(2)
Ebenso folgt aus den Ähnlichkeitssätzen, daß
AY AD
Andererseits
AD = VDT
D= fl*+J*
(4)
(5)
Setzt man (4) und (5) in Gleichung (2) ein und multipliziert beide Seiten der Gleichung mit /, so erhält man
V-Al
Setzt man (4) und (5) in Gleichung (3) ein und multipliziert beide Seiten der Gleichung mit J, so erhält man
V-Al
AY=J- (7)
]P + J»
Stückes 27 b, also vom Puckt P1 zum Punkt P2 in Fig. 2, auftreten. Fig. 5a zeigt das Wegstück 27b als Diagonalvektor D, seine AT-Komponente als Vektor / und seine Y-Komponente als Vektor J. Gemäß einem grundsätzlichen Merkmal der Erfindung wird ein Zeitabschnitt Δ T gewählt, der im Vergleich zu der Gesamtzeit, die für den Vorschub der Sollstellung des gesteuerten Werkzeuges vom Punkt P1 zum Punkt P2 benötigt wird, sehr kurz ist. Die Zahl dieser Zeitabschnitte Δ T, die während der Vorschubbewegung des Werkzeuges vom Punkt P1 zum Punkt P2 vergehen, ist also sehr groß. Die Strecke, die die Sollstellung in einem Zeitabschnitt A T zurücklegen soll, ist in Fig. 5b als Hypotenuse AD eines Dreiecks dargestellt. Dies ist die Strecke, die zuvor mit Makrobewegung bezeichnet wurde. Die AT-Komponente dieser zusammengesetzten Bewegung bildet die Basis des Dreiecks und ist mit Vektor AX bezeichnet; die Y-Komponente bildet die senkrechte Seite des Dreiecks und ist mit Vektor Λ Υ bezeichnet.
Die Größe der in den jeweiligen Zeitabschnitten AT auszuführenden Makrobewegungen ist eine Funktion der Länge des Zeitabschnittes A T und der gewünschten Geschwindigkeit V, ausgedrückt durch die Gleichung
haben. Ebenso ist der Zeitabschnitt Δ Τ eine gewählte Konstante, die für alle Wegstücke der Bahn gleich bleibt. Dadurch läßt sich an Stelle des Ausdruckes
V-AT
25
Wie eine Betrachtung der in F i g. 5 a und 5 b dargestellten Dreiecke zeigt, sind diese geometrisch ahn-Hch, da die Hypotenuse des kleineren Dreiecks von F i g. 5 b lediglich kürzer ist als die Hypotenuse D des größeren Dreiecks von Fig. 5a. Aus den Sätzen über die Ähnlichkeit der Dreiecke folgt also, daß
Bei dem noch zu beschreibenden Ausführungsbeispiel ist angenommen, daß die Größen V, I und J für jedes von einem Informationsblock des Lochstreifens dargestellte Wegstück jeweils einen einzigen Wert eine zusammengesetzte Konstante Q verwenden, die nachstehend mit »Makrobewegungsquotient« bezeichnet ist (weil sie zufälligerweise gleich -^- ist).
Also
V-AT
Durch Einsetzen von (8) in die Gleichungen (6) und (7) erhält man die viel einfacheren Ausdrücke
AX = IQ AY = JQ
(9)
(10)
Wie die vorstehende Reihe Gleichungen zeigt, lassen sich die Größen AX und AY, die die gewünschte Bewegung der Sollstellung in einem Zeitabschnitt A T in der X- bzw. Y-Achse darstellen, in einer zum Teil vorberechneten Form wiedergeben, indem man an Stelle des Bruches
V-AT
den Ausdruck Q einsetzt.
Auf diese Weise lassen sich die gewünschten Makrobewegungskomponenten A X und A Y bei vorgegebenen Größen /, / und Q relativ einfach im Multiplikationsverfahren berechnen. Nun ist das Multiplizieren zwar relativ einfach, doch erfordert es Zeit, besonders wenn Multiplikator und Multiplikand vierteilige Zahlen sind. Aus diesem Grund erfolgt die Bildung der zwischen zwei benachbarten Makro-Positionen liegenden Reihe von Zwischenpunkten oder Mikropositionen nach einem noch einfacheren Verfahren. Wie Fig. 5b zeigt, ist eine zusammengesetzte Makrobewegung AD in N gleich große
Schritte —^- unterteilt. Diese noch kleineren Wegstücke werden hier mit »Mikrobewegungen« bezeichnet. Ihre X- und Y-Komponente sind in dem kleineren Dreieck von F i g. 5 b als Größen
55 AX
bzw.
AY
bezeichnet. Um den hier beschriebenen zweistufigen Rechengang voll und ganz auszunutzen, hat N den Wert 10. Die Größen
AX
und
A Y
gewinnt man dann, indem man die jeweiligen Größen ΔΧ und AY durch 10 dividiert, was sich sehr leicht
in einer Rechenmaschine durchführen läßt oder dadurch, daß man die Signale, die diese Größen darstellen, um eine Dezimalstelle verschiebt.
Nach Berechnung der Größen
Δ X, Δ Y,
AX
und
Δ Υ
wird eine Reihe Makro- und Mikropositionen durch fortlaufende Addition gebildet. So wird im Falle der .Y-Achse die Größe AX in den Zeitabschnitten AT kumulativ zur Jf-Koordinate des Anfangspunktes P1 addiert, so daß sich in jedem Zeitabschnitt A T eine neue Makroposition für die .X-Achse ergibt. In ähnlicher Weise werden in den zeitlich von der Y-Ko-Ordinate des Punktes P1 zur Y-Koordinate des Punktes P2 fortschreitenden Zeitabschnitten A T die einzelnen Makropositionen für die Y-Achse durch fortlaufende Addition gebildet.
Die Bildung der Mikropositionen erfolgt in ahnlicher Weise, und zwar aus den Mikrobewegungskomponenten
AX ,AY
und
A Y nach den oben stehenden Gleichungen (6) und (7) darstellen. Nach Gewinnung der die Größen AX und A Y darstellenden Signale werden aufeinanderfolgende Zeitabschnitte AT in Realzeit abgemessen, und in jedem dieser Zeitabschnitte werden dann die erste und die zweite Gruppe von Signalen, die die Größen A X bzw. A Y beinhalten, dazu benutzt, ein gesteuertes Maschinenelement die Strecke AX in der ΑΓ-Achse und die Strecke A Y in der Y-Achse entlangzufahren. Gemäß einem weiteren, jedoch nicht obligatorischen Merkmal der Erfindung werden auch Signale zur Darstellung von Mikrostrecken
AX ,AY
und
erzeugt, die dann in jedem der aufeinanderfolgenden Zeitabschnitte AT dazu benutzt werden, das gesteuerte Maschinenelement gleichzeitig in X- und Y-Richtung die Mikrostrecken
AX . AY
und
entlangzufahren.
So wird z. B. die erste Mikroposition in der AT-Achse
gebildet, indem die Größe -^- zur .^-Koordinate des Anfangspunktes P1 addiert wird. Die Bildung der folgenden Mikropositionen in der AT-Achse erfolgt in
den Zeitabschnitten A T, indem man die Größe -1^- zu der jeweils zuletzt gebildeten Summe hinzuaddiert. In der gleichen Weise erfolgt die Gewinnung der Mikropositionen in der Y-Achse aus der Y-Koordinate des Punktes P1 und der M krobewegungskom-
ponente -^-.
Die vorstehenden Betrachtungen basieren hauptsächlich auf geometrischen Beziehungen. Bei der Realisierung der erfindungsgemäßen Steuerung ist jedoch zu bedenken, daß die aufeinanderfolgenden Makro- und Mikropositionen nicht einfach im Raum liegen. Vielmehr werden sie von elektrischen Digital-Signalen numerisch dargestellt, ebenso wie die Größen /, J, V, AT (oder /, J und Q), aus denen sie gewonnen werden. Diese elektrischen Digitalsignale, die aufeinanderfolgende Zielpunkte darstellen, werden dann den Regelkreisen der X- und der Y-Achse kontinuierlich zugeführt, um die Position des gesteuerten Maschinenelementes, das hier als Fräser 14 dargestellt ist, weiterzubewegen. Auf diese Weise kann das Werkzeug mehrere aufeinanderfolgende, gerade Wegstücke abfahren, wobei jedes dieser Wegstücke von einem anderen Datenblock dargestellt wird, der die individuellen Werte für die Größen /, J und Q (bzw. V und A T, falls der Quotient Q nicht benutzt wird) enthält. Zur Durchführung der Steuerung werden die Zahlenangaben, die die A'-Achsen-Wegkomponente / und die Y-Achsen-Wegkomponente J der zusammengesetzten Strecke D darstellen, mit einer geeigneten Vorrichtung vom Lochstreifen, auf dem sie zunächst gespeichert sind, abgelesen, in elektrische Digitalsignale umgewandelt und von einer Datenverarbeitungseinrichtung verarbeitet, um aus ihnen eine erste und eine zweite Gruppe von Digitalsignalen zu gewinnen, welche die Größen AX und
b. Erzeugung von Kreisbogen
F i g. 6 a zeigt in allgemeiner Form, wie die elektrischen Signale erzeugt werden, die aufeinanderfolgende Zielpositionen auf einem zirkulären Wegstück darstellen. Wie ersichtlich, stellt der Kreisbogen 39 einen Viertelkreis dar, entspricht also nicht der in F i g. 2 gezeigten Bahnkurve. Auch die in F i g. 6 a gezeigten Punkte P0. . .P5 entsprechen nicht den ähnlich bezeichneten Punkten von F i g. 2. Wie außerdem ersichtlich, liegen die Punkte P9.. .Ps in F i g. 6 a zwecks Erläuterung der geometrischen Beziehungen viel weiter auseinander als dies normalerweise der Fall ist.
Auf dem Kreisbogen von F i g. 6 a liegen verteilt angeordnet eine erste Gruppe Punkte P0, P4 und P4 sowie eine zweite Gruppe Punkte P1, Ps und P5, wobei letztere symmetrisch zwischen den Punkten P0, P2 und P4 liegen. Die Punkte P0, P2 und P4 der ersten Gruppe sind ebenso wie die Punkte P1, P3 und P5 der zweiten Gruppe durch Sehnen gleicher Länge AD miteinander verbunden. Alle Punkte P1 . . .Pb sind mit dem Mittelpunkt C des Kreises, zu dem der Kreisbogen 39 gehört, durch einen Radius R verbunden. Die A'-Komponenten der die Punkte P0, P2 und P4 miteinander verbindenden Sehnen sind mit Ά X, und die Y-Komponenten der die Punkte P1, P3 und P5 miteinander verbindenden Sehnen sind mit AY bezeichnet. Erfindungsgemäß werden zur Bildung eines zirkulären Wegstückes in Zeitabschnitten A T Signale erzeugt, welche die Λ-Koordinaten der Punkte P2 und P4 beinhalten. Ebenso werden in Zeitabschnitten AT Signale erzeugt, welche die Y-Koordinaten der Purste P1, P1 und P5 darstellen, wobei diese Zeitabschnitte genauso lang sind wie die den Punkten P1 und P4 zugeordneten Zeitabschnitte, jedoch gegenüber diesen symmetrisch versetzt sind. Vorzugsweise werden außerdem in jedem der Zeitabschnitte A T, die zwischen der Erzeugung der Punkte P0, P2 und P4
Λ Τ*
vergehen, Signale in Abständen von -^- erzeugt. Diese Signale stellen die ^-Koordinaten von gleich weit auseinanderliegenden Zwischenpunkten dar, die auf
/Τί
den die Punkte P0, P2 und P4 miteinander verbindenden Sehnen des Kreises liegen. In ähnlicher Weise werden auch Signale erzeugt, welche die Y-Koordinaten von Punkten beinhalten, die zwischen den Punkten P1, P3 und P5 liegen. Dies ist am besten aus Fi g. 6 b zu ersehen, die die zwischen den Punkten P0 und P„. P2 und P4 sowie P4 und P6 verlaufenden Vektorkomponenten A X sowie die vom Punkt P1 zum Punkt Px und vom Punkt P3 zum Punkt P5 verlaufenden Vektorkomponenten A Y zeigt. Vergleicht man die Wegstücke von Fig. 5b und 6b miteinander, so zeigt sich, daß 1. die aufeinanderfolgenden Vektorgrößen Δ X und A Y aufeinanderfolgende Makrobewegungen in den Bewegungsachsen X und Y darstellen, wobei jede dieser Makrobewegungen in einem Zeitabschnitt A T bzw. A T ausgeführt wird, und daß 2. jede Ma-
ΔΧ
krobewegung A X in N Mikrobewegungen — und jede
A Y Makrobewegung AY in N Mikrobewegungen -^-
unterteilt ist.
Die Erzeugung eines zirkulären Wegstückes erfolgt nach einem Zwei-Schritt-Verfahren, das dem in Verbindung mit der Erzeugung linearer Wegstücke beschriebenen Verfahren ähnlich ist. Zum ersten Schritt gehören die Berechnung der Größen AX und IY sowie die Gewinnung der ^-Koordinaten der Punkte P2 und P4 und der Y-Koordinaten für die Punkte P3 und P5 durch fortlaufendes kumulatives Addieren der Größe AX zur Af-Koordinate eines Anfangspunktes und der Größe A Y zur Y-Koordinate eines Anfangspunktes. Im zweiten Schritt wird jede Größe .1JV und AY in N gleiche Teile unterteilt, vorzugsweise 10, und für die X- und die Y-Achse werden Digitalsignale erzeugt, welche die Koordinaten X und Y der Zwischenpunkte, d. h. der Mikropositionen, darstellen. Die Signale, welche die Koordinaten A' und Y der Zwischenpunkte beinhalten, werden dem Regelkreis der jeweiligen Bewegungsachse zugeführt, so daß der Antrieb der Bewegungsachse X in unmittelbarer Nähe der ^-Koordinaten einer die Punkte P0, P2 und P1 verbindenden Reihe Sehnen und der Antrieb der Bewegungsachse Y einen halben Zeitabschnitt AT später in unmittelbarer Nähe der !'-Koordinaten einer die Punkte P1, P3 und P5 miteinander verbindenden Reihe Sehnen fährt. Die Resultierende aus diesen beiden Bewegungen ist eine Bahn, die sich dem Kreisbogen des Kreises, auf dem die beiden Sehnenreihen liegen, mit sehr hoher Genauigkeit annähert.
Fig. 6c und 6d zeigen einige der Gesetzmäßigkeiten, die dem erfindungsgemäßen Verfahren zur Erzeugung von Kreisbogen zugrunde liegen. Fig. 6c zeigt den gleichen Kreisbogen wie Fig. 6a. Die Punkte P0 und P2 sind hier durch eine Sehne der Länge AD verbunden. Die Sehne .\D sowie ihre Komponenten X und Y bilden zusammen ein Dreieck, mit der Sehne als Hypotenuse. In der Mitte zwischen den Punkten P0 und P2 des Kreisbogens liegt der Punkt P1, der durch einen Radiusvektor R1 mit dem Mittelpunkt C des Kreises verbunden ist. Der Radiusvektor A1 hat eine inverse A'-Komponente /, sowie eine inverse Y-Komponente/,. Da der Radius vom Mittelpunkt des Kreises durch den Mittelpunkt der Sehne AD geht, bilden Sehne und Radius einen rechten Winkel miteinander. Daraus folgt, daß das einerseits von der Sehne AD und ihren Komponenten X und Y gebildete Dreieck und das andererseits
vom Radiusvektor R^ und seinen Komponenten X und Y gebildete Dreieck ähnlich sind.
Fi g. 6d zeigt eine der Sehnen, die die Punkte P1, P3 und Pn in Fig. 6a miteinander verbinden. Die in F i g. 6 d gezeigte Einzelsehne verbindet die Punkte P1 und P3 und bildet die Hypotenuse eines Dreiecks, dessen übrige beiden Seiten von den Komponenten Λ' und Y der Sehne gebildet werden. In der Mitte zwischen den Punkten P1 und P., des Kreisbogens von
ίο Fig. 6d liegt der Punkt P2, der mit dem Mittelpunkt C des Kreises durch den Radiusvektor R2 verbunden ist. Der Radiusvektor R2 bildet die Hypotenuse eines zweiten rechtwinkligen Dreiecks, dessen übrige beiden Seiten von der invcrsen .Y-Komponente I2 und der inversen Y-Komponente J„ gebildet werden. Aus dem gleichen in Verbindung mit Fi g. 6 c dargelegten Grund bilden daher auch die Sehne von Fig. 6d und der Radiusvektor R2 einen rechten Winkel miteinander, so daß auch die beiden rechtwinkligen Dreiecke dieser Figur ähnlich sind.
Es werden die Radiusvektoren, welche die Punkte P.. .. P5 mit dem Kreismittelpunkt C in F i g. 6 a verbinden, abwechselnd von der zwischen einem der Punkte und dem Kreismittelpunkt C in ^-Richtung liegenden Strecke und der zwischen dem nächsten Punkt und dem Kreismittelpunkt C in Y-Richtung liegenden Strecke dargestellt. Auf welche Weise diese Koordinalenstrecken gewonnen werden, soll an dieser Stelle nicht beschrieben werden. Statt dessen sei angenommen, daß der in Fig. 6c gezeigte Radiusvektor Λ, von der Y-Koordinatenstrecke /, vom Punkt P1 zum Kreismittelpunkt C und der Radiusvektor R1 in Fig. 6d von der X-Koordinatenstrecke /2 vom Punkt P2 zum Kreismittelpunkt C dargestellt werden. Mit dieser Information sowie mit der Angabe der gewünschten Geschwindigkeit entlang den Sehnen des Kreises und der Dauer des jeder Sehne zugeordneten Zeitabschnittes 1 T lassen sich nunmehr die A'-Komponenti 1.V02 der Sehne von Fig. 6c
sowie die Y-Komponente Ϊ Y11 der Sehne von Fig. 6d berechnen.
Zunächst soll die Erzeugung der Sehnen in Fi g. 6 c betrachtet werden. Aus den Sätzen über die Ähnlichkeit der Dreiecke folgt, daß
A D
(11)
Ebenso ergibt sich auch bei der Sehne von F i g. 6 d aus den Ähnlichkeitssätzen, daß
Δ Yr,
h
AD
Andererseits
und
AD - V- T
Rt = IV + Λ1 R* = W + Λ1
(12)
(D
(13)
(14)
Setzt man also (1) und (13) in Gleichung (11) eil und multipliziert beide Seiten der Gleichung mit J1 so erhält man
V-AT
ax
Setzt man (1) und (14) in Gleichung (12) ein und multipliziert beide Seiten der Gleichung mit /ä, so erhält man in ähnlicher Weise
4. Das erfindungsgemäße System
V-AT
j//2
(16)
Wie eine Betrachtung zeigt, ist
V-AT V-AT
= Q
(17)
Durch Einsetzen von (17) in (15) und (16) erhält man daher
/1 .Y02= -J1- Q
Yu= If Q
(18)
(19)
Vergleicht man die Gleichungen (18) und (19), die sich mit der Erzeugung von Kreisbogen befassen, mit den Gleichungen (9) und 10), die die Erzeugung von Geraden betreffen, so zeigt sich, daß diese Gleichungen gleich sind, außer daß / und / miteinander vertauscht sind und — J benutzt wird. So wie die Gleichungen (18) und (19) hier geschrieben sind, gelten sie nur für eine im Uhrzeigersinn (CW) fortschreitende zirkuläre Bahn. Für Kreisbogen im Gegenzeigersinn (CCW) wird das Vorzeichen auf der rechten Seite jeder Gleichung einfach umgekehrt.
Mit den in F i g. 6 c und 6 d stehenden Angaben lassen sich nicht nur die Vektorgrößen AXoi und Λ F13, die die Makrobewegungen in der X- bzw. y-Achse darstellen, berechnen, sondern auch die y-Koordinatenstrecke vom Punkt P3 zum Kreismittelpunkt C und damit die Darstellung des nächsten Radiusvektors Rv der dann seinerseits dazu benutzt wird, die A'-Komponente der nächsten, die Punkte P2 und P4 verbindenden Sehne zu berechnen, wie Fi g. 6 a zeigt. Dies geschieht durch algebraische Addition der Größen +/, und — ΑΥιΛ, die die y-Koordinatenstrecke vom Punkt P1 zum Kreismittelpunkt C bzw. vom Punkt Pn zum Punkt P1 darstellen. Diese Addition folgt auf die in der Gleichung (16) [oder andernfalls Gleichung (19)] bezeichnete Multiplikation. Sobald diese Addition ausgeführt und die Strecke der y-Koordinate vom Punkt P, zum Kreismittelpunkt C ermittelt ist, erfolgt durch eine weitere Multiplikation, die der in Gleichung (15) [oder andernfalls Gleichung (18)] ähnlich ist, die Berechnung der X-Komponente der nächsten Sehne, die die Punkte P2 und P4 miteinander verbindet und die nächste Makrobewegung in der A'-Achse beinhaltet. Auf diese Weise werden auf einem Kreisbogen aufeinanderfolgende Punkte erzeugt, die in abwechselnder Reihenfolge von ihren Koordinaten X und Y dargestellt werden. Diese Punkte sind die im Zusammenhang mit F i g. 6 a und 6 b erwähnten Makropositionen X und y. Außerdem werden auch noch abwechselnd die Makrobewegungen A X und Λ Y in der X- bzw. y-Achse erzeugt, die dann durch Dividieren in eine Anzahl gleicher Einzelschritte zerlegt werden können, wie Fig. 6b zeigt, um so aus den jeweiligen Sehnen eine Reihe von Mikropositionen in der X- und der Y-Achse zu gewinnen.
F i g. 7 zeigt in allgemeiner Form das Blockschema eines Systems, mit dem die in den vorhergehenden Abschnitten kurz beschriebene lineare und zirkuläre Interpolation durchgeführt wird. An Hand der detaillierten Blockschaltbilder von Fig. 9 und 39 werden zwei Ausführungsformen des Systems beschrieben. Um bestimmte Merkmale der erfindungsgemä-Ben Interpolation besser verstehen zu können, werden nachstehend Einrichtungen, mit denen die Interpolation durchgeführt wird, ausführlich beschrieben. Jedoch bieten sich dem auf dem Gebiete der numerischen Steuerung tätigen Fachmann auch andere Möglichkeiten zur Realisierung dieser bestimmten Merkmale an. Weder die Einzelheiten der beschriebenen Einrichtungen noch die von ihnen ausgeführten Zwischenschritte sind als für die Erfindung unbedingt erforderlich anzusehen.
»o Das System von F i g. 7 setzt sich aus vier Hauptgruppen zusammen. Die erste Gruppe dient dazu, einen Block Daten, die zunächst auf einem Informationsträger stehen, von diesem abzulesen und vorübergehend zu speichern, solange der übrige Teil des Systems noch den zuvor abgelesenen Datenblock verarbeitet. Zu dieser Gruppe gehören ein Lochstreifenleser 41, ein Zuordner 43 und eine Streifenleser-Einschaltvorrichtung 45. Des weiteren gehören zu dieser Gruppe noch eine Anzahl Zwischenregister 47. Sechs dieser Register sind vorgesehen, die jeweils eine der sechs numerischen Größen aufnahmen, aus denen sich ein Informationsblock auf dem in Fig. 3 gezeigten Lochstreifen 37 zusammensetzt. Zwischen dem Zuordner 43 und den Zwischenregistern 47 ist eine Schiebesteuervorrichtung 49 eingeschaltet. Soll ein Datenblock vom Lochstreifen 37 in die Zwischenregister 47 gelesen werden, so wird der Lochstreifen von einem im Lochstreifenleser 41 befindlichen Antrieb an an einer Lesestation vorbeitransportiert, die die in den Streifen eingelochten Markierungen zeilenweise in elektrische Signale umwandelt. Mit Hilfe des Zuordners 43 werden aus den die Adressenzeichen /, J, X, y, G und Q darstellenden Lochzeilen Adressensignale gewonnen, die ihrerseits die Schiebesteuervorrichtung 49 der Zwischenregister veranlassen, die nach dem jeweiligen Adressenzeichen Λ J, X, Y, G und Q auftretenden Daten über die Ausgangssammelschiene 51 in die entsprechenden Zwischenregister 47 zu bringen.
Die zweite Hauptgruppe besteht aus einem auf Zeitmultiplexbasis arbeitenden Digitalrechner S3, einer Anzahl Funktionssteuervorrichtungen 55 und einer Anzahl »aktiver« Register 57, die deshalb so genannt werden, weil die in ihnen stehenden Daten vom Digitalrechner 53 ständig verarbeitet werden. Alle Ausgänge der aktiven Register 57 sind über eine gemeinsame Eingangssammelschiene 59 mit den Eingängen des Digitalrechners 53 verbunden. Über eine gemeinsame Ausgangssammelschiene 61 erhält jedes aktive Register 57 an seinen Eingängen die Signale, die vom Digitalrechner 53 erzeugt werden. Neben ihrer Funktion als Verbindungsweg für die von den aktiven Registern 57 in den Digitalrechner 53 zu bringenden Daten überträgt die Eingangssammel-
schiene 59 des Rechners auch noch die Daten, die vorübergehend in den Zwischenrepistern 47 aufbewahrt werden, von wo sie in die aktiven Register gebracht werden Dies geschieht, indem diese Daten
50? 507/40
zunächst über die Eingangssammelschiene 59 in den Digitalrechner 53 gebracht und dann von hier über die Ausgangssammelschiene 61 wieder in die aktiven Register 57 übertragen werden.
Die Hauptaufgabe des Digitalrechners 53 besteht darin, die in den aktiven Registern 57 stehende Digitalinformation zu verarbeiten und das Ergebnis in entsprechende aktive Register zurückzubringen. Dieser Vorgang wiederholt sich in einem regelmäßig wiederkehrenden Zyklus, so daß man sich die Informationen als im Uhrzeigersinn umlaufend vorstellen kann, wobei sie zunächst von den aktiven Registern 57 über die Eingangssammelschiene 59 in den Digitalrechner 53 übertragen und dann von hier über die Ausgangssammelschiene 61 wieder in die aktiven Register zurückgebracht werden. Auswahl und zeitlicher Ablauf der zur Durchführung dieses Verarbeitungszyklus erforderlichen Operationen werden von den Funktionssteuervorrichtungen 55 des Rechners gesteuert. Soll der Rechner z. B. zu einem bestimmten Zeitpunkt eine Operation durchführen, so gibt die Funktionssteuervorrichtung, die dieser Operation zugeordnet ist, zu diesem Zeitpunkt einen Steuerimpuls auf den betreffenden Steuereingang des Rechners. So wie die Funktionen des Digitalrechners zeitlich gesteuert werden müssen, so muß auch der Informationsfluß von den aktiven Registern zur Eingangssammelschiene 59 des Rechners zeitlich abgestimmt werden. Die Auswahl der Information, die zu einem bestimmten Zeitpunkt verarbeitet werden soll, erfolgt, indem das aktive Register, in dem die betreffende Information steht, abgefragt wird, um die Information über die Eingangssammelschiene 59 weiterzuleiten. Zu diesem Zweck ist für alle aktiven Register 57 jeweils eine Gruppe Lesetore vorgesehen, bei deren Auftastung die zu diesem Zeitpunkt im Register stehenden Daten auf die Eingangssammelschiene 59 des Rechners gegeben werden. Jedes Lesetor wird von einer Programmloranordnung gesteuert, die in F i g. 7 mit PGA bezeichnet ist. Soll die in einem bestimmten aktiven Register stehende Information zwecks Verarbeitung in den Digitalrechner 53 gebracht werden, so gibt die diesem Register zugeordnete Programmtoranordnung einen Auftastimpuls auf die Lesetore des Registers. Ebenso ist es wünschenswert, auch dasjenige aktive Register 57 steuern zu können, das eine bestimmte vom Digitalrechner erzeugte Gruppe Daten aufnehmen soll. Zu diesem Zweck haben alle aktiven Register jeweils eine Gruppe Schreibtore, die bei ihrer Auftastung bewirken, daß die zu diesem Zeitpunkt auf der Ausgangssammelschiene 61 des Rechners anstehenden Daten in das betreffende Register eingeschrieben werden. Ähnlich wie bei den Lesetoren ist jeder Gruppe Schretbtore eine Programmtoranordnung (PGA) zugeordnet. Soll also die vom Rechner erzeugte Digitalinformation in ein bestimmtes aktives Register 57 übertragen werden, so wird die diesem Register zugeordnete Programmtoranordnung veranlaßt, einen Auftastimpuls auf die Schreibtore des Registers zu geben.
Der dritten Hauptgruppe von F i g. 7 fällt die Aufgabe zu, eine Zeitbasis für den Betrieb des gesamten Systems zu liefern. Zu dieser Gruppe gehört ein Zeitbasis- und Taktgebersystem 63, das im vorliegenden Ausführungsbeispiel an einer Vielzahl von Ausgängen 1000 verschiedene Signalkombinationen abzugeben vermag, die jeweils einen von 1000 verschie denen, sich zyklisch wiederholenden Zeitabschnitten oder Takten darstellen. Diese Grundtaktimpulsreihe wird über eine Sammelschiene 65 einem logischen Zeitbasis-Schallnetz 67 zugeführt, das diese Taktimpulsreihe, die 1000 verschiedene Zeitabschnitte oder Takte darstellt, in eine beliebige von vier verschiedenen Taktimpulsreihen umwandelt, wobei jede dieser Taktimpulsreihen die gleiche Folge von 1000 Zeitabschnitten, jedoch unter jeweils anderen Bedingungen, darstellt. Diese Bedingungen werden vom dritten Bauteil des Taktgebersystems bestimmt, der mit Betriebsstufenwähler 69 bezeichnet ist. Der Betriebsstufenwähler 69 des Zeitbasis- und Taktgebersystems reagiert auf Signale, die vom vierten Bauteil des Taktgebersystems, der mit Blockende- und Überlaufdetektor 71 bezeichnet ist, erzeugt werden. Die Informationen, auf die der Blockende- und Überlaufdetektor 71 anspricht, kommen vom Digitalrechner 53 über dessen Ausgangssammelschiene 61. Zusammen mit dem Betriebsstufenwähler 69 dient der Blockende- und Überlaufdetektor 71 dazu, die an den Ausgängen des Zeitbasis-Schaltnetzes 67 erzeugten Taktimpulse jeweils dann zu modifizieren, wenn die von den erzeugten Kommandodaten dargestellten Positionen in den Bewegungsachsen A" und Y sich dem Ende des Wegstückes nähern, das von dem zu dieser Zeit in den aktiven Registern 57 stehenden Informationsblock dargestellt wird. Diese Maßnahme dient dazu, den Digitalrechner 53 verschiedene Funktionen ausführen zu lassen, wenn der gerade verarbeitete Informationsblock zu Ende geht und verschiedene Arbeitsgänge erforderlich werden.
Die Übermittlung der an den Ausgängen des logischen Zeitbasis-Schaltnetzes 67 auftretenden Taktimpulse an den übrigen Teil des Systems erfolgi über die Sammelschienen 73. So werden diese Taktin-.pulse z. B. den Funktionssteuervorrichtungen 55 des Rechners, den den aktiven Registern 57 zugeordneten Programmtoranordnungen sowie den den Zwischenregistern 47 zugeordneten Programmtoranordnungen zugeführt. Außerdem werden die Taktimpulse über die Sammelschienen 73 auch der Einschallvorrichtung 45 des Lochstreifenlesers 41 zugeleitet, so daß der Leser unter Berücksichtigung der Beendigung der Verarbeitung von Daten in den aktiven Registern 57 und der über den Rechner erfolgenden Übertragung von Daten aus den Zwischenregistern 47 in die aktiven Register im zeitlich richtigen Augenblick eingeschaltet wird.
Zur letzten Hauptgruppe des Systems von F i g. 1 gehören die Regelkreise 75 und 77 für die X- bzw y-Achse. Über zwei Sammelschienen 79 und 81 erhalten beide Regelkreise ständig und regelmäßig Mikropositionswerte, die in kurzer, und regelmäßiger Abständen jeweils neu berechnet und als Endergebnis der vom Digitalrechner 53 durchgeführten Daten verarbeitung periodisch in zwei der aktiven Registei 57 aufbewahrt werden.
Zur zirkularen Interpolation wird in der vorliegen
den Anmeldung aliein die alternierende Interpolatioi offenbart, die so genannt wird, weil die Punkte, de ren A'-Koordinaten nach dem an Hand von F i g. ( allgemein beschriebenen Grundrechenprozeß berech net werden, nicht die gleichen Punkte sind, für di< die y-Koordinaten gebildet werden.
Im Gegensatz zur zirkularen Interpolation werder für die lineare Interpolation zwei verschiedene Va rianten offenbart. Bei ihnen handelt es sich um du
»simultane« und die »alternierende« Interpolation. Beim simultan-linearen Interpolieren weiden die zur Bildung der Punkte auf den Koordinaten A" und Y erforderlichen Operationen für jeden Punkt einer Folge von Punkten auf einem zu beschreibenden Wegstück gleichzeitig durchgeführt. Mit anderen Worten: Für jeden Punkt, dessen Α-Koordinate nach dem Grundrechenprozeß berechnet wird, wird auch die Y-Koordinate nach einem ähnlichen Rechengang erzeugt. Bei der alternierenden linearen Interpolation ist dagegen das Interpolieren so gestaffelt wie bei der alternierenden zirkulären Interpolation. Anders ausgedrückt: Ein gegebener Punkt einer Folge von Punkten entlang dem Wegstück wird durch seine nach dem Grundrechenprozeß berechnete X-Koordinate dargestellt, und der nächste Punkt auf dem Wegstück wird durch seine Y-Koordinate abgebildet, die auf ähnliche Weise gewonnen wurde. In der nachstehenden ausführlichen Beschreibung werden zwei Systeme offenbart. Das eine, das Fig.*} zeigt, erzeugt lineare und zirkuläre Wegstücke nach dem simultanen linearen und dem alternierenden zirkulären Interpolationsverfahren. Das zweite System, das dem ersten ähnlich ist und in Fig. 40 gezeigt ist, erzeugt lineare und zirkuläre Wegstücke durch alternierende lineare und alternierende zirkuläre Interpolation. Zu beachten ist, daß das in F i g. 7 in allgemeiner Form dargestellte System im Aufbau beiden in Fig. 9 und 40 detailliert dargestellten Systemen entspricht. Die schaltungstechnischen Maßnahmen, in denen sich die beiden Systeme von F i g. 9 und 40 voneinander unterscheiden, betreffen hauptsächlich Einzelheiten der ihnen zugeordneten Programmtoranordnungcn sowie die Funktionssteuervorrichtungen ihrer Rechner. Im übrigen ist der allgemeine Aufbau bei beiden Systemen gleich.
5. Wirkungsweise des in Fi g. 7 in allgemeiner Form dargestellten Systems
Der erste Schritt, einen vom Lochstreifen 37 abgelesenen Datenblock zu verarbeiten, besteht darin, die Daten zur vorübergehenden Aufbewahrung in die Zwischenregister 47 zu bringen. Zu beachten ist, daß alle Datenblöcke mit Ausnahme des allerersten unmittelbar nach der Weiterleitung des vorhergehenden Datcnblockcs von den Zwischenregistem in die aktiven Register 57 in die Zwischenregister gebracht werden. Der in die Zwischenregister 47 geholte Datenblock bleibt dann dort im wesentlichen so lange wie der vorhergehende, soeben in die aktiven Register gelesene Datenblock im Digitalrechner verarbeitet wird, um den von diesem Datenblock dargestellten Wegabschnitt zu erzeugen. Im System werden also praktisch immer zwei Datenblöcke aufbewahrt, von denen der eine in den aktiven Registern 57 und der andere in den Zwischenregistem 47 steht.
Es sollen nunmehr die Zwischenregister 47 näher betrachtet werden. Zwei dieser Register, 47 X und 47 Y, dienen zur Aufnahme der Koordinaten X und Y des Endpunktes, der laut einem Datenblock erreicht werden soll. Diese Register sind mit »Endpunkt ΛΓ-Achse (XEP)* und »Endpunkt Y-Achse (YEPh bezeichnet. Ausgedrückt in den in Verbindung mit dem Datenblockbeispiel von F i g. 4 erläuterten Daten, bedeutet dies, daß die in das Zwischenregister AlX einzuigende Information aus den die ^-Koordinate des Punktes P2 darstellenden Datenzeilen und die in das Zwischenregister 47 7 einzulesende Information aus den die Y-Koordinate des Punktes P2 von F i g. 2 darstellenden Datenzeilen besteht.
Die beiden nächsten Zwischenregister 47/ und 47/ nehmen die Information auf, die (im Falle eines linearen Blockes) das Vorzeichen und die Strecke der Bewegung darstellen, die nach dem Datenblock in den Achsen X und Y auszuführen ist. Vorzeichen- und Weginformation für X und V werden (im Falle eines linearen Blockes) als Größe / bzw. / bezeichnet.
ίο und die Register, die diese Information aufnehmen, tragen die Bezeichnung »A'-Achsen-Wegkomponente für nächsten Block (/)« bzw. »Y-Achsen-Wegkomponente für nächsten Block (/)«.
Das fünfte Zwischenregister 47 Q ist mit »Makrobewegungsquotient (Q)« bezeichnet und dient zur Aufnahme der aus dem Lochstreifen gewonnenen Information, die den Makrobewegungsquotienlen Q beinhaltet. Schließlich ist noch ein sechstes Awischenregister 47 G vorgesehen, das mit »Bahnform (G)« bezeichnet ist und die Information aufnimmt, die im Lochstreifen die Größe G beinhaltet.
Wie zuvor erwähnt, wurde der gesamte jetzt in den Zwischenregistem 47 stehende Datenblock in diese Register gebracht, kurz nachdem der vorhergehende Informationsblock von den Zwischenregistem 47 in die aktiven Register 57 übertragen worden war. Der jetzt in den Zwischenregistem 47 stehende Datenblock bleibt dort so lange, bis der vorhergehende Block in den aktiven Registern 57 seinen Zweck erfüllt hat und nicht mehr benötigt wird. Das ist der Fall kurz vor Beendigung der Bewegung auf dem Wegstück, das von dem in den aktiven Registern 57 stehenden Informationsblock dargestellt wird. Es darf angenommen werden, daß es sich bei diesem vorhergehenden Wegstück um das Wegstück 27a zwischen den Punkten P0 und P1 in Fig. 2 handelt und daß der nunmehr von den Zwischenregistem 47 in die aktiven Register 57 zu übertragende Datenblock das nächste Wegstück 27/? darstellt, das sich vom Punkt P1 zum Punkt P0 in F i g. 2 erstreckt.
Es sollen nun die aktiven Register 57 betrachtet werden, die den Informationsblock aus den Zwischenregistem 47 aufnehmen sollen. Funktionsmäßig können diese Register in zwei Gruppen unterteilt werden; 57A und SlB. Die erste Gruppe 57A umfaßt sechs Register, die den sechs Zwischenregistem entsprechen und dazu dienen, die Daten aus den Zwischenregistern aufzunehmen. So wird die Information aus den Zwischenregistern 47A^ und 47 Y von zwei aktiven Registern 95 XCEP und 97 YCEP aufgenommen und aufbewahrt. Diese Register sind mit »Endpunkt X-Achse (XCEP)« bzw. »Endpunkt Y-Achse (YCEP)« bezeichnet, wobei XCEP und YCEP für »programmierter Endpunkt bzw. »programmier ter Endpunkt stehen.
Ein zweites Paar aktive Register dient zur Aufnahme der aus den Zwischenregistem 47/ und 47/ stammenden Information. Es sind die Register 99/ und 101/, die mit »A"-Achsen-Wegkomponente lau fender Block (/)« bzw. »Y-Achsen-Wegkomponente laufender Block (/)« bezeichnet sind.
Das letzte Paar der ersten Gruppe von aktiven Registern sind die Register 1030 und lOSG. Sie haben die Aufgabe, die aus den Zwischenregistern
47 Q und 47 G gelesene Information aufzunehmen. In F i g. 7 sind diese beiden aktiven Register mit »Makrobewegungsquotient (Q)<c bzw. »Bahnform (G)« bezeichnet.
Die Daten, die in der vorstehenden aus sechs Registern bestehenden Gruppe stehen, dienen als Grundinformation, aus der im Digitalrechner 53 mit Hilfe des erfindungsgemäßen Interpolationsverfahrens Zwischenwerte gewonnen werden, die Makro- und Mikropositionen darstellen.
Allgemein ausgedrückt, erfolgt ßie Auswertung der in den sechs aktiven Registern 95 ... 105 stehenden Grundinformation durch den Digitalrechner 53 im Interpolationsverfahren dergestalt, daß die Daten zunächst über die Eingangssammelschiene 59 in den Computer gebracht, dort in geeignete (nicht gezeigte) Speichereinrichtungen gelesen und dann verarbeitet werden, um aus ihnen weitere Informationen zu gewinnen.
Der zweiten Gruppe aktiver Register fällt die Aufgabe zu, die Daten aufzunehmen, welche vom Digitalrechner 53 als Ergebnis der beim Interpolieren durchgeführten Berechnungen erzeugt werden. Es sei angenommen, daß der Datenblock, der die gewünschte Bewegung im Wegstück 276 vom Punkt P1 zum Punkt P2 in Fig. 2 darstellt, von den Zwischenregistern 47 in die sechs aktiven Register 95 ... 105 gebracht worden ist. Damit kann der Rechenprozeß zum Interpolieren beginnen. Im ersten Schritt werden die Größen Λ X und 1Y erzeugt, die die Makrobewegungen in der X- und der Y-Achse darstellen und den zuvor in F i g. 5 gezeigten Makrostrecken Δ X und Λ Y entsprechen. Zu beachten ist, daß alle numerischen Werte, die von dem hier zu beschreibenden System erzeugt werden, in Form von Digitalsignalen dargestellt werden.
Soweit hier vom Herauslesen, Einschreiben, Addieren, Speichern oder anderweitigen Verarbeiten einer »Zahl« gesprochen wird, bezieht sich dies auf die Signale, die diese Zahl darstellen, und nicht auf die Zahl an sich.
Wie aus der Beschreibung der F i g. 5 b bekannt, ist für ein lineares Wegstück
40
AX=I-Q (9)
AY= J- Q (10)
Es werden daher die in den aktiven Registern 99/, 1017 und 103(2 stehenden Größen in die entsprechenden Speichereinrichtungen des Digitalrechners 53 übertragen. Der Rechner bildet dann zwei Produkte / · Q und J ■ Q, die die Makrobewegung in den beiden Koordinatenrichtungen beinhalten. Der eine Wert,/ · Q, wird über die Ausgangssammelschicneol des Rechners in zwei aktive Register 107,1V und 111 YR gebracht, die in Fig. 7 mit »Makrobewegungsgröße y-Achse (A Y)« bzw. »Makrobewegungsrest (YR)« bezeichnet sind. Weshalb zur Speicherung dieses einen Wertes zwei Register benutzt werden, braucht man an dieser Stelle nicht unbedingt zu wissen. Erwähnt sei lediglich, daß in dem zu beschreibenden Ausführungsbeispiel die vier höchsten Stellen der Makrobewegungsgröße J ■ Q im Register 107.1 Y und die vier übrigen Stellen der Zahl im Register 111 YR gespeichert werden. Anschließend erzeugt der Rechner eine Makrobewegungsgröße / ■ Q, die in einem anderen Paar aktiver Register 109 \X und 113XR untergebracht wird. Diese Register sind mit »Makrobewegungsgröße -Y-Achse (A X)« bzw. »Makrobewegungsrest (XR)« bezeichnet.
Die vier höchsten Stellen des Produktes J ■ Q, die im aktiven Register 107 AY stehen, werden zur Erzeugung einer Zahl benutzt, die die Y-Koordinate des Punktes darstellt, der am Ende der Makrobewegung AY erreicht werden soll. Der aus dieser Rechenoperation gewonnene Wert YCP für die Y-Koordinate wird in ein aktives Register USYCP gebracht, das mit »Makroposition Y-Achse (YCP)e bezeichnet ist. Diese Rechenoperation wird nach jeder Berechnung der Makrobewegungsgröße Δ Υ ausgeführt, indem die zu dieser Zeit in ^en aktiven Registern 115 YCP und 107.1 Y stehenden Zahlen addiert werden und die Summe wieder in das Register 115 YCP gebracht wird.
Ähnlich ist für die A'-Achse das aktive Register 117.YCP vorgesehen, das den Sollwert XCP für die Makroposition in der .Y-Achse aufnimmt und mit »Makroposition A'-Achse (ATP)« bezeichnet ist. Die Zahl, die den letzten Sollwert XCP für die Makroposition in der -Y-Achse bezeichnet, wird vom Register 117ATP in den Digitalrechner 53 gebracht, gefolgt von der Makrobewegungsgröße A X aus dem Register 109.1.Y. Aus diesen Wirten wird im Computer die Summe gebildet, die dann den zuletzt im Register 117 A-CP aufbewahrter Makropositionswert ersetzt.
Neben der Erzeugung der Makropositionswerte XCP und YCP kann das System auch Mikropositionen erzeugen, die auf den Bewegungsachsen X und Y Punkte bezeichnen, welche am Ende von aufeinanderfolgenden Mikrobewegungen, wie etwa denen von F i g. 5 b, erreicht werden sollen. Die numerischen Daten, die die Mikropositionen auf der Y-Achse beinhalten, werden von einem aktiven Register 119 YSC aufgenommen, das mit »Mikroposition Y-Achsc (YSC)« bezeichnet ist. In ähnlicher Weise wird die Digitalinformation, die die Mikropositionen auf dei A'-Achse angibt, von einem Register 121A\SC aufgenommen, das mit »Mikroposition A'-Achse (XSC)« bezeichnet ist. Man kann sich die in den aktiven Registern 119 YSC und HiXSC stehfinden Werte als das Endprodukt der vom Digitalrechner 53 durchgeführten Berechnungen vorstellen, da diese Werte in Form elektrischer Digitalsignale über die Sammelschienen 79 und 81 den Regelkreisen 75 und 77 der Bewegungsachsen X und Y zugeführt werden. Diese Daten dienen also den Regelkreisen als Sollwerte und sind daher zur Kennzeichnung der in den Registern 119 YSC und 121A\SC stehenden Zahlen mit YSC bzw. XSC bezeichnet.
Die Bildung des Mikropositionswertes YSC für die Y-Achse erfolgt in ähnlicher Weise wie die Bildung des Makropositionswertes YCP für diese Achse. So wird die im Register 119 YSC stehende Zahl, die die letzte Makroposition auf der Y-Achse angibt, in den Digitalrechner 53 gebracht, wo zu dieser Zahl dann ein eine Mikrobcwegung darstellender Wert, also
'-jj- , hinzuaddiert wird. Man erhält diesen zuletzt genannten Wert, indem man die im aktiven Register 107.1 Y sichende Größe .1 Y in den Digitalrechner53
bringt und sie durch N dividiert. Das Resultat :-r^-
wird zu der zuvor aus dem Register 119 YSC gelesenen Zahl (Y1S-C) addiert und die Summe vom Rechner wieder in das Register 119 YSC zurückübertra-
gen. Das Addieren von '-^- zu YSC aus dem Register 119 YSC wird im Ausführungsbeispiel alle 2 ms wie-
derholt, so daß der Regler für die Y-Achse alle 2 ms Signale für eine neue Mikroposition erhält. Auch für die .Y-Achse werden aufeinanderfolgende; Mikropositionswerte gebildet, die aufeinanderfolgende Mikropositionen auf der .Y-Achse darstellen. Diese Positionswerte werden, wie zuvor erwähnt, im Register 121XSC aufbewahrt und aus der im aktiven Register 1Q9AX stehenden Größe in genau der gleichen Weise gewonnen wie der Wert YSC aus der im Register 107 Δ Y stehenden Größe A Y.
Der Rechenprozeß, nachdem Daten periodisch aus den aktiven Registern 107 ... 121 abgerufen, in den Digitalrechner 53 gebracht, dort von diesem zwecks Erzeugung aufeinanderfolgender Positionswerte verarbeitet und wieder in die Register zurückgebracht werden, wird so lange fortgesetzt, bis das System feststellt, daß sich der Prozeß dem Ende nähert. Das ist der Fall, wenn sich der in einem der Register 1 IS YCP und 117AXT stehende Makropositionswert dem programmierten Endpunkt der betreffenden Achse, der in einem der aktiven Register 95ZCtT und 97 YCEP steht, bis auf einen vorbestimmten Abstand genähert hat. Zu diesem Zweck wird bei einem bevorzugten Ausführungsbeispiel an einer der Bewegungsachsen eine Prüfung vorgenommen, und zwar immer dann, wenn eine neue Makroposition für die betreffende Achse berechnet worden ist. Um die Ansprechempfindlichkeit dieser Prüfung noch zu steigern, wird sie beim bevorzugten Ausführungsbeispiel jeweils an der Achse mit der schnelleren Bewegungsgeschwindigkeit durchgeführt. So wird z. B. bei der Berechnung der Makropositionen des Wegstückes 27 b von F i g. 2 die Prüfung an der X-Achse vorgenommen, da die gewünschte Bewegung und die zu ihrer Ausführung erforderliche Geschwindigkeit auf der ,Y-Achse größer sind als die entsprechenden Werte für die Y-Achse. Zur Durchführung dieser Prüfung, mit der ermittelt wird, wann der Rechengang für die zum Wegstück 27 b gehörenden Daten beendet ist, wird bei jeder Übertragung einer neuen Makroposition XCP in das Register XCP dieser Wert im Digitalrechner 53 mit dem im aktiven Register 95 YCEP stehenden Wert YCEP verglichen. Sobald dabei festgestellt wird, daß der Makropositionswert YCP innerhalb einer vorbestimmten Entfernung vom Endpunkt XCEP liegt, gibt der Computer ein Signal ab, das diese Bedingung anzeigt. Dieses Signal wird dem Blockende- und Überlaufdetektor 71 über die Ausgangssammelschiene 61 des Computers zugeführt. Unter dem Einfluß eines Blockende-Signals des Blockende- und Ü'oerlaufdetektors ändert der Betriebsstufenwähler 69 des Zeitbasis- und Taktgebersystems die vom Zeitbasis-Schaltnetz 67 erzeugten Taktimpulse, wodurch wiederum der Arbeitsablauf im Digitalrechner 53 geändert wird. Führt das System z. B. simultan-lineare Interpolationen durch, so bewirkt der neue Arbeitsablauf eine Modifizierung der den Regelkreisen 75 und 77 der Y- bzw. Y-Achse zugeführten Positionswerte, um die letzten in den Registern 115 YCP und 117 XCP stehenden Makropositionen soweit wie möglich an die betreffenden Endpunkte YCEP und YCEP des Informationsblokkes anzunähern. Ferner hat die Änderung des Arbeitsablaufs zur Folge, daß mit der Übertragung der bis zu diesem Zeitpunkt in den Zwischenregistern 47 stehenden Daten in die aktiven Register begonnen wird. Diese Daten gehören zum Datenblock, der das nächste Wegstück 27 c beinhaltet. Des weiteren wird durch die Änderung der vom Zeitbasis-Schaltnetz 67 erzeugten Taktimpulse bewirkt, daß die Einschaltvorrichtung 45 den Transporttnechanismus des Streifenlesers einschaltet, so daß dieser den nächsten, den Wegeabschnitt 27 d darstellenden Informationsblock vom Lochstreifen abliest und in die Zwischenregister 47 überträgt.
Mit der vorstehenden Beschreibung sollte ein allgemeiner Überblick über den möglichen Aufbau eines
ίο Systems gegeben werden, mit dem sich It re und zirkuläre Interpolationen durchführen lasse Die bisherigen Ausführungen reichen jedoch zum vollständigen Verstehen der Wirkungsweise bzw. des Systemaufbaus nicht aus. Diesem Zweck dient vielmehr die nun folgende ausführliche Beschreibung von zwei Systembeispielen. Wie zuvor erwähnt, entsprechen beide Ausführungsformen im Aufbau im wesentlichen dem System, das in allgemeiner Form in F i g. 7 dargestellt ist. Gelegentliche Rückverweise in der ausführlichen Beschreibung auf die vorstehende allgemeine Beschreibung sowie auf F i g. 7 können sich dabei als nützlich erweisen.
C. Ausführliche Beschreibung der Erzeugung von Geraden nach dem simultanen Interpolationsverfahren
1. Beschreibung des Systems
Das Verfahren, nach dem für jeden einer Folge von gleich weit auseinanderliegenden Punkten Makropositionrwerte YCP und YCP erzeugt werden, wird im einzelnen an Hand eines in F i g. 9 gezeigten Systems beschrieben, mit dem sich sowohl simultanlineare Interpolation als auch alternierend-zirkulare Interpolation durchführen läßt. Bevor auf die Wirkungsweise des Systems beim Erzeugen gerader Wegstücke eingegangen wird, sollen zunächst bestimmte Teile des Systems beschrieben werden.
a. Zentrales Taktgebersystem
In dem numerischen Steuerungssystem von F i g. 9 sind Vorkehrungen getroffen, um einen aus Signalen bestehenden Zahlenzyklus zu erzeugen. Diese Signale stellen in digitaler Form eine Bezugszahl dar, die sich in aufeinanderfolgenden Zeitabschnitten wiederholt und zyklisch innerhalb einer Folge von progressiv zunehmenden Werten ändert. Des weiteren sind Vorkehrungen getroffen, um für die Regelkreise 75 und 77 der Bewegungsachsen X und Y eine sinusförmige Bezugsspannung zu erzeugen und aus dem Zahlenzyklus Signale abzuleiten, welche die Zeitabschnitte bestimmen, in denen die verschiedenen Operationen der numerischen Steuerung ausgeführt werden. Eine besonders wirkungsvolle Kombination zur Durchführung ail dieser Funktionen stellen das Zeitbasis- und Taktgebersystem 63 und der Betriebsstufenwähler 69 dar, die Fi g. 9b bzw. 9e zeigen.
1) Erzeugung des Digitalzyklus
Zum Zeitbasis- und Taktgebersystem 63 gehört eine Gruppe von vier in Kaskade geschalteten Zähldeka-
509 507/40
den 131, 133, 135 und 137, oie binärverschlüsselte Dezimalimpulse abgeben. Die Bildung des Zahlencyklus erfolgt an den Ausgängen der ersten drei Zähldekaden 131, 133 und 13S, die mit A, B und C und zusammen als Digitalzykhisgenerator 139 bezeichnet sind. Alle Zähldekaden 131, 133, 135 und 137 sind im Aufbau ähnlich und dem Fachmann bekannt. Eine typische Dekade dieser Art enthält vier in Kaskade liegende Flipflops, die so zusammengeschaltet sind, daß die Dekade unter dem Einfluß von aufeinanderfolgenden Eingangsimpulsen im Turnus von 0... 9 zählt, bei jedem zehnten Eingangsimpuls wieder auf 0 zurückgestellt wird und ihren Inhalt auf vier Ausgangsleitungen oder -klemmen im 8421-Binärcode meldet. Außerdem erzeugt die Dekade bei jeder Zurückstellung auf 0 ein Signal auf einer fünften Leitung, der »Übertrags«Ieitung 149.
Die Weiterschaltung der A -Zähldekade 131 erfolgt durch Impulse, die mit einer Folgefrequenz von 500 kHz von einem Vierteiler 141 erzeugt werden. Der Vierteiler 141 erhält seinerseits Impulse von einem 2-MHz-Taktimpulsgenerator 143. Die vom Taktimpulsgenerator 143 und vom Vierteiler 141 erzeugten Ausgangsimpulse sind in F i g. 11 als Rechteckschwingungen 145 bzw. 147 dargestellt. Die Einersteile des Zahlenzyklus erscheint an den Ausgangsklemmen der A -Zähldekade 131. Diese Ausgangsklemmen sind mit A 1, A 1, A 4 und A 8 bezeichnet, um den binären Stellenwert der auf dem jeweiligen Ausgang auftretenden Signale anzudeuten. Da die der A -Zähldekade 131 zugeführten Impulse mit einer Impulsfolgefrequenz von 500 kHz auftreten, also alle 2 μ& ein Impuls erscheint, durchläuft diese Zähldekade ihre zehn Zahlenstände alle 20 \is. Über die Übertragungsleitung 149 wird der Übertrag der A -Zähldekade 131 dem Eingang der B-Zähldekade 133 zugeführt. Diese Zähldekade durchläuft also ihre zehn Zahlenstände alle 200 ns, und auf ihren vier mit öl, Bl, BA und BH iiezeichneten Ausgängen wird die Zehnerstelle des Zahlenzyklus gemeldet. Der Übertrag der B-Zähldekade 133 wird über die Übertragsleitung 151 auf dis C-Zähldekade 107 gegeben, so daß diese Dekade alle 2 ms ihre zehn Zahlenstände durchläuft. Von den Aisgängen Cl, Cl, C4 und C8 dieser Zähldekade werden die die Hunderterstelle des Digitalzyklus darstellenden, binärverschlüsselten Dezimalsignale abgenommen.
Zusammen erzeugen die Zähldekaden A 131, B133 und C135 also einen Zahlenzyklus, der aus Signalen besteht, die eine Bezugszahl darstellen, welche sich im Turnus in aufeinanderfolgenden Zeitabschnitten von einem ersten vorbestimmten Wert (hier 000) bis auf einen zweiten vorbestimmten Wert (hier 999) in gleich großen Einheiten (hier 1) und zu in zeitlich gleichem Abstand auftretenden Augenblicken (hier 2μ&) ändert. Die vom Digitalzyklusgenerator 139 erzeugten Signale werden anderen Teilen des Systems zugeführt. Zur Wahrung der Übersichtlichkeit in den Zeichnungen sind die Verbindungen zu diesen Teilen nicht durch Linien dargestellt. Statt dessen enthalten die Ausgänge des Digitalzyklusgenerators 139 das Symbol Λ und Anschlußklemmen von Vorrichtungen des Systems, wie z. B. den Vergleichern von Fig. 9d, die mit den Anschlußklemmen des Digitalzyklusgenerators verbunden sind, tragen ähnliche Symbole nebst einer zusätzlichen Bezeichnung der betreifenden Anschlußklemme de« Digitalzyklusgenerators, mit der diese Vorrichtungen verbunden sind.
2) Erzeugung von Auftastimpulsen, um sicherzustellen; daß der vom Digitalzyklusgenerator erzeugte Zahlenzyklus nur so lange ausgewertet wird, wie die
Zahlenstände des Generators stabil sind
5
Die Weiterschaltung der von den Zähldekaden des Digitalzyklusgenerators 139 zusammen signalisierten Zahl zeigt F i g. 11 als treppenförmigen Schwingungszug 153. Wie ersichtlich, beginnt jeder neue Zahlen- stand mit der negativen Flanke der Rechteckschwingung 147 und dauert bis zur nächsten negativen Flanke. Die Wellenlinie im vorderen Teil jedes Zahlenstandes bezeichnet eine Periode der Un<:tabii;tät, in der die Zähldekaden noch von ihrem vorhergehenden Zahlenstand »taumeln«. Die Hauptaufgabe des Vierteilers 141 besteht darin, einen Auftastimpuls im mittleren Teil des stabilen Zeitraumes eines jeden Zahlenstandes zu eizeugen, so daß Vorrichtungen im System, die die Ausgangssignale des Digttalzyklusgenerators benutzen, aufgetastet werden können, um die Ausgangssignale des Digitalzyklusgenerators aufzunehmen, solange seine Zahlenstände stabil sind.
Zum Vierteiler 141 gehören zwei getastete Flipflops 1S5 und 157. Der Flipflop 155 hat zwei Ein- gänge J1 und K1 zum Empfang von Tastimpulsen und einen dritten mit CP bezeichneten Eingang zum Empfang von Taktimpulsen. Ferner hai der Flipflop zwei mit 1 1 und Ti bezeichnete Ausgänge, die dadurch gekennzeichnet sind, daß — wenn am einen Ausgang ein Binärsignal »1« auftritt — der andere Ausgang ein Binärsignal »0« abgibt. Die Ein- und Ausgänge des Flipflops 157 entsprechen denen des Flipflops 155 und sind mit J2, Kl, CP, Γ2 und T2 bezeichnet. Flipflops der zur Verwendung im Vierteiler 141 dargestellten Art werden allgemein mit /-£-Flipflops bezeichnet und sind dem Fachmann bekannt. Hier soll daher lediglich beschrieben werden, wie diese Flipflops unter vier verschiedenen Bedingungen arbeiten.
Bedingung 1: Liegt weder am Eingang / noch am Eingang K ein Binärsignal »1« an, d. h., wird weder der Eingang / noch der Eingang K getastet, während der Flipflop einen Taktimpuls erhält, so bewirkt dieser Taktimpuls keine Überführung des Flipflops in den anderen Zustand.
Bedingung 2: Ist der Eingang K bei Ankopplung eines Taktimpulses getastet, wird der Flipflop durch die nach dem Tasten des Eingangs K auftretende negative Flanke des Taktimpulses in den Zustand »0« zurückgestellt, in welchem er an seinem Ausgang T ein Binärsignal »0« und an seinem Ausgang T ein Binärsignal »1« abgibt.
Bedingung 3: Ist der Eingang J getastet, wird der FHpflop durch Anschaltung eines Taktimpulses in den Zustand »1« übergeführt, d. h. in den Zustand, in welchem er an seinem Ausgang T ein Binärsignal »1« und an seinem Ausgang T ein Binärsignal »0« abgibt. Befindet sich der Flipflop im Falle der beiden zuletzt genannten Bedingungen beim Tasten seines Einganges K bereits im Zustand »0«, so verbleibt er nach Anschaltung eines Taktimpulses natürlich in diesem Zustand. Ähnlich verbleibt er nach Ankopplung eines Taktimpulses im Zustand »1«, wenn er sich beim Tasten seines Einganges J bereits in diesem Zustand befindet.
Bedingung 4: Sind beide Eingänge J und K bei Anschaltung eines Taktimpulses getastet, so wechselt der Flipflop unter dem Einfluß der Ankopplung eines
Taktirnpulses seinen Zustand, gleichgültig, in welchem Zustand er sich vor Ankopplung des Taktimpulses befunden hat.
Mit diesen Grundkenntnissen von den den Vierteiler 141 bildenden /-K-Flipflops läßt sich die Wirkungsweise dieser Schaltung nunmehr einfach beschreiben. Es handelt sich um den sogenannten Johnson-Zähler und im Prinzip um ein zweistufiges Serienschieberegister, das zu einer Schleife zusammengeschaltet ist, wobei die Ausgänge kreuzweise auf die Eingänge zurückgeführt sind. Der Ausgang T1 des Flipflops 155 ist mit dem Eingang/2 des Flipflops 157 und der Ausgang TI mit dem Eingang K 2 verbunden. Der Ausgang T 2 des Flipflops 157 liegt am Eingang K1 des Flipflops 155, und der Ausgang T 2 liegt am Eingang Jl. Die Taktimpulseingänge beider Flipflops erhalten Impulse vom 2-MHz-Taktimoulsgenerator 143.
Nimmt man an, daß sich beide Flipflops zunächst im Rückstellzustand befinden, so erhalten ihre Eingänge »1 «-Impulse von den Ausgängen TI und T2. Dies ist ir> F i g. 9 b in dem über dem Vierteiler 141 stehenden Impulsdiagramm dargestellt. Beim Auftreten der negativen oder Umschaltflanke des ersten Taktimpulses wird daher der erste Flipflop 155 in den Einstellzustand übergeführt; der zweite Flipflop 157 bleibt im Rückstellzustand.
Bei im Einstellzustand befindlichem Flipflop 155 gibt dessen Ausgang Π einen »1 «-Impuls auf den Eingang/2 des Flipflops 157, während gleichzeitig der Ausgang T 2 des Flipflops 157 den Eingang /1 des Flipflops 155 auch wditerhin mit einem »1 «-Impuls tastet. Beim Auftreten der negativen Flanke des zweiten Taktimpulses bleibt also der Flipflop 155 in seinem Einstellzustand. Gleichzeitig wird aber durch diese Flanke der zweite Flipflop 157 von seinem Rückstell- in den Einstellzustand umgeworfen.
Bei Ankunft des dritten Taktimpulses liegen also an den Eingängen J2 und Kl der beiden Flipflops 155 und 157 »1 «-Impulse von den Ausgängen 71 und Γ 2 an. Da diese beiden Eingänge beim Auftreten der Hinterflanke des dritten Taktimpulses also getastet sind, wird durch diese Hinterflanke der Flipflop 155 zurückgestellt, während der Flipflop 157 in seinem Einstellzustand bleibt.
Durch diesen zuletzt genannten Wechsel wird der Eingang Kl des Flipflops 157 durch den AusgangTT des Flipflops 155 mit einem »1 «-Impuls getastet. Der Eingang K1 des Flipflops 155 erhält weiterhin einen »1 «-Impuls vom Ausgang Γ 2 des Flipflops 157. Tritt unter diesen Bedingungen nunmehr die Hinterflanke des vierten Taktimpulses auf, so wird der Flipflop 157 zurückgestellt, während der Flipflop 155 im Rückstellzustand bleibt. Beide Flipflops nehmen also wieder den Zustand ein, in dem sie sich zu Beginn des Zyklus befanden, und von hier wiederholt sich der Zyklus dann aufs neue.
Der vom Flipflop 157 erzeugte Impulszug Γ 2 wird zum Tasten des Digitalzyklusgenerators 139 benutzt, der mit jeder negativen Flanke des Impulszuges um eine Einheit weitergeschaltet wird. Die Zeit, die zwischen vier Taktimpulsen verstreicht, entspricht also einer Einheit. Genauer gesagt, ändert die A-Zähldekade 131 ihren Zahlenstand mit der Hinterflanke des Impulses 7" 2 mit einer durch die Laufzeit ihrer Flipflops bewirkten Verzögerung. Die B-Zähldekade 133 ändert ihren auf den Ausgängen gemeldeten Zahlenstand mit der Hinterflanke des Übertragssignals der /1-Zähldekade 131, und zwar ebenfalls mit einer durch die Lautzeit der Flipflops dieser Dekade bewirkten Verzögerung. Die Laufzeiten der hintereinandergeschalteten Zähldekaden 131... 137 addieren sich also. In dem über dem Vierteiler 141 stehenden Impulsldiagramm beginnt die schraffierte Fläche, die den zweiten, dritten und vierten Taktimpuls überbrückt, in dem Augenblick, in welchem sich die C-Zähldekade 135 stabilisiert hat, und endet,
u< wenn die A -Zähldekade 131 ihren Zahlenstand zu ändern beginnt. Die schraffierte Fläche stellt also ungefähr die Zeitspanne dar, in der alle Ziihidekaden 131 ... 135 des Digitalzyklusgenerators 139 sich im stabilen Zustand befinden. Die unschraffierte Fläche, die etwa mit dem ersten Taktimpuls zusammenfällt, entspricht dem kurzen Zeitraum, in welchem einige der Zähldekaden des Digitalzyklusgenerators noch zu ihren neuen Zahlenständen »taumeln«.
Zur Erzeugung eines Auftastimpulses, der etwa in dem mittleren Teil der den stabilen Zustand des Digitalzyklusgenerators darstellenden schraffierten Fläche fällt, werden der Ausgangsimpuls T1 des Flipflops 155 und der Ausgangsimpuls Ί2 des Flipflops 157 auf ein UND-Glied 159 gegeben. Wie aus dem Impulsdiagramm des Vierteilers 141 zu ersehen ist, befinden sich die Ausgangsimpulse T1 und T 2 der beiden Flipflops 155 und 157 im mittleren Teil der schraffierten Fläche gleichzeitig auf dem logischen Pegel »1«, so daß während dieser Zeit am Ausgang des UND-Gliedes 159 eine Spannung mit dem logischen Pegel »1«, d. h. eine Auftastspannung, erscheint. Dieses Spannungssignal ist durch das Verknüpfungssymbol TlTl dargestellt.
3) Erzeugung einer Grundreihe von
Programmschritten
Zum Zeitbasis- und Taktgebersystem 63 gehören auch Vorrichtungen, um während verschiedener vorbestimmter Zahlenstände des Digitalzyklusgenerators 139 Taktimpulse zu erzeugen, mit denen der Betrieb verschiedener Einrichtungen auf bestimmte Zahlenstände des Digitalzyklusgenerators abgestimmt wird. Die zu diesem Zweck hier benutzte Anordnung umfaßt einen Programmschrittgenerator 161, der aus den Zähldekaden B133 und Γ135 des Digitalzyklusgenerators 139 und der Zähldekade D137 besteht, die vom Übertragungsausgang der Zähldekade C135 getastet wird. So wie die Zähldekaden A 131, B133 und C135 zusammen einen Zähler mit einem Teilerverhältnis 1000 bilden, der pro Sekunde fünfhundertmal 1000 Zahlenstände durchläuft, so bilden die Zähldekaden 5133, C135 und D137 zusammen einen Zähler mit einem Teilerverhältnis 1000, der pro Sekunde fünfzigmal 1000 verschiedene Zahlenstände durchläuft. Anders ausgedrückt, die Zahl, die von den den Digitalzyklusgenerator 139 bildenden Zähldekaden/l 131, B133 und C135 signalisiert wird, ändert sich zehnmal pro Änderung der Zahl, die von den den Programmschrittgenerator 161 darstellenden /.ähldekaden ßl33, C135 und D137 signalisiert wird.
Die soeben beschriebene Beziehung ist in Fig. 11 grafisch dargestellt, in welcher der stufenförmige Schwingungszug 163 die einzelnen Schritte darstellt, die der aus den Zähldekaden B133, C135 und D137 bestehende Programmschrittgenerator 161 durchläuft. Jede dieser Stufen stellt einen Programmschritt dar,
und wie aus der Figur zu ersehen ist, durchläuft der Digitalzyklusgenerator 139 einen vollständigen Zyklus von 000 ... 999 in derselben Zeitspanne, in welcher die Programmschritte von 0 ... 100 laufen.
Die Beziehung zwischen den Zahlen des Digitalzyklus und den Programmschritten kommt auch in Fig. 10a zum Ausdruck. Diese Figur zeigt ein Programmschema in Form eines rechteckigen Diagramms, senkrecht unterteilt in zehn Spalten. Jede Spalte ist in zehn gleich große Felder unterteilt, die ihrerseits jeweils in zehn gleich große Schritte unterteilt sind. Das Diagramm ist also in 1000 gleich große Schritte unterteilt, die jeweils einen Zahlenstand des Programmschrittgenerators 161 darstellen. Der oberste Schritt in der ersten Spalte ist mit 000 bezeichnet und entspricht dem ersten Zahlenstand des Programmschrittgenerators 161. Der unterste oder letzte Schritt der ersten Spalte ist mit 99 bezeichnet und stellt den hundersten Zahlenstand des Programmschrittgenerators dar. Ähnlich sind auch die Schritte in den übrigen neun Spalten bezeichnet. So entspricht der oberste Schritt in der zweiten Spalte dem Zahlenstand 101, der unterste Schritt in dieser Spalte dem Zahlenstand 200 usw. bis zum letzten Schritt in der letzten Spalte, der den Zahlenstand 1000 des Programmschrittgenerators darstellt.
Wie zuvor erwähnt, durchläuft der Digitalzyklusgenerator 139 pro Schritt oder Zahlenstand des Programmschrittgenerators 161 zehn eigene Schritte oder Zahlenstände. Im Verlauf von jeweils einhundert Schritten, die im Programmschema durch fortlaufende Spalten dargestellt sind, durchläuft also der Digitalzyklusgenerator 139 eintausend verschiedene Zahlenstände von 000 ... 999. Dies ist in Fig. 10b durch die schräg nach links verlaufende Linie 165 angedeutet, die in etwa den Zahlenzyklus des Digitalzyklusgenerators 139 wiedergibt.
Wie eine weitere Betrachtung des Programmschrittgenerators 161 zeigt, erzeugt dieser 1000 mögliche Programmschritte, von denen jeder mit Hilfe von Vorrichtungen ausgewählt werden kann, die auf die bestimmte, während des betreffenden Schrittes an den Ausgängen des Programmschrittgenerators auftretende Signalkombination ansprechen. Diese Auswahl ließe sich dadurch realisieren, daß an jedem auszuwählenden Programmschritt eine besondere Gruppe UND-Glieder zuordnete. Natürlich würde dies eine enorme Anzahl von UND-Gliedern erfordern, da jeder Programmschritt auf zwölf Ausgängen — B1, B 2, B4, B 8, Cl, C 2, CA, CS und D1, Dl, DA, DS-gemeldet wird. Zur Verringerung des Schaltungsaufwandes, der für die Auswahl verschiedener zur Durchführung von zeitlich verschieden abgestimmten Funktionen herangezogener Programmschritte erforderlich ist, ist daher eine Gruppe von drei Binär-Dezimal-Umsetzern 167, 169, 171 vorgesehen, durch die die Anzahl der Signale, welche die verschiedenen Programmschritte darstellen, reduziert wird. Jeder dieser drei Codeumsetzer hat vier Eingänge zur Aufnahme einer binärverschlüsselten Dezimalstelle von einer der drei Zähldekaden des Programmschrittgenerators 161 sowie zehn Ausgänge. Der Einer-Umsetzer 167 meldet die Einerstelle des Prograrnmschrittes auf einem seiner zehn Ausgänge, die mit 0 ... 9 bezeichnet sind. Der Zehnerumsetzer 169 gibt die Zehnerstelle des Programmschrittes auf einem seiner zehn mit 00 ... 99 bezeichneten Ausgänge bekannt, und der Hunderterumsetzer 171 signalisiert die Hunderterstelle des Programmschrittes auf seinen zehn Ausgängen 000 ... 999.
Durch den Einsatz der Codeumsetzer werden alle 1000 Programmschritte des Programmschemas von Fig. 10a durch Signale auf jeweils einer anderen Kombination von drei Ausgängen der insgesamt dreißig Ausgänge der Binär-Dezimal-Umsetzer 167, 169 und 171 dargestellt. Beispielsweise sei angenommen, daß der Zahlenstand des Programmschrittgenerators 746 lautet, der Generator sich gemäß dem Programmschema von Fig. 10a also im Programmschritt 47 der Spalte 8 befindet. Dieser Zahlenstand und Programmschritt wird auf den Ausgängen des Programmschrittgenerators 161 durch Binärsignale »1« dargestellt, die auf den Ausgängen B 2 und BA, CA sowie Dl, Dl und DA auftreten. Demgegenüber wird derselbe Zahlenstand und Programmschritt an den Ausgängen der Binär-Dezimal-Umsetzer 167. 169 und 171 durch Binärsignale »1« an drei Ausgängcn dargestellt, und zwar am Ausgang 700 des Hunderterumsetzers 171, am Ausgang 40 des Zehnerumsetzers 169 und am Ausgang 6 des Einerumsetzers 167. Soll also irgendeine Vorrichtung des Systems im Programmschritt 746 zu arbeiten beginnen, so kann dies mit Hilfe eines UND-Gliedes bewirkt werden, das auf das gleichzeitige Auftreten von Signalen an den soeben genannten drei Ausgängen der Codeumsetzer anspricht. In der Tat werden auf diese Weise viele der Taktinipulse im System erzeugt, und die für diesen Zweck benutzten UND-Glieder werden mit »Programm«tore bezeichnet.
Zum Zeitbasis- und Taktgebersystem 63 gehört auch noch ein Zuordner 173, der einen Programmtaktimpuls (PCP) und einen Schreibimpuls (WP) abgibt. Beide Impulse treten in jedem Umlauf der Zähldekade Al31 einmal auf. Zu welchen Zeiten diese Impulse in jedem Umlauf der Zähldekade A 131 beim Zählen von 0 ... 9 auftreten, ist aus dem direkt über dieser Zähldekade stehenden Impulsdiagramm von F i g. 9 b ersichtlich. Jeder Programmschritt wird vom Programmtaktimpuis ausgelöst, und der Schreibimpuls markiert den Augenblick, in welchem in einem bestimmten Programmschritt Daten in einen Speicher geschrieben werden sollen. Der Aufbau des Zuordners 173 ist dem Fachmann bekannt und wird daher nicht beschrieben. Der Zuordner benutzt die Impulse von den Ausgängen AX, Al, AA und A 8 der Zähldekade /4131 und kann auch die Impulsen und Tl des Vierteilers 141 verwenden. Er kann geeignete NICHT-Glieder. UND-Glieder sowie Flipflops enthalten, die so miteinander verknüpft sind, daß dei Programmtaktimpuls PCP sowie der Schreibimpuls WP erzeugt, gleichzeitig aber auch Steuerungsschwierigkeiten nach außen vermieden werden. Vor allerr muß der Programmtaktimpuls beendet sein, bevor dei Programmschrittgenerator seinen Zahlenstand ändert
4) Erzeugung weiterer Programmschrittreihen
Der bis hier beschriebene Programmschrittgenera tor 161 erzeugt 1000 Taktimpulse, die in jedem Zy klus des Generators jeweils einen anderen Zeitab schnitt von 20 us Dauer definieren. Soll eine be stimmte Operation in einem bestimmten Programm schritt, wie etwa 746, des Programmschrittgenerator 161 ausgelöst werden, so werden, wie erwähnt, dre Eingänge eines Programmtores mit den Ausgänge!
700, 40 und 6 der Binär-Dezimal-Umsetzer 171, 16!
und 167 verbunden. Es sei jedoch angenommen, dal
cine bestimmte Operation im Programniscliritt 746 nur dann ausgelöst werden soll, wenn eine bestimmte Bedingung vorliegt, eine zweite Operation nur dann, wenn eine zweite Bedingung vorliegt, eine dritte Operation nur, wenn eine dritte Bedingung erfüllt ist, und noch eine weitere Operation, wenn eine vierte Bedingung vorliegt. Des weiteren sei angenommen, daß eine fünfte Operation im Programmschrilt 746 durchgeführt werden soll, gleichgültig, ob die erste, zweite, dritte und vierte Bedingung vorliegen oder nicht. Für diese Aufgabe ist das logische Zcitbasis-Schaltnetz 67 vorgesehen, das Fig. 9d irn einzelnen zeigt. Zu ihm gehören vier Gruppen UND-Glieder 175, 177, 179 "und 181. Jede Gruppe besteht aus zehn UND-Gliedern, von denen jeweils nur die beiden ersten und letzten dargestellt sind. Innerhalb jeder Gruppe liegen die einzelnen Glieder mit jeweils einem ihrer Eingänge der Reihe nach an den Ausgängen 000...00O des Hunderter-Umsetzers 171 von Fig. 9b.
Die Ausgange der zehn UND-Glieder 175 sind mit 1000, 1100. .. 1900 bezeichnet und können die auf den Eingängen 000, 100... 900 des Hunderterumsetzers 171 auftretenden Signale weiterleiten, wenn auf der Stcucrleitung M1 ein Auftastsignal auftritt Die übrigen Gruppen von UND-Gliedern 177. 179 und 18l"haben Ausgänge, die mit 2100... 2900, 3100... 39(,0 bzw. 410Ö...4900 bezeichnet sind. Treten auf den Stcuerleilungcn M 2, M 3 und Λί4 Auftastsignalc auf. so können die Ausgänge dieser UND-Glieder die Signale von den Ausgängen 000 . . . 900 des Hundertcrumsctzers 171 weiterleiten. Wird die erste der vier Bedingungen durch ein Auftastsignal auf der Stcuerlcitung M1 signalisiert und werden die zweite, dritte und vierte Bedingung auf den Steucrleitungcn M 2, M 3 sowie M4 gemeldet und soll im Programmschritt 746 des ProgrammschriUgenerato-s 161 nur dann ein Taktimpuls erzeugt werden, wenn die erste Bedingung vorliegt, dann bleiben zwei der drei Eingänge des Programmtors mit den Ausgängen 40 und 6 der Binär-Dc/imal-Umsctzcr 169 und 167 verbunden: der dritte Eingang wird jedoch an den Ausgang 1700 der UND-Glieder 175 angeschlossen. Auf diese Weise wird im Programmschritt 746 nur dann ein Taktimpuls am Ausgang des Programmtors erzeugt, wenn die erste Bedingung tatsächlich auf der Steuerlcilung M1 vorliegt. Soll der Taklimpuls im Programmschritt 746 dagegen nur dann abgegeben werden, wenn die zweite, dritte und vierte Bedingung vorliegen, so muß der dritte Eingang des Programmtors dementsprechend mit den Ausgängen 2700, 3700 und 4700 der UND-Glieder 177. 179 und 181 verbunden werden. Soll andererseits im Programmschritt 746 des Programmschrittgenerators 161 ein Taktimpuls erzeugt werden, gleichgültig, ob die vier Bc dingungen vorliegen oder nicht, dann sind die Eingänge des Programmtors direkt mit den Ausgängen 700, 40 und 6 der Binär-Dezimal-Umsetzer 171. 169 und 167 zu verbinden.
Die Erzeugung eines Taktimpulses in irgendeinem der 1000 verschiedenen Programmschritte des Programmschrittgenerators 161 kann also von dem Vorliegen einer von vier Bedingungen abhängig gemacht werden, und für jede dieser vier Bedingungen gibt es 1000 mögliche Taktimpulse, die sich mit Hilfe der jeweiligen UND-Glieder 175, 177, 179 und 181 erzeugen lassen. Die 1000 möglichen Zeitabschnitte oder Programmschrittc. die sich von den Ausgängen der Binär-Dezimal-Umsetzcr 171, 169 und 167 direkt abnehmen lassen, sind in Fig. 10a in Form eines Programmschemas dargestellt. Ähnliche Programmschemata bestehen auch für die vier anderen Gruppen von jeweils 1000 Taktinipulsen, die beim Auftreten von Auftastsignalcn auf den Stcuerleitungen M 1, M 2, Mi und M 4 erzeugt werden. Eines dieser Programmschemuta zeigt Fig. lüc. Es ist identisch mit dem Proarammscheina von Fig. IOa. außer, daß seine
ίο zehn Spalten von 1000 . . . 1900 numeriert sind, um mit den Zahlen und den UND-Gliedern 175 übereinzustimmen, die aufgetastet werden müssen, um die vom Programmschema dargestellten Taktimpulsc abgeben zu können.
Zusammengefaßt, stellt das in Fig. 10a gezeigte Programmschema 1000 verschiedene Zeitabschnitte dar, die den 1000 nacheinander auftretenden Programmschritlen des Programmschrittgencrators 161 cntspiechen, in denen sich ein Taktimpuls mit Hilfe eines mit den Ausgängen der Binär-Dezimal-Umsetzer 171, 169 und 167 verbundenen Programmtores ableiten läßt. Für jeden dieser 1000 verschiedenen, vom Programmschema in Fig. 10a dargestellten Taktimpuisc wird ein Programmtor benötigt, das mit den entsprechenden drei von dreißig Ausgängen der Binär-Dezimal-Umsclzcr 171, 169 und 167 verbunden ist. Soll also in jedem der 1000 Programmschritte des Programmschrittgcnerators 161 ein Taktimpuls erzeugt werden, so werden 1000 Programmtore cingesetzt, die jeweils mit einer anderen Kombination von drei Ausgängen der Codeumsetzer verbunden sind. Man erhält dann 1000 verschiedene Taktimpulse — in jedem Programniscliritt einen Impuls —, unabhängig vom Auftreten eines Auftastsignals auf den Stcuerleitungen Λ/1 ... M 4. Schließt man in ähnlicher Weise 1000 Programmtore an die UND-Glieder 175 und die Ausgänge der Binär-Dezimal-Umsetzer 169 und 167 an. um die im Programmschema von Fig. 10c dargestellten 1000 möglichen Taktimpulsc zu erzeugen, so werden diese Impulse nur dann erzeugt, wenn die UND-Glieder 175 über die Steuerleitung M\ ein Auftastsignal erhalten. Benutzt man diese Taktimpulse dann dazu, im System 1000 verschiedene Operationen der Reihe nach auszulösen, so erfolgen auch diese Operationen nur dann, wenn die Steuerlcitung M1 erregt ist. In der Praxis sind vier Gruppen Programmlorc (oder gleichwertige Vorrichtungen) vorgesehen, die jeweils unter einer der vier verschiedenen Bedingungen eine Folge von Taktimpulsen erzeugen. Jede dieser vier Impulsfolgen löst einen anderen Arbeitsablauf aus, wobei jeder Arbeitsablauf mit jedem neuen Umlauf des Programmschrittgenerators 161 wiederholt wird. Auf diese Weise ist das System von F i g. 9 in der Lage, durch Erregen einer der vier Steuerleitungen M1 ...M 4 von vier Arbeitsabläufen jeden beliebigen auszuführen bzw. in jeder beliebigen von vier verschiedenen »Betriebsstufen« zu arbeiten.
Die vier Betriebsstufen, in denen das System von F i g. 9 arbeiten kann, sind erforderlich, damit der Betrieb des Systems bei der Erzeugung c'ner aus linearen und zirkulären Wegstücken bestehenden Bahn in vier verschiedenen Stufen abläuft. In der Betriebsstufc 1 erzeugt das System entweder ein lineares oder ein zirkuläres Wegstück. In dieser Stufe wiederholen sich die Operationen im Verlauf der Beschreibung einer Bahn gewöhnlich sehr oft. Jede derartige Wiederholung wird mit Arbeitsspiel bezeichnet, das
509 507/40
sich über einen Zeitraum, der gleich der Umlaufzeit des Programmschrittgenerators 161 ist, erstreckt und in der ein neues Paar Makropositionen für die X- und die y-Achse erzeugt wird.
Die Betriebsstufen 2 und 3 befassen sich ausschließlich mit der Beschreibung eines linearen Wegstückes, und zwar insbesondere mit einer Korrektur, die in den letzten bei der Herstellung des linearen Wegstückes noch verbleibenden Arbeitsspiels durchgeführt wird, um die letzte Makroposition auf den beiden Bewegungsachsen in Übereinstimmung mit dem gewünschten Endpunkt des betreffenden linearen Wegstückes zu bringen.
Die Betriebsstufe 4 wird wirksam in der letzten Reihe von Operationen, die beim Erzeugen eines linearen oder zirkularen Wegstückes auftreten. In dieser Betriebsstufe überträgt das System Daten von den Zwischenregistern 47 in die aktiven Register 57 und verarbeitet die Daten, um die Makrobewegungswerte für das nächste zu beschreibende Wegstück zu bilden.
Allgemein kann gesagt werden, daß das System bei einem typischen Arbeitsprogrammablauf die Arbeitsspiele der Betriebsstufe 1 beim Beschreiben eines geraden oder zirkularen Wegstückes viele Male durchläuft. Kurz vor dem Ende des Wegstückes erfolgt dann eine relativ rasche Umschaltung der Betriebsstufen. Die Geschwindigkeit, mit der diese Umschaltung erfolgt, kann so groß sein, daß das System innerhalb eines Arbeitsspieles, also in weniger als 20 ms, verschiedene Betriebsstufen durchläuft. Tatsächlich ist das dann der Fall, wenn das System ein zirkuläres Wegstück vollendet. Wie noch gezeigt wird, wechselt das System beim Erzeugen eines zirkularen Wegstückes kurz vor dem Ende des Wegstückes sprungartig von der Betriebsstufe 1 auf die Betriebsstufe 4. Bei der linearen Simultaninterpolation sowie beim Durchführen einer noch zu beschreibenden erfindungsgemäßen Maßnahme wechselt das System kurz vor dem Ende des linearen Wegstückes dagegen zunächst von der Betriebsstufe 1 auf die Betriebsstufe 2, dann auf die Betriebsstufe 3, arbeitet in dieser Stufe für die Dauer von neun Arbeitsspielen und geht dann erst im letzten Arbeitsspiel auf die Stufe 4 über, in der es die Makrobewegungswerte für das nächste Wegstück bildet. Um dem System die Möglichkeit zu geben, seine vier Betriebsstufen verschieden schnell zu durchlaufen, ist im Zeitbasis- und Taktgebersystem der Betriebsstufenwähler 69 vorgesehen.
5) Betriebsstufenwähler
Allgemein gesagt, reagiert der Betriebsstufenwähler 69 auf bestimmte vorgegebene, im System auftretende Bedingungen, um Maßnahmen einzuleiten, die die Betriebsstufe, in der sich das System gerade befindet, in einer vorbestimmten Weise zu wechseln. Eine dieser Bedingungen, auf die der Betriebsstufenwähler anspricht, ist die Annäherung an das Ende des vom System gerade beschriebenen Wegstückes. Diese Bedingung wird vom Blockende- und Überlaufdetektor 71 erfaßt, der einen »vorverlegten« Überlauf auf der schnellen Bewegungsachse ermittelt und auf seiner Ausgangsleitung 182 mit einem Signal meldet, das eines der vielen Signale ist, die dem Betriebsstufenwähler 69 zugeführt werden. Insgesamt gibt es bei dem \usführungsbeispiel von F i g. 9 mehr als zwan
zig verschiedene Bedingungen, auf die der Betriebsstufenwählcr 69 zu reagieren vermag. Alle diese Bedingungen werden jeweils von einem oder mehreren Verknüpfungsgliedern erfaßt. Die vier verschiedenen Bedingungen, auf die der Betriebsslufenwähler 69 anspricht, sind in dem Block aufgeführt, der die für diesen Zweck benutzte Programmtoranordnung 183 darstellt. Die einzelnen in diesem Block aufgeführten Bedingungen werden anschließend in Verbindung mit
ίο der Wirkungsweise des Systems noch näher erläutert. An dieser Stelle sei lediglich erwähnt, daß beim Erfassen einer Bedingung von der dargestellten Programmtoranordnung 183 ein Signal abgegeben wird, das über eine Ausgangsleitung 184 einem UND-Glied
185 zugeführt wird, dessen zweiter Eingang einen Programmtaktimpuls vom PCP-Ausgang des Zeitbasis- und Taktgebersystems 63 erhält. Das UND-Glied 185 läßt also jedesmal, wenn die Programmtoranordnung 183 ein Ausgangssignal abgibt, einen
Programmtaktimpuls durch. Diese durchgelassenen Programmtaktimpulse werden einem vierstufigen Blockende-Zähler 186 zugeführt, dessen Ausgangssignale seinerseits einem Zuordner 187 zugeleitet werden, der die einzelnen Zahlenstände des Binärzählers
jeweils auf einer anderen Leitung bekanntgibt. Der Blockende-Zähler sowie der Zuordner, die%ich zur Verwendung im Betriebsstufenwähler 69 eignen, sind dem Fachmann bekannt. Tatsächlich ist die in Fig. 9e gezeigte Kombination in dem Buch »Digital
Computer Principles«, verfaßt von der Burroughs Corporation. McGraw-Hill Book Company, Inc., 1962, S. 327, beschrieben und dargestellt. Der Zuordner 187 hat 16 Ausgänge, die von 51 ... 516 numeriert sind. Zusammen arbeiten der Blockende-Zähler
186 und der Zuordner 187 sinngemäß wie ein Schrittschaltwerk, indem der Binärzählcr bei jedem vom UND-Glied 185 kommenden Impuls um eine F.inheit ucitergeschaltet wird und seinen Zahlenstand auf den Ausgängen in binär gesetzter Dezimalform meldet.
Diese Ausgangssignale erscheinen wiederum der Reihe nach auf den Ausgängen 51 516 des Zuordners 187. Der Blockende-Zähler 186 kann bis 16 zahlen und arbeitet zyklisch. Der erste vom UND-Glied 185 durchgelassene Programmtaktimpuls er-
scheint also am Ausgang 51 des Zuordners 187 und der sechzehnte durchgelassene Impuls am Ausgang 516. Der nächste Impuls, der den Blockende-Zähler 186 erreicht, stellt diesen wieder auf 1 zurück, so daß wieder ein Signal am Ausgang 51 des Zuordners 187
erscheint.
^ Wirkungsmäßig sind die Ausgänge 51... 516 des ^.uordners in vier Gruppen mit den vier Steuerleitungen Ml ... M 4 des logischen Zeitbasis-Schaltnetzes 67 verbunden. Die ersten drei Ausgänge 51 .. 53
sind über ein ODER-Glied 189 mit der Steuerleitung Ml verbunden. Der vierte Ausgang 54 ist direkt mit der zweiten Steuerleitung M 2 zusammengeschallet Die Ausgänge 55 ... 513 sind über ein zweites ODER-Glied 190 mit der dritten Steueneitunc »'3
und die letzten drei Ausgänge 514 S*' '
drittes ODER-Glied 191 mit der vierten St
Λ7 4 verbunden.
Erzeugt das System lineare Wegstücke, so wird der Blockende-Zähler 186 während der letzten weni-
6s gen zur Beschreibung des linearen Wegstückes noch auszuführenden Arbeitsspiele im allgemeinen einmal, in manchen Fällen auch zweimal, weitergeschaltet. Dies hat zur Folge, daß das System nacheinander in
den Betriebsstufen 1, 2, 3 und 4 arbeitet. Beschreibt das System dagegen ein zirkuläres Wegstück, so bewirkt die Programmtoranordnung 183 bei Annäherung an das Ende des Wegstückes, daß der Blockcnde-Zähler 186 seine Zahlenstände 2 ... 14, also S2. . . S14, rasch durchläuft, so daß die Umschaltung des Systems von der Betriebsstufe 1 auf die Betriebsstufe 4 in einem der zwei Arbeitsspielen erfolgt.
6) Erzeugung eines Bezugssignals
für die Regelkreise
Eine dritte Aufgabe des Zeitbasis- und Taktgebersystems 63 besteht darin, ein Bezugssignal für die Regelkreise 75 und 77 zu erzeugen. Mit Hilfe eines Flipflops 193 wird eine Rechteckschwingung erzeugt, die mit den zyklischen Durchläufen des Digitalzyklus phasengleich ist. Der Flipflop 193 kann vom gleichen Typ sein wie die in Verbindung mit dem Vierteiler 141 beschriebenen Flipflops und ist auch so dargestellt. Um den Flipflop 193 phasengleich mit dem Digitalzyklus zu tasten, sind sein Eingang / mit dem Eingang C 4 der Zähldekade C135 und die UND-vcrknüpften Ausgänge Cl und C 8 derselben Zähldekade über ein UND-Glied 194 mit dem Eingang K des Flipflops verbunden. Schließlich ist noch der Taktinipulseingang (CP) des Flipflops mit der Übcrtragsleitung 151 der Zähldekade ßl33 verbunden. Entsprechend der zuvor beschriebenen Wirkungsweise des /-K-Flipfiops wird also der Flipflop 193 bei jedem Übergang des Digitalzyklusgenerators 139 vom Zahlenstand 499 auf den Zahlenstand 500 in den Einstcllzustand und bei jedem Übergang des Digitalzyklusgenerators vom Zahlcnstand 999 auf den Zahlenstand 000 den Rückstellzustand gebracht. Die gewünschte Rechleckspannung erscheint am Ausgang Q des Flipflops 193 und ist in Fig. 10b als Rechtcckschwingunj A unmittelbar rechts vom Programmschema dargestellt. Die 500-kHz-Rechteckschwingung des Flipflops 193 wird in einen Sinusschwingungsformer 192 eingespeist, der sie in eine 500-kHz-Sinusschwingung B umwandelt. Wie Fig. 10b zeigt, ist die Sinusschwingung ß mit der Rechteckschwingung.Λ phasengleich. Geeignete Sinusschwingungsformer ΐ'ΰά in der Technik bekannt und brauchen daher nicht beschrieben zu werden.
b. Lochstreifenleser und Zwischenregister
Nachdem vorstehend ausführlich erörtert wurde, wie die verschiedenen Taktimpulse für das System von F i g. 9 erzeugt werden, soll nunmehr die periphere Einrichtung, d. h. die Eingabevorrichtung, des Systems beschrieben werden, mit der Information vom Lochstreifen 37 gelesen und vorübergehend in den Zwischenregistern 47 gespeichert wird. Das Zwischenregister 47 X steht stellvertretend für alle Zwischenregister, mit gewissen Ausnahmen, die in Verbindung mit den betreffenden Registern noch erläutert werden. Es besteht aus zwei Teilen, einem sechsstufigen Schieberegister zur Aufnahme von sechs binärverschlüsselten Dezimalstellen einer Zahl und einer siebten Stufe zur Aufnahme des Vorzeichens diesel Zahl. Jede Stufe des Schieberegisters besteht aus vier J-K-Flipflops, die mit den im Zusammenhang mit dem Vierteiler von Fig. 9b beschriebenen Fliprlops 155 und 157 übereinstimmen, mit dem einzigen Unterschied, daß zur Bezeichnung der Ausgänge nicht die Buchstaben T und T, sondern die Buchstaben Q und (7 benutzt werden. Die Zuführung von Eingangssignalen zum Zwischenregister Al X erfolgt auf acht Eingangsleitungen, die mit 8, 8, 4, 4\ 2, 2, 1, T bezeichnet sind. Die Eingangsleitungen sind der Reihe nach paarweise mit den Eingängen J
ίο und K des jeweils nächstfolgenden von vier Flipflops verbunden, die die niedrigste Stufe des Registers bilden. Fig. 12 zeigt im einzelnen die beiden niedrigsten Stufen des Registers.
Die Flipflops 201, 203, 205 und 207 stellen die niedrigste Stufe dar. Die nächsthöhere Stufe enthält vier weitere Flipflops 209, 211, 213 und 215, die mit ihren Eingängen / und K an den Ausgängen Q und (7 des entsprechenden Flipflops der vorhergehenden Stufe liegen. Die beiden niedrigsten Stufen stehen stellvertretend für die übrigen vier Stufen, die nicht dargestellt sind. Auch diese enthalten jeweils vier Flipflops, die mit den Flipflops der jeweils nächstniedrigeren Stufe in der gleichen Weise verbunden sind wie die Flipflops 209 . . . 215 der zweiten Stufe mit den Flipflops 201 . . . 207 der ersten Stufe. Zur Eingabe von Daten in das Schieberegister werden den acht Eingangsleitungen periodisch Gruppen von binärverschlüsselten Signalen zugeführt. Gleichzeitig mit diesen Signalen erhalten alle Flip-Mops des Schieberegisters an ihren Taktimpulseingängen CP in regelmäßigen Abständen Taktimpulse von einer Steuerleitung 2ΠX (Verschiebet). Jeder dieser Taktimpulse bewirkt, daß die auf den acht Eingangsleitungen anstehende Binärinformation in die unterste Stufe des Schieberegisters gebracht wird. Mit jedem weiteren Taktimpuls werden die Binärsignalc in die nächsthöhere Stufe geschoben und eine neue Gruppe Signale in die niedrigste Stufe des Schieberegisters gebracht, bis nach dem sechsten Taktimpuls und der sechsten Gruppe Signale die erste Gruppe das ganze Register durchlaufen hat und jetzt in der nächsten Stufe steht und die letzte Gruppe Signale sich in der ersten oder niedrigsten Stufe befindet.
Bei der Arbeitsweise des Systems von F i g. 9 ist es zweckmäßig. aJle Signale, die der Reihe nach in die einzelnen Stufen des Zwischenregisters 47X gebracht wurden, auf einmal weiterzuleiten. Zu diesem Zweck enthält das Register auch eine Gruppe von Lesetoren, und zwar sind für jede Stufe des Registers vier Leselore 218 vorgesehen, die jeweils mit einender acht Ausgänge der Stufe verbunden sind. Insgesamt stellen also 24 Lesetore 218 die Gruppe To:; dar. mit denen der Inhalt der sechs Stufen des Zwi schenrcgisters 47 X gleichzeitig zur Eingangssammel schiene 59 des Rechners übertragen wird.
Jedes Lesetor besteht aus einem normalen positi ven UND-Glied mit zwei Eingängen und einer Trenn diode, wie Fig. 12a zeigt. Wie aus dieser Figur zi ersehen ist, enthält ein typisches Lesetor mit zwc Eingängen ein Paar Dioden 208 und 210. an dere; Kathoden die beiden dem Tor zugeführten Binäi signale auftreten und deren Anoden zusammer geschaltet und über einen Widerstand 212 mit dei Pluspol einer Stromquelle verbunden sind. Das Am gangssinal des UND-Gliedes gelangt über eine Treni diode 214 auf einen Leiter 59-1 der Eingangssamme schiene des Rechners. Das andere Ende des Leitei
59-1 ist innerhalb des Digitalrechners 53 über einen Verbindungsweg, der in Fig. 12a durch den Widerstand 216 angedeutet ist, mit dem Minuspol der Stromquelle verbunden.
Das soeben beschriebene Lesetor, das aus den Bauelementen 208.. . 214 besteht und mit dem Leiter 59-1 der Eingangssammelschiene 59 verbunden ist, kann man sich als eines der Lesetore vorstellen, die als Teil des Zwischenregisiers XlX dargestellt sind. Mehrere andere Zwischenregister haben ähnliche Lesetore, deren Ausgänge ebenfalls mit dem Leiter 59-1 der Eingangssammelschiene verbunden sind. Eines dieser Lesetore zeigt Fig. 12a. Wie ersichtlich, besteht es aus dem Widerstand 212 a und zwei Dioden 208 a und 210 a, die zusammen den UND-Teil des Lesetors bilden, sowie aus einer Trenndiode 214a. Die Trenndioden 214 und 214a sollen verhindern, daß sich die einzelnen Lesetore, die zu verschiedenen Registern gehören, aber an ihren Ausgängen mit demselben Leiter verbunden sind, gegenseitig beeinflussen.
Zur Klarstellung der Beziehung zwischen dem für ein Lesetor benutzten Symbol und der von diesem Symbol dargestellten tatsächlichen Schaltung sind die beiden in Fig. 12a im einzelnen dargestellten Lesetore in Fig. 12b nochmals gezeigt, wobei an Stelle der Einzelteile der Tore die Lesetorsymbole stehen.
Um die Parallelübertragung von Daten aus dem Zwischenregister 47Λ' zu synchronisieren, erhält jedes Lesetor 218 an seinem zweiten Eingang einen Auftastimüuls über eine Steuerleitung 219X.
Neben den sechs Stufen zur Aufnahme von Ziffern enthält das Zwischenregister 47 X auch noch eine siebte Stufe zur Aufnahme des Vorzeichens der Zahl, deren Ziffern in den sechs Stufen des Registers gespeichert werden. Diese Vorzeichenstufe ist in F i g. 9 k links von der höchsten Stufe des Registers dargestellt, aber nicht in der detaillierten Darstellung des Registers in F i g. 12. Die Vorzeichenstufe enthält einen einzigen Vorzeichen-Flipflop 220^, dessen Eingänge / und K Signale empfangen, die ein positives bzw. ein negatives Vorzeichen darstellen. Zur Steuerung der Übertragung des Vorzeichens in den Vorzeichen-Flipflop 220X erhält sein Taktimpuls- 4j eingang CP einen Taktimpuls »speichere Vorzeichen«. Um die im Vorzeichen-Flipflop 22OX stehende Vorzeicheninformation gleichzeitig mit der in den sechs Ziffernstufen des Registers stehenden numerischen Information übertragen zu können, enthält die Gruppe Lesetore 218 des Registers noch ein UND-Glied, das zwischen einem Ausgang des Vorzeichen-Flipflops und der Eingangssammelschiene 59 liegt und gleichzeitig mit den anderen Toren dieser Gruppe von der Steuerleitung 219Λ1 getastet wird.
Die vorstehende Beschreibung des Zwischenregisters 47 Λ1 gilt auch für die Zwischenregister 47 Y, 47/ und 47/, die ebenfalls jeweils eine Stufe zur Aufnahme des Vorzeichens und sechs Ziffernstufen zur Aufnahme einer sechsstelligen Zahl aufweisen. Da die im Zwischcnrcgistcr 47 G aufzubewahrende Znhl viel kleiner ist. hat dieses Register auch weniger Stufen als die übrigen vier Zwischenregistcr 47 X, 47Y, 47/ und 47/. Wie aus der Beschreibung der Fig. 4 bekannt ist. bestellt die Zahl G aus drei Stellen, wobei die erste Stelle den Buchstaben G und die zweite und dritte Stelle eine zweistellige Zahl bezeichnen. Tatsächlich wird nur die zweite Stelle der Zahl benutzt. Das Zwischenr-gister 47 G enthält daher nur eine einzige Ziffenistufe mit vier Flipflops, die genauso geschaltet sind wie die Flipflops 201 ... 207 in Fi g. 12. Die erste in das Register zu bringende Ziffer wird einfach gelöscht, wenn anschließend die zweite Ziffer eingelesen wird, und diese zweite Ziffer wird dann mit Hilfe eines Zuordners 221 in ein Steuersignal umgewandelt.
Der Zuordner 221 hat vier Steuerausgänge. die mit GOl, G02, G03 und G02 + G03 bezeichnet sind, und erzeugt an seinen Ausgängen, die der im Zwischenregister 47 G stehenden Zahl entsprechen, ein Binärsignal »1«. Ist die im Register stehende Zahl eine 1, so erzeugt der Zuordner am Ausgang GOl ein Binärsignal »1« und zeigt damit dem übrigen Teil des Systems an, daß die in den Zwischenregistern 47A\ 47 Y. 47/ und 47/ stehenden Zahlen ein gerades Wegstück darstellen. Steht im Zwischenregister 47 G eine 2. so erscheint am Ausgang G 02 des Zuordners 221 eine binäre »1«, womit angezeigt wird, daß das zu beschreibende Wegstück ein Kreisbogenstück ist und im Uhrzeigersinn verläuft. Steht im Zwischenregister eine 3, so gibt der Zuordner am Ausgang G 03 ein Binärsignal »1« ab und zeigt damit an, daß es sich um ein zirkuläres Wegstück handelt, das im Gegenzeigersinn verläuft. Steht im Zwischenregister 47 G eine 2 oder eine 3. so gibt der Zuordner am Ausgang G02 + G03 ein Binärsigna! »1« ab und meldet damit, daß das zu beschreibende Wegstück ein Kreisbogenstück ist. jedoch entweder im Uhrzeigersinn oder im Gegenzeigersinn verläuft.
Das Zwischenregister 47 Q unterscheidet sich vom Zwischenregister 47A" darin, daß es erstens nur fünf Ziffernstufen und zweitens keinen Vorzeichen-Flipflop hat. Der Grund hierfür liegt in der Tatsache, daß die in das Zwischenregister 47 Q zu bringende Größe Q auf dem Lochstreifen in Gleitkomma-Darstellung steht. Nach dieser Darstellung wird eine mehrstellige Zahl durch Vorzeichen, eine »Charakteristik« genannte Ziffer und eine Anzahl Ziffern wiedergegeben, die zusammen »Mantisse« heißen. Die Charakteristik dient dabei zur Anzeige, wo das Dezimalkomma zu setzen ist. Ist die Charakteristik 0. so muß das Dezimalkomma unmittelbar vor die erste Stelle der Mantisse gesetzt werden. Ist das Komma nach der ersten Stelle der Mantisse zu setzen, so hat die Charakteristik den Wert + 1. Muß zwischen dem Komma und der ersten Stelle der Mantisse eine 0 stehen. lautet die Charakteristik 1. Muß das Dezimalkomma nach der zweiten, dritten oder vierten Stelle der Mantisse gesetzt werden, so wird dies durch die Charakteristik +2, +3 bzw. +4 angezeigt. Müssen zwischen dem Komma und der ersten Stelle der Mantisse zwei, drei oder vier Nullen stehen, so wird dies durch die Charakteristik —2, —3 bzw.
4 angezeigt. Die Zahl 0, die von den im Informationsblock von Fig. 4 befindlichen Markierungen dargestellt wird, lautet also 0,001, was bedeutet, daß das Verhältnis von Makrobewegung AD zu der unter dem Hinfluß des Datenblockes auszuführenden Gesamtbewcgung I) 0,001 ist. Es sind also 1000 Makrobewegungen erforderlich, um das betreffende Wegstück zu erzeugen. Aus praktischen Erwägungen hat die Zahl Q stets einen Wert <0.1. so daß das Vorzeichen der Charakteristik immer negativ ist und das Zwischenregister XlQ also keinen Vorzeichen-Flipflop benötigt.
Um die Verschiebung von Daten in den verschiedenen Zwischenregistern 47 individuell steuern zu können, hat jedes Register beine eigene Schiebesteuerleitung, auf der das jeweilige Register Taktimpulse erhält. So sind neben der dem Zwischenregister 47* zugeordneten Steuerleitung 217* noch fünf weitere Steuerleitungen 217Y, 217/, 2Γ7/, 217 G und 217 Q vorgesehen, die den Zwischenregistern 47y, 47/, 47/, 47G bzw. 47 Q zugeordnet sind. Alle sechs Steuerleitungen 217 erhalten Taktimpulse von einer gemeinsamen Schiebeimpulsleitung 223, und zwar über jeweils eines von sechs Schiebe-UND-Gliedem 222X, 222 Y, 222/, 2227, 222 G und 222 Q, die jeweils mit einem Eingang an die Schiebeimpulsleitung 223 angeschlossen sind. Um alle Schiebe-UND-Glieder 222 getrennt auftasten zu können, sind Vorrichtungen vorgesehen, so daß Schiebeimpulse nur zu einem ausgewählten Zwischenregister 47 durchgelassen werden. Die Schiebeimpulse werden direkt aus den Transportlöchern im Lochstreifen 37 gewonnen, wodurch gewährleistet ist, daß sie mit den vom Lochstreifen abgelesenen Daten synchronisiert sind. So hat der Lochstreifenleser 41 eine neunspurige fotoelektrischc Abfühlstation, und zwar acht Spuren für die acht Informationsspuren auf dem Lochstreifen 37 und eine Spur für die Transportlöcher im Streifen. Beim Vorbeilauf einer Zeile an der Abfühlstation erzeugt diese Datenimpulse auf acht Ausgangsleitungen, die in Fig. 91 zusammen als Sammelschiene 225 dargestellt sind, sowie einen Taktimpuls auf einer Taktimpulsleitung 227. Da die Transportlöcher kleiner sind als die Datenlöcher, ist der Taktimpuls somit kürzer als die Datenimpulse, wie die beiden links vom Lochstreifenleser 41 dargestellten Impulse zeigen. Dadurch wird sichergestellt, daß eine von den Taktimpulsen ausgelöste Schiebeoperation zwischen Vorder- und Hinterflanke der Datenimpulse erfolgt.
Die aus den Transportlöchern gewonnenen Taktimpulse werden an die Schiebeimpulsleitung 223 gekoppelt, und zwar über ein UND-Glied 229, das zu einer logischen Schaltungsanordnung gehört, die nur solche Impulse zur Schiebeimpulsleitung 223 durchläßt, die aus den Transportlöchern innerhalb der numerischen Datenzeilen gewonnen wurden.
Die aus den Informationsspuren gewonnenen Impulse werden über die Sammelschiene 225 des Lochstreifenlesers 41 dem Zuordner 43 zugeführt. Dieser ist nur in Blockform dargestellt, da Zuordner dem auf dem Gebiete der Datenverarbeitung tätigen Fachmann bekannt sind. Erwähnt sei nur, daß der Zuordner 43 unter anderem acht Eingänge hat, um die Impulse von der Sammelschiene 225 entgegenzunehmen, sowie eine erste Gruppe von acht Ziffernausgängen, die mit 8, 8, 4, 4". 2, 2, 1, T bezeichnet sind. Beim zeilenweisen Lesen der auf dem Lochstreifen 37 stehenden Markierungen durch den Lochstreifenleser 41 gibt der Zuordner 43 auf seiner ersten Gruppe Ausgänge elektrische Signale ab, die jede Lochzeile in binärverschlüsseltcr Form wiedergeben. Diese acht Ausgänge bilden die weiter oben im Zusammenhang mit Fig. 7 erwähnte Ausgangssammelschiene 51 des Zuordners und sind mit acht ähnlich bezeichneten Eingängen jedes Zwischcnregisters 47 verbunden.
Eine wichtige Aufgabe des Zuordners 43 besteht darin, auf einzelnen Leitungen einer zweiten Gruppe Adressenausgäiige 231 Signale unter dem Einfluß der Lochzeilen des Lochstreifens 37 zu erzeugen, deren Markierungen die Zeichen X, Y. I, J. G und Q darstellen. Auf diese Weise werden mit Hilfe geeigneter logischer Verknüpfungsglieder der Reihe nach auf sechs Adressenausgängen 231X, 231Y, 231/, 231/, 231 G und 231Q des Zuordners 43 Signale erzeugt, wenn der Lochstreifenleser 41 die betreffenden Lochzeilen, in denen die Zeichen X, Y, I, J, C 'd Q stehen, abfühlt. Auf einem siebten Ausga..o, dem Blockende-Ausgang 232 (EL), gibt der Zuordner ebenfalls ein Signal ab, sobald die letzte Zeile des Datenblockes, d. h. die Zeile EL, gelesen woiden ist. Die auf den Adressenausgängen 231 erzeugten Signale werden als Adressensignale bezeichnet und dazu benutzt, den Taktimpulsfluß zu demjenigen der Zwischenregister 47 zu steuern, das die bestimmte, gerade vom Lochstreifen abgelesene Zahl aufnehmen soll. Zu diesem Zweck sind sechs Adressen-FIipflops 233 vom Typ J-K vorgesehen, von denen jeweils einer einem der sechs Zwischenregister 47 zugeordnet ist. Alle sechs Adressenausgänge 231 des Zuordners 43 sind über ein gemeinsames ODER-Glied 235 mit den A'-Eingängen aller Adressen-Flipflops 233 verbunden, so daß alle Flipflops stets dann zurückgestellt werden, wenn vom Lochstreifen ein Adressenzeichen abgelesen wird. Des weiteren sind die sechs Adressenausgänge 231 direkt und getrennt mit dem /-Eingang von jeweils einem der sechs Adressen-Flipflops 233 verbunden, so daß — wenn die Adressenzeichen X, Y, I, J, G und Q der Reihe nach entschlüsselt werden — die A iressen-Flipflops 233*, 233 7, 233/. 233/. 233 G und 233 Q der Reihe nach ein Signal an ihrem /-Eingang empfangen. Der zweite Eingang eines UND-Gliedes 237 ist mit dem Ausgang des ODER-Gliedes 235 verbunden. Wird also ein Adressenzeichen vom Lochstreifen abgelesen und ein Adressensignal auf einem der sechs Adressenausgänge 231 erzeugt, so läßt das UND-Glied 237 einen von den Transportlöchern stammenden Taktimpuls zu den Taktimpulseingängen aller Adressen-Flipfiops 233 durch.
Beim Durchlauf des Lochstreifens 37 durch den Lochstreifenleser 41 empfangen alle sechs Adressen-Flipflops 233 stets einen Impuls an ihren K-Eingängen sowie an ihren Taktimpulseingängen, wenn eine Lochzeile mit einem Adressenzeichen gelesen und entschlüsselt wird. Außerdem erhält einer der Flipflops auch einen Impuls auf seinen /-Eingang, und zwar direkt von einem der sechs Adressenausgänge 231 des Zuordners 43. Zurückgestellt werden nur die fünf Flipflops, die Signale am /f-Eingang sowie am Taktimpulseingang CT empfangen. Der sechste Flipflop, der Signale auf allen drei Eingängen empfängt, wechselt aus seinem Rückstellzustand in den Einstellzustand. Mit dem Lesen und Entschlüsseln einer Adressenzeile wird also jeweils ein anderer Adressen-Flipflop 233 eingestellt. So erzeugt der Zuordner 43 unter dem Einfluß einer Lochzeile mit dem Adressenzeiclieii X. die Lochungen in den Spuren 1, 2, 3, 5 und 6 enthält, ein Signal auf dem Adressenausgang 231 Λ'. Dieses Signal wird auf den /-Eingang des Adressen-FIipflops 233A" gegeben, so daß also nur dieser Flipflop umgeworfen wird und in den Einstellzustand wechselt. Dadurch erscheint an seinem Ausgang Q ein Binärsignal »1«. Dieser Ausgang, der mit vv-. .uiv bezeichnet ist. steht über eine Leitung 239* mit dem Schiebe-UND-Glied 222* in Verbindung. Infolge des auf diesem Ausgang auftreten-
den Binärsignals »1« können Scliiebetaktimpulse von der Schiebeimpulsleitung 223 auf die Steuerleitung 117 X gelangen.
Ähnlich sind die Q-Ausgänge der anderen Adressen-Flipflops 233 Y, 233/, 233/, 233 G und 233 Q mit den Leitungen 239 7, 239/, 239/, 239 G und 239 Q verbunden, um die Schiebe-UND-Glieder 222 7, 222/, 222/, 222 G und 222 Q aufzutasten und Schiebetaktimpulse zu den anderen fünf Zwischenregistern 47 Y, 47/, 47/, 47 G und 47 β durchzulassen.
Die nächste Lochzeile nach der A^-Adresse stellt ein Minuszeichen dar und wird vom Zuordner 43 auf dem zweiten von zwei Vorzeichenausgängen 241 (+) und 243 ( —) angezeigt. Die Vorzeichenausgänge 241 und 243 sind mit den Eingängen / und K der Vorzeichen-Flipflops der Zwischenregister 47 A', 47 Y, 47/ und 47/ verbunden. Außerdem sind diese Ausgänge auch mit den Eingängen eines ODER-Gliedes 245 verbunden, dessen Ausgang an einem Eingang eines UND-Gliedes 247 liegt. Am anderen Eingang des UND-Gliedes 247 treten die aus den Transportlöchern des Lochstreifens gewonnenen Taktimpulse auf, die von der Taktimpulsleitung 227 des Lochstreifenlesers 41 kommen. Der Ausgang des UND-Gliedes 247 ist über eine Leitung 249 mit jeweils einem Eingang von vier UND-Gliedern 251 Λ", 251Y, 251/ und 251/ verbunden. Die Ausgänge dieser UND-Glieder sind mit den Taktimpulseingängen CP entsprechender Vorzeichen-Flipflops 220A", 220 Y, 220/ und 220/ verbunden. Die zweiten Eingänge der UND-Glieder 251 sind mit den Q-Ausgängen entsprechender Adressen-Flipflops 233 verbunden. Mit Hilfe der Verknüpfungsglieder 245 und 247 erhalten die Eingänge der UND-Glieder 251 nur dann Taktimpulse, wenn auf einem der Vorzeichen-Ausgänge 241 (+ ) und 243 (-) des Zuordners 43 ein Signal auftritt, und mit Hilfe der UND-Glieder 251 werden die Taktimpulse nur dem Vorzeichen-Flipflop 220 desjenigen Zwischenregisters zugeführt, das im Begriff ist. die dem Vorzeichen zugeordnete numerische Information aufzunehmen. Auf diese Weise gelangt das auf dem Vorzeichenausgang 241 oder 243 auftretende Vorzeichen in den richtigen Vorzeichen-Flipflop 220.
Um zu verhindern, daß das Zwischen register 47 X Schiebetaktimpulse erhält, bevor die erste A"-Ziffer vom Lochstreifen abgelesen wurde, wird das UND-Glied 229, das die Ankopplung von Taktimpulsen an die Schiebeimpulsleitung 223 regelt, beim Lesen der A*-Adresse gesperrt und nur dann geöffnet, wenn eine Ziffer vom Lochstreifen gelesen wird. Zu diesem Zweck ist der Ausgang des ODER-Gliedes 235 mit einem ODER-Glied 253 verbunden, dessen Ausgang seinerseits über ein NICHT-Glied 255 mit dem zweiten Eingang des UND-Gliedes 229 in Verbindung steht. Erhält also das ODER-Glied 235 ein Binärsignal »1« von einem der Adressenausgänge 231 des Zuordners 43, so wird dieses Signa! über das ODER-Glied 253 dem NICHT-Glied 255 zugeführt und dort invertiert, bevor es als Binärsignal »0« auf das UND-Glied 229 gelangt. Auf diese Weise wird verhindert, daß ein aus einen Transportloch gewonnener Taktimpuls das UND-Glied 229 durchläuft, wenn vom Lochstreifen eine Adressenzeile abgelesen wird. Um auch beim Lesen ;iner Vorzeichen- oder einer Blockende-Zeile (EL) zu "erhindern, daß ein solcher Taktimpuls das UND-Glied 229 durchläuft, ist der Ausgang des ODER-Gliedes 245 mit einem zweiten Eingang des ODER-Gliedes 253 und der Blockende-Ausgang 232 (EL) des Zuordners 43 mit einem Eingang des ODER-Gliedes 235 verbunden.
Nach dem Lesen, Entschlüsseln und Einspeichern des Vorzeichens des A'-Koordinatenwertes wird die nächste Lochzeile, die die erste Ziffer des AT-Koordinatenwertes darstellt, gelesen und entschlüsselt. Da diese Lochzeile eine Ziffer enthält, erscheint auf keinem der Eingänge der beiden ODER-Glieder 235, 245 ein Binärsignal »1«. Am Ausgang des ODER-Gliedes 253 tritt also ein Binärsignal »0« auf. Dieses Signal wird im NICHT-Glied 255 invertiert und als Binärsignal »1« dem UND-Glied 229 zugeführt, wodurch dieses Glied aufgetastet wird und einen Taktimpuls zur Schiebeimpulsleitung 223 durchläßt. Dieser Taktimpuls wird vom Schiebe-UND-Glied 222X infolge des vom Adressen-Flipflop 233 X abgegebenen Adressensignals durchgelassen und bewirkt, daß die auf den Ziffernausgängen des Zuordners 43 auftretenden Daten in die niedrigste Zifferr.stufe des Zwischenregisters 47X gebracht werden. Beim Lesen der nächsten fünf Ziffernzeilen werden dann fünf weitere, aus den Transportlöchern gewonnene Taktimpulse über das Schiebc-UND-Glied 7-22A1 und die Steuerleitung 217 A" als Schiebetaktimpulse dem Zwischenregister 47 X zugeführt, wodurch fünf weitere Stellen des A^Koordinatenwertes in das Register eingeschoben werden. Nach der letzten Verschiebung steht die zuerst gelesene Ziffer in der höchsten Stufe des Registers und die zuletzt gelesene Ziffer in der niedrigsten Stufe. Auf die gleiche Weise werden die Vorzeichen- und Ziffernzeilen der Zahlen Y, I und / in die Zwischenregister 47 y, 47/ und 47/ eingespeichert.
Die Einspeicherung der Zahlen G und Q in die Zwis-hcnregister 47 G und 47(7 unterscheidet sich von dem vorstehenden Verfahren nur dadurch, daß keine der beiden Zahlen G und Q ein Vorzeichen benötigt. Die sich auf das Lesen und Speichern des Vorzeichens beziehenden Operationen fallen hier also weg.
Ist die letzte Stelle der Zahl G in das Zwischenregister 47 G gebracht worden, so wird der Lochstreifenleser 41 angehalten, bis der nächste Datenblock vom Lochstreifen 37 in die Zwischenregister 47 übertragen werden soll. Aus- und Einschalten des Streifeniesers sind mit dem übrigen Teil des Systems von F i g. 9 durch die Einschaltvorrichtung 45 des Streifenlesers synchronisiert, zu der hauptsächlich ein Einschalt-Flipflop 257 gehört. Der Lochstreifenleser 4i hat einen Eingang 259 (EIN), der mit denn (2-Ausgang des Einschalt-Flipflops 257 verbunden ist. Wird an diesem Eingang eine Spannung mit dem Binärpegel »1« vom Flipflop angelegt, so beginnt der Streifenleser den Lochstreifen 37 zu transportieren und die auf dem Streifen stehenden Daten zu lesen. Der Taktimpulseingang des Einschalt-Flipflops 257 ist mit dem Ausgang eines ODER-Gliedes 261 verbunden. Einer der Eingänge dieses ODER-Gliedes liegi am Ausgang eines UND-Gliedes 263. Der eine Eingang des UND-Gliedes 263 und der /i-Eingang des Einschalt-Flipflops 257 sind beide über eine Leitung 265 mit dem Blockende-Ausgang 2312 des Zuordners 43 verbunden. Der andere Eingang des UND-Gliedes 263 steht mit der Taktimpulsleitung 227 des Streifenlesers in Verbindung. Nimmt man an, daß der Einschalt-Flipflop 257 in den Einstell-
:ustand gebracht wurde, um den Lochstreifenleser Il am Anfang eines Datenblockes einzuschalten, so :rhält der K-Eißgang des Flipflops beim Lesen der etzten Datenzeile des Blockes, die das Zeichen EL ^Blockende) darstellt, ein Binärsignal »1«. Kurz darauf durchläuft ein Taktimpuls das UND-Glied 263 und das ODER-Glied 261 und gelangt auf den Taktimpulseingang des Flipflops. Sobald das Blockende-Zeichen gelesen ist, wird der Einschalt-Flipflop 257 zurückgestellt und gibt eine Spannung mit dem Binärpegel »0« auf den Eingang 259 (EIN) des Lochstreifenlesers 41, wodurch der Leser kurz vor dem Lesen der ersten Datenzeile des nächsten Blokkes anhält.
Am zweiten Eingang des ODER-Gliedes 261 liegt der Ausgang Jes UND-Gliedes 267. Der eine Eingang dieses UND-Gliedes ist mit dem Programmtaktimpulsausgang (PCP) des Zuordners 173 von. Fig. 9b und der andere Eingang mit dem Ausgang eines Programmtores 269 verbunden, das im Programmschritt 4995 einen Programmimpuls abgibt. Der Programmschritt 4995 bezeichnet den Zeitpunkt, zu dem die Daten in den aktiven Registern 57 ihren Zweck, das aus innen gewonnene Wegstück zu beschreiben, erfüllt haben, und tritt auf, nachdem die in den Zwischenregistern 47 stehenden Daten in die aktiven Register 57 zwecks Erzeugung des nächsten Wegstückes gebracht worden sind. Außerdem ist der Ausgang des Programmtors 269 noch direkt mit dem 7-Eingang des Einschalt-Flipflops 257 der tinschahvorrichtung des Streifenlesers verbunden, so daß dei ./-Eingang dieses Flipflops im Programmschritt 4995 ein Binärsignal »1« erhält. In diesem Programmschritt erhält auch der Taktimpulseingang CP des Flipflops einen Taktimpuls, so daß der Flipflop in den Einsteilzustand wechselt und auf den Eingang 259 (EIN) des Lochstreifcnlesers 41 eine Spannung mit dem Binärpegel »1« gibt, so daß der Leser den Lochstreifen 37 wieder zu transportieren beginnt.
40
c. Aktive Register
Im Gegensatz zur Scrienübertragung von Daten aus dem Zuordner 43 in die Zwischenregister 47 erfolgt der Datenfluß zwischen den aktiven Registern 57 und dem Digitalrechner 53 parallel, d. h. gleichzeitig. Allgemein gesagt, besteht eine der ersten Operationen im Arbeitsablauf des Systems von F i g. 9 darin, die in den jeweiligen Zwischenregistern 47 stehende Information in sechs verschiedenen Programmschritten in den Rechner parallel zu übertragen. Dies geschieht durch Auftasten der Lesetore des jeweiligen Zwischenregisters. Die auf diese Weise auf die Eingangssamrnelschiene 59 (CIT) des Rechners gelangte Information wird im Digitalrechner 53 zwischengespeichert, ohne sie aus dem Register zu entfernen, aus dem sie gelesen wurde, und wird dann vom Rechner im nächsten Programmschritt auf die Ausgangssammelschienc 61 (COT) gegeben, um iu ein bestimmtes aktives Register 57 gebracht zu werden. Die beiden Sammelschiene!! 59 und 61 enthalten jeweils vier Leiter für jede Stelle einer auf diesen Sammelschienen zu übertragenden Zahl sowie einen weiteren Leiter für das Vorzeichen der Zahl. Die vorliegende Ausführungsform des Systems kann bis zu siebenstellige Zahlen verarbeiten. Beide Sammelschienen enthalten daher jeweils insgesamt 29 Leiter. Fig. 13 ist eine Teilansicht der Sammelschiene!! 59 und 61 und zeigt die vier Leiter 61-1, 61-2, 61-3 und 61-4, die der an der niedrigsten Stelle stehenden und über die Ausgangssammelschiene 61 zu übertragenden Ziffer zugeordnet sind. Ebenso sind die vier Leiter 59-1, 59-2, 59-3 und 59-4 der Eingangssammelschiene 59 dargestellt, auf denen die an der niedrigsten Stelle stehende Ziffer von den aktiven Registern 57 in den Digitalrechner 53 gebracht wird. Ferner zeigt Fig. 13 noch die der niedrigsten Stelle zugeordnete Stufe des Registers 109 AX. Diese Registerstufe steht stellvertretend für die übrigen sechs Ziffernstuien des Registers 109.1 .^. Die Vorzeichenstufe des Registers entspricht einem Viertel einer ZifTernstufe. Das aktive Register 109 AX hat also insgesamt 17 Flipflops und steht stellvertretend für die übrigen aktiven Register, außer das einige Register mehr Ziffernstufen, andere weniger Ziffernslufen und wieder andere keine Vorzeichenstufen haben.
Wie Fig. 13 zeigt, enthält die niedrigste Ziffernstufe des aktiven Registers 109. \X vier ft-S'-Flipflops 281, 283, 285 und 287. Vorkehrungen zur Verschiebung der in den R-S-Flipflops 281 . .. 287 stehenden Information in eine höhere Stufe sind nicht getroffen. Vielmehr wird die Information über die vier Leiter 61-1, 61-2, 61-3 und 61-4 der Ausgangssammelschiene 61 in die fl-S-Flipflops 281 .. .~287 gebracht und dann anschließend von hier auf den Leitern 59-1, 59-2. 59-3 und 59-4 der Eingangssammelschiene des Rechners weitergereicht. Um die parallele Übertragung von Daten auf der Ausgangssammelschiene 61 zu ermöglichen, ist eine Gruppe aus 17 NICHT-Gliedern und 17 Paaren UND-Gliedern vorgesehen, die zusammen die Schreibtore des Registers darstellen. Die der niedrigsten Ziffernstufe des Registers zugeordneten NICHT- und UND-Glieder sind in Fig. 13 als NICHT-Glieder 288 und UND-Glieder 289 dargestellt und liegen zwischen den Leitern 61-1, 61-2, 61-3 und 61-4 der Ausgangssammelschiene und den Eingängen der K-S-Flipfiops 281 ... 287. Vier der UND-Glieder 289 liegen mit jeweils einem Eingang an einem der entsprechenden Leiter 61-1, 61-2, 61-3 und 61-4 und mit ihrem Ausgang am S-Eingang von jeweils einem der entsprechenden vier Flipflops 281 . . . 287. Die zweite Gruppe aus vier UND-Gliedern ist mit den Ausgängen der vier NICHT-Glieder
288 verbunden, die ihrerseits mit dem entsprechenden Leiter 61-1, 61-2, 61-3 bzw. 61-4 verbunden sind.
Jedes UND-Glied der zweiten Gruppe liegt mit seinem Ausgang am K-Eingang eines der entsprechenden vier K-S-Flipflops 281 ... 287. Durch ein Binärsigna! »1« auf dem zweiten, allen acht UND-Gliedern
289 gemeinsamen Eingang werden die vier K-S-FHpflops 281 .. . 287 in ihrem vorliegenden Zustand gehalten. Soll eine Zahl in die Flipflops des aktiven Registers 109/) X geschrieben werden, so wird durch eine geeignete Programmtoianordnung ein Binärsignal »1« an die Leitung 291 angekoppelt. Zur entsprechenden Zeit innerhalb des auf diese Weise ausgewählten Programmschrittes kann dann der zuvor gesperrte Schreibimpuls WP das UND-Glied 290 zum gemeinsamen der acht UND-Glieder 289 durchlaufen. Hierdurch werden diese UND-Glieder aufgetastet, so daß die Ä-S-Flipflops 281 ... 287 die Daten von den Leitern 61-1, 61-2, 61-3 und 61-4 entgegennehmen können. Eine »1« am S-Eingang bringt einen R-S-Flipflop in den Einslcllzustand; eine »1« auf dem
/^-Eingang stellt den /f-S-Flipfiop zurück. Tritt an beiden Eingängen eine »0« auf, bleibt der Flipflop in seinem Zustand. Das gleichzeitige Auftreten einer »1« auf beiden Eingängen wird durch das NlCHT-Glied 288 verhindert.
Zur Übertragung einer Zahl aus den aktiven Register 109/1A" in den Digitalrechner 53 ist für jeden der 17 Flipflops des Registers ein Lesetor, insgesamt also 17 Lesetore, vorgesehen. Jedes Lesetor ist als
Zahlen erscheinen auf den Leitern der Ausgangssammclschiene 61 des Rechners, die mit den (?-Ausgängcn der entsprechenden Flipflops des Registers über acht Leitungszweige COT-X ... COT-S und einen Aussangsleiter COT(-) verbunden sind. Jeder der acht Leitungszweige CO7-1.. .COT-S hat vier Leiter, die der Reihe nach mit den entsprechenden Stufen 1 ... 8 des Antwortregislcrs S3 α verbunden sind. Der eine Ausgangsleiter CO7'() ist mit dem einen Flip-
Koinzidenzschaltung ausgebildet. Vier von ihnen sind io dop verbunden, der die Vorzeichenstufe des Antworlals Lesetore 295 dargestellt und liegen jeweils mit registers bildet, einem Eingang am Q-Ausgang eines der entsprechenden vier Λ-5-Flipflops 281 ... 287. Über ihren
zweiten Eingang sind alle Lesetore mit einer gcmein-
53« verarbeitet. B im Durchführen einer Addition addiert der Digitalrechner 53 zu jeder im Antwortreaistcr53« stehenden Ziffer die Ziffer der nächsten
Eine Ziffer, die auf einem bestimmten Leitungszweig C/7"-1 . . . C/T-8 auftritt, wird in der entsprechenden Stufe des Antwortregisters 53 a verarbeitet.
samen Lesesteuerleitung 297 verbunden. Die Aus- 15 So wird /.. B. eine Ziffer, die auf dem Leitungszweig gänge aller vier Lesetore 295 sind getrennt mit einem CITS erscheint, in der Stufe 5 des Antwortregisters der entsprechenden Leiter 59-1, 59-2, 59-3 und 59-4
verbunden. Tritt also auf der Lcsesteuerleitung 297
ein Leseimpuls (lies .1-V) auf, so wird die in den R-S-Flipflops 281 . . . 287 stehende Information übci die 20 auf dem entsprechenden Leitungszweig der Eingangs-Lesetore an die zuvorgenannten Leiter parallel ange- sammelschiene 59 auftretenden Zahl. Jede Stufe des
Registers, mit Ausnahme der letzten, enthält außerdem Mittel zur Weiterleitung eines Übertrages in die nächsthöhere Stufe, falls die gebildete Summe den Wert *> übersteigt. Steht z. B. in den Stufen 6, 7 und 8 des Antwortregisters 53 ο der Augend +346 und
Bestimmungsort sowie Herkunftsort nahezu aller wird anschließend über die Leitungszweige CIT-6, in den aktiven Registern 57 stehenden Informationen CIT-7 und CIT-S der Addend ~ 778 in den Rechner ist der auf Zeitmultiplexbasis arbeitende Digitalrech- gebracht, so erscheint das Resultat +1124 in den ner 53. Derartige Computer sind bekannt, so Jn'1 die 30 Stufen 5. 6. 7 und 8 des Antwortregisters Erörterung ihrer Details die vorliegende Beschreibung Ein wichtiges Merkmal des Digitalrechners 53 be
koppelt.
d. Beispiel eines Zeitmultiplex-ZifTernrechners
nur belasten würde. Statt dessen werden im einzelnen die vom Digitalrechner durchzuführenden Operationen sowie die Zeiten angegeben, zu denen diese Operationen ausgeführt werden.
Um den unterschiedlichen Anforderungen des Systems von Fig. 9 beim Betrieb in seinen verschiedenen Betriebsstufen zu genügen, ist der Digital rechner 53 in der Lage, verschiedene Arten von
steht darin, daß er auf Zeitmultiplexbasis arbeitet, um zahlreiche verschiedenartige Operationen an Daten vornehmen zu können, die er von diversen Stellen des Systems erhält. Zu diesem Zweck ist der Rechner mit dem übrigen Teil des Systems synchronisiert. Die Beziehung zwischen der Steuerung des Digitalrechner^ 53 und dem übrigen Teil des Systems von F i g. 9 wird am besten verständlich, wenn man
Rechenoperationen, wie algebraisches Addieren. Sub- 4° sich noch einmal den Aufbau der Programmschritte trahieren und Multiplizieren, auszuführen. Die Grund- vergegenwärtigt, der im Zusammenhang mit Fig. 10 rechnungsart ist das Addieren, alle übrigen Arten von und 11 erläutert wurde. Wie dort angegeben, lassen Rechenoperationen werden durch besondere Steuer- sich bestimmte Operationen des Systems so steuern, signale aufgerufen. Daten erhält der Rechner von der daP sie in ausgewählten Zeitabschnitten einer Vicl-Eingangssammelschiene 59 über acht vieradrige Lei- 45 zahl solcher Zeitabschnitte, die Programmschritte tungszweige, die in Fig. 9f mit C/T-l . . . CITS be- heißen und jeweils 20 us lang sind, ablaufen können. zeichnet sind und auf denen die einzelnen Stellen So kann z. B. eine Zahl, die in einem bestimmten einer Zahl, und zwar entsprechend ihren Stellen- aktiven Register steht, in einem bestimmten Prowerten von oben nach unten, erscheinen. Neben den grammschritt zur Eingangssammelschiene 59 des 32 Adern oder Leitern der acht Leitungszweige ist 5° Computers übertragen werden, indem die Lesetore noch ein 33. Eingangsleiter CIT(- ) vorgesehen, auf dieses Registers einen Auftastimpuls erhalten. Zu bedem das Vorzeichen der auf den anderen Leitern auf- achten ist dabei, daß bei dem hier beschriebenen tretenden Zahl erscheint. Die vom Rechner abgegebe- System die Zeit, in der solch ein Auftastimpuls auf nen Daten werden in einem Antwortregister 53 a ge- die Lesetore des aktiven Registers gegeben wird, mit speichert, das entsprechend dem Vorzeichen und den 55 dem betreffenden Programmschritt zusammenfällt, acht Ziffern, die der Computer über die Eingangs- Außerdem führt der Digitalrechner 53 jede Operasammelschiene 59 erhält, eine Vorzeichenstufe sowie tion unter dem Einfluß eines Steuersignals aus. das acht Ziffernstufen hat. in einem bestimmten Programmschritt erzeugt wurde. Jede der acht Ziffernstufen enthält Vorrichtungen wo'nei jedoch das Arbeitsspiel des hier veranschauzur Speicherung von Binärsignalen, die eine Dezimal- 6o lichten Computers nicht mit diesem Programmschritt ziffer beinhalten. Bei diesen Vorrichtungen kann es zusammenfällt. Vielmehr beginnt die Operation in sich um vier /-K-Flipflops handeln, wie sie auch in der Mitte des Programmschrittes, in dem sie ausgeden Zwischenregistern des Systems benutzt werden. löst wurde, und endet in der Mitte des nächsten Pro-Die Vorzeichenstufe enthält Mittel zur Speicherung grammschrittcs. Die Rechenoperation, von der hier eines einzigen Binärsignals, das das Vorzeichen der 65 die Rede ist. ist das Addieren. Der Rechner wird also in den anderen Stufen des Registers stehenden Zahl so gesteuert, daß er unter dem Einfluß eines in einem beinhaltet; sie kann aus einem einzigen /-K-Flipflop gegebenen Programmschritt erzeugten "teuersignals bestehen. Die im Antwort regist er 53 a stehenden die zur Durchführung der Addition erforderlichen
55 56
Operationen, die mit Addierzyklus bezeichnet sind, zyklus Λ' ■)■ 1 zu beginnen. Übt der Rechner seine in der Mitte dieses Programmschrittes beginnt und in normale Funktion aus, d. h., addiert er, so erhält er der Mitte des nächsten Programmschrittes beendet. solch eine Mitteilung in jedem Programmschritt. Da die Zeitabschnitte, in denen die Zahlen aus den Unter dem Einfluß der Mitteilung, mit dem Addierverschiedenen Zwischenregistern 47 und aktiven Rc- 5 zyklus N ; 1 zu beginnen, und unter der Vorausgistcrn 57 zur Eingangssammclschiene 59 übertragen sctzung, daß der Rechner als Addierer arbeitet, wird werden, mit den verschiedenen Programmschritlcn die auf der Eingangssammelschienc 59 gemeldete zcitglcich auftreten, sind also die Addicrzyklcn gegen- Zahl zu der vom Rechner zuvor gespeicherten Zahl über den Zeitabschnitten, in denen Daten in den ATP algebraisch addiert und die Summe an Stelle Digitalrechner 53 eingegeben werden, zeitlich vcr- io der zuvor im Antwortregisler 53a aufbewahrten Zahl setzt. Diese Zeitversetzung zeigt Fig. 14, in der auf ATP eingespeichert, wie der Block 329 zeigt. Im tateiner Zeitlinie, die einen Zeitraum von 60 Mikro- sächlichen Betrieb des Systems von Fig. 9 wird nach Sekunden darstellt, drei Programmschritle N. N λ 1 Durchführung der soeben beschriebenen Addition die und N 4 2 durch eine erste Reihe von unmittelbar zuvor im Register 117 ATP aufbewahrte Zahl durch aufeinanderfolgenden Blöcken 311, 313 und 315 dar- 15 diese Summe ersetzt. Dies erfolgt in der zweiten gestellt sind. Die Addierzyklen N und Λ/ I I. die den Hälfte des Programmschrittes Λ' 1-2, wie der Block beiden ersten Piogrammschrittcn zugeordnet und 331 zeigt.
gegenüber diesen versetzt sind, sind als zweite Reihe Im vorliegenden Beispiel wurden die sieben Stellen
Blöcke 317 und 318 dargestellt. der Zahl ATP über die Leitungszweige ClT-I...
An Hand eines Beispiels soll gezeigt werden, wie 20 CIT-S und die vier Stellen der Zahl IA' anschließend
der Digitalrechner 53 zwei in verschiedenen Registern über die Leilungszwcige CIT-S ... CIT-S in den Digi-
des Systems stehende Zahlen addiert. Es sei ange- talrechner 53 geholt. Durch die Übertragung der Zahl
nommen, daß eine im aktiven Register 109 fX auf- AX in den Rechner wurde diese Zahl sofort addiert,
bewahrte Zahl zu einer Zahl im aktiven Register um im Antwortregister die richtige Summe aus diesen
WlXCP addiert werden soll. Im Programmschritt N 25 beiden Zahlen zu bilden. Der Grund für diese so-
wird die im Register 117 ATP stehende Zahl ATP fortige Addition liegt darin, daß die in entsprechen-
über die Eingangssammelschicne 59 und die Leitungs- den Stufen der aktiven Register 117 A CP und 109 AX
zweige ClT-2 ... CIT-S in den Digitalrechner 53 ge- stehenden Ziffern der aus diesen Registern abgerufe-
bracht. Im selben Programmschritt erhält der Rechner nen Zahlen ATP und .(A' den gleichen Stellenwert
durch ein an seinem Eingang CAR auftretendes 3·= haben. Im Falle des Registers 117A-CP sind die
Steuersignal die Anweisung, sein Antwortregister 53« Stellenwerte der in den verschiedenen Stufen stehen-
und das Teilregister 53b zu räumen. Diese Ereignisse den Ziffern in Fig. 9 leicht zu erkennen, da dort
sind in Fig. 14 durch die Blöcke 321 und 323 ange- zwischen der zweit- und der dritthöchsten Stufe ein
deutet. Der Additionsvorgang beginnt während des Dezimalkomma steht. So stellt beispielsweise die in
Addierzyklus N und ist durch den Block 325 dar- 35 der höchsten Stufe des Registers 117 XCP stehende
gestellt. Ziffer in dem hier beschriebenen Ausführungsbeispiel
In diesem Zeitabschnitt wird das Anlwortrcgister des Systems die Zehner, die nächstniedrige Stelle die 53fl effektiv geräumt, indem der Digitalrechner 53 Einer und die rechts vom Dezimalkomma stehenden auf seinen Augendencingängen Nullen an Stelle der Stellen der Reihe nach Zehntel, Hundertstel, Tau-Ziffern erhält, die im Antwortregister stehen und nor- 40 sendstcl, Zchntausendstel und Hundcrttausendstel in malerweise als Augend benutzt werden, während auf Zoll dar. Da das aktive Register 109.1A' im vorscincn Addendeneingängen die Zahl ATP von der liegenden Ausführungsbeispiel nur vier Ziffernstufen Eingangssammclschiene 59 eintrifft. Da das Antwort- hat, stehen somit in seiner höchsten Stufe ZoIireeister 53a somit geräumt ist, wird im nächsten hundertste!. Der Maximalwert von JA', den das Re-Addierzyklus Λ; nur die Zahl ATP in das Antwort- 45 gister aufzunehmen vermag, ist also 0.09999 oder register gebracht. Der oben beschriebene Vorgang, etwa 0,1 Zoll. Das bedeutet ganz einfach, daß alle mit dem bezweckt wird, daß das Register geleert Makrobewegungsgrößen mit <C0,l Zoll angenommen wird, wird in der vorliegenden Beschreibung einfach sind, wenn der Zeitabschnitt AT, in dem eine solche mit »Räumung des Antwortregisters« bezeichnet. Da Makrobewegung ausgeführt werden soll, 20 ms bedurch die Räumung des Antwortregisters verhindert 50 trägt. Diese Annahme ist berechtigt, wenn man bewerden soll, daß die im Register aufbewahrte Zahl denkt, daß eine Bewegung von 0,1 Zoll in 20 ms noch einmal in dasselbe Register als Augend der einer Bewegung von 5 Zoll pro Sekunde oder 300 Zoll nächsten Addition erscheint, wird durch die Räu- pro Minute entspricht.
mung des Antwortregisters effektiv die dort auf Im Gegensatz zum aktiven Register 117 ATP trägt
bewahrte Zahl »gelöscht«. Aus diesem Grund wird 55 das Register 109 lA" kein Dezimalkomma, da seine
die Räumung des Antwortregisters 53a bzw. des höchsie Stufe eine Stelle davon entfernt liegt. Statt
größeren Akkumulatorregisters 53oft in der Beschrei- dessen stehen diese Angaben sowie die Stellung des
bung auch mit »Löschen einer Zahl in diesen Re- Dezimalkommas und die Stellenwerte der in den
gistern« bezeichnet. übrigen Registern stehenden Zahlen in Fig 15. In
Im nächsten Programmschritt N + 1 werden das 60 dieser Figur sind die Register des Systems unterein-
Vorzeichen und vier Stellen der Zahl A X über die ander angeordnet, wobei jedes Register durch eine
Leitungszweige ClT (-), ClT-S, ClT-6, ClT-7 und Reihe Quadrate dargestellt und entsprechend be-
ClT-S der Eingangssammelschiene 59 in den Digital- zeichnet ist. Wie aus Fig. 15 leicht zu ersehen ist.
rechner 53 geholt. Wie ersichtlich, tritt dieser Vor- stehen die Dezimalkommas bei den Zahlen ATP und
gang im Programmschritt N 4 1 auf und ist als Block 65 J X an der gleichen Stelle, so daß diese beiden Zahlen
327 dargestellt. Um die Addition zu vollenden, wird in der zuvor beschriebenen Weise addiert werden
dem Digitalrechner 53 in der Mitte des Programm- können. Dies ist jedoch nicht immer der Fall, denn
Schrittes N x 1 mitgeteilt, mit dem nächsten Addier- wie Fig. 15 zeigt, haben nicht alle Zahlen das Dezi-
S'
57 ' 58
malkomma an der gleichen Stelle. Sollen zwei Zahlen verschieben, gelegentlich sogar um vier Stellen in addiert werden, bei denen das Dezimalkomma nicht einem einzigen Addierzyklus. Die Auslösung dieser an der gleichen Steile steht, so wird die erste Zahl Verschiebungen erfolgt von außen, indem in begewöhnlich im Antwortregister 53«ft so weit ver- stimmten Programmschritten Steuerimpulse auf die schoben, bis die Dezimalkommas beider Zahlen 5 Steuereingä.nge SA R (schiebe Akkumulator nach untereinander stehen. Erst dann wird die Addition rechts), SAL (schiebe Akkumulator nach links), SR 4 durchgeführt. (schiebe 4 Stellen nach rechts) und SL 4 (schiebe Solange der Rechner als Addierer arbeilet, wird 4 Stellen nach links) des Rechners gegeben werden, eine Zahl, die in einem Programmschritt aus einem Die zeitliche Steuerung dieser Steuerimpulse und der der Zwischenregister 47 über die Eingangssammcl- io durch sie ausgelösten Verschiebungen ist in Fig. 14 schiene 59 in den Rechner geholt wird, im nächsten durch den Block 333 und die Impulsschwingungen Addierzyklus automatisch zu der zuvor im Antwort- 335 und 337 angedeutet.
register 53a gespeicherte Summe addiert. Beendet Des weiteren sind im Digitalrechner 53 Vorkeh-
wird die Addition gewöhnlich, indem in einem be- rungen getroffen, um das Antwortregister 53 a oder
stimmten Programmschritt, in welchem die gewünschte 15 das Teilregister 53 ft wahlweise räumen zu können.
Summe im Antwortregister 53a bereitsteht, die Die Durchführung dieser wahlweisen Räumungen
Schreibtore eines ausgewählten aktiven Registers 57 durch den Rechner erfolgt, wenn seine Steucrcingänge
aufgetastet werden. ZR 1 (Teilregister 1 nullen) und ZR2 (Teilregister 2
Soll dagegen der Digitalrechner 53 eine auf seiner nullen) Steuerimpulse erhalten.
Eingangssammelschiene 59 gemeldete Zahl von einer 20 Eine weitere vom Digitalrechner 53 auszuführende in seinem Antwortregister aufbewahrten Zahl subtra- Funktion besteht darin, zwei Zahlen zu vergleichen hieren, so erhält er an seinem Eingang SX einen Sub- und die relativen Größen der verglichenen Zahlen trahierimpuls, und zwar gleichzeitig mit dem Er- auf einem Paar Ausgangsleitungen 339 und 341 ^u scheinen der zu subtrahierenden Zahl auf der Ein · melden. Zur Durchführung dieses Vergleichs wird die gangssammelschiene 59. 25 erste der beiden zu vergleichenden Zahlen im Pro-Mit dem Rechner lassen sich auch Multiplikationen grammschritt /V und die zweite der beiden Zahlen im durchführen. Er erhält in diesem Fall an seinem Ein- Programmschritt N < 1 auf die Eingangssammelgang X einen Multiplizierimpuls. Eine Multiplikation schiene 59 gegeben, und zwar gleichzeitig mit einem kann man sich als eine Reihe aufeinanderfolgender Vergleichsimpuls CA', der auf dem Steuereingang CX Additionen vorstellen, bei welcher der Multiplikand 30 des Digitalrechners 53 auftritt. Das Resultat des Vcrso oft addiert wird, wie der Wert der niedrigsten gleichs erscheint auf einer der beiden Ausgangs-Stelle der Mantisse des Multiplikators (C?, dargestellt leitungen 339 und 341, und zwar so rechtzeitig, daß in halblogarithmischcr Form, vgl. Abschnitt C 1 b) es im folgenden Programmschritt benutzt werden angibt, worauf das im Antwortregister 53a stehende kann. Ist die erste der beiden Zahlen kleiner als die Teilergebnis um eine Stelle nach rechts verschoben 35 zweite, erscheint auf der Ausgangslcitung 341 ein wird, der Multiplikand erneut so oft addiert wird, Binärsignal »1«. Ist die erste Zahl gleich oder größer wie der Wert der zweiiniedrigslen Stelle der Mantisse als die zweite, wird dies durch ein BinüiMgna! ·> 1 des Multiplikators angibt, worauf wiederum eine auf der Ausgangsleitung 339 angezeigt.
Rechtsverschiebung der Teilsumme im Antwort- Die letzte Funktion des Digitalrechners 53 ist mit register 53a erfolgt usw., bis der Multiplikand so oft 40 »behandle wie positiv« bezeichnet. In dieser Funkaddiert worden ist, wie der Wert der höchsten Stelle tion behandelt der Rechner die ihm eingegebene Zahl der Mantisse des Multiplikators angibt. Danach wird wie eine positive Zahl, gleichgültig. Welches Vordie Summe im Antwortregister 53 a nach links ver- zeichen sie hat. Soll der Rechner diese Funktion ausschoben, und zwar um eine Anzahl Stellen, die gleich üben, so erhält er am Steucreincang FP (behandle wie der Charakteristik des Multiplikators ist. Dadurch 45 positiv) einen entsprechenden" Steuerimpuls gleichsteht das Produkt dann im Antwortregister 53 a an zeitig mit dem Auftreten der zweiten Zahl auf der der richtigen Stelle. Eingangssammelschiene 59.
Zur Aufnahme der Ziffern, die bei der Verschiebung im Antwortrcgister 53 a rechts von der Stufe 8
zu stehen kommen, ist das Teilregistcr 53ft vorge- 5° e· Bahnform-Indikator für laufende·« Wegstück
sehen. Dieses Register hat vier Ziffernstufen und stellt
gewissermaßen die Verlängerung des Antwortregisters Bei der Beschreibung der Zwischenregister 47 von
53a dar. In der Tat werden Antwortregister 53a und Fig. 9k wurde auf das Zwischenregister 47Ci und
Teilregistcr 53 ft als ein einziges zwölfstufiges Akku- den Zuordner 221 verwiesen. Dabei wurde ausgeführt, mulatorregistcr 53aft angesehen. Jedoch nur die 55 daß der Zuordner 221 die Aufgabe hat, auf seinen
ersten acht Stufen dieses zwölfstufigen Registers Ausgängen Signale zu erzeugen, die die Form des
nehmen die vom Digitalrechner 53 gebildete Summe Wegstückes anzeigen, das von den in den anderen
auf und leiten sie zur Ausgangssammelschiene weiter. Zwischenregistern 47 stehenden Daten darcestclll
Natürlich hat das Akkumulatorregister 53aft auch wird. Diese Information ist im vorliegenden System Vorrichtungen, um seinen Inhalt sowohl nach links 60 von Nutzen, denn mit ihr kann bestimmt werden
als auch nach rechts verschieben zu können. Die im was für Arten von Operationen an den in den ande-
Verlauf einer Multiplikation auftretenden Verschic- rcn Zwischenregistern stehenden Daten in Überein-
bungcn werden vom Rechner intern ausgelöst. Diese Stimmung mit der Form des von diesen Daten dar·
Verschiebungen werden hier nicht näher beschrieben. gestellten Wegstückes auszuführen sind. Ein Signal Bei bestimmten anderen vom Rechner durchzuführen- 65 das die Form eines Wegstückes anzeigt, ist aber auch
den Operationen erhält dieser dagegen von außen die bei der ständigen Verarbeitung von Daten in der
Anweisung, eine in seinem Antwortregistcr 53a aktiven Registern 57 nützlich. Diese Vcrarbcitunj
stehende Zahl nach rechts oder auch nach links zu erfolgt ja während der Beschreibung des Wegstückes
d. h„ während das gesteuerte Element dieses Wegstück abfährt. Aus diesem Grund wird die im Zwischenregister 47 G stehende Zahl G zusammen mit den in den anderen Zwischenregistern 47 stehenden Zahlen in die aktiven Register 57 gebracht, und zwar in das Register 105 G (Bahnformregister G).
Das Register 105G erscheint in F i g. 9 f unmittelbar rechts vom Digitalrechner 53 und enthält zwei K-S-Flipllops, die jeweils ein Binärsignal speichern können. Die Übertragung der Zahl G aus dem Zwischcnrcgister 47 G in den Digitalrechner 53 erfolgt über den Leitungszweig C/T-8 der Eingangssammclschiene 59, und zwar auf den 1- und 2-bit-Leitcrn dieses Zweiges. Wird die Zahl anschließend vom Computer in das Register 105 G übertragen, so wird sie dabei auf den \- und 2-bit-Lcitern des Leitungszweiges COT-S der Ausgangssammclschiene 61 zu den den Flipflops des Registers 105 G zugeordneten Schreibtoren transportiert. Auf diese Weise wird die digital signalisierte Zahl G vom Zwischcnrcgistcr 47 G in das aktive Register 105 G gebracht, gleichgültig, ob sie 1,2 oder 3 lautet. Um die im aktiven Register 105G in binärverschlüsselter Form stehende Zahl G auf einer einzigen Leitung wiedergeben zu können, ist ein als Zuordner ausgebildeter Bahnform-Indikator 106 vorgesehen, der dem Zuordner 221 ähnlich ist. Fig. 9f zeigt diesen bahnform-Indikator im einzelnen. Er enthält eine Gruppe von drei UND-Gliedern 106«, 106/) und 106r, die untereinander und über eine Sammelschiene 108 mit den Ausgängen des aktiven Registers 105 G so verbunden sind, daß am Ausgang des entsprechenden UND-Gliedes 106«, IO6/7, 106r ein Binärsignal»!« erscheint, wenn im Register 105G eine 1, 2 oder 3 steht. lerner gehört zum Bahnform-Indikator auch ein ODER-Glied 106 J. das mit den Ausgängen der UND-Glieder 106/) und 106 c verbunden ist. Am Ausgang dieses ODER-Gliedes erscheint also beim Auftasten der UND-Glieder 106/) und I06r ein Binärsignal »1«. Da G-Zahlen mit den Werten 1, 2 und 3 Wegstücke 4" bezeichnen, die eine Gerade, einen Rechtsbogen bzw. einen 1 inksbouen darstellen, tragen die auf den Ausgängen der UND-Glieder 106«, 106c und 106 h auftretenden Binärsignale »1« die Bezeichnungen LlN (linear), CW (Rechtsbogen) bzw. CCW (Linksbogen). Schließlich trägt auch das am Ausgang des ODER-Gliedes 106 i/ auftretende Binärsignal »1* eine Bezeichnung. ZIR. die besagt, daß eine am Ausgang dieses ODER-Gliedes auftretende binäre H< zur Auslösung von Operationen benutzt wird, die stets bei Erzeugung eines zirkulären Wegstückes auszuführen sind, gleichgültig, ob das Wegstück ein Rechtsbogen oder ein Linksbogen ist.
f Prognimmtoranordnung (/'GVf)
Welche Art Operation der Digitalrechner 53 auszuführen hat und in welchem bestimmten Programmschritt die Durchführung erfolgen soll, hängt von mehreren Faktoren ab. Zu diesen Faktoren zählen die Form des zu erzeugenden Wegstückes sowie das Stadium, bis zu dem die Erzeugung dieses Wegstückes fortgeschritten ist. Beide Faktoren werden mit Hilfe zahlreicher Prnprammtorc erfaßt, wobei jedes einzelne Programmtor so geschaltet ist, daß es auf eine bestimmte Bedingung anspricht, die eine bestimmte Operation im Rechner auslösen soll. In den meisten Fällen muß der Rechner eine bestimmte Operation ausführen, wenn eine eindeutige Kombination mehrerer verschiedener Bedingungen vorliegt. Die einzelnen Kombinationen werden dabei jeweils von einem besonderen Programmtor erfaßt. Alle Programmtore, die solch einer bestimmten Operation zugeordnet sind, wie etwa Verschiebung um vier Stellen, sind zu einer Gruppe zusammengefaßt, die »Progiammtoranordnung« (PGA) genannt wird. F i g. 9 c zeigt alle Programmtoranordnungen, die dem Digitalrechner 53 zugeordnet sind. Eine von ihnen, die Programmtoranordnung 347, mit der die Operation 5/. 4 (verschiebe 4 Stellen nach links) ausgelöst wird, zeigt Fig. 16 im einzelnen. Aus Gründen, die noch im Verlauf der weiteren Beschreibung ersichtlich werden, erhält der Computer die Anweisung, den Inhalt seines Akkumulatorregisters 53αέ> um vier Stellen nach links zu schieben, und zwar in den Programmschritten 1465 und 1470, wenn ein zirkuläres Wegstück erzeugt wird, in den Programmschritten 1865 und 1870, wenn ein lineares Wegstück erzeugt wird, und in den Programmschritten 1965, 1970, 4870 und 4970, wenn das zu beschreibende Wegstück eine Gerade oder ein Kreisbogenstück ist. Beim Auftreten einer dieser acht Bedingungen wird daher stets ein Progrnmmiinpuls am Ausgang der Programmtoranordnung 347 erzeugt. Jeder der acht unter acht verschiedenen Bedingungen erzeugten Programmimpulse wird an einem von acht Programmtoren 347«... 347/1 gebildet. Als Beispiel soll das erste Programmtor 347« betrachtet werden. Es ist ein UND-Glied mit vier Eingängen, von denen die ersten drei mit dem Ausgang 1400 des logischen Zcitbasis-Schaltnctzes 67 und den Ausgängen 70 und 0 des Zeitbasis- und Taktgebersystems 63 verbunden sind. Der vierte Eingang des Programmtors 347 π ist mit dem Ausgang ZlR des Bahnform-Indikators 106 verbunden. Wird also ein zirkuläres Wegstück erzeugt, gleichgültig, ob ein Rechtsbogen oder ein Linksbogen, so wird am Ausgang des Programmers ein Impuls im Programmschritt 1470 erzeugt.
Das zweite Programmtor 347 b ist ähnlich geschaltet, um an seinem Ausgang im Programmschritt 1870 einen Programmimpuls abzugeben, wenn der Bahnform-Indikator 106 ein Signal LlN erzeugt. In ähnlicher Weise sind auch die übrigen sechs Programmtore 347 r . . . 347 Ii mit entsprechenden Ausgängen des Zeitbasis-Schaltnetzes 67, des Zeitbasis- und Taklgebersystcms 63 und des Bahnform-Indikators 106 verbunden, um an ihren Ausgängen Programmimpulse in den Programmschritten 1^70. 4870 4970. 1465 ZlR. 1865 · LIN und 1%5 zu erzeugen Alle acht Ausgange der Programmtorc 347« ... 347/ sind in einem ODER-Glied 347/ zusammengefaß und erscheinen am Ausgang dieses Gliedes. Diese· eine Ausgang bildet den Ausgang für die ganze Pro grammtoranordnung 347.
Programmtore werden auch eingesetzt, um dii Übertragung von Daten aus den aktiven Registern 5' zur Eingangssammeischiene 59 des Rechners (Heraus lesen) und von der Ausgangssammelschicne 61 in di aktiven Register 57 (Einschreiben) zu steuern. Wi ersichtlich, hat jedes Register neben sich zwei solche Programmtoranordnungen, von denen eine mit de Schreibtoren und die andere mit den Lesetoren de Registers verbunden ist. Die verschiedenen Bedin gungen, unter denen eine bestimmte Programmtoi anordnung einen Programmimpuls abgibt, siru Joi
in der gleichen Weise aufgeführt wie bei den Programmtoranordnungen in Fig. 9c.
2. Arbeitsweise des Systems beim Erzeugen
einer Geraden
a. Arbeitsschritte, die vor der Ausführung der ersten
Makrobewegung auf einem linearen Wegstück
ausgeführt werden, um Makrobewej'ungswerie \X
und ΛY zu bilden
Bei der Erläuterung der Beschreibung von Geraden und anschließend von Kreisbogenstücken wird auf die fiktive Bahn 27 von Fig. 2 Bezug genommen. Dabei geht die Beschreibung von der Annahme aus, daß die Bahn 27 abgefahren werden soll. Die Be-Schreibung beginnt an einem Punkt der Bahn, der kurz vor dem Endpunkt des Wegstückes 27« liegt, und befaßt sich sodann mit der Erzeugung des linearen Wegstückes 27 b und anschließend mit der Erzeugung des zirkulären Wegstückes 27 c. Mit der Beschreibung des linearen und des zirkulären Interpolationsverfahren'; ist eine Beschreibung der Vorrichtungen verknüpft, die zur Erzeugung der Wegstücke vorgesehen sind, d. h. des Systems von F i g. 9. Beide Verfahren setzen sich naturgemäß aus einer großen Anzahl Einzelschritte zusammen, wobei einige von ihnen zusätzliche Maßnahmen betreffen, die für die beiden Grundverfahren selbst nicht wesentlich sind. Die Beschreibung der vom System beim Erzeugen linearer und zirkularer Wegstücke auszuführenden Arbeitsschritte erfolgt, von wenigen Ausnahmen abgesehen, in chronologischer Reihenfolge, d. h. in der Reihenfolge ihres zeitlichen Auftretens. Auf diese Art läßt sich die Arbeitsweise des Systems in einem geordneten Zusammenhang beschreiben. Andererseits gibt es jedoch viele Fälle, in denen Arbeitsschritte, die sich auf die Durchführung eines bestimmten Vorganges beziehen, nicht direkt hintereinander auftreten, so daß eine Beziehung zwischen diesen Arbeitsschritlen nicht klar ersichtlich ist. Daher werden die verschiedenen durchgeführten Maßnahmen und Nebenverfahren in der Beschreibung periodisch zusammengefaßt.
Die Beschreibung beginnt mit Operationen, die sich mit der Erzeugung des geraden Wegstückes 27 b von Fig. 2 befassen. Dabei sei angenommen, daß das System im Begriff ist, das vorhergehende Wegstück 27α zu vollenden und daß es gerade die letzte Makrobewegung auf diesem Wegstück ausführt. Einige der Vorgänge, die in diesem Zeitraum ablaufen, sind in Fig. 17 dargestellt. Diese Figur zeigt ein Befehlsschema der Operationen, die vom Steuerungssystem der Fig. 9 während eines vollständigen Arbeitsspiels ausgeführt werden, wenn das System in der Betriebsstufe 4 arbeitet. Tatsächlich entspricht dieses Befehlsschema einem Programmschcma, wie es Fig. 10a und 10c zeigen. Es enthält nämlich zehn Spalten, die von 4000 .. . 4900 numeriert sind, und jede Spalte wiederum enthält einhundert Zeitabschnitte zu je 20 us, in dunen jeweils eine andere Operation ausgeführt werden kann. In dem Flul.idiagramm von Fig. 17 sind die Schritte, die in dem vom Diagramm dargestellten Maschinenzyklus auszuführen sind, jedoch nicht einzeln aufgeführt, sondern nur in Form der Operationen angegeben, mit denen sie sich befassen. Wie von der Struktur des Programmschemas bekannt, hat jeder Maschinenzyklus, der in einem Programmschcma dargestellt wird, wie es Fig. IOa in allgemeiner Form zeigt, eine Dauer von 20 ms, was der vom Programmschrittgenerator 161 für einen Programmschrittzyklus benötigten Zeit entspricht. Die hier angegebene Dauer eines Maschinenzyklus wurde lediglich zur Beschreibung eines bestimmten Beispiels gewählt. Sie läßt sich selbstverständlich auch änder.i.
Die Schritte und Operationen, die in den ersten sechs Spalten des Befehlsschemas von Fig. 17 ausgeführt \\Lrden, befassen sich ausschließlich mit der Beschreibung des letzten Wegstückes 27a. Sie gewinnen an Bedeutung bei der Betrachtung der Operationen, die bei der Vollendung eines linearen Wcgstükkes aultreten, und werden dann besprochen. Die Operationen, die sich mit der Erzeugung des nach-M en geraden Wegstückes 27/> befassen, beginnen in der siebten Spalte 4600 des Bcfehlsschemas.
1) Übertragung der das nächste Wegstück
beinhaltenden Daten von den Zwischenregistern
in die aktiven Register
Die ersten Operationen, die in Programmspalte 4600 ausgeführt werden, haben zum Ziel, die dem nächsten Wegstück 27 Λ zugeordneten numerischen Daten, die bis dahin in den Zwischenregistern 47 gestanden haben, in die aktiven Register 57 zu holen. Zunächst wird die X-Achsen-Wegkomponente / und danach die y-Achsen-Wegkomponente J in die entsprechenden aktiven Register 57 gebracht. Anschließend werden die Endpunkt-Koordinaten XEP und YEP aus ihren Zwischenregistern 47A" und 47 }' in die ihnen zugeordneten aktiven Register 57 geholt. Danach wird der Makrobewegungsquotient Q von Zwischenregister 47(7 in das aktive Register I03C? gebracht, und schließlich wird die Bahnform G vom Zwischenregister 47 G in ihr aktives Register über tragen.
Diese vorstehende Reihe Operationen, in denen Zahlen von den Zwischenregistern in die aktiven Register gebracht werden, sind Schritt für Schritt in Tabelle i aufgeführt. Zu dieser Tabelle gehören unter anderem zwei Spalten. Die erste ist mit »4600 ■ UN« bezeichnet und betrifft den Abschluß eines linearen Wegstückes oder Datcnblockes; die zweite ist mit »4600 · Z1R« bezeichnet und betrifft den Abschluß eines zirkulären Wegstückes oder Datenblockcs. Beide Spalten stehen in der Tabelle nebeneinander, um einen Vergleich zwischen den Arbeitsschritten zu ermöglichen, die in einander entsprechenden Zeitabschnitten heim Erzeugen linearer und zirkularer Wegstücke ausgeführt werden. Die ersten vierzehn Programmschritte in jeder Spalte des Programmschemas von Fig. 17 befassen sich mit der Auswertung der Ergebnisse von Daten, die vom System erzeugt wurden. Sie sind in einer anderen Tabelle gesondert aufgeführt. Die Obcrtragung von Daten aus den Zwischcnrcgislcrn in die aktiven Register beginnt im Pro- »rammschritt 1« (Zeitabschnitt IS) der Spalte 4600. Mii Hilfe eines Programmtors 349 erhält das Zwischenrcgisier 47/ im Programmschritt 46IR einen l.eseimpuls. wodurch die in diesem Register stehende .Y-Achscn-Weckomponcntc / auf die l.eitungszweige (ΊΤ-1. . ΛΊΤ-Ί der F.ineangssammelschicne 59 des Rechners gelangt, von wo sie dann in dem dem Proürammschrilt 46IS zugeordneten Addierzyklus in den Dißitalrcchncr 53 ücholt wird.
Tabelle I
Operationen in Betriebsstufe 4 (Teil 1)
Beenden \ 'on lin. Block Beenden von zirk. Block Anmerkungen siehe Tabelle Ih räume Akkum. berechne Überlauf
4600-L//V 4600 ZlR lies XCEP korrektur für X und Y
1 ... 14 Anmerkungen schieb Ii. und modifiziere / und 7
15 räume Akkum. lies XCP, subt. dementsprechend bei
lies /Zl,i Umspeicherung von
16 sehr. I Zwi. in akt. Register
17 räume Akkum.
18 lies /Zvri lies YCEP
19 sehr. / schiebe Ii.
20 räume Akkum. lies YCP, subt.
lies Jlwi
21 sehr. /
22
23 lies 7Zu., bring progr. Endpunkt
24 sehr./ von Zwi. in akt. Reg.,
25 und übertrage in
26 räume Akkum. Maschinenkoordinaten
lies XEP lwi
27 lies 50,0000"
28 lies Korr. X
29 sehr. XCEP
30 räume Akkum.
lies YEPZwi
31 lies 50,0000"
32 lies Korr. Y räume Akkum.
33 sehr. YCEP lies XEP7n,;
34 lies 50,0000"
35 räume Akkum. lies Korr. X
lies QZlvl sehr. XCEP
36 sehr. Q räume Akkum.
37... 99 lies YEPZwi
lies 50,0000"
lies Korr. Y
bring / und 7 von Zwi.
in akt. Register
sehr. YCEP
räume Akkum.
bring progr. Endpunkt lies QZwi
von Zwi. in akt. Reg., sehr. Q
und übertrage in Beicchnungen
Maschinenkoordinaten
keine weiteren
Im nächsten Programmschritt 4619 erhält das aktive Register 99/ einen Schreibimpuls von seiner Programmtoranordnung 355, wodurch die ASAchsen-Wegkomponente /, die in diesem Programmschritt im Antwortregister 53a des Rechners erscheint, über die Leitungszweige COT-I... COT-S in das Register 99/ geholt wird. Da die im Antwortregistcr 53a aufbewahrte Wegkomponente / nur sechs Stellen hatte, von denen die niedrigste in der Ziffernstufe 7 des Registers stand, wird in die der niedrigsten Stelle zugeordnete Stufe des Registers 99/ eine Null eingeschrieben. Der Grund für diese zusätzliche Stelle wird im Verlauf der Beschreibung noch ersichtlich.
Nachdem die Λ"-Achsen-Wegkomponente / vom Zwischenregister über den Digitalrechner 53 in das aktive Register geholt worden ist. wird das Antwortregister 53α im nächsten Programmschritt 4620 durch Anlegen eines Räuniimpulses an den Steuercingang CAR des Rechners geräumt. Dieser Räumvorgang wiederholt sich im Arbeitsabiauf sehr oft. Die Steuerimpulse, die zur Auslösung dieser Operation erforderlich sind, werden von einer Programmtoranordnung 351 erzeugt, die aus zahlreichen einzelnen Programmtoren besteht. In dem Block, der diese Pronrummloranordnung andeutet, ist eine Anzahl Bedingungen aufgeführt, unter denen die Programmioranordnung 351 einen Räumimpuls CAR abfiifit. Der Programmschritt 4620 steht dort an 14? Stelle.
Um die K-Achsen-Wegkomponcnte 7 aus dem Zwischenregister 477 in das aktive Register zu holen, erhält das Register 477 im Programmschritt 4623 einen Leseimpuls von einem Programmtor 353. Unter dem Einfluß dieses Leseimpulses gelangt 7 im Programmschritt 4623 auf die Eingangssammelschiene59 und erscheint im nächsten Programmschritt im Antwortregister 53 a. Die Übertragung dieser Zahl in das aktive Register 1017 erfolgt im Programmschritt4624 durch einen Schreibimpuls, den die Programmtoranordnung 357 auf das Register 1017 gibt.
Nachdem die K-Achsen-Wegkomponente 7 vom Antwortregister 53« in das aktive Register 1017 gebracht worden ist, wird das Antwortregister im Programmschritt 4626 durch einen Räuminipuls CAR der Programmtoranordnung 351 (Bedingung 15) geräumt. Außerdem wird im Programmschritt 4626 die Endpunkt-Koordinate XEP aus dem Zwischenregister 47X abgerufen. Dies geschieht mit Hilfe eines Auftastinipulses, der von einem Programmtor 359 erzeugt wird. Das Antworlregisler 53α erhält also
509 507/40
Über die Leitungszweige CJT-3... ClT-S den programmierten Endpunkt für die A'-Achse und nimmt diese Zahl in seinen Stufen 3 ... 8 auf. Bevor die Endpunkt-Koordinate jedoch in die aktiven Register 57 gebracht wird, wird sie modifiziert, um sie aus dem vom Programmierer benutzten Koordinatensystem in das Maschinenkoordinatensystem zu übertragen. Hierbei handelt es sich jedoch um eine reine Zusatzeinrichtung, die gegebenenfalls auch wegfallen kann. In der Tat ist es in bestimmten Fällen zweckmäßig, die Daten nicht in Maschinenkoordinaten zu übertragen, damit sie in einer Form dargestellt werden können, die dem Programmierer und dem Bedienungsmann der Maschine, an der das Steuerungssystem benutzt wird, gelaufig ist. Bei dem hier beschriebenen System werden die Daten jedoch in die Maschinenkoordinaten übertragen. Welche Veränderungen sie dabei erfahren, ergibt sich aus Fig. 2.
Wie diese Figur zeigt, ist der Nullpunkt des von der Maschine benutzten 1-Quadrant-Koordinatensystems gegenüber dem Nullpunkt des vom Programmierer benutzten 4-Quadranten-Koordinatensystems um 50 Zoll sowohl in der A'-Achse als auch in der y-Achse verschoben. Die Richtung dieser festen Nullpunktvcrschiebung in beiden Koordinatenachsen ist so gewählt, daß sich die Position jedes beliebigen Punktes, der durch das vom Programmierer benutzte Koordinatensystem definiert ist, in die Maschinenkoordinaten dieses Punktes übertragen läßt.
Eine weitere Zusatzeinrichtung, die in dem detaillierten Programm in Tabelle I berücksichtigt ist, ist die vom Bedienungsmann einzugebende Fräserdurchmesserkompensation. Mit Hilfe dieser Zusatzeinrichtung kann der Bedienungsmann der Werkzeugmaschine eine weitere Verschiebung auf der A'-Achse oder der K-Achse oder auf beiden Achsen eingeben, um Ungenauigkeiten in den Abmessungen des Fräsers zu kompensieren. Zur Durchführung der festen 50-Zoll-Nullpunktversiellung in beiden Koordinatenachsen sind zwe. Lesetore 361 und 363 (Fig. 1Jf) vorgesehen, deren Ausgänge mit dem 4- bzw. 1-bit-Leiter des Leitungszweiges C/T-3 verbunden sind. Beide Lesctorc 361 und 363 haben jeweils zwei Hingänge, von denen jeweils einer an einer Spannungsquelle mit dem Binärpegel »1< liegt. Die beiden anderen Eingänge der zwei I.csi'tore sind in Parallelschaltung mit zwei Programmtoren 369 und 379 über ein ODER-Glied 371 verbunden, so daß sie von diesen Programmtoren gleichzeitig aufgetastet werden können. Werden also die UND-Glieder 361 und 363 aufgetastet, so geben sie über den I- und den 4-bit-Leiter des Leitungszweiges ClT-3 eine Binärspannung »1« auf die I- und 4-bit-Flipfiops der Stufe 3 des Digitalrechners 53, wodurch in diese Stufe die Ziffer 5 gelangt. Da da-. Dezimalkomma bei dieser Nullpiinktvcrstellung zwischen den Stufen 4 und 5 des Antwortrepisters 53« steht, stell! diese Zahl somit 50.0(M)O Zoll d:ir. wie F i g. 1 5 zeigt.
Die !!r/cumui!! der vom Ueilk'iumgsmann ein/uge- 6» bonden Korrckturwerle zum Ausgleich von IJngenaiiigkeilen im Fräscrdurchmesser erfolgt durch zwei Korrekturregisler 365 und 367. die in Fig. 1Jf mit »A'-Korreklur« b/w. »V-Korreklur·· bezeichnet sind. Beide Register 365 und 367 haben jeweils sechs /iffcrnslul'en und eine Vorzeichciistufe. .!eile Ziffernstufe kann mit Hilfe geeigneter Vorrichtungen eine beliebige /Ufer von 0 .. .c' aufnehmen und digital wiedergeben. Ebenso kann die Vorzeichenstufe ein 1 oder melden. Da beide Korrekturregister 365 und 367 separat einstellbar sind und ihre Daten nicht von den Zwischenregistern 47 erhalten, haben sie auch keine Schreibtore wie die übrigen aktiven Register. Sie haben jedoch Lesetore, die genauso ausgebildet sein können wie die im Zusammenhang mit dem aktiven Register 109 IA1 in Fig. 13 gezeigten Lesetore. Die Lesetore der Korrekturregister sind so geschaltet, daß sie die in den Ziflernstufen der Register stehenden Ziffern auf die Leitungszweige ClT-Z... CIT-8 geben und veranlassen, daß diese Ziffern von dort in die Stufen 3 ... 8 des Digitalrechners 53 gebracht werden.
Nachdem die Endpunkt-Koordinate XEP aus dem Zwischenregister 47 X in das Antwortregister 53 a geholt worden i:,t und sich in diesem Register noch befindet, erhalten die Lesetore 361 und 363 im Programmschrilt 4627 einen Leseimpuls, um die digital dargestellte Zitier 5 in den Computer zu holen, wie zuvor beschrieben. Der Leseimpuls wird vom Progranuntor 369 erzeugt und gelangt über das ODER-Glied 37! auf die Eingänge und UND-Glieder 361 und 363. Hierdurch wird in dem dem Programmschritt 4627 zugeordneten Addierzyklus eine Nullpunktverschiebung von 50,0000 ZoIi zu der im Antwortregister 53« stehenden Endpunkt-Koordinate XEP addiert. Der Fräserkorrekturwert wird im nächsten Programmschritt 4628 zu der Summe im Antwortrepister 53« addiert oder von dieser subtrahiert, wenn ein Programmtor 373 einen Leseimpuls an das Korrekturregister 365 abgibt. Das Endresultat, das die in die Maschinenkoordinaten übertragene A"-Koordinate des Endpunktes darstellt, erscheint im Antwortregister 53« im Programmschritt 4629 und gelangt in diesem Program.mschritt unter dem Einfluß eines Schreibimpulses, der von einer dem aktiven Register 95 XCEP zugeordneten Programmtoranordnung 375 abgegeben wird, über die Ausgangssammelschicnc 61 in das Register 95 ATEP. Damit ist die Umspeichcrung des A'-Achsen-Fndpunktes vom Zwischenregistcr 47 X in das aktive Register 95 XCEP und seine Übertragung in die Maschinenkoordinalen beendet.
Die Umspciciierung des V-Achsen-Endpunktes in den nächsten vier Programmschritten vom Zwischenregister 47 Y in das aktive Register 97 YCHP erfolgt genauso wie zmor. außer daß die Operationen zu anderen Zeiten ablaufen und daß andere Register dabi'i beteiligt sind. So wird zunächst das Anlwortregistcr 53« im Programmschritt 4630 durch einen von der Programmtoranordnung 351 (Bedingung 16) abgegebenen Räumimpuls CAR geräumt. Im selben Programmschritt wird die Endpunkt-Koordinate YEP aus dem Zwischenregister 47 Y geholt, wenn dieses Register einen Leseimpuls von einem Programmtor 377 erhält. Im folgenden Programmschritt 4631 wird eine Nullpunktvcrschiebung von 50,0000 Zoll über die Leselore 361 und 363 in den Computer gebracht, wenn diese Tore über das ODER-Glied 371 einen Lcseimpuls vom I'rogiammtor 379 erhalten. Im nächsten Programmschritt 4632 wird der Fräserkorrckturwert für die !'-Koordinate aus dem Korrok;urregisler 367 geholt, und /war unter dem Einfluß eines I.eseimpuises, der von einem unmittelbar links vom Register dargestellten Programmlor 381 erzeugt wird. Das Resultat, das Jen in die Maschinenkoordinaten übertragenen V-Achscn-F.ndpimkt darstellt, wird vom
Antwortregister 53 α in das aktive Register 97 YCEP gebracht, sobald dieses Register einen Schreibinipuls von einer dem Register zugeordneten Programmtoranordnung 383 erhält.
Die Übertiagung des Makrobewegungsque.tienten Q aus dem Zwischenregister 47 Q in das entsprechende aktiv^ Register 103(2 erfolgt in den Programmschritten 4635 und 4636. Der Makrobewegungsquotient Q wird im Programmschritt 4635 durch einen Leseimpuls, den das Zwisch"nregister 47 β von einem Programmtor 385 erhält, aus diesem Register abgerufen. Im selben Programmschritt wird das Antwortregister 53a des Digitalrechners 53 durch einen Räumimpuls CAR der Programmtoranordnung 351 (Bedingung 17) geräumt. Im folgenden Programmschritt 4636 erscheint Q in den Stufen 4... 8 das Antwortregister 53 a des Digitalrechners 53 durch eines von einem Programmtor 387 erzeugten Schreibimpulses vom Antwortregister 53« in das aktive Register 103 Q gebracht.
Damit ist die erste Reihe von Operationen, in deren Verlauf die Wegkomponenten / und J sowie die Werte für die Koordinaten X und Y als Vorbereitung auf das lineare Wegstück 27 Λ aus den Zwischenregistern in die aktiven Register gebracht wurden, beendet. Wie man sieht, befindet sich die die Bahnform bezeichnete Zahl G noch im Zwischenregister 47G", da die dem momentan noch beschriebenen Wegstück 27 a zugeordnete Zahl G noch im aktiven Register 105(7 steht und noch nicht ausrangiert werden kann.
2) Umwandlung der in die aktiven Register
gebrachten Daten in Makro- und Mikrobewegungs-
werle
IZrfindungsgemäß werden die numerischen Daten, die die A'-Achscn-Wegkomponente / der beim Ausführen des Wegstückes 27 b abzufahrenden zusammengesetzten Strecke D darstellen, verarbeitet, um aus ihnen eine Reihe von Daten zu gewinnen, die in Digitalform eine Makrobeweguim .\X darstellen, die gleich
/· I/ · V D
ist (Gleichung 2.0). Ferner werden auch numerische Daten, die die K-Achscn-Wegkomnonente J der zusammengesetzten Strecke D darstellen, verarbeitet, um aus ihnen eine Makrobewcgun;: I Y zu gewinnen, die ihrerseits gleich
J- \l ■ V I)
(Gleichung 21) ist. Wie man sieht, sind diese Gleichungen den Gleichungen (6) und (7) von Fig. 5b äquivalent. Gemäß cine mi besonderen Merkmal der Erfindung werden mein ere tier Größen, aus denen die Gleichungen (ti ι und (1) bestehen, vorbereehnei und zusammen als Makrobewegungsquotient (J dargestellt Diese so berechneten Größen und ihre Beziehung zum Makrobewegungsquolienten (J sind in Gleichung (8) von Fig. 5b aufgezeigt. Die beiden Berechnungen, die oben mit Gleichung (20) und (21 j bezeichnet sind, lassen sich also in vereinfachter Form wiedergeben, wie die Gleichungen (9) und (10) von F i g. 5 b zeigen. Diese Gleichungen lauten:
Q, J-Q.
Beim Ausführungsbeispiel von Fig. 9 wird der Makrobewegungsquotient Q außerhalb des Systems vorberechnet und als Teil des Datenblockes, der ein Wegstück darstellt, in das System eingegeben. Natürlich läßt sich diese Vorberechnung auch im System selbst vornehmen. So kann der ein gegebenes Wegstück darstellende Datenblock an Stelle des Makrobewegungsquotienten Q beispielsweise die Größe V enthalten. 17" ist eine bekannte Konstante. In diesem Fall würde im System ein Digitalrechner zum Einsatz kommen, der Quadrieren, Quadratwurzelziehen, Dividieren sowie Addieren und Multiplizieren kann. Die gemäß den Gleichungen (6) und (7) erforderlichen Operationen würde der Rechner also intern ausführen.
Zu beachten ist ferner, daß die A'-Achsen-Wegkomponente / sowie die V-Achscn-Wcgkomponcnte./ der Strecke D im Lochstreifen nicht enthalten sein müssen, wenn die Koordinaten -V und Y des gewünschten Endpunktes gegeben sind. Statt dessen könnte man diese Wegkomponenten im System berechnen, indem man einfach von den den Endpunkt definierenden Koordinaten X und >' die entsprechenden Koordinatenwerte des vorhergehenden Datenblockes subtrahiert Das hier offenbarte System zeigt also lediglich die einfachste von mehreren möglichen Lösungen auf.
a) Multiplikation J · Q und Abtrennung des Restes
Wie Fig. 17 zeigt, werden die durch die Gleichungen (9) und (K)) bezeichneten Grundberechnungen in entsprechenden Zeitabschnitten der Programmspallen 4Q00 und 4800 ausgeführt. Als erste Größe wird J · Q berechnet. Die Berechnung von / · (J erfolgt anschließend. Die dabei auftretenden Operationen zeigt Tabcllell im einzelnen. Die beiden ersten Spalten in der Tabelle betreffen Berechnungen, die als Vorbereitung auf die Eingabe eines linearen Informationsblockes ausgeführt werden, und sind hler von unmittelbarem Interesse. Die dritte und vierte Spalte beireffen Berechnungen, die als Vorbereitung auf die Durchführung zirkulärer Interpolationen vorgenommen werden. Sie werden in einem späteren Abschnitt behandelt. Wie in Tabelle I stehen die bei linearer und zirkulärer Interpolation einander entsprechenden Operationen in Tabelle II nebeneinander, um einen Vergleich zu erleichtern. Die in den erster lunfzehn Programmschritten der Tabelle 11 auftretenden Operationen sind nicht aufgeführt, und zwai aus dem gleichen Grund, der im Zusammenhang mi Tabelle I angegeben wurde. Diese Piogrammschriiti sind bestimmten, sich wiederholenden Operationei
f'5 zugeordnet, die sich mit der Erzeugung des vorher gehenden Wegstückes 27« befassen und werden ai !land einer anderen 'Tabelle, in der diese Operatio nen auluelührt sind, noch näher besprochen.
,. 15 Kingeticn lies Q Tabelle II I ingehcn von zirk. Block lies Q ies Q nulle Registeileil 1 Leser EIN 4800 (G 02+ 6" (13)
4KO(I-OOl lies 7 und mult, mil Q 41IlIO (O 02 H O" 031 lies / und mult, mit Q lies - / und mult, mit Q schieb 4 X Ii.
führe Multipl. J ■ Q aus siehe Tabelle 111 führe Multipl. / ■ Q aus führe Multipl. ±1 Q schreib YR Bl. Z. auf S 15
Operationen in Betriebssiufe 4 (Teil 2) aus Bl. Z. auf S. 16 lies Q
1 . ..64 von lin. Hlock keine Berechnungen BLZ. auf .Sl lies ±7 und mult, mit Q
16 schreib . 1 Y führe MuH. ± J ■ Q aus
17 ..67 nulle Registerteil ί 49110-Ci" (Il
18 schieb 4 X Ii.
19. schreib YR schreib IA'
nulle Rcgisterlcil 1
65. schieb 4 x Ii.
68 schreib XR
69
70 räume Akkum. räume Akkum.
71 lies.iY,subt. lies Ge
72 lies .1 V, subt. schrei b G
73 desgl.
desgl.
74 desgl.
75 schreib . 1A' schreib 1 Y schieb rj.
76 nulle Registerteil I lies y
77 ..94 schieb 4 X Ii. schreib7
78 schreib XR keine Berechnungen
79 Leser EIN
80 räume Akkum.
81 . lies GZll.,· BLZ. auf S15
95 schreib G B. Z. auf 516
96 rücke 7 um eine halbe Bl. Z. auf Sl
97 Makrobewc. V-Achse
98 vor
99
Die in der ersten Spalte der Tabelle II aufgeführten Operationen entsprechen denen, die in Spalte 4800 des Bcfchlsschemas von Fig. 17 in allgemeiner Form angegeben sind. Alle Operationen, die in der ersten Spalte der Tabelle Il auftreten, werden daher durch einen Steuerimpuls vom Ausgang 4800 des logischen Zeiibasis-Schaltnetzes 67 und einen Impuls vom Ausgang GOl des Zuordncrs 221 ausgelöst, sofern eine solche Operation nur auszuführen ist, wenn das nächste Wegstück eine Gerade ist.
Zu Beginn der Multiplikation J ■ Q wird der Multiplikator Q im Programmschritt 4817 (GOl) aus dem aktiven Register 103(3 geholt, wenn die dem Register zugeordnete Pronrammtoranordnunc 389 einen
impuls abgibt. Diese Operation wird auch in den Programmschritten 4817 (G 02) und 4817 (C 03) ausgeführt, so daß die Programmtoranordnung so geschaltet ist, daß sie einen l^escimpuls einfach dann abgibt, wenn Signale auftreten, die den Programmschritt 4817 darstellen (Bedingung 3).
Der Multiplikator Q wird in (nicht gezeigte) Hilfsspeichereinrichtungen gebracht, die für diesen Zweck im Digitalrechner 53 vorgesehen sind. Soch eine Speichereinrichtung kann z. B. genauso ausgebildet sein wie das aktive Register 1830.
Als nächstes wird im Programmschritt 4818 (GOl) die VVcgkomponente / unter dem Einfluß eines Leseimpulses der Programmtoranordnung 391 (Bedingung l>) aus dem aktiven Register 1017 «eholt. Auch diese Zahl wird im Digitalrechner 53 in einer (nicht gezeigten) mit dom aktiven Register 1017 übereinstimmenden Speichervorrichtung gespeichert.
Gleichzeitig mit dem Herauslesen der Wegkomponente 7 aus dem Register 1017 erhält der Digitalrechner 53 auf seinen Steucrcingang X einen Multiplizierimpuls von der Programmtoranordnung 393 (Fig. 9c), wenn bei dieser Anordnung die vierte der aufgeführten sieben Bedingungen vorliegt. Die Multiplikation 7 ■ Q erfolgt bei dem hier beschriebenen Rechner in den Programmschritten 4SI') (GOl) bis 4864 (GO!). Für die vier Stellen der Mantisse des Makrobcwcgungsquoticntcn Q stehen also jeweils zehn Programmschriltc zur Verfügung, neben weiteren Programmschritten, um das Produkt in Übereinstimmung mit der Charakteristik von O zu verschie- - 50 bcn. Das Produkt erscheint im Antwortregister 53« während des Programmschrittes 4864 (GOl). und zwar in richtiger Stellung in bezug auf das Dezimalkomma des Multiplikanden /. das zwischen der dritten und vierten Stelle steht (vgl. / in Fig. 15).
\Jm für die Länge des Wegstückes sowie für die innerhalb dieses Stückes zu fahrende Geschwindigkeit praktische Werte zu erhalten, sei angenommen, daß die vierte Stelle des im Akkumulatorregister 53 ab stehenden Produktes eine Null ist und daß die erste nicht 0 lautende Stelle des Produktes in der fünften oder in einer noch niedrigeren Stufe des Registers erscheint. Alle nicht 0 lautenden Stellen des Produktes werden in einigen oder allen Stufen 5 ... 12 des Registers aufbewahrt, wobei die letzten vier Stufen das Teilregister 53 b bilden und die in ihnen stehenden Ziffern Millionstel, zehn Millionstel, hundert Millionstel und tausend Millionstel (oder Milliardstcl) Zoll darstellen. Intolce ihrer extrem kleinen Große kön-
nen diese Zifl'ern von den Regelkreisen 75 und 77 nicht ausgewertet werden. Hs wäre also wünschenswert, diese ZilTcrn zu streichen und statt dessen nur die vier Stellen des Produktes ./ ■ Q zu verwenden. die in den Stufen 5, 6, 7 und 8 des Antwortregisters 53rt stehen, wodurch sich die Verarbeitung dieses Produktes vereinfachen ließe. Würde man jedoch die vier niedrigsten Stellen in den Stufen 4 ... 1 2 einfach weglassen, so würde schließlich ein immer größerer Fehler entstehen. Um dennoch eine Vereinfachung ohne Beeinträchtigung der Genauigkeit zu erreichen, ist gemäß einem weiteren Merkmal der vorliegenden Erfindung eine Methode sowie eine Einrichtung zur Durchführung dieser Methode vorgesehen, um die im Antworlregister 53« stehenden Stellen des Produktes ./ · Q in ein erstes Register und die im Teilregister 53/» stehenden Stellen in ein zweites Register einzuspeichern. Erfindungsgemäß werden dann nur die im ersten Register stehenden Ziffern verarbeitet, um aus ihnen Makropositionen auf der Y-Aclisc zu bilden. Hierdurch verringert sich der für die Berechnung dieser Positionen erforderliche Speicheraufwand.
Die Multiplikation J ■ Q wird in regelmäßig wiederkehrenden Intervallen durchgeführt, wobei bei jeder Multiplikation außerdem die letzten vier Stellen des vorhergehenden Produktes J ■ Q, die durch die vorhergehende Multiplikation / ■ Q entstanden und im zweiten Register stehen, zum Resultat addiert werden. Die letzten vier Stellen der Summe werden dann abgetrennt und separat gespeichert. Auf diese Weise wird jede Multiplikation J ■ Q mit einer Genauigkeit von einem Milliardstcl Zoll durchgeführt. Obwohl also die letzten vier Stellen des Produktes im Augenblick nicht benutzt werden, werden sie als unbenutzter Teil des Produktes mitgeführt, um sie bei der nächsten Multiplikation mit zu berücksichtigen und dadurch sicherzustellen, daß sich im Gesamtrcsultat keine nennenswerte Fehleranhäufunri bemerkbar macht.
Wie Tabelle II zeigt, tritt beim Abtrennen des Restes die erste Operation im Programmschritt 4868 (CjOI) auf, in welchem die Schreibtore des Registers 107 IK durch einen Schreibimpuls der für dieses Register vorgesehenen Programmtoranordnung 395 (Bedingung 4) aufgetastet werden. Dadurch werden das Vorzeichen und die Stellen des Produktes J ■ Q. die in der Vorzeichenstufe sowie in den Ziffemstufcn 5, 6. 7 und 8 des Antwortregisters 53λ stehen, in das Register 107 1 Y übertragen und dort gespeichert.
Im nächsten Programmschritt 4861J (CiOl) erhält der Steuereingang ZR 1 des Digitalrechners 53 einen Steuerimpuls von einer Programmtoranordnung 397 in Fig 1Jc (Bedingung 4). Unter dem Hinfluß dieses Steuerimpulses wird der Teil R 1 des Akkumulatorregisters 53 oft geräumt, so daß in allen Stufen I . . 8 des Akkumulatorregisters Nullen stehen. Nun muß noch der Inhalt der Stufen " ... 12 des Akkumulatorregisters 53ab, der die restlichen Stellen des Produktes J· Q darstellt, in das Register 111 YR gebracht werden. Zu diesem Zweck werden die im Teilregister 53 ft stehenden Ziffern im nächsten Programmschritt 4870 (CiOl) um vier Stellen nach links verschoben, indem der Stcucreingang SI.4 des Digitalrechners53 einen Schicbeimpuls erhält. Dieser Impuls wird von der Programmtoranordnung 347 (Bedingung 7) erzeugt und bewirkt auf die im Zusammenhang mit Fig. 14 beschriebene Weise, das der Inhalt des Akkmnulatorregisters S3ab im selben Programmschrilt um vier Stellen nach links verschoben wird. Auf diese Weise gelangen die Ziffern aus dem Teilregister 53Λ, das keine Vorrichtungen enthält, um seinen Inhall auf die Ausgangssammclschiene 61 des Rechners zu leiten, in die Stufen 5 ... 8 des Antwortregisters 53if. das die entsprechenden Verbindungen zur Sammelschiene, nämlich die Leitungszweige COTS ... COT-S. besitzt. Über diese Leitungszweige werden
ίο das Vorzeichen und die vier niedrigsten Stellen des Produktes J ■ Q, die jetzt in der Vorzeichenstufe sowie in den Stufen 5 ... 8 stehen, in das Register 111 YR gebracht, in dem eine die Übertragung von Daten in das Register 111 YR steuernde Programm-
IS toranordnung 399 (Bedingung 3) einen Schreibimpuls auf die Schreibtore dieses Registers gibt.
Die Durchführung der Multiplikation / ■ Q in der Programmspaltc 49()0 (C7 01) erfolgt in den gleichen Programmschriltcn wie die Multiplikation J ■ Q,
so außer daß nicht ./, sondern / in den Computer gebracht wird und das Produkt nicht von den Registern 107 JY und 111 YR. sondern von den Registern 109.1A' und 113Λ7? aufgenommen wird. Kurz gesagt, wird die Wegkomponentc / im Programmschritt 4918 (GOl) vom Register 99/ durch einen Leseimpuls der Programmtoranordnung 400 (Bedingung 8) abgerufen und über die Eingangssammelschiene 59 in eine (nicht gezeigte) Speichereinrichtiinsi des Digitalrechners 53 gebracht. Der als Multiplikalor dienende Makrobewegungsquotient Q wird im Programmschritt 4917 (C7 01) erneut in seine Speichervorrichtung im Digitalrechner 53 geholt.
im Programmschritt 4918 (GOI) erhält außerdem der Computer einen Multiplizierimpuls von der Prognimmloianordnung 393 (Bedingung 3), worauf er in den Programmschriiten 4919 (CJOl)... 4964 (GOl) die Multiplikation / ■ Q ausführt. Das Vorzeichen und die ersten vier Stellen des Produktes, die in der Vorzeichenstufe sowie in den Stufen 5. 6. 7 und 8 des A'-iivvorircgisters 53 ο stehen, werden im Programmschritt 4%8 (CiOl) zum Register 109 !A' gebracht und dort durch einen Schreibimpuls einer diesem Register zugeordneten Programmtoranordnung 401 (Bedingung 2) eingeschrieben. Danach werden im Programmschrilt 41Hi1J (GOl) die ersten vier Stellen aus dem Antworlregister 53 α entfernt, indem die Programmtoranordnung 397 (Bedingung 5) einen Räumimpuls erzeugt. Anschließend werden die vier letzten Stellen des Produktes durch eine im Programmschritt 4970 (GOl) unter dem Einfluß eines Schiebeimpulses der Programmtoranordnung 347 (Bedingung 8) erfolgende Verschiebung um vier Stellen nach links vor den Stufen 9 ... 12 des Teilregisters 53 ft in die Stufer 5 ... 8 des Antwortregisters 53 α gebracht. Im nachstcn Programmschritt 4971 (GOl) werden das Vorzeichen und die letzten vier Stellen des Produktes vor den Stufen 5 ... 8 des Antwortregisters 53 α zum Register 113 XR gebracht und dort unter dem EinfluE eines Schreibimpulses der diesem Register zugeord· neten Programmtoranordnung403 (Bedingung 2) eingeschrieben.
Als Ergebnis der vorstehenden zwei Reihen vor Berechnungen befinden sich die Produkte / · Q unc 1 ■ Q nunmehr in ihren entsprechenden aktiven Spei· cherregistcrn. Es ist nun an der Zeit, die Zahl G au· dem Zwischenregistcr 47 G in das aktive Rcgistei 105^ zu bringen. Dies kann jetzt geschehen, da da! Wegstück 27α vollendet ist und die gegenwärtig irr
509 507/4(
aktiven Register 105 G stehende Zahl G nicht mehr benötigt wird.
Um G vom Zwisclicnregistcr in das aktive Register übertragen zu können, wird das Antwortregister 53« im Programmschritt 4973 (GOl) durch einen Räumimpuls der Programmtoranordnung 351 (Bedingung 18) geräumt und die im Zwischenregister 47 G stehende Zahl im selben l'rogrammschritt durch einen Lcseimpuls eines Programmtors 251 G abgerufen. Die Zahl G gelangt über die Eingangssammelschiene 59 in den Digitalrechner 53 und erscheint im nächsten Programmschritt 4974 (G 01) in dessen Antwortregister 53a. Noch im selben Programmschritt wird G in das aktive Register 105 G eingeschrieben, indem das Register einen Schreibimpuls von einem Programmtor 407 erhält. Damit ist die Übertragung aller Grunddaten, die für die Erzeugung des nächsten geraden Wegstückes 27 b benötigt werden, beendet. Im Programmschritt 4995 (GOl) erhält daher der Einschalt-Flipflop 257 (Fig. 91) des Lochstreifenleser einen Steuerimpuls vom Programmtor 269, worauf die das nächste Wegstück 27 c darstellenden Daten vom Lochstreifen 37 gelesen und in die Zwischenregister 47 gebracht werden.
b) Umschalten auf Betriebsstufc 1
Nachdem alle notwendigen Informationen in den aktiven Registern stehen und damit begonnen worden ist, die Daten für das nächste Wegstück vom Lochstreifen zu lesen und in die Zwischenregister zu bringen, ist es nunmehr an der Zeit, das System von der Betriebsstufe, in der Daten übertragen und generelle Berechnungen /orgenommen wurden, in die Betriebsstufc umzuschalten, in der die übertragenen und generell berechneten Daten interpoliert werden, um ein lineares Wegstück zu erzeugen. Zu diesem Zweck ist eine zur Programmtoranordnung 183 gehörende Schaltung vorgesehen, um den Blockende-Zählcr 186 (Fig. 9e) von 514 über Sl5 und Sl6 auf 51 zu stellen, so daß durch sein am Ausgang S1 des Zuordners 187 auftretendes Ausgangssignal die Steuerleitung Ml des Betriebsstufenwählers 69 erregt wird. Wie bekannt, wird das System hierdurch in die Betriebsstufc 1 geschaltet.
Zur Weiterschaltung des Blockendc-Zählers 186 vom Zahlcnstand S 14 auf Sl enthält die Programmtoranord! ung 183 drei Programmlore, die beim Auftreten der Programmschritte 4997, 4998 und 4999 (Bedingungen 19, 20 und 21) nacheinander einen Weiterschaltimpuls auf den Zähler geben. Hierdurch wird das System am Ende des Programmschrittes 4999 (GOl) in die Betriebsstufe 1 umgeschaltet. In dieser Betriebsstufe wird ein sich periodisch wiederholender Programmschrittzyklus von eintausend aufeinanderfolgenden Programmschritlen 1000 .. . 1999, die einem Programmschema wie etwa dem von Fig. 10c entsprechen, an den Ausgängen der UND-Glieder 175 des logischen Zeitbasis-Schaltnetzes in Verbindung mit dem Zehnerumsetzer 169 und dem Einerumsetzer 167 des Zeitbasis- und Taktgebersystems 63 von F i g. 9 b erzeugt.
b. Neuberechnung der Makro- und Mikropositionen mit Hilfe von Makro- und Mikrobewcgungen
An dieser Stelle soll ein zusammenfassender Überblick gegeben weiden über die bis jetzt ausgeführten Operationen sowie über die Operationen, die als nächste beim Erzeugen eines geraden Wegstückes auftreten.
Als Vorbereitung auf die Erzeugung des Weg-Stückes 27 b und während das System noch mit der Ausführung des vorhergehenden Wegstückes 27 a beschäftigt war, wurden die Makrobewegungswerte AX und I V auf der Grundlage der aus den Zwischenregistern 47 abgerufenen Informationen und den von ίο der vorhergehenden Berechnung stammenden unbenutzten Resten XR und YR berechnet. Benutzt werden nur die ersten vier Stellen der Makrobewegungswerte AX und I Y, die in den Registern 109 .1* und 107 I Y stehen, die neuen Reste XR und YR werden als Übertrag mitgeführt. Diese Makrobewegungswerte stellen die Bewegungen dar, die im nächsten Arbeitsspiel oder Zeitabschnitt .17" auf den Bewegungsachsen A' und Y auszuführen sind. (Der Begrili »Zeitabschnitt .1T« oder »Arbeitsspiel« bezeichnet eine Zeitspanne, die im vorliegenden Ausführungsbeispiel entsprechend der Dauer eines Programmschrittzyklus des Programmschrittgencralors 161 20 Millisekunden lang ist und sich wiederholt.) Das System muß nun in Betriebsstufe I aufeinanderfolgende Zeitabschnitte ,17 in Realzeit abmessen und die in den Registern 109 IA' und 107 IV stehenden Makrobewegungswerte dazu benutzen, für jeden folgenden Zeitabschnitt. IT die entsprechenden Makropositionen in der X- und der V-Achse zu bilden, die am Ende des Zeitabschnittes erreicht werden sollen.
Die Vorrichtung, mit der das Abmessen aufeinanderfolgender Zeitabschnitte I T in Realzeit vorgenommen wird, wurde bereits beschrieben. Es ist der Programmschrittgenerator 161, der für einen Umlauf 20 ms benötigt. Die Makropositionswerte für die X- und die Y-Achse werden auch mit >■ Sollstellung .Y-Achse {XCr)« bzw. »Sollstellung y-Achse {YCP)« bezeichnet. Zur Aufnahme von Daten, die zu Beginn die Koordinaten X und 1' des Anfangspunktes P1 des 4" geraden Wegstückes 27 b darstellen, sind Vorrichtungen in Fonrfder Register 117 XCP und 115 YCP vorgesehen. Ebenso sind Vorrichtungen vorgesehen, um diese bestimmten Koordinaten in die Register 115 YCP und 117 ATP einlesen zu können. Zur Erzeugung von Makropositionen werden die in den Registern Ί 17 ATP und 115Y(T stehenden Makropositionswerte neu berechnet (erhöht), um für jede der beiden Koordinaten .Y und Y eine neue Maktoposition ?u bilden. Zu diesem Zweck sind Vorrichtungen vorgesehen, die veranlassen, daß der Digitalrechner 53 die in den Registern 109 IX und 107 1Y stehenden Makrobewegungswerte zur Neuberechnung der in den Registern 117 ATP und 115 YCP stehenden Makropositionen benutzt. Gemäß einem besonderen Merkmal der Erfindung sind ferner Vorrichtungen und ein Verfahren zur Erzeugung von Daten vorgesehen, die zwischen Makropositionen liegende Mikropositionen in beiden Bewegungsachsen darstellen. Diese Mikropositionen beinhalten Punkte, die öo zu bestimmten, innerhalb eines Zeitabschnittes . 1T in zeitlichen Abständen auftretenden Augenblicken erreicht werden sollen. Zur Realisierung dieses Erfindungsmerkmals werden aufeinanderfolgende Zeitab-
s schnitte -^- in Realzeit abgemessen, wobei N Zeitintervalle jeweils einem Zeitabschnitt 1T entsprechen. Ferner werden aus den Makrobewegungswerten, die in den Registern 109 iX und 107 t Ϋ stehen, Mikro-
positionswerte gewonnen, die am Ende jedes Zeitintervalls
/I T A X .
um und
1 Y
Einzelschritte modifiziert werden.
Zu diesem Zweck sind zwei Speichcrvonichtungcn vorgesehen, die Register 121 XSC und 119 YSC. Ferner sind Vorrichtungen vorgesehen, um in den Registern 121 XSC und 119 YSC zunächst die Daten aufzunehmen, die die Koordinaten des Anfangspunktes P1 des geraden Wegstückes 27 Λ darstellen. Außerdem sind Vorrichtungen vorgesehen, die bewirken, daß der Digitalrechner 53 in jedem Zeitintervall — die im Register 109 .IA" stehenden Daten dazu benutzt, um aus ihnen die Größe -^- zu gewinnen, und anschließend die im Register 121 XSC stehenden Daten bearbeitet, um den durch XSC dargestellten Koordinatenpunkt um -r^- zu ändern. Ebenso sind Vorrichtungen vorgesehen, die den Rechner veranlassen, in jedem Zeitintervall -T7- zunächst die im Register 107 stehenden Daten zu verarbeiten, um aus
ihnen die Größe
und anschließend
— zu gewinnen,
die im Register 119 YSC befindlichen Daten zu verarbeiten, um den durch YSC dargestellten Koordinatenpunkt um — zu ändern.
Fig. IH zeigt ein allgemeines Befehlsschema, in dem die Operationen aufgeführt sind, die vom System in Betricbsslufe 1 in jedem Arbeitsspiel ausgeführt
ίο werden. Zu diesen Operationen gehört unter anderem die Bildung der Makro- und Mikropositioncn. In jeder 100 Programmschritte umfassenden Spalte des Bcfehlsschemas wird in den ersten zehn Schritten ein neues Paar Mikropositionen erzeugt. Ein neues Paar Makropositionen wird in jedem Arbeitsspiel nur einmal gebildet, und zwar in den Programmschritten H!... 14 der ersten Spalte des Bcfehlsschemas. Die in diesen Programmschritten auftretenden Operationen sind in Tabelle 3 aufgeführt und sind in allen vier Betriebsstufen des Systems gleich.
In Tabelle 111 sind die zehn Spalten des Programmschemas mit .¥ 000 . . . ,Y 900 bezeichnet, um anzudeuten, daß die erste Stelle der Programmschrittnummer, die die Betricbsslufe angibt, unwesentlich is!
und daß diese Tabelle für alle Betriebsstufen gilt. Alk Programmtorc, die zur Auslösung der in Tabelle II aufgeführten Operationen vorgesehen sind, erhalter daher das Eingangssignal mit dem höchsten Stellen wert vom Hundertcrumsctzer 171 des Zeitbasis- um Taktiiebersvstcms 63 von Fi c. 9b.
Tabelle Ul Operationen, die in allen Betri-bsstufen auftreten
.V 000 00 räume Akkum. A'U)O A' 200 A'400 j .V 300 A' 500 X 600 I Λ" 700
I
A HOC) X 900
lies Λ X > lire YCP
01 schieb re.
02 lies XSC —■ J
03
04
05 sehr. XCS, r. A.
lies 1 Y
06 »lies 1 υ
07 scm cd rc.
08 lies rii
09
10
sehr. / .SC
11 r. A., lies XCP
12 lies iX
sehr. XCP
13 r. A., lies YCP
14 lies 1 Y
15 sehr. YCF
r. A.
>
Es soll nunmehr die Erzeugung der Mikropositionen im einzelnen betrachtet werden. Als erstes wird das Antwortregister53a geräumt. Dies geschieht im Programmschritt ΛΌ00 (Tabelle 111) durch einen Räumimpuls der Programmtoranordnung 351 (Bedingung 1). Im selben Programmschritt erhält das Register 109 Λ X einen Leseimpuls von einer ihm zugeordneten Programmtoranordnung 409 (Bedingung 1), «/oQurch der Makrobewegungswert i X in das Antwortregister 53a gelesen wird. Die nächste im Programmschritt X 001 auszuführende Operation besteht darin, aus dem Makrobewegungswert AX einen
Mikrobewegungswert —rj- abzuleiten. Im vorliegenden
Beispiel ist W=IO, entsprechend der Anzahl kleinerer Zeitintervalle, in die der Zeitabschnitt .17' unterteilt ist. Wäre Λ T in 20 kleinere Zeitintervalle unterteilt, hätte also das Programmschema 20 Spalten, würde eine in einem solchen Zeitintervall auszuführende Mikrobewegung einem Zwanzigstel einer Mikrobewegung entsprechen.
Um den Makrobewegungswert AX durch 10 zu dividieren, wird dieser einfach um eine Stelle nach rechts verschoben. Dies geschieht im Programmschritt ΑΌ01 unter dem Einfluß eines entsprechenden Schiebeimpulses, der von einer für diesen Zweck vorgesehenen und in Fig. 9c dargestellten Programmtoranordnung 411 (Bedingung 1) auf den Steuereingang SAR des Digitalrechners 53 gegeben wird. Infolge der Rechtsverschiebung des Makrobewegungswertes Λ X steht somit im nächsten Programmschritt ΛΌ02 der Mikrobewegungswert für die A"-Achse,
nämlich rrzr, im Antwortregister 53«. Diese Mikrobewegung stellt die Strecke dar, die auf der A'-Achse im ersten Zehntel des Zeitabschnittes AT abzufahren ist.
Um die erste Mikroposition auf der -Y-Achse für den Zeitabschnitt AT zu erzeugen, wird der im Ant-
Wortregister 53« stehende Mikrobewegungswert -r-r
zu der gegenwärtig im Register 121 XSC stehenden Mikroposition addiert. Bei dieser gegenwärtig im Register 121 XSC befindlichen Mikroposition handelt es sich um die A'-Koordinate des Anfangspunktes des geraden Wegstückes 27 b, die am Ende des vorhergehenden Wegstückes 27 « in das Register 121 XSC gebracht worden war. Um den Mikrobewegungswert
-zrrr zum letzten Mikropositionswert XSC zu addieren,
wird letzterer im Programmschritt ΑΌ02 vom Register \2l XSC in den Digitalrechner 53 gebracht, indem das Register einen Leseimpuls von einer ihm zugeordneten Programmtoranordnung 412 (Bedingung 1) erhält. Wie zuvor im Abschnitt C 1 d beschrieben, wird eine Zahl, die ohne Ankopplung eines besonderen Steuerimpulses an einen der zehn Steuereingänge des Rechners in den Rechner gebracht wird, zu der im Antwortregister 53 c/ stehenden Zahl algebraisch addiert. Am Ende des dem Programmschritt ΛΌ02 zugeordneten Addierzyklus steht also im Antwortregister 53« die Summe, die aus dem vorhergehenden, dem Register 12! XSC entnommenen Mikropositionswert XSC und dem jetzigen Mikrobcwc-
1X
gungswcrt'— gebildet wurde. Diese Summe, die die
erste Mikroposition XSC für den hier zu beschreibenden Zeitabschnitt IT darstellt, wird im Proinammschrilt ΛΌ05 vom Antwortregister 53α in das Register 121 XSC gebracht, indem dieses Register einen Schreibimpuls von einem Programmtor 413 erhalt. Dieses Programmtor steht in F i g. 9 g rechts vom Register.
Die vorstehenden vier Operationen, die in den Programmschritten ΛΌΟ0, ΛΌ01, ΑΌ02 und .V005 ausgeführt werden, stellen die Neuberechnung der im Register 121A\S'C stehenden Mikroposition dar. Eine
ίο ähnliche Reihe Operationen wird anschließend in Verbindung mit dem im Register 119 YSC stehenden Mikropositionswert YSC vorgenommen, um auch diese Mikroposition neu zu berechnen. Diese Operarationen beginnen im Programmschritt ΛΌ05 mit der Räumung des Antwortregisters 53a, um zu verhindern, daß der Mikropositionswert XSC auf den Augendcn-Eingang des Computers gelangt. Zu diesem Zweck gibt die Programmtoranordnung 35i im Programmschritt X005 einen Räumimpuls CAR auf den entsprechenden Steuereingang des Digitalrechners 53. In der Progiammtoranordnung 351 ist dies die Bedingung 2, die drrt mit 05 bezeichnet ist. Der Grund, weshalb diese Bedingung nicht mit 005 bezeichnet ist, liegt darin, daß der Räumimpuls CAR aus später noch aufzuzeigenden Gründen auch in den Programmschritten 105, 205 ... 905 erzeugt wird. Durch die Programmschrittnummer 05 werden somit alle 10 Bedingungen erfaßt. Weitere solcher Mehrfachoperationen werden ausgelöst durch 00 usw.
Im Programmschritt X 005 wird außerdem der Makrobewegungswert .1 Y vom Register 107 1 Y in das Antwortregister 53« gebracht, indem das Register 107.11' einen Impuls von einer Programmtoranordnung 415 (Bedingung 1) erhält. Im nächsten Programmschritt ΑΌ06 wird der im Antwortregister 53« stehende Makrobewegungswert IY um eine Stelle nach rechts verschoben. Hierdurch wird der Wert durch 10 dividiert, so daß im Antwortregister 53« jetzt der Mikrobewegungswert für die V-Achse, nämlich '-Tq . steht. Ausgelöst wird diese Rechtsverschiebung durch einen entsprechenden Schiebeimpuls, den die Progiammtoranordnung 411 (Bedingung 2) auf den Steuercingang SAR des Digitalrechners 53 gibt.
Um den im Antwortregister 53« stehenden Mikrobewegungswert '— zum vorhergehenden Mikropositionswert YSC zu addieren, wird der Mikropositionswert vom Register 119 YSC in den Digitalrechncr53 geholt, während dieser als Addierer arbeitet. Dies geschieht im Programmschritt ΛΌ07 mit Hilfe eines Leseimpulses, den das Register 119 YSC von einer Programmtoranordnung 417 (Bedingung 1) erhält. Die Summe, die den nächsten Mikropositionswert YSC für die V-Koordinate darstellt, wird dann im Programmschritt XO10 vom Antwortregister 53« über die Ausgangssammelschiene 61 in das Register 119Y.ST gebracht, indem dieses Register einen Schreibimpuls von einem Programmtor 419 erhält.
Zusammengefaßt werden also durch den vorstehenden in den Programmschritten ΛΌ00 .. . ΑΌ10 auftretenden Opcrationsablauf die in den Registern 121 Λ'.ST und 119KST stehcden Mikropositionen neu berechnet, so daß in diesen Registern nunmehr jeweüs der erste von zehn Mikropositionswerten für den Zeitabschnitt .1 7' steht.
Der erste Schritt in der zur Bildung neuer Makropositionen durchzuführenden Neuberechnung der
Werte in den Registern 117XCP und 115 YCP besteht in der Räumung des Antwortregisters 53 a. D:.es geschieht im Programmschritt AO10, indem der entsprechende Steuereingang des Digitalrechners 53 einen Räumimpuls CAR von der Programm türanordnung 351 (Bedingung 3) erhält. Danach wird im selben Programmschritt der gegenwärtig im Register 117 XCP stehende Makropositionswert für die AT-Koordinate abgerufen und in das Antwortregist?,r 53 a gebracht. Dies geschieht, indem das Register 117A1CP einen Leseimpuls von seiner Prograramtoranordnung 421 (Bedingung 1) erhält. Im Programmschritt AO11 wird der im Register 109/1A1 stehende Makrobewegungswert AX durch Ankopplung eines von der zugehörigen Programmtoranordnung 409 (Bedingung 10) erzeugten Leseimpulses an das Register in den Rechner geholt und automatisch zu dem dort befindlichen Makropositionswert XCP addiert. Die Summe, die den neuberechneten Makropositionswert XCP für die A'-Koordinate beinhaltet, erscheint im Antwortregistor53ö im nächsten Programmschritt AO12 und wird noch im selben Programmschritt in das Register 117 XCP eingeschrieben, indem dieses Register einen Schreibimpuls von seiner Programmtoranordnung 423 (Bedingung 1) erhält.
Eine ähnliche Reihe Operationen wird anschließend zur Neuberechnung des im Register 115 YCP stehenden Makropositionswertes durchgeführt Sie beginnt mit der Räumung des Antwortregisters 53 α im Programmschritt AO12, um den neuberechneten Makropositionswert XCP zu entfernen (Räumimpuls CA R der Programmtoranordnung 357, Bedingung 4). Im selben Programmschritt wird der gegenwärtige Makropositionswert YCP vom Register 115 YCP in das geräumte Antwortregister 53 a gebracht, indem das Register einen Leseimpuls von seiner Programmtoranordnung 425 (Bedingung 1) erhält. Im nächsten Programmschritt AO13 wird der Makrobewegungswert A Y für die Y-Koordinate zu dem gegenwärtigen Makropositionswert YCP im Antwortregister 53a addiert, indem der Makrobewegungswert A Υ vom Register 107 auf die Eingangssammelschiene 59 des Rechners gelesen wird. Zu diesem Zweck erhält das Register einen Leseimpuls von seiner Programmtoranordnung415 (Bedingung 10). Die Summe erscheint im Antwortregister 53 a im nächsten Programmschritt ΑΌ14 und wird in das Register 115 KCP eingeschrieben, indem dieses Register einen Schreibimpuls von seiner Programmtoranordnung 427 (Bedingung 1) erhält. Damit ist die Neuberechnung der Makropositionen beendet. In den Registern UTXCP und 115 YCP stehen jetzt Makropositionswerte, die die Koordinaten X und Y darstellen, welche am Ende des im Befehlsschema von Fig. 18 dargestellten Zeitabschnittes Λ T erreicht werden sollen. Um den Rechner auf weitere Operationen vorzubereiten, wird sein Antwortregister 53 α im nächsten Programmschritt X 015 durch einen Räumimpuls CA R der Programmtoranordnung 351 (Bedingung 5) geräumt.
Die Operationen zur Bildung von Mikropositionen, die in dem von Spalte ΛΌ00 in Tabelle III dargestellten ersten Zehntel des Arbeitsspiels auftreten, wiederholen sich jeweils in den entsprechenden Programmschritten der folgenden, durch die Spalten A' 100 ... A1SOO dargestellten acht Zehntel des Arbeitsspiels. In der Tabelle ist dies durch waagerechte Pfeile angedeutet, die dort beginnen, wo die betreffenden Operationen in Spalte A'000 auftreten, und von dort durch die entsprechenden Programmschritte der Spalten nach rechts führen. So zeigt z. B. der waagerechte Pfeil, der bei »lies AXa im Programmschritt 00 der Spalte A'000 beginnt, daß die gleiche Operation, nämlich das Herauslesen von AX aus dem Register 109.1A-, auch im Programmschritt 00 der Spalten X 100... X 800 auftritt, also in den Programmschritten A' 100, *200 .. .A1SOO. Die zur Auslösung dieser Leseoperationen erforderlichen Auftastirrpulse sind
ίο in der Programmtoranordnung 409 in ί \ 9 h als Bedingungen 2 ... 9 aufgeführt. Ähnlich ι';.... auch die zur Auslösung aller übrigen Operationen in den Spalten X 200 ... X 800 der Tabelle III erforderlichen Auftastimpulse in den betreffenden Programmtoran-Ordnungen angegeben, wie eine Betrachtung anderer Teile von F i g. 9 zeigt. Mit Hilfe dieser Einrichtungen wird im jeweils sechsten Programmschritt von neun aufeinanderfolgenden, jedoch zeitlich getrennten 10-Frogrammschritt-Folgen eine neugebildete Mikroposition für die AT-Achse in das Register ill XSC geschrieben. In ähnlicher Weise wird im elften Programmschritt jeder Folge eine neue Mikroposition für die Y-Achse in das Register 107 YSC geschrieben. Jeder neugebildete Mikropositionswert XSC dif-
feriert gegenüber dem vorhergehenden Mikropositionswert um -Tg- , und ebenso differiert jeder MikroposilionsAvert YSC gegenüber dem vorhergehenden
AY
um -szr-.
Um eventuelle Fehler auszugleichen, erfolgt die Neubildung der letzten Mikroposition in Spalte X 900 der Tabelle III unter Benutzung der Makropositionswerte XCP und YCP. Diese Werte, die in den Registern WlXCP und 115 YCP stehen, enthalten nicht die kleinen, den Mikropositionswerten XSC und YSC anhaftenden Ungenauigkeiten, denn sie wurden ja durch Addieren der ganzen Makrobewegungswerte A X und ,1 Y zu den vorherigen Makropositionswerten XCP bzw. YCP gewonnen. Sie stellen somit die korrekten Werte für die Mikropositionen A"SC und YSC der zehnten Spalte A'900 in Tabelle III dar. Dementsprechend wird im ersten Programmschritt 00 der Spalte X 900 das Antwortregister 53 a durch einen Räuniimpuls der Programmtoranordnung 351 (Bedingung 1) geräumt. Im selben Programmschritt wird außerdem der Makropositionswert XCP vom Register 117A1CP in das geräumte Antwortregister 53a geholt, und zwar unter dem Einfluß eines Leseimpulses, den das Register von seiner Programmtoranordnung 421 (Bedingung 2) erhält. Im Programmschritt X 905 wird dann der Makropositionswert A'CP in das Register 121 A'SC geschrieben, indem dieses Register einen Schreibimpuls vom Programmtor413 erhält. Im selben Programmschritt wird, wie in allen vorhergehenden Spalten der Tabelle 3, das Antwortregister 53 α durch einen Räumimpuls der Programmtoranordnung 351 (Bedingung 2) Geräumt und der im Register 115 YCP stehende Makropositionswert YCP durch einen Leseimpuls der Programmtoranordnung 425 (Bedingung 2) in das Antworlrcgister geholt. Dieser Wert wird als neue Mikroposition YSC im Programmschritt X 910 vom Antwortregister 53 α in das Register 119 YSC übertragen, indem dieses Register einen Schreibimpuls vom Programmtor 419 erhält.
In Fig. 18 sind die Neubildungen der Mikropositionen in den Registern 121A"SC und 119 YSC durch
die beiden waagerechten Balken am oberen Rand des Programmschemas dargestellt. Die Neuberechnungen der Makropositionen in den Registern 117ATP und USYCP umfassen die ersten beiden Operationen, die im Anschluß an die Mikropositions-Neubildungen in der ersten Spalte des Programmschemas in Blockform dargestellt sind. Diese Operationen treten in allen Programmschemata auf, die sich mit der Durchführung linearer Interpolation befassen, und werden in jedem Arbeitsspiel, also alle 20 ms, ausgeführt.
Die Erzeugung von Makro- und Mikropositionen, wie sie das Befehlsschema von Fig. 18 zeigt, wiederholt sich ständig, so daß auf dem zu erzeugenden Wegstück immer mehr Punkte abgefahren werden, bis schließlich ein Punkt erreicht wird, an dem sich die eintr der beiden Koordinaten X und Y zugeordnete Makroposition dem für die betreffende Koordinate programmierten Endpunkt P., des Wegstückes 27 b bis auf einen vorbestimmten "Abstand genähert hat. Erfindungsgemäß sind für diesen Fall Vorkehrungen getroffen, den bestimmten Zeitabschnitt. 1T, in dem der Endpunkt P2 überfahren wird, d. h. in dem die Makropositionswerte XCP und YCP sich ändern und Koordinatenpunkte bezeichnen, die jenseits des von den Endpunkt-Koordinaten XCEP2 und YCEP2 definierten Endpunktes P2 des Wegstückes 27 b liegen, um M Zeitabschnitte A T im voraus zu bestimmen. Zu diesem Zweck wertet der Digitalrechner S3 in jedem Zeitabschnitt .1T die Daten aus, die eine bestimmte der beiden Endpunkt-Koordinaten XCEP und YCEP sowie die entsprechende Makroposition XSC bzw. YSC und die entsprechende Makrobewegung AX bzw. A Y bezeichnen, um ein Signal zu erzeugen, das die Vergleichsgrößen 1. der gewählten Endpunkt-Koordinate und 2. der Summe von der entsprechenden Makroposition und der M-fachen entsprechenden Makrobewegung darstellt.
Unter dem Einfluß dieses vom Computer erzeugten Signals, das die Vergleichsgrößen (1) und (2) darstellt, wird im ersten Zeitabschnitt Λ 7", in dem die zunächst kleinere der Vergleichsgrößen (1) und (2) zur größeren wird, ein Warnsignal erzeugt. Wie die nachstehende ausführliche Beschreibung noch zeigt, wird durch diese Umkehrung von Relativgrößen ein Überfahren der programmierten Endpunkt-Koordinate vorausgesagt. Dieses Merkmal der Voraussage eines kommenden Überlaufs wird nachstehend mit »Endpunktannäherungs - Prüfung« (Punktvorverlegung) bezeichnet.
c. Geometrische Grundlagen der Punktvorverlegung zwecks Ermittlung der Endpunktannäherung (Makrobewegungen werden korrigiert, um den Endpunkt
genau anzufahren)
1) Allgemeine Betrachtungen
Die Endpunktannäherungs-Prüfung soll es dem System ermöglichen, den programmierten Endpunkt eines geraden Wegstückes, wie etwa 27 b, genau am Ende eines Arbeitsspiels oder Zeitabschnittes A T zu erreichen. Um den Nutzen dieses Erfindungsmerkmals zu erkennen, ist es zweckmäßig, zunächst einmal zu wissen, warum das genaue Anfahren des Endpunktes ohne eine gewisse Korrektur der Werte von zumindest einigen der berechneten Makrobewegungen Λ Χ und A Y unwahrscheinlich ist. Das Berechnen und Ausführen von Makrobewegungen Δ X und A Y in regelmäßig wiederkehrenden Zeitabschnitten Δ Τ erfolgt hauptsächlich deshalb, um Bewegung entlang einem bestimmten Wegstück mit einer vorbestimmten Geschwindigkeit zu erzeugen. Daher ist Geschwindigkeit und nicht Weg das Hauptmerkmal der Makrobewegungswerte .1X und 1 Y. Die Berechnungen zur Bildung der Makrobewegungsgrößen Λ X und Λ Υ haben denn auch zum Ziel, Bewegung entlang einem vorbestimmten Wegstück in Richtung auf einen vorbestimmten Zielpunkt mit einer vorbestimmten Geschwindigkeit zu erzeugen. Es ist nicht Aufgabe dieser Berechnungen, den Endpunkt am Ende einer bestimmten Makrobewegung zu erreichen. Dies würde eine übermäßig hohe Genauigkeit der Berechnungen erfordern. Man kann diese Aufgabe aber auch dadurch lösen, und zwar ohne die sonst erforderlich werdende Erhöhung der rechnerischen Genauigkeit, indem man für bestimmte Zeitabschnitte Δ T die Größen der in diesen Zeitabschnitten auszuführenden Makrobewegungen korrigiert. Sehr einfach ausgedrückt, besagt dies, daß man die in diesen Zeitabschnitten auszuführenden Bewegungen entweder verlängert oder verkürzt, und zwar um Beträge, die bewirken, daß der Zielpunkt genau am Ende eines Zeitabschnittes A T erreicht wird.
In früheren Abschnitten wurden an Hand eines zu einem Endpunkt P1, führenden Wegstückes 27 b bestimmte Einrichtungen beschrieben, die den Rechner anweisen, die in den Registern 117ZCP und 115 YCP stehenden Daten während eines ersten Zeitraumes in Abständen von 1Γ zu bearbeiten, um die von ihnen dargestellten Koordinaten um die Größen A X und A Y zu ändern. Gemäß dem als nächstes zu beschreibenden Merkmal des vorliegenden Steuerungssystems sind ferner Einrichtungen vorgesehen, die den Digitalrechner 53 anweisen, die in den Registern 117ATP und 115KCP stehenden Daten während eines zweiten bestimmten Zeitraumes und gleichfalls in ähnlichen Abständen von .!Γ zu bearbeiten, um diese Daten um die Größen AX' und A Y' zu ändern. Diese Größen sind so bemessen, daß die Makropositionen XCP und YCP nach erfolgter Modifizierung nach Ablauf eines der Zeitabschnitte A T mit den Koordinaten X und Y des Endpunktes P2 sehr genau übereinstimmen.
Fig. 19 zeigt εη Hand des zuvor in Fig. 2 dargestellten Wegstückes 27 b ein bevorzugtes Verfahren, das erSndungsgemäß zur Lösung der obigen Aufgabe angewandt wird. Dargestellt sind die Makrobewegungen AX und A Y, die in einer Folge von Zeitabschnitten A T1 ... .1 T1000 in der X- und der y-Achse ausgeführt werden. Außerdem ist auch die aus den Wegkomponenten in der X- und der V-Achse zusammengesetzte Bewegung, die das Wegstück 27 b beinhaltet, dargestellt. Die A'-Achsen-Wegkomponente / für das Wegstück 27 b war zuvor mit 6 Zoll und der Makrobewegungsquotient mit 0,001 angegeben worden. Die Makrobewegung Λ X in der A"-Achse beträgt also 0,006 Zoll. Auf Grund dieser Annahme würde also der Endpunkt P., genau nach 1000 Arbeitsspielen von je 0,006 Zoll erreicht werden, d. h. genau am Ende des Zeitabschnittes A Timi. Von diesen Arbeitsspielen oder Zeitabschnitten sind in Fig. 19 nur die beiden ersten sowie die letzten vierzehn ausführlich dargestellt.
Neben dem Endpunkt P2 sind außerdem noch zwei weitere mögliche Endpunkte P2' und P2" eingezeichnet. Dabei sei zunächst angenommen, daß an Stelle
des Endpunktes P, der Endpunkt F2' auf dem Lochstreifen 37 programmiert ist. Wie sich nachweisen läßt, werden die für die Makrobewegungen A X und J Y berechneten Werte durch diese minimale Abweichung nicht beeinflußt. Der kurz vor dem Endpunkt P/ liegende Endpunkt P2 wird also trold dieser Abweichung wie zuvor am Ende des lOOO. Zeitabschnittes Δ T erreicht. Unterbricht man die Bewegung hier, so wird der programmierte Endpunkt P.,' jedoch nicht erreicht. Führt man dagegen noch ein weiteres Arbeitsspiel aus, so wird die in diesem Arbeitsspiel durchgeführte Bewegung über den programmierten Endpunkt P2' hinausführen.
2) Zwei Endpunktannäherungs-Prüfungen, mit denen das Auftreten und das Vorzeichen eines durch Punktvorverlegung berechneten Überlaufs ermittelt wird
Gemäß einem besonderen Erfindungsmerkmal, das zum Ziel hat, den Endpunkt genau am Endi eines Arbeitsspiels zu erreichen, wird zwischen zwei Überlaufen unterschieden, je nachdem, wie weit die letzte Makrobewegung über den Endpunkt hinausführt.
Ist der Überlauf größer als eine halbe Makrobewegung, d. h., wird der Endpunkt bereits in der ersten Hälfte des Zeitabschnittes AT überfahren, so wird dieser Überlauf als »groß« eingestuft. Wenn nicht, wird er als »klein« angesehen. Da der Endpunkt P2' weniger als eine halbe Makrobewegung vom Endpunkt P2 entfernt ist, würde also eine weitere volle Makrobewegung nach dem Endpunkt P2 einen großen Überlauf zur Folge haben. Einem kleinen Überlauf entspricht der zweite Endpunkt P2", der mehr als eine halbe Makrobewegung hinter dem Endpunkt P„ liegt.
Es werden beim Beschreiben des Wegstückes 27 b in jedem Zeitabschnitt A Τ zwei Endpunktannäherungs-Prüfungen durchgeführt. Zur Erläuterung eines »großen« Überlaufs soll zunächst der Endpunkt P2' als Endpunkt angenommen werden. Die erste FnHpunktannäherungs-Prüfung dient dazu, die Nähe des Endpunktes so weit im voraus zu ermitteln, daß die noch auszuführenden Makrobewegungen so korrigiert werden können, daß der Endpunkt am Ende einer dieser Bewegungen erreicht wird. Mit der zweiten Endpunktannäherungs-Prüfung wird festgestellt, ob der ermittelte Überlauf klein oder groß ist. 1st der Überlauf groß, wird eine erste Korrektur durchgeführt, ist er klein, erfolgt eine zweite andere Korrektur. Dabei wird die Anzahl der Arbeitsspiele oder Zeitabschnitte A T, in denen die Makrobewegunj. η , IX und Λ Υ modifiziert werden, so bemessen, daß die sich ergebende Geschwindigkeitsänderung nicht zu groß wird. Eine für die Berechnung günstige Anzahl ist 10. Im dargestellten Ausführungsbeispiel der Erfindung werden denn auch die Makrobevegungswerte Λ X und A Y in den letzten zehn Arbeitsspielen korrigiert.
3) Erste Endpunktannäherungs-Prüfung
Um genügend Zeit zu haben, die Makrobewegungswerte AX und A Y für das Wegstück 27 b in den letzten 10 Zeitabschnitten zu korrigieren, wird die Überlauf-Vorhersage 11 Zeitabschnitte AT im voraus gemacht. Zu diesem Zweck wird in jedem Zeilabschnitt A T als Teil des in diesem Zeitabschnitt durchgeführten Arbeitsspiels ein Punkt erzeugt, der auf einer bestimmten der beiden Koordinaten X und Y um 11 Makrobewegungen vorverlegt ist, gemessen von dem Punkt, der am Ende des teufenden Arbeitsspiels erreicht wird. Mehrere dieser Punktvorverlegungen, und zwar die in den Arbeitsspielen
JT98?....JT1190 auftretenden Vorverlegungen, sind in F i g. 19 als waagerechte Vektoren 431 a... 431 d dargestellt. Bei dem hier zu beschreibenden Systembeispiel erfolgt diese Punktvorverlegung stets auf der Achse mit der schnelleren Bewegung, um den EmpfindHchkeitsgrad der Endpunktannäherungs-Prüfung noch zu steigern. Bei dem dargestellten Beispiel ist dies die .Y-Achse.
Jeder vorverlegte Punkt auf der gewählten Koordinate wird mit der entsprechenden Koordinate des Endpunktes verglichen, um den ersten Zeitabschnitt A T zu ermitteln, in dem ein Überlauf auftritt, falls, die Bahn mit der vorgegebenen Geschwindigkeit, d. h. entsprechend den berechneten Makrobewegungen, abgefahren wird. Die ersten drei durch die Vektoren 431«.. .43Ic dargestellten Punktvorverlegungen liegen vor der A'-Koordinate XCEPJ des Endpunktes P2', so daß das nächste Arbeitsspiel mit den »normalen« Makrobewegungswerten A X und AY ausgeführt wird. Die vierte, im Arbeitsspiel Λ T990 durchgeführte Punktvorverlegung führt jedoch über die Koordinate XCEP.,' hinaus. Dieser Überlauf wird erfaßt und zur Einleitung einer entsprechenden Korrektur benutzt. Welcher Art die unter dem Einfluß der Ermittlung eines solchen Überlaufs vorzunehmende Korrektur ist, hängt jedoch vom Ergebnis der zweiten Endpunktannäherungs-Prüfung ab, mit der das Ausmaß des Überlaufs ermittelt wird. Ergibt die zweite Prüfung einen großen Überlauf, also größer als eine halbe Makrobewegung, so darf das System das Arbeitsspiel, in welchem der Überlauf festgestellt wurde, noch beenden, muß dann aber anschließend die nächsten zehn Arbeitsspiele mit größeren Makrobewegungen 1 λ" und AY' durchführen. Wird dagegen ein kleiner Überlauf festgestellt, so darf das System das Arbeitsspiel, in welchem der Überlauf ermittelt wurde, sowie auch das nächste Arbeitsspiel mit der Normalgeschwindigkeit durchfahren. Die anschließenden zehn Arbeitsspiele werden dann mit leicht verkürzten Makrobewegungen AX" und AY" durchgeführt.
4) Zweite Endpunktannäherungs-Prüfung
Die zweite Prüfung ist in F i g. 19 in Form eines kurzen Vektors dargestellt, der jeweils vom Ende der längeren Vektoren 431« .. .431 rf nach links verläuft. Jeder der kurzen Vektoren 433 a ... 433 d stellt eine halbe Makrobcwegung, d.h. 0,5 AX, dar und bezeichnet eine Operation, durch die das Ausmaß des durch die erste Prüfung ermittelten Überlaufs mit 0,5.1Y verglichen wird, um festzustellen, ob der Überlauf »klein« oder »groß« ist. Im Falle des Vektors 431 d zeigt die durch ihren entsprechenden kurzen Vektor 433 d dargestellte zweite Prüfung an, daß der durch die erste Prüfung ermittelte Überlauf groß ist. Drr kurze, vom Ende des langen Vektors 431 d zurücklaufende Vektor 433 ti reicht nämlich nicht ganz bis an die -V-Koordinate XCEP2' des angenommenen Endpunktes P./ heran. Mit anderen Worten:
Selbst wenn man die Punktvorverlegung um eine halbe Makrobewegung verkürzte, würde sie immer noch über den -Y-Koordinalenpunkt XCEP.,' hinausführen.
5) Berechnung von korrigierten Makrobewegungen AX' und Δ Y' für einen großen Überlauf
Geht man wieder von der Annahme aus, daß P2' der Endpunkt ist und daß für das Arbeitsspiel ,1T1001 ein großer Überlauf vorausgesagt wurde, so wird das Arbeitsspiel /IT990, in welchem der Überlauf ermittelt wurde, noch mit den normalen Makrobewegungen AX und AY ausgeführt. Während das Wegstück
. 1 T9i)0 durch Anwendung der durch den Vektor 431 d dargestellten Punktvorverlegung ermittelt. Im Arbeitsspiel IT9110 wird also bekannt, daß im Arbeitsspiel .1T1001 mit einem Überlauf zu rechnen ist. Mit Hilfe der zweiten Endpunktannäherungs-Prüfung, die im Arbeitsspiel A T090 durchgeführt wird und durch den kürzeren Vektor 433 rf dargestellt ist, wird außerdem festgestellt, daß der zu erwartende Überlauf in der -Y-Achse kleiner als 0,5 A X sein wird. Anstatt nun
27 b vom Sollpunkt (oder der Makroposition) XCPW9 io wie bei einem großen Überlauf die Makrobewcgunzum Sollpunkt XCPm, abgefahren wird, werden im gen in der A"- und der Y-Achse zu verlängern, um selben Arbeitsspiel jedoch bereits Berechnungen vor- den Endpunkt P2" am Ende des Arbeitsspiels A T1000 genommen, um korrigierte Makrobewegungen für die zu erreichen, werden erfindungsgemäß eine Anzahl X- und die Y-Achse zu erzeugen, die dann in den der noch verbleibenden Arbeitsspiele durch Vernächsten Arbeitsspielen ausgeführt werden, um am 15 kür?cn der Makrobewegungen in der X- und der Ende des letzten Arbeitsspiels den Endpunkt P2' in Y-Achse modifiziert, so daß der Endpunkt P2" erst
am Ende des Arbeitsspiels A T109. erreicht wird. Zur
beiden Bewegungsachsen zu erreichen. Diese zwecks Erreichens des Endpunktes P2' korrigierten Makrobewegungen sind in Fig. 19 mit AX' und AY' bezeichnet.
Zur Berechnung der Makrobewegungen AX' für die .Y-Achse wird der Abstand zwischen den ^-Koordinaten des Endpunktes XCEP2' und der
Makroposition XCP990 ermittelt. Dieser Abstand ist punktes P2" ermittelt wird. Das Ergebnis wird wieder 10 AX'. Er wird durch 10 dividiert, und der so er- 25 durch 10 dividiert und ergibt die korrigierte Makrohaltene Wert AX' stellt die korrigierte Makrobewe- bewegungsgröße AX" für die X-Achse. Zehn dieser gung A X' dar, die dann in den nächsten zehn Arbeitsspielen jeweils einmal ausgeführt wird. Auf diese
Weise wird sichergestellt, daß die Bewegung in der
X-Achse am Ende des letzten der zehn Arbeitsspiele 30
genau die X-Koordinate des Endpunktes XCEP2'
erreicht hat. Die Ergebnisse dieser Berechnungen
erscheinen in Fig. 19 als Vektor 435, der die
Größe 10 AX' darstellt, sowie als Reihe 10 kürzerer
Vektoren 437, die zusammen die Länge des Vektors 35
435 haben und einzeln jeweils eine der korrigierten
Makrobewegungen AX' darstellen. Da der Vektor 10
AX' etwas länger ist als 10 AX, ist jede korrigierte
Makrobewegung AX' in der .Y-Achse etwas länger
als eine normale Makrobewegung A X. Der End- 40 1st der für ein bestimmtes Arbeitsspiel, wie etwa das punkt XCEP2' wird also auf der X-Koordinate genau Arbeitsspiel .I T1001 in Fig. 19, vorausgesagte Über am Ende des Arbeitsspiels A T1000 erreicht.
Die Berechnung der korrigierten Makrobewegun-
Vcrcinfachung der Berechnungen werden die zu korrigierenden Makrobewegungen für die letzten zehn Arbeitsspiele A T992 bis A T1001 berechnet, indem dei Abstand zwischen der X-Koordinate der am Ende des Arbeitsspiels A T991 anzufahrenden Makroposition XCPmt und der X-Koordinate XCEP" des Endkorrigierten Makrobewegungen werden dann nacheinander in den Zeitabschnitten A T99,... A T1001 ausgeführt. Die so berechneten Größen 10/IA"' und AX" sind in Fig. 19 als Vektor 443 bzw. 445 dargestellt. Die Berechnung der Größen 10 AY" und A Y" erfolgt ebenfalls im Arbeitsspiel A T991. Diese Größen sind in Fig. 19 als Vektor 447 bzw. 449 dargestellt.
7) Zusammenfassung und Darstellung in Begriffen der Datenverarbeitung
Zusammengefaßt läßt sich folgendes feststellen:
gen A Y' für die Y-Achse erfolgt auf ähnliche Weise.
lauf größer als eine halbe Makrobewegung, dann werden die Makrobewegungen AX und .1 Y für die zehn dem bestimmten Arbeitsspiel unmittelbar voraus-
Im Arbeitsspiel A T990 wird der noch verbleibende 45 gehenden Makrobewegungen verlängert, so daß der
Abstand zwischen der Y-Koordinate der am Ende programmierte Endpunkt des abzufahrenden Weg-
dieses Arbeitsspiels anzufahrenden Makroposition Stückes am Ende des Arbeitsspiels A T1000 erreicht
XCP990 und der Y-Koordinate des Endpunktes wird. 1st dagegen der für ein bestimmten Arbeits-
YCEP,' ermittelt. Dieser Abstand erscheint in spiel, wie etwa das Arbeitsspiel A T1001, vorausgesagte
Fig. 19 als Vektor 439 und stellt die Größe 10 .1Y' 50 Überlauf kleiner als eine halbe Makrobewegung,
dar. Noch im selben Arbeitsspiel ward die dann werden die Makrobewegungen AX und AY
Größe 10 AY' durch 10 dividiert. Als Ergebnis er- verkürzt, und zwar für die neun Arbeitsspiele, die
hält man die korrigierten Makrobewegungen A Y' für dem bestimmten Arbeitsspiel vorausgehen, sowie
die Y-Achse, die in Fig. 19 als Vektoren 441 dar- außerdem auch für das bestimmte Arbeitsspiel selbst,
gestellt sind. In den folgenden zehn Arbeitsspielen 55 so daß der programmierte Endpunkt des abzufah-
A T991... /I T1000 werden die zehn korrigierten Makrobewegungen A Y' dann gleichzeitig mit den korrigierten MakTobewegungen A X' ausgeführt.
6) Berechnung von korrigierten Makrobewegungen AX" und Λ Y" für einen kleinen Überlauf
Als nächstes soll angenommen werden, daß der tatsächlich programmierte Endpunkt P2" ist. Dieser angenommene Endpunkt hat die Koordinaten " YC"
renden Wegstückes am Ende des bestimmten Arbeitsspiels .1T1001 erreicht wird.
Die Zeitabschnitte A T, in denen die erste Reihe korrigierter Makrobewegungen A X" und die zweite Reihe korrigierter Makrobewegungen AX" ausgeführt werden, sind als Diagonallinien dargestellt, die von den Ausgangspunkten der betreffenden korrigierten Makrobewegungen bis zu den die Zeitabschnitte .1T1
991 ■
A T1001 bezeichnenden Senkrech-
und YCEP2" und liegt weniger als eine 65 ten führen. Die Ausführung der entsprechenden korrikb d f d i Mkb A Y' d A Y" fü di
i 2 g g
halbe Makrobewegung von dem Punkt entfernt, der am Ende des Arbeitsspiels .1T1001 erreicht werden soll. Auch dieser Endpunkt T2" wird im Arbeitsspiel
g p
gierten Makrobewegungen A Y' und A Y" für die Y-Achse erfolgt gleichzeitig mit den Makrobewegungen AX' und AX" der X-Achse.
Ein großer Vorteil, die Makrobewegungen auf zweierlei Art korrigieren zu können — je nachdem, wie groß der zu erwartende Oberlauf ist —, besteht darin, daß — wenn man beispielsweise die letzten zehn Makrobewegungen korrigiert — die Größe der Makrobewegungen und damit die Geschwindigkeit, mit der das Wegstück 27 b beschrieben wird, sich maximal um 5°/o ändert. Als Beispiel sei angenommen, daß versucht worden ist, bei einem kleinen Überlauf wie dem im Falle des angenommenen End- ίο punktes P2", den programmierten Endpunkt am Ende des Arbeitsspiels A T1000 zu erreichen. Dabei sei angenommen, daß der programmierte Endpunkt P2" nur Vio Makrobewegung vor dem Punkt liegt, der bei normaler Geschwindigkeit am Ende des Arbeitsspiels A T1001 erreicht würde. Wollte man diesen Punkt statt dessen am Ende des Arbeitsspiels Λ Γ)000 erreichen, müßte man jede Makrobewegung in der X- und der Y-Achse um β/Ίοο, also um 9%, verlängern. Dagegen kann man den Endpunkt P2" auch genau ao am Ende des Arbeitsspiels A T1001 erreichen, indem man jede Makrobewegung um Vioo verkürzt. Die sich dabei ergebende Geschwindigkeitsänderung beträgt dann lediglich 1 °/o.
Natürlich sind die im vorstehenden Beispiel benutzten Zahlenangaben deshalb gewählt worden, weil sie für eine rasche Berechnung sehr gut geeignet sind. Man kann erfindungsgemäß jedoch auch ebensogut eine längere Punktvorverlegung wählen und den Endpunkt am Ende eines gegebenen Arbeitsspiels mit 20 statt mit 10 korrigierten Makrobewegungen genau anfahren. Um das vorliegende Merkmal der erfindungsgemäßen Steuerung in seiner ganzen Bedeutung noch besser zu veranschaulichen, soll es nachstehend noch einmal unter Verwendung von Symbolen und Begriffen aus der Datenverarbeitung beschrieben werden, wobei aber die entsprechenden Zahlen aus dem vorhergehenden Beispiel in Klammern stehen.
In jedem Zeitabschnitt A T werden also eine erste und eine zweite Gruppe von Signalen erzeugt, die den eventuellen Betrag anzeigen, um den eine Bewegung über den programmierten Endpunkt auf einer ausgewählten Bewegungsachse am Ende der folgenden M(Il) und M- 1/2(10,5) Zeitabschnitte hinausführt. Im Falle einer Voraussage, daß die über den programmierten Endpunkt der ausgewählten Bewegungsachse hinausführende Bewegung innerhalb M-1/2 (10,5) Zeitabschnitte erfolgt, werden die Makrobewegungswerte für die X- und die y-Achse um gleiche Beträge erhöht, und zwar für jeden der Ml (10) Zeitabschnitte AT, die dem Zeitabschnitt Δ T voraufgehen, für den ein Überlauf vorhergesagt wurde. Auf diese Weise wird erreicht, daß der programmierte Endpunkt praktisch am Ende des letzten der M-I(IO) Zeitabschnitte Λ Τ angefahren wird. Wird dagegen festgestellt, daß die über den programmierten Endpunkt der ausgewählten Bewegungsachse hinausführende Bewegung innerhalb M(Il) Zeitabschnitte AT, jedoch nicht innerhalb M- 1/2 (10,5) Zeitabschnitte A T erfolgt, so werden die Makrobewegungswerte um gleiche Beträge verringert, und zwar sowohl für den betreffenden Zeitabschnitt Λ T, in welchem mit einem Überlauf zu rechnen ist (IT1001), als auch für die unmittelbar vorauf gehenden M — 2 (9) Zeitabschnitte Λ T. Die Bewegung endet dann genau am programmierten Endpunkt am Ende des betreffenden Zeitabschnittes (,J ^tooi)·
d. Datenverarbeitungsoperationen,
die vom erfindungsgemäßen System bei der
Punktvorverlegung (Endpunktannäherungs-Prüfung) sowie bei der Korrektur der Makrobewegungen
ausgeführt werden
1) Arbeitsspielfolge beim Beschreiben einer Geraden
Bei der Beschreibung der den Zeitabschnitten A T1 . .. A T1001 entsprechenden Folge von Arbeitsspielen, die vom Steuerungssystem der F i g. 9 durchgeführt werden, wird zunächst auf F i g. 20 Bezug genommen. Diese Zeichnung zeigt eine Reihe Blöcke, die jeweils ein Programm- oder Befehlsschema beinhalten, wie es Fig. 17 und 18 zeigen. Das erste Aibeitsspiel, das im Zeitabschnitt A T1 durchgeführt wird, ist als Block 4SI dargestellt. Wie ersichtlich, gehört dieses Arbeitsspiel zu der Art Arbeitsspiele, die in Fig. 18 dargestellt ist und zuvor beschrieben wurde. Die Arbeitsspiele von Fig. 18 wiederholen sich in den Zeitabschnitten A T2 ... .1T9R8, d. h., in jedem dieser Zeitabschnitte wird eine normale Makrobewegung in der X- und der Y-Achse ausgeführt. Die daraus resultierende Bewegung verläuft das lineare Wegstück 27 ft entlang zum programmierten Endpunkt dieses Wegstückes. Im Anschluß an diese Reihe von Arbeitsspielen ergeben sich für die Fortsetzung des Arbeitsablaufs zwei Möglichkeiten, die den beiden im Zusammenhang mit Fig. 19 beschriebenen Korrekturmöglichkeiten entsprechen. Die erste mögliche Fortsetzung ist in Form einer ersten Reihe von Blöcken dargestellt, beginnend beim Arbeitsspiel .1T988. Sie gilt, wenn ein großer Überlauf ermittelt wird. Die zweite mögliche Fortsetzung ist in Form einer zweiten Reihe von Blöcken dargestellt, ebenfalls beginnend beim Arbeitsspiel ,1T9!IH. Sie gilt, wenn ein kleiner überlauf ermittelt wird.
Zunächst soll die obere Reihe betrachtet werden. Wie im Falle des Beispiels von Fig. 19 wird im Zeitabschnitt .1 T9tl9 noch ein Arbeitsspiel nach Fig. 18, d. h. mit normalen Makrobewegungen auf der X- und auf der Y-Achse, ausgeführt. Im nächsten Zeitabschnitt A T990 wird mit Hilfe der Punktvorverlegung ein großer Überlauf ermittelt. Folglich gehören zu den in diesem Zeitabschnitt A T990 durchgeführten Operationen auch Berechnungen zur Modifizierung der Makrobewegungen. Die in einem Arbeitsspiel dieser Art durchgeführten Operationen sind in Fig. 21 aufgeführt und werden nachstehend ausführlich beschrieben.
In jedem der folgenden neun Arbeitsspiele A T991 ... 1T1000 wird aber noch eine weitere Art Arbeitsspiel ausgeführt, wie Fig. 22 zeigt. Arbeitsspiele dieser Art werden durchgeführt, wenn das System in der Betriebsstufe 3 arbeitet, und sind dadurch gekennzeichnet, daß in jedem dieser Arbeitsspiele korrigierte Makrobewegungen ausgeführt werden. Im Anschluß an das letzte der neun Arbeitsspiele von F i g. 22 wird im Zeitabschnitt A T1000 noch ein weiteres Arbeitsspiel mit korrigierten Makrobewegungen durchgeführt, bei dem die Operationen von Fig. 17 auftreten. Diese Operationen wurden zuvor im Abschnitt C2a ausführlich behandelt. Bekanntlich gehört dazu die Berechnung von normalen Makrobewegungen, die für die Ausführung des Anfangs des nächsten geraden Wegstückes benötigt werden.
Es soll nunmehr die zweite Reihe Blöcke in Fig. 20 betrachtet werden, die die Zeitabschnitte Δ T989. .. A T1000 umfaßt. Das erste Arbeitsspiel, das
509 507/40
89 90
im Zeitabschnitt J T989 durchgeführt wird, ist wieder flops ein Binärsignal »1«, das mit FAX bezeich-
von der in Fig. 18 gezeigten Art und tritt unmittel- net ist.
bar vor dem Arbeitsspiel auf, in dem ein kleiner
Überlauf ermittelt wird. Ein solcher Überlauf wird b) Punktvorverlegung und Durchführung
im Zeitabschnitt A T990 festgestellt und hat zur Folge, 5 der ersten Endpunktannäherungs-Prüfung
daß die Operationen in diesem Zeitabschnitt nach
dem in Fig. 23 gezeigten Befehlsschema ablaufen. Nach der Ermittlung der schnellen Bewegungs-Da der ermittelte Überlauf jedoch klein ist, werden achse wird anschließend mit Beginn des Programmdie zu korrigierenden Makrobewegungen erst vom Schrittes 1028 ein vorverlegter Punkt auf dieser Achse nächsten Zeitabschnitt A T991 an berechnet. Diese Art l0 erzeugt. Natürlich sind die bestimmten Programm-Arbeitsspiel zeigt Fig. 24. Die korrigierten Makro- schritte, in denen die hier zu beschreibenden Operabewegungen werden dann m den nächsten zehn Ar- Honen ausgeführt werden, unwesentlich, sofern nichts beitsspielen A T992... A T1001 ausgeführt. Dabei ge- anderes angegeben ist. Die als nächstes zu beschreihören die ersten neun Arbeitsspiele zu der Art benden Berechnungen könnten deshalb auch ohne Arbeitsspiel, wie sie Fig. 22 zeigt, und das zehnte 15 weiteres in den Programmschritten 1018 ... 1027 zu der Art von F1 g. 17. ausgeführt werden. Die erste Operation, die im Programmschritt 1028 durchgeführt wird, besteht darin,
2) Datenverarbeitungsoperationen, d.as Antwortregister 53 a zu räumen und den im Re-
die zur Ermittlung eines Überlaufs ausgeführt werden 8'ster W9tx stehenden Makrobewegungswert her-
20 auszulesen, wenn die Z-Achse als schnelle Achse
a) Bestimmen der schnellen Bewegungsachse identifiziert wurde, oder den im Register IW AY ~ D , . j„, , stehenden Makrobewegungswert zu lesen, falls die Zur genaueren Betrachtung der Punktvoryerlegung y.Achse die schnelle Achse ist. Zu diesem Zweck soll wiederdas Programmschema yon Fi g 18 heran- wird dic dem Register 109AX zugeordnete Progezogen werden Zunächst muß festgestellt werden, 25 grammtoranordnunl 409 aufgetastet? um im Profur welche der beiden Bewegungsachsen die berech- grammschritt 1028 einen Leseimpuls auf das Register neten Makrobewegungen AX und AY großer sein 109 1X zu geben, falls der Flipflop 455 ein Signal müssen, d.h., welche der beiden Achsen also die FAX abgibt (Bedingung 11). Gibt der Flipflop daschnellere ,st Die Ermittlung der schnei en Bewe- gegen ein Signal 7vDT ab, so wird die Programmergungsachse erfo gt m den Programmschntten 1015 30 anordnung 415 aufgetas et, um auf das Register
Programmschritt 1015 wird «Ä programmierte Weg- ^^eg ^\
■ 1 - r. . j ^«« ,_ D /AI-|l5'l-n-wegKomponente J wirn somit der Ma
impuls von seiner Programmtoranordnung 400 (Be- hrw-onnocu^rt * ν η , · νλ^ο
dingung 1) erhält. Die auf diese Weise herausgelesene Re!hneSoh "" PrOSrammschritt 1O28 m
Wk / id i d Diilh t
g Re!hn
Weekomponentc / wird in den Digitalrechner 53 ee- Pw x/fti^^i, ,,
bracht und dort aufbewahrt. Im nächsten Programm- schMu 1^8 S, Γ^η^Τ" κ ^'«" ? Vf
schritt 1016 wird die programmierte Wegkompo- 4o ^''l.1"^-" den Digitalrechner 53 gebracht wurde
nente / für die V-Achse am dem aktiven Register ™^"e" teT H Pro|"mmsch"« ^029 ,m Ant-
101/ gelesen, indem das Register einen L.eseimpuls ΓηϊΏεΐ mT T? d°n mU ultIPllZ1^
von seiner Programmtoranordnung 391 (Bedin- S,e!ieVaf-h 1 ι Antwortregisters. 53a um eine
gung 5) erhält. Auch diese Information wird im dcr£her* 1^8. ^«ben wird. Den hierzu erfor-
Digitalrechner 53 gespeichert. Gleichzeitig mit dem 45 ^des D P M "'7 S^ ^ SteuereingaPi
Herauslesen von /erhält der Steuereingan'g C^ des " ίί^ΑΪ f"u ?c^t™ TSS
Digitalrechners 53 einen Vergleichsimpuls von einer MulHpIikftioi, steSt de? ersten Schritt leim ,aS
Programmtoranordnung 453, die in Fig. 9c darce- bau« einp« um 11 χλ τ ιΓ Ol-nnu ocli" '
stellt ist (Bedingung 3). Unter dem Einfluß dieL Punkte dL 7ls Fr. hH^8^^" VOrVerlef·"
Vergleichsimpulses führt der Computer einen Ver- 5o S^^V^^aTdiS^O^S
gleich durch, dessen Ergebnis im Programmschritt Um diese £hi a,.f η /v ΐ-u8 · ί a Y S
1017 auf einer seiner Aus|angsleitungen 339 und 441 ProgramrnSritt 1030 ei *l * p"' -T in9 X
erscheint. Ist / > J, erscheint auf der Ausgangs- in S SriSLΙΐ ^ "^ ^F^? ί
leitung 339 ein Binärsigna, »U. Ist KJ, ers^efnt ^A
der mit F^-Flipflop 455 (schnellere MtJ X) be- 3 aber nicht sofort ^JS
zeichnet ist. über zwei UND-Glieder 457 und 459 ist im p4gr Jmschritt^031 H
der Flipflop 455 mit den Ausgangsleitungen 339 und Il χ ^TeTne^ VnZ ί ^T
441 des Rechners so verbunden, daß er im Pro- 60 chert EkU fSvZvII ΐ?" ÄPv?
grammschritt 1017 in den Einstellzustand gebracht undTin Ά 9Γ als^d? dS Rl ιΓ ί * T
wird, wenn / größer als J ist, dagegen zurückgestellt laufdetekto?s 71 darSl^ J^lockende" unf
wird, wenn / "kleiner als / ist. lsi !,so die Achse der «hSS SASAST
die schnellere Bewegungsachse, so erscheint am Neben dem
Ö-Ausgang des FHpflops 455 im Programmschritt 65 S^
17 i Biäil 1 d i FAX b
Ögg g 5 ckS^üEStoSSSSi fi
1017 ein Binärsignal »1«, das mit FAX bezeichnet Glieder 467 und S9 wv κ" ν.™?
ist. Ist dagegen die K-Achse die schnellere Bewe- Ment die VoiSchiSL f ■ ^ ^es6hneb?J
gungsachse8 io erscheint am ^-Ausgang des Flip- einemt£%£?%*
nun ein Minuszeichen durch ein Binärsignal »1« am ß-Ausgang des Vorzeichen-Flipflops dargestellt, und dieses Signal wird auf die Vorzeichenleitung COT (—) der Ausgangssammelschiene 61 des Rechners gegeben. Die Vorzeichenleitung COT ( —) ist direkt mit dem /-Eingang des Vorzeichen-Flipflops 465 im Blockende- und Uberlaufdetektor 71 verbunden und mit ACN (Akkumulator negativ) bezeichnet.
Der jK-Eingang des Vorzeichen-Flipflops 465 erhält den Komplementärwert des Signals ACN, also Ä~ÜN, und zwar über ein NICHT-Glied 471, dessen Eingang mit der Vorzeichenleitung COT ( —) verbunden ist. Ist also das Vorzeichen der Zahl 11A X negativ, so wechselt der Vorzeichen-Flipflop 465 in den Einstellzustand, und an seinem ß-Ausgang erscheint ein Binärsignal »1«, das mit ACNX bezeichnet ist. Ist dagegen die Zahl 11 JA" positiv, wird der Vorzeichen-Flipflop 465 zurückgestellt, so daß auf seinem Q-Ausgang ein Binärsignal »1« auftritt, das mit ACNX bezeichnet ist.
Das Einschreiben des Vorzeichens in den Vorzeichen-Flipflop 465 erfolgt im Programmschritt 1031 mit Hilfe eines Programmtors 473, das mit dem Taktimpulseingang des Flipflops über ein weiteres UND-Glied 475 verbunden ist. Dieses UND-Glied wird durch einen Schreibimpuls WP des Zuordners 173 im Zeitbasis- und Taktgebersystem 63 (F i g. 9 b) aufgetastet. Nach dem Einschreiben des Vorzeichens der Zahl WAX und während diese noch im Antwortregister 53a steht, wird im nächsten Programmschritt 1032 der neuberechnete Makropositionswert XCP, der die am Ende des laufenden Zeitabschnittes anzufahrende Makroposition darstellt, vom Register 117XCiP additiv in den Rechner gelesen, indem die Programmtoranordnung 421 (Bedingung 3) einen Leseimpuls abgibt. Die Summe, XCP+ WAX, erscheint im Antwortregister 53 a im nächsten Programmschritt 1033 und stellt den gewünschten vorverlegten Punkt dar, der 11 Makrobewegungen A Χ vor der Makroposition liegt, die programmgemäß am Ende des Zeitabschnittes AT1 erreicht werden soll (vgl. Fi g. 19 und 20).
Nach der Berechnung des vorverlegten Punktes muß nun noch der eventuelle Überlauf berechnet werden. Bei dem hier beschriebenen Ausführungsbeispiel geschieht dies, indem die programmierte Endpunkt-Koordinate ATEP vom vorverlegten Punkt subtrahiert und das Vorzeichen der Differenz zur Ermittlung eines Überlaufs benutzt wird. Der Minuend für diese Subtraktion steht im Antwortregister 53 a. Der Subtrahend, also XCEP, kann jedoch nicht subtraktiv in den Rechner gelesen werden, da sein Dezimalkomma gegenüber dem Dezimalkomma des Subtrahenden um eine Stelle nach rechts verschoben ist (vgl. XCEP und XCP in Fig. 15). Daher wird die Summe -YCP f 11AX im Programmschritt 1033 im Antwortregister 53a um eine Stelle nach rechts verschoben. Zu diesem Zweck erhält der Steuereingang SAR des Rechners einen entsprechenden Schiebeimpuls von der Programmtoranordnung 411 (Bedingung 23).
Nachdem das Dezimalkomma der den vorverlegten Punkt definierenden Zahl WAX jetzt an der richtigen Stelle steht, wird im Programmschritt 1034 die im Register 95 XCEP stehende Endpunkt-Koordinate XCEP subtraktiv in das Antwortregister 53 a gelesen, indem das Register 95 XCEP einen Leseimpuls von seiner Programrrtoranordnung 359 (Bedingung 1) erhält. Zum Subtrahieren erhält der Digitalrechner 53 gleichzeitig auf seinem Steuereingang 5A' einen Sublrahierimpuls von der Programmtoranordnung 479 (Bedingung 1).
Gemäß einem besonderen Merkmal der Erfindung, das die Ermittlung eines Überlaufs betrifft, erfolgt im Programmschritt 1035 ein Vergleich zwischen dem Vorzeichen der im Programmschritt 1034 gebildeten Differenz und dem Vorzeichen der Zahl
ίο ll.lλ', das zuvor im Programmschritt 1031 in den Vorzeichsn-Flipflop 465 (Fig. 9e) geschrieben wurde. Wie sich leicht nachweisen läßt, ist kein Überlauf aufgetreten, solange beide Vorzeichen ungleich sind. So ist bei der im Arbeitsspiel Δ Tx durch-
geführten Endpunktannäherungs-Prüfung die Zahl 11.1 Λ' positiv, da die Bewegung in Fig. 19 nach rechts erfolgt. Wird die Endpunkt-Koordinate XCEP., von dem ab der neuberechneten Makroposition XCP1 um 11 JA' vorverlegten Punkt subtrahiert, so ist die Differenz negativ, da XCEP2 größer ist als XCP1 +WAX. WAX hat also ein anderes Vorzeichen als die Größe XCP1 + WAX - XCEP.,. Im ersten Arbeitsspiel jedoch, in dem der vorverlegte Punkt XCPn + WAX an der Endpunkt-Koordinate XCEP2 vorbeifährt und die zuvor kleinere Größe zur größeren wird, erhält die Differenz XCP1 i 11.IA" -- XCEP„ das gleiche Vorzeichen wie die Große 11 JA".
Um diese Bedingung zu erfassen, wird das vom Antwortregister 53 a kommende Signal ACN direkt an den zweiten Eingang des UND-Gliedes 467 gelegt, das außerdem auch das im Vorzeichen-Flipflop 465 aufbewahrte Signal ACNX von dessen Q-Ausgang erhält. In ähnlicher Weise erhält auch das UND-Glied 469 neben dem Signal ACNX vom ^-Ausgang des Vorzeichen-Flipflops 465 noch das Signal ACN direkt vom Ausgang des NICHT-Gliedes 471. Im Prograir.mschritt 1035 läßt also das UND-Glied 467 nur dann ein Binärsignal »1« zu seinem Ausgang durch, wenn sowohl die Größe 11.1 A" als auch die Differenz XCPn + 11.1 A" -XCEP2 negativ sind. Dagegen gibt das UND-Glied 469 nur dann ein Signal ab, wenn beide vorgenannten Größen positiv sind. Die Ausgänge beider UND-Glieder 467 und 469 sind mit einem ODER-Glied 481 verbunden.
In allen Zeitabschnitten JT,... ,JT989, in denen das Wegstück 27 b beschrieben wird, ist der vorverlegte Punkt XCPn + WAX stets kleiner als die programmierte Endpunkt-Koordinate XCEP2. Die dem
Blockende- und Überlaufdetektor 71 in den Programmschritten 1031 und 1035 zugeführten Vorzeichen sind also ungleich, so daß am Ausgang des ODER-Gliedes 481 im Programmschritt 1035 kein Signal auftritt. In dem ersten Arbeitsspiel jedoch, in dem der ursprünglich kleinere vorverlegte Punkt XCPf, + WAX (Zeitabschnitt A ΓβΜ im Beispiel von Fig. 19 und 20) zur größeren der beiden Größen wird, wird das Vorzeichen der Differenz XCPn + 11 AX XCEP2 umgekehrt, so daß das ODER-Glied 481 im Programmschritt 1035 ein Binärsignal »1« vom UND-Glied 469 erhält. Das am Ausgang des ODER-Gliedes 481 auftretende Signal ist im wesentlichen ein Warnsignal, welches das Ende eines Datenblockes ankündigt und vom System dazu benutzt wird, auf eine andere Betriebsstufe umzuschalten, und zwar eine vorbestimmte Anzahl Arbeitsspiele vor dem bestimmten Zeitabschnitt Δ T, für den ein Überlauf vorausgesagt ist.
Ill
Wie zuvor bei der Beschreibung der Fig. 19 im Zusammenhang mir dem Wegstück 27 b erwähnt wurde, wird ein vorverlegter Überlauf viele Arbeitsspiele lang nicht angezeigt oder vorhergesagt. Es sind jedoch Vorkehrungen getroffen, um das Steuerungssystem unter dem Einfluß eines Signals vom ODER-Glied 481 des Blockende- und Überlaufdetektors 71 auf eine andere Betriebsstufe umzuschalten und in bestimmten Arbeitsspielen der folgenden Zeitabschnitte Δ T korrigierte Makrobewegungen für die X- und die Y-Achse zu berechnen. Zu diesem Zweck ist der Ausgang des ODER-Gliedes 481 mit der Programmtoranordnung 183 verbunden, um als Eingang zum Betriebsstufenwähler 69 des Zeitbasis- und Taktgebersystems zu dienen (Fig. 9e). Der Ausgang des Blockende- und Überlaufdetektors 71 ist mit »55T« (gleiches Vorzeichen zweimal) bezeichnet. Eines der Tore der Programmtoranordnung 183, das durch die erste im Programmtorblock aufgeführte Bedingung (1035 · LIN -Sl- SST) angedeutet ist, erzeugt unter dem Einfluß eines Signals SST des Blockende- und Überlaufdetektors 71 im Programmschritt 1035 ein Signal, wenn das System ein gerades Wegstück erzeugt und der Blockende-Zähler 186 auf 51 steht, was durch ein Binärsignal »1« am Ausgang 51 des Zuordners 187 angezeigt wird. Sobald also ein Überlauf durch das Signal 55T angezeigt wird, gleichgültig, ob es sich um einen kleinen oder großen Überlauf handelt, läßi die Programmtoranordnung 183 einen Programmtaktimpuls PCP zum Blockende-Zähler 186 durch, so daß dieser am Ende des Programmschrittes 1035 von 51 auf 52 geschaltet wird, was durch ein Signal am Ausgang 52 des Zuordners 187 angezeigt wird.
Die Weiterschaltung des Blockende-Zählers 186 auf 52, die nur dann erfolgen kann, wenn ein vorverlegter Überlauf ermittelt worden ist, erscheint in ίο Programmspalte 1000 der Fi g. 21 und 23.
c) Zurückverlegung des vorverlegten Punktes
um eine halbe Makrobewegung und Durchführung
der zweiten Endpunktannäherangs-Prüfung
15
Eine zweite Endpunktannäherungs-Prüfung- mit der die Größe eines eventuellen Überlaufs bestimmt wird, wird in den Programmschritten 1036 ... 1042 des in Fig. 18 und in Tabelle IV gezeigten Arbeitsspiels durchgeführt. Zunächst wird der vorverlegte Überlauf, d;r im Programmschritt 1036 noch im AntwortregLter 53a steht, in den Programmschritten 1036 und 1037 um zwei Stellen nach links verschoben, indem die Programmtoranordnung 463 entsprechende Schiebeimpulse auf den Steuereingang SAL des Rechners gibt (Bedingungen 2 und 3). Der restliche Teil des Arbeitsspiels ist in Tabelle IVa dargestellt.
Tabelle IV
Operationen in Betriebsstufe 1 linear
1000-i/N 1500 LlN wenn Bl. Z. 52, dann weitersch. bestimme schnelle 1800Z/N 1900-LZV
0...13 siehe Tabelle III lies / Achse
14 lies / vergl.
15 FAX auf »1«, wenn >
16 FAX auf »0«, wenn <C
17 lies Q lies β
18 erzeuge 11 Δ X oder Λ Υ lies / und muH. lies / und muH.
19 ... 27 mit β mit β
28
verlege um 11 Makro
29 r. A., lies Δ X, wenn FAX 1 bewegungen vor
30 lies Δ Y, wenn TÄX
schieb links berechne Überlauf
31
32
liesJjy.wennF/lAr führe MuIt. / · β
aus
führe MuH. / · Q
aus
lies Δ Y, wenn TÄX
33 sehr. ACNX von ACN(COl-)
lies XCP, wenn FAX
34 lies YCP, wenn FAX
schieb rechts
35 SX, lies XCEP, wenn FAX
36 lies YCEP, wenn TÄX
37
Anmerkung 1
siehe Anm. 1
schieb links
schieb links
Im Programmschritt 1035 stelle Blockende-Zähler auf S2, wenn SX-(ACN ACNX + ACN ACNX) LlN.
FAX= schnelle Achse X, FAX = schnelle Achse Y, SX = subtrahiere.
Tabelle IV a
1000LiN 1500 LIN iSOQUN keine Berechnungen 1900 LIN
38 SAr,liesz)Ar,wennF/lA'
lies Δ Y, wenn FAX subtrahiere Vj Makro
39 desgl. bewegung von berechn.
40
41
desgl.
desgl.
desgl.
Überlauf führe Multipl. / - Q aus führe Multipl. I -Q aus
42
43
44... 64
65 schieb 4 X Ii. schieb 4 X Ii.
66 siehe Anm. I liesYÄ lies XR
67 schieb 4 X re. schieb 4 X re.
68 schreib Δ Y schreib Δ Χ
69 nulle Registerteil 1 nulle Registerteil 1
70 schieb 4 X Ii. schieb 4 X Ii.
71 schreib YR schreib XR
72 ... 87 keine Berechnungen
88
89
90 ... 98
99 wenn Bl. Z. 53, auf S4
schalt.
Anmerkung 1.
Im Programmschritl 1043 stelle Blockende-Zähler auf 53, wenn Sl-(ACN -ACNX + ACN -ACNX).
FAX- schnelle Achse X, FAX = schnelle Achse Y, SX — subtrahiere.
In den Programmschritten 1038 ... 10*2 wird der im Register 109 A X stehende Makrobewegungswert fünfmal subtraktiv in den Digitalrechner S3 gelesen. Infolge der Verschiebung des Minuenden im Antwortregister 53 α um zwei Stellen nach links wird der im Antwortregister stehende Überlauf bei jedem subtraktiven Einlesen des Makrobewegungswertes Δ Χ in den Rechner effektiv um 0,1 AX verringert, so daß sich der Überlauf nach dem letzten der fünf Programmschritte 1038 .. . 1042 um 0,5/1.Y verringert hat. Die zur Durchführung dieser Operationen notwendigen Auftast- und Steuerimpulse sind in der Programmtoranordnung 409 des Registers 109.4.Y als Bedingung 14 aufgeführt. Wie ersichtlich, hängt die Bedingung 14 vom Auftreten eines Signals FAX am Ausgang des Vorzeichen-Flipflops 465 ab. Tritt dieses Signal nicht auf, d. h., ist die Y-Achse die schnelle Bewegungsachse, so wird statt dessen der im Register 107 A Y stehende Makrobewegungswert herausgelesen, und zwar unter dem Einfluß von Auftastimpulsen, die in der Programmtoranordnung 415 als Bedingung 13 aufgeführt sind.
Im Programmschritt 1043 wird an der im Antwortregister 53 a stehenden Differenz eine Prüfung vorgenommen, um festzustellen, ob der Überlauf größer als Vs Makrobewegung ist. Diese Prüfung ist identisch mit der zuvor im Programmschritt 1035 durchgeführten Prüfung, d. h., es wird das Vorzeichen des im Programmschritt 1043 im Antwortregister 53a stehenden Restes mit dem Vorzeichen der Größe 11 AX verglichen. Sind beide Vorzeichen gleich, so wird damit angezeigt, daß auch nach Verringerung des vorverlegten Überlaufs um Vz Makrobewegung noch ein Überlauf auftreten würde. Mit anderen Worten: Der vorverlegte Überlauf ist gleich oder größer als Vs Makrobewegung.
Erfolgt die Bewegung in positiver Richtung, so erhält das ODER-Glied 481 vom UND-Glied 469 im Programmschritt 1043 ein Binärsignal »1« im ersten Arbeitsspiel, in welchem das Vorzeichen des im Antwortregister 53 a stehenden Restes mit dem aufbewahrten Vorzeichen der Größe 11 A X übereinstimmt. In ähnlicher Weise erhält das ODER-Glied 481 bei einer Bewegung in negativer Richtung vom UND-Glied 467 ein Binärsignal »1« im ersten Zeitabschnitt Λ T, in welchem beide Vorzeichen gleich sind. Wurde in einem gegebenen Zeitabschnitt ΛΙ durch die Endpunktannäherungs-Prüfung ein Überlauf ermiitelt und dadurch ein Signal am Ausgang S 2 des Zuordners 187 abgegeben, so wird durch ein zweites, b^i einem positiven Resultat der zweiten Endpunktannäherungs-Prüfung erzeugtes Signal SST am Ausgang des Blockende- und Überlaufdetektors 71 der Blockende-Zähler 186 auf S3 weitergeschaltet, so daß der Zuordner 187 ein Signal am Ausgang 53 abgibt. Zu diesem Zweck ist in der Programmtoranordnung 183 ein Tor vorgesehen, das durch die Bedingung 3 angedeutet ist.
3) Umschaltung des Steuerungssystems
in die Betriebsstufe 2 bei Ermittlung eines
großen Überlaufs
Da der im Programmschritt A Γ9(Η) ermittelte Überlauf groß sein soll, muß eine Umschaltung vom Arbeitsspiel der F i g. 18 auf ein anderes Arbeitsspiel erfolgen, in welchem Berechnungen vorgenommen werden, um die in den nächsten zehn Arbeitsspielen
überein, und auch die zweite Reihe Berechnungen in Spalte 1900 von Fig. 18 ist beinahe identisch mit den Operationen, die in Spalte 4900 von Fig. 17 ausgeführt werden.
Zunächst sollen die Berechnungen betrachtet werden, die in Spalte 1800 des Befehlsschemas von Fig. 18 ausgeführt werden. In den Programmschritten 1817 ... 1864 wird das Produkt J-Q aus den in den Registern 1017 und 103 Q stehenden Größen
1818 wird die Wegkop ß
eines Leseimpulses der Programmtoranordnung 391 (Bedingung 6) aus dem Register 101 J geholt. Im selben Programmschntt erhalt der Digitalrechner 53 einen Multiplizierimpuls von seiner Programmtor-(i 5) U d Eiflß
benötigten korrigierten Makrobewegungswerte zu bilden. F i g. 21 zeigt dieses Arbeitsspiel.
Wie dieser Figur zu entnehmen ist, stellen die periodischen Neuberechnungen der in den Registern 121 XSC und 119 YSC stehenden Mikropositionen die einzigen Operationen dar, die in der zweiten, dritten und vierten Programmspalte 1100 ... 1400 des Befehlsschemas auftreten. Bis hier besteht der einzige
Unterschied zwischen dem Arbeitsspiel von Fig. 21 „ ... „ , ... .... „
und dem von Fig. 18 darin, daß in der ersten Spalte io gebildet. So wird im Programmschntt 1817 (Ta-
des Befehlsschemls von F i g. 21 in beiden Endpunkt- belle IV) der Makrobewegungsquotient Q aus dem
annäherungs-Prüfungen ein Überlauf angezeigt wor- Register 103Q gelesen indem das Register einen
den ist. Aus diesem Grund sind die beiden Blöcke Leseimpuls von seiner Programmtoranordnung 389
in Programmspalte 1000 des Befehlsschemas von (Bedingung 1) erhält. Im nächsten Programmschntt
Fig. 21, die die Weiterschaltung des Blockende- 15 1818 wird die Wegkomponente/ unter dem Einfluß Zählers auf 52 und dann auf 53 verlangen, nicht
durchgestrichen. Die Umschaltung des Systems auf
Operationen, die für das in Fig. 21 gezeigte Arbeitsspiel charakteristisch sind, wird im Programmschritt
1589 ausgelöst. In diesem Programmschntt wird der 20 anordnung 393 (Bedingung 5). Unter dem Einfluß Blockende-Zähler 186 auf S 4 weitergeschaltet, vor- dieses Multiplizierbefehls wird vom Rechner in den ausgesetzt, daß er bereits auf 53 stand. Durch diese Programmschritten 1819 ... 1864 die Multiplikation Weiterschaltung des Binärzählers wird bewirkt, daß JQ durchgeführt. Anschließend werden die »Rest«- am Ausgang 54 des Zuordners 187 ein Signal auf- stellen addiert, die von dem im vorhergehenden Artritt, das seinerseits die UND-Glieder 177 des logi- 25 beitsspiel gebildeten Produkt abgetrennt wurden. Zu sehen Zeitbasis-Schaltnetzes auftastet und damit das diesem Zweck wird das Produkt J · Q im Antwort-System in die Betriebsstufe 2 schaltet. Die Bedeutung register 53α während des Programmschrittes 1865 dieser Umschaltung liegt darin, daß in der Betriebs- um vier Stellen nach links verschoben, indem die stufe 2 die Berechnungen durchgeführt werden, die Programmtoranordnung 347 einen entsprechenden zur Erzeugung der korrigierten Makrobevvegungen 30 Schiebeimpuls erzeugt (Bedingung 2). Im Programmerforderlich sind. Diese korrigierten Makrobewegun- schritt 1866 werden dann die vier Reststellen durch gen werden benötigt, um den Endpunkt genau an- einen Leseimpuls der Programmtoranordnung 399 fahren zu können. (Bedingung 1) aus dem Register 111 YR gelesen. Da Zur Weiterschaltung des Blockende-Zählers 186 das Produkt / · Q im Antwortregister 53 a an der von 53 auf 54 enthält die Programmtoranordnung 35 richtigen Stelle steht, können die aus dem Register 183 ein Tor, das als Bedingung 5 angedeutet und so 111 YR gelesenen Ziffern sofort zu dem Produkt adgeschaltet ist, daß es den gewünschten Weiterschalt- diert werden. Die Summe erscheint im Antwortimpuls im Programmschritt 1589 erzeugt, vorausge- register 53α im Programmschritt 1867. Sie wird setzt, daß am Ausgang 53 des Zuordners 187 ein dann durch einen entsprechenden Schiebeimpuls der Signal auftritt. Bei dem in Fig. 19 gezeigten Arbeits- 40 Programmtoranordnung 487 (Bedingung2) um vier spiel ist dies erst im Zeitabschnitt AT990 der Fall, Stellen nach rechts verschoben. Die nach der Ver- und auch nur dann, wenn als Endpunkt P2' ange- Schiebung im Antwortregister 53 α verbleibenden Zifnommen ist. In diesem Fall wird dann das Steue- fern stellen den Makrobewegungswert A Y dar und rungssystem im Anschluß an den Programmschritt werden durch einen Schreibimpuls der Programmtor-1589, also kurz nach der ersten Hälfte des Zeitab- 45 anordnung 395 (Bedingung 1) in das Register 107.1 Y schnittes A T990, in die Betriebsstufe 2 umgeschaltet, übertragen.
und zwar unter dem Einfluß der Bedingungen, die In den nächsten drei Programmschritten werden
durch die in ein und demselben Zeitabschnitt .1T die Reststellen des gerade gebildeten Produktes / · Q
erfolgte Weiterschaltung des Blockende-Zählers 186 in das Register 111 YR gebracht. Zunächst wird das
von 51 auf 54 geschaffen wurde. Diese Umschaltung 50 Antwortregister 53a im Programmschritt 1869 ge-
ist durch die am Kopf der letzten vier Spalten des nullt, indem der Steuereingang ZRl einen entspre-
Befehlsschemas von Fig. 21 stehenden Nummern 2600.. . 2900 angedeutet. In allen voraufgegangenen 989 Zeitabschnitten AT...ATW9 arbeitet das Sy-
chenden Steuerimpuls von der Programmtoranordnung 397 (Bedingung 2) erhält. Danach werden im Programmschritt 1870 die vier im Teilregister 53 b
stem dagegen in der Betriebsstufe 1. Die Operationen, 55 stehenden Ziffern um vier Stellen nach links verschodie es dabei ausführt, zeigt F i g. 18. ben, indem die Programmtoranordnung 347 (Bedin
gung 5) einen entsprechenden Schiebeimpuls abgibt. Schließlich werden die nunmehr in den Stufen 5, 6, 7 und 8 des Antwortregisters 53 a stehenden vier Stel-60 len im Programmschritt 1871 durch einen Schreibimpuls der Programmtoranordnung 398 (Bedingung 2) in das Register 111 YR eingeschrieben.
In den entsprechenden Programmschritten der Spalte 1900 werden die gleichen Operationen ausge-
in den Spalten 1800 und 1900 des Befehlsschemas 65 führt wie in Spalte 1800, außer daß an Stelle der von Fig. 18 zwei Reihen von Berechnungen durch- Wegkomponente / die Wegkomponente / und an geführt. Die erste davon stimmt nahezu mit den in Stelle der Register 107.1 Y und 111 YR die Register Spalte 4800 von F i g. 17 durchgeführten Operationen 109 A X und U3XR benutzt werden, um das Re-
4) Datenverarbeitungsoperationen, die zum Berechnen korrigierter Makrobewegungen
ausgeführt werden
Neben den sich häufig wiederholenden, in jeder Programmspalte auftretenden Operationen zur Neuberechnung der Mikropositionen werden außerdem
100
sultat aufzunehmen. Diese Operationen werden nicht näher beschrieben. Sie sind in den Tabellen IV und IVa aufgeführt, und die zu ihrer Durchführung erforderlichen Auftast- und Steuerimpulse sind in F i g. 9 angegeben.
Zu beachten ist, daß die zur Bildung der Makrobewegungswerte AX und AY erforderlichen Multiplikationen J · Q und / · Q nicht in jedem Arbeitsspiel nach Fig. 18 durchgeführt werden müssen. Hat man beispielsweise die Makrobewegungswert^ AX und A Y im ersten Arbeitsspiel nach Fig. 18 im Zeitabschnitt J T1 gebildet, so können diese Werte in die Register 103 A X und 107 Δ Υ eingeschrieben werden und dort stehenbleiben, da sie in allen Arbeitsspielen, in denen ein gerades Wegstück mit konstanter Geschwindigkeit beschrieben wird, stets gleichbleiben, bis ein Überlauf ermittelt wird. A X und A Y sind nur deshalb hier ais in jedem Arbeitsspiel neuberechnete Größen dargestellt, weil es in manchen Fällen zweckmäßig sein kann, die Geschwindigkeit beim Abfahren eines Wegstückes durch manuellen Eingriff oder anpaßbare Steuervorrichtungen sowie auch bei der weiter unten beschriebenen zirkulären Interpolation zu ändern.
Es soll nun wieder der Zeitabschnitt A T990 betrachtet werden, wobei wiederum angenommen wird, daß ein großer Überlauf ermittelt worden ist. Die erste Reihe Operationen, die das System in diesem Fall in der Betriebsstufe 2 in Spalte 2800 (Fig. 21) ausführt, betrifft die Bildung eines korrigierten Makrobewegungswertes AY'. Allgemein geschieht dies, indem die Makroposition YCP von der Endpunkt-Koordinate YCEP abgezogen, das Resultat durch 10 dividiert und der sich ergebende Quotient gespeichert wird. Vor diesem Rechengang jedoch wird die letzte Stelle des Makropositionswertes YCP beseitigt. YCP hat nämlich eine Stelle mehr als die Endpunkt-Koordinate YCEP, von der YCP subtrahiert werden soll. Wird diese zusätzliche Stelle nicht beseitigt, so passen die sich aus der anschließenden Division ergebenden korrigierten Makrobewegungswerte nicht in das Register 107 J 7. Auch im Register 119 FSC, in dem sich die Mikroposition YSC befindet, steht eine Stelle, die der zusätzlichen Stelle von YCV entspricht (vgl. Fig. 15). Diese Stelle wird jedoch nicht dem Regelkreis 77 für die Y-Achse über die Sammelschiene 81 zugeleitet.
ίο Die einzelnen Operationen, die das Steuerungssystem in der Betriebsstufe 2 ausführt, sind in Tabelle V aufgeführt. Um die letzte Stelle des Makropositionswertes YCP zu löschen, wird der Wert im Programmschritt 2815 durch einen Leseimpuls der Programmtoranordnung 425 (Bedingung 7) in den Digitalrechner S3 gebracht. Im nächsten Programmschritt 2816 erscheint YCP im Antwortregister 53 a und wird um eine Stelle nach rechts verschoben, indem der Computer einen entsprechenden Schiebeimpuls von der Programmtoranordnung 411 (Bedingung 26) erhält. Die letzte Stelle des Makropositionswertes YCP steht nunmehr in der Stufe 9 des Teilregisters 53 b und wird gelöscht, indem die Programmtoranordnung 397 (Bedingung 6) einen ent-
»5 sprechenden Löschimpuls auf den Steuereingang ZR 2 des Rechners gibt. Nachdem die niedrigste Stelle gelöscht ist, wird der Makropositionswert YCP im Programmschritt 2818 wieder um eine Stelle nach links zurückgeschoben, indem die Programmtoranordnung 463 (Bedingung 6) einen entsprechenden Schiebeimpuls abgibt. YCP steht jetzt zur Übertragung über die Ausgangssammelschiene 61 an der richtigen Stelle im Antwortregister 53 a und wird im Programmschritt 2819 durch einen Schreibimpuls der Programmtoranordnung 427 (Bedingung 2) in das Register 115 YCP gebracht. Damit ist die Löschung der niedrigsten Stelle des Makropositionswertes YCP beendet.
Tabelle V
Operationen in Betriebsstufen 2 + 3 linear
2800· LIN 29Q0-LIN lies XCP 3900 LlN
1 ...13 siehe Tabelle III schieb re.
14 nulle Registerteil 2
15 lies YCP schieb Ii.
16 schieb re. schreib XCP J nulle Stelle 0,00001 von XCP
17 nulle Registerteil 2 und YCP
18 schieb Ii.
19 schreib YCP
20 r. A., lies YCEP berechne YCEP-YCP und
21 schieb Ii. XCEP-XCP
22 lies YCP, subtr. r. A., lies XCEP
23 schieb re. schieb Ii. > div. Result, durch 10
lies XCP, subtr. j speichere AX', A Y
24
nc
schreib A Y schieb re.
ZD
26
27...98 schreib A X
99 stelle Bl. Z. um 1 weiter
keine Berechnungen
stelle Bl. Z. auf 55
Um den modifizierten Makropositionswert YCP 65 zugehörigen Programmtoranordnung 487 (Bedin-
von der im Register 97 YCEP stehenden Endpunkt- gung 2) in den Digitalrechner 53 geholt. Kurz vor
Koordinate YCEP zu subtrahieren, wird YCEP im dem Lesen der Endpunkt-Koordinate YCEP wird im
Programmschritt 2820 durch einen Leseimpuls der selben Programmschritt das Antwortregister 53a
ιοί
102
durch einen Räumimpuls der Programmtoranordnung 351 (Bedingung 12) geräumt. Sodann wird die soeben als Minuend ins Antwortregister gebrachte Endpunkt-Koordinate YCEP um eine Stelle nach links verschoben, so daß ihr Dezimalkomma mit dem Dezimalkomma des Subtrahenden YCP übereinstimmt (vgl. Fig. 15). Zu diesem Zweck erhält der Digitalrechner 53 im Programmschritt 2821 einen entsprechenden Schiebeimpuls von der Programmtoranordnung 463 (Bedingung 7).
Nachdem der Minuend YCEP im Antwortregister 53 a an der richtigen Stelle steht, wird der Subtrahend YCP im Programmschritt 2822 subtraktiv in den Digitalrechner 53 gelesen. Zu diesem Zweck erhält der Rechner einen Subtrahierimpuls von der Programmtoranordnung 479 (Bedingung 3) und das Register 115 YCP einen Leseimpuls von seiner Programmtoranordnung 425 (Bedingung 8). Die Differenz, die im Antwortregister 53ο im Programmschritt 2823 erscheint, lautet 10.AY' und stellt insgesamt zehn korrigierte Makrobewegungen für die Y-Achse dar, nach deren Ausführung die Endpunkt-Koordinate YCEP genau erreicht wird.
Um aus 10 A Y' den korrigierten Makrobewegungswert A Y' für die Y-Achse zu gewinnen, wird die im Antwortregister 53 a stehende Größe 10 A Υ' im Programmschritt 2823 um eine Stelle nach rechts geschoben, indem der Digitalrechner 53 an seinem Steuereingang SAR einen entsprechenden Schiebeimpuls von der Programmtoranordnung 411 (Bedingung 27) erhält. Das Resultat wird dann im Programmschritt 2824 durch einen Schreibimpuls der Programmtoranordnung 395 (Bedingung 3) vom Antwortregister 53a in das Register 107 A Υ übertragen. Damit ist in der neunten Spalte des Befehlsschemas von F i g. 21 die korrigierte Makrobewegung A Y' berechnet und im Register 107 J Y gespeichert worden. Eine ähnliche Reihe Berechnungen wird in dem durch Spalte 2900 des Befehlsschemas dargestellten letzten Zehntel des Arbeitsspiels durchgeführt, um aus der Makroposition ATCP und der Endpunkt-Koordinate XCEP die korrigierte Makrobewegung AX' zu bilden. Diese Operationen und die dafür benötigten Auftast- und Steuerimpulse sind in Tabelle V aufgeführt und werden nicht näher beschrieben. Erwähnt sei lediglich, daß am Ende dieser Berechnungen, also im Programmschritt 2924, der korrigierte Makrobewegungswert AX' im Register 109 A X gespeichert wird.
5) Umschaltung des Systems in die Betriebsstufe 3 zwecks Ausführung korrigierter Makrobewegungen
in anschließenden Arbeitsspielen
Nachdem die korrigierten Makrobewegungen AX' und AY' berechnet und gespeichert sind, bleibt als einzige Operation im Arbeitsspiel nach Fi g. 21 noch die Umschaltung der Steuerung in die Betriebsstufe 3 übrig. In dieser Betriebsstufe werden vom Steuerungssystem in jedem Arbeitsspiel eine Makrobewegung Δ X' und eine Makrobewegung .1Y' in der X- bzw. Y-Achse ausgeführt, wie das Befehlsschema von Fig. 22 zeigt. Die Umschaltung des Systems aus der Betriebsstufe 2 in die Stufe 3 wird im Programmschritt 2999 eingeleitet, indem der Blockende-Zähler 186 auf SS weitergeschaltet wird, wodurch am Ausgang 55 des Zuordners 187 ein Binärsigna] »ι« auftritt. Da der Blockende-Zähler bereits auf 54 steht, reicht zur Weiterschaltung auf 55 ein einziges Signal aus. Dieses Signal erhält der Zähler von der Programmtoranordnung 183 im Programmschritt 2999, wie durch die Bedingung 17 im Programmtorblock angedeutet ist. Unter dem Einfluß des Signals vom Ausgang 55 des Zuordners 187 wird die dritte Gruppe UND-Glieder 179 des logischen Zeitbasis-Schaltnetzes aufgetastet, wodurch Taktimpulse ίο 3000 ... 3999 in wiederkehrender Folge erzeugt werden, wie durch die am Kopf der zehn Spalten stehenden Bezeichnungen angedeutet ist (F i g. 22).
6) Arbeitsweise des Systems in Betriebsstufe 3
Das erste der Arbeitsspiele nach F i g. 22 wird im Zeitabschnitt A Tnfll ausgeführt und dann noch weitere achtmal wiederholt, und zwar jeweils einmal in den Zeitabschnitten A T992... A T899. Jedes dieser Arbeitsspiele besteht im Prinzip nur aus zwei Arten von Operationen. Erstens werden die in den Registern 12i XSC und 119 Y5C stehenden Mikropositionen in jedem der zehn von den Spalten 3000 ... 3900 des Befehlsschemas in Fig. 23 dargestellten Zeit-Teilabschnitte .17/10 neu berechnet, und zweitens werden in dem von der Spalte 3000 dargestellten Zeit-Teilabschnitt .17710 die Makropositionen in den Registern 117 AXT und 115 YCP neu berechnet.
Wie ein Vergleich des Programmschemas von Fig. 23 mit dem Grundschema von Fig. 18 zeigt, wird die Neuberechnung der Mikro- und Makropositionen in den gleichen Zeit-Teilabschnitten vorgenommen. Der einzige Unterschied besteht darin, daß andere Werte benutzt werden. Tabelle III und die damit im Zusammenhang stehende Beschreibung gelten also auch für die Operationen, die in den Arbeitsspielen nach Fig. 22 in den Zeitabschnitten 1 T99x . .. AT99g ausgeführt werden.
7) Umschaltung des Systems auf die Betriebsstufe 4 im Anschluß an die Ausführung des neunten Paares
korrigierter Makrobewegungen
Eine zusätzliche Operation, die in den Arbeitsspielen nach F i g. 22 jeweils einmal, jedoch nicht in den Arbeitsspielen nach Fig. 18, ausgeführt wird, besteht darin, die Anzahl der durchgeführten Arbeitsspiele nach F i g. 22 zu registrieren. Zu diesem Zweck sind Maßnahmen vorgesehen, um den Blockende-Zähler bei jedem Arbeitsspiel nach F i g. 22 um eine Einheit weiterzuschalten. Dies geschieht, indem der Blockende-Zähler 186 in jedem Arbeitsspiel nach Fig. 22 im Programmschritt 3999 einen Weiterschaltimpuls erhält. Die Weiterschaltimpulse kommen von der Programmtoranordnung 183, und das bestimmte Programmtor, welches diese Impulse erzeugt, ist durch die Bedingung 18 angedeutet. Das Arbeits-
spiel nach F i g. 22 wird neunmal wiederholt. Nach der letzten Wiederholung erhält das System Anweisung, von der Betriebssrufe 3 auf die Stufe 4 umzuschalten. In dieser Betriebsstufe, die zuvor im Zusammenhang mit Fig. 17 besprochen wurde, werden Berechnungen durchgeführt, um eine Makrobewegung für das nächste Wegstück festzulegen, nachdem der Endpunkt des laufenden Wegstückes erreicht worden ist. Um die gewünschte Umschaltung von der
103
104
Betriebsstufe 3 auf die Stufe 4 durchführen zu können, ist der Ausgang 514 des Zuordners 187 über das ODER-Glied 191 mit der vierten Gruppe UND-Glieder 181 des Zeitbasis-Schaltnetzes 67 verbunden. Diese UND-Glieder bewirken bei ihrer Auftastung die Umschaltung auf die Betriebsstufe 4, wie zuvor beschrieben. Am Ende des neunten Arbeitsspiels nach Fig. 22 — gemäß dieser Figur also am Ende des Zeitabschnittes A F999 — erscheint am Ausgang 514 des Zuordners 187 ein Signal. Am Ende dieses Zeitabschnittes sind neun Arbeitsspiele mit korrigierten Makrobewegungen durchgeführt, so daß noch ein Arbeitsspiel mit korrigierten Makrobewegungen erforderlich ist, um den programmierten Endpunkt P2 genau anzufahren.
Dieses zehnte Arbeitsspiel ist das Arbeitsspiel nach Fig. 17. Im Zeitabschnitt AT1000 werden also die in diesem Arbeitsspiel auftretenden Neuberechnungen der Mikro- und Makropositionen mit korrigierten Makrobewegungswerten A X' und A Y' durchgeführt.
Darüber hinaus erfolgen im Arbeitsspiel nach Fig. 17 auch Berechnungen zur Bildung eines weiteren linearen Wegstückes. Ferner ist noch ein leicht modifiziertes Arbeitsspiel vorgesehen, um ein zirkuläres Wegstück zu beginnen. Dieses Arbeitsspiel wird noch später beschrieben. Die in den Spalten 4600 ... 4900 von Fig. 17 durchgeführten Berechnungen sind bereits zjvor im Abschnitt Cla in Verbindung mit dem Anfang des Wegstückes 276 beschrieben worden. Nach Durchführung der Neuberechnungen der Makro- und Mikropositionen im Arbeitsspiel nach Fig. 17 während des Zeitabschnittes A T1000 ist damit der Arbeitsablauf, in welchem das lineare Wegstück 27 b beschrieben wird, beendet.
35
8) Umschaltung des Systems von der Betriebsstufe 1 auf die Stufe 2 bei Ermittlung eines kleinen Überlaufs
Die vorstehende ausführliche Beschreibung der verschiedenen Arbeitsspiele nach Fi g. 18, 21, 22 und 17 an Hand von F i g. 20 ging von der Annahme aus, daß im Zeitabschnitt .1T990 ein großer Überlauf ermittelt wurde. Dabei zeigte sich, daß es entsprechend den im Zusammenhang mit Fig. 19 gemachten Ausführungen notwendig wurde, das System auf die nächste Betriebsstufe umzuschalten, und zwar noch im selben Zeitabschnitt, in dem der große Überlauf ermittelt wurde, um die korrigierten Makrobewegungen noch vor Beginn des nächsten Zeitabschnittes AT zu berechnen. Das Arbeitsspiel, in dem eine Umschaltung so schnell erfolgt, zeigt F i g. 21.
Nunmehr soll jedoch angenommen werden, daß an Stelle eines großen Überlaufs ein kleiner Überlauf im Zeitabschnitt Λ T990 ermittelt worden ist. In diesem Fall ist es zweckmäßig, die Umschaltung des Systems um einen Zeitabschnitt A T zu verschieben. Sie erfolgt also erst im Zeitabschnitt AT991, also im Anschluß an den Zeitabschnitt A T990, in welchem der kleine Überlauf angekündigt wurde. Dadurch verschiebt sich auch das erste Arbeitsspiel nach F i g. 22, in dem korrigierte Makrobewegungen ausgeführt werden. Dieses Arbeitsspiel läuft also erst im Zeitabschnitt AT991, (vgl. Fig. 20) ab.
Um zu verhindern, daß das System in dem Zeitabschnitt A T, in welchem ein kleiner Überlauf ermittelt wird, von der Betriebsstufe 1 auf die Stufe 2 umschaltet, muß der Blockende-Zähler 186 zunächst auf 52 und dann auf 53 geschaltet werden, bevor er au] 54 weitergeschaltet werden kann und damit die Umschaltung auf Betriebsstufe 2 auslöst. Diese mehrfache Weiterschaltung kann jedoch nicht erfolgen wenn ein kleiner Überlauf angezeigt wird, da eine Weiterschaltung des Zählers auf 53 nicht in demselben Zeitabschnitt A T erfolgt, in dem solch ein Überlauf ermittelt wurde. Sie erfolgt jedoch im nächsten Zeitabschnitt A T.
Um den Blockende-Zähler 186 in einem gegebenen Zeitabschnitt AT von 52 auf 53 weiterschalten zu können, falls der Zähler im vorhergehenden Zeitabschnitt AT nur auf 52 gestellt wurde, ist eine Vorrichtung in Form eines Programmtors vorgesehen das in der Programmtoranordnung 183 als Bedingung 4 angedeutet ist.
Die Operationen, die in dem Zeitabschnitt, in welchem ein kleiner Überlauf ermittelt wird, und im folgenden Zeitabschnitt durchgeführt werden, entsprechen den Arbeitsspielen nach F i g. 23 und 24. Ein Vergleich des Arbeitsspiels von F i g. 23 mit dem von Fig. 21 zeigt, daß der Hauptunterschied zwischen beiden darin besteht, daß der in Fig. 21 als letztei Block in Spalte 1000 dargestellte Vorgang in Fi g. 23 durchgestrichen ist. Die Beschriftung des betreffenden Blockes besagt, daß der Blockende-Zähler 186 von 52 auf 53 weiterzuschalten ist, wenn die zweite Endpunkt-Annäherungs-Prüfung ergibt, daß der Überlauf größer als '/2 Makrobewegung ist. Ist der Überlauf, wie angenommen, klein, so daß diese zweite Endpunktannäherungs-Prüfung negativ verläuft, se wird der Zähler nicht auf 53 weitergeschaltet. Vielmehr wird das Arbeitsspiel mit noch auf 52 stehendem Zähler beendet, wie der letzte Block in Spalte 1900 der F i g. 23 zeigt.
Da der Blockende-Zähler 186 in Spalte 1000 des Arbeitsspiels von Fig. 23 nicht von 52 auf 53 geschaltet wurde, kann somit auch nicht die Weiterschaltung von 53 auf 54 erfolgen, die im Arbeitsspiel von Fig. 21 am Ende der Spalte 1500 auftritt Dieses Arbeitsspiel wird also vom System in der Betriebsstufe 1 beendet.
Die im Programmschritt 1043 des Zeitabschnitte; AT990 nicht erfolgte Weiterschaltung des Blockende-Zählers 186 auf 53 hat außerdem zur Folge, da£ auch das nächste Arbeitsspiel, das Fig. 24 zeigt noch in der Betriebsstufe 1 begonnen wird. In diesem Arbeitsspiel, d. h. im Zeitabschnitt A F991, wire jedoch der Blockende-Zähler 186 auf 53 geschaltet und etwa in der Mitte dieses Zeitabschnittes erfolg dann die Umschaltung des Systems von der Betriebs stufe 1 auf die Stufe 2, und zwar in der gleichet Weise wie bei dem im Zeitabschnitt Δ T990 durchge führten Arbeitsspiel nach Fig. 21. Der Blockende Zähler 186 wird also im Arbeitsspiel nach Fig. Ii im Programmschritt 1014 zunächst auf 53 und dam im Programmschritt 1589 desselben Arbeitsspiels au: 54 weitergeschaltet. Nach dieser Weiterschaltung lau fen dann alle Operationen so ab, als wenn im Zeit· abschnitt A T991, in dem das Arbeitsspiel von Fi g. 2^ durchgeführt wird, ein großer Überlauf ermittelt wor den wäre. In den nächsten neun Zeitabschnittei A r0Bj ... A T1000 werden also Arbeitsspiele nacl Fig."17 ausgeführt, worauf das System im Zeitab schnitt A T1001 in die Betriebsstufe 4 schaltet und dai Arbeitsspiel nach Fig. 17 ausführt, sofern das nach ste Wegstück wieder eine Gerade ist. Der Endpunk wird am Ende des Zeitabschnittes A Γ,™, erreicht.
105
106
D. Ausführliche Beschreibung der Erzeugung
von Kreisbogenstücken nach dem alternierend
zirkulären Interpolationsverfahren
1. Grundlagen
a. Interpolieren unter der Annahme, daß die
Komponenten von zwei Radiusvektoren gegeben sind
Die Erzeugung von Kreisbogenstücken wurde zuvor an Hand der F i g. 6 a ... 6 d beschrieben und soll nunmehr ausführlich an Hand der F i g. 25 a ... 25 f erläutert werden. Diese Figuren zeigen die schrittweise Bildung eines Linksbogens. Unter Bezugnahme auf F i g. 25 a soll angenommen werden, daß ein Kreisbogen beschrieben werden soll, dessen Radiusvektor die Länge R hat und der, von einem auf dem Bogen liegenden Anfangspunkt P0 ausgehend, nacheinander durch die gleichfalls auf dem Bogen liegenden Punkte P1, P2, P3, P4 und P5 geht, und zwar jeweils am Ende einer Zeitspanne einer Folge von gleich langen Zeitspannen T1, T2, T3, T4 und T^. Des weiteren soll angenommen werden, daß die gelieferte Grundinformation die X-Achsen-Wegkomponente /n der Umkehrung des vom Mittelpunkt C des Kreises zum Anfangspunkt P0 verlaufenden Radiusvektors Rn und außerdem die Y-Achsen-Wegkomponente J1 der Umkehrung des vom Xreismittelpunkt C zum Punkt P1 verlaufenden Radiusvektors R1 enthält. Die Umkehrung des Radiusvektors R0 ist nichts anderes als der umgekehrte Radiusvektor R0, also eine Gerade, die vom Punkt Pn zum Kreismittelpunkt C geht. Der Grund, weshalb die X- und Y-Komponenten der umgekehrten Radiusvektoren angegeben werden, liegt darin, daß dies von den Herstellern numerischer Steuerungen so festgelegt wurde, um zirkuläre Bahnen 7U definieren. Würde man den Radiusvektor und seine Komponenten X und Y so definieren, würde sich an der folgenden Beschreibung nur wenig ändern. Es würden die gleichen Gesetzmäßigkeiten gelten. Gemäß der hier angewandten Definition werden die Größen / und J nachstehend kurz mit »umgekehrte X-Komponente« und »umgekehrte Y-Komponente« eines Radiusvektors bezeichnet.
Um einen Kreisbogen zu erzeugen, werden vor den Zeitspannen T1, T,, und Tx Signale erzeugt, die die X-Koordinatenstrecken .1.X02 und /IX24 zwischen den Punkten Pn, P2 und P4 numerisch darstellen. Diese Größen sind in Fig. 25b und 25f als Vektoren dargestellt. In ähnlicher Weise werden vor den Zeitspannen T2 und T4 Signale erzeugt, die die Y-Koordinatenstrecken Y1n und Y35 zwischen den Punkten P1, P3 und P5 numerisch darstellen. Die erste dieser beiden Größen ist in Fi g. 25 d als Vektor dargestellt.
Die .iX-Signale werden in entsprechenden Paaren von Zeitspannen, wie etwa T1-T2 und T3-T4, dazu benutzt, mit einem gesteuerten Maschinenelement die Strecken .1Af02 und IAT21 in der X-Achse abzufahren. Ebenso werden auch die A Y-Signale in entsprechenden Paaren von Zeitspannen, wie etwa Τ2Λ und Tt-T&, dazu benutzt, das gesteuerte Maschinenelement in der Y-Achse entlang den Strecken Λ Yn und Λ Y35 zu bewegen. Nach einem besonderen Merkmal der Erfindung erfolgt die Bewegung auf beiden Achsen im wesentlichen gleichförmig in beiden Paaren von Zeitspannen.
Als nächstes soll beschrieben werden, wie die Größen AX und AY erzeugt werden. Die Größe JAf02, die eine auf der Af-Achse in den Zeitspannen T1 und T2 auszuführende Bewegung beinhaltet, wird aus der umgekehrten Y-Achsen-Wegkomponente J1 des Radiusvektors R1 nach der Gleichung (22) in Fig. 25b abgeleitet. Diese Ableitung wurde zuvor in F i g. 6 als Gleichung (15) angegeben. Die Unterschiede zwischen den Gleichungen (15) und (22) ergeben sich aus folgenden Tatsachen: 1. In F t g. 25 b erfolgt die Bewegung im Gegenzeigersinn, dagegen in F i g. 6 c, für die Gleichung (15) gilt, im Uhrzeigersinn. 2. Die
ίο Größe V-AT in Gleichung (15) ist in Gleichung (22) durch die Größe A D ersetzt, die die Sehne vom Punkt P0 zum Punkt P2 darstellt. 3. Die Größe ]/ν+7|» in Gleichung (15) ist durch R, den Radiusvektor, ersetzt.
Nachdem der Makrobewegungswert A X02 vor der Zeitspanne T1 berechnet worden ist, erfolgt "die Ausführung der Makrobewegung, indem das gesteuerte Maschinenelement in der X-Achse die Strecke '1X02 in den Zeitspannen T1 und T2 mit im wesentlichen
ao gleichförmiger Geschwindigkeit abfährt. Als nächste Größe muß die Makrobewegung A Y13 in der Y-Achse berechnet werden. Wie F i g. 25 d zeigt, muß zur Berechnung von A Y13 die Af-Koordinatenstrecke vom Punkt P2 zum Kreismittelpunkt C, also die umgekehrte X-Achsen-Wegkomponente /„ des Radiusvektors Rn, bekannt sein. /2 wird berechnet, indem die umgekehrte X-Achsen-Wegkomponente /0 des Radiusvektors R0 mit Hilfe der zuvor gebildeten X-Komponente JX02 der Sehne CH02 vorgerückt wird. Dies geschieht in der Zeitspanne T1, indem die zuvor gespeicherten Daten, die die X-Achsen-Wegkomponente /0 und die berechnete Makrobewegung JX02 darstellen, verarbeitet werden, um aus ihnen weitere Daten zu gewinnen, die die Größe /0A X02 nach Gleichung (23) in F i g. 25 c darstellen. Nach Berechnung der umgekehrten X-Komponente /2 des Radiusvektors R0 wird die Y-Komponente IY13 der nächsten vorn Punkt P1 zum Punkt P3 (F i g. 25 d) führenden Sehne berechnet, indem die /, darstellenden Dav'.i nach Gleichung (24) in Fig. 25d verarbeitet werden, um aus ihnen Digitalsignale zu gewinnen, die die Größe —'—= darstellen. Das
Resultat A Yn wird gespeichert, worauf in den Zeitspannen T2 und T3 die Makrobewegung 1Y13 in der Y-Achse mit im wesentlichen gleichförmiger Geschwindigkeit ausgeführt wird, wie F i g. 25 d zeigt. Außerdem wird die gespeicherte Makrobewegung A Y15 auch zur Berechnung der umgekehrten Y-Komponente J3 des Radiusvektors R3 benutzt, da diese Y-Komponente für die Erzeugung der nächsten Makrobewegung A X24 benötigt wird. Wie F i g. 25 e zeigt, wird die Y-Komponente J3 erzeugt, indem die umgekehrte Y-Komponente J1 des Radiusvektors R1
mit Hilfe der Y-Komponente A Y13 (= Makrobewegung A Y13) der Sehne CH13 vorgerückt wird. Datenverarbeitungstechnisch ausgedrückt, werden also in der Zeitspanne T2 die gespeicherten Daten, die die Größen J1 und A Y13 darstellen, verarbeitet, um aus
ihnen Daten zu gewinnen, die in numerischer Form die Größe J1 - /IY13 (Gleichung 25) beinhalten. Kurz danach, aber noch in der Zeitspanne T2, werden diese Daten dann weiter nach Gleichung (26) der F i g. 25 f verarbeitet, um Signale zu erzeugen,
die in numerischer Form die Größe
stellen, ^iese Größe ist die Af-Komponente der Sehne CHu, die vom Punkt P2 zum Punkt P4 (Fig. 25f)
107
108
geht. Die Signale, die die Makrobewegung J X24 darstellen, werden gespeichert und dann dazu benutzt, in den Zeitspannen T3 und T4 eine der Größe IX24 entsprechende Strecke in der X-Achse abzufahren.
In den Gleichungen (22) und (26) der Fig. 25b und 25f ist die rechte Seite jeweils positiv; dagegen tritt in F i g. 25 d ein negatives Vorzeichen auf. Die Vorzeichen, wie sie in Fig. 25b, 25c, 25d und 25f auftreten, sind charakteristisch für einen Linksbogen. Bei einem Rechtsbogen lauten die Vorzeichen der Gleichungen (22), (24) und (26) anders, wie nachstehend noch im Zusammenhang mit Fig. 29a erläutert wird.
Bei der alternierend-zirkularen Interpolation, wie sie in Verbindung mit Fig. 25 beschrieben wurde, erfolgt also die Bewegung auf zwei gegeneinander versetzten Sehnenreihen. Die erste Reihe Sehnen ist durch die Sehnen CH02 und CH24 in Fig. 25b und 25 f, die zweite Reihe Sehnen durch die Sehne CH1S in Fig. 25d dargestellt. Es ist nicht ganz genau, wenn man sagt, die Bewegung erfolge auf den Sehnen. Vielmehr erfolgt die Bewegung in der X-Achse entlang der X-Komponcnte der ersten Reihe Sehnen CH02 und CH2i und in der Y-Achse entlang der Y-Komponente der zweiten Reihe Sehnen. Außerdem sind Bewegungen entlang den beiden Sehnenreihen zeitlich gegeneinander versetzt, so daß es ziemlich schwierig ist, sich ein Bild vom tatsachlichen Weg des gesteuerten Maschinenelementes zu machen, dessen Bewegungen in der X- und der Y-Achse von der A'-Komponente der ersten und der Y-Komponente der zweiten Reihe Sehnen dargestellt werden.
Zur besseren Veranschaulichung des tatsächlichen, von den Komponenten X und Y der beiden Sehnenreihen gebildeten Weges zeigt Fig. 26a eine erste Reihe Sehnen, die die Punkte P0.. .P-, verbinden. Die X-Komponenten AX0,, AXn, .1.Y40 und 1.Y8n dieser Sehnen entsprechen den'Makrobewegungen, die auf der X-Achse in den Zeitspannen T1-T2, T3-T4, T5-T6 und T7-Te ausgeführt werden. Eine" zweite Reihe Sehnen zeigt Fig. 26b, und zwar eine halbe Sehne, die vom Punkt P0 zum Punkt P1 geht, sowie drei ganze Sehnen, die die Punkte P1 und Pn, P3 und P5 sowie Pe und P7 verbinden. Die Y-Komponenten A Y01, A Yj"j, A Y35' und A Y57 dieser zweiten Reihe Sehnen entsprechen den Makrobewegungen, die in den Zeitspannen T1, T*-Tv T.-T- und Tc-T. ausge-
DieTus den Bewegungskomponenten von F i g. 26 a und 26 b zusammengesetzte Bewegung zeigt F i g. 26 c, auf der die Punkte P0^-P1 mit den in Fig. 26a und 26 b dargestellten Koordinaten X und Y aufgetragen sind. Infolge des sehr stark übertriebenen Maßstabes weichen die aufgetragenen Punkte Pq. . .P7 (F i g. 27 c) deutlich von einem echten Kreisbogen ab. Die in Fig. 26a und 26b gezeichneten Sehnen liegen also deutlich neben dem Kreisbogen. Unter normalen Arbeitsbedingungen jedoch ist der Abstand von Punkt zu Punkt kleiner als 0,01 Zoll (0,25 mm), sg daß die Punkte P0.. .P7 (Fig. 26c) einer echten Kreislinie äußerst nahe kommen.
Verbindung mit F i g. 25 wurde von der Annahme ausgegangen, daß die gelieferte Grundinformation die inverse X-Komponente/0 des Radiusvektors A0 sowie die inverse /-Komponente Jx des Radiusvektorsfl, enthält. Mit dieser Annahme sollte die ausführliche Beschreibung der alternierend-zirkularen Interpolation zunächst vereinfacht werden. Normalerweise stehen die Komponenten I3 und J1 jedoch nicht zur Verfugung. Statt dessen kann damit gerechnet werden, daß die Anfangsinformation beide inverse Komponenten I0 und /0 eines einzigen Radiusvektors R0 enthält. Nach einem weiteren Merkmal der Erfindung erfolgt die Bildung der inversen Y-Komponente ^1 aus der inversen X-Komponente /0 und der inversen Y-Komponente J0, so daß man die Größen erhält, die zuvor als bekannt angenommen worden waren.
So werden vor der Zeitspanne T1 eine erste und eine zweite Reihe Datensignale erzeugt, die die inverse X-Komponente/0 sowie die inverse Y-Komponente J0 des Anfangsradiusvektors R0 darstellen. Die Signale, die die inverse X-Komponente /a darstellen, werden dann verarbeitet, um aus ihnen Datensignale zu gewinnen, die in numerischer Form die Größe darstellen_ Wie ρ ig. 27 zeigt, ist
R
zweimal SQ ß wie die y.KomDOnente
J YSi der in F i g. 27 gezeigten Sehne und umfaßt die Strecke AD vom Punkt P.x bis zum Punkt P1 auf dem Kreisbogen.
Sodann werden die Datensignale, die 2JY01 und ^0 darstellen, verarbeitet, um aus ihnen Signale zu gewinnen, die die Größe /0 - A Y01 darstellen. Das Resultat stellt die gewünschte Y-Komponente J1 weitgehend angenähert dar. Bei dieser Methode ergibt sich ein kleiner Fehler, da .1Y01 von /0, der Y-Koordinatenstrecke vom Mittelpunkt der Sehne (Fig. 27) zum Kreismittelpunkt C, subtrahiert werden müßte, wenn man genau J1 erhalten will. Da jedoch statt dessen .1Y01 von J0 subtrahiert wird, entsteht ein Fehler, der gleich /0J3 ist. Dieser Fehler ist jedoch vernachlässigbar und ist in Fig. 27 nur wegen der stark vergrößerten Darstellung zu erkennen.
2. Alternierend-zirkulares Interpolieren mit dem System von Fi^9
a· Atlgemeines
Arbeitet das numerische Steuerungssystem vcn F i g. 9 in der nachstehend beschriebenen Weise, so werden zwei Maschinenelemente auf einer zirkulären
Bahn relativ zueinander bewegt.
Zu den einzelnen Vorrichtungen des Systems, die in diesem Zusammenhang besonders wichtig sind, zählen eine erste und eine zweite Speichereinrichtung, die als Register 109 AX und 107.4Y dargestellt sind, Mit Hilfe von Vorrichtungen, zu denen auch dei Digitalrechner 53 gehört, wird in der ersten Speichereinrichtung eine erste Reihe Zahlen in abstands gleichen Zeitabschnitten AT gespeichert. Dies«
gegeoen smd
Bei der vorstehenden Beschreibung der alternierenden oder gestaffelten zirkulären Interpolation in
Punkte P0, P2 und P4 auf einem Kreisbogen dar, wi. Fig. 25a ... 25f zeigen. Mit Hilfe weiterer Vorrich tungen — zu denen wiederum der Digjtalrechn— 5;
109
110
gehört — wird eine zweite Reihe Zahlen in abstandsgleichen Zeitabschnitten AT' im Register 107 Δ Υ gespeichert. Die Zeitabschnitte AT sind dabei gegenüber den Zeitabschnitten AT symmetrisch versetzt, aber genauso lang wie jene. Diese zuletzt genannten Zahlen stellen jeweils eine der Y-Koordinatenstrekken zwischen einer zweiten Reihe Punkte P1, P3 und P5 auf dem Kreisbogen dar. Wie Fig. 25a ..'. 25f zeigen, sind die Punkte P1, P3 und P5 gegenüber den Punkten P0, P2 und P4 symmetrisch versetzt, treten aber im gleichen Abstand auf wie letztere.
Die Bildung dieser beiden Zahlenreihen dient dem Zweck, aufeinanderfolgende Makropositionen zu gewinnen, die in den jeweiligen Zeitabschnitten Δ Τ und AT' in der X- und Y-Achse angefahren werden sollen. Zu diesem Zweck sind Vorrichtungen vorgesehen, die unter dem Einfluß der im Register 109 A X stehenden Zahlen veranlassen, daß in aufeinanderfolgenden Zeitabschnitten Δ T — die jeweils einer der von den fortlaufenden Zahlen im Register 109JA" dargestellten .Y-Koordinatenstrecken entsprechen —, eine Relativbewegung zwischen den Maschinenelementen ausgeführt wird. Ebenso sind Vorrichtungen vorgesehen, die unter dem Einfluß der im aktiven Register 107 AY stehenden Zahlen veranlassen, daß in aufeinanderfolgenden Zeitabschnitten AT' — die jeweils einer der von den fortlaufenden Zahlen im aktiven Register 107 A Y dargestellten Y-Koordinatenstrecken entsprechen —, eine Relativbewegung zwischen den Maschinenelementen ausgeführt wird.
Wegstückes zum Mittelpunkt des Kreises, in Form der Koordinaten X und Y des Kreismittelpunktes gegeben werden können. In diesem Fall müßte das System einen zusätzlichen Rechengang durchführen, um aus der den Endpunkt des vorhergehenden Wegstückes angebenden Koordinate und den Koordinaten des Kreismittelpunktes des zirkulären Wegstückes die Komponenten / und / des Anfangsradiusvektors dieses zirkulären Wegstückes zu berechnen. Zur Vereinfachung der Beschreibung soll jedoch angenommen werden, daß wie bei einem linearen Block die Größen / und J des Anfangsradiusvektors gegeben sind.
Als fünfte und sechste Zahl stehen im zirkulären Block — wie bei einem linearen Block — die Zahlen G und Q, die die Bahnform bzw. den Makrobewegungsquotienten Q darstellen. Wie zuvor erwähnt, hat G bei einem Rechtsbogen den Wert 02 und bei einem Linksbogen den Wert 03.
Die Bedeutung des Makrobewegungsquotienten Q wurde bereits ausführlich im Zusammenhang mit Fig. 6 besprochen und kommt dort durch die Gleichung (8 a) zum Ausdruck. Praktisch ausgedrückt, ist der Makrobewegungsquotient Q gleich dem Verhältnis einer Makrobewegungssehne Λ D eines Kreisbogens (vgl. F i g. 6 a ... 6 d) zur Länge ilires Radiusvektors, also einfach
AD R
(27)
b. Format der Anfangsinformation für ein
Kreisbogenstück
35
Bevor näher auf das System eingegangen wird, soll zunächst das Datenformat betrachtet werden. Dabei wird angenommen, daß die Daten im Lochstreifen 37 stehen. Wie F i g. 4 zeigt, enthält der Lochstreifen zwei Zahlen in Form von Lochungen, die die X- und die Y-Koordinate des programmierten Endpunktes des vom System abzufahrenden Kreisbogens darstellen. Diese Koordinaten sind zunächst mit XEP bzw. YEP bezeichnet, solange sie in den Zwischenregistern 47 X und 47 Y stehen. Nach ihrer anschließenden Umspeicherung in die aktiven Register 95 XCEP und 97 YCEP tragen sie die Bezeichnung XCEP bzw. YCEP. Die ersten beiden Zahlen in einem Datenblock für ein zirkuläres Wegstück haben also die gleiche Bedeutung und tragen die gleiche Bezeichnung wie die entsprechenden Zahlen eines Datenblockes für ein lineares Wegstück.
Die nächsten beiden Zahlen in einem Dalenblock für ein zirkuläres Wegstück sind die Größen / und /. Auch diese Zahlen entsprechen den betreffenden Zahlen eines linearen Blockes insoweit, als sie die Koordinatenstrecken X und Y darstellen. In einem wichtigen Punkt unterscheiden sie sich jedoch: Die von ihnen dargestellten Koordinatenstrecken X und Y verlaufen nämlich von einem gegebenen Punkt auf dem Kreis zum Mittelpunkt dieses Kreises. In der Praxis treten die einzelnen Wegstücke nacheinander auf, wie F i g. 2 zeigt. Der Anfangspunkt eines gegebenen Wegstückes bildet also gleichzeitig den Endpunkt des vorhergehenden Wegstückes. Daraus folgt, daß die Komponenten / und / des Anfangsradiusvektors eines zirkulären Wegstückes, d. h. die Koordinatenstrecken X und Y vom Anfangspunkt des
c. Berechnung aufeinanderfolgender
Größen/,/,J* und Λ Υ
Nimmt man an, daß als nächstes ein zirkuläres Wegstück erzeugt werden soll, so sind die Daten des dieses Wegstück darstellenden Informationsblockes rechtzeitig vom Lochstreifen 37 in die Z,wischenregister 47 gebracht worden. Gegen Ende des dem zirkulären Wegstück unmittelbar vorangehenden Wegstückes werden die Daten für das zirkuläre Wegstück von den Zwischenregistern 47 in die aktiven Register 57 umgespeichert. Bei dem im F i g. 9 gezeigten Ausführungsbeispiel dient das Register 99/ zur vorübergehenden Aufnahme der Komponente In, die die A'-Koordinatenstrecke vom Anfangspunkt P0 auf dem Kreisbogen zum Kreismittelpun'kt darstellt. Ähnlich dient das Register 101/ zur Aufnahme der entsprechenden Komponente /0.
Wie zuvor erwähnt, nehmen die Register IÜ9AX und 107/1Y die Größen AX und AY auf, die die gewünschten Bewegungen in der X- bzw. Y-Achse beinhalten. Um die Y-Komponente J1 Ln der zuvor an Hand von F i g. 27 beschriebenen Weise berechnen zu können, ist eine erste Steuervorrichtung vorgesehen, die den Digitalrechner 53 anweist, die anfänglich gespeicherte Komponente /0 mit ± Q zu multiplizieren, und zwar mit +Q, wenn G 02, mit — Q, wenn G 03. Das Resultat stellt die doppelte, zu Beginn abzufahrende Strecke des Kreisbogens in Y-Richtung dar und wird im Register 107/J Y als erste Zahl Λ Υ gespeichert.
Eine zweite Steuervorrichtung veranlaßt den Digitalrechner 53, die anfänglich gespeicherte Komponente /0 durch eine neue Komponente J1 zu ersetzen, die gleich /„ minus der Hälfte der Größe
111
112
2.4Y01 ist. Außerdem veranlaßt die zweite Steuervorrichtung den Rechner, die sich ergebende Summe mit ±Q zu multiplizieren (mit — Q, wenn G02, mit + Q, wenn G 01) und das Produkt, das JX02, d.h. die erste abzufahrende Strecke des Kreisbogens in X-Richtung, darstellt, im Register 109 J X zu speichern.
Nachdem in den Registern 99/ und 101/ die Komponenten I0 und /, stehen, sind damit die in F i g. 25 a angenommenen Anfangsbedingungen erfüllt. Die Ausführung der von den Größen J Y01 und AX02 dargestellten Bewegungen soll zunächst unbeachtet bleiben. Eine dritte Steuervorrichtung weist den Rechner an, die anfänglich gespeicherte Komponente /0 durch eine neue Komponente J, zu ersetzen, die gleich /0 minus der gespeicherten ersten Komponente AX ist. Diese dritte Steuervorrichtung hat außerdem die Aufgabe, den Rechner anzuweisen, die sich ergebende Summe mit ± Q zu multiplizieren (mit -1-0, wenn Rechtsbogen, mit —Q, wenn Linksbogen) und das Produkt (nach Einbeziehung des vorhergehenden Restes YR) als neuen Wert A Y, der die nächste abzufahrende Strecke des Kreisbogens in Y-Richtung darstellt, an Stelle des ersten gespeicherten Wertes Λ Y zu speichern. Die von der dritten Steuervorrichtung ausgelösten Operationen sind durch die Vektordiagramme in F i g. 25 c und 25 d und die dort aufgeführten Gleichungen dargestellt.
Eine vierte Steuervorrichtung dient dazu, die im Register 101/ stehende Komponente J1 durch den Rest zu ersetzen, der sich aus /, minus neugespeichertem Wert 1 Y ergibt, diesen Rest mit Q zu multiplizieren und das so erhaltene Produkt, das (nach Abtrennung der niedrigsten Stellen) die nächste zu beschreibende Strecke des Kreisbogens in ΛΓ-Richtung darstellt, an Stelle des zuerst gespeicherten Wertes A X im Register 109AX zu speichern. Die hierfür erforderlichen Operationen werden vom Rechner unter dem Einfluß der vierten Steuervorrichtung ausgeführt. Außerdem haben die dritte und die vierte Steuervorrichtung die Aufgabe, in einem vorbestimmten Zeitabstand abwechselnd die ihnen obliegenden Steuerungen zu wiederholen, so daß A X und Δ Υ abwechselnd und wiederholt neu berechnet und gespeichert werden.
Zur Beschreibung des Kreisbogens wird die Folge von A X- und A Y-Zahlen von Vorrichtungen ausgewertet, die den Bogen in X- und Y-P:ichtung abfahren bzw. beschreiben, und zwar in Beträgen, die in der Y-Achse der Hälfte der ersten AY-Zahl und danach den fortlaufend neugespeicherten. Δ Y-Zahlen und in der ΑΓ-Achse der ersten Δ A"-Zahl und danach den fortlaufend neugespeicherten JAT-Zahlen entsprechen. Die Beschreibung des Kreisbogens ist real, kann aber in Form von elektrischen Positionssignalen erfolgen oder auch in Form von mechanischer Bewegung eines einzigen Maschinenelementes in zwei Bewegungsachsen relativ zu einem stationären Maschinenelement oder in Form einer Relativbewegung zwischen zwei Elementen, die rechtwinklig zueinander verfahren werden. Beim vorliegenden Ausführungsbeispiel erfolgt die Beschreibung des Kreisbogens sowohl elektrisch in Form von Makropositionssignalen, die vom Digitalrechner 53 erzeugt und in den Registern 117 XCP und 115 YCP gespeichert werden, als auch mechanisch durch Verfahren des Fräsers 14 mit Hilfe der Stellmotoren der Regelkreise 75 und 77.
Die vorstehende Beschreibung einiger Grundzüge der alternierend zirkulären Interpolation sowie deren Realisierung mit Hilfe des Steuerungssystems von Fig. 9 erfolgte an Hand der Diagramme von F i g. 25 a ... 25 f, die einen Kreisbogen zeigen, der links herum beschrieben wird. Bei der folgenden ausführlichen Beschreibung ist angenommen, daß das Wegstück 27 c von F i g. 2 erzeugt werden soll. Tatsächlich stellt die folgende Beschreibung die Fortsetzung der vorhergehenden ausführlichen ΐ> ohreibung dar, die sich mit der Erzeugung und ;.sführung des linearen Wegstückes 27 b befaßte und bis zu dem am Ende des Zeitabschnittes ^r1000 bzw. JT100, erreichten Endpunkt des linearen Blockes ging. Es sei angenommen, daß der Endpunkt am Ende des Zeitabschnittes JT1000 erreicht wurde. Nimmt man weiter an, daß das nach dem Wegstück 27 & auftretende Wegstück ebenfalls eine Gerade ist, dann wird im Zeitabschnitt JT1000 das Arbeitsspiel nach Fig. 17 durchgeführt, d.h., das Steuerungssystem arbeitet im Zeitabschnitt AT10n in der Betriebsstufe 4 und führt in zehn im wesentlichen gleich großen Mikrobewegungen die letzte der zehn korrigierten Makrobewegungen aus, die im Zeitabschnitt JT990 berechnet wurden. Im vorliegenden Fall jedoch stellt das Wegstück 27 c ein Kreisbogenstück dar, so daß im Anschluß an die Arbeitsspiele nach F i g. 22 ein anderes Arbeitsspiel als das in F i g. 17 gezeigte ausgeführt wird. Dieses andere Arbeitsspiel ist in F i g. 28 dargestellt.
Beide Arbeitsspiele nach Fig. 17 und 28 sind jedoch sehr ähnlich. In beiden werden die letzten korrigierten Makrobeweguncen in der X- und der Y-Achse für das vorhergehende gerade Wegstück ausgeführt. Und in beiden Arbeitsspielen werden auch die Daten von den Zwischenregistern 47 in die aktiven Register 57 umgespeichert, um sie bei der Berechnung der Makrobewegungen AX und AY für das nächste Wegstück zur Verfügung zu haben (linear, Fig. 17, und zirkulär, Fi g. 28).
Das Arbeitsspiel nach F i g. 28 unterscheidet sich vom Arbeitsspiel nach Fig. 17 dadurch, daß die Berechnungen, die in den letzten beiden Spalten der F i g. 28 durchgeführt werden, die Gewinnung der Anfangsmakrobewegungen für ein zirkuläres Wegstück betreffen, während die entsprechenden Operationen in den beiden letzten Spalten von Fig. 17 sich auf die Gewinnung der Anfangsmakrobewegungen für eine Gerade beziehen.
Wie Fig. 20 zeigt, kann ein Arbeitsspiel nach F i g. 28 nach einer Reihe verlängerter korrigierter Makrobewegungen (wie hier angenommen) oder auch nach einer Reihe verkürzter korrigierter Makrobewegungen auftreten. Diese zuletzt genannte Reihe korrigierter Makrobewegungen ist in Fig. 20 als untere Reihe von Arbeitsspielen nach F i g. 22 dargestellt, von denen das letzte im Zeitabschnitt JT1030 auftritt. Die Operationen, die bei der Übertragung von Daten aus den Zwischenregistern 47 in die aktiven Register 57 in Spalte 4600 von F i g. 28 auftreten, sind die gleichen, die zuvor im Zusammenhang mit Tabelle I beschrieben wurden. Sie brauchen daher hier nicht noch einmal wiederholt zu werden. Die erste für das Arbeitsspiel nach F i g. 28 charakteristische Reihe von Operationen tritt in Spalte 4800 auf. Es sind die Operationen, die in Tabelle II im einzelnen aufgeführt sind. Auf diese Tabelle wird jetzt wieder Bezug genommen.
113 114
d. DateDverarbeitungsoperationen, die vor der 351 (Bedingung 19). Im selben Programmschritt
Erzeugung von ein Kreisbogenstück darstellenden sowie in den nächsten vier Programmschritten
Signalen durchgeführt werden 4874 ... 4877 (G 02 + G 03) wird der im Register
107 Δ Υ stehende Makrobewegungswert fünfmal sub-Die erste Reihe Programmschritte 4817 ... 4864 5 traktiv in den Digitalrechner 53 gelesen, und zwar (G 02 + G 03) befaßt sich mit der Berechnung der .mit fünf Leseimpulsen, die das Register von seiner Größe 2AY01 (vgl. Fig. 27). Man erhält diese Programmtoranordnung 415 (Bedingung 16) erhält, Größe, indem man / mit Q multipliziert sowie mit Hilfe von fünf Subtrahierimpulsen, die die
Programmtoranordnung 479 (Bedingung 10) auf den
n _ Δ D \ ίο Rechner gibt.
y ~~ R I Im nächsten Programmschritt 4878 (G02 + G03)
wird der Inhalt des Antwortregisters 53 a, der die Größe -5(2JY01) darstellt, um eine Stelle nach
und das Produkt in den Registern WlAY und rechts verschoben, und zwar unter dem Einfluß eines 111 YR speichert. Läßt man das Vorzeichen des Pro- 15 entsprechenden Schiebeimpulses von der Programmduktes / · Q zunächst beiseite, so zeigt ein Vergleich türanordnung 411 (Bedingung 30). Infolge dieser der ersten und dritten Spalte in Tabelle II, daß die Verschiebung erscheint die Größe im Antwortregister in den Programmschritten4817...4864(G02+G03) 53a effektiv als -0,5(2JY01). Im nächsten Proausgeführten Operationen im wesentlichen die glei- grammschritt 4879 (G 02 + G 03) wird die im Rechen sind wie die in den entsprechenden Programm- ao gister 101/ stehende Komponente J0 mit Hilfe eines schritten der Spalte 4800 (G 01). Die beim zirkulären Leseimpulses der Programmtoranordnung 391 (Be-Interpolieren durchgeführten Operationen in den dingung 3) in den Digitalrechner 53 gebracht und Programmschritten 4817 bis 4864 (G 02 + G 03) automatisch zu der dort stehenden Größe —0,5 unterscheiden sich von den bei dem linearen Inter- (2 Δ Y01) addiert. Das Resultat
polieren in den Programmschritten 4817 ... 4864 25
(GOl) auftretenden Operationen hauptsächlich da- J0 - 0,5 (2 Δ Y01) = /0 - A Y01
durch, daß der Multiplikand nicht aus dem Register
101Z, sondern aus dem Register 99/ entnommen erscheint im Antwortregister 53 a im Programmschritt
wird. Dieser Unterschied kommt in der Bedingung 9 4880 (G02 + G03) und wird mit Hilfe eines Schreib-
der dem Register 99/ zugeordneten Programmtor- 30 impulses der Programmtoranordnung 357 (Bedin-
anordnung 400 zum Ausdruck, wonach das Register gung 3) in das aktive Register 101Z als Komponente
einen Leseimpuls im Programmschritt 4818 erhält, Z1 eingeschrieben.
vorausgesetzt, daß an den Ausgängen des Zuordners Zusammengefaßt wurden bis hier folgende Ope-
221 ein Signal G 02 oder G 03 auftritt. Die entspre- rationen durchgeführt: Nach der Umspeicherung eines
chende Bedingung 9 in der Programmtoranordnung 35 zirkulären Informationsblockes in die aktiven Register
391 des Registers 101/ ist nicht erfüllt, da hierzu 57 wurde die erste JY-Zahl, die die doppelte ge-
ein Signal G 01 am Ausgang des Zuordner? 221 auf- wünschte A.nfangsbewegung in Y-Richtung darstellt,
treten müßte, was jedoch nur dann der Fall ist, wenn aus den Größen /0 und Q berechnet. Aus der Δ Y-Zahl
das folgende Wegstück eine Gerade ist. und der vorgegebenen Größe Z0 wurde dann Z1 ge-
Das Produkt der in den Programmschritten 4° bildet und im Register 101Z gespeichert. Wie zuvor
4817 ... 4864 (G02 + G03) durchgeführten Multi- in Verbindung mit Fig. 25 beschrieben, wird Z1 be-
plikation wird in den Programmschritten 4868... 4871 nötigt, um die erste Makrobewegung JAT02 in der
(G 02 + G 03) in die aktiven Register 107JY und A"-Achse zu berechnen. Die hierzu erforderlichen
111 YR eingeschrieben, und zwar in genau der glei- Operationen stehen in Spalte 4900 (G02 + G03) der
chen Weise, wie zuvor im Zusammenhang mit der 45 Tabelle II.
Spalte 4800 (GOl) beschrieben. Kurz gesagt, wird Die ersten Operationen, die in den Programmdas Produkt IQm zwei Teile aufgeteilt, wobei die schritten 4918 ... 4971 (G 02 + G03) ausgeführt wervier niedrigsten Stellen im Register 111 YR und die den, entsprechen nahezu den Operationen, die in übrigen vier Stellen im Register 107 A Y gespeichert den entsprechenden Programmschritten 4918 ... 4917 werden. Auch zur Durchführung dieser Operationen 50 (GOl) vor der Berechnung der Makrobewegung J X werden wieder die gleichen Auftast- und Steuer- für das lineare Wegstück 27 b auftreten. Der Hauptimpulse benutzt wie bei den entsprechenden Opera- unterschied besteht darin, daß nicht /, sondern Z der tionen für ein lineares Wegstück, so daß sich eine Multiplikand ist, so daß zur Übertragung des Multinochmalige Beschreibung erübrigt. Die folgende plikanden in den Digitalrechner 53 ein Leseimpuls Operation jedoch tritt nur im Zusammenhang mit 55 von der Programmtoranordnung 391 (Bedingung 10) einem Kreisbogenstück auf, und zwar betrifft sie die im Programmschritt 4918 (G 02 + G 03) auf das ReBerechnung der Größe —0,5 J Y, die benötigt wird, gister 101Z gegeben wird. Die so herausgelesene Zahl um die erforderliche Anfangskomponente Z, in der ist Z, und wird mit Q multipliziert. Das Produkt erzuvor in Verbindung mit Fig. 27 beschriebenen scheint im Antwortregister 53a nach dem Programm-Weise zu bestimmen. Wie aus Fig. 27 bekannt, lautet 60 schritt 4964 (G02 + G03). Es wird dann in zwei der erste berechnete Makrobewegungswert 2JY01. Teile aufgeteilt und in den aktiven Registern 109JA" Mit dieser Operation wird also praktisch die als An- und 113 XR gespeichert. In den Registern 109 J A" fangsinformation gegebene Komponente J0 um 0,5 und 107JY stehen nunmehr die entsprechenden (2 J Y01) vorgerückt. Makrobewegungswerte, mit deren Hilfe die beiden Zu diesem Zweck wird zunächst im Programm- 65 ersten Makropositionen, die den Koordinaten X und Y schritt 4873 (G02 + G03) das Antwortregister 53a des Punktes P2 entsprechen, erzeugt werden,
geräumt, und zwar unter dem Einfluß eines entspre- Nunmehr soll eine weitere Maßnahme betrachtet chenden Räumimpulses der Programmtoranordnung werden, durch die sich zirkuläres Interpolieren vom
115
116
linearen Interpolieren unterscheidet. Sie betrifft die Auswahl des richtigen Vorzeichens für den Multiplikanden / oder /, je nachdem, ob der Kreisbogen rechts oder links herum beschrieben werden soll. Die Regehi für die Vorzeichenauswahl lassen sich leicht an Hand von Fig. 29a und 29b aufstellen. Diese Figuren stellen Vektordiagramme dar, die die Vorzeichen der Größen/, J, AX und AY in allen vier Quadranten während der Beschreibung eines Kreises im Uhrzeigersinn (Fig. 29a) oder im Gegemeigersinn (Fig. 29b) zeigen.
Wie F i g. 29 a zeigt, haben / und A X beim Erzeugen eines Rechtsbogens stets entgegengesetzte Vorzeichen. Dagegen haben / und A Y stets gleiche Vorzeichen. Beim Beschreiben eines Rechtsbogens müssen also laut Gleichung (18) und (19) stets — / un(j 4-/ benutzt werden, wenn AX und A Y das richtige Vorzeichen naben sollen.
Wird dagegen ein Linksbogen beschrieben, verhalten sich die Vorzeichen von / und J Y genau umgekehrt zueinander, und / und AX haben gleiche Vorzeichen, wie F i g. 29 b zeigt. / und A Y haben also in allen vier Quadranten entgegengesetzte Vorzeichen, / und AX dagegen gleiche Vorzeichen. Bei Anwendung der Gleichungen (18) und (19) bleibt also / unverändert; dagegen erhält / ein Minusvorzeichen. Unabhängig davon behalten jedoch / und / ihre eigenen Vorzeichen als Teil der von ihnen dargestellten Zahlen.
An anderer Stelle der Beschreibung wird der Vorg, der Größe/ oder / ein negatives Vorzeichen Q, bevor sie mit Q multipliziert wird, der wie zuvor im Zusammenhang mit den entsprechenden Programmschritten 4997.. .4999 (GOl) der Tabelle 11 beschrieben wurde. Durch diese letzte Weiterschaltung des Blockendezählers 186 wird das System aus
der Betriebsstufe 4 in die Stufe 1 geschaltet, wan die UND-Glieder 175 des logischen Zeitbasis-Schaltnetzes67 (Fig. 9d) aufgetastet werden. Die Operationen des Arbeitsspiels, welches das System beim Zirkularen Interpolieren in der Betriebsstufe / aus-
führt, sind in Fig. 31 aufgeführt. Bevor jedoch auf Fig. 31 näher eingegangen wird, soll zunächst an Hand von F i g. 30 eine reale Darstellung der bisher ausgeführten Operationen gegeben werden.
Ä bevor sie mit Q up ,
Kürze halber mit »Multiplizieren von / oder / mit
e. Reale Darstellung der im Anfangsstadium eines Rechtsbogens ausgeführten Makro- und Mikrobewegungen
Fig. 30aund 30b zeigen im einzelnen die Makro- und Mikrobewegungen, die in den ersten Arbeitsspie-
len des zirkulären Wegstückes 27 c ausgeführt werden. Der Anfangspunkt P0 in Fig. 30a und 30b entspricht dabei dem Punkt P, des zirkulären Wegstückes 27c von Fig. 2. Außerdem ist jeder einem vollständigen Arbeitsspiel nach Fig. 31 zugeordnete
Zeitabschnitt A T in zwei Zeitspannen, wie etwa die Zeitspannen T1 und T, in Fig. 30a und 30b, unterteilt. So besteht z.B. der Zeitabschnitt A T1001, in welchem das erste Arbeitsspiel zur Beschreibung des Wegstückes 27c ausgeführt wird, in Fig. 30a und
30 b aus den Zeitspannen T1 und T2.
Aus den Anfangsdaten, die die beiden Komponenten /0 und J0 des Anfangsradiusvektors R0 enthalten, wurde zunächst der Makrobewegungswert 2 A Y01 be-
35
.._ „ das gleiche, als wenn man sie
mit — 1 multipliziert.
Die vorstehenden Regeln zur Auswahl des Vorzeichens des Multiplikanden / oder / sind auch in F i g. 28 angegeben und bedürfen keiner weiteren Erläuterung. Die zur Durchführung dieser Regeln geeigneten Steuersignale sind in der Programmtoranordnung 479 (Fig. 9c) als Bedingungen 13 und 14 dargestellt. So erhält der Digitalrechner 53 beim Einlesen des Multiplikanden / in den Rechner im Programmschritt 4818 ein Steuersignal, das ihn anweist, dieser Zahl ein negatives Vorzeichen zu geben. Dieses Steuersignal wird erzeugt, sofern der dem Zwischenregister G zugeordnete Zuordner 221 (F i g. 9 k) ein Signal G03 abgibt; anders ausgedrückt, wenn die zu interpolierende Bahn linksherum führt. Wird der Multiplikand / im Programmschritt 4918 in den Rechner gelesen, so erhält dieser wiederum ein Steuersignal, um der Zahl ein negatives Vorzeichen zu geben, sofern der Zuordner 221 ein Signal G 02 abgibt, d. h., wenn die zu interpolierende Bahn rechtsherum läuft.
Nachdem die Größen A X02, 2AY01, I0 und J1 in den aktiven Registern IWAX, IQT AY, 99/ und 101 / stehen und G in den Programmschritten 4973 und 4974 (G 02 + G 03) in das aktive Register 105 G gebracht wurde, kann der Lochstreifenleser im Programmschritt 4995 (G02+G03) eingeschaltet werden, um in die Zwischen register 47 Daten zu bringen, die das nächste Wegstück 27d in Fig. 2 darstellen. Danach wird der Blockende-Zähler 186 von seinem Zahlenstand S14, den er im letzten Arbeitsspiel nach Fig. 22 erreicht hatte, über 515, 516 auf 51 gestellt, Hilfe der Komponente Z1 wurde dann in den grammschritten der Spalte 4900 (F i g. 28) der Makrobewegungswert AX02 berechnet, der in F i g. 30 b ei scheint. Am Ende des Arbeitsspiels nach Fig. 28, das dem Zeitabschnitt ΔT1000 von Fig. 20 entspricht, und kurz vor der Zeitspanne T1 in Fig. 30a und 30b, stehen also in den aktiven Registern 109JA" und 107.1 Y die Zahlen, die die zum Anfahren der Y-Koordinate des Punktes P1 und der ^-Koordinate des Punktes P2 erforderlichen Bewegungen in der Y- bzw. .Y-Achse darstellen. Im Register 101 / steht die Komponente J1 und im Register 99/ die Komponente /0.
Das ist der Stand der Daten, wie er sich am Anfang des Zeitabschnittes A T1301 ergibt. Das vorhergehende lineare Wegstück 27 b hat in diesem Augenblick gerade den Punkt P0 in F i g. 30 a und 30 b erreicht, so daß die nächste Art Arbeitsspiel beginnen kann. Dieses neue Arbeitsspiel ist in F i g. 31 dargestellt und wird zum erstenmal im Zeitabschnitt Δ T1001 ausgeführt und in den folgenden Zeitabschnitten dann viele Male wiederholt.
f. Datenverarbeitungsoperationen, die vom System
in Betriebsstufe 1 beim Beschreiben eines Kreisbogen:
ausgeführt werden
1) Infolge alternierender Interpolation ändern siel
die Daten für die Y-Achse, die zur Neuberechnunj
der im Register 119 Y5C stehenden Mikropositioi
benutzt werden, in der Mitte eines Arbeitsspiels Fig. 31 zeigt ein Arbeitsspiel, das für alternierend
zirkuläres Interpolieren typisch isi. Wie ein Vergleicl
(ο*
117 118
dieser Figur mit Fig. 18, die das entsprechende Ar- dem AX9.-, durch 10 dividiert und der gefundene beitsspiel für simultan-lineares Interpolieren darstellt, Quotient, also 0,1 Δ AT02 zu dem zu dieser Zeit im akzeigt, bestehen gewisse organisatorische Ähnlichkei- tiven Register 121 XSC stehenden Mikropositionsten. Zunächst stehen wie in Fig. 18 so auch in wert (X.,) addiert wird. Zur Neuberechnung der im F i g. 31 oben zwei Balken, die die Neuberechnung 5 aktiven Register 119 YSC stehenden Mikroposition der in den aktiven Registern 121 XSC und 119 YSC wird der Makrobewegungswert 2 A Y01, der im Restehenden Mikropositionen XSC und YSC darstellen. gister 107 Δ Y steht, in den folgenden fünf Programm-Diese Operationen sind mit denen beim zirkulären schritten durch 10 dividiert und das Resultat 0,2 A Yn Interpolieren ausgeführten Operationen identisch. zum Mikropositionswert (Y0) im Register 1191 YSC
Obwohl das Neuberechnen der Mikropositionen io addiert. Da Y0 die Y-Koordinatc des Punktes P0 bebeim zirkulären Interpolieren in der gleichen Weise zeichnet, stellt der neuberechnete Mikropositionswert erfolgt wie beim linearen Interpolieren, besteht doch Y0+ 0,2,1Y01 somit die Y-Koordinate der ersten im ein Unterschied in den Daten, der sich aus der erfin- Arbeitsspiel nach Fi g. 31 anzufahrenden Mikroposidungsgemäßen zeitlichen Staffelung beim zirkulären tion dar und ist in Fig. 30a dementisprechend be-Interpolieren ergibt. Wie aus der ausführlichen Be- 15 zeichnet. Der Mikropositionswert wird in allen Spalschreibung der linearen Interpolation in Verbindung ten 1100 . .. 1800 des Arbeitsspiels mich Fig. 31 jemit Fig. 18 bekannt, erfolgte die Neuberechnung der weils um 0,1 AX02 erhöht und in der letzten Spalte im aktiven Register 121 XSC stehenden Mikroposi- 190U mit dem neuberechneten Makropositionswert, tion auf der Grundlage des Makrobewegungswertes der X0 + .1 Af02 lautet, in Übereinstimmung gebracht. AX, der vor Beginn des Arbeitsspiels erzeugt und 20 In ähnlicher Weise wird auch der Mikropositionswert dann für das ganze Arbeitsspiel nach Fig. 18 gültig YSC in den Spalten 1100 ... 1401) jeweils um blieb. Das ist auch beim alternierenden Interpolieren 0,2 A Y01 erhöht, so daß sich nach der letzten Erder Fall; so stellt der Makrobewegungswert A X02, höhung ein Mikropositionswert ergibt, der gleich der in der Spalte 4900 der F i g. 28 berechnet wurde, Y0+Λ Y01 ist.
tatsächlich die Makrobewegung dar, die in den Zeit- 25 ,. .. ... . , , , , .. ,
spannen T1 und T2 (F i g. 30b) auszuführen ist. Beide 2). Modifizierung des neuberechneten Makro-Zeitspannen entsprechen zusammen dem Zeitab- positionswertes ICP unter Benutzung des neuen
schnitt A T1001, in dem das erste von vielen Arbeits- Makrobewegungswertes A Y
spielen nach F i g. 31 ausgeführt wird. Ein weiterer bedeutsamer Unterschied zwischen den
Der zur Neuberechnung der im Register 121 XSC 3° Arbeitsspielen nach Fig. 31 und 18 liegt in der Art stehenden Mikroposition benutzte Makropositions- der Neuberechnung der in den Registern 117 XCP wert bleibt also wie bei der linearen Interpolation und 115 YCP stehenden Makropositionen. Wie aus während des ganzen zirkulären Arbeitsspiels gültig. Fig. 18 bekannt ist, werden beim linearen Interpolie-Das gilt jedoch nicht für die Information, die zur ren beide Makropositionen ATCP und YCP in der Neuberechnung der im Register 119 YSC stehenden 35 Anfangsphase des Arbeitsspiels im wesentlichen zur Mikroposition benutzt wird. Der zu Beginn berech- selben Zeit neu berechnet, und zwar mit Hilfe von nete Makrobewegungswert 2AY01 gilt nämlich in Zahlen, die die am Ende des Arbeitsspiels zu errei-Y-Richtung nur bis zur Y-Koordinate des Punktes P1, chenden Makropositionen darstellen. Wie sich beim der am Ende der ersten Hälfte des in F i g. 31 ge- linearen Interpolieren zeigte, dient die Neuberechzeigten Arbeitsspiels erreicht werden soll. Tatsächlich 4° nung der Makropositionen einem doppelten Zweck, wird dann auch nur die Hälfte dieses Wertes, nämlich Zunächst werden die neuberechneten Makropositions-JY01, benutzt. Diese Hälfte stellt die abzufahrende werte XCP und YCP als Grundlage für die End-Y-Koordinatenstrecke vom Punkt P0 zum Punkt P1 punktannäherungs-Prüfung benutzt, bei welcher der dar. Für die in Spalte 1500 der F i g. 31 durchzufüh- Punkt vorausgesagt wird, der am Ende der elften rende Neuberechnung und die folgenden neun Neu- 45 Makrobewegung — die auf das Aibeitsspiel folgt, in berechnungen der Mikroposition im Register 121 YSC welchem die Prüfung vorgenommen wird —, erreicht muß daher ein neuer Makrobewegungswert A Y ge- wird. Außerdem dient die Neuberechnung der Makrobildet werden. Dieser neue Makrobewegungswert bil- Positionen dazu, Zahlen zu erhalten, die die am Ende det dann die Grundlage für die Neuberechnung der des Arbeitsspiels anzufahrende Mfikroposition genau Mikroposition YSC in der zweiten Hälfte des Arbeits- 5° darstellen, also Zahlen, die zur letzten Neuberechspiels von F i g. 31, in welchem der Makrobewegungs- nung der Mikropositionen benutzt werden können,
wert berechnet wurde, sowie für die erste Hälfte des Auch beim zirkulären Interpolieren dient die Neunächsten Arbeitsspiels. In Fig. 31 ist die zeitliche berechnung der in den aktiven Registern 117 XCP Staffelung der Neuberechnungen deT Mikropositionen und 115 YCP stehenden Makropositionen einem dop- XSC und YSC durch die Pfeile in den beiden oberen 55 pelten Zweck. Die Neuberechnung der Makropositio-Balken sowie durch die Aufteilung des die Neube- nen XCP und YCP im Arbeitsspiel nach Fi g. 31 berechnung von YSC darstellen Balkens in zwei Hälften ginnt zunächst genauso wie beim Arbeitsspiel nach dargestellt. Fig. 18, also wie beim linearen Interpolieren, d.h.,
Die Erzeugung der beiden ersten Mikropositionen der im aktiven Register 117 XCP stehende Makrofür die X- und Y-Achse sowie der folgenden Mikro- 60 positionswert wird in den Programmschrittten 1010 Positionen im Arbeitsspiel nach F i g. 31 läßt sich an ...1012 und der im aktiven Register 115 YCP Hand von Tabelle ΓΠ erläutern. Jede Operation, die stehende Makropositionswert in den ProgTammschritdort aufgeführt ist und zuvor bereits eingehend be- ten 1012... 1014 neu berechnet. Diese Operationen schrieben wurde, wird auch beim altemierend-zirku- sind in Tabelle TII im einzelnen aufgeführt. Die Zahl laren Interpolieren ausgeführt. So wird z.B. in den 65 ATP0+JX02, die im Register 117 XCP nach der ersten fünf Programmschritten der Spalte 1000 im Neuberechnung steht, stellt genau die X-Koordinate Arbeitsspiel der Fig. 31 die im aktiven Register Xt der Makroposition P8 dar, di« am Ende des Ar- 121 XSC stehende Mikroposition neu berechnet, in- beitsspiels erreicht wird. Das gldche gilt jedoch für
119 120
die Zahl, die nach der Neuberechnung im aktiven ven Register 115 YCP stehenden Makropositions-Register 115 YCP steht. Zur Neuberechnung des im wertes. Diese Operationen werden in den Spalten Register 115 YCP stehenden Makroposiüonswertes 1300 und 1500 eines Arbeitsspiels nach Fi g. 31 auswird nämlich der im Register 107 Δ Y stehende Ma- geführt. Ebenso wie zur Aufnahme der vier niedrigkrobewegungswert Y01 benutzt; d. h., der Makro- 5 sten Stellen des Makrobewegungswertes AX das Rebewegungswert 2 A Y01 wird zu dem vorhergehenden gister 111 YR vorgesehen ist, ist auch ein Register im Register 115 YCP stehenden Makropositionswert 116 YCPR vorgesehen, in dem die niedrigste Stelle Y0 addiert. Der Makrobewegungswert A Y gilt jedoch des neuberechneten Makropositionswertes YCP genur bis zur fünften im Arbeitsspiel von Fi g. 31 er- speichert wird. Die übrigen sieben Stellen des Makrozeugten Mikroposition, also bis zu der Mikroposition, io positionswertes werden im aktiven Register 115 YCP die in Spalte 1400 der Fi g. 31 erzeugt wird. Für die aufbewahrt.
nächsten fünf Mikropositionen dieses Arbeitsspiels Unter der weiteren Annahme, daß es sich bei dem
sowie für die ersten fünf Mikropositionen des nach- hier zu betrachtenden Arbeitsspiel von F i g. 31 um
sten Arbeitsspiels muß dann ein neuer die Makro- das in den Zeitspannen T1 und T2 (Fig. 30a und
bewegung A Y13 in Y-Richtung darstellender Wert A Y 15 30 b) auftretende Arbeitsspiel handelt, stellt der im
berechnet werden. Dies geschieht in Spalte 1400 der aktiven Register 115 YCP stehende Makropositions-
Fig. 31, nachdem die Mikropositionen ATSC und wert nach seiner Neuberechnung in Spalte 1000 die
YSC neu berechnet worden sind. Y-Koordinate des um die Makrobewegung 2 A Y01
Der neuberechnete Makropositionswert Y0+2zJ Y01, nach oben vorgerückten Punktes P2 dar. Algebraisch
der in Spalte 1000 des ersten Arbeitsspiels nach 20 ausgedrückt: YCT0+ 2/1Y01. Dieser Wert muß nun
Fig. 31 steht, ist ausreichend genau für die anschlie- korrigiert werden. Dies geschieht in Spalte 1300, in-
ßend in dieser Spalte durchzuführende Endpunkt- dem vom Makropositionswert zunächst die Hälfte des
annäherungs-Prüfung. Andererseits reicht seine Ge- Makrobewegungswertes, also Δ Y01, abgezogen wird,
nauigkeit jedoch nicht aus, die neue Makroposition Zu diesem Zweck werden im Programmschritt
in Spalte 1900 des Arbeitsspiels zu berechnen. Daher 25 1315 die sieben höchsten Stellen des YCP0 + 2 A Y01
sind Vorkehrungen getroffen, um den neuberechneten lautenden Makropositionswertes vom aktiven Register
Makropositionswert im Register 115 YCP zu korri- 115 YCP in den Digitalrechner 53 gebracht, indem
gieren, sobald der neue Makrobewegungswert das Register einen Leseimpuls von seiner ihm zuge-
Λ Yn — im Arbeitsspiel von F i g. 31 zur Verfü- ordneten Programmtoranordnung 425 (Bedingung 5)
gung steht. 30 erhält. Diese Ziffern erscheinen im nächsten Pro-
Wie diese Korrektur durchgeführt wird, läßt sich grammschritt 1316 (ZIR) in den Stufen 2 ... 8 des leichter verstehen, wenn man sich die in Spalte 1000 Antwortregisters 53 α und werden durch einen enterfolgende Neuberechnung der Makroposition Y0 so sprechenden Schiebeimpuls der Programmtoranordvorstellt, als würde man die gegenwärtig im Register nung 463 (Bedingung 4) um eine Stelle nach links 115 YCP stehende Makroposition Y0 um die volle 35 verschoben. Dadurch wird die Stufe 8 des Antwort-Makrobewegung 2 Δ Y01 vorverlegen. Man erkennt registers 53 α frei, so daß sie im Programmschritt dann, daß von dieser Makrobewegung 2 A Y01 nur die 1 i Π (ZlR) die im Register 116 YCPR stehende niederste Hälfte richtig ist, die zweite Hälfte, dagegen zu- rigstc Stelle des Makropositionswertes aufnehmen viel ist. Man kann diesen Fehler also korrigieren, in- kann. Den hierfür erforderlichen Leseimpuls erhält dem man den Punkt, der um die volle Makrobewe- 40 das Register 116 YCPR von einem Programmtor 489 gung 2/1Y01 vorverlegt worden war, um die Hälfte über ein ODER-Glied 491. Die höchste Stelle von dieser Bewegung zurückverlegt, also um Δ Y01, und YCP, die normalerweise in der Ziffemstufe 2 des dann erneut vorverlegt, und zwar um die Hälfte der Antwortregisters 53 a steht, befindet sich also jetzt in neuberechneten Makrobewegung A Y13, was tatsäch- der Ziffemstufe 1 dieses Registers, so daß die gegenlich für die zweite Hälfte des Arbeitsspiels nach 45 wärtig im Antwortregister stehende Zahl tatsächlich F i g. 31 auch richtig ist. den Wert 10 (YCP0 + 2A Y01) hat.
Um den in Spalte 1000 um eine volle Makrobewe- Um von dem ungenau erhöhten Makropositions-
gung2/lY01 vorgerückten Punkt zurückzuverlegen, wert YCP0 4 2 .1 Y01 die Hälfte des Makrobewegungs-
wird der im aktiven Register YCP 115 stehende Ma- wertes 2.1 Y01 abzuziehen, wird der ganze Makro-
kropositionswert um 0,5 (2.1 Y01) in Spalte 1300 ver- 50 bewegungswert Y01 fünfmal von 10 (YCP0 +
ringert. Das heißt, vom »alten« Makrobewegungswert 2.1 Y01) im Antwortregister 53a subtrahiert. Als Re-
2.1 Y01 wird die Hälfte abgezogen. Nach Berechnung sultat erhält man 10 (YCP0 + Δ Yq1). Dieses Resultat
des »neuen« Bewegungswertes Λ Y13 in Spalte 1400 wird dann einfach durch 18 dividiert und ergibt den
des Arbeitsspiels von Fig. 31 wird dann die Hälfte »verringerten« Makropositionswert YCP0 + Δ Y01. Zu
dieses Wertes zum »verringerten« Makropositions- 55 diesem Zweck wird der im aktiven Register 107 A Y
wert addiert, wodurch dieser erneut um 0,5 Λ Y er- stehende Makrobewegungswert 2.1 Y01 fünfmal sub-
höht wird und jetzt die Y-Koordinate (Y0+.1Y01 traktiv in den Digitalrechner53 gelesen, und zwar
+0,5/1 Y13) der MakropositionPj (Fig. 30 a) darstellt, jeweils einmal in den Programmschritten 1318 ...
die am Ende des Arbeitsspiels erreicht werden soll. 1322 (ZIR). Die hierfür erforderlichen Lese- und
Es wird nunmehr auf die Tabellen VI und VIa 60 Steuerimpulse sind in der Programmtoranordnung Bezug genommen, in denen alle für das Arbeitsspiel 479 der F i g. 9 c als Bedingung 5 dargestellt. Das nach Fig. 31 charakteristischen Operationen stehen, Resultat, 10 (YCP0 + A Y01), erscheint im Antwortausgenommen die Operationen, die in den ersten register 53 α im Programmschritt 1323 (ZIR).
13 Programmschritten jeder der zehn Spalten des Die niedrigste Stelle des Resultates wird im ProArbeitsspiels auftreten und in Tabelle III stehen. 65 grammschritt 1323 (ZIR) von der Ziffemstufe 8 des
Die ersten Operationen, die in Verbindung mit Antwortregisters53a in das Register 116 YCPR geTabelle VI beschrieben werden, betreffen die Ver- bracht, und zwar mit einem Schreibimpuls, den das ringerung und anschließende Erhöhung des im akti- Register 116 YCPR von einem Programmtor 493
121
122
über ein ODER-Glied 495 erhält. Die übrigen sieben Stellen des Resultates werden im Programmschritt
1324 (ZIR) von den Stufen 1 ... 7 nach rechts in die Stufen 2 ... 8 verschoben, indem die Programmtoranordnung 411 einen entsprechenden Schiebeimpuls (Bedingung 24) abgibt. Die niedrigste Stelle von 10 (YCP0 + Λ Y01) steht jetzt also im Register 116 YCPR, und die übrigen Stellen sind effektiv durch 10 dividiert worden. Damit stehen im Programmschritt
1325 (ZIR) die ersten sieben Stellen des Makropositionswertes YCP0 +AY01 im Antwortregister 53 a.
Diese Ziffern werden noch im selben Programmschritt in das aktive Register 115 YCP gebracht, indem das Register einen Schreibimpuls von seiner Programmloranordnung 427 (Bedingung 12) erhält. Der im Register 115 YCP stehende Makropositionswert ist also bis zur Mitte des Arbeitsspiels von F i g. 31 verringert worden und stellt genau die K-Koordinate YCP0 +AY01 der Makroposition P1 dar, die am Ende der ersten Hälfte des Arbeitsspiels von Fig. 31, d. h. ίο am Ende der Zeitspanne T1 von F i g. 30, erreicht werden soll.
Tabelle VI Operationen in Betriebsstufe 1 zirkulär
. 13 1000 ZlR 1300 ZlR 1400 ZlR 1500 ZlR 1900 ZlR
0.. siehe Tabelle III
14 wenn Bl. Z. 52, weiter
schalten
15 lies/ lies YCP lies YCP lies/
16 lies/
vergl.
schieb Ii. schieb Ii. lies A Y, SX
17 FAX auf »0«, wenn <
FAX auf »1«, wenn >
lies YCPR lies YCPR sehr. /, r. A.
18 r. Akk., FP
lies /, wenn FAX
lies /, wenn FAX
lies A Y, SX lies Δ Υ lies ± / und
multipl. mit Q
19 r. A., UBFF auf »0«
LBFF auf »0«
lies A Y, SX lies Δ Υ
20 lies YCP, wenn FAX
lies XCP, wenn FA~X
lies A Y, SX lies A Y
21 schiebe re. lies A Y, SX lies A Y
22 vergl.
lies YCEP, wenn FAX
lies XCEP, wenn FAX
lies A Y, SX lies A Y
23 UBFF auf »1«, wenn > sehr. YCPR sehr. YCPR
24 r. Akk., FP, SX
lies /, wenn FAX
lies /, wenn FAX
schieb re. schieb re.
25
26
schieb re.
lies YCP, wenn FAX
ües XCP, wenn FAX
sehr. YCP sehr. YCP führe Multipl.
± / · Q aus
27 schieb re.
28 vergl.
lies YCEP, wenn FAX
lies XCEP, wenn FA~X
29 LBFF auf »1«, wenn <.
30 räume Akk.
lies A X, wenn FAX
lies A Y, wenn FAX
31 sehr. ACNX
32 lies XCP, wenn FAX
lies YCP, wenn FA~X
33 schieb re.
34 SX
lies XCEP, wenn FAX
lies YCEP, wenn TXX
lies/
lies AX, SX
sehr. /, r. A.
lies Q
lies ± / und
multpl. mit
führe Multipl.
+ / · Q aus
FP = behandle wie pos, SX = subtrahiere.
123
124
1000 ZlR Tabelle ^ f
ι
i
\sm-zm fi
J
1900 ZlR stelle Bl. Z. ;
»ehe Anm. 1 1300 ZlR weiter, wenn S 3
chieb Ii. stelle Bl. Z. J
35 s chieb Ii.
X, lies Δ Y, wenn TXX
weiter, wenn 54
36 s lies ΔX, wenn FAX ihre Multpl.
Q durch
stelle Bl. Z. j
37 s
38 5
iesgl. weiter, wenn M 3
iesgl. stelle Bl. Z. 3
39 c iesgl. weiter, wenn M 3
40 ( desgl. stelle Bl. Z. 3
41 « siehe Anm. 2 weiter, wenn Mi
42 stelle Bl. Z.
43 »chieb 4 X Ii. weiter, wenn M 2
44... 64 [es XR stelle Bl. Z.
65 VIa schieb 4 X re weiter, wenn M 2
66 1400 ZlR sehr. JAT stelle Bl. Z.
67 nulle Reg. 1
schieb 4 X Ii
weiter, wenn M'.
68
69
sehr. XR stelle Bl. Z.
70 ühre Multpl.
• Q durch
weiter, wenn JVf.
71 stelle Bl. Z.
72... 88 weiter, wenn M
89 stelle Bl. Z.
weiter, wenn M
90
schieb 4 X Ii.
91 lies YR
schieb 4 X re.
92 sehr. Δ Υ
nulle Reg. 1
schieb 4 X Ii.
93 sehr. YR
keine Berechnungen
94
95
96
97
98
99
iU 1035 stelle Bloc.ende-Zähler auf 52,
i« 1043 stelle Blockende-Zähler auf S3, wenn S2
UB = obere Klammer, LB = untere Klammer, SX = subtrahiere.
Spalte 1400 ^ur Verfügung.
dann
125 126
larstellt. Zu diesem Zweck wird zu dem »verringer- zu bestimmen. Wie F i g. 30 a zeigt und wie aus der
en« Makropositionswert YCP0 +A Y01, der im Re- früheren Beschreibung in Verbindung mit Fig. 25c
>ister 115 YCP steht, die Hälfte des neuen Makro- und 25d bekannt, wird die Komponente/, zur Be-
jewegungswertes A Y13 addiert, so daß man als rieh- rechnung des Makrobewegungswertes Δ X13 benötigt.
:iges Resultat YCP0+A Y01 + 0,5 A Y13 erhält. Daß 5 Diebe Operation ist in Fig. 31 mit »erhöhe / durch
dieses Resultat richtig ist, zeigt Fi g. 30a. 1-ΔΧ« bezeichnet. Wie Fig. 29a bestätigt, muß
Wie Tabelle VI zeigt, werden zunächst die ersten beim Beschreiben eines Rechtsbogens der Makrosieben Stellen des Makropositionswertes YCP0+ AY01 bewegungswert A X von der Komponente/ subtravom Register 115 YCP in den Digitalrechner 53 ge- hiert werden, damit letztere im richtigen Sinn geänbracht.Dies geschieht im Programmschritt 1515(Z//?) io dert wird. Als Beispiel soll der vierte Quadrant bedurch Ankopplung eines Leseimpulses der Pro- trachtet werden; / und AX sind hier beide positiv. grammtoranordnung 425 an das Register 115 YCP Gleichgültig, welche Winkelstellung der Radiusvektor (Bedingung 6). Durch einen entsprechenden Schiebe- einer gegebenen /-Komponente auch einnimmt, seine impuls der Programmtoranordnung 463 (Bedin- /-Komponente muß kleiner werden, wenn er sich im gung 5) werden dann die sieben Ziffern im nächsten 15 Uhrzeigersinn dreht. Also ist klar, daß man, wenn Programmschritt 1516 (ZIR) aus den Stufen 2 ... 8 man AX subtrahiert, das richtige Ergebnis bekommt, in die Stufen 1 ... 7 des Antwortregisters 53 α ge- Das gleiche gilt für einen linksherum zu beschreibenschoben. Die achte und niedrigste Stelle von den Kreis, wie Fig. 29b zeigt. Man betracntete hier YCP0 +A Y01 wird im Programmschrilt 1517 (ZIR) z. B. den ersten Quadranten, in dem AX und / beide vom Register 116 YCPR in den Digitalrechner S3, 20 negativ sind. Auch hier gilt: Gleichgültig, welche und zwar in die Stufe 8 des Antwortregisters 53 α, Winkelstellung der Radiusvektor bei einer Linksgebracht, indem das Register 116 YCPR einen Lese- drehung auch einnimmt, seine /-Komponente muß impuls von einem Programmtor 497 über das ODER- kürzer werden, d. h., / muß zu einer kleineren nega-Glied491 erhält. Die jetzt im Antwortregister 53α tiven Zahl werden. Man subtrahiert daher von der stehende Zahl lautet also 10 (YCP0+. 1Y11). In den 25 negativen /-Komponente die negative /IA'-Komponächsten fünf Programmschritten 1518... 1522 nente und erhält als /-Komponente eine kleinere (ZIR) wird der neue Makrobewegungswert Λ Y13 negative Zahl.
fünfmal zu der im Antwortregister stehenden Zahl Um AX32 und /0 subtrahieren zu können, wird /0 addiert, indem die Programmtoranordnung 415 fünf im Programmschritt 1415 (ZIR) durch einen Lese-Leseimpulse auf das Register 107 A Y gibt (Bedin- 3° impuls der Programmtoranordnung400 (Bedingung 6) gung 15). Das Resultat, 10 (YCP0+A Y11 + 0,5 A Y1,), vom Register 99 / in den Digitalrechner 53 geholt Im erscheint im Antwortregister 53 im Programmschritt folgenden Programmschritt 1416 (ZIR) wird der im 1523 (ZIR). Die niedrigste Stelle davon wird im sei- aktiven Register 109 A X stehende Makrobewegungsben Programmschritt von der Stufe 8 des Antwort- wert AXnsubtraktiv in den Rechner, gelesen. Zu registers 53α in das Register 116 YCPR gebrachten- 35 diesem Zweck erhält das Register 109JA' im Prodem dieses Register einen Schreibimpuls" von seinem grammschritt 1416 (ZIR) einen Leseimpuls von seiner Programmtor 499 über das ODER-Glied 495 be- Programmtoranordnung 409 (Bedingung 13) und der kommt. Die übrigen sieben Stellen werden im nach- Digitalrechner 53 einen Subtrahierimpuls von seiner sten Programmschritt 1524 (ZIR) durch einen ent- Programmtoranordnung 479 (Bedingung 6). Die Difsprechenden Schiebeimpuls der Programmtoranord- 40 ferenz, /3-/IAT02, erscheint im Antwortregister 53a nung411 (Bedingung 25) aus den Stufen 1 ... 7 um im Programmschritt 1417 (ZIR) und wird als neue eine Stelle nach rechts verschoben. Im Programm- Komponente I2 in das Register 99/ eingeschrieben, schritt 1525 (ZIR) erscheinen diese Ziffern daher in indem die Programmtoranordnung 355 (Bedingung 1) den Stufen 2 ... 8 des Antwortregisters 53a und bil- einen Schreibimpuls auf dieses Register gibt.
den die höchsten Stellen von YCP0 + A Y01 + 0,5/1 Y,a. 45 Nachdem im Register 99/ jetzt dk. gewünschte Sie werden noch im selben Programmschritt in das Komponente /., steht, muß als nächstes der Makro-Register 115 YCP gebracht, und zwar mit einem bewegungswort
Schreibimpuls, den die Programmtoranordnung 427 I ■ A D
(Bedingung 4) an das Register abgibt. Damit ist die A Y13 = —
zweite Erhöhung des Makropositionswertes YCP be- 50 R
endet, so daß dieser Wert jetzt genau die Y-Koordi-
nate des Punktes P, angibt der am Ende des Arbeits- büdet d wie bek ist AD dm
spiels nach Fig. 31 erreicht werden soll (vgl. auch ° «
F i g. 30 a). Makrobewegungsquotienten Q, der im Register 103 Q
55 steht. Die Berechnung läßt sich also zu /2Q verein-
3) Berechnung fachen und erfolgt in den Programmschritten 1417
des neuen Makrobewegungswertes AY ... 1464 (ZlR), wie F i g. 31 zeigt. Wie der Tabelle VI
zu entnehmen ist, wird zu diesem Zweck der im Re-
Es sollen nun die Operationen betrachtet werden, gistcr 103 Q stehende Makrobewegungsquotient Q im
die zur Berechnung des neuen Makrobewegungswer- 60 Programmschritt 1417 (ZlR) durch einen Leseimpuls
tes A Y13 für die Y-Achse ausgeführt werden. Dabei der Prograrr mtoranordnung 389 (Bedingung 2) in den
wird zunächst auf Fig. 31 Bezug genommen, und Digitalrechner 53 gebracht, nachdem das Antwort-
zwar insbesondere auf die Spalte 1400, die kurz vor register 53« durch einen Räumimpuls der Programm-
der Zeitspanne 7\, (F i g. 30) auftritt. Die erste Auf- türanordnung 351 (Bedingung 10) geräumt worden
gäbe besteht darin, aus dem im aktiven Register 65 ist. Im nächsten Programmschritt 1418 (ZIR) wird die
109 A X stehenden Makrobewegungswert A Xnund neuberechnetc Komponente I2 vom Register 99/ in
der im Register 99/ stehenden Komponente Z0 die das entsprechende Register des Digitalrechners 53
Komponente/2 des Radiusvektors R2 von Fig. 30 a gebracht. Zu diesem Zweck erhält das Register 99/
127
128
m nächsten Programmschritt 1418 (ZIR) einen Lesernpuls von seiner Programmtoranordnung 400 (Bedingung 7). Im selben Programmschritt erhält außerdem der Digitalrechner 53 e:nen Multiplizierimpuls von seiner Programmtoranordnung 393 (Bedingung 1). Da der Kreisbogen rechtsherum beschrieben wird, muß die Komponente I2 für die anschließende Multiplikation entsprechend den aus F i g. 29 abgeleiteten Regeln positiv sein. Würde der Bogen links herum beschrieben, müßte / mit umgekehrtem Vorzeichen in den Digitalrechner 53 gebracht werden, was durch einen Minusimpuls SX der Programmtoranordnung 479 (Bedingung 11) bewirkt wurde.
Wie Tabelle VI a zeigt, wird die Multiplikation /ä ■ Q vom Digitalrechner 53 im Programmschritt
1464 (ZIR) beendet. Das Resultat erscheint im Antwortregister 53 α im Programmschritt 1465 (ZIR).
Die folgenden Operationen, die in den Programmschritten 1465... 1471 (ZIR) ausgeführt werden, sind die gleichen wie die in den Programmschritten
1465 ... 1471 (LW) auftretenden Operationen, die zuvor in Verbindung mit Fig. 18 und Tabelle IVa beschrieben wurden. Mit Hilfe dieser Operationen wird ein im Register 111 YR stehender Rest YR zum Produkt I2 · Q addiert, worauf die ersten vier Stellen der Summe als Makrobewegungswert Δ Y13 im Register 107,1 Y und die letzten vier Stellen im Register 111 YR gespeichert werden. Die hierzu erforderlichen Steuer- und Auftastimpulse sind durch folgende Bedingungen angedeutet:
Bedingung 1
der Programmtoranordnung 347 (F i g. 9 c), Bedingung 2
der Programmtoranordnung 399 (F i g. 9 h), Bedingung 1
der Programmtoranordnung 501 (F i g. 9 c), Bedingung 2
der Programmtoranordnung 395 (F i g. 9 h), Bedingung 1
der Programmtoranordnung 397 (F i g. 9 c), Bedingung 4
der Programmtoranordnung 347 (F i g. 9 c) und Bedingung 1
der Programmtoranordnung 398 (F i g. 9 h).
Nach Berechnung des Makrobewegungswertes 4Y13 in Programmspalte 1400 des Arbeitsspiels von Fig. 31 wird dieser Wert für drei Zwecke benutzt. Erstens wird der Makrobewegungswert Δ Yn in der nächsten Spalte 1500 und in den folgenden vier Spalten des laufenden Arbeitsspiels sowie in den ersten vier Spalten des nächsten Arbeitsspiels von F i g. 31 dazu benutzt, fortlaufende Mikropositionen in der Y-Achse zu erzeugen, indem der im aktiven Register 119 YSC stehende Mikropositionswert wiederholt neu berechnet wird. Wie Tabelle III zeigt, geschieht dies in den Programmschritten 05, 06 und 10 jeder Spalte 1500 ... 1800 und 1000 ... 1400 des Arbeitsspiels, indem der Makrobewegungswert Λ Y13 durch 10 dividiert und das Ergebnis zu dem im Register 119 YSC stehenden Mikropositionswert addiert wird. Zweitens wird der Makrobewegungswert Λ Yn dazu benutzt, die im Registei 115 YCP stehende Makroposition auf den für das Ende des Arbeitsspiels vorgesehenen Wert zu bringen. Dies wurde in den unmittelbar vorhergehenden Abschnitten erläutert. Drittens wird der Makrobewegungswert J Y13 dazu benutzt, die gegenwärtig im Register 101/ stehende Komponente J1 zu erhöhen, indem von dieser der Makrobewegungswert Δ Yn subtrahiert wird. Wie F i g. 30 a zeigt, ist das Resultat J3 die Y-Komponente des Punktes P3. Diese Komponente ist erforderlich, um
Δ Xa, =
-J3-D R
--J3-Q
zu berechnen.
Die Erhöhung der Komponente J1 sowie die anschließende Berechnung des neuen Makrobewegungswertes A X24, der für das nächste Arbeitsspiel benötigt wird, werden in der Spalte 1900 des laufenden Arbeitsspiels durchgeführt, und zwar gegen Ende des Arbeitsspiels. Zunächst wird im Programmschritt 1915 (ZIR) die Komponente J1 vom aktiven Register 101 J in den Digitalrechner 53 gebracht, indem das
so Register einen Leseimpuls von seiner Programmtoranordung391 (Bedingung 1) erhält. Danach wird der Makrcbewegungswert Λ Y13, der im aktiven Register 107 Λ Y steht, subtraktiv in den Digitalrechner 53 gelesen. Der hierzu erforderliche Leseimpuls sowie der Subtrahierimpuls sind in der Programmtoranordnung 415 (Fig. 9h) als Bedingung 17 und in der Programmtoranordnung 479 (F i g. 9 c) als Bedingung 7 angedeutet. Das Resultat, J3-J1- A Y13, erscheint im Antwortregister 53 α im nächsten Programmschritt 1917 (ZIR) und wird in diesem Programmschritt in das Register 101/ gebracht und dort gespeichert, indem dieses Register einen Schreibimpuls von seiner Programmtoranordnung 357 (Bedingung 1) erhält.
Damit ist die Erhöhung der /-Komponente beendet, so daß jetzt im Register 101/ praktisch die inverse Y-Komponente J3 des Radiusvektors R3 steht, der vom Punkt P1 zum Punkt P3 vorgerückt wurde. Als nächstes wird das Antwortregister 53 ο im ProgramiTischritt 1917 (ZlR) durch einen Räumimpuls der Programmtoranordnung 351 (Bedingung 11) geräumt und der Multiplikator Q mit Hilfe eines Leseimpulses der Programmtoranordnung 389 (Bedingung 4) in den Rechner geholt. Im Programmschritt 1918 (ZIR) wird der im Register 101/ stehende MuI-tiplikand /3 mit einem Leseimpuls der Programmtoranordnung 391 (Bedingung 2) in den Rechner gebracht. Da der Kreisbogen rechtsherum beschrieben wird, muß -Z3 benutzt werden. Die Komponente /s wird daher subtraktiv in den Rechner gelesen, wie die Bedingung 12 der Programmtoranordnung 479 zeigt. Nachdem der Multiplikand — J3 und der Multiplikator Q in den entsprechenden Speichereinrichtungen des Rechners stehen, wird im Programmschritt 1918 (ZIR) die Multiplikation -Z3 · Q mit einem Multiplizierimpuls der Programmtoranordnung 393 (Bedingung 2) begonnen. Wie die Tabellen VI und VI a zeigen, wird die Multiplikation -Z3-Q in den Programmschritten 1918... 1964 (ZlR) durchgeführt. Das Produkt, ■- /:! · Q, erscheint im Antwortregister 53a irn nächsten Programmschritt 1965 (ZIR). In den Programmschritten 1965 ... 1971 (ZIR) wird ein eventuell im Register 113 XR stehender Rest zum Produkt addiert. Das achtstellige Resultat im Antwortregistcr 53 a wird in zwei Teile geteilt, wovon der eine als Makrobewegungswert JXU im Register 109 Λ Χ und der andere als Rest von Λλ'24 im Register 113 XR gespeichert werden, und zwar in der gleichen Weise, wie zuvor in Verbindung mit den
129
ti*
130
Programmschritten 196j... 1971 der Tabelle IVa beschrieben wurde.
Während der Ausführung des im Uhrzeigersinn verlaufenden zirkulären Wegstückes 27 c wird das Arbeitsspiel von F i g. 31 viele Male wiederholt. So wird z. B. im nächsten Zeitabschnitt Δ 7\002 die Komponente I2 auf /4 = I2 —ΔΧ erhöht, worauf mit /4 der nächste Makrobewegungswert Δ Y35 — I^-Q berechnet wird, und zwar in der Spalte 1400 bzw. in F i g. 30 kurz vor dem Ende der Zeitspanne T3. Die Ausführung der Makrobewegung Δ Y35 erfolgt dann in den Zeitspannen T1, T5 mit im wesentlichen konstanter Geschwindigkeit und in zehn im wesentlichen gleich großen Schritten. Anschließend wird in Spalte 1900 des zweiten Arbeitsspiels nach Fig. 31 die Komponente J3 auf J5 = J3 —Δ Y35 vorgerückt, und zwar kurz vor dem Ende der Zeitspanne Tt in Fi g. 30. Die neue Komponente J5 wird dann zur Berechnung des nächsten Makrobewegungswertes AXie = -J5-Q benutzt, der dann in den Zeitspannen T5 und T6 der Fig. 30 infolge der periodischen Neuberechnung der im aktiven Register 121A1SC stehenden Makroposition wiederum in zehn gleich großen Schritten ausgeführt wird.
15 g. Besondere Vorteile einer zweistufigen Interpolation beim Beschreiben von Kreisbogen
Wie zuvor im Zusammenhang mit dem linearen Interpolieren festgestellt wurde, brauchen die Makrobewegungswerte Δ X und Λ Υ beim Erzeugen einer Geraden nicht in jedem Arbeitsspiel neu berechnet zu werden, sofern Vorkehrungen für· eine extrem feine Auflösung getroffen sind, d. h., sofern also der Rest unbedeutend ist. Theoretisch wäre es daher möglich, zum linearen Interpolieren ein einstufiges Verfahren zu benutzen, bei dem die Mikrobewegungswerte
ΔΧ
10
und
AX
10
im ersten Arbeitsspiel nach Fig. 17 einfach durch Ausführung der Berechnungen
JQ
10
und
10
bestimmt werden. Mit anderen Worten: Die lineare Interpolation könnte allein durch Berechnen von Mikrobewegungen und Mikropositionen durchgeführt werden, ohne dazwischen Makrobewegungen und Makropositionen berechnen zu müssen. Beim zirkulären Interpolieren liegen die Dinge jedoch wesentlich anders. Beim Erzeugen eines Kreisbogenstückes ändern sich nämlich die Makrobewegungswerte JA' und Λ Y ständig. Man kann also unmöglich zu Beginn zwei Makrobewegunpswerte AX und AY oder zwei Mikrobewegungswerte
AX
10
und
AY
10
60
berechnen und diese Werte dann für das ganze Wegstück benutzen. Im Gegenteil, wie Fig. 30a und 30b zeigen, ändert sich die in einem bestimmten Zeitabschnitt A T abzufahrende Strecke in beiden Koordinatenachsen ständig. Wollte man jedoch alle aufeinanderfolgenden Mikrobewegungen und Mikropositionen jeweils durch Multiplizieren einer Radiusvektorkomponente / oder y mit dem Quotienten Q berechnen, würde dies an einen Computer sehr hohe Anforderungen stellen. Würde man andererseits aber nur Makrobewegungen A X und Δ Υ und Makropositionen XCP und YCP berechnen, so würden die dabei erzeugten Punkte relativ weit auseinanderliegen und eine Oberfläche ergeben, die nicht für alle Ansprüche ausreichend glatt ist. Hier nun kann das zweistufige Interpolationsverfahren mit bestem Erfolg angewandt werden. Die relativ langwierige Berechnung von / · Q und / · Q wird nur zur Bildung der Makrobewegungswerte AX und Δ Υ angewandt, während zur Bildung der Zwischenwerte, d. h. der Mikropositionen, das viel einfachere Verfahren, jeden neuen Mikrobewegungswert AX und AY durch 10 zu dividieren und das Resultat zu den in den Registern 121XSC und 119 YSC stehenden Mikropositionswerten zu addieren, benutzt wird.
h. Beenden des zirkulären Wegstückes
1) Makrobewegungen sind nicht korrigiert, so daß
der Endpunkt nicht unbedingt am Ende eines
Arbeitsspiels erreicht wird
Die Art, wie ein Kreisbogenstück erfindungsgemäß beendet wird, ist in verschiedener Hinsicht dem zuvor beschriebenen Abschluß eines geraden Wegstückes ähnlich. Es werden in jedem Zeitabschnitt Δ Τ »voraussehende« Signale erzeugt, die die auf der schnellen Bewegungsachse vorverlegte Koordinate des Punktes darstellen, der auf dem Kreisbogenstück in einem folgenden Zeitabschnitt erreicht wird. Diese voraussehenden Signale werden mit Signalen verglichen, die den programmierten Endpunkt des Wegstückes darstellen. In dem ersten Zeitabschnitt, in welchem der Vergleich anzeigt, daß die von den voraussehenden Signalen dargestellte Koordinate auf der schnellen Bewegungsachse die entsprechende Koordinate des programmierten Endpunktes überfahren hat, wird ein Warnsignal abgegeben. Außerdem wird wie bei einem geraden Wegstück in jedem Zeitabschnitt A T ermittelt, wie groß der vorverlegte Überlauf ist. Hat die von den vorausgehenden Signalen dargestellte Koordinate auf der schnellen Bewegungsachse die entsprechende Koordinate des Endpunktes um mehr als eine halbe Makrobewegung überfahren, so wird ein zusätzliches Signal erzeugt. Beendet wird die Bewegung am Ende des Zeitabschnittes, der dem Zeitabschnitt vorausgeht, für den das Auftreten eines Überlaufs vorausgesagt wurde, wenn sowohl das Warnsignal als auch das zusätzliche Signal erzeugt wird, d. h., wenn der vorverlegte Überlauf größer als eine halbe Makrobewegung ist. Wird nur das Warnsignal erzeugt, was besagt, daß der Überlauf eine halbe Makrobewegung nicht überschreitet, so wird die Bewegung am Ende des Zeitabschnittes beendet, für den der Überlauf vorausgesagt wurde.
Wird das zuvor kurz beschriebene Beendigungsverfahren an einer Geraden durchgeführt, und zwar in Verbindung mit der Korrektur der Makrobewegungen, um den Endpunkt genau anzufahren, so muß das Auftreten eines Überlaufs mehrere Zeitabschnitte A T im voraus angezeigt werden, damit eine ausreichende Anzahl dieser Zeitabschnitte zum Berechnen und Ausführen der korrigierten Makrobewegungen zur Verfugung steht. Bei der Beendigung eines Kreisbogenstückes erfolgt dagegen im vorliegenden Aus-
131
132
führungsbeispiel keine Korrektur der Makrobewegungen. Vielmehr werden die Makrobewegungen auch weiterhin auf der Grundlage der ursprünglich gelieferten Daten berechnet, und es wird zugelassen, daß der Endpunkt womöglich über- oder unterfahren wird. Anders ausgedrückt, wird das Wegstück am Ende des Zeitabschnittes beendet, für d;n ein Überlauf vorausgesagt wurde, so tritt diesel Überlauf auch tatsächlich auf. Wird das Wegstück dagegen bereits in dem unmittelbar davor auftretenden Zeitabschnitt beendet, so wird es kurz vor dem programmierten Endpunkt fertig; der Endpunkt wird also unterfahren. Dadurch kaui in die für das nächste Wegstück durchzuführende Interpolation ein kleiner Fehler eingehen. Unter bestimmten Umständen kann dieser Fehler vernachlässigt werden. In diesem Fall beginnt das nächste Wegstück auf der Grundlage der ursprünglich gelieferten Information. Der dabei entstandene Fehler entspricht einer Nullpunktverschiebung.
Andererseits gibt es Fälle, in denen die Nullpunktabweichung, die durch die am Ende eines Zeilabschnittes Δ T ohne Korrektur erfolgte Beendigung des zirkularen Wegstückes verursacht wird, nicht mehr zulässig ist. Um das System auch in solchen Fällen einsetzen zu können, ist eine vollkommen andere Art Korrektur vorgesehen, mit der vermieden wird, daß das Wegstück nicht genau an seinem programmierten Endpunkt beendet wird. Diese Korrektur, mit der einige der das nächste Wegstück darstellenden Daten modifiziert werden, wird nachstehend in den Abschnitten D2k und 1 ausführlich beschrieben.
2) Feststellen der Endpunktnähe in beiden
Bewegungsachsen erforderlich
35
Die Operationen, die mit der Vorhersage eines vorverlegten Überlaufs sowie mit dem Ermitteln der Größe des Überlaufs verbunden sind, sind in der Spalte 1000 der Fig. 31 in allgemeiner Form dargestellt. Sie entsprechen einer ähnlichen Reihe Operationen, die während einer typischen Makrobewegung beim simultan-linearen Interpolieren auftreten und in Spalte 1000 der Fig. 18 stehen. Die erste Operation besteht darin, die in den aktiven Registern 117.VCP und 115YCP stehenden Makropositionswerte zu erhöhen, so daß sie den am Ende des Arbeitsspiels nach F i g. 31 anzufahrenden Makropositionen entsprechen. Dies entspricht einer Vorhersage der Positionen in der X- und der V-Achse, die vom Wegstück bzw. von einem das Wegstück abfahrenden Maschinenelement am Ende des Zeitabschnittes J T erreicht werden. Sodann wird ermittelt, welche der beiden Bewegungsachsen die schnellere ist, so daß auf dieser Achse die Vorverlegung eines Punktes in Richtung Endpunkt erfolgen kann. Die Prüfung, die auf dem Vergleich eines auf der schnellen Bewegungsachse vorverlegten Punktes mit der entsprechenden Koordinate des programmierten Endpunktes des betreffenden Wegstückes beruht, reicht jedoch allein noch nicht aus, eine eindeutige Anzeige für ein Überfahren des programmierten Endpunktes zu liefern. Warum das so ist, ergibt sich aus Fig. 32. Diese Figur zeigt die Bewegung auf einem Rechtsbogen im zweiten und ersten Quadranten zu einem programmierten Endpunkt, dessen Koordinaten X und Y XCEP und YCEP lauten. DerEndpunkt in F i g. 32 liegt in der oberen Hälfte des ersten Quadranten, so daß die ΑΓ-Achse die schnelle Bewegungsachse ist,
d. h., die Bewegung auf dieser Achse erfolgt mit einer höheren Geschwindigkeit als auf der y-Achse. Die voraussehenden Signale werdea also für die Af-Achse erzeugt, und die Ermittlung eines vorverlegten Überlaufs erfolgt auf der Basis eines Vergleichs dieser Signale mit den Signalen, die die Endpunkt-Koordinate XCEP darstellen. Bei dem in Fig. 32 angenommenen Fall würde eine solche Prüfung das richtige Ergebnis liefern, da bei einer rechtsläufigen Bewegung und der im ersten Quadranten liegenden Koordinate YCEP des programmierten Endpunktes ein Überlauf tatsächlich auftreten würde.
Es sei jedoch angenommen, daß der prorainmierte Endpunkt die Koordinaten XCEPIYCEP' hat, also im vierten Quadranten liegt, wie Fig. 32 zeigt. In diesem Fall ergibt ein Vergleich der voraussehenden Signale auf der schnellen Bewegungsachse mit der enisprechenden Koordinate XCEP des programmierten Endpunktes allein ein falsches Ergebnis, weil zwar richtigerweise angezeigt wird, daß der Endpunkt XCEPIYCEP' auf der #-Achse bald erreicht ist, diese Anzeige jedoch vom System fälschlicherweise dahingehend interpretiert wird, daß der Endpunkt auch in der F-Achse bald erreicht ist. Zur Vermeidung einer Falschanzeige der Endpunktannäherung wird vom erfindungsgemäßen System daher eine Vorprüfung vorgenommen, um festzustellen, ob die Bewegung in der langsamen Bewegungsachse die Nähe des programmierten Endpunktes erreicht hat oder nicht.
3) Ermittlung der Endpunktnähe in der langsamen
Bewegungsachse
Um sicherzugehen, daß ein zirkuläres Wegstück wie das von Fig. 32 seinen proj/ammiertenEndpunkt und nicht lediglich das Scheinbild dieses Punktes überfahren hat, wird eine besondere Prüfung durchgeführt. So werden bei jeder Vorverlegung einer Makropositionskoordinate auf der schnellen Bewegungsachse zwei Koordinaten auf der langsamen Bewegungsachse erzeugt, die eine benachbarte, auf der langsamen Achse liegende Makropositionskoordinate »einklammern«. Genauer gesagt, wird in jedem Arbeitsspiel eine einer Makrobewegung entsprechende Punktvorverlegung von der Makropositionskoordinate XCP auf der schnellen Bewegungsachse in Richtung dei auf dieser Achse liegenden Endpunkt-Koordinate XCEP vorgenommen. Außerdem werden, wie Fig. 32 zeigt, zwei Punkte PL1 und PL2 erzeugt, die etwas ober- und unterhalb der Makropositionskoordinate YCP der F-Achse liegen. Die Punkte PL1 und PL2 lassen sich schnell berechnen, indem man den absbluten Wert 0,1 / zur Koordinate YCP addiert bzw. von dieser subtrahiert, wodurch sich für den Punkt PL1 YCP+ 0,1 J\ und für den Punkt PL. YCP -0,1/; ergibt. Mit anderen Worten: Die »Länge der Klammer« auf der langsamen Bewegungsachse beträgt 0,2/. Liegt YCEP, die Koordinate des Endpunktes in der langsamen Bewegungsachse, innerhalb des eingeklammerten Bereiches, d. h., ist sie kleiner als YCP +10,1 /| und größer als YCP — j 0,1 /', so fällt die Prüfung an der langsamen Bewegungsachse positiv aus, indem sie anzeigt, daß sich der programmierte Endpunkt tatsächlich nähert. Ergibt also die an der schnellen Bewegungsachse vorgenommene Prüfung einen Überlauf, so interpretiert das System dies als ein wirkliches, vorverlegtes Überfahren des programmierten Endpunktes. Man
133
134
kann also sagen, daß neben der Vorausabsuchung auf der schnellen Bewegungsachse noch ein Sucher zu beiden Seiten der langsamen Bewegungsachse postiert ist, um festzustellen, ob sich ein Endpunkt nähert.
4) Feststellen, ob mit einem Überfahren des
programmierten Endpunktes in der schnellen
Bewegungsachse zu rechnen ist
Nachdem festgestellt wurde, ob sich der Endpunkt auf der langsamen Bewegungsachse nähert, wird die zuvor für den laufenden Zeitabschnitt Λ Τ vorausgesagte Makroposition um eine Makrobewegung vorverlegt. Die hieraus resultierenden Signale stellen also tatsächlich den Punkt dar, der am Ende des nächsten Arbeitsspiels auf der schnellen Bewegungsachse erreicht wird. Dieser Punkt wird nun mit der entsprechenden Koordinate des programmierten Endpunktes des Wegstückes mit Hilfe einer »Überlaufberechnung« verglichen. Wird dabei ein vorverlegter Überlauf tatsächlich ermittelt, und hat die zuvor an der langsamen Bewegungsachse vorgenommene Endpunktannäherungs-Prüfung ergeben, daß das Wegstück die Nähe der auf der langsamen Bewegungsachse liegenden Koordinate des programmierten Endpunktes erreicht hat, so wird der Blockende-Zähler 186 wie bei einem geraden Wegstück auf S 2 weitergeschaltet. Danach wird die auf der schnellen Bewegungsachse vorverlegte Makroposition wie bei einem geraden Wegstück um eine halbe Makrobewegung zurückverlegt, worauf die entsprechende Koordinate des programmierten Endpunktes ein zweites Mal verglichen wird, um festzustellen, ob noch immer ein Überlauf vorliegt, wenn nicht, so bedeutet dies, daß im Falle der Durchführung eines weiteren Arbeitsspiels nach Fig. 31 im nächsten Zeitabschnitt der auf der schnellen Beweeungsachse auftretende Überlauf größer ist als eine halbe Makrobewegung. In diesem Fall wird der Blockende-Zähler 186 um eine weitere Einheit auf 53 geschaltet.
5) Typische Arbeitsspiele zur Beendigung eines Kreisbogenstückes
Fig. 31 zeigt ein typisches Arbeitsspiel, das während der Erzeugung und Ausführung von Daten, die Punkte auf einem Kreisbogenstück darstellen, ausgeführt vird, solange kein Überlauf ermittelt worden ist. Daher sind in Programmspalte 1000 die die Weiterschaltung des Blockende-Zählers betreffenden Blöcke durchgestrichen, denn die für eine Weiterschaltung des Zählers erforderlichen Voraussetzungen liegen bei einem Arbeitsspiel dieser Art nicht vor. Dagegen zeigt Fig. 33 ein Arbeitsspiel, in dem ein großer Überlauf ermittelt wird, wodurch der Blockende-Zähler 186 von seinem ersten Zahlenstand Sl über S2 auf 53 geschaltet wird. Bei diesem Arbeitsspiel sind daher die betreffenden Blöcke in Spalte 1000 nicht durchgestrichen.
Bei der durch das Arbeitsspiel von Fig. 33 angedeuteten Situation, also bei Ermittlung eines großen Überlaufs, muß das Wegstück in dem Zeitabschnitt beendet werden, der unmittelbar dem Zeitabschnitt voraufgeht, für den ein solcher Überlauf vorausgesagt wurde. Da der Überlauf im Arbeitsspiel nach Fig. 33 für den nächsten Zeitabschnitt vorausgesagt wurde, muß also das Wegstück am Ende des Arbeitsspiels von Fig. 33 beendet werden, und im selben Arbeitsspiel müssen die Grundberechnungen vorgenommen werden, die zur Umwandlung der /-, J- und Q-Diiten in Makrobewegungswerte erfordcrlieh sind. Daher muß das System während des Arbeitsspiels vcn Fig. 33 von der Betriebsstufe 1 in die Stufe 4 umgeschaltet werden, wie die Beschriftung der letzten vier Spalten 4600, 4700, 4800 und 4900 des Arbeitsspiels zeigt.
ίο Wie noch näher beschrieben wird, handelt es sich bei den in den letzten vier Spalten 4600 ... 4900 des Arbeitsspiels von Fig. 33 durchgeführten Berechnungen um Operationen, die erforderlich sind, wenn das nächste Wegstück eine Gerade ist. Ist das nächste Wegstück dagegen ein Kreisbogenstück, so müssen die Berechnungen durchgeführt werden, die in den letzten vier Spalten des Arbeitsspiels von Fig. 34 aufgeführt sind. Dieses Arbeitsspiel ist mit dem Aibeitsspel von Fig. 33 identisch, ausgenommen die letzten vier Spalten.
Fig. 35 zeigt ein Arbeitsspiel, in dem ein kleiner Überlauf ermitult wird, in dem also der Blockende-Zähler 186 nur auf 52 sveitergeschaltet wird, wie der durchgestrichene letzte Block in Spalte 1000 dieses Arbeitsspiels andeutet. Das Arbeitsspiel von Fig. 35, in dem ein kleiner Überlauf ermittelt wird, unterscheidet sich vom Arbeitsspiel der Fig. 31, in dem kein Überlauf ermittelt wird, lediglich dadurch, daß der Blcckende-Zähler 186 von 51 auf S2 geschaltet wird. Alle anderen im Arbeitsspiel von F i g. 35 vorgenommenen Berechnungen sind genau die gleichen wie beim Arbeitsspiel von Fig. 31. In dem Flußdiagramm von Fi g. 20 sind diese drei möglichen Arbeitsspiele (Fig. 33, 34 und 35) so dargestellt, als ob sie im Zeitabschnitt AT„:m auftreten. Diese Zeitangabe ist jedoch willkürlich und nur zur Veranschaulichung gewählt. Sie entspricht allgemein der Länge des zirkulären Wegstückes 27c im Vergleich zur Länge des vorhergehenden linearen Weg-Stückes 27 b von F i g. 2.
F i g. 36 zeigt den Verlauf in dem Arbeitsspiel, das im Anschluß an das Arbeitsspiel von Fig. 35 auftritt, in welchem ein kleiner Überlauf ermittelt wurde. Nach F i g. 20 tritt dieses Arbeitsspiel im Zeitabschnitt .17".,-,,, auf. Charakteristisch für dieses Arbeitsspiel ist die Weiterschaltung des Blockende-Zählers 186 in Spalte 1000 auf 53 als direkte Folge seiner Weiterschaltung auf 52 im vorauf gegangenen Arbeitsspiel von F i g. 35.
Wie ersichtlich, hat die in der Anfangsphase des Arbeitsspiels von Fig. 36 vorgenommene Weiterschaltung des Blockende-Zählers auf S3 die gleiche Wirkung wie die im Arbeitsspiel nach Fig. 33 erfolgte Weiterschaltung auf denselben Zählerstand Das heißt, das System wird am Ende der Spalte 150C des Arbeitsspiels in die Betriebsstufe 4 geschaltet wie die Beschriftung 4600. 4700, 4800 und 4900 dei letzten vier Spalten andeutet. In diesen vier Spalter werden Vorberechnungen durchgeführt, die mit de nen in den entsprechenden Spalten des Arbeitsspiel! von F i g. 33 identisch sind und die erforderlich sind wenn als nächstes Wegstück eine Gerade auftritt Ist das nächste Wegstück dagegen ein Kreisbogen stück, so werden die in den Spalten 4600... 4900 de in Fig. 37 stehenden Berechnungen durchgeführt Nach F i g. 20 tritt auch das Arbeitsspiel von Fi g. 3' im Zeitabschnitt Λ Γ2-01 auf.
Zusammengefaßt, zeigt die vorstehende, an Ham
135
136
der Fig;. 33... 37 gegebene Allgemeinbeschreibung typischer Arbeilsbeispielc, wie sie am Ende eines zirkulären Wegstückes durchgeführt werden, folgendes: Fig. 33 und 34 zeigen den Verlauf in einem Zeitabschnitt, in dem ein großer Überlauf ermittelt wird. Die in den letzten beiden Spalten 4800 und 4900 dieser Arbeitsspiele durchgeführten Vorberechnungen sind erforderlich, um mit der Ausführung eines linearen bzw. Zirkularen Wegstückes beginnen zu können. Das heißt, die Berechnungen, die in den letzten beiden Spalten des Arbeitsspiels von Fig. 33 durchgeführt werden, sind genau die gleichen, die zuvor im Zusammenhang mit den entsprechenden Spalten der Fig. 17 besprochen wurden, und ebenso sind die Berechnungen, die in den beiden letzten Spalten des Arbeitsspiels von F i g. 34 durchgeführt werden, genau die gleichen, die zuvor im Zusammenhang mit F i g. 28 erläutert wurden.
Fig. 35 zeigt den Verlauf in einem Arbeitsspiel, in dem ein kleiner Überlauf ermittelt wird. Mit Ausnahme der Weiterschaltung des Bloekende-Zählers 186 von Sl auf S 2 sind alle Operationen, die in diesem Arbeitsspiel ausgeführt werden, die gleichen wie die im Arbeitsspiel nach Fig. 31. Schließlich zeigen Fig. 36 und 37 den Verlauf in dem Zeitabschnitt, der unmittelbar auf den folgt, in welchem ein kleiner Überlauf festgcstell! wurde. Die beiden Figuren unterscheiden sich von den F i g. 33 und 34 lediglich dadurch, auf welche Weise der Blockendc-Zählcr 186 in Spalte 1000 auf 53 geschaltet wird. Alle übrigen Berechnungen im Arbeitsspiel nach Fig. 36 sind genau die gleichen wie im Arbeitsspiel 33. Die gleiche Übereinstimmung besteht zwischen den Arbeitsspielen von F i g. 37 und 34.
i. Datenverarbeitungsoperationen, mit denen ein
Überlauf durch Ermittlung der Endpunktnähe
in beiden Bewegungsachsen festgestellt wird
In der folgenden Beschreibung wird nochmals auf die Tabellen VI und VI a Bezug genommen, auf die bereits im Abschnitt D 2 f 2 verwiesen wurde.
Die jeweils erste, mit 1000 ■ ZlR bezeichnete Spalte der beiden Tabellen VI und VI a gibt der Reihe nach die Operationen an, die in Spalte 1000 aller Arbeitsspiele nach Fig. 31... 37 ausgeführt werden: Soweit geringfügige Unterschiede zwischen den entsprechenden Spalten der verschiedenen Figuren bestehen, sind diese in den Tabellen aufgeführt.
I) Bestimmen der schnellen Bewegungsachse
In den ersten fünf Programmschritten der Spalte 1000 · ZlR in Tabelle VI werden die in den aktiven Registern 121 *SC und 119 YSC siehenden Mikropositionen sowie die in den aktiven Registern 117 XCP und IIS YCP stehenden Makropositionen neu berechnet, wie zuvor in Verbindung mit Tabelle III beschrieben wurde. Die eventuelle Weiterschaltung des Blockende-Zählers 186 im Programmschritt 1014 (ZlR) erfolgt nicht, da der Zähler zuvor nicht auf S 2 weitergeschaltet wurde. In den nächsten beiden Programmschritten 1015 (ZlR) und 1016 (ZlR) werden die in den aktiven Registern 101 J und 99/ stehenden Wegkomponenten J und / in den Digitalrechner 53 geholt, um festzustellen, welche von ihnen größer ist, d. h., auf welcher Bewegungsachse die Geschwindigkeit höher ist. Die Leseimpulse, die diese Übertragung der beiden Wegkomponenten in den Rechner bewirken, werden von der Programmtoranordnung 391 (Bedingung 4) und von der Programmtoranordnung 400 (Bedingung 3) erzeugt. Gleichzeitig mit der Übertragung der Wegkomponentc / in den Digitalrechner 53 erhält dieser einen Vergleichsimpuls von der Programmtoranordnung 453 (Bedingung 3). Ist die erste der beiden in den
ίο Digitalrechner 53 gebrachten Zahlen gleich oder größer als die zweite, ist also / j> /, so wechselt der Fl.pfiop 455 in den Einstellzustand und zeigt damit durch ein Binärsignal »1« auf seinem Ausgang FAX an, daß die Bewegung in der .X-Achse gleich oder schneller als auf der Y-Achse ist. Ist dagegen J < /, so wird der Flipflop in den Rückstellzustand gebracht und zeigt durch ein Binärsignal »1« auf seinem Ausgang FAX an, daß die Geschwindigkeit der Bewegung in der Y-Achse größer ist als in der Ä'-Achse.
Wie ersichtlich, erfolgt die Übertragung der Wegkomponenten / und J in den Digitalrechner 53 im Vergleich zu einer Übertragung während einer linearen Makrobewegung in umgekehrter Reihenfolge. Der Grund hierfür ist, daß beim zirkulären Interpolieren die Größe einer Makrobewegung AX in der X-Achse J proportional ist und nicht, wie beim linearen Interpolieren, /. Ebenso ist beim zirkulären Interpolieren die Makrobewegung .1 Y in der Y-Achse / proportional und nicht J. Während also für gerade Wegstücke gilt, daß die Bewegung in der X-Achse schneller ist als in der Y-Achse — wenn / > J —, trifft für zirkuläre Wegstücke das Gegenteil zu.
2) Ermitteln der Endpunktnähe auf der langsamen
Bewegungsachse
Nachdem die schnelle Bewegungsachse ermittelt ist und damit gleichzeitig die langsame Achse feststeht, wird als nächstes geprüft, ob sich der Endpunkt auf der langsamen Bewegungsachse nähert. Diese Prüfung wird so vorgenommen, wie zuvor im Zusammenhang mit Fig. 32 beschrieben wurde. So werden für eine bestimmte Bewegungsachse erste und zweite Digitalsignale erzeugt, die zwei auseinanderliegende Koordinaten darstellen, von denen die eine weiter und die andere weniger weit vom Ursprung der Achse entfernt liegt als die entsprechende Koordinate des Wegstückes, im vorliegenden Beispiel XCP oder YCP. Danach wird festgestellt, ob die entsprechende Koord-nate des programmierten Endpunktes XCEP oder YCEP zwischen den beiden Abstandskoordinaten liegt.
Im einzelnen werden die Signale, die die erste der beiden Abstandskoordinaten auf einer bestimmten Bewegungsachse darstellen, mit den die entsprechende Endpunkt-Koordinate darstellenden Signalen verglichen. Ergibt der Vergleich, daß die Endpunkt-Koordinate zwischen dem Ursprung der beiden Bewegungsachsen und der ersten Abstandskoordinate üegt, so wird ein oberes Klammersignal erzeugt und gespeichert. Außerdem werden auch die Signale, die die zweite Abstandskoordinate darstellen, mit den die entsprechende Endpunkt-Koordinate darstellenden Signalen verglichen, und es wird ein unteres Klammersignal erzeugt, wenn der Vergleich ergibt, daß die zweite Abstandskoordinate zwischen dem Achsenursprung und der entsprechenden Eudpunkt-
509507/40
137
138
Koordinate liegt. Sobald beide Klammersignale gespeichert sind, ist die zur Ermittlung der bndpunktannäherung in der langsamen Bewegungsachse durchgeführte Prüfung positiv verlaufen.
Zur Speicherung des oberen und unteren Klammersignals sind zwei Flipflops 503 und 505 vorgcsehen, die die Hauptteile des Speichers 71" (Fig. 9e) bilden.
Der erste Schritt in der Durchführung der Endpunktannäherungs-Prüfung für die langsame Bewegungsachse besteht in der Räumung des Antwortregisters 53α mit Hilfe eines Rämungsimpulses der Programmtoranordnung 351 (Bedingung 7). Im seiben Programmscbritt wird die im aktiven Register 101/ stehende Wegkomponente J in den Digitalrechner 53 gebracht, wenn die X-Achse die schnelle Bewegungsachse ist. Ist dagegen die X-Achse nicht die schnelle Bewegungsachse, so wird die Wegkomponente / in den Rechner geholt. Mit anderen Worten: Es wird die inverse langsame Achsen-Komponente des Radiusvektors in den Rechner eingelesen. Dies ist der erste Schritt zur Bildung der absoluten Zahl j 0,1/I oder |0,l/|. Die hierzu erforderlichen Leseimpulse erhalten die Register 99/ und 101/ von der Programmtoranordnung 400 (Bedingung 4) bzw. von der Programmtoranordnung 391 (Bedingung 7). Um sicherzustellen, daß die aus dem Register 991 oder 101/ gelesene Zahl als absolute Zahl behandelt wird, also ohne Beachtung ihres Vorzeichens, erhält der Digitalrechner 53 gleichzeitig einen entsprechenden Steuerimpuls (behandle wie positiv) von der Programmtoranordnung 453 (Bedingung 1).
Als Ergebnis der im Programmschritt 1018 (ZIR) ausgeführten Operation steht am Ende des diesem Programmschntt zugeordneten Addierzyklus im Ant-Wortregister 53 a die Größe \J , wenn A" die schnelle Bewegungsachse ist, oder die Größe /, wenn Y die sclmeile Bewegungsachsc ist. 1Jm die im Antwortregister 53a stehende absolute Zahl durch 10 zu dividieren, wird sie im nächsten Programmschntt 1019 (ZIR) um eine Stelle nach rechts verschoben, indem der Computer einen entsprechenden Schicbeimpuls von der Programmtoranordnung 411 (Bedingung 19) erhält. Im Antwortregister steht also jetzt 0,1 / oder j 0,1 / , je nachdem, welches die langsame Bcwegungsachse ist. Zur Vorbereitung auf die Speicherung des Ergebnisses der an der langsamen Bewegungsachse durchgeführten Endpunktannäherungs-Prüfung werden die beiden Flipflops 503 und 505 im selben Programmschritt durch ein gemeinsames Programmtor 507 zurückgestellt. "
Zur Erzeugunc der Signale, die die obere Klammer bildende Koordinate — welche vom Ursprung weiter entfernt liegt als die entsprechende Koordinate des Wegstückes — darstellen, wird der absolute Wert 0,1/j oder i 0,1 /, zur entsprechenden Koordinate des Wegstückes, YCP oder ATP, addiert, so daß sich als Resultat YCP + 0,1/; ergibt, wenn Y die langsame Bewegungsachse ist. Im Programmschritt 1020 (ZlR) wird daher der im aktiven Register 115 YCP stehende Makropositionswert YCP in den Digitalrechner 53 geholt, wenn X die schnelle Bewegungsachse ist. Ist dagegen Y die schnelle Bcwegungsachse, so wird der im aktiven Register 117 XCP stehende Makropositionswert XCP in den Rechner gebracht. Die für diese beiden Übertragungsmöglichkeiten erforderlichen Leseimpulse werden von den Programmtoranordnungen 425 und 421 (Bedingung 4) erzeugt. Die sich ergebende Koordinate YCP -I |ü,! J \ oder XCP + |0,l /j wird im Programmschritt 1021 (ZlR) durch einen entsprechenden Schiebeimpuls der Programmtoranordnung 411 (Bedingung 20) um eine Stelle nach rechts verschoben, um sie mit der entsprechenden Koordinate des programmierten Endpunktes YCEP oder XCEP, mit der die die obere Klammer bildende Koordinate verglichen werden soll, in Übereinstimmung zu bringen.
Zwecks Durchführung eines Vergleichs erhält der Digitalrechner 53 im Programmschritt 1022 (ZIR) einen Vergleichsimpuls von der Programmtoranordnung 453 (Bedingung 4). Gleichzeitig wird im selben Programmschritt die in den voraufgegangenen Programmschritten im Antwortregister 53a gebildete Koordinate, die der Endpunkl-Koordinatc XCEP bzw. YCEP entspricht, in den Rechner geholt, um hier mit dieser verglichen zu werden. Die hierzu crforderliehen Leseimpulsc für das Register 95XCEP bzw. 97 YCEP werden von der Programmtoranordnung 359 (Bedingung 4) bzw. der Programmtoranordnung 487 (Bedingung 4) erzeugt.
Es sei angenommen, daß das Wegstück und sein programmierter Endpunkt der Fig. 32 entsprechen, so daß also die Bewegung auf der y-Achse langsamer erfolgt. Im Programmschritt 1022 (ZIR) wird daher die Endpunkt-Koordinate YCEP mit der die die obere Klammer bildenden Koordinate YCP t ■ 0,1 / verglichen, die in Fig. 32 als Punkt PL1 dargestellt ist. Liegt die Endpunkt-Koordinate YCEP zwischen der die obere Klammer bildenden Koordinate VCP ! . 0.1 / ' und dem Ursprung, so wird von einer Vorrichtung ein oberes Klammersignal abgegeben. Diese Funktion übernimmt die Vergleichsschaltung des Digitalrechners 53, die auf ihrer Ausgangsleitung 339 ein ;>-Signal abgibt, wenn die erste der beiden Verglciclisgrößcn, YCP f 0,1/1, gleich oder grö-Per als die zweite Größe, YCFP. ist. Dm dieses Signal zu speichern, ist die Auseangsleitung 339 (Fig. 9e) des Digitalrechners 53 mit dem /-Eingang des Flipflops 503 über ein Programmtor 509 verbunden, dessen andere Eingänge so getastet werden, daß das Tor das auf der Ausgangsleitung 339 auftretende Signal im Programmschrilt 1023 (ZIR) durchläßt. Verläuft also die erste Endpunktannähcrungs-Prüfimg auf der langsamen Bcwcgnngsachse positiv, wechselt derFlipflop 503 infolge des oberen Klammcrsignals in den Einstclizustand und speichert damit dieses Signal.
Zur Vorbereitung des nächsten Teils der Endpunktannäherungs-Prüfung wird im Programmschriti 1°24 (Z!R) das Antwort register 53 a durch einer Räumimpuls 351 (Bedingung 8) geräumt. Im selber Programmschritt wird die inverse Komponente / vonRegister 101/ in den Rechner gebracht, indem da< Register einen I^eseimpuls von der Programmtoran Ordnung 391 (Bedingung 8) erhält. In den nächster Programmschritten wird die in den Rechner geholtt Komponente / durch 10 dividiert und dann von den Makropositionswert YCP subtrahiert, um das unten Klammersignal zu erzeugen, das die die unten Klammer bildende Koordinate darstellt, die ii F i g. 32 als Punkt PL·., bezeichnet ist. Der Rechne erhält daher einen entsprechenden Steuerimpuls (be handle wie positiv) von der Programmtoranordnunj 453 (Bedingung 2), um das Vorzeichen der Kompo nente / zu ignorieren. Außerdem erhält er von de Programmtoranordnung 479 (Bedingung 15) einei Subtrahierimpuls, um die Komponente J wie eim
139
VL
140
negative Zahl zu behandeln. Wird also J anschließend durch 10 dividiert und zum Makropositionswert YCP addiert, so lautet das Resultat YCP - \0,\ J .
Am Ende des Programmschritles 1024 (ZIR) steht im Antwortregister 53« die Zahl -- \J i, die dann im nächsten Programmschritt 1025 (ZIR) um eine Stelle nach rechts verschoben und dadurch durch 10 dividiert wird. Der hierzu erforderliche Schicbeimpuls kommt von der Programmtoranordnung 411 (Bedingung 21). Das Resultat ist ,0,W1. Im nächsten Programmschritt 1026 (ZIR) wird der im aktiven Register 115 YCP stehende Makropositionswert YCP additiv in den Digitalrechner gelesen, indem die Programmtoranordnung 475 (Bedingung 10) einen Lescimpuls erzeugt. Das Ergebnis dieser Upcration ist YCP 10,1/!, d.h. die die untere Klammer oiidende Koordinate PL., in F i g. 32.
Sodann wird geprüft, ob die Koordinate YCP - ]0,l J 1 zwischen dem Ursprung und der entsprechenden Koordinate YCtP des programmierten Endpunktes liegt. Anders ausgedrückt, die die untere Klammer bildende Koordinate YCP - |0,l/ wird mit der entsprechenden Endpunkt-Koordinate YCEP verglichen. Ergibt der Vergleich, daß die erste der beiden Vergleichsgrößen kleiner ist, so ist die Prüfung positiv verlaufen. Wie Tabelle VI zeigt, wird diese Prüfung im Programmschritt 1028 (ZIR) durchgeführt. Vor diesem Vergleich wird die die untere Klammer bildende Koordinate YCP 0,1 J ■ im Antwortregistcr 53a um eine Stelle nach rechts verschoben, um sie mit der anderen Vergleichsgröße YCEP in Übereinstimmung zu bringen. Diese Verschiebung erfolgt im Programmschritt 1027 (ZIR) mit Hilfe eines entsprechenden Schiebeimpulses der Programmloranordnung 411 (Bedingung 22).
Im nächsten Programmschritt 1028 (ZIR) erhält der Digitalrechner 53 dann zur Durchführung des Vergleichs einen Vergleichsimpuls von der Programmtoranordnung 453 (Bedingung 5). Außerdem wird die im Register 97 YCEP stehende Endpunkt-Koordinate YCEP in den Rechner geholt, indem das Register einen Leseimpuls von seiner zugehörigen Programmtoranordnung 487 (Bedingung 5) erhält. Hat die durch diesen Vergleich dargestellte »untere Klammer«-Prüfung ein positives Resultat ergeben, so erscheint auf der Ausgangsleitung 341 ein <-Signal, womit angezeigt wird, daß die die untere Klammer bildende Koordinate YCP - |0,l / näher am Ursprung liegt als die programmierte Endpunkt-Koordinate YCEP. Dieses Signal wird dem Flipflop 505 über ein Programmtor 511 zugeführt, dessen andere Eingänge so getastet werden, daß das ·<-Signal im Programmschritt 1029 (ZIR) zum /-Eingang des Flipflops durchgelassen wird. Der Flipflop wechselt also am Ende des Programmschrittes 1029 (ZIR) in den Ernstellzustand und speichert das untere Klammersignal, wenn die »untere Klammer«-Prüfung positiv verlaufen ist.
Zusammengefaßt kann folgendes festgestellt werden: Verlaufen beide Prüfungen, mit denen die Annäherung des programmierten Endpunktes in der langsamen Bewegungsachse ermittelt werden soll, positiv, so wechseln beide Flipflops 502 und 505 in den Einstellzustand und geben an ihren Q-Ausgängen Signale UB (obere Klammer) und LB (untere Klammer) ab, womit angezeigt wird, daß sich die Flipflops im Einstellzustand befinden. Das System kann nunmehr mit der Endpunktannähenrags-Priifung auf der schnellen Bewegungsachse beginnen, die im vorliegenden Fall die A'-Achse sein soll.
3) Ermitteln der Endpunktnähe auf der schnellen Bewegungsachse
Die Prüfung, die in jedem der in Fig. 31 ... 37 gezeigten Arbeitsspiele in den Programmschritten 1(130 ... 1043 (ZlR) durchgeführt wird, um die Annäherung des programmierten Endpunktes eines zirkularen Wegstückes auf der schnellen Bewegungsachse zu ermitteln, entspricht ziemlich genau der entsprechenden Prüfung, die in jedem der in F i g. 18, 21, 23 und 24 dargestellten Arbeitsspiele an einem geraden Wegstück durchgeführt wird. Der einzige
wesentliche Unterschied zwischen beiden Prüfungen besteht in der Anzahl der Makrobewegungen, um die eine Makroposition vorverlegt wird. Im Falle einer Geraden beträgt diese Punktvorverlegung elf Makrobewegungen. Bei einem Kreisbogenstück beträgt die
ίο Punktvorverlegung dagegen nur eine Makrobewegung. Im Hinblick auf die zwischen den beiden Prüfungen bestehende Ähnlichkeit wird auf die ausführliche Beschreibung im Abschnitt D2d2 verwiesen, in welchem erläutert wird, wie in zwei Schritten die Annäherung des Endpunktes auf der schnellen Bewegungsachsc ermittelt wird. Kurz gesagt, wird im Programmschriit 1030 (ZIR) zunächst das Antwortregister 53 α durch einen Räumimpuls der Programmtoranordnung 351 (Bedingung 9) geräumt. Im selben Programmschritt wird der im Register 109 Λ Χ stehende Makrobewegungswert AX durch einen Leseimpuls der Programmtoranordnung 409 (Bedingung 12) in den Digitalrechner 53 gebracht. Wie die Bedingung 12 der Programmtoranordnung 409 zeigt,
wird dieser Leseimpuls nur dann erzeugt, wenn die A'-Achse die schnelle Bewegungsachse ist. Ist die Bewegung auf der K-Achse schneller, so wird der Makrobewegungswert .1 Y herausgelesen, und zwar mit einem Leseimpuls der Programmtoranordnung 415 (Bedingung 12).
Im Programmschritt 1031 (ZIR) erhält das Vorzcichen-Flipflop 465 des Blockende- und Uberlaufdetektors 71 auf seinem Taktimpulseingang einen Schreibimpuls. Dadurch wird der Vorzeichen-Flipflop vorbereitet, in den Einstellzustand zu wechseln, wenn das Vorzeichen des gerade in den Rechner gelesenen Makrobewegungswertes AX negativ ist. Ist dagegen 1X positiv, so wechselt der Flipflop in den Rückstellzustand. Da angenommen ist, daß das zirkulare Wegstück von F i g. 32 erzeugt wird und daß sich der im ersten Quadranten liegende Endpunkt des Wegstückes nähert, ist .1^f also positiv, so daß der Vorzeichen-Flipflop 465 zurückgestellt wird.
Zur Berechnung der Punktvorverlegung auf dei λ'-Achse wird der im Register 117 XCP stehende Makropositionswert XCP im Programmschritt 1032 (ZIR) durch einen Leseimpuls der Programmtoranordnung 421 (Bedingung 3) in den Digitalrechnei 53 gebracht. Auch die Bedingung 3 der Programm-
toranordnung 421 enthält wieder das Signal FAX, se daß der Makropositionswert XCP im Programm schritt 1032 (ZIR) nur dann in den Rechner gelasser wird, wenn die A'-Achse die schnelle Bewegung* achse ist Ist dies nicht der Fall, so wird statt dessei der im Register 115ATCP aufbewahrte Makrobewe gungswert YCP herausgelesen, wie die Bedingung: der Programmtoranordnung 425 andeutet. Die Zahl die am Ende des dem Programmschritt 1032 (ZIR
141
142
zugeordneten Addierzyklus im Antwortregister 53 α erscheint, ist XCP + AX. Ds XCP den neu berechneten Makropositionswert darstellt, der am Ende des laufenden Arbeitsspiels erreicht wird, stellt
wird die im Antwortregister 53 a stehende Zahl, die den vorverlegten Punkt darstellt, um zwei Stellen nach links verschoben, um ihr gegenüber der Makrobewegungszahl AX aus dem aktiven Register 109 A X
XCP + AX die Position dar, die auf der schnellen 5 den »Wert« 10 (XCP + AX) zu verleihen. Dies ge-Bewegungsachse am Ende des nächsten Arbeitsspiels schieht in den Programmschritten 1036 (ZlR) und erreicht wird. Diese Zahl wird mit Hilfc eines entsprechenden Schiebeimpulses der Programmtor
anordnung 411 (Bedingung 23) im Antwortregister
1037 (ZIR), indem der Rechner nacheinander entsprechende Schiebeimpulse von der Programnitoranordnung 463 (Bedingung 2 und 3) erhält. In den
53 a um eine Stelle nach rechts verschoben, um ihr 10 nächsten fünf Programmschritten 1038 .., 1042 Dezimalkomma auf das Dezimalkomma von XCEP, (ZIR) wird die im Register 109 A X stehende Makroder X-Koordinate des Endpunktes des zirkulären bewegungszahl A X subtraktiv in den Digitalrechner Wegstückes, auszurichten. Im Programmschritt 1034 53 gelesen, indem das. Register Leseimpulse von der (ZIR) wird dann die Endpunkt-Koordinate XCEP Programmtoranordnung 409 (Bedingung 14) empsubtraktiv in den Digitalrechner 53 gelesen, indem 15 fängt. Der Rest, der ir; dem dem Programmschritt das Register 95 XCEP einen Leseimpuls von seiner 1042 (ZiR) zugeordneten Addierzyklus im Ant-Programmtoranordnung 353 (Bedingung 1) erhält. Wortregister 53 a erscheint, lautet 10 (XCP + 0,5
Das Vorzeichen des Restes der im Programmschritt AX — XCEP). Tritt bei dem in Fig. 32 gezeigten 1034 (ZIR) durchgeführten Subtraktion wird den Beispiei ein Überlauf auf und ist dieser größer als UND-Gliedern 467 und 469 des Blockende- und 20 eine halbe Makrobewegung, so ist das Vorzeichen Überlaufdelektors 71 zugeführt. Wie die Beschriftung des Restes im Antwortregister 53 a positiv. Das Vorder Eingänge der UND-Glieder zeigt und wie zuvor zeichen dieses Restes wird den UND-Gliedei <i 467 im Abschnitt D2d2b beschrieben wurde, hat der und 469 zugeführt. Hat der Rest das gleiche Vorvorverlegte Punkt die entsprechende Koordinate des zeichen wie die Makrobewegungszahl : X und zeigt programmierten Endpunktes überfahren, wenn das 25 damit an, daß selbst bei einer Punkivorveriegung von Vorzeichen des Restes und das Vorzeichen des im nur einer halben Makrobewegung noch immer ein Programmschritt 1030 in den Digitalrechner 53 ge- Überlauf gemeldet wird, so erscheint im Proj ammlesenen Makrobewegungswertes A X gleich sind. In schritt 1042 (ZIR) auf der Ausgangslehung 1«2 des diesem Fall gibt der Blockende- und Überlaufdetek- Blockende- und Überlaufdeteklors 71 ein Signal tor 71 auf seiner Ausgangsleitung 182 ein Signal SST 30 SST, das diese Bedingung anzeigt. Mit Hilfe eines (gleiches Vorzeichen zweimal) ab. Durch dieses Programmtors, das in der Programmtoranordnung Signal wird der Blockende-Zähler 186 im Programm- 183 als Bedingung 3 dargestellt ist, wird auf der Ausschritt 1035 (ZIR) um eine Einheit weitergeschaltet, gangsleitung 184 der Programmtoranoi dnung unter wenn der Zähler auf 51 stand, jedoch nur, wenn die dem Einfluß des Signals SST ein Signal im Programmzuvor an der langsamen Bewegungsachse durch- 35 schritt 1043 (ZIR) erzeugt, sofern der Blockendegeführten Endpunktannäherungs-Prüfungen ein posi- Zähler 186 zuvor auf 52 geschaltet wurde, was durch tives Resultat ergeben haben, was durch die Aus- ein Signal am Ausgang 52 des Zuordners 187 angegangssignale UB (obere Klammer) und LB (untere zeigt wird.
Klammer) der beiden Flipflops 503 und 505 ange- In einem typischen Arbeitsspiel zur Erzeugung
zeigt wird. Die Vorrichtung, die den Impuls zur 40 eines zirkulären Wegstückes, wie es Fig. 31 zeigt, Weiterschaltung des Blockende-Zählers 186 unter wird kein Überlauf ermittelt, und der Blockendeden genannten Bedingungen abgibt, ist in der Pro- Zähler 186 bleibt auf 51, so daß der Zuordner 187 grammtoranordnung 183 als Bedingung 2 dargestellt. nur am Ausgang 51 ein Signal abgibt. In Spalte 1000 Wie die einzelnen Glieder dieser UND-Verknüpfung der Fig. 31 sind daher die Blöcke, die die Weiterzeigen, hat das entsprechende UND-Glied acht Ein- 45 schaltung des Blockende-Zählers 186 betreffen, gänge, die mit dem Ausgang 1000 der UND-Glieder durchgestrichen. Ist jedoch eine ausreichende An- 175 des logischen Zeitbasis-Schaltnetzes 67 (F i g. 9 d), zahl von Arbeitsspielen nach Fig. 31 ausgeführt dem Ausgang 30 des Zehnerumsetzers 169 und dem worden, so daß sich der programmierte Endpunkt Ausgang 5 des Einerumsetzers 167 des Zeitbasis- XCEPIYCEP des Wegstückes in unmittelbarer Nähe und Taktgebersystems, dem Ausgang ZIR des Bahn- 50 befindet, und hat die erste an der schnellen Beweform-Indikators 106, den Ausgängen UB und LB der gungsachse durchgeführte Endpunktannäherungs-
Prüfung einen Überlauf ergeben, die zweite Prüfung dagegen nicht, so wird der Blockende-Zähler 186 auf 52, jedoch nicht auf 53 weitergeschaltet, wie 55 Fig. 35 zeigt. In diesem Fall wird der Zähler im nächsten Arbeitsspiel im Programmschritt 1014 (ZIR) automatisch auf 53 geschaltet, und zwar mit Hilfe eines Weiterschaltimpulses der Programmtoranordnung 183 (Bedingung 4). Diese Situation zeigen den Bedingung aufgeführten Signale auftreten. Alle 60 Fig. 36 und 37, die das letzte Arbeitsspiel für ein Ausgänge dieser Koinzidenzschaltungen liegen an den zirkuläres Wegstück darstellen, das im Anschluß an Eingängen eines einzigen ODER-Gliedes, wie F i g. 16 die Ermittlung eines kleinen Überlaufs auftritt, zeigt. Ergeben dagegen beide an der schnellen Bewein den nächsten Schritten wird der vorverlegte gungsachse durchgeführten Endpunktannäherungs-Punkt um eine halbe Makrobewegung zurückverlegt, 65 Prüfungen einen Überlauf, ist also der vorverlegte und zwar in der gleichen Weise, wie es zuvor im Überlauf größer als eine halbe Makrobewegung auf Abschnitt D2d2c in Verbindung mit einem geraden der schnellen Bewegungsachse, so wird der Block-Wegstück beschrieben wurde. Wie dort erläutert, ende-Zähler 186 noch im selben Arbeitsseil auf <ii
Flipflops 503 und 505, dem Ausgang 51 des Zuordners 187 des Betriebsstufenwählers 69 und dem Ausgang SST (Ausgangsleitung 182} des Blockende- und Überlaufdetektors 71 verbunden sind.
Auch die übrigen in der Programmtoranordnung 183 aufgeführten Bedingungen stellen jeweils eine Koinzidenzschaltung dar, die hier auch mit »Programmtor« bezeichnet ist, an der sie in der betreffen-
143
144
geschaltet, wie F i g. 33 und 34 zeigen. In diesem Fall werden die für das nächste Wegstück erforderlichen Vorberechnungen prompt durchgeführt, so daß das laufende Wegstück am Ende des Arbeitsspiels beendet werden kann.
j. Datenverarbeitungsoperationen,
die die Umschaltung des Systems von Betriebsstufe 1
auf Stufe 4 betreffen
Zur Durchführung der Vorberechnungen, die für den Beginn des nächsten Wegstückes erforderlich sind, muß das System in die Betriebsstufe 4 geschaltet werden. Wie bekannt, erfolgt beim vorliegenden Ausführungsbeispiel die Umschaltung des Systems auf die Betriebsstufe 4, wenn der Blockende-Zähler 186 den Zahlenstand 514 erreicht. Bei der linearen Interpolation wurde der Blockende-Zähler 186 in jedem Arbeitsspiel nach F i g. 22 immer nur um eine Einheit weitergeschaltet, um neun solcher Arbeitsspiele mit korrigierten Makrobewegungen durchzuführen. Diese zwischengeschalteten Arbeitsspiele entfallen beim zirkulären Interpolieren. Vielmehr wird hier das System sofort von Betriebsstufe 1 in die Stufe 4 umgeschaltet, und zwar entweder in dem Arbeitsspiel, in welchem ein großer Überlauf ermittelt wird, oder in dem Arbeitsspiel, das auf ein Arbeitsspiel folgt, in welchem ein kleiner Überlauf festgestellt wurde. Zur raschen Weiterschaltung des Blockende-Zählers 186 sind daher entsprechende Vorrichtungen vorgesehen, durch die der Zähler einerseits in einem Arbeitsspiel, in welchem ein großer Überlauf ermittelt wird, von 51 auf 514 weitergeschaltet wird (vgl. Fig. 33 und 34) und andererseits in einem Arbeitsspiel, das auf ein Arbeitsspiel folgt, in welchem ein kleiner Überlauf festgestellt wurde (vgl. Fig. 36 und 37), von 52 auf 514 geschaltet wird. Die Vorrichtungen zur raschen Weiterschaltung des Blockende-Zählers auf 514 sind in der Programmanorunung 183 als Bedingungen 5, 6 und 7... 16 angedeutet.
Um zu verstellen, wie der Blockende-Zähler 186 in einem einzigen Arbeitsspiel mehrmals weitergeschaltet wird, sei angenommen, daß im Zeitabschnitt /IT2500 ein großer Überlauf festgestellt worden ist. Es'wird also ein Arbeitsspiel nach F i g. 33 oder 34 ausgeführt, in dem der Blockende-Zähler
186 im Progruinmschritt 1043 {Z1R) auf S3 geschaltet wird. Mit Hilfe eines Programmtors, das in der Programmtoranordnung 183 als Bedingung 5 dargestellt ist, erhält der Blockende-Zähler 186 im Programmschritt 1589 (ZIR) einen weiteren Weiterschaltimpuls, wodurch er auf 54 gestellt wird und nun seinerseits das System auf die Betriebsstufe 2 umschaltet. Mit Hilfe eines weiteren Programmtors, das in der Programmtoranordnung 183 als Bedingung 6 erscheint, erhält der Zähler im nächsten Programmschritt, also jetzt 2590 (ZIR) einen weiteren Weiterschaltimpuls, da er im voraufgegangenen Programmschritt auf 54 geschaltet wurde. Der Zähler wird also am Ende des Programmschrittes 2590 (ZlR) auf 55 geschaltet. Dadurch erscheint am Ausgang SS des Zuordners
187 ein Signal, so daß das ODER-Glied 190 ein Signal auf der Steuerleitung Ai 3 abgibt, durch das das System auf die Stufe 3 geschaltet wird. Dieses auf der Steucrleitung M 3 auftretende Signal wird als Eingangssignal für neun weitere Programmtore benutzt, die in der Progiamrntoranuidnung 183 als Bedingungen R ... 16 dargestellt sind. Außerdem erhält jedes dieser Programmtore auch noch Signale vom Ausgang ZIR des Bahnfonn-Indikators 106, vom Ausgang 3500 der UND-Glieder 179 des logischen Zeitbasis-Schaltnetzes 67 und vom Ausgang 90 des Zehnerumsatzes 169 des Zeitbasis- und Taktgebersystems 63. Schließlich erhält jedes dieser neun Programmtore noch ein Signal von einem der entsprechenden Ausgänge 1... 9 des Einerumsetzers 167 des Zeitbasis- und Taktgebersystems. Diese Programmtore erzeugen also in den Programm.1 hritten 3591... 3599 (ZIR) der Reihe nach einen iterschaltimpuls, vorausgesetzt, das ODER-Giiva 190 des Betriebsstufenwählers 69 gibt dabei ständi» ein Signal auf der Steuerleitung M 3 ab.
Der letzte der Weiterschaltimpulse, die von den Programmtoren (Bedingungen 8 ... 16) erzeugt werden, schaltet den Blockende-Zähler 186 auf 514. Das Signal 514 des Zuordners 187 durchläuft das ODER-Glied 191 des Betriebsstufenwählers 69 und erscheint am Ausgang auf der Steuerleitung M 4 als Signal M 4, das den UND-Gliedern 181 des Zeitbasis-Schaltnetzes 67 zugeführt wird, wodurch das System auf die Betriebsstufe 4 umgeschaltet wird.
Nimmt man dagegen an, daß in einem gegebenen Arbeitsspiel nur ein kleiner vorverlegter Überlauf des Endpunktes ermittelt wird, so wird der Blockende-Zähler 186 in diesem Arbeitsspiel nur auf 52 weitergeschaltet, wie F i g. 35 zeigt. Im nächsten Arbeitsspiel jedoch, das entweder ein Arbeitsspiel nach Fig. 36 oder nach Fig. 37 sein kann, wird der Zähler dann bis auf S14 weitergeschaltet.
k. Warum und wie die das nächste Wegstück
darstellenden Daten modifiziert werden
Die in diesem Abschnitt zu beschreibende Einrichtung steht im Zusammenhang mit der Erzeugung von Wegstücken. Um diese Einrichtung im richtigen Zusammenhang sehen zu können, werden bestimmte Merkmale der vorliegenden Erfindung kurz zusammengefaßt.
Die vorliegende Erfindung betrißt ein System, mit dem ein Maschinenelement eine Reihe von Wegstücken, Gerade oder Kreisbogen, mit geregelter Geschwindigkeit abfahren kann. Der Anfangspunkt jedes Wegstückes ist gleichzeitig der Endpunkt des vorhergehenden Wegstückes, d. h., die Wegstücke grenzen aneinander an.
Jedes Wegstück wird von einem Informationsblock dargestellt, aus dem zu Beginn — im Falle einei Geraden — die X-Achsen-Wegkomponente / und die K-Achsen-Wegkomponente J des Wegstücke! und — im Falle eines Kreisbogens — die ^-Koordinatenstrecke / und die Y-Koordinatfistrecke / von Anfangspunkt des Wegstückes zu seinem vorgege benen Krcismittelpunkt abgeleitet werden. Außerden enthält jeder Datenblock noch die Bahngeschwindig keil für das betreffende Wegstück, ausgedrückt al » Makrobewegungsquotient«
V- AT , V-AT
bzw.
I)
Aus jedem Datenblock werden in einer Reih gleich großer Zeitabschnitte A T nach einem Inter polaiionsverfahren Digitalsignale gewonnen, die di Λ'-Koordinaten XCP sowie die K-Koordinaten YCi einer Reihe von Punkten beinhalten, die auf der Wegstück liegen. In jedem Zeitabschnitt Δ Τ wird da
145
•rs
146
Maschinenelement auf der X- und der V-Achse zu einer neuen Koordinate XCP und YCP gefahren. Die Strecke Δ X von einer gegebenen Koordinate XCP zur nächsten Koordinate XCP ist dabei im Verhältnis zur Strecke A Y von der entsprechenden Koordinate YCP zur nächsten Koordinate YCP so bemessen, daß die sich aus den Einzelbewegungen entlang aufeinanderfolgender Koordinaten XCP und YCP zusammengesetzte Bahnbewegung des Maschinenelementes stets in der gewünschten Richtung erfolgt, um das Wegstück abzufahren. Nicht sichergestellt ist jedoch, daß sich die beiden Endpunkt-Koordinaten mit der entsprechenden, am Ende eines Zeitabschnittes Δ T erreichten Koordinate decken. In der Tat ist es ziemlich sicher — sofern keine besonderen Maßnahmen estroffen werden — daß das Masch";i>nelement im Verlauf seiner Bewegung in einem Zeitabschnitt A T schließlich Koordinaten ACr unu /er" anführt, von denen die eine oder andere oder auch beide jenseits der entsprechenden Koordinate des programmierten Endpunktes liegen. Folglich wird die Bewegung des Elementes auf dem Wegstück am Ende des Zeitabschnittes AT beendet, in dem eine bestimmte der beiden Koordinaten XCP, YCP de· entsprechenden Koordinate des Endpunktes am nächsten kommt. Damit besteht die Gefahr, daß das Ende des tatsächlich ausgeführten Wegstückes den Anfangspunkt des nächsten Wegstückes unter- oder überfährt.
Würde man also das nächste Wegstück aus der im zugehörigen Inforinationsblock enthaltenen Ursprungliehen Information berechnen, so würde seine ursprünglich programmierte Richtung zwar unverändert bleiben, doch würde sich sein Anfangspunkt infolge des Unter- oder Überfahrens des vorhergehenden Wegstückes ändern. Kurz gesagt, je nachdem, ob das Wegstück eine Gerade oder ein Kreisbogenstück ist, würde sich die Gerade oder beim Kreisbogenstück dessen Mittelpunkt um den Betrag verschieben, um den das vorhergehende Wegstück unter- bzw. überfahren wurde.
Die Ä'-Achsen-Wegkomponente / und die Y-Achsen-Wegkomponente / des Datenblockes, der das nächste Wegstück darstellt, werden deshalb modifiziert, bis ihr zusammengesetzter Vektor zwischen dem tatsächlichen Endpunkt des vorhergehenden Wegstückes und dem vorgeschriebenen Endpunkt oder Mittelpunkt des nächsten Wegstückes liegt, je nachdem, ob das nächste Wegstück eine Gerade oder ein Kreisbogenstück ist. Bei dein bevorzugten Verfahren geschieht dies, indem beide Wegkomponenten / und / des nächsten Wegstückes jeweils um einen Betrag modifiziert werden, der gleich dem Betrag ist, um den der Endpunkt des vorhergehenden Wegstückes in der betreffenden Koordinatenachse unter- oder überfahren wurde. Wird beispielsweise der programmierte Endpunkt des vorhergehenden Wegstückes in A*-Richtung um einen Betrag Δ X und in y-Richtung um einen Betrag ,1 Y unterfahren, so werden die Komponenten / und J für das nächste Wegstück zu / + 1 X und J + AY modifiziert, gleichgültig, ob es sich um eine Gerade oder um ein Kreisbogenstück handelt. Wird dagegen der Endpunkt um AX und .1 Y überfahren, so werden die Wegkomponenten / und J zu I Λ X und / -AY modifiziert.
Als Beispiel sei angenommen, daß im Zeitabschnitt A r2S00 ein großer vorverlegter Überlauf ermittelt wurde und daß das nächste Wegstück eine Gerade ist. Es wird also das Arbeitsspiel nach F i g. 33 ausgeführt. Nachdem in Spalte 1000 des Arbeitsspiels ermittelt wurde, daß der Endpunkt auf der schnellen Bewegungsachse bis zum Ende des nächsten Arbeitsspiels, also im Zeitabschnitt Δ 7„501, überfahren wird, werden vom System Operationen ausgeführt, um das derzeitige Wegstück am Ende des laufenden Arbeitsspiels zu beenden, also am Ende des Zeitabschnittes A 7^500, und das nächste Wegstück mit Beginn des Zeitabschnittes A T2501 zu beginnen. Die zur Ermittlung von AY und AX für das nächste Wegstück erforderlichen Vorberechnungen werden unter Benutzung der Wegkomponenten / und / in den Spalten 4800 und 4900 des Arbeitsspiels von F i g. 33 durchgeführt. Da jedoch das derzeitige Wegstück kurz vor seinem programmierten Endpunkt beendet wurde, wird an den Komponenten / und / eine Korrektur vorgenommen. Die Durchführung dieser Korrekturen erfolgt in der Spalte 4600 des Arbeitsspiels.
1. DateDverarbeitungsoperationen,
die die Modifizierung der das nächste Wegstück
darstellenden Daten betreffen
Die erste der zu korrigierenden Zahlen ist /. Das Korrekturverfahren beginnt also zunächst mit der Berechnung der an / vorzunehmenden Korrektur. Diese Korrektur ist XCEP - XCP, d. h. die Differenz zwischen der „Y-Koordinate des Endpunktes und der X-Koordi.iate, die das Wegstück am Ende des letzten Arbeitsspiels erreicht hat. Die 7U dieser Berechnung erforderlichen Operationen erscheinen in der Spalte 4600 (ZlR) der Tabelle I. Im Programmschritt 4615 (ZIR) wird die im aktiven Register 95 XCEP stehende Endpunkt-Koordinate XCEP in den Digitalrechner 53 geholt, indem das Register einen Leseimpuls von der Programmtoranordnung 359 (Bedingung 3) erhält. Im nächsten Programmschritt 4616 (ZIR) erscheint sie im Antwortregister 53 a und wird dort mit Hilfe eines entsprechenden Schiebeimpulses der Programmtoranordnung 463 (Bedingung 10) um eine Stelle nach links verschoben, um sie auf den Makropositionswert XCP auszurichten, der im nächsten Programmschritt 4617 (ZIR) von der Endpunkt-Koordinate abzuziehen ist. In diesem Programmschritt wird XCt* vom aktiven Register ill XCP in den Digitalrechner 53 geh»acht. Der hierzu erforderliche Leseimpuls kommt von der Programmtoranordnung 421 (Bedingung 5). Gleichzeitig erhält der Rechner einen Subtrahierimpuls von der Programmtoranordnung 479 (Bedingung 8). Der Rest, XCEP - XCP, erscheint im Anrwortregister 53 a im nächsten Programmschritt 4618 (ZIR) und stellt den Korrekturwert dar, der zu der gegenwärtig im Zwischenregister 47/ stehenden Komponente / des nächsten Wegstückes zu addieren ist.
!m Programmschritt 4618 (ZIR) wird die im Zwischenregister 47/ stehende Komponente / mit Hilfe eines Leseimpulses des Programmtors 349 in den Digitalrechner 53 gelesen. Das Resultat, / I (XCEP - XCP), stellt die korrigierte Komponente / für das nächste Wegstück dar. Sie wird im Programmschritt 4619 (ZIR) mit Hilfe eines Schreibimpulses der Programmtoranordnung 355 (Bedingung 2) in das aktive Register 99/ eingeschrieben. Danach wird die im Zwischenregister 47/ stehende Komponente J modifiziert. Zu diesem Zweck wird das Antwortregister 53 a im Programmschritt 4620 (ZIR) durch einen Räumimpuls der Programmtoranordnung 351 (Bedingung 14) geräumt. Im selben
147
148
Programmschritt wird nach der Räumung des Antwortregisters die im aktiven Register 97 YCEP stehende Endpunkt-Koordinate YCEP mit einem Leseimpuls der Programmtoranoidnung 487 (Bedingung 3) in den Digitalrechner gebracht. Sie erscheint im Antwortregister 53 α und wird dort mit Hilfe eines entsprechenden Schiebeimpulses der Programmtoranordnung 463 (Bedingung 11) im Programmschritt 4621 (ZIR) um eine Stelle nach links verschoben. Sodann wird der Makropositionswert YCP, der im Register 115 YCP steht, subtraktiv in den Digitalrechner 53 gelesen. Dies geschieht mit Hilfe eines Leseimpulses der Programmtoranorduung 425 (Bedingung 9) sowie eines Subtrahierimpulses der Programmtoranordnung 479 (Bedingung 9). Das Resultat erscheint im Antwortregister 53 a im folgenden Programmschritt 413 (ZIR) und lautet YCEP - YCP. Es stellt den Korrekturwert für die Komponente J im Zwischenregister 47 J dar. Diese Komponente wird im Programmschritt 4623 (ZIR) additiv in den Digitalrechner 53 gelesen, indem das Register einen Leseimpuls von seinem zugehörigen Programmtor 353 erhält, und automatisch zu dem zuvor berechneten Korrekturwert addiert. Im Programmschritt 4624 (ZlR) erscheint dann im Antwortregister 53 a die korrigierte Komponente /, also / 4- (YCEP - YEP). Diese korrigierte Komponente wird im selben Programmschritt in das aktive Register 101/ gebracht, indem dieses Register einen Schreibimpuls von seiner Programmloranordnung 357 (Bedingung 2) erhält.
Die restlichen Operationen, die in Spalte 4600 (ZIR) noch auszuführen sind, brauchen hier nicht beschrieben zu werden, da sie mit den entsprechenden Operationen identisch sind, die im Zusammenhang mit dem in Fig. 17 gezeigten Arbeitsspiel beschrieben wurden. Sie betreffen die Umspeicherung der programmierten Endpunkt-Koordinaten XCEP und YCEP aus den Zwischenregistern in die aktiven Register, das Addieren dieser Koordinaten zu den erforderlichen, in den Registern 365 und 367 stehenden Korrekturwerten für die Nullpunktverstellung sowie die Umspeicherung des Makrobewegungsquotienten Q aus dem Zwischenregister in das aktive Register.
Ebenso sind die Rechenoperationen, die in den Spalten 4800 und 4900 zur Berechnung der Makrobewegungen Λ Y und Λ X ausgeführt werden, identisch mit den zuvor in Verbindung mit Fig. 17 ausführlich beschriebenen Operationen, so daß sie hier nicht noch einmal erläutert werden müssen.
m. Umschaltung des Systems auf Betriebsstufe 1
zwecks Ausführung des nächsten Wegstückes
Nachdem die Makrobewegungswerte Λ Y und Λ Χ in den Spalten 4800 und 4900 des Arbeitsspiels von F i g. 33 berechnet worden sind, wird al« letzte Zahl des Datenblockes die Bahnformbezeichnung C vom Zwischenregister in das aktive Register umgespeichert. Dieser Datenblock stellt das nächste Wegstück 27d von F i g. 2 dar, das eine Gerade ist. Wie Tabelle II zeigt, erfolgt die Umspeicherung von G in den Programmschritten 4973 (G01) und 4974(GOl). Wie Tabelle II ferner zeigt, wird der Lochstreifenleser 41 im Programmschritt 4995 (GOl) eingeschaltet, indem der Eingang/ des Einschalt-Flipflops 257 (Fig. 91) einen Steuerimpuls erhält. Damit beginnt der Leser die Daten des nächsten fnformationsblockes in die Zwischenregister einzulesen. Dieser nächste Informationsblock stellt das Wegstück dar, das im Anschluß an das Wegstück auftritt, dessen Datenblock gerade von den Zwischenregistern in die aktiven Register umgespeichert wurde. Die einzigen Operationen, die nun noch im Arbeitsspiel von Fig. 33 ausgeführt werden müssen, bevor mit der Ausführung des nächsten Wegstückes begonnen wird, bestehen in der Umschaltung des Steuerungssystems in die Betriebsstufe 1, indem der Blockende-Zäiüer 186 über 515 und 516 auf 51 geschaltet wird. Dies geschieht mit Hilfe von drei aufeinanderfolgenden Weiterschaltimpulsen, die von der Programmtoranordnung 183 in den Programmschritten 4997 (GOl), 4998 (GOl) und 4999 (G 01) erzeugt werden. Die hierfür benötigten Programmtore sind in der Programmtoranordnung 183 als Bedingungen 19, 20 und 21 dargestellt. Der Blockende-Zähler 186 steht nun auf 51, so daß der Zuordner 187 an seinem Ausgang 51 ein Signal abgibt, das das ODER-Glied 189 des Betriebsstufenwählers 69 durchläuft und als Auftastsignal Ml die UND-Glieder 175 auftastet und damit das System in die Betriebsstufe 1 umschaltet.
E. Ausführliche Beschreibung eines Regelkreises
zur Ausführung eines Wegstückes
mit Hilfe von interpolierten Mikropositionswerten
Wie zuvor erwähnt wurde, erfolgt die Ausführung eines geraden oder zirkulären Wegstückes, indem das Wegstück tatsächlich beschrieben wird. Diese Beschreibung kann entweder in Form von elektrischen Positionssignalen oder in Form mechanischer Bewegung eines verstellbaren Maschinenelementes, wie etwa des Fräsers 14 von Fig. 1, erfolgen In den vorhergehenden Abschnitten wurde die Erzeugung elektrischer Positionssignale ausführlich beschrieben. Nunmehr sollen zwei Regelkreise näher beschrieben werden, die zuvor im Zusammenhang mit F i g. 7 als Regelkreise 75 und 77 bezeichnet wurden. Diese Regelkreise eignen sich dazu, den Fräser 14 in Übereinstimmung mit den Makropositionssignalen XCP und YCP und insbesondere mit den Mikropositionssignalen XSC und YSC zu verfahren.
Wie F i g. 9 zeigt, enthält das numerische Steuerungssystem zwei Regelkreise, 75 und 77, die den Fräser 14 in den Bewegungsachsen X und Y in Übereinstimmung mit den erfindungsgemäß erzeugten, numerisch definierten Kommandos verfahren. Beide Regelkeise können gleich ausgebildet sein, so daß hier nur einer beschrieben zu werden braucht. Der Fräser 14 wird in der AT-Achse über Distanzen und mit Geschwindigkeiten verfahren, die den numerisch definierten Kommandowerten für die λ'-Achse entsprechen. Diese Kommandowerte stehen im aktiven Register 121XSC. Zum Verfahren des Fräsers in der .Y-Achse wird der umsteuerbare Stellmotor 21, der mit der Transportspinde' 20 gekuppelt ist, entsprechend erregt. Der Horizontalschlitten 16 ist über eine (nicht gezeigte) Mutter mit der Transportspindel 29 gekuppelt (diese Bauelemente wurden bereits eingangs in Verbindung mit Fig. 1 beschrieben. Der Fräser 14 wird also zusammen mit dem Horizontalschlitten 16 in —X- oder + .Y-Richtung verfahren (gemäß F i g. 9 a also nach links bzw. nach rechts), und zwar mit Geschwindigkeiten, die der Größe und dem Vorzeichen einer Gleichspannung entsprechen, die der Stellmotor 21 von einem Servoverstärker 521
149 ' f 150
erhält. Wie das zum Aussteuern des Servoverstärkers einen kleinen Winkel <f„u nach und zeigt damit an,
521 benutzte Signal erzeugt wird, wird nachstehend daß sich der Fräser 14 auf der einen Seite eines der
noch beschrieben. Bezugspunkte, etwa rechts von diesem, befindet. In
Kurz gesagt, wird die Iststellung des Fräsers 14 Fig. 38b eilt das Rückführungssignal C der Bczugs-
mit dem die Sollstellung beinhaltenden Signal ver- 5 schwingung B um einen größeren Winkel <p2i) nach
glichen. Auf Grund dieses Vergleichs wird ein Fehler- und zeigt damit an, daß der Fräser 14 im Vergleich
signal erzeugt, dessen Polarität und Größe dem Vor- zu der in Fig. 38a gezeigten Situation noch weiter
zeichen und Ausmaß der zwischen der momentanen vom Bezugspunkt entfernt ist. Fig. 38c zeigt die
Soll- und der momentanen Iststellung des Fräsers Phasenbeziehung zwischen dem Rückführurigssignal C
bestehenden Abweichung entsprechen. io und der Bezugsschwingung B, wenn sich der Fräser
Hierbei sind Vorkehrungen getroffen, um ein 14 im Vergleich zu den in Fig. 38a und 38b ange-Rückführungssignal zu erzeugen, dessen Phasenlage deuteten Stellungen auf der anderen Seite eines Begegenüber einem Bezugssignal die augenblickliche zugspunktcs befindet. In diesem Fall eilt das Rückiststellung des Fräsers 14 anzeigt. Bei der in F i g. 9 a führungssignal C der Bezugsschwingung Ii um einen gezeigten Ausführungsform wird dazu die 500-Hz- 15 Winkel φ2 c vor.
Sinusschwingung B des Sinusschwingungsformers Wie zuvor im Abschnitt C 1 a 1 in Verbindung mit
192 (Fig. 9b) benutzt. Fig. 9b und 10 beschrieben wurde, sind im System
Zum Anzeigen der augenblicklichen Iststellung des Vorkehrungen getroffen, um Signale zu erzeugen, die Fräsers 14 dient ein Drehmelder 523, der ein wieder- in Digitalform eine Bezugszahl darstellen, welche sich kehrendes Rückführungssignal abgibt, das durch die 20 in aufeinanderfolgenden Zeitabschnitten in kleinen, Größe und Polarität seines Phasenwinkels gegenüber gleich großen Inkrcmenten von einem ersten vorbeder sinusförmigen Bezugsschwingung B das Vor- stimmten Wert bis zu einem zweiten vorbestimmten zeichen und Ausmaß der Abweichung des Fräsers Wert zyklisch ändert. Diese signalisierte Bezugszahl von einer Bezugsstellung anzeigt. Zum Drehmelder unterliegt also selbst laufend Veränderungen, gegengehören ein Ständer mit zwei Ständerwicklungen 525 25 über denen ein Vergleichssignal seine Phasenlage und 527 sowie ein Rotor mit einer Rotorwicklung ändern kann. Zu diesem Zweck ist ein Digitalzyklus-529. Der Rotor des Drehmelders ist über ein geeig- generator vorgesehen, der nach Fig. 9b aus den netes (nicht gezeigtes) Zahnräderwerk mit der Trans- Zähldekaden A 131, B133 und C135 besteht. Dieser portspindel 20 mechanisch gekuppelt, so daß sich der Generator erzeugt binärverschlüsselte Dezimalimpulse, Rotor mitdreht, wenn die Transportspindel vom Stell- 30 die sich ändern und dadurch eine Bezugszahl anmotor 21 gedreht wird. Die Übersetzung kann dabei zeigen, die während jeder Periode der Bezugsschwinso gewählt sein, daß der Rotor des Drehmelders bei gung B in gleich großen Einheiten und gleichen Zeiteinem Fräservorschub von 0,1 Zoll jeweils eine Um- abständen linear zunimmt. Die Bezu^szahl steißt also drehung macht. zyklisch von einem Mindestwert (z. B. 000) auf einen
Erregt wird der Drehmelder 523 durch die ^inus- 35 Höchstwert (z. B. 999) an und wiederholt sich dann
förmige Bezugsschwingung B, die in die Rotorwick- synchron zur Bezugsschwingung B. Die einzelnen
lung 529 eingespeist wird. Das sich ergebende pulsie- Einheiten der Bezugszahl entsprechen also tatsäch-
rende Magnetfeld induziert in den Ständerwicklungen lieh jeweils einem Zeitintervall einer Periode der Be-
525 und 527 ein Paar Sinusspnnnungen. deren Ampii- Zugsschwingung, wobei diese in viele kleine Zcitinter-
tude sich als Sinus- und Kosinusfunktioa der Winkel- 40 valle unterteilt ist, deren Anzahl gleich der Anzahl
stellung der drehbaren Rotorwicklung 529 gegenüber der Einheiten oder Inkremente ist, um die sich die
den Sländerwicklungen ändert. Bezugszahl ändeit
Mit Hilfe eines Phasenschiebers 531 werden die an Die hier angenommene Phasenbeziehung zwischen den Ständerwicklungen 525 und 527 des Drehmelders der rechteckförmigen Bezugsschwingung-4, der sinusauftretenden amplitudenveränderlichen Sinusspan- 45 förmigen Bezugsschwingung B und der von den Zählnungen in eine einzige Sinusspannung C umgewan- dekaden A 131, B133 und C135 signalisierten Bedelt, deren Amplitude konstant ist, deren Phase sich zugszahl (die durch den positiv verlaufenden Anjedoch gegenüber der sinusförmigen Bezugsschwin- stieg D dargestellt ist), zeigt Fig. 38 a. Die links vom gung B bei jeder vollen Umdrehung des Rotors um Anstieg D stehende senkrechte Zahlenskala zeigt, daß 360° ändert. Bei dem hier dargestellten Beispiel wird 50 die von den Zähldekaden /4 131, £?133 und Γ135 die Rotorwicklung 529 des Drehmelders bei jeder signalisiert pfvi.gszahl D während einer ganzen 0,1-Zoll-Verstellbewegung des Fräsers 14 um 360° Periode dir r^hteckfönnigen Bezugsschwingung A gedreht, so daß bei jeder derartigen Fräserbewegung gleichmäßig von 000 . . . 999 zunimmt und daß die das Rückführungssignal C gegenüber der Bezugs- Bezugsschwingung .4 ihren Mittelpunkt indem Augenschwingung B um 360° verschoben wird. Bei der 55 blick e; reicht, da die Zähldekadcn gerade 500, di* Weiterbewegung des Fräsers 14 wird das Rückfüh- Mitte ihres Gesamtzählbereiches, durchlaufen. Die rungssignal C mit der Bezugsschwingung B an im gleichen Beziehungen gelten auch für die sinusför-Abstand von 0,1 Zoll aufeinanderfolgenden Bezugs- mige Bezugsschwingung B, da hier angenommen ist, punkten in Phase gebracht. Bewegt sich der Fräser daß sich diese Schwingung mit der Bezugsschwin· von einem solchen Bezugspunkt nach links oder 60 gung A in Phase befindet.
rechts, so gibt die Polarität und Größe des Phasi a- Im System sind Maßnahmen getroffen, um stets
winkeis φ, zwischen der Periodenmitte des RÜLkf-Üh- dann einen Vergleichsimpuls F zu erzeugen, went
ningssignals C und der Bezugsschwingung B das Vor- die sich zyklisch ändernde und digi'al signalisierte
zeichen und Ausmaß der Abweichung des Fräsers Bezugszahl gleich der sich periodisch ändernden
vom betreffenden Bezugspunkt wieder. 65 digital signalisierten Kommandozahl ist. Auf dies«
Die soeben beschriebenen Phasenbeziehungen sind Weise ändert sich der Phasenwinkel des Vergleichs·
in Fig. 38a ... 38c dargestellt. In Fig. 38a eilt das impulsesF in Vorzeichen und Größe (bezogen aul
Riickführungssignal C der Bezugsschwingung B um die zyklischen Umläufe der von den Zähldekadei
652
151
152
gemeldeten Bezugszahl) entsprechend dem Vorzeichen und der Größe der Änderungen in der Mikropositions-Kommandozahl. Genauer gesagt, wird der Vergleichsimpuls F erzeugt, indem die sich zyklisch ändernde Bezugszahl D, also der Zahlenzyklus, und die sich dynamisch ändernde Kommandozahl E miteinander verglichen werden, so daß sich der Phasenwinkel des Vergleichsimpulses in Vorzeichen und Größe (bezogen auf die wiederkehrende Bezugsschwingung B, die gegenüber den zyklischen Umläufen der Bezugszahl eine feste Phasenlage hat) entsprechend dem Vorzeichen und der Größe der Differenz zwischen dem Mittelpunktswert (der, wie erwähnt, hier 500 lautet) der sich zyklisch ändernden Bezugszahl D und dem Augenblickswert der neuberechneten Kommandozahl E ändert. Die digitale Aussage der sich dynamisch ändernden Kommandozahl E wird also in eine entsprechende phasenanaloge Änderung umgewandelt, da sich der Phasenwinkel zwischen dem Vergleichsimpuls F und der Bezugsschwingung B in Größe, Vorzeichen und mit einer Durchschnittsgeschwindigkeit ändert, die der Größe, dem Vorzeichen bzw. der Durchschnittsgeschwindigkeit der Änderung der Kommandozahl entsprechen.
Wie Fig. 9d zeigt, werden zu die dem Vergleich von zwei digital dargestellten, sich jedoch ändernden Zahlen die zwölf Ausgangsleitungen der Zähldekadcn /4 131, J5133 und C 135 sowie die zwölf Ausgangsleilungen des aktiven Registers 121 XSC mit den entsprechenden Eingängen eines schnell arbeitenden, mehrstelligen Vergleichers 533 verbunden. Der Vergleicher 533 erzeugt auf seiner Ausgangsieitung 533 λ nur dann ein Vergleichssignal in Form eines kurzen Impulses, wenn die auf den Ausgangsleitungen der drei Zähldekaden im Binärcode dargestellte Bezugszahl gleich der neuberechneten Mikropositions-Kommandozahl ist, die auf den Ausgangsleitungen des aktiven Registers 121 XSC binärverschlüsselt erscheint.
Wie ersichtüch, wird die Bezügszahl in jedem Zahlenzyklus (von 000 ... 999) irgendwann gleich der digital dargestellten Mikropositioiis-Kommandozahl XSC, da letztere als dreistellige Dezimalzahl stets innerhalb des Bereiches liegt, der von der sich zyklisch ändernden Bezugszahl durchlaufen wird. In jedem Zahlenzyklus der drei Zähldekaden 131... 135 wird also zu irgendeinem Zeitpunkt ein Vergleichssigna! erzeugt. Diese Vergleichsimpulse treten mit einer Frequenz von 500 Hz auf und stellen durch ihre auf die Bezugsschwingung R bezogene Phasenänderung die entsprechenden Änderungen der Mikropositions-Kommandozahl XSC dar.
Wie sich der Vergleichsimpuls F, d. h. der phasenveräniierliche Kommandoimpuls, in seiner Phasenlage gegenüber der Bezugsschwingung B ändert, zeigt Fig. 78a.. . 3Rc. In diesen Figuren wird die im aktiven Register 121 XSC stehende Mikropositions-Kommandozahl durch die waagerechte Linie E dargestellt. Der Augenblick, in dem Gleichheit vorliegt, wird durch den Schnittpunkt zwischen der Linie E und dem Anstieg D, der die sich zyklisch ändernde Bezugszahl darstellt, angedeutet.
Da sich die Bezugszahl D während jeder Periode der Bezugsschwingung B vom Mindest- bis auf den Maximalwert erhöht, wird der Augenblick oder die Phase, in welchem der Vergleichsimpuls F während einer Periode der Bezugsschwingung B auftritt, eindeutig durch den Betrag bestmmt, um den sich die Bezugszahl erhöht hat, wenn sie gleich der Kommandozahl E wird. Die Phasenlage, die der Vergleichsimpuls F in bezug auf die Phasenlage der Bezugsschwingung B einnimmt, wird also von der Größe der Kommandozahl E bestimmt, so daß der Vergleichsimpuls selbst ein zeitbestimmtes Kommandosignal ist.
Um den Fräser mit gleichförmiger Geschwindigkeit in kleinen, »Mikrobewcgungen« genannten Schritten in Übereinstimmung mit den größeren, »Makrobewegungen« genannten Schritten, wie sie vom System erzeugt werden, zu verfahren, wird der im aktiven Register 121 XSC stehende Mikropositionswert periodisch neu berechnet, wie zuvor im Abschnitt C2b ausführlich beschrieben wurde.
Fig. 38b und 38c zeigen zwei Beispiele dieser Neuberechnung. Beide erfolgen zum gleichen Zeitpunkt tu einer Periode der Bezugsschwingung b. Beim Beispiel von Fi g. 38 b wird die Mikropositions-Kommandozahl E bei der Neuberechnung verringert, beim Beispiel von Fig. 38c dagegen erhöht. Wesentlich ist, zu beachten, daß der Augenblick, in dem der Vergleichsimpuls F auftritt, von der Größe der neuberechneten Kommandüzahl E bestimmt wird.
Der zeitbestimmte Vergleichsimpuls F und das phasenveränderliche Rückführungssignal C werden zum Tasten einer einzigen bistabilen Vorrichtung benutzt, deren Ausgangssignale dann zur Erzeugung eines polarisierten Fehlersignals dienen, das die Größe und das Vorzeichen des Phasenwinkelfehlers zwischen dem zeitbestimmten Kommandoimpuls und dem Rückführungssignal anzeigt. Die bistabile Vorrichtung, die in Fig. 9a als Flipflop 535 dargestellt ist, hat zwei Zustände, die mit »0«- und »1 «-Zustand bezeichnet sind. Der Flipflop 535 wird in den »!«-Zustand gebracht, indem der Vergleichsimpuls F des Vergleichcrs 533 in dem Augenblick auf den Einstelleingang S des Flipflops gelangt, in dem die Bezugszahl D den gleichen Wert wie die Kommandozahl E erreicht.
Ebenso sind Vorkehrungen getroffen, den Flipflop 535 jeweils dann auf seinen »0«-Zustand zurückzuführen, wenn das Rückführungssignal C in positiver Richtung durch Null geht. Das zur Rückstellung des Flipflops dienende Nulldurchgangssignal (positiver Nulldurchgang) wird vom Rückführungssignal C abgeleitet, und zwar mit Hilfe eines Rechteckschwingungsformers 537. Der Rtchteckschwingungsformer 537 gibt an einem seiner Ausgänge einen ersten Rechteckimpuls Γ ab, der mit dem Rückführungssignal phasengleich ist. Dieser Rechteckimpuls C wird einem unipolaren Differenzierglied 539 zugeführt, dessen Ausgang mit dem Rückstelleingang R des Flipflops 535 verbunden ist. Unter dem Einfluß jeder positiven Anstiegsflanke des Rechteckimpulses G, also wenn das Rückführungssignal in positiver Richtung durch Null geht, erzeugt das Differenzierglied 539 einen Triggerimpuls, durch den der Flipflop zurückgestellt wird.
Der Flipflop 535 hat zwei Ausgänge, die mit »1« und »0« bezeichnet sind. Befindet sich der Flipflop im »!«-Zustand, so gibt er an seinem »0«-Ausgang ein Binärsignal »0« und an seinem »1 «-Ausgang ein Binärsignal »1« ab. Bei dem in F i g. 9 a dargestellten Ausführungsbeispiel ist das Binärsignal »0« gegenüber dem Binärsignal »1« positiv. Wird der Flipflop in seinen »0«-Zustand zurückgestellt, erfolgt eine Umkehrung der an seinen Ausgängen auftretenden
509507/40
652
153
154
Signale. Am »O«-Ausgang erscheint also eine binäre »1« und am »1 «-Ausgang eine binäre »0«.
Auf einem zweiten Ausgang erzeugt der Rechleckschwingungsformer 537 das Komplement zum Rcchteckimpuls G, das mit G bezeichnet ist. Der Rechteckschwingungsfonner erzeugt also an seinen beiden Eingängen stets zwei Binärsignale mit entgegensetzten Werten, wobei das eine Signal, d. h. der Rechteckimpuls G, sich jeweils während der positiven Halbperiode des Rückführungssignals C auf einem relativ niedrigen, einer binären »1« entsprechenden Pegel und während der negativen Halbperiode des Rückführungssignals auf einem einer binären »0« entsprechenden Pegel befindet (vgl. Fig. 38a).
Um ein polarisiertes Gleichspannungssignal zu erzeugen, das Vorzeichen und Gröi3e des Phasenwinkelfehlers zwischen dem Rückführungssignal C und dem Vergleichsimpuls F anzeigt, werden der Rechteckimpuls Ό des Rechteckschwingungsformers 537 und das »!«-Ausgangssignal H des Flipflops 535 einem ersten UND-Glied 541 und der Rechteckimpuls G des Rechteckschwingungsformers 537 sowie das »0«- Ausgangssignal Ή des Flipflops 535 einem zweiten UND-Glied 543 zugeführt.
Die Ausgänge der UND-Glieder 541 und 543 sind mit der Steuerklemme 545 bzw. 547 zweier Stromgeneratoren 549 und 551 verbunden. Beide Stromerzeuger arbeiten auf einen gemeinsamen Lastwiderstand 553, haben jedoch entgegengesetzte Polarität, so daß beim Einschalten des »negativen« Stromerzeugers 549 Strom von Masse über den Lastwiderstand 553 und den Stromerzeuger 549 zu einer Minusklemme 555 fließt und am Widerstand eine negative Spannung K auftritt. Wird dagegen der »positive« Stromgenerator 551 eingeschaltet, so fließt Strom von einer Plusklemme 557 über den Stromgenerator 551 und den Lastwiderstand 553 nach Masse, wodurch am Lastwiderstand eine positive Spannung L auftritt. Die Größe des am Lastwiderstand 553 auftretenden Spannungsimpuls wird durch eine bipolare Zenerdiode 559, die in beiden Richtungen die gleiche Zenerspannung hat, auf einem vorbestimmten Wert gehalten, gleichgültig, welcher der beiden Stromgeneratoren eingeschaltet wird.
Eilt der Vergleichsimpuls F dem negativ verlaufenden Nulldurchgang C0 des Rückführungssignals vor, so erzeugt das erste UND-Glied 541, das von dem Impuls Ό des Rechteckschwingungsformcrs 537 und dem Impuls H des Flipflops 535 aufgetastet wird, einen Impuls, der in Fig. 9a und 38b mit »Ein- 5<> schaltimpuls bezeichnet ist. Durch diesen Einschaltimpuls K wird der negative Stromgenerator 549 eingeschaltet, um einen negativen Spannungsimpuls K am Lastwiderstand 553 zu erzeugen, dessen Dauer dem Betrag der Phasenvoreilung direkt proporrionaJ ist.
Eilt dagegen der Vergleichsimpuls F dem Nulldurchgang C0 nach, so erzeugt das zweite UND-Glied 543, das von den Impulsen G und Ή getastet wird, einen Impuls, der mit »Einschaltimpuls bezeichnet ist. Hierdurch wird der positive Stromgenerator 551 eingeschaltet und erzeugt einen positiven Spannungsimpuls L am Lastwiderstand 553, dessen Dauer dem Betrag der Phasennacheilung ebenfalls direkt proportional ist.
Wie der Rechteckschwingungsformer 537, der Flipflop 535, die UND-Glieder 541 und 543 sowie die beiden Stromgeneratoren 549 und 551 zusammenwirken, um die beiden polarisierten Impulse K und L zu erzeugen, geht aus den verschiedenen Signalen in Fig. 38a ... 38c hervor und wird hier nicht weiter beschrieben. Erwähnt sei lediglich, daß ein negativer Impuls K (vgl. K, Fig. 38b) erzeugt wird, wenn der Vergleichsimpuls F dem in negativer Richtung verlaufenden Nulldurchgang C0 des Rückführungssignals C voreilt. Dieser negative Impuls K beginnt mit dem Vergleichsimpuls F und endet mit dem in negativer Richtung erfolgenden Nulldurchgang Cn ties Rückführungssignals C.
Eilt der Vergleichsimpuls F dem gleichen willkürlichen Nulldurchgang C0 des Rückführungssignals C nach, so wird ein positiver Impuls L (vgl. /., Fig. 38c) erzeugt, der mit dem in negativer Richtung erfolgenden Nulldurchgang des Rückführungssignals C beginnt und mit dem Auftreten des Vergleichsimpulses F abklingt.
Bei der Vorschubbewegung des Fräsers 14 eilt der die Sollstellung und die Geschwindigkeit der Stellungsänderung des Fräsers darstellende Vergleichsimpuls F dem negativ verlaufenden Nulldurchgang C0 des Rückführungssignals C vor oder nach, je nachdem, ob der Fräser in + X- oder - ^-Richtung verfahren wird. Zur Umformung der in ihrer Breite veränderlichen, amplitudenkonstanten Impulse K und L in ein sich geschmeidig änderndes Steuersignal, beispielsweise in eine polarisierte, veränderbare Gleichspannung, die sich zum Einspeisen in einen Servoverstärker eignet und von dort dem Stellmotor 21 zugeführt wird, werden diese Impulse in einem Tiefpaß 561 gemittelt. Das Ausgangssignal des Tiefpasses 561 ist somit ein polarisiertes Gleichspannungssignal, welches das Vorzeichen und die Größe des durchschnittlichen Phasenwinkelfehlcrs zwischen dem Vergleichsimpuls F und dem negativ verlaufenden Nulldurchgang C0 des Rückführungssignals C darstellt. Nach Verstärkung im Servoverstärker 521 wird dieses Gleichspannungs-Fehlersignal dem Stellmotor 2\ zu- ^ef-uhjl, wodurch dieser den Fräser 14 in einer Richtung und mit einer -Geschwindigkeit verfährt, die der Richtung und der Geschwindigkeit, mit der sich die Phase des Vergleichsimpulses F ändert, entsprechen, d. h. in einer Richtung und mit einer Geschwindigkeit, wie sie von der vom System berechneten Folge von Mikropositionswerten XSC befohlen werden. Sobald sich der Phasenwinkel des Vergleichs- oder Kommandoimpulses F zu ändern beginnt und der Phasenwinkelfehler größer als Null wird, beginnt der Stellmotor 21 zu laufen, so daß die Phase des Rückführungssignals C vom Drehmelder 523 in eine Richtung verschoben wird, um den Phasenwinkelfehler wieder gleich Null zu machen. Der momentane Stel lungsfehler kann also nicht größer als 0,05 Zoll (1,2 mm) werden, und der eine Feindrehmelder reicht aus, um zu gewährleisten, daß das System ständig der sich dynamisch ändernden Sollstellung auf der *-Achse folgt.
Bei der in den vorstehenden Abschnitten beschriebenen Einrichtung handelt es sich um einen besonders geeigneten Regelkreis mit Filter zum Verfahren des Fräsers 14 in der X-Achse in Übereinstimmung mit den vom System erzeugten digitalen Mikropositionswerten XSC. Zum Regelkreis für die Y-Achse, mit dem der Fräser 14 in Übereinstimmung mit den Mikropositionswerten YSC in der Y-Achse verfahren wird, gehört ein zweiter Vergleicher 563, der in Fig. 9d dargestellt ist und genauso ausgebildet sein
652
155
156
kann wie der in derselben Figur gezeigte Vergleicher 533. Unter dem Einfluß des über die Sammelschiene 81 empfangenen Mikropositionskommandos YSC erzeugt der Vergleiche!· einen Vergleichsimpuls, der mit »Kommando V-Aehse« bezeichnet ist. Dieser Impuls wird in den Regelkreis 77 eingespeist, der in Fig. 9a als Block dargestellt ist. Der Regelkreis 77 der y-Achse kann so ausgebildet sein wie der Regelkreis für die Af-Achse, den Fig. 9a im einzelnen zeigt. So gehört zum Regelkreis 77 der F-Achse der Stellmotor 25 (Fig. 1), der mit Hilfe der Transportspindcl 24 den Fräser 14 zusammen mil dem Spindelkasten 15 in senkrechter Richtung verfährt.
F. Lineare und zirkuläre Interpolation nach dem
alternierenden Verfahren
1. Einleitung
F i g. 40 a... 40 m zeigen ein zweites System, mit dem sich ebenfalls lineare und zirkuläre Interpolationen durchführen lassen. Das System von Fig. 40 a... 40m ist dem System von Fig. 9a ... 91 sehr ähnlich. St) besteht das zweite System überwiegend aus Einrichtungen, die denen des ersten Systems entsprechen. Um Ähnlichkeiten zwischen beiden Systemen rasch erfassen zu können, tragen Bauteile des Systems von F i g. 40, die denen im System von F i g. 9 entsprechen, die gleichen Bezugszeichen, jedoch mit einem zusätzlichen Apostroph (').
Von einigen Ausnahmen abgesehen, gilt das allgemeine Blockschema von F i g. 7 für die zweite Ausführungsform von F i g. 40 ebenso wie für die erste von F i g. 9. Gewisse Unterschiede zwischen beiden Ausführungsformen werden in den folgenden Abschnitten erläutert.
2. Grundsätzliche bauliche Unterschiede zwischen beiden Systemen
a. Betriebssiüfcnwähler des Zeitbasis- und
Taklgebersystcms
Beim ersten System von F i g. 9 ist der in F i g. 9 d und 9e dargestellte Betricbsstufenwähier 69 de« Zsiibasis- und Taktgebersystems so ausgebildet, daß er das System nacheinander in vier verschiedene Betriebsstufen schaltet. Diese Umschaltung wird dadurch erreicht, daß der Blockende-Zählcr 186 nacheinander weitergeschaltet wird, wodurch ein Signal der Reihe nach auf den Ausgängen 51 .. .516 seines Zuordners 187 erscheint. Die Ausgangssignale 51 ... 516 des Zuordners dienen einem einzigen Zweck: die Weiterschaltung des Blockendc-Zählers 186 zu steuern und die Umschaltung auf die verschiedenen Betriebsstufen des Systems zu veranlassen.
Im Vergleich zum ersten System von F i g. 9 hat das zweite System von Fig.40 nur drei Betricbssrufen. Auch bei diesen Betriebsstufen wird die Umschaltung ausschließlich von den Ausgangssignalen eines Zuordners 187', der dem Zuordner 186 von F i g. 9 a entspricht, gesteuert. Ein Unterschied besteht jedoch in der Beziehung zwischen den Zahlenständen des Blockende-Zählers 186' von Fig. 4Oe, die auf den Ausgängen des Zuordners 187' erscheinen, und den Auftastsignalen, wie sie auf den Steuerleitungen MV, MT und M3' in Fi g. 4Od auftreten, im Vergleich zu den Zahlenständen und Auftastsignalen der entsprechenden Bauteile von Fig. 9e und 9d. So arbeitet das System von Fi g. 40 so lange in der Betriebsstufe 1, wie auf einem der Ausgänge Sl S4 des Zuordners 187' ein Signal auftritt.
Diese vier Ausgänge sind mit einem ODER-Glied 570 verbunden, dessen Ausgang seinerseits mit der Steuerleitung M Γ der UND-Glieder 175' in Verbindung steht. Die Umschaltung des Systems auf die zweite Betriebsstufe erfolgt, wenn auf einem der Ausgänge 56 und 57 des Zuordners 187' ein Signal auftritt. Diese beiden Ausgange snid über ein zweites ODER-Glied 571 mit der Steuerleitung Ml' der zweiten Gruppe UND-Glieder 177' des logischen Zeilbasis-Schaltnetzes 67' verbunden. Die Umschaltung auf die dritte Betriebsstufe schließlich erfolgt, wenn auf dem Ausgang 58 des Zuordners 187' ein Signal auftritt. Dieser Ausgang des Zuordners ist direkt mit der Steuerleitung M 3' der dritten Gruppe UND-Glieder 179' des logischen Zeitbasis-Schaltnetzes 67' verbunden.
Ein weiterer Unterschied zwischen den beiden Systemen von F i g. 9 und 40 besteht darin, daß beim zweiten System die Ausgänge des Zuordners 187' zwecks Steuerung der Arbeitsweise des Systems nicht einfach über eine Reihe ODER-Glieder direkt mit den UND-Gliedern des logischen Zeitbasis-Schaltnetzes verbunden sind, wie dies bei der ersten Ausführungsform von F i g. 9 der Fall ist, sondern daß diese Ausgänge zwecks Durchführung der Steuerung anders geschaltet sind. So werden beispielsweise die Signale, die auf den Ausgängen 55 und 56 des Zuordners 187' auftreten, einem ODER-Glied 537 zugeführt, dessen Ausgangssignal mit dem Ausgangssignal G 02 4 G 03 des Zuordners 221' von F i g. 401 in einem UND-Glied 575 verknüpft wird. Das Ausgangssignal des UND-Gliedes 575, das die logische Verknüpfung (55 1-56) · (G 02+ G 03) darstellt, wird in einem NICHT-Glied 576 invertiert. Das Ausgangs signal des NICHT-Gliedes 576
56)(G02 + G03)
ist mit PX2 bezeichnet und wird im ganzen System dazu benutzt, den Betrieb so zu steuern, wie es nachstehend noch ausführlich beschrieben wird. Kurz gesagt, wird das Funktionssigna! PY2 nur so lange erzeugt, wie das Ende des laufenden Wegstückes noch nicht ermittelt worden ist, wenn das nächste Wegstück ein Kreisbogenstück ist. Ist dagegen das nächste Wegstück eine Gerade, so tritt das Funktionssignal auch nach der Ermittlung des Endpunktes des laufenden Wegstückes weiterhin auf.
b. Speicherung des Endpunktes auf der langsamen Bewegungsachse
Bei der ersten Ausführungsform nach F i g. 9 sind Vorrichtungen vorgesehen, mit denen beim Beschreiben eines Kreisbogenstückes eine Endpunktannäherungs-Prüfung auf der langsamen Bewegungsachsi durchgeführt wird. Mit dieser Prüfung soll vermieder werden, daß man ein zweideutiges Resultat erhält was der Fall wäre, wenn die Endpunktannäherungs Prüfung nur auf der schnellen Bewegungsachsi durchgeführt würde. Die Durchführung dieser Prü fung ist in den Abschnitten D2h2 und D2h3 be schrieben. Um die Beschreibung der Wirkungsweisi des zweiten Systems von F i g. 40 zu vereinfachen ist diese Endpunktannäherungs-Priifung nicht al: Teil des Systems dargestellt. Wie sich diese Prüfunj im zweiten System gegebenenfalls realisieren ließe liegt für den Fachmann jedoch auf der Hand.
Ein weiterer geringfügiger Unterschied betrifft dei Blockende- und Überlauf detektor 71' (**& zweitei
652
157
158
Systems von Fig. 40, der noch ein weiteres Bauelement, und zwar ein NICHT-Glied 577, enthält, dessen Eingang mit dem Ausgang des ODER-Gliedes 481' verbunden ist. Der Ausgang des NICHT-Gliedes 577 dient als Ausgang des Brückende- und Überlaufdetektors 71' und ist mit 35Γ bezeichnet. Der Ausgang SST des NICHT-Gliedes 577 is; mit der Programmtoranordnung 183' des Betriebsstufenwähiers 69' verbunden, so daß diese den Blockende-Zähler 186' stets dann weiterschaltet, wenn sich das Vorzeichen ändert. Dies steht im Gegensatz zum ersten System, bei dem die Programmtoranordnung auf das auf dem Ausgang COT(-) des Digitalrechners 53 auftretende Signal SST (gleiches Vorzeichen zweimal) anspricht.
c. Register YCPR
Aus Gründen, die nachstehend noch erläutert werden, werden das in Fig. 9g gezeigte Register 116 YCPR und seine zugehörigen Verknüpfungsglieder 489, 491, 493, 495, 497 und 499 im zweiten System nicht benötigt und sind daher auch nicht dargestellt.
d. Zusätzliche Register XMP und YMP zur
Speicherung von Makropositionswerten in
Maschinenkoordinaten
Beim ersten in F i g. 9 gezeigten System werden bestimmte feste und unveränderliche Korrekturwerte, die die Verschiebung des Nullpunktes betreffen und die benötigt werden, um die numerischen Daten aus dem vom Programmierer benutzten Koordinatensystem in die Maschinenkoordinaten zu übertragen, zu Beginn beim Umspeichern der Daten aus den Zwiscl.enregistern 47 in die aktiven Register 57 hinzuaddiert, bevor die Berechnungen zur Erzeugung der Makro- und Mikrobewegungen durchgeführt werden (vgl D2al). Der Nachteil hierbei ist, daß — wenn die zu berechnenden Daten auf einem Sichtgerät zwecks Kontrolle durch einen Bedienungsmann oder durch Wartungspersonal abgebildet werden — für den Betrachter weniger verständlich erscheinen als in ihrer ursprünglichen Form, in der sie den Abmessungen entsprechen, die in der Zeichnung des zu bearbeitenden Werkstückes angegeben sind. Aus diesem Grunde werden die Daten beim zweiten System erst dann in die Maschinenkoordinaten übertragen, wenn der letzte einer bestimmten Makrobewegung zugeordnete Rechengang durchgeführt ist. Auf diese Weise lassen sich alle Resultate früherer Berechnungen in direktem Einklang mit den Zahlen abbilden, die zur Programmierung des 1 ochstreifcns benutzt wurden und auf den Tcilzcichnungcn angegeben sind.
Zu beachten ist ferner, daß im Gegensatz zum ersten System, bei dem eine große feste NuUpunkiverschiebung zu den Daten addiert wurde, um Λ:■:·-■.: aus dem vom Programmierer benutzten 4-Oiuulra ten-Koordinatcnsystcm in ein l-Oundraiiun-knoivii natensystem zu übertragen, beim /weiten v.-'cm keine feste NuUpunktvcrschiebu: ;i vorgesehen ist Daher entfallen heim zweiten, in V i g. 40 ce/ui.'te System auch die Programmtorc 361. 363 369 \m 379 sowie das ODER-Glied 371. die zur Eingabe der festen Nullpunktvcrschiebung benutzt werden. Beim System von F i g. 40 hat also das Maschinenkoordinatensystem vier Quadranten, und sein Nullpunkt ist gegenüber dem vom Programmierer be nutzten und in F i g. 2 gezeigten Koordinatensystem nur um den von der Bedienungsperson der Maschine einzugebenden Werkzeugkorrekturwerten verschoben. Genauer gesagt, werden für die meisten Berechnungen die im System stehenden Daten wie /. /, AX, A Y, XCP und YCP nicht modifiziert. Dagegen erscheinen jedoch die Mikropositionswerte. die in den Registern UYXSC und 119'75C periodisch neu berechnet werden, stets in den Maschinenkoordinaten.
ίο W'ie zuvor erläutert, werden die Mikropositionswerte in jedem Arbeitsspiel zehnmal neu berechnet. Damit die zu ihnen zu addierenden Makropositionswerte in Maschinenkoordinaten erscheinen, wird in jedem Arbeitsspiel einmal kurz vor der zehnten Ncuberechnung des im Register XlX' XSC stehenden Mikropositionswertes der im Register 117'ΛΧΡ stehende, in den Koordinaten des Programmierers dargestellte Positionswert modifiziert, indem zu diesem Wert der im Korrekturregister 365' stehende Werkzeugkorrekturwert addiert ur.d das Ergebnis, das mit XMP bezeichnet ist, in ein weiteres Register 579 eingeschrieben. Dieses Register zeig! Fig. 40g. Anschließend wird die Zahl XMP als zehnter neuherechneter Mikropositionsvvert für die Ä'-Achse in das Register 121'^.SC übertragen. In ähnlicher Weise wird auch für die F-Achse der im Register XXS'YCP stehende Positionswert kurz vor der zehnten Neuberechnung des im Register X19'YSC stehenden Mikropositionswertes YSC aus den Koordinaten des Programmierers in die Maschinenkoordinaten übertragen, inderr zu diesem Wert der im Korrekturregister 367' aufbewahrte Werkzeugkorrekturwert addiert und das Ergebnis in ein zweites, zusätzliches Register 581 eingeschrieben wird. Dieses zweite, zusätzliche Register steht in F i g. 40 g unter dem Register 579. Anschließend wird dann die Zahl YMP als zehnter neuberechneter Mikropositionswert für die V-Achse in das Register 119' YSC gebracht.
Die Übertragung von Information in das und aus dem Register 579 XMP wird von zwei diesem Register zugeordneten Programmtoren 579a und 579 b gesteuert. Ebenso sind auch für das Register 581 YMP zwei Programmtorc 581 α und 581/;'vorgesehen, die die Eese- und Schreibtore dieses Regi-
4b sters tasten.
e. Zusatzregister
Bei der übertragung von Daten aus den Zwischenregistern in die aktiven Register werden im zweiten
,50 Sv<.lem (1 i u 40) bestimmte Korrekturen an den umzuspeichcrndc" Oaten vorgenommen. Zur Vereinfachung der o.;bei :iuftrci.enden Berechnungen ist e;.n Zusatzregister 582 vorgesehen, das in Fig. 4Oj unter dem Register 103' Q steht. Während der Berechnung werden Daten von der A jsgangssammelschiene des Digitalrechners 53' in das Zusatzregistcr 582 einge- -ehnci'' ■', indem J nc PnigrnmmtnnmoriHiim!; 583 einen '--.hreibiiinu i·. auf das RerNier gibt. Sollen the in /iisiii/.r^e^tir 582 aufbewahrten Dann in den
'Ί" Oii:.!'.llreehner 5.V Gebracht werden, so gibt eine Proi!rani'vaor;i:io:,.ir:'.!niz 58:» einen l.eseimpuls auf d.is
.;. Grundet/üchc Unterschiede in der Arbeitsweise
a. lineare Interpolation nicht simultan.
Mindern alternierend
Im Gegensatz zu der in F i g. 9 gezeigten ersten Ausfühiungsform. bei tier lineare Interpolationen
159
160
simultan durchgeführt werden, werden bei der zwei-Len Ausführungsform des Systems sowohl lineare als auch zirkuläre Interpolationen nach dem alternierenden Verfahren ausgeführt. Wie im Verlauf der Beschreibung noch ersichtlich wird, hat diese Ähnlichkeit zwischen linearem und zirkulärem Interpolieren zur Folge, daß das System wesentlich einfacher arbeitet, so daß auch seine Beschreibung wesentlich vereinfacht wird.
b. Beim Übergang von einem Wegstück auf das
nächste werden weder an den Makrobewegungen
noch am nächsten Datenblock Korrekturen
vorgenommen
In Verbindung mit dem ersten System wurden zwei Korrekturmöglichkeiten für einen Übergang von einem Wegstück auf das nächste beschrieben. Die eine betraf eine Gerade, die andere ein Kreisbogenstück. Soll z. B. ein gerades Wegstück genau am Ende eines Arbeitsspiels beendet werden, so werden einige Makrobewegungen verlängert oder verkürzt, um den programmierten Endpunkt des geraden Wegstückes genau am Ende eines gegebenen Arbeitsspiels zu erreichen. Soll dagegen ein zirkuläres Wegstück beendet werden, so werden nicht die Makrobewegungen korrigiert, sondern vielmehr die Wegkomponenten / und J des nächsten Wegstückes, um eventuelle Fehler zu kompensieren, die sich unter Umständen daraus ergeben können, daß das am Schluß eines Arbeitsspiels zu beendende Wegstück nicht genau an seinem programmierten Endpunkt aufhört.
Keine dieser beiden Korrekturmöglichkeiten wird bei der zweiten in Fig. 40 gezeigten Ausführungsform des Systems angewandt.
Der Grund hierfür liegt darin, daß das System von F i g. 40 sowohl lineare als auch zirkuläre Wegstücke nach dem alternierenden, also zeitversetzten Interpolationsverfahren beschreibt. Ferner kann davon ausgegangen werden, daß beim Beschreiben einer Folge von Wegstücken, bei der ein Kreisbogenstück auf eine Gerade oder eine Gerade auf ein Kreisbogenstück folgt, oder zwei Kreisbogenstücke aufeinanderfolgen, derartige aufeinanderfolgende Wegstücke tangential verlaufen. Da alle diese Wegstücke außerdem nach dem alternierenden Verfahren interpoliert werden, ergibt sich somit ein geschmeidiger Übergang vom einen Wegstück auf das nächste, ohne daß es dabei erforderlich wäre, irgendeines der Wegstücke am Ende eines gegebenen Arbeitsspiels zu beenden. Vielmehr kann man die Endpunkte auch mitten in einem Arbeitsspiel anfahren, wobei die zum folgenden Wegstück gehörenden Komponenten / und / zu Beginn um einen Betrag modifiziert werden, der vom Größenverhältnis des letzten Arbeitsspiels, das in Übereinstimmung mit dem vorhergehenden Wegstück ausgeführt wurde, bestimmt wird.
c. Umgekehrte Zeitbeziehung
zwischen den Makrobcwegungen Λ X und .1 Y
und dem Zeitabschnitt A T 6q
Beim ersten Ausfülmmysbcispiel nach F i g. 9 wird die Makrobewegune I Λ' am Ende eines Arbeitsspiels berechnet und dann während des gesamten folgenden Arbeitsspiels ausgcfühn. während die Makrobewegung ,.·} Y gegen Ende der ersten Hälfte eines Arbcitsspiels berechnet und dann in der zweiten Hälfte dieses Arbeitsspiels sowie in der eisten Hälfte des nächsten Arbeitsspiels ausgeführt wird. Beim zweiten Ausführungsbeispie! nach F i g. 40 sind die Zeiten, in denen die Makrobewegungen berechnet und ausgeführt werden, genau umgekehrt. So erfolgt die Ausführung einer Makrobewegung A Y in einem einzigen Arbeitsspiel, die Ausführung einer Makrobewegung A X dagegen in der zweiten Hälfte eines gegebenen Arbeitsspiels sowie in der ersten Hälfte des anschließenden Arbeitsspiels. Diese Zeitbeziehungen sind in den beiden Vektordiagrammen von Fig. 41b und 4-' •"■«■gestellt. Das Vektordiagramm von Fig. 41b ··... für eine Gerade, das von F i g. 42 für ein Kreisbogenstück. In beiden Diagrammen ist ein einem Arbeitsspiel entsprechender Zeitabschnitt durch die Vektorgröße Δ T dargestellt. Die Zeitabschnitte, die gegenüber den Zeitabschnitten A T versetzt sind und den Zeitabschnitten entsprechen, in denen aufeinanderfolgende Makrobewegungen Δ Χ ausgeführt werden, sind als Vektorgrößen Δ Τ' dargestellt.
d. Neuberechnung der Makropositionen XCP
und YCP erfolgt zeitversetzt (alternierend)
Beim ersten Ausführungsbeispiel, das in Verbindung mit F i g. 9 beschrieben wurde, werden beide Makropositionen XCP und YCP in der ersten Spalte des Arbeitsspiels um AX bzw. A Y erhöht. Die Zeiten, in denen diese Neuberechnung der Makroposilionen XCP und YCP erfolgt, liegen so eng beieinander, daß man für praktische Zwecke davon ausgehen kann, daß beide Positionen im wesentlichen zur gleichen Zeit neu berechnet werden. Demgegenüber erfolgt beim Ausführungsbeispiel nach F i g. 40 die Neuberechnung der Makroposition für die ^f-Achse gegen Ende der ersten Hälfte eines Arbeitsspiels und die Neuberechnung der Makroposition für die Y-Achse gegen Ende desselben Arbeitsspiels. Die Zeiten, in denen die beiden Makropositionen XCP und YCP neu berechnet werden, liegen also im wesentlichen einen halben Zeitabschnitt AT auseinander. Sie sind somit um den gleichen Betrag gegeneinander versetzt wie die Zeiten, in denen abwechselnd die Makrobewegungen AX und A Y neu berechnet werden.
e. Operationen zur Durchführung
der Punktvorverlegung in der Y-Achse
unterscheiden sich von denen zur Durchführung
der Punktvorverlegung in der .Y-Achse
Die vom System in F i g. 40 durchgeführten Operationen zur Punktvorverlegung, mit denen die Annäherung eines programmierten Endpunktes ermittelt werden soll, entsprechen weitgehend den gleichen Operationen des Systems von F i g. 9, sofern das zu beschreibende Wegstück ein Kreisbogenstück ist. Infolge der alternierenden Neuberechnung der Makropositionswerte XCP und YCP im System von F i g. 40 untersJiciden sich die vom zuletzt genannten System durchgeführten Punktvorverlegungen jedoch in Einzelheiten von der Punktvorverlegung, wie sie das System von l· i g. 9 vornimmt.
Wie bekannt, werden bei dem System von F i g. 9 beide Makropositionswerte XCP und YCP zu Beginn eines Arbeitsspiels auf einen Wert erhöht, der die am Ende dieses Arbeitsspiels zu erreichenden Positionen auf der X- und der Y-Achse darstellt. Kurz nach Beendigung dieser Neuberechnungen erfolgt eine Punktvorverlegung auf der schnellen Bewegungsachse (auf der Achse also, auf der die Bewegung schneller ist), indem zu dem der schnellen Bewegungsachse zugeordneten neuberechneten Makropositionswert eine
^ !9 48 490
161 V Endpunkt zu dem in der Mitte des
Zahl addiert wird, die einer Makrobewegung auf P^gJg, „ nden P«^^ £*' £ dieser Achse entspricht. Dieser Rechengang wird J ZeitabschnHtes ,IT durcManren u^esc
λΤ zu dem
VrP-XCEP die GrölJe δλα ««ι«. »««
aüftriü1 i'nwelchem'die'Pu'nktvorverlegung, also die *<·£ ^ ke dar> die in der Z-Achse m
E^dpunkLniheLgs-Prüfung, durchgeführt wurde. » ^Sbschnitten JTzurfickj^^ ^und gm DieseZahl wird dann mit der entsprechenden Koordi- wei /- ktor591 angedeutet. IstXCP - ATEP
nate des programmierten Endpunktes verglichen, um F^g. ^ s0 hat d e Große JfCP, - 2 JAT das
festzustellen, ob die Endpunkt-Koordinate im nach- wew te Vorzeichen der Große ATP -
sten Arbeitsspiel erreicht wird oder nicht. Auch beim ertgege B wW dann ak Anzeige dafür benutet, zweiten Ausführungsbeispiel nach Fig. 40 wird die »5 *«£ mmierte Endpunkt auf der AT-Achse
Punktvorverlegung, d. h. die Endpunktannäherungs- όl™£TJ{Jmhe des Ze.tabschn.ttes A T, errocht Prüfung, am Anfang jedes Arbeitsspiels durchgeführt, «
und auch hier dient diese Berechnung dem Zweck. wig die GHe(Jer d ^2 genannte,
festzustellen, ob der programmierte Endpunkt des Λ". um so erhält man XCP1 + 2.AX-XCEP. Wegstückes auf der schnellen Bewegungsachsem dem «o $5'™ , ^ dies im Endeß kt einen VerArbeitsspiel angefahren wird, das im Anschluß an pieman kt.KoOrdinateAT£P mn der in das Arbeitsspiel auftritt, in welchem die Punktvorver- fleiC"Q te des Arbeitsspiels liegenden, um zwei Malegung vorgenommen wurde. Und wie beimersten der λ vorverlegten Makropositions-Ko-Ausführungsbeispiel des Systems wird auch hier die ""P^^A dar. Zu Beginn des Arbeitsspiels wird Punktvorverlegung wieder in Verbindung mit einem *5 °[ϋ Koordinate um zwei Makrobewegungen vor-Makropositionswert vorgenommen, der der schnellen aiso ^χ Vorverlegung jedoch von einem Bewegungsachse zugeordnet ist. Wie jedoch oben aus^ ^ordinatenpunkt aus erfolgt, der in der Mitte des geführt wurde, wird der Makropositionswert XCP ^SSe-henden Arbeitsspiels durchfahren wurde beim zweiten Ausführungsbeispiel nach Fig. 40 im v0™"% aus Fig. 43 entnehmen kann, erg.bt die Gegensatz zum ersten Ausführungsbeispiel von 3« vvie: .■ Ut jT durchgeführte Punktvorver-F i g. 9 nicht zu Beginn eines Arbeitsspiels, sondern im Makrobewegungen keine Vorzeichengegen Ende der ersten Hälfte des Arbeitsspiels neu !e8.u'& d h die Prüfung verläuft negativ. Sonnt berechnet, während die Neuberechnung des Makro- a™r£*' 'daß der Endpunkt in der ersten Hälfte positionswertes YCP gegen Ende eines Arbeitsspiels ist 0I" ' hnittes A τ nicht erreicht wird. Im seierfolgt. Ist also die Bewegung auf der A--Achse schnei- 35 aes «. wjrd noch dne zweitc Punkt.
ler, so daß die Punktvorverlegung in Verbindung mit ^- vorenommen, durch die der zuvor vordem Makropositionswert ATP vorgenommen werden v°7e Λ Punkt um eine weitere halbe Makrobewemuß, so muß die Punktvorverlegungsgroße um eine „f"e vorverlegt wird, um zu ermitteln, ob der Endhalbe Makrobewegung erhöht werden, da die im Re- guug YrFp!pCEP ,n der zweiten Hälfte des zum gister UTXCP stehende Makroposition XCP zum 4° P™"£V . ]T Eehörenden Arbeitsspiels erreicht Zeitpunkt der Berechnung der Punktvorverlegung ^aD^"" nicht 3 |u diesem Zweck wird zu dem nicht die Position zu Beginn des Arbeitsspiels dar- wird oder n ^^ _^£ρ + 2Αχ ^ stellt, in dem die Punktvorverlegung berechnet wird £™ei?e halbe Makrobewegung hinzuaddiert. Diese sondern die Position, die am Ende der ersten Hälfte ^^^^g^ ist in Fig. 43 als Vektor 592 des vorhergehenden Arbeitsspiels erreicht wurde. 45 halt« mjk *m* Summe lautet also XCP1-Die vorstehenden Ausführungen sind leichter zu 9^p . 25 ]X Hat diese Summe ein anderes Vorverstehen, wenn man sie im Zusammenhang mit J , · ' vorhergehende Summe, so ist dies ein Fig. 43 und 44 betrachtet. Diese Figuren stellen zeuhw ah^die g End nkt XCEPIYCEP auf
Vektordiagramme ^.^^^^^. 50 de J Achse"in der zweiten Hälfte des Zeitabschnit-
Punktvorverlegung in der A% und in der r-Acnse ver 50 un
anschaulichen. Wie zunächst Fig. 43 zeigt wird em tes^ermen . ^ ^^ ^^
gerades Wegstück 587 in aufeinanderfolgenden Zeit- Ordne -™ erhalt man XCP +
abschnitten A T1, AT2, AT3 und AT, in Richtung "ΧεΡ Aus dem gleichen Grund, der eines programmierten Endpunktes beschneben. Die 2^iX A . ^ ^. Makrobewegungen
Koordinaten dieses Endpunktes sind A"C£P und 55 ober irι ν en« J1 eben wurde)
DifferenzicrungSwischen kleinem und großem über- ten Beisp.el verlauft auch diese zweite^P^ung ne
lauf, die in Verbindung mit dem System von F i g. 9 gat.v da der Endpunkt m keinu _der bc.den
vorgenommen wunlc. Auf sie wird nachstehend noch des Zc.tabschnittes AT3 erreicht wird näher eingegangen Als erster Schritt in der während 65 Mit Beginn des nächsten Zeitabschnittes A T, we
Ϊ ZeSihnitteszfr. durchzuführenden End- den beide Endpunktannaherungs-Prufungen wieder-
punktannäherungs-Priifung muß XCP1-XCEP be- Holt. Die dabei auftreten^den B c rechgJSPnsm^ »
rechnet werden, d. h. die Af-Koordinatenstrecke vom F i g. 43 als Vektoren 593, 595 und 597 dargestellt.
163
164
Das Resultat der ersten Prüfung ist wieder negativ, da der programmierte Endpunkt nicht in der ersten Hälfte des Zeitabschnittes J T1 erreicht wird. Dagegen ergibt die zweite, im Zeitabschnitt JI3 durchgeführte und als Vektor 597 angedeutete Endpunktannäherungs-Prüfung ein positives Ergebnis. Das Vorzeichen der GrOBeA-CF3- XCEP ist nämlich negativ, während das Vorzeichen der GrOBeA1CP3+ 2,5 J X —XCEP positiv ist. Diese Vorzeichenumkehrung, die bei der zweiten, aber nicht bei der ersten Endpunktannäherungs-Prüfung auftritt, zeigt somit an, daß der programmierte Endpunkt XCEPlYCEP im Zeitabschnitt Δ T4 erreicht wird, jedoch erst in der zweiten Hälfte dieses Zeitabschnittes.
Fig.44 zeigt die Punktvorverlegungsberechnungen für ein Wegstück, das so verläuft, daß bei seiner Beschreibung die Bewegung in der y-Achse schneller erfolgt als auf der A"-Achse. Wie ersichtlich, ist das vom Vektor 599 dargestellte Wegstück eine Gerade, die von einem Punkt P0 durch eine Reihe von Punkten P1... P6 geht. Diese Punkte werden in den Zeitabschnitten A T1 IT3 durchfahren. Der programmierte EndpunktXCEPiYCEP wird, wie die Figur zeigt, in der ersten Hälfte, also in Zone A, des Zeitabschnittes A T4 erreicht.
Die erste Endpunktannäherungs-Prüfung, die F i g. 44 zeigt, wird im Zeitabschnitt ,1T1 durchgeführt. Mit Hilfe dieser Prüfung soll vorhergesagt werden, ob der programmierte Endpunkt XCEPl YCEP auf der y-Achse in der ersten Hälfte des Zeitabschnittes Δ T2 erreicht wird oder nicht. Diese Prüfung erfolgt in der Anfangsphase des Zeitabschnittes Λ Tx und besteht ähnlich wie die in F i g. 43 gezeigte Prüfung darin, die y-Koordinatenstrecke vom Endpunkt XCEPiYCEP zum Punkt P0 des geraden Wegstückes 599 zu berechnen. In Fig. 44 ist diese Strecke als Vektor 601 dargestellt. Als nächster Schritt in der Berechnung muß zum Vektor 601, der eine negative Größe ist, die Größe 1,5 Λ Υ addiert werden, also die Strecke auf der V-Achse, die im Zeitabschnitt Δ T1 und in der ersten Hälfte des Zeitabschnittes Δ T2 zurückgelegt wird. Das Resultat ist ATCP0 -YCEP+ 1,5 Δ Y und hat das gleiche Vorzeichen wie YCP0- YCEP, da 1,5 .1 Y kleiner ist als YCP'„- YCbP. Der programmierte Endpunkt YCEP wird nämlich nicht in der ersten Hälfte des Zeitabschnittes Λ T2 erreicht. Danach wird die zweite Endpunktannäherungs-Prüfung durchgeführt, indem die Größe 0,5 Δ Y, die in F i g. 44 als Vektor 605 dargestellt ist, zum letzten Resultat addiert wird. Auch das neue Resultat, YCP0 - YCEP +- 0,5 A Y, ist wieder negativ, da der programmierte Endpunkt auch in der zweiten Hälfte des Zeitabschnittes A T2 nicht erreicht wird.
Zu Beginn des nächsten Zeitabschnittes A T2 wird ein weiteres Paar Endpunktannäherungs-Prüfüngen, also Berechnungen zur Punktvorverlegung, durchgeführt. Diese beiden Prüfungen sind in F i g. 44 als Vektoren 607, 609 und 611 dargestellt. Beide Prüfungen verlaufen negativ, da der programmierte Endpunkt YCEP auch im Zeitabschnitt .17Λ, noch nicht erreicht wird. Wird dann jedoch im nächsten Zeitabschnitt A T3 im Verlauf der ersten Prüfung die als Vektor 613 dargestellte Größe 1,5 Λ Y zu der als Vektor 613 dargestellte Größe 1,5 J Y zu der als Vektor 615 dargestellten Größe YCP4 - YCEP addiert, so erhält die Summe YCPx- YCEP + 1,5 AY ein positives Vorzeichen, da der Vektor 613 größer ist als der Vektor 615, womit augezeigt wird, daß der Abstand auf der y-Koordinate vom Endpunkt YCEPiXCEP zum Punkt P4 kleiner als 1,5 Δ Υ ist. Mit anderen Worten: Der Endpunkt XCEPIYCEP wird in der ersten Hälfte des Zeitabschnittes Δ T4 erreicht. Das Vorzeichen ändert sich also nach der ersten Endpunktannäherungs-Prüfung im Zeitabschnitt J T3 von negativ in positiv, und dieser Vorzeichenwechsel dient als Anzeige, daß der Endpunkt ίο in der ersten Hälfte des nächsten Zeitabschnittes angefahren wird.
4. Arbeitsweise des zweiten Systems a. Allgemeiner Überblick
Die verschiedenen Arbeitsspiele, die vom zweiten System nach F i g. 40 in einem Zeitabschnitt Δ Τ ausgeführt werden, zeigen F i g. 46 ... 57. Diese Figuren sind Befehlsschemata, ähnlich denen, die in Verbindung mit der Beschreibung der Arbeitsweise des ersten Systems von F i g. 9 benutzt wurden. Die Reihenfolge, in der die Arbeitsspiele nach Fig. 46... 57 auftreten, zeigt Fig. 45, die dem Flußdiagramm entspricht, das für das erste Ausführungsbuspiel in F i g. 20 dargestellt ist.
Das Flußdiagramm von F i g. 45 zeigt zwei Arbeitsabläufe für einen Übergang von einem geraden Wegstück auf ein zirkuläres Wegstück sowie zwei weitere Arbeitsabläufe für einen Übergang von einem Zirkularen auf ein gerades Wegstück. Von diesen vier Übergängen werden drei ausführlich beschrieben. Der erste Übergang, bei dem von einer Geraden auf ein zirkuläres Wegstück übergewechselt wird (nachstehend mit »Übergang von linear auf zirkulär« bezeichnet) und bei dem der Endpunkt in der zuvor im Zusammenhang mit F i g. 43 erwähnten Zone A liegt, umfaßt zwei Übergangsspiele nach F i g. 47 und 48, die im Anschluß an ein normales lineares Arbeitsspiel, wie es Fig. 46 zeigt, auftreten und auf die dann ein normales zirkuläres Arbeitsspiel folgt, wie es F i g. 49 zeigt. Diese aus vier Arbeitsspielen bestehende Folge wird nachstehend in Verbindung mit dem Vektordiagramm von F i g. 58 beschrieben.
Der zweite Übergang, bei dem ebenfalls von linear auf zirkulär übergegangen wird, wobei der Endpunkt jedoch in Zone ß liegt, umfaßt drei Übergangsspiele, die in Fig. 50... 52 dargestellt sind. Wie bei einem Übergang von linear auf zirkulär mit dem Endpunkt in Zone/1, so treten auch die drei Übergangsspiele bei einem Übergang νση linear auf zir-
kular mit dem Endpunkt in Zone B im Anschluß an ein normales lineares Arbeitsspiel nach F i g. 46 auf und gehen in ein normales zirkuläres Arbeitsspiel nach F i g. 49 über. Die fünf Arbeitsspiele umfassende Folge wird in Verbindung mit einem anderer Vektordiagramm besenrieben, das Fig. 59 zeigt Schließlich wird noch an Hand eines dritten Vektordiagramms, das F i g. 60 zeigt, ein dritter Übergang beschrieben, bei dem von einem zirkulären Wegstück auf eine Gerade übergegangen wird, wobei de:
Endpunkt des zirkulären Wegstückes in Zone B lieg (Übergang von zirkulär auf linear mit Endpunkt ii Zone ß). Bei einem Übergang dieser Art werden dre Übergangsspiele ausgeführt, die der Reihe nach ii Fig. 55, 56 und 57 dargestellt sind. Diese Über gangsspiele treten im Anschluß an ein normales zir kulares Arbeitsspiel auf, wie es Fig. 49 zeigt, um gehen in ein normales lineares Arbeitsspiel nac F i g. 46 über.
165 166
Tabelle VII Operationen, die in allen Betriebsstufen vorkommen
A-OOO A'100 räume Akk. A'200 .Y 30(1 A'400 X 500 y sehr. XMP HCS ^l -Λ wenn 54, auf 55 X 600 X 700 A7SOO i wenn 54, A'900
00 wenn SS, lies δ λ wenn 5 3, wenn 55, ι* vwp wenn 52, auf 55
auf S 6 auf S 4 auf 56; lies ΛΜι scnicD rc.
lies XSC —
auf 53
wenn 56, scnieD rc.— wenn 56,
auf 5 7 lies AoC — auf 5 7
01 wenn 53,
sehr. XSC,-1 auf 54
02 τ. Akk.
03 ι:η.- ) ν r. Akk. r. Akk.
04 lies A ι lies .1A- lies Λ Υ
05 schieb re. lies XCP lies YCP
06 ι;Λ_ vcr sehr. XCP sehr. YCP
07 lies /je
08 lies XKor. lies YKor.
09... 14 keine
15
1 /C
sehr. / ic — <chr. YMP
16 räume Akk- keine
17
18
19
y
20
21
22
23 lies YMP
24
25
26
27... 90
91
^,
92
93 Leser EIN.
wenn 59
94 wenn 59,
auf 510
95 wenn 510,
auf 511
96 wenn 511.
auf 512
97 wenn 512,
auf 513
98 wenn 513,
auf 514
99 wenn 514,
auf 515
wenn 515,
auf 516
wenn 516,
auf 51
167
Tabelle VIII
168
Spalte
4Q0A
X4QQLINPX2
Spalte
4001)
XM)O-ZlR
Spalte
400C
A'400-.V5-
(G 02 + G (13)
Spalte
400/)
X 400-.S'6
(G 02 + G 03)
Spalte
900 A
X9OQ-UN-
PXl
lies; Spalte
900 ß
X WO-Zl R
Spalte
900C
A" 900-55-
(G 02 + G 03)
Spalte
900D
A' 900-56-
(G 02 + G 03)
1 ... 26 siehe Tabelle VII
27 ... 34 keine Berechnungen lies β
35 lies/ lies J lies JZwi lies / lies / lies IZwi lies/
36 führe MuIt.
JQ
durch
37 lies Q
multipliz.
lies ö lies QZwi lies Qlwi lies Q lies QZlW lies özu.i
führe MuH.
IQ
durch
38...55 schieb 4 X Ii.- führe MuIt.
±JQ
durch
führe MuIt.
±h*r
ßz.w
durch
führe Mull.
± J-Qzn,
durch
lies YR führe MuIt.
±/•0
durch
führe MuIt.
±/ζ»·ι·
ßz-i
durch
führe MuIt.
±/-Qz»,-
durch
56 lies XR
57 schieb 4 X re.-
58 *■ SCUT. Δ ι , y
scnr. Δ λ >.
59
60
nuiic Keg. ι
A 1 -A- VT?
Öl
62
sehr. XR, r. A. r.A.
63
64
lies/ lies/
65... 99 lies J^,
sub.
siehe Tabelle VII lies A Y,
sub.
sehr. / sehr.;
Der vierte Übergang, der ebenfalls in Fi g. 45 an- nach Fig. 40 durchgeführten Operationen erfolg'
gedeutet ist, betrifft einen übergang von zirkulär cn Hand eines Salzes Tabellen VII... XI. in dener
auf linear mit dem Endpunkt in Zone A. Dieser alle Rechenoperationen aufgeführt sind, die von
Übergang wird nur kurz und ohne Vektordiagramm 40 System durchgeführt werden. Aus Gründen de
beschrieben. Übersichtlichkeit sind diese Tabellen auf drei Blät
Die ausführliche Beschreibung der vom System tern zusammengefaßt.
Tabelle IX
Operationen in Betriebsstufc 1
1000 keine
1...32 lies /, wenn LIN; lies J, wenn ZIR
33 lies ;, wenn LW; lies /,wenn ZIR,vgl.
34 FAX auf »1«, wenn >; auf »0«;
wenn <
35 r. Akk.. lies XCP, wenn FAX.
lies YCP, wenn FAX
36 schieb rechts
37 subtT., lies XCEP, wenn FAX
lies Ycep, wenn FAX
38 schieb links
39 lies AX, wenn FAX, lies Λ Υ,
wenn TA^X
40 lies AX, wenn FAX; schieb Ii.,
wenn TA~~X
41 schieb Ii., wenn FAX; lies .1Y,
wenn ΤΆ~Χ
42
1000
43 lies A Y. wenn FAX
44 desgl.
45 desgl.
46 desgl.
47 auf 52, wenn 51-55T
48 auf 53, wenn 52
lies A X, wenn FAX; lies A Y,
wenn TÄX
49 lies AX, wenn FAX; lies AY,
wenn TAX
50 desgl.
51 desgl.
52 desgl.
53 auf 52, wenn Sl-55T
54... 99 keine
169
Tabelle X Operationen in Betriebsstufe 170
.69 2300 2800 keine r. Akk., lies YCP r. Akk., lies XCP
1.. lies YCEP, subtr. lies XCEP, subtr.
70 lies zf Y lies Δ Χ
71 sehr. Zusatzreg. sehr. Zusatzreg.
72 r. Akk., lies JZwl r. Akk., lies IZwi
73 lies Zusatzreg, sub. lies Zusatzreg., sub.
74 sehr. J, wenn
(G02 + G03)
räume Akk.
sehr. /, wenn
(G02 + G03)
räume Akk.
75 lies ßzui> wenn 57 —
76 sehr. Q, wenn 57,
Il r. Akk.
78 lies CrZu>j, wenn 57 —
sehr. G, wenn 57,
r. Akk.
lies Z7,,,,-, wenn
79 57-LW
sehr. /, wenn
57 -LIN
RO lies J7wi, wenn
57-LW
sehr. /, wenn
57-LW
81 ..95
auf 58, wenn 57 —
keine
«2
83.
Tabelle XI Operationen in Betriebsstufe
3300
3800
..
35
36
,34
.78
80... 99
keine
lies XEP
schreib XCEP-räume Akk. lies YEP
schreib YCEP räume Akk.
keine
stelle auf
59, wenn 58
keine
werden, d. h. in einem Zeitabschnitt Δ T, in dem ein gerades Wegstück beschrieben und der programmierte Endpunkt dieses Wegstückes noch nicht ermittelt worden ist, sind im Befehlsschema von F i g. 46 sowie in detaillierter Form in den Tabellen VIl, VIII und IX aufgeführt.
Tabelle VII, die in 10 Spalten zu je 100 Programmschritten unterteilt ist, zeigt die Operationen, die in einem gegebenen Programmschritt ausgeführt ίο werden, gleichgültig, in welcher Betriebsstufe das System arbeitet.
Tabelle VIII zeigt vier verschiedene Reihen von Operationen, die jeweils in den Programmspalten 400 und 900 eines Arbeitsspiels auftreten. Das erste Paar, das mit »400/1« und »900/4« bezeichnet ist, gut für ein normales lineares Arbeitsspiel. Das zweite Paar, das mit »400Bo. und »900 Z?« bezeichnet ist, gilt für ein normales zirkuläres Arbeitsspiel. Das dritte Paar, das mit »400 C« und »900 C« bezeichnet ist, gilt für bestimmte Übergangsspiele von linear auf zirkulär, und das vierte Paar, das mit »400D« und »900 D« bezeichnet ist, gilt für andere Übergangsspiele von linear auf zirkulär.
Tabelle IX enthält die Rechenoperationen, die für die Belriebsstufe 1 des Systems von F i g. 40 charakteristisch sind. In dieser Betriebsstufe führt das System ein normales lineares oder zirkuläres Arbeitsspiel aus.
Nachstehend sollen nunmehr die Operationen beschrieben werden, die das System von F i g. 40 bei Durchführung eines normalen linearen Arbeitsspiels ausführt. Dabei kann angenommen werden, daß der Blockende-Zähler 186' auf 51 geschaltet worden ist und daß somit am Ausgang 51 seines zugehörigen Zuordners 187' ein Signal auftritt. Dieses Signal gelangt über das ODER-Glied 570 des Betriebsstufenwählcrs 69' auf die Steuerlcitung M1' des logischen Zeitbasis-Schaltnetzes 67' von Fig. 4Od. Wie zuvor im Zusammenhang mit der ersten Ausführungsform von Fig. 9 beschrieben, wird durch dieses Signal auf der Stcuerleitung M Γ die erste Gruppe UND-Glieder 175' aufgetastet, so daß die Ausgangssignale des Hundertcrumsetzers 171' des Zeitbasis- und Taktgebeisystems63' (Fig. 40b), die dieser beim Durchlaufen seiner zehn Zahlcnstände 000 ... 1X)O erzeugt, auf den Ausgängen 1000... 1900 der UND-Gliedei 175 erscheinen. Diese Signale werden als Auftastsignale zum Umschalten des Systems auf die Betriebsstufe 1 benutzt.
Die Operationen, die in einem normalen linearer Arbeitsspiel ausgeführt werden, sollen an Hand vor F i g. 58 beschrieben werden, die ein Vektordiagramn zeigt, in dem das letzte alternierend-lineare Arbeits spiel, in welchem kein Überlauf ermittelt wurde, dar gestellt ist. Dieses Arbeitsspiel tritt im Zeitabschnit Δ F^ auf und entspricht dem Befehlsschema voi F i g. 46. Zahlreiche Arbeitsspiele der in F i g. 46 ge zeigten Art hat das System bereits in den vor den bestimmten Zeitabschnitt .1T998 liegenden Abschnit
ten beim Beschreiben einer Geraden ausgeführt. Wii Fig. 46 zeigt, werden die in den Registern llX'XSt und 119' YSC stehenden Mikropositionswerte ii jedem der zehn Zeit-Teilabschnitte, aus denen eil Arbeitsspiel oder Zeitabschnitt Δ T besteht, neu be rechnet, und zwar jeweils in den Programmschrittei 16..26 der betreffenden Zeit-Teilabschnitte bzw
„ . . . Spalten. Wie ferner zu ersehen ist, werden die in dei
in einem normalen linearen Arbeitsspiel ausgeführt aktiven Registern UTXCP und 115TCP stehendei
b. Beschreiben einer Geraden
1) Allgemeines Die Berechnungen, die vom System nach F i g.
171
172
Makropositionswerte in den ersten Programmschritten der Spalte A" 400 bzw. *900 des Arbeitsspiels neu berechnet. Diese Neuberechnung der Makro- und Mikropositionen wird nachstehend noch ausführlich beschrieben. Zunächst sollen die Operationen betrachtet werden, die sich mit der Punktvorverlegung zwecks Ermittlung der Endpunktannäherung befassen. Wie F i g. 46 zeigt, werden diese Operationen in der ersten Spalte des Arbeitsspiels durchgeführt.
2) Zweistufige Punktvorverlegung auf beiden Bewegungsachsen
Die Berechnungen für die Punktvorverlegung wurden in allgemeiner Form im Zusammenhang mit Fig. 43 und 44 besprochen. Die einzelnen Rechenoperationen, die dabei auftreten, zeigt Tabelle IX. Zunächst muß die schnelle Bewegungsachse ermittelt werden. Dies geschieht in der gleichen Weise wie beim ersten Ausführungsbeispiel, nämlich durch Vergleich der beiden Komponenten / und J des zu beschreibenden Wegstückes. In den Pragrammschritten 1033 und 1034 werden also die Komponenten/ und /, die in den aktiven Registern 997 und 1017 stehen, in den Digitalrechner 53' geholt. Die hierzu X-Koordinate des in der Mitte des vorhergehenden Zeitabschnittes Λ T1197 erreichten Punktes darstellt, in den Digitalrechner 53' gebracht. Den hierzu erforderlichen Leseimpuls erzengt die Programmtoranordnung 421' (Bedingung 2). Im nächsten Programmschritt 1037 wird der Inhalt des Antwortregisters 53«', also die soeben eingelesene Makroposition XCP, um eine Stelle nach rechts verschoben, um sie mit der im aktiven Register 95' XCEP stehenden Endpunkt-Koordinate in Übereinstimmung zu bringen. Diese Endpunkt-Koordinate wird dann im nächsten Programmschritt 1038 unter dem Einfluß eines Leseimpulses der Programmtoranordnung 359' (Bedingung 1) in den Digitalrechner 53' gebracht.
Um von der Makroposition XCP die Endpunkt-Koordinate XCEP abzuziehen, erhält der Rechner einen Subtrahierimpuls von der Programmtoranordnung 479' (Bedingung 3). Die Differenz, XCP - XCEP, erscheint im Programmschritt 1039 im Antwortregister 53 a' und wird um eine Stelle nach links verschoben, um sie mit dem im Register 109'Λ/V stehenden Makrobewegungswert JX in Übereinstimmung zu bringen, mit dem die Differenz als nächstes zu vergleichen ist (Programmtoranord-
erforderlichen Leseimpulse erhalten die Register von 25 nung 463', Bedingung 1).
ihren Programmtoranordnungen 400' und 391'. Die In den nächsten beiden Programmschritten 1040
und 1041 wird der im aktiven Register 109'zJ.Y ste-
zur Erzeugung dieser Leseimpulse erforderlichen Verknüpfungen sind in der Programmtoranordnung 400' als Bedingung 5 und in der Programmtoranordnung 391' als Bedingung 6 angedeutet.
Gleichzeitig mit der Übertragung der Komponente / aus dem aktiven Register 101'J erhält der Digitalrecher 53' einen Vergleichsimpuls von seiner Programmtoranordnung 453' (Bedingung 1). Im hende Makrobewegungswert zweimal additiv in den Digitalrechner 53' gelesen, indem das Register 109'. iX nacheinander zwei Leseimpulse von seiner Programmtoranordnung 409' (Bedingungen 12 und 13) erhält. Als Resultat erscheint im Antwortregister 53a XCP - XCEP + 2 AX, mit dem gleichen Vorzeichen wie XCP - XCEP, vorausgesetzt, XCP
nächsten Programmschritt 1035 wird dann der mit 35 - XCEP ist nicht kleiner als 2 AX, oder, anders den Vergleichsausgängen verbundene Flipflop 455' in ausgedrückt, der noch verbleibende Abstand
auf der .Y-Koordinate von der Mitte
den Einstellzustand gebracht und zeigt damit durch eine auf seinem Ausgang FAX auftretende Spannung mit dem Binärpegel »1« an, daß die Bewegung auf der .Y-Achse schneller bt als auf der !'-Achse. Ist dagegen / größer als /, so wird der Flipflop zurückgestellt und gibt auf seinem Ausgang Τ^ΆΎ eine Spannung »1« ab.
Die anschließenden Operationen beinhalten eine der ^-Koordinate von der Mitte des Zeitabschnittes .1 T997 bis zum programmierten Endpunkt XCEPIYCEP des geraden Wegstückes von Fig. 58 ist nicht kleiner als 2 AX. Ist dies nicht der Fall, erfolgt eine Umkehrung der Vorzeichen.
LIm diese Vorzeichenumkehrung zu erfassen, wird das Vorzeichen der im Programmschritt 1039 im Antwortregister 53 a' erscheinenden Differenz
die im Programmschritt 1042 im Antwortregister 53 α erscheint. Hat die Zahl, die im Programmschritt 1047 im Antwortregister 53 a auftritt, ein anderes Vorzeichen als die Zahl, die im Programmschritt 1039 i A 3 ' d
zweistufige Punktvorverlegung auf der schnellen Be- 45 XCP — XCEP noch im selben Programmschritt im
wegungsachse, wie sie im Prinzip im Zusammenhang Vorzcichcn-Flipflop 465' gespeichert, wie zuvor im
mit Fig. 43 beschrieben wurde. Diese Operationen Abschnitt C2d2b in Verbindung mit dem Ausfüh-
stimmen mit den entsprechenden Berechnungen über- rungsbcispiel von F i g. 9 ausführlich beschrieben
ein, die im Zusammenhang mit dem ersten Ausfüh- wurde. Dieses Vorzeichen wird dann mit dem Vor-
rungsbeispiel von Fig. 9 ausführlich an Hand der 50 zeichen der GrößeXCP - XCEP + 2AX verglichen,
Tabellen VI und VI a im Abschnitt D 2 h 4 beschrie- di i 102 i A
ben wurden.
In den Programmschritten 1036... 1046 werden
Berechnungen durchgeführt, um die noch verblei- g
bende A'-Koordinatenstrecke von der Mitte des vor- 55 im Antwortregister 53 a' auftrat und deren Vorhergehenden Arbeitsspiels, das im Zeitabschnitt zeichen in jenem Programmschritt in den Vorzeichen- A T997 auftrat, bis zum programmierten Endpunkt Flip-Flop 465' eingespeichert wurde, so wird im Pro- XCEPIYCEP des in Fig. 58 dargestellten linearen grammschritt 1039 vom Blockende- und Überlauf Wegstückes zu bestimmen. Anschließend wird diese detektor 71' ein Signal SSJ erzeugt (gleiches Vor= restliche X-Koordinatenstrecke mit der Größe 2 Δ X 6o zeichen zweimal). Unter dem Einfluß dieses Signals verglichen, um festzustellen, ob der programmierte gibt die Programmtoranordnung 183' des Betriebs-Endpunkt in der ersten Hälfte des nächsten Arbeite- Stufenwählers 69' dann einen Impuls (Bedingung 1) spiels (Zeitabschnitt AT999) erreicht wird oder nicht. auf den Blockende-Zähler 186', um diesen auf 52 Zu diesem Zweck wird aas Antwortregister 53 a' im weiterzuschalten. Die Weiterschaltung des Plockende-Programmschritt 1036 mit Hilfe eines RäumimDulses 65 Zählers 186' auf 52 zeigt also an, daß ein Überlauf der Programmtoranordnung 351 (Bedingung 10) ge- ermittelt worden ist und daß dieser Überlauf in der räumt. Im selben Programmschritt wird die im akti- ersten Hälfte des nächsten Arbeitsspiels auftreten ven Register 117'JTCP stehende Zahl, die die wird.
173
Wie zuvor im Zusammenhang mit F i g. 43
tert, stellt die soeben beschriebene Prüfung eine zwei Vfakrobewegunger. umfassende Punktvo>-verlegursg auf der X-Achse dar, die zu Beginn eines Arbeitsspiels erfolgt, und zwar von einem Punkt aus, der in der M-tte des vorhergehenden Arbeitspiels durchfahren wurde. Wie leicht zu erkennen ist, entspricht die Vorverlegung zum Zeitpunkt ihrer Durchführung effektiv zu einer 1,5 Makrobewegunson umfassenden Vorverlegung der Position, die auf der A'-Acfce zu diesem Zeitpunkt durchfahren wird. In diesem Sinne also ist die in der ersten Spalte des Befehlsschemas von F i g. 46 benutzte Bezeichnung zu verstehen, nach der die noch verbleibende Strecke bestimmt und mit 1,5 Makrobewegungen verglichen werden soll. Aus dem gleichen Grund ist auch der Vektor 615, der in Fig. 58 die erste Punktvorverlegung bezeichnet, 1,5 Makrobewegungen lang, beginnt also am Punkt Pp, der mit Beginn des im Zeitabschnitt A T^ durchgeführten Arbeitsspiels durchfahren wird.
Zur Durchführung der zweiten Endpunktannäherungs-Prüfung im Zeitabschnitt AT^ wird 0,5 AX zu dem zuvor gebildeten Resultat hinzuaddiert, wodurch sich im Endeffekt die 1,5 Makrobewegungen betragende und durch den Vektor 615 in Fig. 58 dargestellte Punktvorverlegung auf zwei Makrobewegungen AX erhöht, wie der Vektor 617 in F1 g 58 zeigt. Zu diesem Zweck wird der im aktiven Register XWAX stehende Makrobewegungswert in den Programmschritten 1048. . . 1052 fünfmal additiv in den Digitalrechner 53' gelesen, indem die Programmtoranordnung 409' (Bedingung 14) die hierzu erforderlichen Leseimpulse erzeugt. Damit in diesen Operationen auch tatsächlich 0.5AX zu der zuvor im Antwortregister 53a' gebildeten Summe addiert wird, wir'l diese Summe in einem vorhergehenden Programmschritt, und zwa^ 1042, um eine Stelle nach links verschoben, indem die Programmtoranordnung 469' (Bedingung 1) den hierzu erforderlichen Schicbeimpuls abgibt. Das Resultat, das im Programmschritt 1053 im Antwortregister 53 a' erscheint, lautet XCP XCEP \ 2,5 AX, wo XCP den Makropositionswert bezeichnet, der die .Y-Koortlinate des in der Mitte des vorhergehenden Arbeitsspiels (Zeitabschnitt A T11117) durchfahrcnen Punktcs angibt. Wie Fig. 58 zeigt, laßt sich das Resultat auch so ausdrücken: XCPt) XCEP ί 2 A X. Nut Hilfe eines Programmtors wird der Blockcndc-Ziililcr 186' weitergeschaltet, sofern er nach der ersten Endpunktannälicrungs-Prüfung auf .Vl blieb und sofern als Ergebnis der zweiten Endpunktannäherungs-Prüfung eine Umkehrung des Vorzeichens der im Antwortregistcr 53 a' stehenden Zahl erfolgt und diese Umkehrung durch das Signal S.VT der Programmtoranordnung 183' des Bctricbsstufcnwählcrs 69' mitgeteilt wird. Das Programmtor, das den Blockende-Zählcr 186' unter diesen Voraussetzungen weitcrsehnltet, ist in der Programmtoranordnung 183' als Bedingung 3 angedeutet.
In den vorigen Abschnitten wurden die Berech- f·« nungen beseht icbcn, die bei den Endpiinktannühcniiigs-I'iiiiungcn lüi ilen Zeilabschnitt .1 7\m ausgefüllt t weiden müssen. Wie sieh dabei gezeigt hat, verliefen die beiden im Zeitabschnitt ,1 7„,IH durchgeführten Prüfungen negativ, da sowohl der 1,5.I.Y lange ft Vekiot 615 als auch der 2.I.Y lange Vektor 617 kleiner i>:l als der VcUm 614, der die noch verbleibende Strecke bis zur 1 ndpunkt-Koorclinate XCEP 174
darstellt. Der Blökende-Zähler 186' wird also im Programmschritt 1047 nicht auf .S2 weitergeschaltet, und auch nicht im Programm-chmi 1053. Daher sind in Fig. 46 die Blöcke, die die Weiterschaltung des Bl.'.-ckende-Zählers 186' betreffen, auch durchgestrichen.
Bevor die Beschreibung mit den übrigen irr. Zeitabschnitt Al.^ auszuführenden Operationen fortgesetzt wird,*'sollen zunächst kurz die Endpunktannäheru: -Berechnungen betrachtet werden, die hätten durchgeführt werden müssen, wenn die y-Achse die schnellere Bewegungsachse gewesen wäre.
Nimmt man an, daß die Bewegung auf der K-Achse schneller ist als auf der A'-Achse, daß also flas Vektordiagramm von F i g. 44 gilt, so ergibt der in den Programmschritten 1033 und 1034 durchgeführte Vergleich der beiden Wegkomponenten / und / im nächsten Programmschritt 1035, daß / kleiner ist als J. so daß also der Flipflop 455' zurückgestellt und dadurch geräumt wird. Die schnelle Beweeunesachse wird also in diesem Fall durch ein auf dem Ausgan.. FAX des Flipflops 455' auftretendes Binarsignal »1« identifiziert.
In den nächsten drei Programmschritten 1036 . . . 1038 wird die noch bis zum programmierten Endpunkt XCEPiYCEP verbleibende Strecke auf der V-Achsc bestimmt, indem die Endpunkt-Koordinate YCEP von dem zu diesem Zeitpunkt im aktiven Register 115' YCP stehenden Makropositionswert, der beim Beispiel von F i g. 44 YCP0 lautet, subtrahiert wird. Zu diesem Zweck wird der Makropositionswrct YCP11 im Programmschritt 1036 aus dem Register 115' YCP abgerufen, indem das Register einen Leseimpuis von seiner Programmtoranordnung 425' (Bedingung 2) erhält. Sodann wird im Programmschritt 1037 der Makropositionswert YCP'„ durch einen Schicbeimpuls der Programmtoranordnung 411' (Bedingung 19) um eine Stelle nach rechts im Antwortregister 53a' verschoben, um diese Zahl mit der Zahl YCEP in Übereinstimmung zu bringen, die im nächsten Programmschritt von YCP0 subtrahiert werden soll. In diesem nächsten Programmschritt, also 1038, wird die Endpunkt-Koordinate YCEP mit Hilfe eines Leseimpulses der Programmtorannrdnung487' (Bedingung 1) aus dem Register VTYCEP gelesen. Gleichzeitig erhält der Digitalrechner 53' einen Subtrahierimpuls von der Programmtoranordnung 479' (Bedingung 3), so daß YCEP subtraktiv in den Rechner gelesen wird. Die Differenz, die im Programmschritt 1039 im Antwortregister 53 r, erscheint, lautet YCP0-YCEP und wird unter dem Einfluß eines entsprechenden Schiebeimpulses der Programmtoranordnung 463' (Bedingung 1 j um eine Stelle nach links verschoben, um sie auf die Makrobewegungszahl A Y auszurichten, die in den nächsten Programmschritten zur Differenz addiert wird.
Im Programmschritt 1040 wird der im aktiven Register 107'.I)' stehende Makrobewegungswert J Y in den Digitalrechner 53' gelesen, indem die Programmtoranordnung415' (Bedingung 12) einen Leseimpuls auf das Register gibt. Die Summe, die im nächsten Programmschritt im Antwortregister 53 a' erscheint, lautet FCP0-YCEPH1-Iy. Zu diesem Resultat wird in den nächsten Programmschritten 1042 . . . 1046 die Größe 0,5 .1)' addiert, um die Berechnung der 1,5 Makrobewegungen .1 Y umfassen-
1948 49Ü
175
176
den Punktvorverlegung [YCP0 - YCEP + 1,5 Δ Y) EU vollenden. Zu diesem Zweck wird zunächst im Programmschritt 1041 die zuvor gebildete Summe YCP0 - YCEP + AY im Antwortregister 53a' um eine Stelle nach links verschoben, indem die Programmtoranordnung 463' (Bedingung 2) einen entsprechenden Schiebeimpuls erzeugt. Anschließend wird in den Programmschritten 1042 ... 1046 der im Register 107'J Y stehende Makrobewegungswert A Y fünfmal in den Digitalrechner 53' gelesen. Die hierzu erforderlichen Leseimpulse erzeugt die Programmtoranordnung 415' (Bedingung 13). Infolge der Linksverschiebung der Summe YCPn — YCEP + A Y wird durch das fünfmalige additive Einlesen des Makrobewegungswertes Λ Υ an seinen normalen Platz im Rechner effektiv 0,5 Δ Y zu der zuvor genannten Summe addiert. Das im Programmschritt 1047 im Antwortregister 53 a' erscheinende Resultat lautet also YCP0 - YCEP -r 1,5 Λ F. Auf die gleiche Weise wie zuvor in Verbindung mit der Endpunktannäherungs-Prüfung für die AT-Achse beschrieben wurde, wird dann vom Blockende- und Uberlaufdetektor 7Γ ein Signal SST erzeugt, wenn die im Programmschritt 1047 im Antwortregister 53 a' erscheinende Summe ein anderes Vorzeichen hat als die zuvor im Programmschritt 1039 im Antwortregister gespeicherte Summe. Das Signal SST wird dem Betriebsstufenwähler 69' zugeführt, dessen Programmtoranordnung 183' (Bedingung 1) aufgetastet wird, um den Blockende-Zähler 186' auf S 2 zu stellen.
Zur Durchführung der zweiten Endpunktannäherungs-Prüfung im Zeitabschnitt ΛT1, die in Fig. 44 durch den 0,5 Λ Υ langen Vektor 605 angedeutet ist, wird der im Register 107Vi Y stehende Makrobewegungswert Δ Y in den Programmschritten 1048... 3052 fünfmal in den Digitalrechner 53' gelesen, indem das Register naeheinander fünf Leseimpulse von seiner zugehörigen Programmtoranordnung 415' (Bedingung 14) erhält. Wie im Zusammenhang mit den Programmschritten 1042 .. . 1048 erläutert, wird auch hier durch diese Operationen die im Anlwortrcgister 53 a' stehende Summe erhöht, so daß sie im Programmschritt 1053 YCP0 - YCEP + 2AY lautet. Hat diese Summe ein anderes Vorzeichen als die im Programmschritt 1039 im Antwortregister 53 a' gespeicherte Summe, so wird aus den gleichen Gründen, wie sie im Zusammenhang mit der Endpunktannäherungs-Prüfung für die Ä'-Achsc angegeben wurden, der Blockende-Zähler 186' von Sl auf S 2 geschaltet, indem die Programmtoranordnung 183' (Bedingung 3) ein Signal SST erhält.
3) Berechnung von Makrobewegungen A X und A Y
Die beiden anderen Hauptrechengänge, die in einem typischen linearen Arbeitsspiel nach Fig. 46 ausgeführt werden, betreffen die Berechnung der Makrobewegungswerte AX und AY. Wie das Beichisschema von Fig. 46 zeigt, tritt der Rechengang, in weichem der Mnkrnbewegungswert A X berechnet wird, in den lV<;j:ranimsciiiiiUn 435 . . . 462 auf. Der Makiobewegiingbne'i ,Γ·' wild in den Pregrammschritten 935 . . . °< 7. heiedinet. Beide Rcchengänge zur Bildung der ι\ί:ΐι·, ibeweguiigswerie ,!Λ' und IV sind den entsprechenden Rechengängen ähnlich, in denen diese Werte im ersten System gebildet werden. Sie sind dort in allgemeiner Fomi in Fig. 18 sowie ausführlich in den Ti'.hcllcn IV und IVa aufgeführt.
Nach Fig. 18 treten die bei der Multiplikation / · Q auszuführenden Operationen in den Programmschritten 1817 ... 1864 auf. Die Multiplikation IQ zur Berechnung der Makrobewegung AX wird gemäß Fig. 18 in den Programmschritten 1917 ... 1964 ausgeführt. Eine andere Operation, die die Einspeicherung der vier niedrigsten Stellen des Produktes in die Register 111 YR und 113XR betrifft, wird nach Fi g. 46 in den Programmschritten 4tΛ .. 462
ίο und 960 ... 962, nach Fig. 18 dagegen ii.· ι Programmschritten 1869 ... 1871 und 1969 ... 1971 ausgeführt. Diese Operationen sind im Abschnitt »Datenverarbeitungsoperationen, die zur Berechnung korrigierter Makrobewegungen ausgeführt werden« (C2d4) ausführlich beschrieben. Warum diese Berechnungen durchgeführt werden, ist in dem genannten Kapitel angegeben. An dieser Stelle werden nur die Berechnungen selbst sowie die dazu erforderlichen Steuersignale beschrieben.
Zunächst sollen die Berechnungen betrachtet werden, die nach Fig. 46 in Programmspalte X400 ausgeführt werden. Die einzelnen Rechenoperationen, die dazu gehören, sind in Tabelle VIII Spalte 400/4 {XAQ0LIN ΨΧΊ) aufgeführt, da das System ein gerades Wegstück beschreibt und somit auf der Leitung LlN des Bahnform-Indikators 106' ein Auftastsignal auftritt. Da in dem hier zu beschreibenden Arbeitsspiel der programmierte Endpunkt noch nicht erfaßt ist, wird außerdem auch vom NICHT-Glied 577 ein Auftastsignal auf seiner Ausgangsleitung ~FX1 (Fig. 4Od) erzeugt. Wie aus der am Kopf der Spalte 400Λ aufgeführten Verknüpfung zu ersehen ist, sind also diese Signale erforderlich, um die in dieser Spalte aufgeführten Berechnungen durchfüh ren zu können. Der erste Schritt im Rechengang be steht darin, die im aktiven Register 99'/ aufbewahrte Komponente / in den Digitalrechner 53' zu lesen. Dies geschieht im Programmschnti 435 mit Hilfe eines Leseimpulses, den die diesem Register zugeord ncte Programmtoranordnung (Bedingung 3) erzeugt.
Nachdem / als Multiplikand im Rechner steht.
wird als nächstes im Programmschritt. 437 der
Makrobewegungsquotient Q als Multiplikator vom Register 103' Q in den Rechner geholt, und zwar mit
Hilfe eines Leseimpulses der Programmtoranordnung 389' (Bedingung 1). In den folgenden Programm schritten 439 ... 455 wird dann die Multiplikation / · Q vom Rechner durchgeführt. Diese Rechenope ration wird durch einen Multiplizierimpuls ausgelöst, den der Digitalrechner 53' im Programmschritt 437 von dei Programmtoranordnung 393' (Bedingung 1) erhält. Das Produkt / · Q erscheint im Programmschrin 456 im Antwortregister 53a' und wird mit Hilfe eines entsprechenden Schiebeimpulses der Programmtoranordnung 347' (Bedingung 1) um vier Stellen nach links verschoben, um die vier niedrigsten Stellen des Produktes vom Teilregister 53 b' in das Antwi μ !register 53 a' zu bringen. Als nächstes werden im i'rogi'aiViiiisehritt 457 lie von der . orher-
!'o gellenden Multiplikation / ■ Q summenden Reststellen additiv in den Didtalrceruic: 53 uclesen. Hierzu erhall das Register ÜJ'A'/v einen Leseimpuls von der Prognimnuorannrdniing 4(H! .-Γ. Die Summe wird dann wieder aal ihren alten Platz gebracht, indem
<v-, sie mit einem entsprechenden Schiebeimpuls der Proeramrntoranoidnung 501' (Bedingung 1) um vier Stellen nach rechts verschoben wird. Nachdem die letzten vier Stellen des Picduklcs nun wieder außer-
509 507/40
177
178
halb des Antwortregisters 53 α' stehen, werden die übrigen Stellen des Produktes im Programmschritt 459 in das Register 109'^AT gebracht. Zu diesem Zweck erhält das Register einen Scheibimpuls von seiner Programmtoranordnung 401'. Als nächstes werden die Ziffern, die soeben aus dem Antwortregister 53 a' herausgelesen wurden, aber dort noch nicht gelöscht sind, im ProgrammschriU 460 mit einem entsprechenden Impuls (ZR 1) der Programmtoranordnung 397' (Bedingung 1) gelöscht. Nachdem das Antwortregister 53 a' nunmehr geräumt ist, werden die letzten vier Stellen des Produktes / · Q — korrigiert durch die entsprechenden Stellen des vorhergehenden Produktes IQ — vom Teilregister 53 ft' in das Antwortregister 53 a' geschoben. Der hierzu erforderliche Schiebeimpuls kommt von der Programmtoranordnung 347' (Bedingung 3). Im nächsten Programmschritt 462 werden diese Ziffern dann in das Register 113' XR gebracht, indem dieses Register einen Schreibimpuls von seiner Programmtoranordnung 403' erhält. Schließlich wird im selben Programmschritt, jedoch nach der Übertragung der Reststellen XR, das gesamte Akkumulatorregister 53 ab' durch einen Räumimpuls der Programmtoranordnung 351' (Bedingung 6) geräumt.
Es sollen nunmehr die Operationen betrachtet werden, die bei der Berechnung der Makrobewegung AY, die gemäß Fig. 46 in Spalte *900 erfolgt, durchgeführt werden. Diese Operationen sind in Tabelle VIII in Spalte 900/1 aufgeführt, und zwar aus dem gleichen Grund, der im Zusammenhang mit Spalte 400 A dieser Tabelle angeführt wurde. Kurz gesagt, wird im Programmschritt 935 die Komponente / mit einem Leseimpuls der Programmtoranordnung 391' in den Digitalrechner 53' geholt. Im Programmschritt 937 wird dann der Makrobewegungsquotient Q vom Register 103'β in den Rechner gebracht, indem die Programmtoranordnung 389' (Bedingung 2) einen Leseimpuls auf das Register gibt. Unter dem Einfluß eines Multiplizierimpulses der Programmtoranordnung 393' (Bedingung 2) wird dann vom Rechner in den Programmschritten 939 ... 955 die Multiplikation J ■ Q durchgeführt. Im Programmschritt 956 wird das Produkt im Akkumulatorregister 53 aft' mit Hilfe eines entsprechenden Schiebeimpulses der Programmtoranordnung 347' (Bedingung 2) um vier Stellen nach links verschoben, worauf die Reststellen des vorherigen Produktes JQ aus dem Register 111' YR geholt und additiv in den Digitalrechner 53' gelesen werden. Der hierzu erforderliche Leseimpuls kommt von der Programmtoranordnung 399'. Im nächsten Programmschritt 958 wird das korrigierte Produkt mit einem Schiebeimpuls der Programmtoranordnung 501' (Bedingung 2) im Akkumulatorregister S3 ab' um vier Stellen nach rechts verschoben. Die im Antwortregister 53«' zurückbleibenden Stellen des Produktes werden dann im nächsten Programmschritt 959 mit einem Schreibimpuls der Programmtoranordnung 395' in das Register 1Ο7'Λ Υ gebracht. In den nächsten beiden Programmschritten 960 und 961 wird der das Antwortregister 53a' bildende Teil des Akkumulatorregisters S3 ab' mit einem Räumimpuls (ZRl) der Programmtoranordnung 397' (Bedingung 2) geräumt. Die noch im Teilregister 53 b' stehenden Ziffern werden dann mit einem Schiebeimpuls der Programmtoranordnung 347' (Bedingung 4) in das soeben geräumte Antwortregister 53 a' gebracht. Zum Schluß werden die in das Antwortregister 53 a' gebrachten Ziffern von hier in das Register 111' YR eingeschrieben. Den hierzu erforderlichen Schreibimpuls erhält das Register 111' YR von seiner Programmtoranordaung 398'. Anschließend wird das Akkumulatorregister 53aft' mit einem Räumirnpuls der Programmtoranordnung 351' (Bedingung 7) geräumt.
4) Neuberechnung der Mikropositionen XSC und YSC
Der dritte Hauptrechengang, der gemäß F i g. 46 in einem normalen linearen Arbeitsspiel durchgeführt wird, betrifft die Neuberechnung der in den Registern 121'.VSC und 119' YSC stehenden Mikropositionswerte. Diese Berechnungen stimmen nahezu vollständig mit den entsprechenden Berechnungen überein, die vom ersten System nach F i g. 9 ausgeführt und im Zusammenhang mit Tabelle III im Abschnitt C2b besprochen wurden. Der auffälligste Unterschied besteht in der etwas späteren Durchführung dieser Berechnungen. So werden diese Rechenoperationen hier in den Programmschritten 16 ... 26, beim ersten System dagegen in den Programmschritten 00 . .. 10 (vgl. Tabelle III) ausgeführt.
Wie Tabelle VII zeigt, besteht der erste Schritt bei der Neuberechnung der im Register 121' XSC stehenden Mikroposition darin, das Antwortregister 53 a' im Programmschritt 16 durch einen Räumimpuls der Programmtoranordnung 35Γ zu räumen. Im selben Programmschritt, jedoch etwas spJter, wird der im Register 109',4 X stehende Makropositionswert in den Rechner geholt, indem die Programmtoranordnung 409' einen Leseimpuls auf das Register 109'.-1A' gibt (Bedingung 2). Im Programmschritt 17 erscheint der Makrobewegungswert AX im Antwortregister 53 a' und wird um eine Stelle nach rechts verschoben, um ihn durch 10 zu dividieren. Dies geschieht mit einem entsprechenden Schiebeirapuls der Programmtoranordnung 411' (Bedingung 1). Im nächsten Programmschritt 18 wird der derzeitige Mikropositionswert für die X-Achse mit Hilfe eines Leseimpulses der ProgrammtoranorHnung 412' (Bedingung 1) aus dem Register 121' XSC gelesen ur.d in den Digitalrechner 53' gebracht, wo er zu der im Antworiregister 53a, stehenden Größe, nämlich 0,1 AX, addiert wird. Die Summe dieser Addition erscheint im Antwortregister 53 a' im Programmschritt 19. Sie lautet XSC - 0,1 AX und stellt den neuberechneten Mikropositionswert für die X-Achse dar. Im Programmschritt 21 wird dieser Wert dann in das Register 121'.YSC eingeschrieben, und zwar mit einem Schreibimpuls, den das Register von seinem Programmtor 413' erhält.
Die Neuberechnung der im Register 119' YSC stehenden Mikroposition für die y-Achse erfolgt in den nächsten sieben Programmschritten. Als Vorbereitung auf diese Berechnung wird zunächst wieder das Antwortregister 53 a' mit einem Räumimpuls der Programmtoranordnung 351' (Bedingung 4) geräumt. Nach der Räumung des Registers, aber noch im selben Programmschritt 21, wird der im Register 107', I V stehende Makrobewegungswert ) Y mit einem Leseimpuls der Programmtoranordnung 415' (Bedingung 2) in den Digitalrechner 53' gelesen, wo er im Antwortregister 53a' erscheint. Im Programmschritt 22 wird A Y dann unter dem Einfluß eines entsprechenden Schiebeimpulses der Programmtoranordnung 411' (Bedingung 10) durch
179 180
LU dividiert, indem A Y im Antwortregister um eine liehen Leseimpulse sind in der Programmtoranordstelle nach rechts verschoben wird. Im Programm- nung 409' als Bedingungen 6 ... 10 angedeutet, ichritt 23 steht also in diesem Register die Zahl Ebenso sind die zum Teilen des Makrobewegungs- XlAY, zu der dann noch im selben Programm-· weites AX durch 10 erforderlichen Rechtsschiebejchritt der Mikropositionswerl YjC für die Y-Achse 5 impulse aufgeführt, und zwar in der Programmtoraddiert wird. Zu diesem Zweck wird YSC mit Hilfe: anordnung411' als Bedingungen 5 ... 9. Und schließeines Leseimpulses der Programmtoranordnung 417' lieh sind in der Programmanordnung 412' die Lese-Bedingung 1) vom Register 119' YSC in den Rech· impulse (Bedingungen 5 ... 9) angedeutet, mit denen ner gebracht. Der neue Mikropositionswert für die der neu zu berechnende Mikropositionswert vom Re-Y-Achse, YSC + 0,1 AY, wird dann im Programm- iq gister 12Γ XSC in den Digitalrechner S3' gebracht schritt 26 wieder in das Register 119' YSC gebracht, wird.
indem dieses Register einen Schreibimpuls von sei- Zusammengefaßt, wird also der im aktiven Re-
nem Programmtor 419' erhält. Damit ist die Neu·- gister 121'JX aufbewahrte Mikropositionswert für
berechnung der Mikropositionen für die X- und die X-Achse in jedem Arbeitsspiel zehnmal neu be-
y-Achse beendet, so daß das Akkumulatorregister 15 rechnet, und zwar einmal, indem der neuberechnete,
53ab' durch einen Räumimpuls der Programmtor- in Maschinenkoordinaten übertragene Makroposi-
anordnung 351' (Bedingung 5) geräumt werden kann. tionswert XMP für die .Y-Achse in das Register
Der vorstehende Rechengang zur Neuberechnung 121'XSC eingeschrieben wird, und neun weitere
des im Register 121'XSC stehenden Mikropositions.- Male durch einfaches Addieren von jeweils 0,1 AX
wertes wiederholt sich in den Spalten oder Zeit-Teil- 2° zu dem im Register 121'XSC stehenden Wert. In der
abschnitten XlOO, X 200 und X 300 jedes Arbeit',- gleichen Weise erfolgt auch die Neuberechnung des
spiels, wie die entsprechenden Pfeile in Tabelle VII im Register 119' YSC aufbewahrten Mikropositions-
zeigen. Diese Pfeile beginnen in der ersten Spalte wertes für die y'-Achse, außer, daß hier die Neu-
XOOO und verlaufen dann in waagerechter Richtung berec'nnung im letzten der zehn Zeit-Teilabschnitte,
bis zur Spalte X 300. Die bei der Neuberechnung des *s also in Spalte X 900 in Tabelle VII, mit dem neu-
Mikropositionswertes YSC auftretenden Operationen berechneten Makropositionswert der Y-Achse erfolgt,
wiederholen sich genauso, und zwar in den Spalten Der neuberechnete, in die Maschinenkoordinaten
XlOO ... X 800 jedes Arbeitsspiels. Auch dies ist in übertragene Makropositionswert YMP wird also im
Tabelle VII durch entsprechende Pfeile angedeutet, letzten Zeit-Teilabschnitt (Spalte X 900) eines Ar-
die von der ersten Spalte XOOO bis zur Spalte X 800 3° beitsspiels als Mikropositionswert in das Register
laufen. 119' YSC eingeschrieben, worauf dann in den ersten
In der fünften Spalte X400 jedes Arbeitsspiels neun Zeit-Teilabschnitten (Spalte XOOO ... X800)
wird der im Register 121'XSC stehende Mikroposi- des nächsten Arbeitsspiels zu diesem Wert jeweils
tionswert für die X-Achse jedoch anders berechnet 0,1 AY addiert wird.
als in den voraufgegangenen vier Spalten. Allgemein 35 Die Neuberechnung des im Register 115' YCP aufgesagt, wird in Spalte X400 vor der Neuberechnung bewahrten Makropositionswertes YCP und seine des Mikropositionswertes im Register 121'XSC der Übertragung in Maschinenkoordinaten erfolgt ähnim Register 117'XCP stehende Makropositionswert Hch wie beim Makropositionswert für die X-Achse, neu berechnet und in die Maschinenkoordinaten Nach seiner Neuberechnung und Übertragung in die übertragen. Dieser neue Makropositionswert XCP, 4° Maschinenkoordinaten wird dieser Wert dann im der nach seiner Übertragung in die Maschinenkoordi- Programmschritt 915 in das Register 581 eingeschrienaten mit XMP bezeichnet ist, wird dann als neuer ben. Im Programmschritt 921 wird er dann vom Re-Mikropositionswert für die X-Achse in das Register gister 581 in den Digitalrechner 53' gebracht und 121'XSC eingeschrieben. Wie dieser Makropositions- von hier im Programmschritt 926 mit Hilfe eines wert aus dem Register 117'XCP neu berechnet und 45 Schreibimpulses der Programmtoranordnung 419' in in die Maschinenkoordinaten übertragen wird, wird das Register 119' YSC eingeschrieben. Auch diese nachstehend noch ausführlich beschrieben. An dieser Operationen sind in Tabelle VII durch entsprechende Stelle sei lediglich erwähnt, daß im Programmschritt Pfeile angedeutet.
415 der neuberechnete Wert XMP in das Register
579 eingeschrieben wird. Dieser neue Wert XMP 5° 5) Neuberechnung
stellt in Maschinenkoordinaten die Position dar, die der Makropositionen XCP und YCP
auf der X-Achse in den von dieser Spalte (X 400)
dargestellten Zeit-Teilabschnitt erreicht werden soll. Wie zuvor in Verbindung mit F i g. 46 beschrieben Der im Register 579 aufbewahrte Positionswert XWP wurde, erfolgt die Neuberechnung der in den Rewird dann im Programmschritt 146 in den Digital- 55 gistern 117'XCP und 115' YCP stehenden Makrorechner 53' geholt und von hier im Programmschritt posiüonswerte für die X- und die Y-Achse in einem 421 mit Hilfe eines Schreibimpulses des Programm- normalen linearen Arbeitsspiel zeitversetzt, und zwar tors413' in das Register 121'XSC als Mik repositions- in den Zeit-Teil abschnitten X400 und X900. An wert eingeschrieben. Hand von Fig. 46 soll nunmehr die Neuberechnung
In den folgenden fünf von den Spalten X 500 ... 6° des im Register 117'XCP stehenden Makropositions-X900 in Tabelle VII dargestellten Zcit-Teilabschnit- wertes XCP betrachtet werden. Die hierbei auftretenten erfolgt die Neuberechnung des Mikropositions- ten Arbeitsgänge sind in Tabelle VII einzeln aufwertes XSC aus dem Register 121'XSC in der glei- geführt.
chen Weise, wie zuvor in Verbindung mit den ersten Zur Vorbereitung auf diese Neuberechnung wird vier Spalten XOOO... X300 der Tabelle VII be- S5 das Akkumulatorregister 53ab' im Programmschritt schrieben. Die in diesem Zusammenhang zur Über- 403 mit einem Räumimpuls der Programmtoranordtragung des Makropositionswertes AX aus dem Re- nung 351' (Bedingung 1) geräumt. Anschließend wird gister 109',IX in den Digitalrechner 53' erforder- im Programmschritt 404 der im Register 109'JX
181 182
stehende Makrobewegungswert J A' mit einem Lese- Register 121'A'SC stehenden Mikropositionswertes impuls der Programmtoranordnung 409' (Bedin- benutzt wird. Zu diesem Zweck wird, wie zuvor begung 1) in den Digitalrechner S3' geholt. Im nächsten schrieben, die soeben in das Register 579 gebrachte Programmschritt 405 wird der im Register 117' XCP Zahl im Programmschritt 416 in den Digitalrechner stehende Makropositionswert AXP mit einem Lese- 5 S3' geholt, indem das Register von seinem Proimpuls der Programmtoranordnung 42Γ (Bedin- grammtor 579« einen Leseimpuls erhält. Wird dann gung 1) additiv in den Rechner gelesen. Das Resultat, anschließend im Programmschritt 421 der Inhalt des XCP + AX, erscheint im Antwortregister 53a' im Antwortregisters 53a' in das Register 121'AfSC ge-Programmschritt 406 und stellt den Zielpunkt dar, biacht — wie der erste waagerechte Pfeil in der Proderinder Mitte dieses Arbeitsspiels erreicht werden ίο gramnisehrittreihe 021 in Tabelle VII zeigt — so soll. Bei dem Beispiel von Fig. 46, das dem Zeit- wird damit automatisch der Makropositionswert abschnitt A T998 von Fig. 58 entspricht, lautet also XMP als Mikropositionswert in das Register der neue Makropositionswert, der im Programm- 121'A'SC eingeschrieben. Die Übertragung des Maschritt 406 im Antwortregister 53ά erscheint, A7CP1, kropositionswertcs für die V-Achsc in die Maschinen- und wie Fig. 58 zeigt, stellt dieser Wert die 15 koordinaten erfolgt auf ähnliche Weise. Wie die Af-Koordinate dar, die in der Mitte des laufenden zehnte Neuberechnung des im Register 119' YSC ste-Arbeitsspiels oder Zeitabschnittes A T998 angefahren henden Mikropositionswcrlcs zeigt, wird der Korrekwerden soll. Noch im selben Programmschritt wird turwert für die Nullpunktverschiebung in der V-Achsc der neuberechnete Makropositionswert A'CP dann mit einem Leseinipuls des Programmtors 38Γ vom mit einem Schreibimpuls der Programmtoranordnung 20 Korrckturregister 367' in das Antwortregister 53a' 421' in das Register 117'A'CP gebracht. gebracht, während sich in diesem Register noch der
Auch bei der Neuberechnung des im Register neuberechnctc Makropositionswert YCP befindet. Als 115'VCP stehenden Makropositionswertes wird zu- Ergebnis dieser Operation erscheint im Antwortnächst wieder das Akkumulatorregister S3 ab' im register 53 α im Programmschritt 909 der Makro-Programmschritt 903 geräumt. Im nächsten Pro- 25 positionswert YCP in Maschinenkoordinaten und grammschritt 904 wird dann der im Register 107'.1 V wird dann als YMP im Programmschritt 915 in das aufbewahrte Makrobewegungswert A Y in den Rech- Register 581 eingeschrieben. Zu diesem Zweck erhält ner gebracht, indem die Programmtoranordnung 415' das Register einen Schreibimpuls von seinem zugehö-(Bedingung 1) einen Leseimpuls auf das Register rigen Programmtor 581 b. Anschließend wird dann 107'A Y gibt. Anschließend wird der derzeitige Ma- 30 YMP zur zehnten Neuberechnung des Mikroposikropositionswert YCP mit einem Leseimpuis der Pro- tionswertcs YSC aus dem Register 119' YSC benutzt. grammtoranordnung425' (Bedingung 1) vom Register Zu diesem Zweck wird der Makropositionswert YMP 115'VCP in den Digitalrechner 53' geholt. Die vom Register 581 wieder in den Digitalrechner 53' Summe erscheint im Antwortregister 53a' im Pro- gebracht, indem das Register im Programmschritl 921 grammschrilt 906 und stellt den neuberechneten 35 einen Leseimpuls von seinem Programmtor 581a cr-Makropositionswert für die Y-Achse dar. der in hält. Die dadurch im Antwortregister 53a' erschei-Fig. 58 mit YCP, bezeichnet ist. Diese Koordinate nende Zahl wird dann automatisch im Programmwird dann noch im selben ProgrammschriU mit einem schritt v26 r., ι cine-n Schreibimpuls des Programm-Schreibimpuls der Programmtoranordnung 427' in tors 419' in das Register 119'VSC eingeschrieben. das Register 115' YCP eingeschrieben. 4° wie der erste waagerechte Pfeil in der Programm-
Um die neuberechneten, in den Registern 117' XCP schrittreihe 026 in Tabelle VU zeigt.
und 115'VCP stehenden Makropositionswerte aus
den vom Programmierer benutzten Koordinaten in
Maschinenkoordinaten zu übertragen, wird im An- -■ Beschreiben eines Kreisbogenstückes
Schluß an die soeben beschriebenen Neubercchnun- 45
gen ein Arbeitsgang durchgeführt, mit dem die in den Fig. 49 zeigt das allgemeine Bcfehlsschema für
Korrekturregistem 365' und 367' stehenden Korrek- üie Operationen, die von dem zweiten, in Fig. 40
turwerte für die Nullpunktverschicbung zu den Ma- gezeigten System während eines normalen zirkulären
kropositionswerten addiert werden. Dabei soll zu- Arbeitsspiels ausgeführt werden. Dieses Arbeitsspiel
nächst der neue Makropositionswert ACP betrachtet 5° tritt unter ander.m auch im Zeitabschnitt ATstm
werden. Wie Tabelle VlI zeigt, wird der im Korrek- au. der im \ j· irdiagramm von Fig. 60 erscheint,
turregister 365' stehende Korrekturwert im Pm- Die Bedeuiunc ueses Zeitabschnittes liegt darin, daß
grammschritt408 unter dem Einfluß eines Leseimpul- es sich bei ihm um das letzte alternierend zirkuläre
ses des zugehörigen Programmtors 373 in den Digi- Arbeitsspiel handelt, m dem kein Überlauf ermittelt
talrechner 53' gebracht. Dieser Korrekturwert wjrj 55 wurde. Arbeitsspiele dieser Au haben sich beim Be-
dort automatisch zu dem neuen Makropositionswert schreiben ucs Kreisbogens in voraufgegangenen Zeit-
XCP addiert, der trotz seiner Übertragung in das abschnitten 1 7 viele Male wiederholt.
Register 117'AfCP noch im Antwortregistcr 53a' Im Zusammenhang mit Fig. 60 soll ferner erläu-
steht, da dieses Register noch nicht geräumt wurde. ten werden, wie der dort gezeigte Kreisbogen be-
Die im nächsten Programmschritt 409 im Antwort- 60 endet und als Gerade fortgesetzt wird. An dieset
register 53a' erscheinende Zahl stellt also den Ma- Stelle genügt es zunächst, folgendes zu wissen: 1. Das
kropositionswert in Maschinenkoordinaten dar. der Wegstück, das in den dem Arbeitsspiel von Fig. 49
nun XMP heißt. Dieser Makropositionswert wird entsprechenden Zeitabschnitt i T„t9H beschrieben
dann im Programmschritt 415 mit einem Schreib- wird, verläuft zwischen den Punkten Pn und Pr 2. Der
impuls des Programmtors 579 ft in das Register 579 65 Cicamtweg, der in diesem Zeitabschnitt in V-Rich-
eingeschrieben. tung zurückgelegt wird, erscheint in F1 g. 60 als Vek-
Der Makropositionswert XMP wird nur deshalb vor !V0... ?. Kurz vor Erreichen des Punktes P, wird
erzeugt, weil er für die zehnte Neuberechnung des im eine Vektorgröße .1X13 berechnet, die die in der zwei-
183 184
ten Hälfte des Zeitabschnittes Δ T2468 und in der er- Die Operationen, die zur Bildung der Makrobewe-
sten Hälfte des nächsten Zeitabschnittes /IT2499 aus- gungswerte AX und AY ausgeführt werden, sind in
zuführende Makrobewegung in .Y-Richtung darstellt. Tabelle VIII in den Spalten 4008 und 9008 aufge-
Die Berechnungen, die in einem normalen linearen führt. Wie Spalte 4008 zeigt, wird zur Vorbereitung Arbeitsspiel nach Fig. 46 sowie in einem normalen 5 der Multiplikation / · Q der Multiplikand / im Prozirkularen Arbeitsspiel nach Fig. 49 durchgeführt grammschritt 435 vom Register 101'/in den Digitalwerden, stimmen in mehreren Punkten überein. So rechner 53' gelesen. Zu diesem Zweck erhält das werden beispielsweise die für die Endpunktannähe- Register 10Γ/ einen Leseimpuls von seiner Prorungs-Prüfungen (Punktvorverlegungen) erforder- grammtoranordnung 391' (Bedingung 1). Als nächlichen Berechnungen bei einem normalen zirkulären io stes wird der Multiplikator Q, der im Register 103' Q Arbeitsspiel in der gleichen Weise durchgeführt wie steht, im Programmschritt 437 in den Rechner gedie entsprechenden Berechnungen bei einem norma- holt. Der hierzu erforderliche Leseimpuls kommt von len linearen Arbeitsspiel; lediglich die Reihenfolge. der Programmtoranordnung 389' (Bedingung 3) des in der die Wegkomponenten / und / zwecks Bestim- Registers. Wie zu ersehen ist, hängen beide zuvormung der schnellen Bewegungsachse eingelesen wer- 15 genannten Bedingungen von einem Ausgangssignal den, ist anders. Wie in Verbindung mit dem ersten auf der Leitung ZIR des Bahnform-Indikators 106' System im Abschnitt C2d2a dort beschrieben wurde, ab, einem Signal, das nur dann auftritt, wenn das treten die Komponenten / und / beim zirkulären System ein Kreisbogenstück beschreibt. Anschließend Interpolieren in umgekehrter Reihenfolge auf. Es erhält der Digitalrechner 53' die Anweisung, die MuI-wird also zuerst / mit einem Leseimpuls der Pro- 20 liplikation / · Q durchzuführen. Dieser Befehl kommt grammtoranordnung 391 (Bedingung 5) und dann / von der Programmtoranordnung 393' (Bedingung 1). mit einem Leseimpuls der Programmtoranordnung Im Programmschritt 456 erscheint das Produkt im 400 (Bedingung 5) gelesen. Mit Ausnahme der Be- Akkurnulatorregisler 53 ab' und wird dann in den Stimmung der schnellen Bewegungsachse sind also Programmschritten 456 ... 462 in der gleichen Weise die Operationen, die in Tabelle IX auftreten und die 25 und unter dem Einfluß der gleichen Steuerimpulse die in der Anfangsphase eines Arbeitsspiels durch- verarbeitet, wie zuvor im Zusammenhang mit Spalte geführten Eiidpunktannähcrungs-Prüfungen betreffen. 400 A der Tabelle VTTI beschrieben. Als Ergebnis bei zirkularen und linearen Arbeitsspielen gleich. Wie dieser Operationen stehen alle Stellen des Produktes bei Fig. 46, die ein lineares Arbeitsspiel zeigt, in mit Ausnahme der vier niedrigsten im Register dem kein Überlauf ermittelt wurde, sind daher auch 30 109'.1X. Die vier niedrigsten Stellen des Produktes bei Fi g. 49 die Blöcke, die die Weiterschaltung des stehen im Register \\2>'XR.
Blockende-Zählers 186' betreffen, durchgestrichen. Ein ähnlicher Rechengang wird in den in Spalte
Darüber hinaus sind bei linearen und zirkularen 900 ß aufgeführten Programmschritten zur Berech-
Arbeitssp:elen aber auch die zur Durchführung der nung des Makrobewegungswertes AY durchgeführt.
Neuberechnung der Makro- und Mikropositionen er- 35 Der Multiplikand / und der Multiplikator Q werden
forderlichen Arbeitsgänge gleich. Daher gelten die in den Programmschritten 935 und 937 nacheinander
Operationen, die in Tabelle VII aufgeführt sind, so- in den Digitalrechner 53' geholt, und zwar mit Hilfe
wohl für lineares als auch zirkuläres Interpolieren. von Leseimpulsen, die die Register 99'/ und 103' Q
soweit sie dabei die Neuberechnung der Makro- und von ihren Programmtoranordnungen 400' (Bedin-
Mikropositionen betreffen. 40 gang 1) und 389' (Bedingung 4) erhalten. Diese Zah-
Dagegcn unterscheiden sich die in den Spalten len werden dann im Rechner in den Programmschrit- #400 und #900 der Fig.49 beim zirkularen Inter- ten 939 ... 955 miteinander multipliziert. Den hierzu polieren durchgeführten Berechnungen der Makro- erforderlichen Multiplizierimpuls erhält der Rechner bewegungswerte AX und iy notwendigerweise von von der Programmloranordnung 393' (Bedingung 2). den entsprechenden Berechnungen beim linearen 45 Das Resultat erscheint im Programmschritt 956 im Interpolieren, und zwar aus den Gründen, die zuvor Akkumulatorregister 53 ab' des Rechners. In den bei der Betrachtung der Grundlagen linearer und Programmschritten 957 . . . 962 wird dieses Produkt zirkularer Interpolation angeführt wurden. Allerdings aufgeteilt und in die Register 107'.1 Y sowie 111' YR kann man feststellen, daß die Berechnungen, die vom gespeichert, und zwar in der gleichen Weise und unzweiten Ausführungsspiel nach Fig. 40 zur Bildung 50 ter dem Einfluß der gleichen Steuerimpulse, wie zuder Makrobewegungswerte AX und AY ausgeführt vor im Zusammenhang mit Spalte 900/4 der Tabelle werden, bei einem normalen zirkularen Arbeitsspiel VIII bei der Durchführung eines linearen Arbeitsgenau die gleichen sind wie die. die das erste Aus- spiels beschrieben.
führungsbeispiel von F i g. 9 zur Bildung der gleichen Die während eines alternierend-zirkularen Arbeits-Werte ausführt. Man braucht hierzu nur die Opera- 55 spiels durchzuführenden Neuberechnungen der Komtionen zu vergleichen, die gemäß F i g. 49 in den Pro- ponenten / und / durch Subtrahieren der Makrogrammschritten 935 ... 962 und nach Fi g. 31 in den bewegungswerte AX und A Y von diesen Komponen-Programmschritten 1417... 1471 ablaufen. Wie ein ten erfolgen beim zweiten Ausführungsbeispiel zusolcher Vergleich zeigt, sind die zur Bildung des Ma- mindest im Prinzip auf die gleiche Art wie beim krobewegungswertes AY durchzuführenden Berech- 60 ersten (vgl. Fig. 49 und 31). Es gibt einen Unternungen bei beiden Ausführungsbeispielen gleich. schied, doch betrifft dieser nur die zeitliche Steue-Ebenso zeigt ein Vergleich der vom zweiten Ausfüh- rung. So erfolgt die Berechnung der Komponenten / rungsbeispiel in den Programmschritten 435 ... 462 und / beim ersten, in Fi g. 9 gezeigten Ausführungsdurchgeführten Operationen mit den vom ersten Aus- beispiel erst unmittelbar, bevor die neuberechneten führungsbeispiel in den Programmschritten 1917 ... 65 Komponenten / und / für die anschließende Multi-1971 ausgeführten Operationen, daß auch die Be- plikation / · Q bzw. / · Q benötigt werden, wie rechnung des Makrobewegungswertes .1X bei beiden F i g. 31 zeigt. 1X und A Y werden also erst unmittel-Systemen in der gleichen Weise erfolgt. bar vor Durchführung dieser Multiplikationen von
185
den Komponenten / und J abgezogen. Im Gegensatz dazu erfolgt die Neuberechnung der Komponente / beim zweiten Ausführungsbeispicl von F i g. 40, sobald der Makrobewegungswert AX zur Verfügung steht, wie Fig. 49 zeigt. Das heißt, der Makrobewegungswert AX wird von der Komponente/ subtrahiert, sofort nachdem .JA' durch die Multiplikation J ■ Q berechnet worden ist. Obwohl die neuberechnete Komponente / somit schon kurz vor Beginn der zweiten Hälfte des Arbeitsspiels, d. h. gegen Ende der Spalte 400 des Arbeitsspiels, zur Verfügung steht, wird sie erst ein halbes Arbeitsspiel später bei der Multiplikation / · Q benutzt, um den nächsten Makrobewegungswert A Y zu bilden. In ähnlicher Weise wird auch die Komponente J durch Subtrahieren der Makrobewegung A Y von dieser Komponente neu berechnet, sobald der Makrobewegungswert . I Y aus der Multiplikation / · Q gewonnen ist. Aber auch hier wird die neue Komponente J einfach aufgehoben und erst ein halbes Arbeitsspiel später abgerufen und mit Q multipliziert, um den nächsten Makrobewegungswert AX zu bilden.
Der vorstehende Unterschied zwischen den beiden Ausführungsbeispielen des Systems im zeitlichen Auftreten der Neuberechnung der Komponenten / und J hat auf den Betrieb des Systems keinen Einfluß. Er zeigt jedoch, wie viele gleichwertige Möglichkeiten dem Konstrukteur zur Verfugung stehen, ohne den Rahmen der Erfindung zu verlassen.
Die einzelnen Operationen, die bei der Neuberechnung der Komponenten / und J auftreten, sind in Tabelle VIII in den Spalten 400 b und 90Qb aufgeführt. Die Neuberechnung von / erfolgt in der gleichen Weise und aus dem gleichen Grund wie die entsprechende Neuberechnung von / beim ersten Ausführungsbeispiel, die zuvor an Hand der Tabellen VI und VIa in den Abschnitten D2fl und D2f3 beschrieben wurde. Die Komponente/ wird also mit Hilfe eines Leseimpulses der Programmtoranordnung 400' (Bedingung 4) vom Register 99'/ in den Digitalrechner 53' geholt, worauf im nächsten Programmschritt 463 der Makrobewegungswert IA' von / abgezogen wird. Dies geschieht, indem der Makrobewegungswert IA' mit einem Leseimpuls der Programmtoranordnung 409' (Bedingung 11) aus dem Register 109'.1.Y gelesen und gleichzeitig ein Subtrahicrimpuls der Prograninitoranordnung 479' (Bedingung 1) ai'f dt η Rechner gegeben wird. Die Di(TeRT.7 wird schließlich im Prosrammschritt 464 vom Amwortregister 53«' als ncubcrcchnete Komponente / in das Register 99'/ zurückgebracht. Den hierzu erforderlichen Schreibimpuls erhält das Register 99' / von seiner Programmtor3nordnung 355' (Bedingung 1). Abgeschlossen wird der Rechengang mit einem Räumimpuls der Programmtoranordnune 351' (Bedingung 8). durch den das ganze Akkumulatorregister ab' geräumt wird.
Die Neuberechnung der Komponente J erfolgt in ähnlicher Weise. So wird zunächst J im Programmschritt 962 mit einem Leseimpuls der Programmtoranordnung 391' (Bedingung 4) vom Register 101'/ in den Rechner gebracht. Anschließend wird im nächsten Programmschritt 963 der soeben berechnete Makrobewegungswert .) Y von der Komponente J subtrahiert. Zu diesem Zweck wird A Y r.:i einem Leseimpuls der Programmtoranordnung 415' (Bedingung II) vom Register 107' ΛY in den Rechner gebracht, während letzterer gleichzeitig einen Subtra-186
hierimpuls von der Programmtoninordnung 479' (Be dingung 2) erhält. Die Differenz, die die neuberech nete Komponente / darstellt, wird dann im nächster Programmschritt 964 mit einem Schreibinipuls dci Programmloranordnung 357' (Bedingung 1) in da: Register 101 'J eingeschrieben.
d. Übergang von einer Geraden auf einen Kreisbogen
1) Übergang soll in Zone A erfolgen
An Hand von Fig. 58 soll nunmehr beschrieben werden, auf welche Weise beim Ausführungsbeispiel von F ι g. 40 der Übergang von einer Geraden aul ein zirkuläres Wegstück erfolgt. Die Gerade ist als Vektor 621 dargestellt, ihre beiden Wegkomponenten Jf und Y als Vektoren /„„ und JLIS. Es sei angenommen, daß mit der Beschreibung der Geraden im Zeitabschnitt .IT000 begonnen worden ist und daß in diesem Zeitabschnitt sowie in den folgenden Zeitabschnitten bis einschließlich ,1 T99K jeweils ein normales lineares Arbeitsspiel nach Fig. 46 ausgeführt worden ist. Von diesen Arbeitsspielen sind aiis>latzgrunden jedoch nur die letzten in Fi c 58 dargestellt.
Beim Beschreiben der Geraden 621 werden in den Zeitabschnitten 1 Tmtl und IT nacheinander die
r» , „ SHH "■■" ι ι noil IIUHltlllilllUi;! UIt
Punkte Pn, P1, P2, p;[ und Ρχ durchfahren. Der SoIlubergangspunkt zwischen der Geraden 621 und dem anschließenden tangcntialcn Kreisboccn 623 hat die Koordinaten XCEPlYCKP und wird in eier ersten Hälfte des nächsten Zeitabschnittes I 7\,.n, durchfah-
rcn. Dieser Übergang ist daher mit"'* Übergang Z.onc,f<.; bezeichnet. Die Bahn, die im Zeitabschnitt •'/im,,, tatsächlich beschrieben wird, ist weder eine reine Gerade noch ein reines Kreisbo«cnslürk Aus diesem Grund liegt der auf der VcrlünecrunP der Ge-
roden 621 befindliche Punkt P. nicht ganz Ücnau auf
, :..,ίη: dlc !n dem Uhcrgangs/citabschnilt .IT10011 tatsachl.cn beschrieben wird. Doch kommt er dic™cr sehr nahe. D!C Punkte, die anschließend zu Beginn und ,n der Mitte aufeinanderfolgender Arbeitsfreie odd· Zeitabschnitte auf dem Kreisboccn 623 durchfahren werden, sind pIs Punkte P. P. > und P dargestellt. I. .- S !!
Der Datenblock, der den Kreisbogen 623 darstellt, enthalt normalerweise die inversen Vektorkomponcn-
tui Ij ., und JZwi des Anfangsradiusvektors, der vom M.ttelpunktC des Kreisbogens 623 zum Sollübergangspunkt XCEPlYCEP -erläuft. Mit anderen Worten: //n, und J7wi stellen die X- bzw. die K-Koordinatenstrecke vom Übergangspunkt XCEPIYCEP zum
Μι«Φ"ηΚΐ Γ des Kreisbogens 623 dar. Wie noch ausführlich beschrieben wird, erfoltf der Übergang von der Geraden 621 auf den Kreisbogen 623, indem die umschaltung des Systems von linear auf zirkulär tür die y-Achse mh Beginn des Zeitabschnittes u V" !■ die *-a<*m ™t Beginn der zweiten
Hälfte d.cses Zeitabschnittes vorgenommen wird.
.-i soll nunmehr der gesamte Ablauf des Übergangs von der Geraden 621 auf den Kreisbogen 623 betrachtet werden. Dabei sei angenommen, daß die
Arbeitsspiele .iTmp bis (r„B7 ausgeführt sind und rp "!!L Ausführung des nächsten Arbeitsspiels IMg. 46) im Zeitabschnitt .iTw gerade begonnen W!rd. W.e zuvor in Verbindung mit Fig. 46 erläutert
187
188
vuide, zeigt keine der in diesem Arbeitsspiel durchführten Endpunkiannähcrungs-Prüfungen an, daß jerade 621 wird also weiter beschrieben, und zwar ier Endpunkt XCEPIYCEP in der Nähe ist. Die ,n Y-Richtung um die Strecke IK112 vom Punkt P11 mm Punkt F., im Zeitabschnitt . I Y',lils und in X-Richtung um die Strecke 1.Yn vom Punkt P1 /um Punkt P3 in der zweiten Hälfte des Zeilabschnittes . I TW)V und in der ersten Hälfte des nächsten Zeitabschnittes JT999.
Zu Beginn des Arbeitsspiels .179!)!, wird ein weiteres Paar Endpunktannäherungs-Prüfungcn durchgeführt, wie die Vektoren 625, 627, 629 zeigen. Da der programmierte Endpunkt XCEPlYCEP in Zone/! des Zeitabschnittes IZ1000 fällt, wird somit durch die erste Endpunktannähcrungs-Prüfung, bei der die X-Koordinate um 1,5 Makrobewegungen 1X vorverlegt wird, angezeigt, daß der Endpunkt in der Nähe ist. Auf Grund dieser Anzeige wird der Blockende-Zähler 186' von .Sl auf S3 weitergeschaltet. Die Operationen, die im Zeitabschnitt .ΐΓη, auftreten, sind in Fig. 47 aufgeführt. Wie aus dieser Figur zu ersehen ist, ist der in der ersten Spalte des Befehlsschemas stehende Block, der die Weiterschaltung des Blockende-Zählcrs 186' auf S3 betrifft, nicht durchgestrichen. Die Weiterschaltung des Blockcnde-Zählers 186' erfolgt in den Programmschritten 1047 und 1048, wie Tabelle IX zeigt. Die hierzu erforderlichen Programmtorc, die in diesen Programmschritten einen Programmlaktimpuls zum Zähler durchlassen, sind in der Programmtoranordnung 183' des Betriebsstufenwählcrs 69' als Bedingungen 1 und 2 dargestellt.
Aus Gründen, die bei der Beschreibung des zweiten Ausführungsbcispiels des Systems nicht erläutert werden müssen, ist es wünschenswert, die noch in den Zwischenregistern stehenden Größen J und Q zur Berechnung des Makrobewegungswertes IΛ im ersten der von linear auf zirkulär übergehenden Übcrgangsspicle Zone/1, d.h. in dem in Fig. 47 gezeigten Arbeitsspiel, zu benutzen. Die zum anschließenden Kreisbogen 623 gehörenden Größen J und Q werden also zur Berechnung des Makrobewegungswertes .!AT35, d.h. der ANKoordinatcnst recke vom Punkt P., zum Punkt P-, benutzt. Die entsprechende Gleichung, die für einen Kreisbogen gilt, lautet i Jzwi " Qzwi ' λ'.,.. Vom Standpunkt der mit fÄ\n beschriebenen Istbahn aus betrachtet, erhält man jedoch auch das gleiche Resultat, wenn . ΙΛ'.,. aus der Multiplikation / · Q gewonnen wird, also unter Benutzung der zur Geraden 621 gehörenden Größen / und Q. Der Grund hierfür liegt in der Tatsache, daß beide Wegstücke (621 und 623) am Übergangspunkt XCEPIYCEP tangential zueinander verlaufen. Fi g. 58 ist in einem übertrieben großen Maßstab dargestellt. Talsächlich wird also die A'-Koordinatenstrecke vom Punkt P3 zum Punkt P, in beiden Fällen gleich groß ausfallen oder nur einen vernachlässigbaren Fehler enthalten, gleichgültig, ob sie durch Multiplikation der zum Kreisbogen 623 gehörenden Größen / und Q oder durch Multiplikation der zur Geraden 621 gehörenden Größen / und Q berechnet wird.
Wie aus der in Spalte 400 c der Tabelle VIII oben angeführten Verknüpfung zu ersehen ist, muß zur Übertragung der Größen JZvi und Q7vi aus den Zwischenregistern in die aktiven Register sowie zur Durchführung der Multiplikation + /Zu.,·QZui = 1 Af35 unter anderem der Blockende-Zähler 186' auf SS stehen. Zu diesem Zweck sind Vorrichtungen vorgesehen, die den Zähler unter dem Einfluß seiner voraufgegangenen Weiterschaltung auf S3 und S5 schalten. Diese Vorrichtungen sind als Programmtore ausgebildet und in der Programmloranordnung 183' als Bedingungen 6 und 7 angedeutet. Wie Spalte ^300 der Tabelle VlI zeigt, wird der Blockende-Zähler 186' im Pmgrammschritt 00 auf S4 gestellt, sofern er in
ίο diesem Programmschritt bereits auf S3 stand. Eine weitere Weiterschaltung des Zählers erfolgt automatisch im Programmschritt 397 gegen Ende der gleichen Spalte X 300. Vor dem Beginn der nächsten Spalte des Arbeitsspiels sind also die notwendigen
J5 Verknüpfunüsbedhmuncen λ'400 · S 5 · (G02+G03) für Spalte 400C der "Tabelle VIII erfüllt, da das nächste Wegstück ein Kreisbogen ist und somit ein Signa' am Ausgang G 02 - G 03 des Zuordners 221' auftritt. Wie Tabelle VIII, Spalte 400C, zeigt, wer-
ao den die zur Neuberechnung der Makro- und Mikropositioncn erforderlichen Operationen in der gleichen Weise durchgeführt, wie im Zusammenhang mit Tabelle VII und dem in F i g. 46 gezeigten normalen linearen Arbeitsspiel beschrieben wurde.
Es soll nun die Multiplikation ±/z„.; " Qziw betrachtet werden. Zunächst wird die zum Kreisbogen 623 gehörende Komponente J im Programmschritt 435 vom Zwischenregister 47'/ in den Digitalrechner 53' gebracht. Zu diesem Zweck erhält das Zwischcnregister einen Leseimpuls von der Programmtoranordnung 353' (Bedingung 1). Im Programmschritt 437 wird dann der Makrobewcgungsquotienl Q. der gleichfalls zum nächsten Wegstück, also zum Kreisbogen 623. gehört, vom Zwischenregister 47' Q in den Rechner gebracht. Der hierzu erforderliche Leseimpuls kommt von der Programmtoranordnung 385' (Bedingung 1). Anschließend wird die Multiplikation - 3iwt Qiwi vom Rechner in den Programmschritten 439 . . . 455 mit einem Multiplizierimpuls der Programmtoranordnung 393' (Bedingung 1) durchgeführt. Das Produkt wird genauso behandelt wie zuvor im Zusammenhang mit Spalte 400.4 der Tabelle VIII beschrieben, wobei die vier niedrigsten Stellen wieder im Register 113Λ7? und die höheren Stellen im Register 109' I-Y gespeichert werden. Wie ersichtlich, erfolgt die Multiplikation in den Programmschritten 439 . . . 455 nach der Grundgleichung (8a), die zuvor an Hand von Fig. 6d besprochen wurde. Das Produkt der Multiplikation ist der Makrobewegungswert .I JY15, der in Fig. 58 als Vektor .IXn- (EIN) dargestellt ist. W arum 1 A^5 als linearer Vektor angegeben ist, obwohl er das Resultat einer für einen Kreisbogen charakteristischen Berechnung ist, wurde bereits zuvor erläutert. Es ist im wesentlichen dei gleiche Vektor, den man erhalten würde, wenn mar / mit Q multiplizierte und dabei die zum laufender Wegstück, also zur Geraden 621, gehörenden Größen / und Q benutzte. Die Ausführung der Makro bewegung JAT5. erfolgt in der zweiten Hälfte de; Zeitabschnittes 1T999 und in der ersten Hälfte de nächsten Zeitabschnittes 1 Γ,η(Μν, und zwar in zehi im wesentlichen gleich großen Mikrobewegungen.
Als nächste große Berechnung im Zeitabschnil 1 rq9 muß der Makrobewegungswert .1 Y4e für di Y-Achse berechnet werden, der im nächsten Zeil abschnitt . IT1000 benötigt wird, um die erforderlich Bewegung auf der Y-Achse vom Punkt P4 zum Punl P6 auszuführen. Zur Durchführung dieser Berechmm
189
190
wird zunächst die inverse .Y-Achsen-Komponente/, eines Radiusvektors A1 gebildet, die vom Mittelpunkt C des Kreisbogens 623 zum Punkt P, geht. Sobald diese Größe feststeht, wird mit ihr die y-Achsen-Komponente der Sehne D1 in der zuvor in Verbindung mit Fig. 6 beschriebenen Weise berechnet. Die Sehne D1 verbindet die beiden Punkte P4 und PG und wird durch den Radiusvektor R1 halbiert. Die Zahl, die gegenwärtig im Zwischenregister 477 steht, ist die inverse Ar-Achsen-Komponente / des Anfangsradiusvektors, der vom Mittelpunkt C des Kreisbogens 623 zum Übergangspunkt XCEPlYCEP geht. Um also die inverse .Y-Achsen-Komponente I. des Radiusvektors R1 zu erhalten, muß der Anfangsradiusvektor, dessen inverse A'-Komponcnte gegenwärtig im Zwischenregister 477 steht, so weit »vorgerückt« werden, bis er durch den Punkt /*„ geht. Die Berechnungen zu,- Bildung der inversen .Y-Achsen-Komponente /. des vorgerückten Radiusvektors sind in Fig. 47 mit »Verhältnisberechnungen für /« bezeichnet und werden vom System im neunten Zeit-Teilabschnitt (Spalte 800) des Arbeitsspiels von Fi g. 47 in ßetriebsstufe 2 durchgeführt.
Zur Umschaltung des Systems in die Betriebsstufe 2 wird der Blockende-Zähler 186' im Programmschritt 500 auf 56 gestellt (vgl. Tabelle VII. Spalte λ" 500). Das zu dieser Weiterschaltung des Zählers erforderliche Programmtor ist in der Programmtoranordnung 183' durch die Bedingung 10 angedeutet. Infolge des vom Blockende-Zählcrs 186' an seinem Ausgang 56 abgegebenen Signals erhält die Steuerleitung Ml des logischen Zeitbasis-Schaltnetzes 67' ein Auftastsignal vom ODER-Glied 571 des Betriebsstufenwählers 69', wodurch das System in die Betriebsstufe 2 umgeschaltet wird. Im neunten Zeit-Teilabschnitt des Zeitabschnittes I ΓΒΙΙ9 werden also die Operationen ausgeführt, die in Spalte 2800 der Tabelle X aufgeführt sind.
Die »Verhältnisberechnungen für /« werden in den Programmschritten 2870 ... 2876 durchgeführt. Die crsie Rechenoperation in diesem Rechengang wird in den Programmschritten 2870 . . . 2873 ausgeführt und besteht in der Berechnung von ΧΛ — XCP^ -XCEP. Xx ist die A'-Koordinatenstrecke vom programmierten Endpunkt XCEPIYCEP zum Punkt P3, die in Fi g. 58 als Vektor XCP 3 XCEP = XA dargestellt ist. Im Programmschritt 2870 wird das Akkumulatorregister 53 a// mit einem Räumimpuls der Programmtoranordnung 351' (Bedingung 12) geräumt und der im Register 117'ATP stehende Makroposition swert XCPn mit einem Lescimpub der Programmtoranordnung 42Γ (Bedingung 3) in den Digitalrechner 53' gebracht. Um die im Register 95'ZCTTP stehende Endpunkt-Koordinate XCEP vom Makropositionswert XCPx zu subtrahieren, wird XCEP im Programmschritt 2871 subtraktiv in den Rechner gelesen (Programmtoranordnung 359'. Bedingung 2: Programmtoranordnung 479', Bedingung 5). Sodann muß Xn~XA\ AX berechnet werden. X/; ist die A'-Koordinatenstrecke vom programmierten Endpunkt XCEPiYCEP zum Punkt /\ und ist in F i g. 58 als dementsprechend bezeichneter Vektor dargestellt. Zur Berechnung von Xn wird der im Register 109'.IA' stehende Makrobewegungswert .1A'.,- im Programmschritt 2872 mit einem Leseimpuls der Programmanordnung 409' (Bedingung 15) additiv in den Digitalrechner 53' gelesen. Im nächsten Programmschritt 2873 wird dann das Resultat.
XCP3- XCEP + AX35 = .
mit einem Schreibimpuls der Programmtoranordnung 583 (Bedingung 2) in das Zusatzregister 582 geschrieben.
Zum Abschluß der »Verhältnisberechnungen für /« wird 7, = Izwi — Xb berechnet. Wie Fig. 58 zeigt, ergibt die Subtraktion des Vektors Xn vom Vektor /ZlW den Vektor / τ, der die gewünschte A'-Kcordinatenstrecke vom Punkt P. zum Kreismittelpunkt C darstellt. Anders ausgedrückt, /, ist die inverse X-Komponentc des gewünschten Radiusvektors R1.
Um /T = Izn-i~ Xb zu berechnen, wird zunächst das AkkumuiatorregiSter Si ab' geräumt und dann der Inhalt des Zwischenregisters 477 in den Digitalrechner 53' gebracht. Beides geschieht im Programmschritt 2874 mit einem RäumimpuJs der Programmtoranordnung 35Γ (Bedingung 14) und einem Leseimpuls der l'rogrammtoranordnung 349' (Bedingung 2). Nachdem der Minuend nunmehr im Register steht. wird als nächstes der im Zusalzregister 582 stehende Subtrahend subtraktiv in den Rechner gelesen (Programmtoranordnung 585, Bedingung 2; Programmtoranordnung 479', Bedingung 7). Das Resultat, /, =- lZwi Xu, erscheint im Programmschritt 2876 im Antwortregister 53a' und wird noch im selben Programmschritt mit einem Schreibimpuls der Programmtoranordnung 355' (Bedingung 2) in das aktive Register 997 geschrieben. Anschließend, aber noch im selben Programmschritt, werden die Verhältnisberechnungen abgeschlossen, indem das Antwortregister 53«' mit einem Räumimpuls der Programmtoranordnung 351' (Bedingung 16) geräumt wird. Die noch verbleibenden Operationen, die durch die in Spalte 2800 der Tabelle X hineinführenden Pfeile angedeutet sind, hängen alle vom Auftreten eines Signals am Ausgang 57 des Zuordners 187' ab, werden also nicht in dem Arbeitsspiel nach Fi g. 47 ausgeführt.
Die Komponente /,, die aus den vorstehend beschriebenen Verhältnisberechnungen ermittelt und im aktiven Register 997 gespeichert wurde, wird im letzten Zeit-Teilabschnitt des Arbeitsspiels zur Berechnung des Makrobewegungswertes . 1 Y4n benutzt.
Die Multiplikation :_ /. ■ QZk, erfolgt in den Programmschritten 935 ... 962. Die einzelnen Operationen, die bei diesem Rechengang auftreten, sind in Spalte 9000 der Tabelle VIII aufgeführt. Ein Vergleich der Spalte 9000 mit Spalte 9008, die ein normales zirkuläres Arbeitsspiel betrifft, zeigt, daß die zur Multiplikation : /. · Qz11,,- gehörenden Operationen genau gleich sind, mit der einzigen Einschränkung, daß der Multiplikator aus dem Zwischenregislcr 47'O (Programmtoranordnung 385', Bedingung 2) stammt und daß / unter dem Einfluß der Bedingung 2 der Programmtoranordnung 400' gelesen wird. Alle übrigen Operationen, die in den entsprechenden Pmgrammsciirittcn in Spalte 9000 auftreten, stimmen mit den zuvor im Zusammenhang mit Spalte 900S beschriebenen Operationen überein und brauchen daher hier nicht nochmals beschrieben zu werden. Erwähnt sei lediglich, daß die vier niedrigsten Stellen des Produktes zur anschließenden Weiterverwendung wieder im Register WYYR und die höheren Stellen, die den gewünschten Makrobewegungswert .IV4n darstellen, im Register IQT AY gespeichert werden.
Mit der vorstehend beschriebenen Berechnung von
191
192
Λ Y4G sind die im Zeitabschnitt Λ T999 durchzuführen- kannt, ist der Makrobewegungswert Λ Y4C das Ergebnis der Berechnung, die gerade in Spalte X 900 des vorhergehenden Arbeitsspiels im Zeitabschnitt Λ T993 durchgeführt wurde. Wie F i g. 58 zeigt, ist der 5 Makrobewegungswert ,1 Y46 positiv, die zuvor berechnete Differenz YA dagegen negativ. Wird also YA zu Δ Y40 addiert, so wird YA tatsächlich von Δ Y46 subträniert. Der neue Rest ist in Fig. 58 als Vektor YB dargestellt. Diese Differenz stellt die Y-Koor. ^aienio strecke vom programmierten Übergangspunk· -".EPI P
G 999
den Operationen beendet. Das nächste Arbeitsspiel, das im Zeitabschnitt. j T100n auftritt, zeigt das Befehlsschema von F i g. 48. Wie beim vorhergehenden Arbeitsspiel werden auch hier die Berechnungen für die Makro- und Mikropositionen in der gleichen Weise wie bei einem normalen Arbeitsspiel durchgeführt. Die dabei auftretenden Arbeitsgänge wurden bereits an Hand von Tabelle VII erläutert. Charakteristisch für das Arbeitsspiel nach Fig. 48 ist die Durchführung der Verhältnisberechnungen für J und die anschließende Umspeicherung der in den Zwischenregistern 47'Q und ATG stehenden Größen. Diese zuletzt genannten Umspeicherungen hängen vom Auftreten eines Signals am Ausgang S7 des Blockende-Zählers 186' ab. Daher wird der Zähler im ersten Programmschritt 000 des Arbeitsspiels nach Fig. 48 durch einen Impuls der Programmtoranordnung 183' (Bedingung 11) auf Sl gestellt, sofcrn er im vorhergehenden Arbeitsspiel auf S6 geschaltet wurde.
Die Verhältnisberechnungeii für J werden aus den gleichen Gründen durchgeführt, die zuvor in Verbindung mit den Verhältnisberechnungen für / angeführt wurden. Bekanntlich wurde als letzte Wegkomponente X die Makrobewegung AX3i berechnet, die die AT-Koordinalcnstrecke vom Punkt P, zum Punkt P5 auf der Geraden 621 darstellt. Die Verhältnisberechnungen für J dienen dem Zweck, die -Y-Komponente einer Sehne D., zu berechnen, die die Punkte P5 und P7 verbindet und dem Anfang des Kreisbogens 621 gegenüberliegt. Wie aus den grundsätzlichen Betrachtungen der zirkulären Interpolation im Zusammenhang mil F i g. 6 bekannt, muß zur Berechnung des Makrobewegungswertes /IAf57 zunächst die inverse Y-Achsen-Komponenie J des Radiusvektors R2 bestimmt werden, der vom Mittelpunkt C des Kreisbogens zu dem in der Mitte zwischen den Punkten P5 und P7 liegenden Punkt Pn auf dem Bogen führt. Der Anfangsradiusvektor, der vom Mittelpunkt Γ zum Übergangspunkt XCEPiYCEP geht, muß also um mehr eine halbe Makrobewegung vorgerückt werden, worauf die Y-Achsen-Komponente J, dieses vorgerückten Radiusvektors R2 berechnet werden muß.
Wie die Verhältnisberechnungen für /, so setzen sich auch die Verhältnisberechnungen für J aus drei Rechenoperationen zusammen. Die erste davon betrifft die Subtraktion YCPA — YCEP. Wie Fig. 58 zeigt, ist das Resultat dieser Subtraktion Y4, die ΑΓ-Koordinatenstrecke vom programmierten Übergangspunkt XCEP YCEP zum Punkt P4. Die zur Durchführung dieser Subtraktion erforderlichen Schritte sind in Spalte 2300 der Tabelle X aufgeführt. So wird im Programmschritt 2370 zunächst wiedcr das Akkumulatorregister 53oft' durch die Programmtoranordnung 35Γ (Bedingung 11) geräumt und dann der im aktiven Register 115' YCP stehende Makropositionswert YCP^ durch die Programmtoranordnung 425' (Bedingung 3) in den Digitalrechner 53' gebracht. Anschließend wird im Programmschritt 2371 die Endpunkt-Koordinate YCEP vom Makropositionswert YCI\ subtrahiert, indem sie subtraktiv in den Rechner gelesen wird (Programmtoranordnung 487', Bedingung 2; Programmtoranordnung 479', Bedingung 4).
Die zweite Rechenoperation in den Verhältnisberechnungen für / betrifft die Addition des Makrobewegungswertes IY40 zur Differenz YA. Wie bepg
YCEP zum Punkt P6 dar.
Die bei dieser Berechnung auftretenden Gperationen werden in den Programmschritten 2372... 2373 ausgeführt. In diesen Schritten wird der im aktiven Register 107' ΛY stehende Makrobewegungswert Λ Y40 unter dem Einfluß der Programmtoranordniing 415' (Bedingung 15) in den Digitalrechner 53' gebracht. Das Resultat, YB = AY46 + YA, erscheint im nächsten Programmschritt 2373 im Antwortregi-
2q ster 53a' und wird noch im selben Programmschritt zur vorübergehenden Speicherung in das Zusatzregister 582 gebracht (Programmtoranordnung 583, Bedingung 1).
Zieht man nun von der negativen inversen Y-Komponente JZvi des Radiusvektors die positive Komponente Yn ab, so erhält man, wie aus Fig. 58 leicht zu erkennen ist, die gewünschte inverse Y-Komponente J. des vorgerückten Radiusvektors Ra, die die Y-Koordinatenstrecke vom Punkt P6 zum Mittelpunkt C darstellt. Dies ist die dritte Rechenoperation zur Berechnung von J. Ihre Ausführung erfolgt in den Programmschritten 2374 . .. 2375. Nachdem zunächst das Akkumulatorregister 53 ab' mit einem Raumimpuls der Programmtoranordnung 351' (Bedingung 13) geräumt worden ist, wird die im Z.wischenregistcr 47' J stehende Y-Komponente VZwj additiv in den Rechner gelesen (Programmtoranordnung 353', Bedingung 2). Um die zur Zeit im Zusatzregister 582 stehende Komponente Y0 von der im Rechner stehenden Y-Komponente l7vi abzuziehen, wird Yß im Programmschritt 2375 subtraktiv in den Digitalrechner 53' gelesen. Die hierzu erforderlichen Auftast- und Steuerimpulse kommen von der Programmtoranordnung 585 (Bedingung 1) und der Programmtoranordnung 479' (Bedingung 6). Das Resultat, J t - JZwi Y11, das im Programmschritt
2376 im Antwortregistcr 53 α erscheint, wird noch im selben Schritt in das aktive Register 10Γ/ gebracht (Programmtoranordnung 357', Bedingung 2).
Beendet wird die Berechnung mit der Räumung des Antwortregisters 53«' durch die Programmtoranordmine 351'(Bedingung 15).
Die soeben berechnete Y-Komponentc J, bleibt im aktiven Register 10Γ7 bis zum nächsten Zeit-Teilabschnitt (Spalte X400) des Zeitabschnittes A T1000 und wird dann als Multiplikand für die Multiplikation J t ■ Q benutzt. Bevor diese Berechnung jedoch vorgenommen wird, werden zunächst die zum nächsten Wegstück, also zum Kreisbogen 623, gehörenden Größen Q und G von den Zwischenregistern in die aktiven Register umgespeichert. Diese Umspeicherung erfolgt in den Programmschritten
2377 .. . 2379 und steht in Spalte 2300 der Tabelle X. Wie Tabelle X zeigt, muß zur Umspeicherung von den Zwischenregistern in die aktiven Register der Blockende-Zähler 186' auf Sl stehen. Diese Bedingung wurde erfüllt, indem der Blockende-Zähler 186' zu Beginn des im Zeitabschnitt
509 507/40
193
194
AT1000 auftretenden Arbeitsspiels auf 57 geschaltet wurde. Der neue Makrobewegungsquotient Q wird im Programmschritt 2377 vom Zwischenregister 47'g in den Digitalrechner S3' gebracht (Programmtoranordnung 385', Bedingung 3) und im nächsten Programmschritt 2378 vom Antwortregister 53a' in das aktive Register 103' Q umgespeichert (Programmtoranordnung 387', Bedingung 1). Im selben Programmschritt wird die zum Kreisbogen gehörende Zahl G vom Zwischenregister 47'G in den Rechner gebracht (Prcgrammtoranordnung 251', Bedingung 1) und von hier dann im Programmschritt 2379 in das aktive Register 105'G umgespeichert (Programmtoranordnung 409', Bedingung 1).
Nach der Umspeicherung von Q und G von den Zwischenregistern in die aktiven Register wird der Blockende-Zähler 186' erneut weitergeschaltet, diesmal von 57 auf 58 (Programmtoranordnung 183', Bedingung 13). Durch diese Weiterschaltung wird die Steuerleitung M3 der zum logischen Zeitbasis-Schaltnetz 67' gehörenden UND-Glieder 179' erregt, wodurch das System in die Betriebsstufe 3 geschaltet wird. Auf den Betrieb des Systems wirkt sich diese Umschaltung jedoch erst im vorletzten Zeit-Teilabschnitt des Arbeitsspiels aus, da keine der vor as diesem Teilabschnitt in Fig. 48 auftretenden Operationen so programmiert ist, daß sie nur dann ausgeführt wird, wenn das System in Betriebsstufe 3 arbeitet. Im vorletzten Zeit-Teilabschnitt (Spalte 3800) jedoch werden die zum nächsten Wegstück (Kreisbogen 623) gehörenden programmierten Endpunkt-Koordinaten XEP und YEP als direkte Folge der Umschaltung des Systems in die Betriebsstufe 3 umgespeichert.
Es soll nun die Berechnung dea Makrobewegungsweries 1^57 betrachtet werden. Diese Berechnung wird nach der Gleichung ΛΧ&1+ /„ Q ausgeführt, wo Q der neue Makrobewegungsquotient ist, der gerade in das aktive Register 103' Q gebracht wurde. Die,Berechnung von 1-X57 ist in allgemeiner Form in Spalte X400 des Befehlsschemas von Fig. 48 aufgeführt. Welche Operationen bei dieser Berechnung im einzelnen ausgeführt werden, zeigt Spalte 400 ß der Tabelle VIII.
Zu beachten ist, daß ±/. Q nichts anderes als die Standardgleichung für zirkuläres Interpolieren darstellt, die zuvor im Zusammenhang mit F i g. 6 als Gleichung (18) aufgestellt wurde. J t ist also nichts anderes als die benötigte F-Komponente 1 eines Radiusvektors, und sie unterscheidet sich von der beispielsweise in Spalte ^400 der von Fig. 49 angegebenen Komponente/ lediglich durch die Art, wie sie berechnet wurde. Die Rechenoperationen, die in den Programmschritten 435 .. . 464 des Arbeitsspiels A T1000 von F i g. 48 ausgeführt werden, laufen also genau in der gleichen Reihenfolge ab wie in Spalte X400 eines normalen zirkulären Arbeitsspiels nach F i g. 49 und wie im Zusammenhang mit dieser Figur beschrieben wurde. Dieser Rechengang braucht daher hier nicht noch einmal erläutert zu werden, da sein Ablauf sowie die zur Durchführung der Operationen erforderlichen Auftast- und Steuersignale ganz genau die gleichen wie in Spalte X400 der Fig. 49 sind. Die erste vollständig zirkuläre Makrobewegung, nämlich ^AT57, wird also in Spalte X400 des Arbeitsspiels Δ T1M0 berechnet und dann in der zweiten Hälfte dieses Arbeitsspiels sowie in der ersten Hälfte des nächsten Arbeitsspiels unter periodischer Neuberechnung von Mikroposülonen ausgeführt, wie zuvor im Zusammenhang mit einem normalen zirkularen Arbeitsspiel beschrieben.
Wie zuvor erwähnt, erfolgt die Umspeicherung der Endpunkt-Koordinaten XEP und YEP in den Prograiumschritten 3835 ... 3837 der Spalte 3800 des Arbeitsspiels JT1000 von Fig. 48. Die dabei auftretenden Operationen sind ir. Tabelle XI im einzelnen aufgeführt. Zunächst wird die Endpunkt-Koordinate XEP im Programmschritt 3835 vom Zwischenregister 4TX in den Digitalrechner 53' gebracht, indem das Register einen Leseimpuls von seiner Programmtoranordnung 359' (Bedingung 2) erhält. Anschließend wird die Endpunkt-Koordinate im Programmschritt 3836 vom Antwoitregister53a' in das aktive Register 95'XCEP umgespeichert. Der hierzu erforderliche Schreibimpuls kommt von der Programmtoranordnung 375'(Bedingung 2). Danach wird das Akkumulatorregister S3 ab' durch die Programmtoranordnung 351' (Bedingung 26) geräumt und anschließend die Endpankt-Koordinate YEP vom Zwischenregister 47' Y in den Digitalrechner 53' gebracht (Programmtoranordnung 377', Bedingung 2). Die Endpunkt-Ko-Ordinate erscheint im Antwortregister 53a' im nächsten Programmschritt 3837 und wird in diesem Programmschritt in das aktive Register 97' YCEP gebracht (Programmtoranordnung 383', Bedingung 2). Im selben Programmschritt wird das ganze Akkumulatorregister 53 afc' durch die Programmtoranordnung 351' (Bedingung 28) geräumt.
Wie F i g. 58 zeigt, muß als nächste Makrobewegung A Y^ berechnet werden, die y-Koordinatenstrecke vom Punkt P6 zum Punkt P8. Da die Punkte P6 und P8 im Vektordiagramm von Fig. 58 zufälligerweise etwa die gleichen y-Koordinaten haben, läßt sich die Makrobewegung dort nicht darstellen. Trotzdem muß sie vor Beginn des Arbeitsspiels A T1001 bestimmt oder berechnet werden, gleichgültig, wie groß sie ist. So erfolgt denn auch die Berechnung von Δ K68 in Spalte A^üü des Arbeitsspiels IT1000 von Fig. 48, und zwar nach der früher im Zusammenhang mit Fig. 6 beschriebenen Gleichung (19), die auch in F i g. 48 steht. Der für die Multiplikation ±IQ in Spalte * 900 benutzte Multiplikand/ wurde berechnet, indem der Makrobewegungswert AX51 vom vorhergehenden Wert der Komponente/ subtrahiert wurde. Dieser vorhergehende Wert stand im Register 99'/ und stellte die ^-Koordinatenstrecke P5 zum Mittelpunkt C des Kreisbogens 623 dar. Die neuberechnete Komponente /, die für die Multiplikation ±IQ in Spalte ,Y900 des Arbeitsspiels von Fig. 48 benutzt wird, stellt also die AT-Koordinatenstrecke vom Punkt P7 zum Mittelpunkt C dar, d. h. die inverse X-Komponente / des Radiusvektors, der vom Mittelpunkt C des Kreisbogens 623 zum Punkt P7 des Bogens geht. Die Multiplikation ±1 ■ Q wird in den Programmschritten 935 ... 962 durchgeführt, und zwar genauso wie bei einem normalen zirkulären Arbeitsspiel und wie im Zusammenhang mit Fig. 49 beschrieben. Nach Durchführung der Berechnung wird das Produkt in zwei Teile geteilt. Seine vier niedrigsten Stellen werden wieder in das Register 111/YR gebracht und seine höheren Stellen als Makrobewegungswert A YM im Register 107',j Y gespeichert.
Nach der Berechnung des Makrobewegungswertes AYts wird dieser sofort zur Neuberechnung der im aktiven Register 101'/ stehenden Komponente/ be-
195 196
nutzt. Zu diesem Zweck wird der Makrobewegungs- erfolgen soll, zeigt F i g. 59. Die hierbei auftretenden wert Δ ye8 von / subtrahiert. Die Neuberechnung von Operationen entsprechen weitgehend den Operatio-/ erfolgt in den Programmschritten 961 und 964, und nen bei einem Übergang in Zone A (Fig. 58). Um zwar in der gleichen Weise und unter dem Einfluß diese Ähnlichkeit hervorzuheben, sind beide Vektorder gleichen Steuersignale, wie zuvor in Verbindung 5 diagramme von Fig. 58 und 59 im gleichen Maßstab mit der entsprechenden Berechnung in Fig. 49 be- gezeichnet und auch in sonstiger Hinsicht weitgehend schrieben wurde. Die neuberechnete Komponente/, identisch. So sind z. B. in beiden Fig. 58 und 59 die die die F-Koordinatenstrecke vom Punkt P8 zum beim Beschreiben der Geraden 621 zunächst auftre-Mittelpunkt C des Kreisbogens 623 darstellt, wird tenden Arbeitsspiele Δ T000 ... J T997 aus Platzgründann im nächsten Arbeitsspiel ΔΤ100ν einem nor- ίο den zusammengefaßt. Das erste, in beiden Figuren malen zirkulären Arbeitsspiel nach F i g. 49, zur Be- vollständig dargestellte Arbeitsspiel ist das Arbeitsrechnung der Makrobewegung Δ X79 benutzt. spiel, das im Zeitabschnitt Δ T999 durchgeführt wird.
Nachdem alle zum Kreisbogen 623 gehörenden Beim Beschreiben des letzten Teils der Geraden 621
Daten von den Zwischenregistern in die aktiven Re- werden nacheinander die Punkte P0, P1, P2, P3 und P4
gister umgespei^Hert sind, wird der Lochstreifenleser 15 in den Zeitabschnitten JJ998 und ^T999 durchfahren.
41' jetzt eingeschaltet, um den nächsten Datenblock, Ein weiterer Punkt P5 wird im Zeitabschnitt Δ T1000
der die numerischen Daten für das im Anschluß an durchfahren, bevor in der zweiten Hälfte dieses Zeit-
den Kreisbogen 623 auftretende Wegstück darstellt, abschnittes der programmierte Endpunkt XCEPI
vom Lochstreifen in die Zwischenregister zu lesen. YCEP erreicht wird.
Zur Einschaltung des Lochstreifenlesers 41' ist erfor- 20 Das Arbeitsspiel, das im Zeitabschnitt Δ T996 ausderlich, daß der Blockende-Zähler 186' auf 59 steht geführt wird, ist wieder ein normales lineares Arund daß außerdem das Zeitbasis- und Taktgeber- beitsspiel. Es wurde bereits zuvor in Verbindungg mit system den Programmtakt 991 erzeugt. Um die Ein- F i g. 46 ausführlich beschrieben und braucht daher schaltung des Lochstreifenlesers 41' vorzubereiten, hier nicht noch einmal erläutert zu werden. Keine der wird also zunächst der Blockende-Zähler 186' im 45 in diesem Arbeitsspiel vom Punkt P0 aus vorgenom-Programmschritt 3879 durch einen Impuls der Pro- menen Koordinatenvorverlegungen zwecks Ermittgrammtoranordnung 183'(Bedingung 16) von 58 auf lung der Endpunktannäherung ergibt ein positives 59 gestellt. Anschließend wird dann im Zeit Teil- Resultat, da der programmierte Endpunkt XCEPI abschnitt X 900, und zwar im Programmschritt 991, YCEP noch mehr als zwei Makrobewegungen vom ein Einschaltsignal auf den Einschalt-Flipflop 257' 30 Punkt P0 entfernt ist. Im nächsten Zeitabschnitt des Streifenlesers gegeben. Dieses Signal kommt vom J T999 jedoch wird die Annäherung des Endpunktes P/ogrammtor 269', dessen Eingänge mit den Aus- XCEP YCEP gemeldet, und zwar durch die zweite gangen 900, 90 und 1 des Zeitbasis- und Taktgeber- Endpunktannäherungs-Prüfung. Dies erfordert eine systems 63' (Fig. 40b) verbunden sind. andere Reaktion vom System als bei dem in Fig. 58
Das im Zeitabschnitt J T1001 auftretende Arbeits- 35 dargestellten Fall, bei dem die Annäherung des Endspiel ist ein normales zirkuläres Arbeitsspiel, wie es punktes XCEP YCEP durch die erste, im Zeit-F i g. 49 zeigt. Daher muß das System in der Schluß- abschnitt IT999 vorgenommene Endpunktannähephase des Zeitabschnittes Λ T1009 wieder in die Be- rungs-Priifung ermittelt wurde. Das Arbeitsspiel, das triebsstufe 1 geschaltet werden. Der Blockende-Zäh- unter den in Fig. 59 dargestellten Umständen im ler 186' wird also in den Programmschritten 40 Zeitabschnitt .IT099 durchgeführt wird, zeigt Fig. 50. 992 ... 999 rasch von 59 über 510 ... 516 auf 51 Wie diese Figur zeigt, ist der dritte Block in der gestellt. Diese Weiterschaltung des Zählers ist in ersten Spalte dieses Arbeitsspiels durchgestrichen, Spalte X 900 der Tabbelle VII gezeigt, und die dafür womit angedeutet wird, daß der Blockende-Zähler erforderlichen Programmtore sind in der Programm- 186' nicht auf S3 geschaltet wurde. Durch die Endtoranordnung Iü3' als Bedingungen 17 ... 24 ange- 45 punktannäherungs-Prüfung wurde nämlich festgestellt, deutet. Infolge dieser Weiterschaltung wird das Steue- daß der noch verbleibende Abstand zum programrungssystem im Programmschritt 999 des Arbeits- mierten Endpunkt XCEP YCEP nicht kleiner als spiels ΔT1000 in die Betriebsstufe 1 geschaltet. Das 1,5 Makrobewegungen ist. Ebenso zeigt Fig. 50 aber nächste Arbeitsspiel Δ T1001 ist ein normales zirku- auch, daß der fünfte Block in der ersten Spalte des lares Arbeitsspiel nach Fig. 49, das sich beim Be- 50 Arbeitsspiels nicht durchgestrichen ist, womit angeschreiben des Kreisbogens 623 viele Male wiederholt. zeigt wird, daß der Blockende-Zähler 186' als Ergeb-Das Flußdiagramm von Fig. 45 geht dabei von der nis der zweiten Endpunktannäherungs-Prüfung auf 52 Annahme aus, daß sich das normale zirkuläre Ar- gestellt wurde. Diese zweite Prüfung, bei der der beitsspiel von F i g. 49 bis zum Zeitabschnitt Δ T2498 Punkt P2 um zwei Makrobewegungen vorverlegt wiederholt, worauf bei dem in F i g. 45 gezeigten Bei- 55 wurde, hat nämlich ergeben, daß der noch verbleispiel eine Folge von Übergangsspielen auftritt, in bende Abstand vom Punkt P2 zum programmierten denen auf eine Gerade übergegangen wird. Der Endpunkt XCEP1YCEP auf der X-Achse 1,5 bis Übergang von einem Kreisbogen auf eine Gerade 2 Makrobewegungen beträgt.
wird nachstehend in Verbindung mit Fig. 60 be- Wie diese Endpunktannäherungs-Prüfungen durchschrieben. Doch zunächst soll an Hand von Fig. 59 60 geführt werden, wurde bereits früher beschrieben. So noch eine weitere Art Übergang von einer Geraden bleibt lediglich festzustellen, daß der Blockendeauf einen Kreisbogen betrachtet werden, wobei der Zähler 186' im Programmschritt 1047 (Tabelle IX) Sollübergangspunkt in Zone B liegt (Fig. 59). auf 52 gestellt wird, wenn der Blockende- und Überlaufdetektor 71' (Fig. 4Oe) in diesem Programm-
2) Übergang soll in Zone B erfolgen 65 schritt ein Signal 537 abgibt. Da der Blockende-Zähler 186' zu Beginn des Zeitabschnittes Δ T999 nicht
Den Übergang von einem geraden Wegstück auf auf 53 weitergeschaltet wurde, erfolgt somit die Be-
ein Kreisbogenstück, wobei der Übergang in Zone B rechnung des Makrobeweeuneswertes AX,C in Süalte
197
198
AT400 des Arbeitsspiels von Fig. 50 genauso wie bei einem normalen linearen Arbeitsspiel, das F i g. 46 zeigt. Als erste bedeutsame Folge der zu Beginn des Zeitabschnittes A Tg!)9 vorgenommenen Weiterschaltung des Blockende-Z'ahlcrs 186' auf 52 werden die zu diesem Zeitpunkt in den Zwischenregisicrn 47'/ und 47' Q stehenden Größen, die zum nächsten Wegstück, also dem Kreisbogen 623, gehören, in Spalte -¥900 des Arbeitsspiels zur Berechnung des neuen
gang 55 abgegebenen Signal anliegt. Dieses zuletzt genannte Signal gelangt über das ODER-Glied 573 auf den Eingang des UND-Gliedes 575.
Die Durchführung der Multiplikation ± l7wi ■ QZwi 5 erfolgt in der gleichen Weise, wie zuvor im Zusammenhang mit Spalte 900 A der Tabelle VIII erläutert wurde, außer. cItB natürlich Multiplikator und Multiplikand von einem anderen Herkunftsort stammen. Wie in Spalte 900.4, wird die Multiplikation durch
Makrobewegungswertes .1Y40 benutzt. Wie zuvor er- io einen Multiplizierimpuls der Programmtoranordnung läutert wurde, braucht man nicht zu wissen, warum 393' (Bedingung 2) ausgelöst. Das Produkt wird zweckmäßigerweise gerade diese zum nächsten Weg- wieder in zwei Teile geteilt, wovon die vier niedrigstück gehörenden Daten zur Berechnung des Makro- sten Stellen wieder im Register IU' YR und die bewegungswertes herangezogen werden. Es genügt zu höheren Stellen als Makrobewegungswert ,1Y46 im wissen, daß — wie bei der entsprechenden zuvor im 15 Register 107' 1 V gespeichert werden. Der so berech-Zusammenhang mit F i g. 58 erläuterten Berechnung nete Makrobewegungswert I Y,o wird dann im nächder Makrobewegung — die Multiplikation ±/ZuiQZtt., sten Zeitabschnitt .1 T10110 in zehn Mikrobewegungen als Ergebnis im wesentlichen den gleichen Makro- ausgeführt.
bewegungswert IY46 ergibt, als wenn dieser mit den Die Operationen, die im Zeitabschnitt 1T1000 ausGrößen J und Q der Geraden 621 berechnet worden 20 geführt werden, zeigt Fig. 51. Diese Figur ist das wäre, da die Gerade 621 tangential zum Kreisbogen Bcfehlsschema für das zweite der von linear auf 623 verläuft. Der aus der Multiplikation ^ /ZlWQ7^ zirkulär übergehenden Übcrgangsspiele. Wie bekannt. gewonnene Makrobewegungswert IY40 stellt also in werden Übergangsspielc dieser Art ausgeführt, wenn Wirklichkeit die Y-Komponente des vom Punkt P4 der Sollübergangspunkt in Zone Ö liegt. In der ersten zum Punkt P6 verlaufenden Abschnitts der Geraden 25 Hälfte des Zeitabschnittes .1 T1000 wird die im vorher- 621 dar. Wie F i g. 59 zeigt, ist dies durchaus richtig, gehenden Zeitabschnitt 1T9a!l berechnete Makroda der Übergangspunkt XCEP YCEP erst nach dem bewegung .1.V.!R beendet. Es muß also die neue Ma-Durchfahren des Punktes P5 auftritt. krobewegung ΛΧ,- im Zeit-Teilabschnitt X400 des
Die zur Durchführung derMultiplikation M I7n^-Q7n-, laufenden Arbeitsspiels berechnet werden, damit die erforderlichen Operationen sind in Spalte V00C der 30 erforderliche Information zur Verfügung steht, um Tabelle VIII aufgeführt. Wie aus der am Kopf dieser die Bewegung auf der X-Achse hinter dem Punkt Ps Spalte stehenden Verknüpfung zu ersehen ist, muß fortsetzen zu können. Von der Gesamtbewegung, die der Blockende-Zähler 186' auf 55 stehen, damit das zwischen den Punkten P. und P7 in der zweiten Hälfte System die aufgeführten Operationen ausführen kann. des Zeitabschnittes ,1T1000 und in der ersten Hälfte Daher wird der Blockendc-Zähler 186' in den Pro- 3s des Zeitabschnittes .1 T1001 auszuführen ist, ist lediggrammschritten 800 und 801 der Spalte .V 800 des lieh der Aninngsabschnitt vom Punkt Ps zum ÜberArbeitsspiels von Fig. 50 zunächst von 52 auf 54 gangspunkt XCl.i' YCEP linear. Der restliche große wcitergestellt, nachdem er zuvor als Folge der zweiten. Teil de Wegstückes, der vom Übergangspunkt zu Beginn dieses Arbeitsspiels durchgeführten End- XCEP YCEP bis zum Punkt P7 geht, gehört zum punktannäherungs-Prüfung auf 52 gestellt worden 40 Kreisbogen 623, wie F i g. 59 zeigt. Der neue Makrowar. Am Ende derselben Spalte X 800 wird der bewegungswert 1 λ'ΓιΤ wird also besser nach dem zirku-Zähler dann im Programmschritt 897 auf 55 weiter- laren Interpolationsvcrfahrcn als Λ'-Kompciente der gestellt. Die Programmtore, die für diese Weiter- die Punkte P. und P7 miteinander verbindenden schaltung des Blockende-Zählers 186' erforderlich Sehne D1 berechnet. Zur Durchführung dieser Besind, sind in der Programmtoranordnung 183' als Bc- 45 rechnung muß zunächst wieder die Y-Komponente Ja dingungen 4, 5 und 8 angedeutet. Außerdem sind des Radiusvektors /?, bestimmt werden, der vom diese Weiterschaltungen des Zählers auch in Spalte Mittelpunkt Γ des Kreisbogens 623 zum Punkt P0 ΛΓ800 der Tabelle VII aufgeführt. führt.
Das Einlesen des Multiplikanden/z„., und des Wie Fig. 5*5 zeigt, steht der Radiusvektor /?, auf
Multiplikanden Q7v,, in den Digitalrechner 53' erfolgt 50 der Sehne D1 senkrecht und stellt den richtigen in den Programmschritten 935 und 937, indem die Radiusvektor /ur Berechnung der Af-Komponente
dieser Sehne dar. Wie bei dem im Zusammenhang
betreffenden Zwischenregister 47/ und 47' Q Leseimpulse von ihrer Programmtoranordnung 349' (Bedingung 1) bzw. 385' (Bedingung 2) erhalten. Wie die
mit F i g. 58 beschriebenen Übergang ist jedoch keine der Komponenten des Radiusvektors Rx zu Beginn
Bedingung 1 in deT Programmtoranordnung 349' 55 gegeben Sie müssen vielmehr aus der zu Beginn gezeigt, ist für diese Verknüpfung ein Signal auf dem gebenen Y-Komponente J7a.t des Anfangsradiusvek-AusgangG02 4- G03 des dem Zwischenregister 47'G tors berechnet werden. Dieser Anfangsradius, der in zugeordneten Zuordners 22Γ erforderlich. Dieses F i g. 59 nicht dargestellt ist, geht vom Mittelpunkt C Signal tritt auf dem Ausgang G 02 r G 03 auch tat- zum Tbergangspunkt ATEP YCEP. Die Berechsächlich auf, da das nächste Wegstück ein Kreisbogen 60 nungen. die zur Bildung der Y-Komponente/. au«; ist. Wie ferner die Bedingung 1 in der Programmtor- J7vi erforderlich sind, stehen in Spalte 2300 des anordnung 385' zeigt, erfordert diese Verknüpfung Arbeitsspiels von Fig. 51 und sind dort mit »Verein Signal PX 2 am Ausgang des UND-Gliedes 575 hältnisherechnungen für/« bezeichnet. Diese Berechdes Betriebsstufenwählers 69'. Unter den vorliegen- nungen entsprechen den Verhältnisberechnungen für den Bedingungen wird auch dieses Signal erzeugt, da 65 /. die zuvor im Zusammenhang mit Fig. 47 und 58 auf dem einen Eingang des UND-Gliedes 575 das erläutert wurden. Wie diese Verhältnisberechnungen Signal G02 f G03 und auf dem anderen Eingang für J vor sich gehen, zeigt ein Vergleich mit den entgleichzeitig das vom Zuordner 187' auf seinem Aus- sprechenden Vektoren in Fig. 59. Kurz gesagt, wird
199
200
zunächst ΥΛ berechnet, indem YCEP von YCP'„ subtrahiert wird. Die negative Komponente YΛ wird dann zum positiven Makrobcwegungswerl Λ Y40 addiert. Aus dieser Addition ergibt sich die Komponente Yn, die die y-Koordinatenstrecke vom Übergangspunkt XCEPIYCEP zum Punkt P0 darstellt, der bekanntlich auf der Geraden 621 liegt. Schließlich wird die positive Komponente YD von der ursprünglich gegebenen negativen Komponente JZwi abgezogen, so daß sich die noch größere negative Komponente / 1 ergibt, die die Y-Koordinatcnstrecke vom Punkt F6 zum Mittelpunkt C des Kreisbogens 623 darstellt.
Die einzelnen Operationen, die bei den Verhältnisberechnungen für / auftreten, sind in Spalte 2300 der Tabelle X aufgeführt. Um das System in die Betriebsstufe 2 umzuschalten, wird der Blockende-Zähler 186' zu Beginn des Arbeitsspiels von Fig. 51 von 55 auf 56 gestellt. Wie Tabelle VlI zeigt, geschieht dies im ersten Programmschritt des Arbeitsspiels, wenn der Zähler im vorhergehenden Arbeitsspiel auf 55 gestellt worden ist. Das hierzu erforderliche Programmtor ist in der Programmtoranordnung 183' als Bedingung 9 angedeutet. Zur Berechnung von YA = YCEP wird das Akkumulatorregister S3 ab' im Programmschritt 2370 durch die Programmtoranordnung 351' (Bedingung 11) geräumt und der im Register 115' YCP stehende Malropositionswert YCP4 durch die Programmtoranordnung 425' (Bedingung 3) in den Digitalrechner 53' geholt. Im Programmschritl 2371 wird die Endpunkt-Koordinate YCEP vom Makropositionswert YCP 4 subtrahiert. Die hierzu erforderlichen Steuerimpulse kommen von der Programmloranordnung 487' (Bedingung 2) und der Programmtoranordnung 479' (Bedingung 4). Die nächste Rechenoperation. Yn ■-- Y \ 4 1 ΥΑΛ. wird im anschließenden ProurammschriU 2372 ausgeführt, indem der Makrobewcgungswcrt . IV46 vom Register 107' I Y in den Rechner gelesen wird (Programmtoranordnung 415', Bedingung 15). Das Resultat wird dann im Programmschritt 2373 vom Antwortregister 53 a' in das Zusatzregister 582 umgespeichcrl (Programmtoranordnung 583, Bedingung 1).
Die dritte Rechenoperation, J. - J7wi - Yn, wird im Programmschritt 2374 eingeleitet mit der Räumung des Akkumulatorregisters 53 ab' und dem Einlesen der im Zwischenregister 47'/ stehenden Komponente / in den Digitalrechner 53' (Programmtoranordnung 351'. Bedingung 13; Programmtoranordnung 353', Bedingung 2). Die im Zusatzregister 582 aufbewahrte Komponente Yn wird dann im ProgTammschritt 2375 von der im Rechner stehenden Komponente J7n, subtrahiert (Programmtoranordnung 585, Bedingung 1. und Programmtoranordnung 479', Bedingung 6). Das Resultat /4 erscheint im Antwortregister 53α im Programmschritt 2376 und wird in das aktive Register 101 '/ geschrieben. Danach wird das ganze AkkumulatoiTegister 53 ab' durch die Programmtoranordnung 351' (Bedingung 15) geräumt.
Die als Ergebnis der letzten Rechenoperation im aktiven Register 10Γ/ gespeicherte Y-Komponente /, wird dann im nächsten Zeit-Teilabschnitt, also in Spalte X 400, des Arbeitsspiels von F i g. 51 zur Berechnung des Makrobewegungswertes. 1.Y57 - ±J. ■ QZvt benutzt. Die dabei auftretenden Operationen sind in Spalte 400D der Tabelle VIII aufgeführt. Wie aus der am Kopf der Spalte stehenden Verknüpfung zu ersehen ist. liegen die zur Durchführung der Operationen erforderlichen Signale JV 400, 56 und (G 02 J G 03) vor.
Zunächst wird der Multiplikand / + vom aktiven Register 101'/ in den Digitalrechner 53' gebracht (Programmtoranordnung 39Γ, Bedingung 2). Anschließend wird der im Zwischenregister 47' Q stehende Multiplikator Q7wi in den Rechner gelesen (Program mloranordnung 385', Bedingung 1). Wie die zuletzt genannte Bedingung zeigt, tritt das Signal PXl am Ausgang des UND-Gliedes 575 des Betriebsstufcnwählers 69' auch weiterhin auf, da an seinen
ίο Eingängen sowohl das Signal vom Ausgang 56 des Zuordners 187' als auch das Signal vom Ausgang G 02-f G 03 des dem Zwischenregister 47'G zugeordneten Zuordners 221' auftreten. Die Durchführung der Multiplikation +Z1- QZn-i erfolgt in den Programmschritten 439 ... 555, und zwar unter dem Einnuß eines Multiplizierimpulses der Programmtoranordnung 393' (Bedingung 1). Vom Produkt werden die vier niedrigsten Stellen wieder abgetrennt und im Register il3'XR gespeichert. Die restlichen Stellen werden als neuer Makrobewegungswert .1A^7 in das Register 109'ΛΧ gebracht.
Die erste Hälfte der soeben berechneten Makrobewegung A Xc1- wird in der zweiten Hälfte des Arbeitsspiels von Fig. 51 im Zeitabschnitt .1T1000 in fünf Mikrobewegungcn ausgeführt. In der gleichen Zeit erfolgt die Bewegung auf der Y-Achse in Übereinstimmung mit dem Makrobewegungswert J Y4fi. der am Ende des Arbeitsspiels von Fig. 51 im Zeitabschnitt 1 T100n vollendet ist. Vor dem Beginn des nächsten Zeitabschnittes 1 T1001 muß also ein neuer Makrobewegungswert für die Y-Achse berechnet werden. Wie das Vektordiagramm von Fig. 59 zeigt, verläuft die Bewegung im Zeitabschnitt Δ T1001 vom Punkt Pr< zum Punkt Pp auf dem Kreisbogen 623. Da die Bewegung im ganzen Zeitabschnitt JT1001 auf einem zirkulären Wegstück erfolgen soll, wird dei Makrobewegungswert 1 Yes somit nach dem zirkulären Interpolationsverfahrcn gemäß Gleichung (19) berechnet. Wie F i g. 59 zeigt, erfolgt die Bildung des neuen Makrobewegungswertes 1 YGS daher durch Berechnen der .^-Komponente der die Punkte P6 und P1 des Kreisbogens 623 miteinander verbindenden Sehne D.,. Der entsprechende Radiusvektor für diese Berechnung ist R„, der vom Mittelpunkt C des Kreisbogciib 623 zu dem in der Mitte zwischen den Punkten P0 und Ps liegenden Punkt 7 geht. Nach Gleichung (19) muß also zunächst die -iV-Komponcntc /. des Radiusvektors R„ aus der ursprünglich gegebenen A"-Komponcnte I7wi des Anfangsrndiusvektors gewonnen werden. Dieser Anfangsradiusvektor, der in F ig. 59 nicht dargestellt ist, geht vom Mittelpunkt C zum Übergangspunkt XCEP YCEP. Die erforderlichen Verhältnisberechnungen für / sind in Spaltf 2800 der Tabelle X aufgeführt. Die geometrischer Grundlagen für diese Berechnungen sind leicht au; F i g. 59 zu ersehen, wo die einzelnen Größen XA, Xt und /, als Vektoren dargestellt sind. Außerdem wer den die bei den Verhältnisberechnungen für / auf tretenden Rechenoperationen wieder genauso durch geführt, wie zuvor in Verbindung mit dem Arbeits spiel von Fig. 47 an Hand der Fig. 58 und de Tabelle X beschrieben wurde. Es genügt also festzu stellen, daß als Ergebnis der Verhältnisbcrechnunge: für / die gesuchte Größe /4, die die Ä"-Komponent des Radiusvektors R2 darstellt, vor Beginn des letzte Zeit-Teilabschnittes (Spalte # 900) des Arbeitsspiel von F i g. 51 im aktiven Register 99' / steht.
Nach der Berechnung der Komponente /1 werde
509507/4
201
202
im selben Zeit-Teilabschnitt (Spalte 2800) des Arbeitsspiels von Fig. 51 die zum nächsten Wegstück, also zum Kreisbogen 623, gehörenden Größen Q und G von den Zwischenregistern in die aktiven Register umgespeichert. Die dabei auftretenden Operationen sind in Spalte 2800 der Tabelle X durch die ersten sechs waagerechten Pfeile angedeutet, die in diese Spalte hineinführen. Alle Operationen, die bei dieser Umspeicherung von den Zwischenregi stern in die aktiven Register auftreten, erfordern ein Signal am Ausgang 57 des Zuordners 187'. Daher wird im Zeit-Teilabschnitt ^500 der Blockende-Zähler 186, von 56 auf 57 gestellt, indem ein Programmtor, das in der Programmtoranordnung 183' durch Bedingung 12 angedeutet ist, einen Weiterschaltimpuls abgibt. Die Umspeicherung von G und Q erfolgt in der gleichen Weise, wie zuvor im Zusammenhang mit Spalte 2300 der Tabelle X beschrieben wurde. Die hierzu erforderlichen Auftast- und Steuerimpulse kommen von den Programmtoranordnungen 385' (Bedingung 4), 387' (Bedingung 2), 251' (Bedingung 2) und 409' (Bedingung 2).
Im Anschluß an die Umspeicherung der Größen Q und G von den Zwischenregistern in die aktiven Register wird der Blockende-Zähler 186' im Programmschritt 2382 von 57 auf 58 gestellt (Programmtoranordnung 183', Bedingung 14). Dadurch wird die Steuerleitung M 3 der dritten Gruppe UND-Glieder 179' erregt, so daß das System in die Betriebsstufe 3 umgeschaltet wird, in der die Taktimpulse des Hunderterumsetzers 17Γ des Zeitbasis- und Taktgebersystems 63' die UND-Glieder 179' durchlaufen und an deren Ausgängen auftreten. Diese Taktimpulse werden jedoch erst im vierten Zeit-Teilabschnitt des nächsten Arbeitsspiels benutzt, das in Fig. 52 dargestellt ist und im Zeitabschnitt -IT1001 ausgeführt wird. Die Berechnung des neuen, im Zeitabschnitt Δ T1001 benötigten Makrobewegungswertes Λ Y6S für die y-Achse erfolgt in der letzten Spalte X 900 des Arbeitsspiels von Fig. 51. Als Multiplikand wird die Λ'-Komponente/+ benutzt, die gerade berechnet worden ist und jetzt im aktiven Register 99'/ steht. Als Multiplikator dient der Makrobewegungsquotient Q des nächsten Wegstückes, also des Kreisbogens 623, der in der vorhergehenden Spalte 2800 in aas Register 103' Q umgespeichert wurde.
Die einzelnen Operationen, die bei der Multiplikation ± I. · Q auftreten, sind charakteristisch für zirkuläres Interpolieren und stehen in Spalte 9008 der Tabelle VIII. Die Programmschritte, in denen der Multiplikand /, sowie der Multiplikator Q vom aktiven Register 997 bzw. 103'Q in den Rechner gebracht werden, sowie die Zeit, in der die Multiplikation ± I. · Q durchgeführt wird, können Tabelle VIII entnommen werden. Die erforderlichen Lese-, Schreib- und Multiplizierimpulse werden von Programmtoren erzeugt, die in den betreffenden Programmtoranordnungen als Bedingungen aufgeführt sind. Es sind dies die Programmtoranordnungen 400' (Bedingung 1), 389' (Bedingung 4) und 393' (Bedingung 2). Zu beachten ist, daß die vor der Multiplikation vorgenommene Umspeicherung der Größen / und Q in die aktiven Register 997 und 1O3'Ö das Auftreten eines Signals am Ausgang ZlR des Bahnform-Indikators 106' und nicht an einem Ausgang des Betriebsstufenwählers 69' voraussetzt. Daher hat auch die Weiterschaltung des Blockende-Zählers 186' auf 58 sowie die eventuelle Aufhebung eines Signals vom Ausgang G 02+G 03 des Zuordners 221' keinen Einfluß auf die Abrufung der Daten aus den Registern 997 und 103'Q. Anders ausgedrückt, das Herauslesen der Daten aus dem Register 99'/ und 103' Q wird auch weiterhin von der zum Kreisbogen 623 gehörenden Zahl G gesteuert. Doch befindet sich diese Zahl jetzt im aktiven Register 105'G und macht sich dort durch ein Signal bemerkbar, das am Ausgang ZlR des dem aktiven Register
ίο 105'G zugeordneten Bähnform-Indikators 106' auftritt.
Als letzter Arbeitsgang im Arbeitsspiel nach Fig. 51 wird die nocn im aktiven Register 101' J stehende Komponente Jt neu berechnet, um die inverse y-Komponente J des nächsten (nicht gezeigten) Radiusvektors zu erzeugen, der vom Mittelpunkt C zum Punkt P8 auf dem Kreisbogen geht. Diese neue Komponente / wird dann im nächsten Arbeitsspiel, das in Fig. 52 dargestellt ist und im Zeitabschnitt J T1001 ausgeführt wird, dazu benutzt, als nächsten Makrobewegungswert Λ X19 die A'-Komponente der (nicht gezeigten) die Punkte P7 und P9 auf dem Kreisbogen miteinander verbindenden Sehne zu berechnen. Um J. neu zu berechnen, wird der Makrobewegungswert Δ Y6S von J t subtrahiert. Wie Spalte 900 ß der Tabelle VIII zeigt, treten die bei dieser Neuberechnung durchzuführenden Operationen in den Programmschritten 962 ... 964 auf. Wie diese Operationen durchgeführt werden und welche Steuer- und Auftastimpulse dafür benötigt werden, wird nicht noch einmal wiederholt, da dies bereits zuvor im Zusammenhang mit dem in Fig. 49 gezeigten normalen zirkulären Arbeitsspiel beschrieben wurde. Wie aus der dortigen Beschreibung noch bekannt ist, wird die neuberechnete Komponente / im Programmschritt 964 im aktiven Register 10Γ7 gespeichert, worauf das Akkumulatorregister 53 afc' geräumt wird. Damit sind alle Arbeitsgänge abgeschlossen, die gemäß Fig. 51 im zweiten der von linear auf 7irkulai übergehenden Übergangsspiele (Übergang Zone B) auftreten.
Das dritte Übergangsspiel bei einem Übergang von linear auf zirkulär (übergang Zone B) zeigt F i g. 52 in allgemeiner Form fcs wird im Zeitabscnnitt Δ T1001 ausgeführt und ist nahezu identisch mit einem normalen zirkulären Arbeitsspiel, wie es Fig. 49 zeigt. Das Arbeitsspiel von Fig. 52 unterscheidet sich durch die in seiner vierten und seiner letzten Spalte durchgeführten Operationen. In diesen Zeit-Teilabschnitten werden weitere Daten von den Zwischenregistern in die aktiven Register umgespeichert. Außerdem wird auch die Übertragung von Daten vom Lochstreifen in die Zwischenregister eingeleitet. Die Umschaltung des Systems in die Betriebsstufe 3 macht sich zum erstenmal in der vierten Spalte des Arbeitsspiels von F i g. 52 bemerkbar, die dementsprechend mit »3300« bezeichnet ist. In dieser Spalte werden die Endpunkt-Koordinaten XEP und YEP, die den programmierten Endpunkt des Kreisbogens 623 darstellen, von den Zwischenregistern 47' X und 47' Y in die aktiven Register 95' X und 97' Y umgespeichert. Die Operationen, die bei der Umspeicherung der Endpunkt-Koordinaten von den Zwischenregistern in die aktiven Register
auftreten, sind in Spalte 3300 der Tabelle XI aufgeführt. Wie man sieht, entsprechen die bei dieser Umspeicherung auftretenden Operationen der zuvor im Zusammenhang mit dem Arbeitsspiel von Fig.48
203
204
beschriebenen Umspeicherung der Endpunkt-Koordinaten, die beim Arbeitsspiel von F i g. 48 in Spalte 3800 der Tabelle XI erfolgte.
Die Umspeicherung der Endpunkt-Koordinate XEP vom Zwischenregister in das aktive Register erfolgt in den Programmschritten 3335 und 3336 unter dem Einfluß der Programmloranordnung 359' (Bedingung 1) und der Programmtoranordnung 375' (Bedingung 1). Nach der Räumung des Akkumulalorregisters 53 aft' durch die Programmtoranordnung 351' (Bedingung 25) wird die Endpunkt-Koordinate YEP in den Programmschritten 3336 und 3337 vom Zwischenregister in das aktive Register umgespeichert (Programmtoranordnung 377', Bedingung 1; Programmtoranordnung 383', Bedingung 1). Anschließend wird das Akkumulatorregister 53 ab' wieder durch die Programmtoranordnung 351' (Bedingung 27) geräumt.
Aus Gründen, die nachstehend noch erläutert werden, wird der Blockende-Zähler 186' im Programmschritt 3379 von 58 auf 59 gestellt. Diese Weiterschaltung ist auch in Tabelle XI aufgeführt und wird durch die Programmtoranordnung 183' (Bedingung 15) vorgenommen. Im nächsten Zeit-Teilabschnitt (Spalte X 400) wird der Makrobewegungswert .1λ'7!) berechnet, indem ± J mit Q multipliziert wird, und zwar genauso, wie zuvor in Verbindung mit SpaHe 4008 der Tabelle VIII und Spalte #400 der F i g. 49 beschrieben wurde. Auch die Neuberechnung der im aktiven Register99'/ stehenden Komponente/, die im Anschluß an die Berechnung des neuen Makrobewegungswertes .1X-9 erfolgt, wird genauso durchgeführt, wie in Verbindung mit Tabelle VIII, Spalte 4008 und Fig. 49, Spalte #400, beschrieben wurde. Als Ergebnis dieser Berechnung wird im aktiven Register99'/ die neue Komponente/ gespeichert, die die inverse X-Komponcnte des (nicht gc7eiglen) Radiusvektors darstellt, der vom Mittelpunkt C zu dem auf dem Kreisbogen 623 liegenden Punkt P9 geht. Diese neuberechnete Komponente / wird dann in Spalte #900 des Arbeitsspiels zur Berechnung der Makrobewegung Λ Ys 10 für die F-Achse benutzt, worauf die zu dieser Zeit im aktiven Register 101'J stehende Komponente J neu berechnet wird, indem von ihr der neue Makrobewegungswert Λ Yn 10 subtrahiert wird. Als nächstes wird der Lochstreifenleser 4Γ eingeschaltet, um mit der Übertragung der Daten, die das im Anschluß an den Kreisbogen 623 auftretende Wegstück beinhalten, in die Zwischenregister zu beginnen. Die dabei auftretenden Operationen und Steuersignale sind die gleichen, wie zuvor im Zusammenhang mit dem zweiten in Fig. 48 dargestellten Übergangsspiel (Übergang Zone Λ) beschrieben wurde. Wie dort erläutert wurde, wird der Lochstreifenleser 41' im Programmschritt 991 unter dem Einfluß der zuvor erfolgten Weiterschaltung des Blockende-Zählers 186' auf 59 weitergeschaltet. Im Anschluß daran wird der Biockende-Zähler 186' in den Programmschritten 992 ... 999 auf 510 und weiter über 511...516 auf 51 geschaltet, und zwar in der gleichen Weise, wie zuvor in Verbindung mit F i g. 48 beschrieben wurde. Hierdurch wird das System zur Vorbereitung auf die Durchführung eines normalen, im nächsten Zeitabschnitt Λ TnD2 auftretenden zirkulären Arbeitsspiels in die Betriebsstufe 1 geschaltet. Von hier an bis zur Annäherung des Endpunktes des Kreisbogens 623 wird dann das normale zirkuläre Arbeitsspiel in aufeinanderfolgenden Zeitabschnitten, beginnend mit dem Zeitabschnitt Δ T1002, ständig aufs neue ausgeführt.
e. Übergang von einem Kreisbogen auf eine Gerade 5
1) Übergang soll in Zone B erfolgen
Es sei angenommen, daß der Kreisbogen 623, der nach F i g. 58 im Zeilabschnitt A T1001 begonnen
ίο wurde, etwa 1500 Zeitabschnitte AT lang beschrieben wurde und daß nach ihm wieder eine Gerade auftritt. Dies ist die Situation, wie sie Fig. 60 und der unterste Zweig in F i g. 45 zeigen. Zur besseren Veranschaulichung ist der Kreisbogen623 in Fig. 60 gegenüber seiner Lage in Fig. 58 rechts herum gedreht worden.
Wie bei F i g. 58 und 59 ist der Kreisbogen abgekürzt dargestellt, um Platz zu sparen. Nur der letzte Teil des Kreisbogens ist vollständig abgebildet. Wie Fig. 60 zeigt, führt dieser letzte Teil vom PunktP0 über die Punkte P1-^P5 zum programmierten Übergangspunkt XCEP, YCEP, wo das nächste Wegstück, die Gerade 635, beginnt. Die Gerade hat eine X-Komponente sowie eine Y-Komponente, die in Fig. 60 als Vektoren llKi und JZwi dargestellt sind. Diese Vektoren stehen als Zahlen in den Zwischenregistern 47'/ und 47'/, ebenso wie der Makrobewegungsquotient ßZu.„ der im Zwischenregister 47' Q steht und die Sollgeschwindigkeit auf der Geraden 635 beinhaltet. Vor Durchführung des Arbeitsspiels im Zeitabschnitt. 1 T2498 sind in den Zeitabschnitten IT1001... .1 T2497 zahlreiche normale zirkuläre Arbeitsspiele ausgeführt worden. Im letzten dieser Arbeitsspiele, das im Zeitabschnitt Λ T2497 ausgeführt wurde, ist auch der Makrobewegungswert J Y03 für die y-Achse berechnet worden.
Das im Zeitabschnitt . i T„49SJ ausgeführte Arbeitsspiel nach F i g. 49, in welchem noch keine Annäherung des programmierten Übergangspunktes XCEP YCEP gemeldet worden ist. Im Anschluß an dieses Arbeitsspiel treten in den Zeitabschitten
. 1 To499 1T2501 drei Übergangsspiele auf, die
F i g. 55. 56 und 57 zeigen. In diesen drei Übergangsspielen erfolgt der Übergang vom Kreisbogen 623 auf die Gerade 635. Nach dem letzten Übergangsspiel folgt dann im Zeitabschnitt .1 T2502 ein normales lineares Arbeitsspiel nach F i g. 46. Dieses Arbeitsspiel wiederholt sich dann in jedem der folgenden Zeitabschnitte .1 T. und zwar so lange, bis sich der Endpunkt der Geraden 635 nähert.
Wie F i g. 60 zeigt, werden die Punktvorverlegungen diesmal auf der K-Achse vorgenommen, da bei dem Kreisbogen 623, so wie er in F i g. 60 gezeichnet ist, die Makrobewegungskomponente auf der F-Achse größer ist als auf der .Y-Achse. Die Operationen, die im Zeitabschnitt Λ T2498 beim Beschreiben des Kreisbogens 623 in Richtung zum Punkt P2 auftreten, sind bereits zuvor im Zusammenhang mit F i g. 49 erläutert worden. Im Zeitabschnitt .1T2499 wird dann durch die zweite in diesem Zeitabschnitt vorgenommene Endpunktannäherungs-Prüfung festgestellt, daß der Abstand zum programmierten Endpunkt XCEP! YCEP nur noch bis zu zwei Makrobewegungen J Y beträgt, wie F i g. 55 zeigt. Als Folge dieser Feststellung wird der Blockende-Zähler 186' auf 52 weitergeschaltet. Die Berechnung des Makrobewegungswertes Λ X^ in Spalte X 4OU des Arbeitsspiels nach Fig. 55, die nach der für zirkuläres Interpolieren
205
206
geltenden Gleichung AX = ±J ■ Q durchgeführt wird, bleibt von dieser Weiterschaltung des Zähleis unberührt. Die in Spalte .Y 400 des Arbeitsspiels von F i g. 55 ausgeführten Operationen sind also die gleichen wie bei einem normalen zirkulären Arbeitsspiel nach Fig. 49. In SpalteX800 des Arbeitsspiels von F i g. 55 wird der Blockende-Zähler 186' dann erneut v/eitergeschaltet, zunächst in den Programmschritten 800 und 801 auf 54 und dann im Programmschritt 897 auf 55, wie zu'-όγ in Verbindung mit der entsprechenden Spalte von F i g. 50 beschrieben wurde. Obwohl der Blockende-Zähler 186' auf 55 gestellt worden ist, wird die Berechnung der nächsten Makrobewegung in Spalte X900 von Fig. 55 genauso durchgeführt wie bei einem normalen zirkulären Arbeitsspiel nach Fig. 49. Mit Ausnahme der Weiterschaltung des Blockende-Zählers 186' von 51 auf 55 werden also alle Operationen in dem im Zeitabschnitt ZlT2499 auftretenden Arbeitsspiel nach Fig. 55 genauso ausgeführt wie bei einem normalen zirkulären Arbeitsspiel nach F i g. 49. Mit Beginn des zweiten, von zirkulär auf linear übergehenden Übergangsspiels, das Fig. 56 zeigt, wird der Zähler durch die Programmtoranordnung 183' (Bedingung 9) wieder um eine Einheit weiter auf 56 geschaltet. Auch die in diesem Arbeitsspiel durchgeführte erste Berechnung einer neuen Makrobewegung (Spalte X 400) erfolgt noch nach der zirkulären Interpolationsgleichung AX = ±J-Q. Das Resultat dieser Berechnung ist der Makrobewegungswert A X51, der die Sollbewegung auf der .Y-Achse darstellt, wenn der Kreisbogen 623 bis zur Mitte des nächsten Zeitabschnittes A T2,ni fortgesetzt würde. Wie F i g. 60 zeigt, ist dies jedoch nicht der Fall. Tatsächlich wird nämlich der Kreisbogen in der zweite Hälfte des davon auftretenden Zeitabschnittes A T2500 beendet. Der Fehler, der durch die nach der zirkulären Interpolationsgleichung vorgenommene Berechnung entstanden ist, ist jedoch viel kleiner, als man nach F i g. 60 annehmen könnte. In der Praxis ist dieser Fehler vernachlässigbar, da die beiden unmittelbar aufeinanderfolgenden Wegstücke 623 und 635 tangential zueinander verlaufen. In Fig. 60 ist dieser Fehler nur infolge des großen Maßstabes dieser Figur so deutlich zu erkennen.
Wie eine Betrachtung der F i g. 56 zeigt, ist dort ein durchgekreuzter Block aufgeführt, der mit »Verhältnisberechnungen für /: durchführen; Resultat nicht benutzen« bezeichnet ist. Dies besagt nichts anderes, als daß das System die Verhältnisberechnungen für / — auf deren Durchfuhrung es durch die zuvor erfolgte Weiterschaltung des Blockende-Zählers 186' auf 56 vorbereitet wurde — auch ausführen darf, ohne daß jedoch das Ergebnis der Berechnungen benutzt wird. Das Ergebnis wird deshalb nicht benutzt, weil der Radiusvektor nicht »vorgerückt« werden muß, wie es der Fall war, als das nächste von diesem Radiusvektor dargestellte Wegstück ein Kreisbogen war. Mit anderen Worten: Erfolgt der Übergang nicht auf einen Kreisbogen, sondern auf eine Gerade, wie Fig. 60 zeigt, so können die zu diesem Wegstück gehörenden Komponenten / und / benutzt werden, ohne daß an ihnen Änderungen vorgenommen werden müssen. Das gleiche gilt auch für die Verhältnisberechnungen, die durch den durchgestrichenen Block in Spalte 2800 angedeutet sind.
Der Makrobewegungswert A Yr<H, der die im nächsten Zeitabschnitt A T2501 in der y-Achse auszuführende Makrobewegung beinhaltet, wird in der letzten Spalte ^ 900 des Arbeitsspiels von Fig. 56 im Zeitabschnitt J T2500 berechnet. Diese Berechnung erfolgt nach der linearen Interpolationsgleichung Δ Y = J Q. Sowohl der Multiplikator als auch der Multiplikand, die bei dieser Berechnung benutzt werden, gehören zum nächsten Wegstück, also zur Geraden 635. Vor der Berechnung des neuen Makrobewegungswertes A y6S müssen daher zunächst die zum nächsten Wegstück gehörenden Daten von den Zwischenregistern
ίο in die aktiven Register umgespeichert werden. Dies geschieht in der vorhergehenden Spalte 2800 des Arbeitsspiels von F i g. 56. Wie die Bezeichnung »2800« dieser Spalte besagt, erfolgt die Umspeicherung der Daten von den Zwischenregistern in die aktiven Register in der Betriebsstufe 2 des Systems, und diese Umschaltung wiederum erfolgt, indem der Blockende Zähler 186' im Proerammschritt 501 auf 57 gestellt wird (vgl. Tabelle VII, Spalte X 500, und Programmtoranordnung 183', Bedingung 12). In dieser Betriebsstufe werden die Zahlen Q und G während der ProgrammschriUe 2877 .. . 2879 von den Zwischenregistern in die aktiven Register umgespeichert. Die dabei auftretenden Operationen und Steuersignale sind die gleichen, wie zuvor im Zusammenhang mit Fi g. 51 (Abschnitt F4d2) beschrieben wurde. Auch die Umspeicherung der neuen Zahlen / und / in den Programmschritten 2879 .. . 2881 erfolgt ähnlich (Programmtoranordnung 349', Bedingung 4; Programmtoranordnung 355', Bedingung 4; Progiamrntüranordnung 353', Bedingung 4; Programmtoranordnung 357', Bedingung 4). Natürlich wird bei diesen über das Akkumulatorregister 53 ab' erfolgenden Umspeicherungen das Register nach der Umspeicherung einer Zahl in ihr entsprechendes ciktives Register stets wieder geräumt, so daß das Register die nächste umzuspeichernde Zahl aufnehmen kann (bezüglich Fi g. 54 vgl. Programmtoranordnung 351', Bedingungen 17, 19, 21 und 23; bezüglich Fig. 56 vgl. 351', Bedingungen 18, 20, 22 und 24).
Uewissermaßen als Nebenwirkung der Umschaltung des Systems in die Betriebsstufe 2 werden auch die Verhältnisberechnungen für / in Spalte 2800 des Arbeitsspiels von Fi g. 56 durchgeführt. Das Resultat dieser Berechnungen wird jedoch nicht in das aktive Register 99' / eingeschrieben, da weder ein Signal G 02 noch G 03 anliegt. Statt dessen wird in den Programmschritten 2879 und 2880 die im Zwischenregister 47' / stehende Komponente / in das aktive Register 99' / umgespeichert. Auch das Resultat der in Fig. 56 durchgestrichenen Verhältnisberechnungen für / wird nicht in das aktive Register 101'/ eingeschlichen, sondern es wird statt dessen die im Zwischenregister 47'7 stehende Komponente/ in den Programmschritten 2880 und 2881 in das aktive Register 10Γ/ umgespeichert. Im Anschluß an diese Umspeicherungen wird der Blockende-Zähler 186' von 57 auf 58 gestellt, wie Fig. 56 und Bedingung 14 der Programmtoranordnung 183' zeigen.
Wie zuvor erwähnt wurde, werden die Zahlen / und Q, die gerade von den Zwischenregistern in die aktiven Register umgespeichert wurden, in der nächsten Spalte A"900 des Arbeitsspiels von Fig. 56 zur Berechnung der Makrobewegunj;A Yw benutzt, die dann anschließend im dritten Übergangsspiel ausgeführt wird. Dieses dritte Übergangsspiel ist in Fi g. 57 dargestellt und wird im Zeitabschnitt A T0501 ausgeführt.
Wie Fig. 57 zeigt, ist das dritte der bei einem
207
208
Übergang von zirkulär auf linear auftretenden Übergangsspiele (Übergang Zone B) im Prinzip ein normales lineares Arbeitsspiel, wie es F i g. 46 zeigt. Wie bei allen Arbeitsspielen sind die Neuberechnungen der Mikro- und Makropositionen die gleichen wie in F i g. 46. Darüber hinaus sind auch die Berechnungen, die zur Bildung der Makrobewegungswerte AX19 und A Y810 in Spalte X 400 bzw. X 900 durchgeführt werden, die gleichen wie in den entsprechenden Spalten von Fig. 46. Der erste Punkt, in dem Fig. 57 von 46 abweicht, tritt in der vierten, mit »3300« bezeichneten Spalte auf, in der die Endpunkt-Koordinaten des nächsten Wegstückes von den Zwischenregistern 4TX und 47' Y in die aktiven Register 95' XCEP und 97' YCEP umgespeichert werden. Diese Umspeicherungen sind die gleichen wie in der entsprechenden Spalte von Fig. 52, die das dritte der bei einem Übergang von linear auf zirkulär auftretenden Übergangssplele (Übergang Zoneß) zeigt. Und wie in Spalte 3300 der Fig. 52 wird auch in der entsprechenden Spalte von F i g. 57 im Anschluß an die Umspeicherung der Endpunkt-Koordinaten der Blockende-Zähler 186' im Programmschrilt 3379 von S8 auf S9 weitergeschaltet.
Der zweite Punkt, in dem F i g. 57 abweicht, tritt in Spalte X 900 im Anschluß an die Berechnung des Makrobewegungswertes IY8 ia auf und betrifft die Einschaltung des Lochstreifenlesers 41' sowie die Weiterschaltung des Blockendc-Zählers 186' auf 51, um das System für das nächste Arbeitsspiel in die Betriebsstufe 1 zu schalten. Auch diese zuletzt genannten Operationen sind die gleichen wie in den entsprechenden Programmschritten in Fig. 52 und sind im einzelnen in den Programmschritten 991 ... 999 der Spalte X 900 in Tabelle VlI aufgeführt.
Entsprechend der Form der zu beschreibenden Geraden 635 wird im nächsten Zeitabschnitt .1T2502 ein normales lineares Arbeitsspiel nach F i g. 49 ausgeführt. In diesem Zeitabschnitt wird daher die zweite Hälfte der im voraufgegangenen Zeitabschnitt < j T2501 berechneten Makrobewegung AX19 vollendet und die ebenfalls in diesem Zeitabschnitt berechnete Makrobewegung A YH 10 ausgeführt. Im Zeitabschnitt .1T2502 werden dann wieder zwei neue Makrobewegungswerte für die X- und die Y-Achse berechnet, wie im Zusammenhang mit F i g. 49 beschrieben wurde, worauf anschließend zahlreiche weitere Arbeitsspiele der in F i g. 49 gezeigten Art ausgeführt werden, bis sich die Gerade 635 ihrem Endpunkt nähert.
2) Übergang soll in Zone A erfolgen
Angesichts der ausführlichen Erläuterung des Übergangs von einer Geraden auf einen Kreisbogen sowie von einem Kreisbogen auf eine Gerade an Hand von Fi g. 58, 59 und 60 werden nachstehend die Operationen, die bei einem Übergang von einem Kreisbogen auf ein gerades Wegstück mit dem Übergangspunkt in Zone A auftreten, nur kurz beschrieben. Trotz der Kürze der Beschreibung ist auch diese Art Übergang an Hand der Flußdiagramme und Befchlsschemata sowie der Tabellen in allen Einzelheiten verständlich.
Es sei angenommen, daß beim Beschreiben des Kreisbogens 623 eine Folge normaler zirkularer Arbeitsspiele, beginnend mit dem Zeitabschnitt .1T11101, ausgeführt worden ist und daß das letzte dieser Arbeitsspiele im Zeitabschnitt ,1 T2498 aufgetreten ist, wie Fig. 60 zeigt. Des weiteren sei angenommen, daß im Zeitabschnitt A T2199 durch die erste, in diesem Zeitabschnitt durchgeführte Endpunktannäherungs-Prüfung die Nähe des programmierten Endpunktes XCEPjYCEP ermittelt wurde, der Endpunkt also in Zone A des im nächsten Zeitabschnitt J T2500 auftretenden Arbeitsspiels fällt. Unter diesen Umständen werden in den Zeitabschnitten A T2199 und ' T2500 die in F i g. 53 und 54 gezeigten Arbeitsspiele ;.. . _eführt. Im Anschluß an das zweite dieser Uberb_jgsspiele
ίο kann das System dann wieder zu einem normalen linearen Arbeitsspiel nach F i g. 46 zurückkehren. Diese Arbeitsspielfolge von einem normalen zirkulären Arbeitsspiel nach F i g. 49 über ein erstes und zweites Übergangsspiel nach F i g. 53 und 54 zu einem iioHaalen linearen Arbeitsspiel nach Fig. 46 ist im Flußdiagramm von F i g. 45 dargestellt.
Die in Fig. 53 und 54 aufgeführten Operationen lassen sich am besten verstehen, indem man einerseits die Fig. 53 und 54 und andererseits die Fig. 55, 56 und 57 nebeneinanderlegt und dann beide Sätze Figuren miteinander vergleicht. Dabei sollen zunächst die Fig. 55, 56 und 57 sowie das Vektordiagramm von Fig. 60 betrachtet werden. Wie im Zusammenhang mit diesen Figuren noch bekannt ist, wurde die erste lineare Makrobewegung, AX6ft, erst am Ende des Arbeitsspiels berechnet, in dem der Übergang erfolgen sollte. Der Grund hierfür war, daß der programmierte Endpunkt XCEP YCEP erst in Zone ß, also in der zweiten Hälfte des Zeitabschnittes J T2500,
jo auftrat. Tatsächlich erfolgte denn auch die Bewegung auf der Z-Achse in der ersten Hälfte des nächsten Zeitabschnittes A T2501 noch nach dem zirkulären Makrobewegungswert AX57, der in dem voraufgegangenen, im Zeitabschnitt A T2530 aufgetretenen Arbeitsspiel berechnet worden war. Und schließlich wurde der Lochstreifenleser 41' erst am Ende des Zeitabschnittes A T2501 eingeschaltet, also in dem Zeitabschnitt, der im Anschluß an den Zeitabschnitt auftrat, in welchem der Übergangspunkt XCEP YCEP durchfahren wurde.
Demgegenüber ist es bei einem von zirkulär auf linear erfolgenden Übergang, bei dem der programmierte Übergangspunkt in der ersten Hälfte durchfahren wird, wünschenswert, beide Makrobewegungswerte AX und AY nach den linearen Interpolationsgleichungen AX IQ und AY —JQ in dem Zeitabschnitt zu berechnen, in welchem der Übergang erfolgen soll. Dementsprechend wird bei dem im Zeitabschnitt Λ T2500 auftretenden Arbeitsspiel die Umspeicherung von Daten aus den Zwischenregistern in die aktiven Register, die beim Arbeitsspiel von Fig. 56 erst in Spalte 2800 erfolgte, bereits in Spalte 2300 vorgenommen. In ähnlicher Weise wird auch die Umspeicherung der Endpunkt-Koordinaten beim Arbeitsspiel nach Fig. 54 bereits in Spalte 3800 des Zeitabschnittes A T2500 vorgenommen, während sie bei einem Übergang in Zoneß erst in Spalte 3300 de? Zeitabschnittes A T2501 erfolgte, wie das Arbeitsspiel von Fig. 57 zeigt.
Da die Umspeicherung von Daten aus den Zwischenregistern in die aktiven Register bei einen Übergang in Zone A (Fig. 53 und 54) einen halber Zeitabschnitt Λ T früher erfolgen soll als bei einen übergang in Zone B (Fig. 55, 56 und 57), muß dem entsprechend auch der Blockende-Zähler 186' frühe weitergeschaltet werden. Auch dies zeigt ein Vergleicl der F i g. 53 und 54 mit F i g. 55, 56 und 57. So wire der Blockende-Zähler 186' bei einem in Zone A er
/10?
209
210
folgenden Übergang von zirkulär auf linear in den Spalten ^300 und #500 des im Zeitabschnitt Δ T2499 durchgeführten Arbeitsspiels (Fig. 53) von S3 aus 54, SS und S 6 sowie in Spalte ATOOO des im Zeitabschnitt Δ T2500 auftretenden Arbeitsspiels (F i g. 54)
' 2500
auf 57 geschaltet. Die für die Umspeicherung der Daten von den Zwischenregistern in die aktiven Register erforderliche Bedingung liegt also in dem durch die vierte Spalte »2300« dargestellten Zeit-Teilabschnitt des Arbeitsspiels von F i g. 54 vor, im Gegensatz zum Arbeitsspiel von F i g. 56, bei dem diese Bedingung erst in dem durch die neunte Spalte »2800« dargestellten Zeit-Teilabschnitt gegeben ist.
Als Folge der Umspeicherung der zur Geraden 635 gehörenden Zahl G vom Zwischenregister in das aktive Register erscheint auf dem Ausgang LlN des dem aktiven Register 105' G zugeordneten Bahnform-Indikators 106' ein Signal, wodurch die Berechnung des Makrobewegungswertes Δ X in Spalte* 400 des im Zeitabschnitt JT2500 auftretenden Arbeitsspiels nach der linearen Interpolationsgleichung Δ X -I- Q vorgenommen wird. Außerdem werden bei dieser Berechnung infolge der Umspeicherung von / und Q aus den Zwischenregistern in die aktiven Register die zur Geraden 635 gehörenden Zahlen benutzt. Das gleiche gilt auch für die Berechnung des Makrobewegungswertes Δ Y, die in der letzten Spalte des Arbeitsspiels erfolgt.
Um die Endpunkt-Koordinaten XEP und YEP im Zeitabschnitt Δ T2500 von den Zwischenregistern in die aktiven Register umzuspeichern, wird der Blockende-Zähler 186' in Spalte 2300 des Arbeitsspiels von Fig. 54 von 57 auf 58 gestellt. Durch das Auftreten eines Signals auf dem Ausgang 58 des Zuordners 187' wird das System in die Betriebsstufe 3 umgeschaltet, worauf als Folge dieser Umschaltung die zur Umspeicherung der Endpunkt-Koordinaten aus den Zwischenregistern in die aktiven Register erforderlichen Operationen ausgeführt werden. Diese Operationen erfolgen in den Programmschlitten 3835 ... 3837 und stehen in Tabelle XI. Im Anschluß daran wird der Blockende-Zähler 186' von 58 auf 59 weitergeschaltet. Durch diese Weiterschaltung tritt auf dem Ausgang 59 des Zuordners 187' ein Signal auf, wodurch der Lochstreifenleser 41' im Programmschritt 991 (vgl. Tabelle VII, Spalte X 900) eingeschaltet wird. In den folgenden Programmschritten erfolgt dann — wiederum unter dem Einfluß eines Signals am Ausgang 59 des Zuordners 187' — die Weiterschaltung des Blockende-Zählers 186' von 59 über S10... 516 auf 51. Somit wird dann im nächsten Zeitabschnitt A T2501 ein normales lineares Arbeitsspiel nach F i g. 46 ausgeführt.
Wie zu ersehen ist, werden die Endpunktannäherungs-Prüfungen bei Übergängen von zirkulär auf linear stets nur im ersten der Übergangsspiele durch geführt, gleichgültig, ob der Übergangspunkt in Zone A oder B liegt. So sind diese Prüfungen bei den für einen Übergang in Zone B geltenden Übergangsspielen nach Fig. 55, 56 und 57 in den Übergangsspielen von Fig. 56 und 57 ebensowenig aufgeführt wie bei dem zweiten (F i g. 54) der für einen Übergang in Zone A geltenden Übergangsspiele. Diese Endpunktannäherungs-Prüfungen fallen ganz einfach deshalb weg, weil die nochmalige Durchführung dieser Prüfungen in den folgenden Ubergangsspielen nicht mehr erforderlich ist, sobald die Annäherung des programmierten End- oder Ubergangspunktes XCEP/ YCEP im ersten Übergangsspiel gemeldet wird. Hervorgerufen wird diese in allen Übergangsspielen (mit Ausnahme des ersten) auftretende Unterbrechung der Endpunktannäherungs-Prüfungen dadurch, daß das System bei einem Übergang von zirkulär auf linear — gleichgültig, ob der Übergangsdruck dabei in Zone A oder 8 liegt — im ersten Übergangsspiel aus der Betriebsstufe 1 umgeschaltet wird, wenn der Blockende-Zähterl86' auf 55 gestellt wird (vgl. Fig. 53 und
ίο 55). Bekanntlich muß der Zähler auf 51, 52 oder 53 stehen, wenn das System in Betriebsstufe 1 arbeiten soll. Wie ferner aus der vorhergehenden Beschreibung der Endpunktannäherungs-Prüfungen in Verbindung mit Tabelle IX noch bekannt ist, muß das System in Betriebsstufe 1 arbeiten, wenn diese Prüfungen durchgeführt werden sollen. Daraus ergibt sich also, daß die Endpunktannäherungs-Prüfungen nur im ersten Übergangsspiel durchgeführt und erst im ersten nach den Übergangsspielen auftretenden normalen linearen Arbeitsspiel wieder aufgenommen werden.
Wie eine Betrachtung der F i g. 48, 51 und 52 zeigt, erfolgt diese Aussetzung der Endpunktannäherungs-Prüfungen auch bei den Übergangsspielen von linear auf zirkulär.
G. Mögliche Maßnahmen zur Abwandlung der beiden Systeme
Bei der vorstehenden Beschreibung von zwei Systemen zur Durchführung der Interpolation wurde davon ausgegangen, daß zur Bearbeitung des Werkstückes das Werkzeug allein verfahren wird. Von dieber Annahme wurde hier nur deshalb ausgegangen, um die Beschreibung zu vereinfachen. Praktisch könnte man auch ebensogut annehmen, daß nicht das Werkzeug, sondern das Werkstück auf einer oder mehreren Bewegungsachsen verfahren wird. Natürlich müßte in einem solchen Fall die Bewegung des Werkstückes auf seiner Bewegungsachse (oder Achsen) dann genau entgegengesetzt zu der Bewe-
gung des Werkzeuges auf dieser Achse erfolgen. Dies läßt sich auf verschiedene Art bewerkstelligen. Zum Beispiel könnte man im Lochstreifen die auszuführenden Bewegungen so darstellen, als ob ailein das Werkzeug verfahren werden soll, um dem stationären
Werkstück die entsprechende Form zu geben. Diese Weginformation wird dann genauso verarbeitet, wie zuvor beschrieben wurde, doch wird man den Regelkreis der Bewegungsachse, auf der das Werkstuck verfahren werden soll, dann so schalten, daß sich das Werkstück gegenüber der ursprünglichen Bewegung des Werkzeuges auf dieser Achse genau entgegengesetzt bewegt. Bei dem ersten hier beschriebenen Ausführungsbeispiel brauchte man zu diesem Zweck lediglich die Eingangsleitungen zum Phasenschieber
531 von Fig. 9a miteinander zu vertauschen, um das Vorzeichen des Rückführungssignals umzukehren, sowie die Anschlüsse der Ankerwicklung des Stellmotors 21 umzupolen, so daß der Motor in der anderen Richtung umläuft. Die gleichen Änderungen könnten auch am zweiten, in F i g. 40 gezeigten Ausführungsbeispiel des Systems vorgenommen werden.
Man könnte aber auch die vom System durchzuführenden Berechnungen in einer für den Fachmann naheliegenden Weise so modifizieren, daß die Bewegung aus ausgewählten Bewegungsachsen in umgekehrter Richtung erfolgt, ohne dabei Änderungen an den Regelkreisen vornehmen zu müssen. In der Tat ist es allgemein üblich, numerische Steuerungen mit
211
Schaltern zur Umkehrung der Bewegungsrichtung auf den Achsen auszustatten, um auf diese Weise die Herstellung eines »Links«teils nach für ein »Rechtseteil programmierten Daten zu ermöglichen.
H. Schlußbetrachtungen
In der vorstehenden Beschreibung wurde eine Interpolationseinrichtung beschrieben, mit der aus Datenblöcken, die aufeinanderfolgende Wegstücke darstellen, ein zyklischer Fluß numerischer Daten gebildet wird. Die so gewonnenen Daten stellen eine unglaublich große Anzahl von extrem dicht nebeneinanderliegenden Punkten auf diesen Wegstücken dar. Beschrieben wurden ferner zwei Systeme, mit denen sich die Interp-'ation rasch und automatisch durchführen läßt, unter Benutzung eines einzigen Zeitmultiplex-Rechners, dessen Einsatz durch die regelmäßige Wiederkehr der erforderlichen Berechnungen ermöglicht wird.
212
Wesen und Eigenschaften der offenbarten Interpolationssysteme wurden an Hand der Daten erläutert, die für ein typisches Wegstück erzeugt werden. Solch ein Wegstück kann beispielsweise eine 6 Zoll lange Gerade sein, die auf Magnetband von einem sechs Zahlen enthaltenden Datenblock dargestellt wird. Nimmt man an, daß die gewünschte Bewegung auf diesem 6 Zoll langen Wegstück mit einer Geschwindigkeit von 1 Zoll pro Minute erfolgt, so werden zur Ausführung des Wegstückes insgesamt 6 Minuten benötigt. In dieser Zeit werden für jede Bewegungsachse, auf der die Bewegung entlang dem Wegstück erfolgt, der Reihe nach 180 000 Positionen, also jede Millisekunde eine Position, erzeugt. Das gleiche gilt auch für die Beschreibung von Kreisbogen. Die beiden Systeme ermöglichen ferner einen geschmeidigen Übergang von einem Wegstück auf das nächste, gleichgültig, ob aufeinanderfolgende Wegstücke die gleiche Form haben oder nicht.
Inhaltsverzeichnis
Spalte
Beschreibungseinleitung 5
Beschreibung der Zeichnungen 7
A. Die Werkzeugmaschine als Beispiel 12
B. Allgemeine Betrachtungen über Grundlagen und Methoden der numerischen Steuerung 13
1. Punkt- oder Bahnsteuerung 13
2. Bahnsteuerung nach der vorliegenden Erfindung 14
3. Berechnung von Makro- und Mikrobewegungen 16
a. Erzeugung von Geraden 16
b. Erzeugung von Kreisbogen 20
4. Das erfindungsgemäße System 24
5. Wirkungsweise des in Fig. 7 in allgemeiner Form dargestellten Systems .. 27
C. Ausführliche Beschreibung der Erzeugung von Geraden nach dem simultanen Interpolationsverfahren 32
1. Beschreibung des Systems 32
a. Zentrales Taktgebersystem 32
1) Erzeugung des Digitalzyklus .. 32
2) Erzeugung von Auftastimpulsen, um sicherzustellen, daß der vom Digitalzyklusgenerator erzeugte Zahlenzyklus nur so lange ausgewertet wird, wie die Zahlen-Stände des Generators stabil sind 34
3) Erzeugung einer Grundreihe von Programmschritten 36
4) Erzeugung weiterer Programmschrittreihen 38
5) Betriebsstufenwähler 41
6) Erzeugung eines Bezugssignals
für die Regelkreise 43
Spalte
b. Lochstreifenleser und Zwischenregister
c. Aktive Register
d. Beispiel eines Zeitmultiplex-Ziffernrechners
e. Bahnform-Indikator für laufendes Wegstück
f. Programmtoranordnung (PGA) ...
Arbeitsweise des Systems beim Erzeugen einer Geraden
a. Arbeitsschritte, die vor der Ausführung der ersten Makrobewegung auf einem linaren Wegstück ausgeführt werden, um Makrobewegungswerte
AX und Δ Y zu bilden
1) Übertragung der das nächste Wegstück beinhaltenden Daten von den Zwischenregistern in die aktiven Register (Tabelle I)....
2) Umwandlung der in die aktiven Register gebrachten Daten in Makro- und Mikrobewegungswerte
a) Multiplikation / · Q und Abtrennen desRestes (Tabelle II)
b) Umschalten auf Betriebsstufe 1
b. Neuberechnung der Makro- und Mikropositionen mit Hilfe von Makro- und Mikrobewegungen (Tabelle III)
c. Geometrische Grundlagen der Punktvorverlegung zwecks Ermittlung der Endpunktannäherung (Makrobewegungen werden korrigiert, um den Endpunkt genau anzufahren)
1) Allgemeine Betrachtungen
213
214
Spalte Spalte
2) Zwei Endpunktannäherungs-Prüfungen, mit denen das Auftreten und das Vorzeichen eines durch Punktvorverlegung berechneten Überlaufs ermittelt wird
3) Erste Endpunktannäherungs-Prüfung
4) Zweite Endpunktannäherungs-Prüfung
5) Berechnung von korrigierten Makrobewegungen Δ X' und A Y' für einen großen Überlauf ....
6) Berechnung von korrigierten Makrobewegungen A X" und Δ Y" für einen kleinen Überlauf
7) Zusammenfassung und Darstellung in Begriffen der Datenverarbeitung
d. Datenverarbeitungsoperationen, die vom erfindungsgemäßen System bei der Punktvorverlegung (Endpunktannäherungs-Prüfung) sowie bei der Korrektur der Makrobewegungen ausgeführt werden
1) Arbeitsspielfolge beim Beschreiben einer Geraden
2) Datenverarbeitungsoperationen, die zur Ermittlung eines Überlaufs ausgeführt werden
a) Bestimmen der schnellen Bewegungsachse
(Tabelle IV) 93
b) Punktvorverlegung und
Durchführung der ersten Endpunktannäherungs-Prüfung
c) Zurückverlegung des vorverlegten Punktes um eine halbe Makrobewegung und Durchführung der zweiten Endpunktannäherunes-Prüfune (Tabelle IVa) Γ 7..
3) Umschaltung des Steuerungssystems in die Betriebsstufe 2 bei Ermittlung eines großen Überlaufs
4) Datenverarbeitungsoperationen, die zum Berechnen korrigierter Makrobewegungen ausgeführt werden (Tabelle V)
5) Umschaltung des Systems in die Betriebsstufe 3 zwecks Ausführung korrigierter Makrobewegungen in anschließenden Arbeitsspielen
6) Arbeitsweise des Systems in Betriebsstufe 3
7) Umschaltung des Systems auf die Betriebsstufe 4 im Anschluß an die Ausführung des neunten Paares korrigierter Makrobewegungen
8) Umschaltung des Systems von der Belriebsstufe 1 auf die Stufe 2 bei Ermittlung eines kleinen Überlaufs
D. Ausführliche Beschreibung der Erzeugung von Kreisbogenstücken nach dem alterniercnd-zirkularen Interpolationsverfahren
1. Grundlagen
a. Interpolieren unter der Annahme, daß die Komponenten von zwei Radiusvektoren gegeben sind ....
b. Interpolieren unter der Annahme, daß nur die Komponenten von einem Radiusvektor gegeben sind..
2. Altemierend-2:irkulares Interpolieren
mit dem System von F i g. 9
a. Allgemeines
b. Format der Anfangsinformation
für ein Kreisbogenstück
c. Berechnune aufeinanderfolgender Größen Ι,Ί, ΔΧ und AY ". 1.10
d. Datenverarbeitungsoperationen, die vor der Erzeugung von ein Kreisbogenstüc'k darstellenden Signalen durchgeführt werden
e. Reale Darstellung der im Anfangsstadium eines Rechtsbogens ausgeführten Makro- und Mikrobewcgungcn
f. Datenverarbeitungsoperationen, die vom System in Betriebsstufe 1 beim Beschreiben eines Kreisbogens ausgeführt werden
1) Infolge alternierendet Interpolation ändern sich die Daten für die Y-Achse, die zur Neuberechnung der im Register 119 YSC stehenden Mikroposition benutzt werden, in der Mitte eines Arbeitsspiels
2) Modifizierung des ncuberechnctcn Makropositionswertes YCF unter Benutzung des neuen Makrobewegungswertes A Y (Tabellen VI und VIa)
3) Berechnung des neuen Makrobewegungswertes .1Y
g. Besondere Vorteile einer zweistufigen Interpolation beim Beschreiben von Kreisbogen
h. Beenden des Zirkularen Wegstückes
1) Makrobewegungen sind nicht korrigiert, so daß der Endpunkt nicht unbedingt am Ende eines Arbeitsspiels erreicht wird ....
2) Feststellen der Endpunktnähe in beiden Bewegungsachsen erforderlich
3) Ermittlung der Endpunktnähe in der langsamen Bewegungsachse
215
Spalte
4) Feststellen, ob mit einem Überfahren des programmierten Endpunktes in der schnellen Bewegungsachse zu rechnen ist ...
5) Typische Arbeitsspiele zur Beendigung eines Kreisbogenstückes
i. Datenverarbeitungsoperationen, mit denen ein Überlauf durch Ermittlung der Endpunktnähe in beiden Bewegungsachsen festgestellt wird
1) Bestimmen der schnellen Bewegungsachse
2) Ermitteln der Endpunktnähe auf
der langsamen Bewegungsachse
3) Ermitteln der Endpunktnähe auf
der schnellen Bewegungsachse
j. Datenverarbeitungsoperationen, die die Umschaltung des Systems von Betriebsstufe 1 auf Stufe 4 betreffen
k. Warum und wie die das nächste Wegstück darstellenden Daten modifiziert werden
1. Datenverarbeitungsoperationen, die die Modifizierung der das nächste Wegstück darstellenden Daten betreffen
m. Umschaltung des Systems auf Betriebsstufe 1 zwecks Ausführung des nächsten Wegstückes
E. Ausführliche Beschreibung eines Regelkreises zur Ausführung eines Wegstückes mit Hilfe von interpolierten Mikropositionswerten
F. Lineare und zirkuläre Interpolation nach dem alternierenden Verfahren
1. Einleitung
2. Grundsätzliche bauliche Unterschiede zwischen beiden Systemen
a. Betriebsstufcnwähler des Zeitbasis-
und Taktgebersystems
b. Speicherung des Endpunktes auf der langsamen Bewegungsachse
c. Register YCPR
d. Zusätzliche Register XMP und YMP zur Speicherung von Makropositionswerten in Maschinenkoordinaten 216
Spalte
e. Zusatzregister 158
3. Grundsätzliche Unterschiede in der Arbeitsweise
158
a. Lineare Interpolation nicht simultan, sondern alternierend 158
b. Beim Übergang von einem Wegstück auf das nächste werden weder an den Makrobewegungen noch am nächsten Datenblock Korrekturen vorgenommen 159
c. Umgekehrte Zeitbeziehung zwischen den Makrobewegungen AX und A Y und dem Zeitabschnitt AT 159
d. Neuberechnung der Makropositionen XCP und YCP erfolgt zeitversetzt (alternierend) 160
e. Operationen zur Durchführung der Punktvorverlegung in der Y-Achse unterscheiden sich von denen zur Durchführung der Punktvorverlegung in der X-Achse 160
4. Arbeitsweise des zweiten Systems .... 164 a) Allgemeiner Überblick (Tabellen
VIT, VIII, IX, X, XI) 164
b. Beschreiben einer Geraden 169
1) Allgemeines 169
2) Zweistufige Punktvorverlegung
auf beiden Bewegungsachsen .. 171
3) Berechnung von Makrobewegungen AX undAY 175
4) Neuberechnung der Mikropositionen XSC und YSC 178
5) Neuberechnung der Makroposiüonen XCP und YCP 180
c. Beschreiben eines Kreisbogenstückes 182
d. Übergang von einer Geraden auf einen Kreisbogen 186
1) Übergang soll in Zone A erf öl gen 186
2) Übergang soll in Zone B erfolgen 195
e. Übergang von einem Kreisbogen
auf eine Gerade 204
1) Übergang soll in Zone B erfolgen 204
2) Übergang soll in Zone A erfolgen 207
G. Mögliche Maßnahmen zur Abwandlung der beiden Systeme 210
H. Schlußbetrachtungen 211
Hierzu 76 Blatt Zeichnungen
509 507/40

Claims (15)

Patentansprüche:
1. Schaltungsanordnung zur numerischen Steuerung der Bewegung eines verstellbaren Organs längs einer Bahnkurve, deren Verlauf durch in einem abtastbaren Aufzeichnungsträger zusammen mit die jeweils gewünschte Verstellgeschwindigkeit beinhaltenden numerischen Daten eingespeicherten Folgen der digitalen Koordinatenwerte von Bahnpunkten vorgegeben ist, durch Ermittlung der digitalen Koordinatenwerte von zwischen den eingespeicherten Bahnpunkten liegenden Zwischenpunkten (Makropositionspunkte), die den den einzelnen Verstellungsrichtungen zugeordneten, den Unterschied zwischen den die jeweilige Soil- und IST-Stellung des verstellbaren Organs darstellenden digitalen Koordinatenwerte zur Steuerung entsprechender Servoantriebe auswertenden Regelkreisen zugeleitet werden, insbesondere zur numerischen Steuerung der Bewegung des Werkzeug- oder Werkstückträgers einer Werkzeugmaschine, dadurch gekennzeichnet, daß neben den die im Aufzeichnungsträger (37, Fig. 91) eingespeicherten Koordinatenwerte (XCEP, YCEP) von Bahnpunkten und neben den die jeweils ermittelten digitalen Koordinatenwerte (XCP, YCP) von Makropositionspunkten aufnehmenden und zum Vergleich mit den entsprechenden Koordinatenwerten der vom verstellbaren Organ tatsächlich erreichten Bahn- und Makropositionspunkte bereitstellenden Registern (95, 97 bzw. 117, 115; Fig. 7a/7c) weitere Register (99, 101; F i g. 7 c) zur Aufnahme und Bereitstellung der Koordinatenwerte der gegenseitigen Abstände (/, /) aufeinanderfolgender Bahnpunkte vorhanden sind und daß die die Ein- und Ausgänge der erwähnten Register mit den Ein- und Ausgängen eines hinsichtlich seiner Rechnerfunktion mit Hilfe einer Funktionssteuerung (55; Fig. 7a) einstellbaren Digitalrechners (53; Fig. 7a) verbindenden Gatterschaltungen (Lesetore, Schreibtore) durch einen, feste Folgen gleich langer Zeitabschnitte (AT) liefernden Zeittaktgeber (63; F i g. 7 a) so gesteuert werden und die Funktion des Rechners (53; Fig. 7a) durch eine zeittaktabhängige Programmsteuerung (69; Fig. 7c — 67; Fig. 7b — 55; Fig. 7a) so eingestellt wird, daß in jedem Zeitabschnitt (A T) die Koordinatenwerte (XCEP. YCEP) eingespeicherter Bahnpunkte und des Abstandes zweier aufeinanderfolgender Bahnpunkte voneinander, die die jeweilige Verstellgeschwindigkeit beinhaltende Information (Q) sowie eine die jeweilige Kurvenform beinhaltende Information (G; Fig. 4) in den Rechner gelangen und durch diesen zur Ermittlung der Koordinatenwerte der in jedem der Zeitabschnitte (A T) durch das verstellbare Organ zu erreichenden Makropositionspunkte der vorgegebenen Bahnkurve ausgewertet werden.
2. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Ermittlung der digitalen Koordinatenwerte (XCP, YCP) der zwischen zwei aufeinanderfolgenden, im Aufzeichnungsträger mit ihren Koordinatenwerten eingespeicherten Bahnpunkten liegenden Makropositionspunkte durch eine in jedem der Zeitabschnitte (A T) erfolgende Addition der in diesem Zeitabschnitt ermittelten Koordinatenwerte (Ax, Ay) des Abstandes zweier aufeinanderfolgender Makropositionspunkte zu den Koordinatenwerten eines eingespeicherten Bahnpunktes bzw. eines durch eine solche Addition in den vorhergehenden Zeitabschnitten (A T) bereits ermittelten Makropositionspunktes erfolgt.
3. Schaltungsanordnung nach den Ansprüchen 1 und 2, dadurch gekennzeichnet, daß im Aufzeichnungsträger blockweise zusammen mit den Koordinatenwerten eines Bahnpunktes (XCEP, YCEP) die Koordinatenwerte (/, /) des Abstandes (D) dieses Bahnpunktes zum folgenden Bahnpunkt, die durch den Zeittaktgeber festgelegte Zeitspanne (A T) sowie die für die Bewegung des Organs von dem betreffenden Bahnpunkt zum folgenden Bahnpunkt vorgesehene Verstellgeschwindigkeit (V) eingespeichert sind und jeweils vor Erreichen des betreffenden Bahnpunktes durch das verstellbare Organ ausgespeichert und im Zwischenspeicher (47A747 Y, 47// 47/; XlQIXlG; Fig. 7d) übertragen werden, aus denen die Informationen in die im Zuge der Verarbeitung der Informationen des vorangehenden Datenblockes frei werdenden, über die Gatteirchaltungen mit den Ein- und Ausgängen des Rechners (53; Fig. 7a) zusammenschaltbaren Register (95/97; 99/101; 103/105; Fig. 7c) übertragen werden.
4. Schaltungsanordnung nach den Ansprüchen 1 bis 3, dadurch gekennzeichnet, daß der Rechner zur Durchführung folgender Rechenoperationen geeignet ist:
AX = /
AY = /
AX = /
A Y =-- J
V AT D V AT D V AT R V ■AT
wobei AX und AY die Koordinaten werte der Abstände zweier aufeinanderfolgender Makropositionspunkte, V, die für das Durchfahren der Bahnkurve zwischen zwei aufeinanderfolgenden Bahnpunkten vorgesehene Geschwindigkeit, A T die durch den Zeittaktgeber vorgegebene feste Zeitspanne, D den Abstand zwischen zwei aufeinanderfolgenden Bahnpunkten, / und / die Koordinatenwerte dieses Abstandes und R den Radius eines zwischen zwei aufeinanderfolgenden Bahnpunkten verlaufenden Kreisbogens digital darstellen.
5. Schaltungsanordnung nach den Ansprüchen 1 bis 4, dadurch gekennzeichnet, daß im Aufzeichnungsträger die Größen V, A T. D und R zu den numerischen Weiten
V-AT D
13 48
Q =
V-AT R
zusammengefaßt sind und in dieser Form in hierfür vorgesehene Zwischenspeicher (47Q; Fig. 7d) und Register (103; Fig. 7c) eingespeichert werden.
6. Schaltungsanordnung nach Anspruch 1, gekennzeichnet durch Register (121, 119; Fig. 7a) zur Aufnahme der digitalen Koordinatenwerte von zwLchen zwei aufeinanderfolgenden Makropositionspunkten in stets gleicher Anzahl vorgesehenen zusätzlichen Zwischenpunkten (Mikropositionspunkie), wobei die Berechnung dieser Koordinatenwerte (XSC, YSQ mittels des Rechners (53; Fig. 7a) durch Teilung der digitalen Koordinatenwerte (Δ X, Δ Y) der Abstände zweier aufeinanderfolgender Makropositionspunkte durch einen festen Teiler (N) und eine in entsprechenden Zeitabständen (-jA erfolgende laufende Addition dieser geteilten digitalen Koordinatenwerte
ΙΔΧ Δ Y\ \ N ' Nj
zu den Koordinatenwerten des davorliegenden Makropositionspunktes bzw. des jeweils davorliegenden Mikropositionspunktes erfolgt und daß Steuereingänge der diese Register (121, 119; (F i g. 7 a) mit den Ein- und Ausgängen des Rechners (53; Fig. 7a) sowie den die Koordinatenwerte der Mikropositionspunkte (XSC, YSC; Fig. 7a) zur Steuerung der Regelkreise (75, 77; Fig. 7a) verbindenden Gatterschaltungen an einen die erwähnten Zeitabstände i-w-)1 liefernden Ausgang des Zeittaktgebers angeschlossen sind.
7. Schaltungsanordnung nach Anspruch 6, dadurch gekennzeichnet, daß der Teiler (N) die Zahl 10 oder eine ganzzahlige Potenz von 10 ist.
8. Schaltuugsanordnung nach den Ansprüchen 1 bis 6, gekennzeichnet durch eine derartige Steuerung der die Register (103, 105; 99, 101; 95, 97; Fig. 7c. 113, 111; 109, 107; Fig.7K 117, 115; 121, 119; Fig. 7a) mit den Ein- und Ausgängen des Rechners (53; Fig. 7a) sowie den Regelkreisen (75, 77; Fig. 7a) zur Steuerung der Servoantriebe zusammenschaltenden 5<> Gatterschaltungen, daß die Berechnung der Werte A χ mit der Berechnung der Werte Δ y abwechselt, wobei während jeder Zeitspanne Δ Τ jeweils nur ein Wert Δ χ oder Ay berechnet wird, und daß die Zuführung der Koordinatenwerte (XSC, YSC) der Mikropositionspunkte zu den Regelkreisen
Λ Τ
ebenfalls abwechselnd, jedoch im Rhythmus—^- erfolgt, wobei N der Teiler ist, durch den die Koordinatenwerte (AX, AY) des Abstandes zweier aufeinanderfolgender Makropositionspunkte zur Ermittlung der Koordinatenwerte (XSC, YSC) der Mikropositionspunkte geteilt werden.
9. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß die zwischen zwei Bahnpunkte fallenden Zeitabschnitte (AT) in zwei Gruppen aufgeteilt sind, die Zahl der zur zweiten Gruppe zählenden Zeitabschnitte unabhängig zur Gesamtzahl der Zeitabschnitte stets gleich ist und während der zur ersten Gruppe zählenden Zeitabschnitte durch den Rechner (53; F i g. 7 a) zu den in einem solchen Zeitabschnitt ermittelten Koordinatenwerten des jeweils nächsten Makropositionspunktes das Produkt aus der Zahl der zui zweiten Gruppe gehörenden Zeitabschnitte und den Koordinatenwerten des Abstandes zweier aufeinanderfolgender Makropositionspunkte zur rechnerischen Ermittlung der Koordinatenwerte des folgenden Bahnpunktes hinzuaddiert wird.
10. Schaltungsanordnung each Anspruch 9, dadurch gekennzeichnet, daß im letzten Zeitabschnitt der ersten Gruppe sowohl die in diesem Zeitabschnitt rechnerisch ermittelten als auch die im Aufzeichnungsträger eingespeicherten Koordinatenwerte des nächstfolgenden Bahnpunktes im Rechner miteinander verglichen werden und in Abhängigkeit von dem jeweiligen Unterschiedsbetrag dieser Koordinatenwerte eine Korrektur durch Änderung der Koordinatenwerte des Abstandes zwischen zwei aufeinanderfolgenden Makropositionspunkten in der Weise erfolgt, daß durch Addition der während der folgenden Zeitabschnitte der zweiten Gruppe aneinander zu reihenden gegenseitigen Abstände zweier aufeinanderfolgender Makropositionspunkte die Koordinatenwerte des folgenden Bahnpunktes erreicht werden.
11. Schaltungsanordnung nach den Ansprüchen 9 und 10, dadurch gekennzeichnet, daß in derjenigen Zeitspanne (A T990; F i g. 17), in der sich beim Vergleich der errechneten und der im Aufzeichnungsträger eingespeicherten Koordinatenwerte eines Bahnpunktes in der jeweiligen Bewegungsrichtung des verstellbaren Organs ein Überfahren des betreffenden Bahnpunktes durch dieses Organ ergibt, die Koordinatenwerte des der betreffenden Zeitspanne zugeordneten Makropositionspunktes und die Koordinatenwerte des nächsten Bahnpunktes in den Rechner gegeben werden und zur Ermittlung korrigierter Koordinattnwerte der nachfolgenden Makropositionspunkte der Differenzbetrag dieser Koordinatenwerte durch die Zahl der Zeitabschnitte der zweiten Gruppe geteilt wird.
12. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß bei einem in einem 2-Koordinatensystem (X, Y) ablaufenden Bewegungsvorganges des verstellbaren Elementes der Zeittaktgeber (63; Fig. 7a) zwei Folgen gleich langer, sich jeweils um die halbe Dauer eines Zeitabschnittes (Δ T) überlappender Zeitabschnitte liefert und diese Folgen je einer Koordinatenrichtung in der Weise zugeteilt sind, daß während der einen Folge (ATx) die Ermittlung der Abszissenwerte der Makropositionspunkte und während der anderen Folge (A T2) die Ermittlung der Ordinatenwerte der gleichen Makropositionspunkte oder umgekehrt erfolgt.
13. Schaltungsanordnung nach den Ansprüchen 1 und 12, dadurch gekennzeichnet, daß die Zuleitung der Ordinaten- und Abszissenwerte der Makropositionspunkte zu den Regelkreisen und die Steuerung der der Ordinaten- und Abszissenrichtung zugeordneten Servoantriebe ebenfalls
in unterschiedlichen, durch je eine der beiden Folgen gleich langer, sich überlappender Zeitabschnitte festgelegten Zeitpunkten erfolgt.
14. Schaltungsanordnung nach den Ansprüchen 1, 6, 8, 12 und 13, dadurch gekennzeichnet, daß innerhalb der einzelnen Zeitspannen (ATx) der ersten Folge N-mal die Ermittlung der Ordinaten- oder Abszissenwerte der Mikropositionspunkte und innerhalb der einzelnen Zeitspannen
numerischen Steuerung der Bewegung des Werkzeug- oder Werkstückträgers einer Werkzeugmaschine.
Es sind nun bereits Steuerungsanordnungen bekannt, bei denen für jede Bewegungsachse einer Werkzeugmaschine eine eigene Folge von in relativ gleichen Zeitabständen auftretenden Impulsen erzeugt wird, wobei jeder Impuls einer bestimmten Wegeeinheit zugeordnet wird. Infolge des extrem
(A T„) der zweiten Folge ebenfalls /V-mal die Er- io großen Geschwindigkeitsbereiches, der in den ein-
mittlung der jeweils anderen Koordinate der Mikropositionspunkte erfolgt und in der gleichen Zuordnung zu den Zeitspannen (A T1 oder Δ T2) den entsprechenden Regelkreisen zugeführt werden.
15. Schaltungsanordnung nach den Ansprüchen 1 bis 5, dadurch gekennzeichnet, daß die Speicherfähigkeit der die durch die Multiplikation Q ■ I bzw. Q · J ermittelten Koordinatenwerte
zelncn Bewegungsrichtungen erforderlich ist, sind Impulsfolgefrequenzen von Null bis zu einem Maximalwert notwendig, der, wenn die Verstellgeschwindigkeit beispielsweise 508 cm/Minute beträgt und für je einen Impuls ein Wegstück von 0,00254 cm vorgesehen ist, zu einer Impulsfolgefrequenz von 3311SkHz führt. Eine derartige Anordnung muß es also erlauben, alle möglichen Frequenzen zwischen
DE1948490A 1968-09-26 1969-09-25 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 Expired DE1948490C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US76283568A 1968-09-26 1968-09-26

Publications (3)

Publication Number Publication Date
DE1948490A1 DE1948490A1 (de) 1970-04-02
DE1948490B2 true DE1948490B2 (de) 1975-02-13
DE1948490C3 DE1948490C3 (de) 1975-09-25

Family

ID=25066140

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1948490A Expired DE1948490C3 (de) 1968-09-26 1969-09-25 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

Country Status (5)

Country Link
US (1) US3656124A (de)
JP (1) JPS507222B1 (de)
CA (1) CA961959A (de)
DE (1) DE1948490C3 (de)
GB (1) GB1289504A (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IT942654B (it) * 1971-09-30 1973-04-02 Olivetti & Co Spa Sistema di controllo numerico per il comando simultaneo di piu uten sili o assi di una o piu macchine utensili
BE790191A (fr) * 1971-12-01 1973-02-15 Gretsch Unitas Gmbh Assemblage de coin pour elements horizontal et vertical d'un chassis defenetre, de porte, ect.
US3909600A (en) * 1972-06-26 1975-09-30 Cincinnati Milacron Inc Method and apparatus for controlling an automation along a predetermined path
US3842330A (en) * 1972-08-09 1974-10-15 Giddings & Lewis Method and apparatus for numerical control of members independently movable along coincident axes
US4041287A (en) * 1976-09-08 1977-08-09 Giddings & Lewis, Inc. Final servo control in NC systems
US4509126A (en) * 1982-06-09 1985-04-02 Amca International Corporation Adaptive control for machine tools
US4914364A (en) * 1987-10-22 1990-04-03 Mitsubishi Denki Kabushiki Kaisha Numerical control apparatus
US5520077A (en) * 1994-01-26 1996-05-28 Lindstrom; Conrad B. Numerically controlled contouring head having translation of axial spindle movement into radial cutting edge movement
US7145300B2 (en) * 2003-05-05 2006-12-05 International Rectifier Corporation Multi-axis AC servo control system and method
US7180253B2 (en) * 2003-09-30 2007-02-20 Rockwell Automation Technologies, Inc. Method and system for generating multi-dimensional motion profiles
GB0525306D0 (en) * 2005-12-13 2006-01-18 Renishaw Plc Method of machine tool calibration
US8024068B2 (en) * 2006-08-04 2011-09-20 Hurco Companies, Inc. Machine tool control system
US8725283B2 (en) * 2006-08-04 2014-05-13 Hurco Companies, Inc. Generalized kinematics system
US8773427B2 (en) 2010-12-22 2014-07-08 Sony Corporation Method and apparatus for multiview image generation using depth map information

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL215849A (de) * 1956-11-15 1900-01-01
NL291454A (de) * 1959-12-24
GB1011221A (en) * 1961-03-02 1965-11-24 Emi Ltd Improvements relating to automatic control mechanisms

Also Published As

Publication number Publication date
CA961959A (en) 1975-01-28
DE1948490A1 (de) 1970-04-02
JPS507222B1 (de) 1975-03-24
DE1948490C3 (de) 1975-09-25
US3656124A (en) 1972-04-11
GB1289504A (de) 1972-09-20

Similar Documents

Publication Publication Date Title
DE2712169C2 (de) Verfahren zur Ausführung einer komplexen Bewegung durch einen Industrieroboter
DE2636148C2 (de) Verfahren zur Bahnsteuerung eines Elementes mittels linearer oder zirkularer Interpolation
DE2740507A1 (de) Verfahren zur programmierung eines programmsteuerbaren manipulators und dementsprechender manipulator
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
DE3046363C2 (de) Positionsregelsystem mit einer digitalen inkrementellen Messeinrichtung
DE3208435C2 (de) Steuerungsvorrichtung zum Führen eines Lichtbogenschweißautomaten
DE1538512C3 (de) Schaltungsanordnung zur numerischen Programmsteuerung der Stellantriebe mindestens zweier, jeweils längs einer zugeordneten Verstellachse verstellbarer Körper einer Werkzeugmaschine
DE2034374A1 (de) Steuereinrichtung fur eine Werkzeug maschine
DE1069750B (de) Anordnung zur digitalen Steuerung
DE1549438B2 (de) Schaltungsanordnung zur Eingabe numerischer Steuerungsdaten in eine Steuerungseinrichtung für mehrere Regelantriebe verstellbarer Vorrichtungen einer Arbeitsmaschine, insbesondere Werkzeugmaschine
DE2422281A1 (de) Verfahren und digital arbeitende einrichtung zum ausgleich der groesse eines schneidwerkzeugs einer numerisch gesteuerten maschine
DE1963237C3 (de) Numerische Programm-Steuervorrichtung mit Zeitmultiplexbetrieb
DE1966794A1 (de) Steuerungssystem
DE2338880A1 (de) Verfahren und vorrichtungen zur steuerung der beweglichen teile einer werkzeugmaschine durch ein numerisches umriss- oder punkt-fuer-punkt-steuerungssystem, wobei zwei teile der maschine unabhaengig voneinander entlang einer gemeinsamen achse bewegt werden koennen
DE2111889C2 (de) Numerische Regeleinrichtung für eine Werkzeugmaschine
DE2840033A1 (de) Verfahren und vorrichtung zur steuerung von motoren
DE2052161C3 (de) Schaltungsanordnung für eine Elektroerosionsmaschine zum Steuern der relativen Bewegung zwischen mindestens einer Elektrode und mindestens einem Werkstück
DE1549634B1 (de) Anordnung zur numerischen bahnsteuerung insbesondere bei einer werkzeugmaschine
DE1909475A1 (de) Im Serienbetrieb arbeitende Umlauf-Datenspeicher- und -verarbeitungseinrichtung
DE1563594C3 (de) Numerisch arbeitende Programmsteuerungsanordnung zur Stetigbahnsteuerung von Arbeitsmaschinen, insbesondere Werkzeugmaschinen
DE2430104A1 (de) Numerisches steuersystem
DE1549634C (de) Anordnung zur numerischen Bahnsteue rung, insbesondere bei einer Werkzeugma schine
DE1563596C3 (de) Positionierungseinrichtung für einen beweg ichen Teil einer Arbeitsmaschine, insbesondere Werkzeugmaschine
DE1138965B (de) Vorrichtung zur Durchfuehrung einer Interpolation oder Extrapolation
DE1513177B1 (de) Numerisch gesteuerte Vorrichtung zur Kurvenverfolgung,insbesondere durch ein Werkzeug

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
E77 Valid patent as to the heymanns-index 1977
8328 Change in the person/name/address of the agent

Free format text: WALLACH, C., DIPL.-ING. KOCH, G., DIPL.-ING. HAIBACH, T., DIPL.-PHYS. DR.RER.NAT. FELDKAMP, R., DIPL.-ING., PAT.-ANW., 8000 MUENCHEN