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 KreisbahnInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/41—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
- G05B19/4103—Digital interpolation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/17—Function 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)
(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>
xo» Y o gegeben
= Y1 -Φ (1/24Y. - X1)
besteht. In den Gleichungen bedeuten
X Y
ο* ο die Ausgangspunkte,
ο* ο 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+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.
~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 ,
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
1ί 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
«5
üblicher DDA (Parallel)
System nach
Pig. 1
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)
- is ■ 22U053Ansprü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 4haltes 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. Vorrichtung nach Anspruch 1, oadurch gekennzeichnet, daß je-, der der ersten bis fünften Speicher ein Schieberegister um-209841/0784faß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. 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. 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. 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, dasdritte 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 zu209841/0784erzeugen 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. 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. 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 WerteK '"■·"■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. 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. Anwendung der Vorrichtung oder des Verfahrens nach mindestens einem der vorhergehenden Ansprüche auf die numerische Steuerung einer Werkzeugmaschine.
- 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/078422U053zugefü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 - χ.- Yi209841/Ö7B4Leerseite
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)
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)
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 |
-
1971
- 1971-03-24 US US00127657A patent/US3728528A/en not_active Expired - Lifetime
-
1972
- 1972-02-22 CA CA135,248A patent/CA989074A/en not_active Expired
- 1972-03-15 FR FR7209070A patent/FR2130294A1/fr not_active Withdrawn
- 1972-03-23 DE DE19722214053 patent/DE2214053A1/de active Pending
- 1972-03-23 GB GB1365672A patent/GB1352292A/en not_active Expired
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 |