DE2214053A1 - Verfahren und Vorrichtung zum Steuern einer numerisch gesteuerten Werkzeugmaschine entlang einer Kreisbahn - Google Patents

Verfahren und Vorrichtung zum Steuern einer numerisch gesteuerten Werkzeugmaschine entlang einer Kreisbahn

Info

Publication number
DE2214053A1
DE2214053A1 DE19722214053 DE2214053A DE2214053A1 DE 2214053 A1 DE2214053 A1 DE 2214053A1 DE 19722214053 DE19722214053 DE 19722214053 DE 2214053 A DE2214053 A DE 2214053A DE 2214053 A1 DE2214053 A1 DE 2214053A1
Authority
DE
Germany
Prior art keywords
memory
values
product
contained
circle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE19722214053
Other languages
English (en)
Inventor
Ronnie Gene Mayfield Height Ohio Walters (V.StA.)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Allen Bradley Co LLC
Original Assignee
Allen Bradley Co 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 Allen Bradley Co LLC filed Critical Allen Bradley Co LLC
Publication of DE2214053A1 publication Critical patent/DE2214053A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method

Description

ALLEN-BRADLEY COMPANY, 1201 South Second Street, Milwaukee, Wisconsin 53204, U.S.A.
"Verfahren und Vorrichtung zum Steuern einer numerisch gesteuerten Werkzeugmaschine entlang einer Kreisbahn"
Die Erfindung betrifft ein Verfahren und eine Vorrichtung, insbesondere einen Sinus-Cosinus-Generator zum Erzeugen von Signalen, mit denen eine numerisch gesteuerte Werkzeugmaschine entlang einer Kreisbahn gesteuert werdertkann.
Es ist bekannt, daß Lösungen für die Differentialgleichung eines Kreises durch Näherung eines Integrals mit Hilfe endlicher Differenzen erzeugt werden können. Dies führt zu der als "serielles Differenzverfahren" bekannten Methode, die eine Lösung der folgenden (durch Euler1sehe Integration abgeleiteten) Differenzgleichung ist.
4 1/0784
(D-
i A X O
Y /
ι-*2 J °/
= Anfangsbedingung
Darin sind X und Y die Elemente des Vektors, der die "Lage" des Produktes zum Zeitpunkt i beschreibt. Die Konstante {Φ) bestimmt die Winkelgeschwindigkeit, die für (6££l) annähernd gleich der Rotation in rad pro Iteration ist.
Wenn («5) eine Potenz von zwei ist, kann diese Gleichung leicht durch einen seriellen, digitalen Differentil-Analysator (im folgenden als DDA bezeichnet) gelöst werden. Es läßt sich zeigen, daß durch dieses Verfahren dynamische Fehler (Approximationsfehler) hervorgerufen werden, durch die das System eine annhähernd elliptische Punktion erzeugt, für die im ungünstigsten Falle der Abstand von dem gewünschten Radius, wie er durch die Anfangsbedingungen bestimmt ist, durch
(2)
// E H = 1/2
gegeben ist. Darin ist (£) der maximale Fehler und (RQ) der Ausgangsradius.
Ein anderes bekanntes Verfahren zum Erzeugen einer Sinus-Cosinus-Funktion, die als parallele Differenztechnik bekannt ist., folgt aus einem ähnlichen Satz von Differenzgleichungen, nämlich
209841 /0784
-4
Xi
Y.
V*o/
= Anfangsbedingung
Die Veränderlichen in diesen Gleichungen haben dieselbe Bedeutung wie in dem oben bereits erläuterten Satz von Gleichungen» Auch in diesem Falle können wieders wenn (d) eine Potenz von zwei ist j, diese Gleichungen durch einen seriellen DDA leicht ausgerechnet werden» Die Parallel-Differenz führt zu einer etwas anderen Fehlercharakteristik dadurch, daß der Radius, vom Anfangsradius (R^) ausgehend, exponentiell ansteigt. Dies liegt daran, daß die Eigenwerte der charakteristischen Matrix größer sind als die Einheitsamplitude. Es kann gezeigt werden, daß für kleines (ύ) der Radius bei jeder Iteration um annähernd (Δ e) ansteigt, worin
ist. Der kumulative Fehler ergibt sich dann zu
e = 1/2
worin (t/At) die Gesamtzahl der Iterationen ist. Aus der Definition von (4) ergibt sich, darnach einer Rotation von einem rad der durch das Parallel-Verfahren erzeugte Fehler den maximalen, durch das serielle Differenzverfahren hervorgerufenen Fehler übersteigt. Hierbei ist selbstverständlich angenommen, daß (έ) in beiden Fällen gleich ist.
2 0 9 8 U 1 / 0 7 8
-ην 22U053
Es ist ersichtlich, daß bei beiden Verfahren eine Verringerung von (d) zu einer Verringerung des Fehlers führt. Bei einem Echtzeitverfahren, wie bei der Interpolation für eine Werkzeug- oder eine Zeichenmaschine, ist (At) die Periode zwischen zwei Iterationen. Mit dieser Definition kann die Winkelgeschwindigkeit bestimmt werden zu
In einer Echtzeitanwendung ist (ω) normalerweise die unabhängige Veränderliche und es ergibt sich so für die durch das serielle Verfahren und das Parallel-Verfahren .erzeugten Fehler :
(7) Serienfehler(max) = 1/2
(8) Parallelfehler = l/2uJÄt Rc
(nach einem rad)
Daher besteht, nachdem'(to) festgelegt ist, der einzig mögliche Wert einer Erhöhung der Genauigkeit in einer Verringerung von (At). In vielen Anwendungsfällen wird jedoch die erforderliche Iterationsgeschwindigkeit (1/At) unzulässig hoch.
Der Erfindung liegt daher die Aufgabe zugrunde, diese Nachteile der bekannten Verfahren zu beseitigen, ohne die Komplexität des erforderlichen Systems zu sehr zu erhöhen. Diese Aufgabe wird gelöst durch die in den Ansprüchen gekennzeichnete Erfindung/ die aus einem Verfahren und einer Vorrichtung zur Lösung der
209841/0784
2-2H053
Gleichungen
Xi+1 = Xi "φ (1/2e5xi ~ Yi> xY o gegeben = Y1 (1/24Y. - X1)
besteht. In den Gleichungen bedeuten
X Y
ο* ο die Ausgangspunkte,
XY ■
i* i die nach der ersten Iteration erreichten Punkte,
XY
i+1' i+1 die nach der nächsten Iteration erreichten Punkte, und
i> die Rotation in rad pro Iteration.
Die mit der Erfindung erzielten Vorteile bestehen insbesondere darin, daß, um eine vorgegebene Genauigkeit und Winkelgeschwindigkeit zu erreichen, die erforderliche Iterätionsgeschwindigkeit herabgesetzt werden kann und daß bei gleichem Aufwand wie bisher die Genauigkeit größer ist als bei den bisher verwendeten Vorrichtungen und Verfahren.
Ein Ausführungsbeispiel der Erfindung wird im folgenden an Hand der beigefügten Zeichnungen näher erläutert. Es zeigen :
Fig. 1 das Blockschaltbild eines Sinus-Cosinus-Generators gemäß der Erfindung, .
Fig. 2 das Blockschaltbild zusätzlicher, in dem Generator nach Fig. 1 erforderlicher Schaltungen und
20984 1./0784
22ΊΑ053
Fig. 3 ein Blockschaltbild, das die Anwendung der Erfindung in einem numerischen Steuerungssystem für eine Werkzeugmaschine zeigt.
Um die Wirkungsweise des Systems zu erläutern, sei zunächst seine mathematische Struktur kurz beschrieben. Für eine ideale Rotation ist es wünschenswert, die folgende Differenzgleiehung zu realisieren.
1+1
cosö
-sinö
sin©
cos9
Darin ist (Θ) genau die Rotation pro Iteration. Dieser Satz von Gleichungen ist, obwohl er genau ist, nicht praktisch für einen Funktionsgenerator mit endlichen Differenzen. Der Grund dafür ist, daß die in der HaIzLx enthaltenen Koeffizienten im allgemeinen rationale Zahlen sind. Es kann durch die Fehleranalyse gezeigt werden, daß die Genauigkeit der Koeffizienten in dieser Matrix für die Verringerung dynamischer Fehler von allergrößter Bedeutung ist.
Die Entwicklung eines genauen Systems hängt also von der Verwendung endlicher? präziser Koeffizienten ab, die so genau wie möglich den Koeffizienten der Gleichung (9) für einige (Θ) entsprechen. Dies läßt sich dadurch erreichen, daß man
ύ = sin θ
209841/078 4
22U053
einsetzt, voraus folgt
(11)
Yi+1
h -
Xi
Hiervon läßt sich dadurch vorteilhaft Gebrauch machen, daß man {</>} die unabhängige Variable seien läßt und sie in dem System durch ein endliches präzises Wort darstellt. Dies· ist das Äquivalent dazu, daß man das tatsächliche (Θ) möglichst eng zu dem gewünschten (Θ) wählt, so daß (6) genau durch eine endliche Wortlänge dargestellt werden kann. Dabei ist zu bemerken, daß für kleine (■<*) die Größen (Θ) und ύ) einander annähernd gleich sind. Diese annähernde Gleiciteit hat jedoch keinen Einfluß auf die Änderung des Radius mit der Zeit. Somit sind zwei Koeffizienten der Rotations-Matrix genau durch endliche Worte dargestellt. Der Wurzelausdruck hat jedoch noch keine praktische Form da er, selbst wenn er genau berechnet wird, auf endliche Genauigkeit gekürzt werden muß. Der Wurzelausdruck wird daher entsprechend dem binomischen Satz in eine Reihe entwickelt, woraus sich ergibt (
(12)
= l-l/2«52 -
Jedes der Glieder dieser Reihenentwicklung kann durch eine endliche Wortlänge dargestellt wenden,(da (i) ein endliches Wort ist). Es sei noch bemerkt, daß dann, wenn alle (ei) enthaltende
2Q9 841/Ö784
S 22U053
Glieder eliminiert werden, das Ergebnis im wesentlichen das eines parallelen DDA ist, wie er oben beschrieben wurde. Die große Verringerung des Approximationsfehlers durch die vorliegende Erfindung folgt aus der Hinzunahme eines oder mehrerer der Glieder der Gleichung (12), die (έ) enthalten. Darüber hinaus ist zu bemerken, daß die ersten drei dieser Glieder Koeffizienten enthalten, die Potenzen von zwei sind. Ist darüber hinaus (#) eine Potenz von zwei, so läßt sich eine extrem genaue serielle digitale Differentialanalyse dadurch ausführen, daß man die folgenden Gleichungen oder einen Teil von ihnen ausrechnet.
_ 9()Y p()Y _ρΌγ i+1 - xi - 2 Xi 2 Xi 2 Xi
Y. . γ ?-(2N+l)Y _ p-(4N+3)Y „ρ-(6Ν+4)γ -KL.
Yiti - Yi 2 Yi 2 Yi 2 Yi 2 xi
~N
mit ύ = 2
In diesem Fall ipt der Fehler nach einem rad Rotation (14) e = 5/128*7 RQ
Für den allgemeineren Fall läßt sich ein DDA konstruieren, für den (έ) keine Potenz von zwei ist. Hat man für (d) eine Wortlänge gewählt, die kürzer ist als die maximale Genauigkeit des Systems, so können eines oder mehrere der Glieder der Gleichung* (12) genau durch ein Wort der vollen Genauigkeit des Systems dar geetellt werden. Es sei zum Beispiel ein System mit 32 Bit Genau-
209841/0784
igkeit angenommen und mit einem durch 16 Bit dargestellten
In einem solchen Fall kann das zweite Glied der Gleichung 12 exakt mit der vollen Genauigkeit des Systems (32 Bit) dargestellt werden. In diesem Falle würden die Variablen (x;) und (yj) ebenfalls mit der Vollen Genauigkeit des Systems dargestellt. Dies führt zu einer äußersten Grenze für die Zahl der zusätzlichen Glieder, die noch berücksichtigt werden können. Der Grund dafür ist, daß abhängig von dem Exponenten von (d), ein Punkt erreicht wird, bei dem zusätzliche Glieder zu klein werden, um noch zu dem ersten Glied der Gleichung (12) (Einheit) in einem 32 Bit-Wort addiert , werden zu können. Selbst dann können jedoch zusätzliche Glieder der Gleichung (12) berücksichtigt werden, wenn der Exponent von (d) klein genug ist, um eine Addition innerhalb der definierten Wortlänge zu gestatten, und somit die Genauigkeit weiter zu steigern. ..·'"-"'■"
Von großer Bedeutung ist hier die Tatsache, daß sehr hohe Genauig* keiten erreicht werden können durch Verwendung eines DDA und zusätzlich dazu durch das Berücksichtigen eines oder mehrerer der Glieder der Gleichung 9 (solche die d enthalten). Es sei weiter darauf hingewiesen, daß die Koeffizienten der Gleichung (9) besonders geeignet sind, in einer binären Maschine berücksichtigt zu werden. Es sei weiter bemerkt, daß,wie dies an Hand der Gleichung (13) gezeigt wurde, eine große Verbesserung eines Systems, das
209841/Ö784
22UD53
konventionelle, serielle DDA verwendet, sich aus der Tatsache ergibt, daß vier der Glieder der Gleichung (12) von einem DDA verarbeitet werden können, der lediglich Verschiebungen und Additionen auszuführen braucht.
Es kann gezeigt werden, daß die von einem solchen System (Gleichungen 11 und 12) erzeugten dynamischen Fehler durch das Produkt des ersten Gliedes der Gleichung (12), das nicht verwendet wird, und (-Rά /ύ) angenähert werden kann. Darin ist (A) die Rotation vom Ausgangszustand in rad.
So beträgt z.B., wenn nur dap erste Glied der Gleichung (12), das («5) enthält, beibehalten wird, der Fehler nach einer Rotation von einem rad
(15) e = 1/8Φ3 R0.
Dieser Fehler ist bedeutend kleiner als der entsprechende von einem konventionellen seriellen oder parallelen. System für denselben Wert von (4) erzeugten Fehler. Um den Vergleich zu erleichtern, sei für (ω) (rf) eingesetzt, woraus sich nach einem rad ein Fehler von
(16) e = 33
ergibt.
In allen diesen Fällen ist
(17) * -WAt-OTl (Θ =
209841/0784
Setzt man in die Gleichung (13) anstelle von 2~ die Größe $ ein, und kürzt man die Gleichung dadurch, daß man Glieder außer den ersteh beiden und letzten fortläßt, so erhält man die folgenden Differenzgleichungen
Χχ+1 = X1 - rf (1/2CSX1 - Y1) X0, Y0 gegeben
Y1+1 = Y1 - Φ (1/2«ίΥ± + X1)
Man sieht, daß diese Gleichungen durch einen konventionellen DDA gelöst werden können, außer für die Hinzunahme eines zusätzlichen Gliedes. D.h., daß erste (d) enthaltende Glied in der Gleichung (12) ist mit eingeschlossen. Die Genauigkeit kann dadurch weiter gesteigert werden, daß man zusätzliche Glieder der Gleichung (12) in ähnlicher Weise aufnimmt; hier ist jedoch, um die Beschreibung zu vereinfachen, nur ein Glied aufgenommen worden.
Diese Gleichungen werden nun durch die das bevorzugte Ausfühnungsbeispiel der Erfindung bildende Schaltung gemäß Pig«, I gelöst.
Die Fig. 1 der Zeichnungen zeigt das Blockschaltbild dieser Schaltung. Die verschiedenen Einseischaltkreise dieser Schaltung werden nacheinander entsprechend den Ausgangssignalen einer Steuer- und Taktschaltung 10 betätigt. Diese Steuer- und Taktschaltung kann aus einem geeigneten Satz von Zählschaltungen bestehen, die von einer Taktschaltung gesteuert werden und die, jeine Impulsfolge von Tl bis T17 erzeugen.
Die X- und Y-Daten, die den Punkt bezeichnen, von dem aus die gewünschte Kurve erzeugt werden soll, werden von einer X-Datenquelle 12 und einer Y-Datenquelle 14 geliefert. Zum Zeitpunkt Tl werden zwei Schieberegister 16 und 18 wirksam gemacht und empfangen entsprechende Datenworte XA und YA von der X-Datenquelle und der Y-Datenquelle. Diese Worte können z.B. 32 Bit lang sein. Das Bit in der kennzeichnensten Bit-Position ist ein Vorzeichen-Bit. Das Bit in der nächsten kennzeichnensten Position ist das kennzeichnenste Bit für das Wort. Die Register sind entsprechend angeordnet.
Ein weiteres 32 Bit-Schieberegister 20 kann zum Zeitpunkt T2 ein weiteres 32 Bit langes Datenwort von der ^-Datenquelle 22 aufnehmen. Das Schieberegister 20 kann, wenn es erforderlich ist, nach rechts verschoben werden. Das Ausgangssignal dieses Registers sind dann das Vorzeichen-Bit und die am wenigsten kennzeichnenden 15 Bit des Eingangssignals; das am wenigsten kennzeichnende Bit von diesen ist stets gleich Null, ύ kann dargestellt werden als
,, . rad χ 232
Iteration ,
wobei die Bedingungen
2(32+1$) und ^ 10 4' Xo 2 ♦ Yo 2
einzuhalten sind.
Zum Zeitpunkt T3 verschieben die Register 16 und l8 ihre Inhalte um jeweils 1 Bit zur Zeit nach links, bis in dem 3I. Bit (MSB) eines der Register eine 1 erscheint. Die Schaltungsanordnung, mit
209841/0784
22U053
der dies bewirkt wird, ist in Fig. 2 dargestellt. Danach werden beim Erscheinen der Vjorderflanke des Taktes T4 beide Register um 1 Bit nach rechts verschoben. Dies eliminiert die Möglichkeit eines Überlaufes. Wenn dies gesehen3 ist, wir-d die resultierende Gesamtzahl der Verschiebungen durch die in Fig. 2 dargestellte Schaltung gezählt und als Normalisierungskonstante K gespeichert.
Ein in Fig. 2 dargestellter Zähler 90 wird eingestellt, um die Zählung K kurz nach T4 und vor T5 anzuzeigen.
Zum Zeitpunkt T5 werden mit der in Fig. 2 dargestellten Schaltung dem Schieberegister 20 Verschiebeimpulse zugeführt, die seinen Inhalt um einen Betrag nach rechts verschieben, der gleich der Normalisierungszählung ist.
Diese letztgenannte Operation beendigt die Einstellphase. Hiernach kann die erste Iteration beginnen.
Zum Zeitpunkt T6 werden Torschaltungen 24, 26, 28 und 30 geöffnet, um die ihren Eingängen zugeführten Zahlen zu ihren Ausgängen durch zulassen. Die Torschaltung 24 empfängt das Ausgangssignal des Schieberegisters 18 und führt es einer Addier/Subtrahier-Schaltung 32 zu. Die Torschaltung 26 empfängt das Ausgangssignal des Schie.-beregisters 16 und führt es einer Multiplizierschaltung 34 zu. Die Torschaltung 28 empfängt das Ausgangssignal des Schieberegisters 16 und führt es einer zweiten Addier/Subtrahier-Schaltung 36 zu. Die Torschaltung 30 empfängt das Ausgangssignal des Schiebere-
209841/0784
22H053
gisters l8 und führt es einer zweiten Multiplizierschaltung 38 zu.
Die Multiplizierschaltungen sind 16 χ 32 - Multiplikatoren und erzeugen ein mit einem Vorzeichen versehenes 32 Bit-Ausgangssignal. (Die kennzeichnensten 32 Bit von 48).
Die zweiten Eingangssignale zu den beiden Multiplikatoren 34 und 38 umfassen das Vorzeichen-Bit und die am wenigsten kennzeichnenden 15 Bit des Wertes 4 im Schieberegister 20. Zum Zeitpunkt T7 multiplizieren beide Multiplikatoren ihre beiden Eingangssignale und zum Zeitpunkt T8 werden die resultierenden Produkte in die baden Schieberegister 40 und 42 übertragen. Zum Zeitpunkt T9 verschieben diese beiden Schieberegister 40 und 42 ihren Inhalt um (1 + 16 - K) Bit nach rechts. Die Schaltung, mit der dies bewirkt wird, ist in Fig. 2 dargestellt. Sie umfaßt die UND-Schaltungen 44 und 46, deren Ausgänge mit den Schieberegistern 40 und 42 verbunden sind. Ein Eingangssignal dieser UND-Schaltungen ist das Impulssignal T9* Dein anderen Eingang werden Verschiebeimpulse (nämlich (I+I6+K) Impulse) zugeführt.
Wenn die Verschiebung durchgeführt ist, wird zum Zeitpunkt TlO der Addierer 32 instruiert, das Ausgangssignal der Schieberegister, das als ein Eingangssignal zugeführt wird, von dem Ausgangssignal der Torschaltung 24, das dem zweiten Eingang zugeführt wird. Zum gleichen Zeitpunkt TlO wird die Addierv/Subtrahier-Schaltung 36 angewiesen, das Ausgangssignal des Schieberegisters 42 zu der von der Torschaltung 28 zugeführten Zahl zu addieren.
209841/0784
Zu diesem Zeitpunkt enthält das Register der Addier/Subtrahier-Schaltung 32
- 2K (ύ/2 X1 - Y1)
und das Register der Addier/Subträier-Schaltung 36 enthält 2K («5/2 Y1-X1).
Beim Auftreten des Taktsignals TIl werden die Torsehaltungen 48, 50, 52 und 54 betätigt..Die Torschaltung 48, die mit dem Ausgang des Schieberegisters 16 verbunden ist und deren Ausgang seinerseits mit dem Eingang der Addier/Subtrahier-Sehaltung 32 verbunden ist, überträgt den Inhalt des Schieberegisters 16 auf einen Eingang der Addier/Subtrahier-Schaltung.
Die Torschaltung 50, die mit dem Ausgang der Addier/Subtrahier-Schaltung 32 verbunden ist, führt ihr Ausgangssignal einem Eingang der Multiplizierschaltung 34 zu.
Die Torschaltung 52, deren Eingänge mit dem Schieberegister 18 und deren Ausgänge mit einem Eingang der Addier/Subtrahier-Schaltung 36 verbunden sind, führen den Inhalt des Schieberegisters der Addier/Subtrahier-Schaltung 36 zu. Die Torschaltung 54, deren Eingänge mit den Ausgängen der Addier/Subtrahier-Schaltung 36 verbundenMnd, führen diese Zahl der Multiplizierschaltung 38 zu.
Zum Zeitpunkt T12 multiplizieren die Multiplizierschaltungen 34 und 38 ihre Eingangssignale, die die Ausgangssignale der ent-
209841/0784
22U053
sprechenden Addier/Subtrahier-Schaltungen 32 und 36 und des «5-Schieberegisters 20 umfassen.
Zum Zeitpunkt TI3 werden die Ausgangssignale der Multiplizierschaltungen wieder in die entsprechenden Schieberegister 40 und 42 eingeführt.
Zum Zeitpunkt Tl4 ermöglichen UND-Schaltungen 56 und 58, daß den entsprechenden Schieberegistern 40 und 42 Verschiebeimpulse zugeführt werden, die deren Inhalt um (16 - K) Bit nach rechts verschieben.
Zum Zeitpunkt TI5 werden die entsprechenden Addier/Subtrahier-Schaltungen 32 und 36 angewiesen, ihre Eingangssignale, die die Ausgangssignale der entsprechenden Schieberegister 40 und 42 umfassen, zu ihren anderen Eingangssignalen, die der gegenwärtige Inhalt der Schieberegister 16 und 18 sind, zu addieren, bzw. von ihnen zu subtrahieren. Zu diesem Zeitpunkt ist das Ausgangssignal der Addier/Subtrahier-Schaltung 32 gleich 2K(X^ - φ (#/2X. - Y.)) und das Ausgangssignal der Addier/Subtrahier-Schaltung 36 gleich 21^(Y1 - «5 ,(«5/ 2Y1 + X1)).
Zum Zeitpunkt TI7 werden die Schieberegister 16 und 18 mit den Ausgangssignalen der Addier/Subtrahier-SciaLtunge η geladen, die gleich X1+1 bzw. ^1+1 sind. Die Register 40 und 42 enthalten die entsprechenden Erhöhungen, die alle mit 2 normalisiert (scaled) sind. Von diesem Zeitpunkt an wiederholen die Steuer-
209841 /0784
- JA -
22H053
und Taktschaltungen für die nächste Iteration die Taktsignale T6 bis TI77 da das System bereits geladen ist. Als Folge davon ergeben sich die neuen Werte X. , o und Y. , o.
1 + c. 1 + d
Diese Taktfolge T6 bis TI7 wird für so viele Iterationen wiederholt, wie erforderlich sind, um eine Kurve zu erhalten, die die gewünschte Anzahl von rad hat. Dann wird der Vorgang beendet.
Die oben angegebene Wortmenge und Normalisierung sind nur Beispiele und begrenzen die Erfindung nicht.
Fig. 2 zeigt eine Schaltungsanordnung für die Normalisierung der Inhalte der Register 16 und 18. Die kennzeichnensten Bit-Positionen dieser Schieberegister sind mit den Eingängen einer NOR-Schaltung 60 verbunden, deren Ausgang seinerseits mit einer UND-Schaltung 62 verbunden ist.
Die beiden anderen erforderlichen Eingangssignale für diese UND-Schaltung sind Impulse von einer Verschiebeimpulsquelle 64 und ein T3-Sjgnal von der Steuer- und Taktschaltung 10. Sind diese Signale anwesend, so führt die UND-Schaltung 62 einem Normalisierungszähler 66 und Registern 16 und 18 Verschiebeimpulse zu. Dieser Zähler zählt die Anzahl der Verschiebeimpulse, die dann den Schieberegistern 16 und 18 zugeführt werden. Sobald in der kennzeichnensten Bit-Position eines der Register eine "1" auftritt, nimmt der Ausgang der NOR-Schaltung 60 niedriges Potential an und die UND-Schaltung 62 sperrt und läßt somit keine weiteren Verschiebeimpulse durch. Der Normalisierungszähler 66 hat also die Anzahl der Verschiebeimpulse gezählt, die in das Schieberegister einge-
209841/0784
22Η053
führt worden sind. Zum Zeitpunkt T4 wird die Zählung dieses Zählers um "1" erniedrigt, so daß im Zähler der Wert der Normalisierungskonstante K stehen bleibt.
Der Zählausgang des Normalisierungszählers wird einer Subtrahier-Schaltung 63 zugeführt, der als zweites Eingangssignal der der Zahl 16 entsprechende Binärwert zugeführt wird. Zum Zeitpunkt T9 wird die Subtrahierschaltung betätigt und erzeugt ein Ausgangssignal 16-K, das einer Vergleichsstufe 70 zugeführt wird. Zum Zeitpunkt T9 wird eine Flip-Flop-Schaltung 76 betätigt und durch deren Ausgangssignal eine UND-Schaltung 72 wirksam gemacht 3 wodurch Verschiebeimpulse von der Quelle 64 einem Zähler 74 zugeführt werden können. Der Zählausgang dieses Zählers wird der Vergleichs stufe 70 zugeführt, um dort mit dem Ergebnis der l6-K-Subtraktion verglichen zu werden. Wenn die beiden Vierte gleich sind, so erzeugt die Vergleichsstufe ein Ausgannrssignal, welches den Zähler und die Flip-Flop-Stufe 76 zurückstellt5 so daß dem Zähler über die UND-Schaltung 72 nicht langer mehr Verschiebeimpulse zugeführt werden können.
Das Ausgangssignal der Vergleichsstufe 70 wird weiter einem Zähl-Flip-Flop 76 zugeführt, und steuert ihn in seinen Q-Zustand, wodurch er einen Ein-Impuls-Generator 78 erregt. Dieser Ein-Impuls-Generator hat ein Verzögerungsintervall, das gleich dem Intervall zwischen zwei Verschiebeimpulsen ist. Sein Ausgangssignal steuert einen Flip-Flop 80 in seinen Q-Zustand und erregt dadurch einen weiteren Ein-Impuls-Generator 32. Das Ausgangssignal dieses
209841/0784
Einimpulsgenerators 32 stellt den Flip-Plop 80 zurück. Das Q-Aus- °;angssignal des Flip-Flop 80 wird einer UND-Schaltung 84 züge-. führt. Das andere Eingangssignal dieser UND-Schaltung 84 umfaßt Verschiebeimpulse von der Quelle 64.
Uni zu verstehen, wie die beschriebene. Schaltung arbeitet, um " 1 + 16 - K Verschiebeimpulse für die Register 40 und 42 zu erzeugen, sei angenommen, daß beim Auftreten eines T9-Signals die UND-Schaltungen 44 und 46 damit beginnen. Verschiebeiinpulse, die von der UND-Schaltung 34 zugeführt werden, den Registern 40 und 42 zuzuführen. Wenn die Vergleichsstufe 70'anzeigt, daß 16-K Verschiebeimpulse zugeführt worden sind, bewirkt ihr>Ausgangssignal, daß der Zähl-Flip-Flop 76. den Ein-Impuls-Generator 78 ansteuert, der eine Verzögerung bewirkt, die ausreichend ista um einen weiteren Verschiebeimpuls den Schieberegistern zuzuführen. Zu diesem Zeitpunkt wird der Flip-Flop δθ zurückgestellt, wodurch die UND-Schaltung 84, welche die Verschiebeimpulse zu den Registern 40 und 42 durchläßt, geschlossen wird. Der Ein-Impuls-Generator 82 erzeugt ein Zeitintervall, das ausreichend ist, um sicherzustellen, daß der T9-Impuls beendet ist, zu x\relehem Zeitpunkt der Flip-Flop eingestellt wird und es dadurch der UND-Schaltung 84 ermöglicht, wieder Verschiebeimpulse durchzulassen.
Zum Zeitpunkt T14 ist es erforderlich, den Inhalt der Register 4C und 42 zu den rechten 16-K Verschiebeimpulseri hin zu verschieben. Zu diesem Zeitpunkt Tl4 wird durch das Q-Ausgangssignal des Flip-Flop 76 eine UND-Schaltung 86 betätigt, um Verschiebeimpulse zu dem Zähler 74 durchzulassen. Wenn die Vergleichsstufe 70 ein Ausgangssignal liefert, wird der Zähl-Flip-Flop in seinen Q-Zustand
0984 170784"
BAD
ZQ 22H053
geschaltet. Das Q"-Aus gangs signal dieses Zähl-Flip-Flop geht an dem Ein-Impuls-Generator 78 vorbei und stellt den Flip-Flop 80 zurück, so daß keine Verschiebeimpulse mehr den Registern 40 und 42 zugeführt werden. Somit sind den Registern 40 und '42 nur 16-K Verschiebeimpulse zugeführt worden.
Die Art und Weise, wie das Schieberegister .20 um K-Impulse nach rechts verschoben wird, ist ebenfalls in Fig. 2 dargestellt. Zum Zeitpunkt T4 wird ein Ein-Impuls-Generator 67 ausgelöst, so daß es als Antwort hierauf der Tor-Schaltung 69 möglich ist, die Zählung K in einen Abwärtszähler 90 zu übertragen. Diese Übertragung findet vor dem Zeitpunkt T5 statt. Verschiebeimpulse von einer Quelle 64 werden einer NAND-Schaltung 88 zugeführt. Diese NAND-Schaltung wird in Anwesenheit von T5-Impulsen betätigt, um die Verschiebeimpulse dem Abwärtszähler 90 zuzuführen. Die Anwesenheit der T5-Impulse stellt auch einen Flip-Flop 92 ein. Das Q-Ausgangssignal des Flip-Flop 92 betätigt eine UND-Schaltung 94. Das andere Eingangssignal für diese UND-Schaltung wird durch Verschiebeimpulse von der Quelle 64 gebildet. Das Ausgangssignal der UND-Schaltung wird dem Schieberegister 20 zugeführt und bewirkt dort eine Verschiebung nach rechts. Wenn der K-Zähler bis auf (0) gezählt hat, stellt er den Flip-Flop 82 zurück, worauf die NAND-Schaltung nicht mehr länger in der Lage ist, Verschiebeimpulse zum Schieberegister 24 durchzulassen .
Es sei hier darauf hingewiesen, daß, wenn die Richtung der ge- ' wünschten Rotation geändert werden soll, es lediglich erforderlich ist, das Vorzeichen von 6 zu ändern. Die Ausgangssignale X und besclireiben die Lage der Punkte der gewünschten Kurve.
209841/Ü78A
Um die Erfindung in dem Steuersystem einer numerisch gesteuerten Werkzeugmaschine anwenden zu können, kann die in Fig. 3 dargestelle Anordnung verwendet werden. Inflieser Anordnung sind Schieberegister und Subtrahier-Einrichtungen vorgesehen, um einen Übergang von den durch den Sinus-Cosinus-Generator erzeugten Daten hoher Präzision auf die von dem Lage-Servor-Mechanismen der numerisch gesteuerten Werkzeugmaschine erforderlichen Daten niedriger Präzision zu erreichen. Dies wird daduHh bewirkt, daß Stufensprung-Ausgangs signale (incremental outputs) den Servo-Mechanismen augeführt werden, die, wenn sie aufaddiert werden, gleich den abgerundeten Werten von (X·,.-.) und (γ^+1) sind.
Bei einer numerischen"Steuerung für eine Werkzeugmaschine im Zirkularmodus sind die Eingangssignale für die entsprechenden Schieberegister 16 und 18 die I- und J-Werte, die zu Beginn dieselbe Genauigkeit haben, wie in der Servo-Schleife. Dies sind die in dem System vorgesehenen Werte, die den Radius der gewünschten Kurve anzeigen. Das Eingangssignal Φ ist einfach die Vorschubgeschwindigkeitszahl multipliziert mit einer Konstante. D.h., die Vorschubgeschwindigkeitszahl ist normalerweise, in den Einheiten (rad) pro Minute gegeben. Dies wird angepaßt (scaled to) an rad pro Interation und ist damit eine Punktion von (At). Dabei ist zu bemerken, daß (At) bei einer Anwendung wie die vorliegende, insbesondere, wenn die Rechnung mit einem Computer durchgeführt wird, festgelegt ist. ·
Die numerische Werkzeugmaschine, in der die Erfindung angewendet
2 0 9 8 4 1/0784
wird, wird betrieben, bis das Schneidwerkzeug den Punkt des Werkstückes erreicht hat, an dem die gewünschte Kurve geschnitten werden soll. Dann wird, nach dem Decodieren des Code-Wortes, das normalerweise in diesen Systemen verwendet wird, um anzuzeigen, daß eine gewünschte Kurve geschnitten werden soll, die Schiebe-
register 16, 18 und 20 mit den I-, J- und d-Daten geladen und die Steuerschaltung 10 wird eingeschaltet. Die bereits an Hand der Fig. 1 beschriebene Schaltungsanordnung arbeitet dann auf die beschriebene Weise bis zum Zeitpunkt T16. Tl6 ist eine Verzögerungszeit und unterteilt sich in drei Abschnitte. Zum Zeitpunkt Tl6a wird ein Schieberegister 100 betätigt, um den Inhalt des Schieberegisters 16 aufzunehmen. Ein Schieberegister 102 wird betätigt, um den Inhalt der Addier/Subtrahier-Schaltung 32 aufzunehmen. Weiter wird ein Schieberegister 104 betätigt, um den Inhalt des Schieberegisters 18 aufzunehmen. Schließlich wird ein Schieberegister 106 betätigt, um den Inhalt der Addier/Subtrahier-Schaltung 36 aufzunehmen. Die Inhalte der Addier/Subtrahier-Schaltungen sind X^+1 und Y^+1 (oder Ij+1 und J-;+1)· Die Inhalte
der entsprechenden Schieberegister 16 und 18 sind I. und J..
Zu einem Zeitpunkt Tl6b werden die Inhalte der entsprechenden Schieberegister 100, 102, 104 und IO6 um K Bit nach rechts verschoben. Dies wird dadurch erreicht, daß der Inhalt des K- oder Normalisierungs-Zählers 66 mit dem Inhalt eines Zählers 110 verglichen wird, der solange zählen kann bis eine Vergleichsschaltung 108 anzeigt, daß der Inhalt des Zählers 110 gleich dem Inhalt des
209 84 1/0784
22H053
K-Zählers 66 ist. Zu diesem Zeitpunkt stellt das Ausgangssignal der Vergleichsschaltung den Zähler und einen Flip-Flop 112 zurück. Der Flip-Flop 112 ist beim Auftreten des Tl6b-Impulses eingestellt worden, wodurch er es einer UND-Schaltung 114 ermöglicht hat,. Schiebeimpulse nicht nur dem Zähler 110, sondern auch den Schieberegistern 100, 102, 104 und 106 zuzuführen. Wenn der ZählerllO einen Stand erreicht hat, der gleich dem der Normalisierung ist, wird die Zuführung von Verschiebeimpulseη unterbrochen. Damit sind diese Register um K Bit nach rechts verschoben worden, um so den K- oder Normalisierungs-Multiplikator zu kompensieren, der vorher den Inhalten der Schieberegister 16 und 18 und der Addier/Subtrahier-Schaltung 3^ und 38 zugeführt worden ist. s ■■.'■■
Zum Zeitpunkt Tl6c werden zwei Subtrahier-Schaltungen 116, II8 betätigt, um den Inhalt des Schieberegisters 100 von dem Inhalt des Schieberegisters 102 und den Inhalt des Schieberegisters 104 von dem Inhalt des Schieberegisters 106 zu subtrahieren. Die Ausgangssignale der Subtrahier-Schaltungen bilden die Stufensprünge, die den Lageeinstellungs-Servormotoren auf bekannte Art und Weise zugeführt werden, damit das Werkzeug der Maschine einen Bogen beschreibt. Normalerweise sind besondere Endpunkte vorgesehen, die "!("-normalisiert und mit den Inhalten der Schieberegister l6 und 18 verglichen werden können, um anzuzeigen, wenn das Schneiden der Kurve beendet ist.
Die mit der Erfindung erreichte Erhöhung der Genauigkeit gegenüber einem üblichen DDA1-System ergibt sich aus der -folgenden Tafel, die den Approximationsfehler für beide Systeme nach einem rad zeigt :
209 8.4 1/078 U '
22H053
rad
X2 + Y2
rad/Iter
«5
üblicher DDA (Parallel)
System nach
Pig. 1
ΙΟ
15XlO-
75-
iJ2xlO~
10
15xlO
"5
75.
75.
15xlO
"3
7-5.
42xlO
"2
Fehler nach 1 rad
+ Ein üblicher DDA (Parallelverfahren mit Normalisierung.
++ Beachte, daß einige Fehler kleiner sind als die Auflösung des Systems (mit Normalisierung).
Ansprüche :
209841 /0784

Claims (10)

  1. is 22U053
    Ansprüche:
    i'lJ Vorrichtung zur iterativen Erzeugung von Punkten, die auf einem Kreis liegen, dessen Radius durch Anfangsbedingungen bestimmt ist, die die Koordinaten X und Y eines Ausgangspunktes des genannten Kreises und die Zahl der rad pro Iteration, die durch <z5 dargestellt werden, umfassen, dadurch gekennzeichnet, daß die Vorrichtung umfaßt einen ersten Speicher (16) zum Speichern des Wertes X, einen zweiten Speicher (1-8) zum Speichern des Wertes Y, einen dritten Speicher (20) zum Speichern des Wertes 6t einen ersten Multiplikator (31Oj dem die Inhalte des ersten und des dritten Speichers zugeführt wer·*- den, um ein erstes Produkt zu bilden, einen zweiten Multiplikator (38), dem die Inhalte des zweiten und des dritten Speichers zugeführt werden, um ein zweites Produkt zu bilden, .einen vierten Speicher (40) zum Speichern des ersten Produktes, das von dem ersten Multiplikator (3#) gebildet wird, einen fünften Speicher (42) zum Speichern des zweiten Produktes, das durch den zweiten Multiplikator (38) gebildet wird, einen ersten Addierer/Subtrahierer (32), dem die Inhalte des vierten Speichers (40) und des zweiten Speichers (18) zum Bilden einer Differenz zwischen ihnen zugeführt werden, einen zweiten Addierer/Subtrahierer (36), dem die Inhalte des fünften Speichers (42) und des ersten Speichers (l6) zugeführt werden, um ihre Summe zu bilden, Mittel zum Zuführen des In-
    2098U/078 4
    haltes des dritten Speichers (20) und des Inhaltes des ersten Addierers/Subtrahierers (32) zu einem ersten Multiplikator (34), um ein drittes Produkt zu bilden, Mittel zum Zuführen des Inhaltes des zweiten Speiehers (18) und des Inhaltes des zweiten Addierers/Subtrahierers (36) zu einem zweiten Multiplikator (38), um ein viertes Produkt zu bilden, Mittel zum übertragen des dritten Produktes, das in dem ersten Multiplikator enthalten ist;, auf den vierten Speicher, Mittel zum Übertragen des vierten Produktes aus dem zweiten Multiplikator in den fünften Speicher, Kittel zum Zuführen des dritten Produktes aus dem ersten Speicher (16) und des Inhalts des vierten Speichers (1IO) zu dem ersten Addierer/ Subtrahierer (32). um ihre Summe zu bilden, deren Viert die Koordinate X des folgenden Punktes auf dem Umfang des gewünschten Kreises ist, Mittel zum Zuführen des Inhalts des zweiten Speichers (18) und des Inhalts des fünften Speichers (42) zu dem zweiten Addierer/Subtrahierer (36), um ihre Differenz zu bilden, deren Wert die Koordinate Y des folgenden Punktes auf dem Umfang des gewünschten Kreises ist, und Mittel zum Einführen der Werte der Koordinaten X und Y3 die durch den ersten und den zweiten Addierer/Subtrahierer erzeugt worden sind, in den ersten und den zweiten Speicher, um die Lage des folgenden Punktes auf dem Umfang des gewünschten Kreises zu bestimmen.
  2. 2. Vorrichtung nach Anspruch 1, oadurch gekennzeichnet, daß je-, der der ersten bis fünften Speicher ein Schieberegister um-
    209841/0784
    faßt und daß Fittel vorgesehen sind, um die in den ersten und zweiten Schieberegistern enthaltenen Werte X und Y in einem ersten Sinne um eine Anzahl von Ziffernpositionen zu verschie-• ben, die ausreicht, um diese Werte zu normalisieren, mindestens um eine Ziffernposition um einen Wert K zu bilden, Mittel zum Verschieben des Wertes <z5 in dem dritten Schieberegister um eine Anzahl von Ziffernpositionen, die gleich K ist, in einem dem ersten Sinne entgegengesetzten Sinn, Mittel zum Verschieben der ersten und der zweiten Produkte «5X und <έΥ in •dem vierten und dem fünften Schieberegister in einem_dem ersten Sinne entgegengesetzten Sinn um eine Anzahl von Ziffern-• Positionen^ die gleich (I+I6-K) ist und schließlich gekennzeichnet durch Mttel zum Verschieben des dritten und des vierten Produktes in dem vierten und dem fünften Schieberegister in einem dem ersten Sinn entgegengesetzten Sinn um eine Anzahl von Ziffernpositionen gleich (I6-K).-
  3. 3. Vorrichtung nach den Ansprüchen 1 oder 2, dadurch gekennzeichnet, daß die ersten und zweiten Multiplikatoren Mittel umfass sen, um als ihr Produkt nur eine vorbestimmte Zahl der kennzeichnensten Bits in ihren Produkten zu erzeugen.
  4. 4. Vorrichtung nach den Ansprüchen I3 2 oder 3, dadurch gekennzeichnet, da3 Kittel vorgesehen sind, um die entsprechenden X- und Y-Werte von den entsprechenden X- und Y-Koordinaten-Werten zu subtrahieren und so Werte zu erzeugen, die den Bewegungsschritten zum Beschreiben eines Kreises entsprechen.
    209841/07
  5. 5. Verfahren zur iterativen Erzeugung von Punkten auf dem Umfang eines Kreises,' ausgehend von einer Ausgangsinformation,, die die X- und Y-Werte des Ausgangspunktes des Kreises sowie einen ■ Viert i · umfaßt, der den rad pro Iteration multipliziert mit
    -ζ. ρ
    2J entspricht, wobei ύ kleiner als 1,0 ist, dadurch gekennzeichnet, daß die Werte von X, Y und «5' in ersten, zweiten und dritten Speichern gespeichert werden, die in den ersten und in den dritten Speichern enthaltenen Vierte multipliziert werden, um ein erstes Produkt zu bilden, die in den zweiten und dritten Speichern enthaltenen Werte multipliziert werden, um ein zweites Produkt zu bilden, das erste und das zweite Produkt in vierten und fünften Speichern gespeichert werden, das in dem vierten Speicher enthaltene Produkt von dem in dem zweiten Speicher enthaltenen Wert subtrahiert wird, um eine erste Differenz zu erhalten, der in dem ersten Speicher enthaltene Wert dem in dem fünften Speicher enthaltenen Produkt hinzugefügt wird, um eine erste Summe zu erhalten, die erste Differenz mit dem in dem dritten Speicher enthaltenen Wert multipliziert wird, um ein drittes Produkt zu erhalten, die erste Summe mit dem in dem dritten Speicher enthaltenen Wert multipliziert wird, um ein viertes Produkt zu erhalten, das
    dritte und das vierte Produkt in dem vierten und' dem fünften Speicher gespeichert werden, der in dem ersten Speicher enthaltene Wert zu dem in dem vierten Speicher enthaltenen Wert hinzugefügt wird, um die Koordinate X des folgenden Punktes auf dem Kreis zu bilden, der in dem zweiten Speicher enthaltene Wert von dem in dem fünften Speicher subtrahiert wird, um die Koordinate Y des folgenden Punktes auf dem Kreis zu
    209841/0784
    erzeugen und die Werte der Koordinaten X und Y des folgenden Punktes auf dem Kreis für eine folgende Iteration in dem ersten und dem zweiten Speicher gespeichert werden.
  6. 6. Verfahren nach Anspruch 5 3 dadurch gekennzeichnet, daß die Werte von X und Y3 die in dem ersten und.dem zweiten Speicher enthalten sind, normalisiert werden, wozu diese Werte mit 2 multipliziert werden, wobei N der Normalisierungswert ist, daß die Normalisierung der X- und Y-Werte in dem ersten und dem zweiten Speicher um eine Ziffernpositibn reduziert wird, um den Multiplikationsfaktor auf 2 gleich 2 zu reduzieren, daß die in dem dritten Speicher enthaltenen Werte von $ mit
    —K
    2~ multipliziert werden, ,daß das erste und das zweite Produkt im vierten und fünften Speicher mit 2 v y multipliziert werden, und daß schließlich das in dem vierten und dem fünften Speicher enthaltene dritte und vierte Produkt mit 2"^ ^ . multipliziert werden.
  7. 7. Verfahren, nach Anspruch 6, dadurch· gekennzeichnet, daß die Werte von X und Y und die Koordinaten X und Y des folgenden Punktes auf dem Kreis in sechsten, siebtens achten und neunten Speichern gespeichert werden, daß diese so gespeicherten Werte
    K '"■·"■
    mit 2" multipliziert werden, daß die il dem sechsten und dem siebten Speicher enthaltenen Werte voneinander abgezogen werden und daß die in dem achten und dem neunten Speicher enthaltenen Werte voneinander abgezogen werden, um die Bewegungsschritte für die kreisförmige Bewegung zu erzeugen.
    209841/07
    -Jg-
  8. 8. Verfahren nach den Ansprüchen 5, 6 oder I3 dadurch gekennzeichnet, daß bei jeder Multiplikation eine vorbestimmte Zahl der am wenigsten kennzeichnensten Bits im Produkt unterdrückt wird.
  9. 9. Anwendung der Vorrichtung oder des Verfahrens nach mindestens einem der vorhergehenden Ansprüche auf die numerische Steuerung einer Werkzeugmaschine.
  10. 10. Kreis-Interpolator für das Steuersystem einer Werkzeugmaschine , gekennzeichnet durch einen numerischen elektronischen
    Rechner, der so programmiert ist, daß er durch Iteration die Punkte erzeugt, die sich auf einem Kreis befinden, dessen Radius durch die Anfangsbedingungen bestimmt ist. die die Koordinaten eines Ausgangspunktes auf dem genannten Kreis (X ,Y) umfassen und aus den gespeicherten Signalen (X., Y. , O) durch Iteration Ausgangssignale (X1+1 γι+η) erzeugt, wobei die Beziehung zwischen den Ausgangssignalen (X1+1 γι+χ) und den
    gespeicherten Signalen (X., Y1s 6) durch die folgenden Gleichungen bestimmt ist
    = X1 - a5 (1/2 «5 X1 -
    Y1+1 = Y1 -rf (1/2 έ Y1 +X )
    worin <6 die Zahl der Rotation in rad pro Iteration ist und X. und Y. die Lagesignale nach i Iterationen sind und daß eine
    Gruppe von Subtrahierern vorgesehen ist, denen die Ausgangssignale (X1+1 Y 1+1) und dle gespeicherten Signale (X^, Y^)
    209841/0784
    22U053
    zugeführt werden und die aus diesen Signalen die Bewegungsschritte (ΔΧ3 ΔΥ) für das Steuersystem der Werkzeugmaschine erzeugt, wobei diese Bewegungsschritte (Ä^s ΔΥ) mit .den Ausgangs Signalen(X.+, Y-* + τ) und den gespeicherten Signalen (X. s Y.) durch die folgenden Beziehungen verbunden sind:
    xi+1 - χ.
    - Yi
    209841/Ö7B4
    Leerseite
DE19722214053 1971-03-24 1972-03-23 Verfahren und Vorrichtung zum Steuern einer numerisch gesteuerten Werkzeugmaschine entlang einer Kreisbahn Pending DE2214053A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12765771A 1971-03-24 1971-03-24

Publications (1)

Publication Number Publication Date
DE2214053A1 true DE2214053A1 (de) 1972-10-05

Family

ID=22431220

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19722214053 Pending DE2214053A1 (de) 1971-03-24 1972-03-23 Verfahren und Vorrichtung zum Steuern einer numerisch gesteuerten Werkzeugmaschine entlang einer Kreisbahn

Country Status (5)

Country Link
US (1) US3728528A (de)
CA (1) CA989074A (de)
DE (1) DE2214053A1 (de)
FR (1) FR2130294A1 (de)
GB (1) GB1352292A (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2124320C1 (de) * 1971-05-17 1978-04-27 Siemens Ag, 1000 Berlin Und 8000 Muenchen Elektrische Schaltung zur Erzeugung einer Vielzahl verschiedener Codes
US4031369A (en) * 1975-08-12 1977-06-21 The Bendix Corporation Interpolation and control apparatus and method for a numerical control system
DE2954696C2 (de) * 1978-12-19 1995-11-23 Allen Bradley Co Numerisches Steuerungssystem
DE2950979C2 (de) * 1978-12-19 1995-11-16 Allen Bradley Co Numerisches Steuerungssystem
FR2448194A1 (fr) * 1979-01-30 1980-08-29 Thomson Csf Dispositif generateur de courses pour la visualisation de symboles sur un ecran cathodique
US4493032A (en) * 1982-09-07 1985-01-08 General Electric Company Method and apparatus for positioning using circular interpolation
JPH0668771B2 (ja) * 1987-12-07 1994-08-31 沖電気工業株式会社 Dda円発生表示方法
US5739820A (en) * 1992-11-19 1998-04-14 Apple Computer Inc. Method and apparatus for specular reflection shading of computer graphic images

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3325630A (en) * 1959-05-23 1967-06-13 Fuji Tsushinki Seizo Kk Numerical control pulse distribution system
NL291454A (de) * 1959-12-24
US3555253A (en) * 1966-02-21 1971-01-12 Hitachi Ltd Numerical control system

Also Published As

Publication number Publication date
US3728528A (en) 1973-04-17
GB1352292A (en) 1974-05-08
CA989074A (en) 1976-05-11
FR2130294A1 (de) 1972-11-03

Similar Documents

Publication Publication Date Title
DE1549476C3 (de) Anordnung zur Ausführung von Divisionen
DE2311220A1 (de) Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung
DE3424962C2 (de)
DE1499722B1 (de) Einrichtung zur modifizierung von informationswoertern
DE2162486A1 (de) Digital gesteuerter Impulsgenerator
DE2911096C2 (de)
DE2758830A1 (de) Rechenvorrichtung
DE2332971C2 (de) Mikroprogrammsteuereinrichtung
DE1588093A1 (de) Anordnung zum automatischen Steuern von Werkzeugmaschinen
DE2214053A1 (de) Verfahren und Vorrichtung zum Steuern einer numerisch gesteuerten Werkzeugmaschine entlang einer Kreisbahn
EP0099142B1 (de) Verfahren und Anordnung zum Demodulieren eines frequenzmodulierten Eingangssignals
DE2310553A1 (de) Vorrichtung zur durchfuehrung arithmetischer und logischer operationen
DE2111889A1 (de) Numerische Regeleinrichtung
DE2517230A1 (de) Impulsgenerator
DE3609056C2 (de)
WO1993025959A1 (de) Verfahren und anordnung zum bilden der summe einer kette von produkten
DE2712582A1 (de) Digital-differential-analysator
DE1103646B (de) Inkrement-Rechenmaschine
DE2203034A1 (de) Steuerungssystem fuer eine numerisch gesteuerte Werkzeugmaschine,insbesondere Formfraesmaschine
DE1962676A1 (de) Linearisierung eines digitalen Leistungsverstaerkers mit Phasensteuerung
DE2426648B2 (de) Schaltungsanordnung zur erzeugung von interpolationsimpulsen
DE1524146C (de) Divisionseinrichtung
DE2135607C2 (de) Schaltungsanordnung zur Inkrementierung oder Dekrementierung
DE1090885B (de) Parallel arbeitende, synchrone, elektrische, binaerrechnende Zahlenrechenmaschine, welche die Operation x+yz selbsttaetig auszufuehren vermag
DE3540800A1 (de) Binaeraddierer-zelle und aus solchen binaeraddierer-zellen zusammengesetztes schnelles addier- und multiplizierwerk