DE2835164C2 - Numerische Interpolationsschaltung - Google Patents
Numerische InterpolationsschaltungInfo
- Publication number
- DE2835164C2 DE2835164C2 DE2835164A DE2835164A DE2835164C2 DE 2835164 C2 DE2835164 C2 DE 2835164C2 DE 2835164 A DE2835164 A DE 2835164A DE 2835164 A DE2835164 A DE 2835164A DE 2835164 C2 DE2835164 C2 DE 2835164C2
- Authority
- DE
- Germany
- Prior art keywords
- interpolation
- pulses
- register
- overflow
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 238000007792 addition Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 6
- 238000003754 machining Methods 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 239000007788 liquid Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
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
Landscapes
- Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Numerical Control (AREA)
Description
2. Interpolationsschaltung nach Anspruch 1, dadurch gekennzeichnet, daß der Addierer (105)
einen Überlaufimpuls erzeugt, wenn die Summe der jeweiligen Addition gleich oder größer 2" ist, wobei π
die Anzahl der Bitstellen jedes Registers (106, 107, 108,110,111,112) ist.
3. Interpolationsschaltung nach Anspruch 2, dadurch gekennzeichnet, daß dem Zähler (102)
Zeitgeberimpulse mit einer Frequenz von 2"Hz zugeführt werden und nach einer Anzahl von «,·
Zeitgeberimpulsen sein Inhalt in das Überlaufregister (103) übergeben und er gleichzeitig zurückgestellt wird. M
4. Interpolationsschaltung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß vo.
dem Eingang des den Geschwindigkeitsbefehl (f\) speichernden Eingangsregisters (106) ein arithmetischer Schaltkreis angeordnet ist, der aus dem
Geschwindigkeitssollwert (f) und den Koordinatenbefehlen (x, y) den Geschwindigkeitsbefehl (f,)
errechnet
5. Interpolationsschaltung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die
Überlaufwerte für die Koordinaten je einem Konverter (114, 115) zugeführt werden, der die
Binärcodierten Überlaufwerte in Interpolationsimpulse für das zugehörige Koordinatenstellmittel
umsetzt.
6. Interpolationsschaltung nach Anspruch 3, dadurch gekennzeichnet, daß über eine Zeitdauer (t).
welche durch den Geschwindigkeitssollwert (f) und
die Koordinatenbefehle (x, y) bestimmt ist, eine
Anzahl (m) Zeitgeberimpulse erzeugt werden, die vom Zähler (102) in (k) Gruppen miilt je (X1)
Zeitgeberimpulsen unterteilt werden.
Die vorliegende Erfindung betrifft eine miiimerische
Interpolationsschaltung zur Ansteuerung v«p Koordinatenstellmitteln auf der Basis von digitalen Difiervntialanalysatoren mit Eingangsregistern zur Speicherung
von Sollwertgrößen, mit Summenregisterin und mit
Addierern, die die gebildeten Summen für die Koordinatenbefehle und einen Geschwindigkeitsbefehl
jeweils aufteilen in Überlauf- und Restwerte, welche
leuteren in die Summenregister eingegeben werden, wobei die Ausgänge der Differentialanalysatoren mit
den Koordinatenstellmitteln verbunden sind.
Die bekannten Interpolationsschaltungen arbeiten nach dem Prinzip eines digitalen Differentialanalysators, der ein erstes oder Eingangsregister, ein zweites
oder Sununenrcgister und einen Addierer aufweist
Wird ein Eingangsimpuls diesem Analysator !zugeführt,
dann werden die Inhalte der beiden Register addiert im Addierer und die sich ergebende Summe wird in das
Summenregister eingegeben und dort gespeichert Falls während der Addition das Summenregister überläuft,
dient der Überlaufwert als Interpolationsimpulse. Der so erhaltene Interpolationsimpuls w?rd sodann einem
Treiberschaltkreis zugeführt Angenommen, der Ursprungsinhalt des Eingangsregisters würde a betragen und die Zahl der Impulse der Sollwertgröße in T
Sekunden wäre 2", wobei η die Zahl der Bits des Eingangsregisters ist dann wäre die Zahl der Überlaufimpulse (Interpolationsimpulse), welche in T Sekunden
erhalten wird, gleich a. Es wird also ein Impulszug von
Interpolationsimpulsen erhalten, deren Anzahl bezogen ist auf den Wert a im Eingangsregister.
Eine bekannte Interpolationsschaltung wird nachfolgend an Hand der Fig. 1 und 2 p.rlätitert Es sei
vorausgesetzt, daß der Punkt P sich von A nach B
bewegt, wobei der Sollwert in der A'-Richtung gleich
χ mm und der Sollwert in der y-Richtung gleich y mm ist
und die Geschwindigkeitsinformation /mm/s lautet
Die F i g. 2 zeigt ein Blockdiagramm zur Ausführung der vorgenannten Interpolation. Die Werte χ und y
werden von einem Lochstreifen abgelesen. Die Geschwindigkeit
x'+y2
wird extern errechnet und das Ergebnis /1 wird vom
Lochstreifen abgelesen. Die Bezugsziffer 10 bezeichnet einen Interpolator für die Geschwindigkeit /i, die
Bezugszahl 11 bezeichnet einen Interpolator für den Befehl in x-Richtung, 12 ist ein Interpolator für den
Befehl in ^-Richtung, 15 ist ein X-Achsenantriebsmotor
einer Maschine, 16 ein V-Achsenar.triebsmotor der Maschine, 13 ein Servoschaltkreis zum Steuern des
Antriebsmotors 15,14 ein Servoschaltkreis, zum Steuern des Antriebsmotors 16, und 17 ein Impulsgenerator zur
Erzeugung von Bezugsimpulsen.
Der Sollwert x, der vom Lochstreifenleser abgelesen wurde, wird im Eingangsregister 20 gespeichert. Der Sollwert y wird gespeichert im Eingangsregister 23, und der Sollwert /i wird dem Eingangsregister 26 zugeführt. Die Summenregistex sind mit 22,
28 ob 164
24 und 27 bezeichnet Addierer haben die Posiu'onszahlen21,25und28.
Wird im Impulsgenerator 17 ein Zeitgeberimpuls erzeugt, dann fuhrt der Addierer 28 eine Addition des
Inhalts des Eingangsregisters 26 und des Summenregisters 27 durch. Die Summe dieser Addition wird von
Neuem eingegeben in das Summenregister 27, Ist die Summe der Addition gleich oder größer 2", dann wird
der Ausgangsleitung 29 ein Oberlaufwert als Interpolationsimpuls zugeführt Es ist anzumerken, daß die
Anzahl bzw. die Frequenz des Interpolationsimpulszuges in der Leitung 29 bestimmt wird durch den Wert
Die Interpolationsimpulse der Leitung 29 haben die Funktion eines Befehlsimpulses für die Interpolationsschaltkreise 11 und 12 Die Addierer 21 und 25 führen
jedesmal eine Addition aus, wenn ein Interpolationsimpuls in der Leitung 29 auftritt Sind 2" Additionen
durch die Addierer 21 und 25 ausgeführt dann führte der Interpolator 11 χ Interpolationsimpulse der Ausgangsleitung 30 zu, während der Interpolator 12 y
Interpolationsimpulse an die Leitung 31 gab. Diese Interpolationsimpulse in den Leitungen 30 und 31
werden über die Servoschaltkreise 13 i:nd !4 den
Antriebsmotoren 15 und 16 zugeführt Die Motoren 15 und 16 bewirken somit eine Bewegung des Punktes P
vom Punkt A zum Punkt B mit einer Geschwindigkeit von /mm/sec.
Die Interpolationsschaltung nach F i g. 2 weist jedoch
den Nachteil auf, daß drei Interpolatorschaltkreise 10, 11 und 12 erforderlich sind Ein derart aufgebauter
Interpolator ist kompliziert Insbesondere muß er eine hohe Arbeitsgeschwindigkeit aufweisen. Beträgt die
Periode eines Befehlsimpulses 1 μίτι und beträgt die
Bearbeitungsgeschwindigkeit lOm/sec, dann ist die erforderliche Zeitdauer zur Ausführung einer einzigen
Interpolation in jedem Interpolationsschaltkreis geringer als 10 us. Zur Ausführung der Interpolation sind also
mit hoher Geschwindigkeit arbeitende digitale Schaltkreise erforderlich. Die Bearbeitungsgeschwindigkeit
wird hierdurch begrenzt
Es besteht die Aufgabe, die Interpolationsschaltung der eingangs genannten Art so zu verbessern, daß mit
zunehmender Bearbeitungsgeschwindigkeit die Zahl der auszuführenden Interpolationsrechnungen nicht
dazu proportional zunimmt und somit digitale Schaltkreise verwendbar sind, deren Arbeitsgeschwindigkeit
nicht groß ist
Gelöst wird diese Aufgabe mit den kennzeichnenden Merkmalen des Anspruchs 1. Vorteilhafte Ausgestaltungen sind den Unteransprüchen entnehmbar.
Ein Ausführungsbeis^iel der Erfindung wird nachfolgend an Hand der Zeichnungen näher erläutert Es zeigt
F i g. 1 ?ine graphische Darstellung einer Impulsinterpolation,
F ί g. 2 ein Blockdiagramm einer bekannten Interpolationsschaltung,
Fig.3 eine Darstellung der bei der Interpolationsschaltung nach Fig.4 auftretenden Interpolationsimpulse,
Fig.4 ein Blockdiagramm der Interpolationsschaltung,
F i g. 5 eine Darstellung der Ausführung der interpolation bei der Interpolationsschaltung nach F i g. 4,
Fig.6 ein Impulsdiagramm zur Erläuterung der Arbeitsweise der Schaltung nach F i g. 2 und
Fig. 7 ein Impulsdiagramm zur Erläuterung der Arbeitsweise der Scnaltung nach F i g. 4.
Wenn ein Werkstück von einem Werkzeug mit geringer Schnittgeschwindigkeit bearbeitet wird, muß
dem Servoschaltkreis zur Steuerung des Motors eine Impulskette von gleichförmig verteilten Interpolations-
s impulsen gemäß F i g. 3a zugeführt werden. Werden die Interpolationsimpulse gemäß F i g. 3b in ungleichförmigen Zeitabschnitten zugeführt, d.h. mehrere Impulse
innerhalb einer kurzen Zeitdauer, dann wird die zu bearbeitende Oberfläche nicht glatt sondern gestud.
ίο Gemäß dem Stand der Technik werden daher die
Interpolationsimpulse vom Interpolationsschaltkreis in gleichförmigen Zeitabständen erzeugt Liegt beim
Stand der Technik eine hohe Bearbeitungsgeschwindigkeit vor, dann wird daher die Frequenz der Inter-
polationsimpulse entsprechend hoch, wie dies die Fig.3c zeigt Bei einer hohen Bearbeitungsgeschwindigkeit ist es jedoch möglich, die Impulse auch
entsprechend F i g. 3d zuzuführen, wobei man trotzdem eine glatte Bearbeitungsoberfläche erhält da der
Antriebsmotor zum Antrieb der Werkzeugmaschine eine Trägheit aufweist Gemäß Fig.3d werden also
mehrere Impulse zu Impulsgrupppn zusammengefaßt, weiche innerhalb einer relativeis kurzen Zeitdauer
erzeugt werden.
Die vorliegende Erfindung geht von Vorstehendem aus, d. h. wenn die Bearbeitungsgeschwindigkei: gering
ist werden gleichförmige Interpolationsimpulse gemäß F i g. 3a erzeugt während bei einer hohen Bearbeitungsgeschwindigkeit Impulsgruppen von Interpolations-
impulsen innerhalb kurzer Zeiten entsprechend F i g. 3d erzeugt werden. Auf diese Weise ergibt sich bei allen
Bearbeitungsgeschwindigkeiten eine gleichförmige Bearbeitungsoberfläche, wobei für den Interpolationsschaltkreis billige digitale Bauteile verwendet werden
können, deren Arbeitsgeschwindigkeit nicht groß ist. Weiterhin ergibt sich der Vorteil, daß die Zeitdauer für
jeden Rechenvorgang zur Berechnung einer Interpolation konstant und unabhängig ist in bezug auf
Änderungen der Geschwindigkeit der Befehlsimpulse.
Weiterhin kann die Dauer zwischen jeder Interpolationsrechnung willkürlich gewählt werden, so daß
es möglich ist daß die Interpolationsrechnungen sowohl von einem Klein- als auch von einem Großrechner
ausgeführt werden können. Der Gegenstand der
Erfindung ist besonders nützlich in Verbindung mit
rechnergesteuerten numerischen Steuersystemen.
Im folgenden Ausführungsbeispiel *ird eine Interpolation für zwei Achsen, d. h. für die X-Achse und die
y-Achse erläutert Es ist natürlich selbstverständlich,
daß derartige Interpolationen auch für eine Vielzahl von
Achsen ausgeführt werden können.
Die F i g. 4 zeigt ein Blockdiagramm eines Interpolationssystems gemäß der vorliegenden Erfindung. Ein
Impulsgenerator 101 erzeugt Zeitgeberimpulse. Hin
Zähler 102 dient zur Zählung der Zahl der Impulse vom
Impulsgenerator 101. Ein Überlaufregister 103 speichert den Inhalt des Zählers 102 und speichert ',veiterhin den
Ausgangswert des Addierers 105 über die Ausgangs:· leitung 122. Ist der Inhalt des Zählers 102 dem
Überlaufregister 103 zugeführt worden, wird diese: Zähler 102 auf N :I1 zurückgestellt so daß er bereit ist,
neue Zeitgeberimpulse zu zählen. Auf einem Lochstreifen !21 ist das auszuführende Programm aufgezeichnet welches aus den Sollwerten für die Koordi-
naten χ und y und für die Geschwindigkeit / besteht.
Diese Befehle werden über ein Lesegerät 120 vom Lochstreifen 121 abgelesen. 125 ist ein arithmetischer
Steuerkreis, der die vom Lochstreifen abgelesenen
Befehle den Eingangsregistern zuführt und den Wert
für den Geschwindigkeitsbefehl f\ errechnet, wobei η die
Zahi der Bitstellen in jedem Register, χ und y die Sollwerte in der X und Y Richtung sind. Der
Geschwindigkeitsbefehl f\ wird im Eingangsregister 106 gespeichert. Der Sollwert χ in X-Richtung wird im
Eingangsregister 107 gespeichert. Das Eingangsregister 10*! dient zur Speicherung des Sollwerts ;' in der
V-Richtung. Die Summenregister 110, 111 und 112 dienen zur Speicherung der Ergebnisse der Interpolationsrechnungen
für den Geschwindigkeitsbefehl /Ί für die Bewegung in der X-Richtung sowie für die
Bewegung in der y-Richtung. Die Register 106, 107, 108, 110, 111 und 112 haben jeweils η Bitstellen und
können eine Binärzahl bis zu 2"— 1 speichern. Die Bezugszahl 109 bezeichnet einen Schaltkreis für das
wahlweise Anlegen einer άζτ Ausgänge άζτ Register
106, 107 und 108 an einen Eingang des Multiplizierers 104. Durch einen anderen Schaltkreis 113 ist es möglich,
einen der Ausgänge der Register 110, 111 und 112 an einen Eingang des Addierers 105 anzulegen. Der
Multiplizierer 104 bildet das Produkt des Inhalts des Registers 103 und des Ausgang des Schaltkreises 109,
wobei dieses Produkt sodann an den anderen Eingang des Addierers 105 angelegt wird. Der Addierer 105
bildet die Summe des Ausgangs des Multiplizierers 104 und des Ausgangs des Schaltkreises 113. Ergibt die
Addition ein Überlaufbit, dann wird das Überlaufbit der Ausgangsleitung 122 zugeführt. Dies ist dann der Fall,
wenn die Summe größer oder gleich 2" ist, da der
Addierer und jedes Register lediglich η Bitstellen aufweisen. Die Summe der Addition abzüglich eines
eventuellen Überlaufwerts wird von Neuem in eines der Register 110, 111 oder 112 eingegeben. Die Ausgangsleitung
122 ist verbunden mit dem Überlaufregister 103, sowie mit den Konvertern 114 und 115. Der in der
Ausgangsleitung 122 auftretende Überlaufwert wird entweder dem Register 103 oder den Konvertern 114
oder 115 zugeführt. Die Konverter 114 und 115 setzen einen Binärcode in einem Impulszug um. Der Servoschaltkreis
116 steuert den Antriebsmotor 118 entsprechend
den Interpolationsimpulsen vom Konverter 114. Der Antriebsmotor 118 steuert die X-Achse einer
Werkzeugmaschine. Der andere Servoschaltkreis 117 dient zur Steuerung des Antriebsmotors 119 gemäß den
Interpolationsimpulsen vom Konverter 115, wobei dieser Antriebsmotor 119 die Bewegung der Y-Achse so
der Werkzeugmaschine durchführt.
Die Arbeitsweise des Geräts nach F i g. 4 wird nachfolgend erläutert.
Es sei vorausgesetzt, daß die Sollwerte zur Bewegung
des Punktes Pvon Punkt A nach Punkt B wie folgt sind:
Bewegungslänge in der X-Richtung ist »mm, die Bewegungslänge in der V-Richtung ist jrnm, und die
Bewegungsgeschwindigkeit soll entsprechend F i g. 1 /mm/sec betragen. Diese Werte befinden sich auf dem
Lochstreifen 121 und werden durch das Lesegerät 170 abgelesen. Der Wert Ar wird im Eingangsregister 107 und
der Wert y im Eingangsregister 108 gespeichert. Im arithmetischen Schaltkreis 125 wird der Wert /
umgerechnet auf den Wert /i gemäß der folgenden Gleichung
Der resultierende Wert U wird im Eingangsregister 106 gespeichert.
Es ist zu vermerken, daß der Addierer 105 2" Additionen ausführen muß, damit alle Interpolationsimpulse in den X· und V-Richtungen erhalten werden,
da jedes Register η Bitstellen aufweist.
Die Zeit /, die erforderlich ist, daß der Weg vom Punkt A nach Punkt B durchschritten wird, ergibt sich
aus der Gleichung
t ~
(2)
Es sei vorausgesetzt, daß die Impulsfrequenz des Impulsgenerators 101 2" Hz beträgt, so daß die Anzahl
der Impulse, die der Impulsgenerator 101 erzeugt, wenn der Weg von Punkt A nach Punkt Bdurchschritten wird,
sich nach der nachfolgenden Gleichung richtet
m = 2"
(3)
Dies bedeutet also, daß während der Zeitdauer t m Zeitgeberimpulse zu 2"Geschwindigkeitsinterpolationsimpulsen
führen und daß diese 2"Geschwindigkeitsinterpolationüimpulse
zu χ Interpolationsimpulse in der X-Achse \:nd zu y Interpolationsimpulsen in der
V-Achse führen.
Gemäß der nachfolgenden Gleichung kann der Wert m auch wie folgt ausgedrückt werden
m = tr, + a-, + ffi + ·
(4)
Hierbei ist »u α?.«3, ■ ■ · «* positiv ganzzahlig.
Dies bedeutet also, daß m Impulse gruppiert werden
können in k Gruppen, wobei natürlich k kleiner ist als m.
Gemäß der vorliegenden Erfindung führt der Interpolationsschaltkreis Interpolationsrechnungen nur
k mal aus, d. h. wesentlich weniger als nach dem Stand der Technik, wo diese Rechnungen m mal ausgeführt
werden.
Der Zähler 102 zählt die Impulse vom Impulsgenerator 101, wobei der Inhalt des Zählers 102 dem Wert <x,-nach
Gleichung 4 entspricht. Der Inhalt <%, des Zählers
102 wird dem Überlaufregister 103 zugeführt. Erhält das Register 103 den Wert tx* dann wird der Zähler 102 auf
Null zurückgesetzt. Der Zähler 102 zählt dann von neuem Impulse vom Impulsgenerator 101.
Hat das Überlaufregister 103 den Wert «, erhalten,
dann multipliziert der Multiplizierer 104 den Inhalt «,
des Registers 103 mit dem Inhalt /, des Eingangsregisters 106 wie folgt:
Der Addierer 105 addiert das Produkt dieser Multiplikation mit dem Inhalt des Summenregisters 110.
Von der Summe dieser Addition wird die ganze Zahl gleich oder größer als 2" in das Überlaufregister 103
eingegeben, während der Restwert geringer als 2" in das
Summenregister 110 eingegeben wird. Da der Ursprungswert des Summenregisters gleich Null ist, kann
die zuvor beschriebene Rechnung auch ausgedrückt
werden nach folgender Gleichung
/ι ■ O1 ■ 1/2" = (ganze Zahl) + (■
Wert geringer als 2" 2"
Die ganze Zahl in dieser Gleichung 5 wird im Überlaufregister 103 als Geschwindigkeitsinterpolationsimpuls gespeichert, während der Wert geringer als
2" ir Register 110 gespeichert wird Der Inhalt des
Registers 103 wird dann dazu verwendet, die Interpolationsrechnungen für die X- und V-Achsen auszuführen.
Für die Interpolationsrechnung in der .Y-Achse wird
der Inhalt des Registers 103 mit dem Inhalt χ des Eingangsregisters 107 im Multiplizierer 104 multipliziert, und der Addierer 105 addiert den Inhalt des
Summenregisters 111 mit dem Produkt dieser Multiplikation. Der ganzzahlige Anteil gleich oder größer als
2" dieser Multiplikation und Addition wird als Überlaufweg dem Konverter 114 zugeführt, während der
111 hinzufügt.
Die erste Interpolationsrechnung für die .Y-Achse
kann mathematisch wie folgt ausgedrückt werden:
Restwert in das Erinnerungsregister 111 eingegeben wird. Der Konverter 114 setzt den Überlaufwert in
einen Impulszug um, so daß über den Servoschaltkreis 116 Interpolationsimpulse für die .Y-Achse dem
Antriebsmotor 118 zugeführt werden.
Als nächstes wird die Interpolationsrechnung für die K-Achse ausgeführt unter Verwendung der Inhalte des
Registers 103, des Eingangsregisters 108 und des Summenregisters 112, wobei diese Rechnung in gleicher
Weise ausgeführt wird wie für die X-Achse, wobei dann Interpolationsimpulse für die K-Achse den Antriebsmot jr 119 zugeführt werden.
Als nächstes wird die Interpolationsrechnung mathematisch erklärt.
Die Gleichung 5, welche die erste Interpolationsrechnung betrifft, entspricht der nachfolgenden Gleichung 6.
i* t ijn IT ι IT /9/7 (£.\
Hierbei ist Fi der ganzzahlige Anteil gleich oder
größer als 2" von F\ ■ a.\ ■ 1/2", während F, ι den Rest
darstellt mit einem Wert geringer als 2".
Der ganzzahligc Wert Fi wird im Register 103 gespeichert, und dieser ganzzahlige Anteil F\ wird dazu
verwendet, die Interpolationsrechnung sowohl in der A'-Achse als auch in der V-Achse auszuführen. Dies
bedeutet also, daß der Multiplizierer 104 eine Multiplikation ausführt des Inhalts des Registers 103 mit dem
Inhalt des Eingangsregisters 107 für die A"-Achseninterpolation und weiterhin der Addierer 105 das Produkt
dieser Multiplikation zum Inhalt des Summenregisters
(X)-F1 -1/2"=
Hierbei ist ΑΊ als Überlaufwert der ganzzahlige Anteil
gleich oder größer als 2" der Multiplikation* · Fi · 1/2",
während Xr \ den Restwert bedeutet mit einem Wert
geringer als 2".
Der Überlaufwert Xx wird dem Konverter 114
zugeführt, der die Interpolationsimpulse für die A'-Achse über den Servoschaltkreis 116 mit dem
Äniriebsmoior ί ie zuführt. Der Restwert AV ι wird in
das Register 111 eingegeben zur Ausführung der zweiten Interpolationsrechnung.
In entsprechender Weise wird die k-te Interpolationsrechnung für die Geschwindigkeitsinterpolation und die
XAchseninterpolation ausgeführt entsprechend den Gleichungen 8 und 9.
Die Interpolationsrechnung für die Geschwindigkeit wird ausgeführt entsprechend der Gleichung 8.
Hierbei ist Fk der ganzzahlige Anteil der k-len
Interpolationsrechnung und betragsmäßig gleich oder größer als 2", während Fr*den unganzzahligen Restwert
darstellt, der kleiner als 2" ist.
Die Interpolationsrechnung für die A'-Achse wird
ausgeführt entsprechend der Gleichung 9.
40
-„)
·-!- = [JTJ
Hierbei ist A* der ganzzahlige Anteil und somit der
Überlaufwert der Jt-ten Interpolationsrechnung und betragsmäßig gleich oder größer als 2", während der ΧΛ
den unganzzahligen Restwert kleiner als 2" darstellt.
Die vorstehende Rechnung wird wiederholt, und wenn die Interpolationsrechnungen k mal ausgeführt
wurden, dann ist die Gesamtzahl der Interpolationsimpulse F-, für die Geschwindigkeitsinterpolation 2", wie
die Gleichung 10 zeigt.
i-l i-l *
/r
(10)
60
Die Gesamtanzahi der Interpoiationsimpulse für die
.Y-Achse wird abgeleitet von der Gleichung 10 und lautet entsprechend der nachfolgenden Gleichung 11.
= X.
entsprechend den Gleichungen 3 und 4.
Die Gleichung 10 zeigt, daß die Gesamtanzahl der Interpolationsimpulse innerhalb von / Sekunden gleich
2" ist selbst wenn die Befehlsimpulse gruppiert werden zu Jt Gruppen.
(11)
Die Gleichung 11 zeigt daß χ Interpolationsimpulse
erhalten werden in Obereinstimmung mit dem Wert des Eingangsregisters 107, während k Wiederholungen der
Die Interpolationsrechnung für die V-Achse wird in
entsprechender Weise ausgeführt unter Verwendung des Inhalts «,im Register 103, und zwar jeweils nachdem
eine X-Achseninterpolationsrechnung durchgeführt
wurde.
Ein Zahlenbeispiel dient zum leichteren Verständnis der Arbeitsweise.
Es sei vorausgesetzt, daß die Bewegungslänge in der
X-Richtung 200 mm, die Bewegungsrichtung in der V-Richtung 150 mm und der Bewegungsschritt für jeden
Impuls 1 mm pro Impuls entsprechend Fig.5 beträgt. Weiterhin sei vorausgesetzt, daß jedes Eingangsregister
und jedes Summenregister 8 Bitstellen aufweist, so daß jedes Register einen Wert bis zu 2'—1 = 255 speichern
kann.
In Tabelle 1 ist die Interpolationsrechnung des bekannten Schaltkreises nach Fig.2 gezeigt, wobei
/=39 und
=
V2Ö01+1502
ist.
10
15
20
25
In Tabelle 1 zeigt die Spalte a die Zeitgeberimpulse vom Impulsgenerator 17, die Spalte b die Geschwindigkeitsinterpolationsrechnung
irr· Schaltkreis 10, die Spalte c die Geschwindigkeitsinterpolationsimpulse in
der Ausgangsleitung 29, die Spalte d die X-Achseninterpolationsrechnung
im Schaltkreis 11, die Spalte e die
10
Interpolationsimpulse in X-Richtung in der Auisgangsleitung 30, die Spalte f die V-Achseninterpolalionskalkulation im Schaltkreis 12 und die Spalte g die
Interpolationsimpulse in V-Richtung in der Aiisgangs-Ieitung31.
Als erstes wird die Geschwindigkeitsinterpolationsrechnung ausgeführt (stehe Spalte a) und! bei der
7. Rechnung übersteigt das Resultat die Zahl 2.% (-2»), so daß ein Überlaufwert auftritt (siehe Spalte b). Die
Überlaufimpulse gemäß Spalte b werden verwendet als Befehlimpulse für die lnterpolationsrechnunjicn in den
X- und y-Richtungen, d.h. die Interpolationsrechnungen gemäß Spalten d und f werden ausgeführt
nur dann, wenn in der Spalte b ein Ausgang 1 vorhanden ist. Beim 13. Zeitgeberimpuls erzeugen die Schaltkreise
11 und 12 einen Überlauf impuls, wie die Spalten e und g
zeigen. Diese Überlaufimpulse werden den Antriebsmotoren als Interpolationsimpulse zugeführt.
Die Ausgangsimpulse in Tabelle 1 sind in F i g. 6a bis 6d für f\ -40 als Impulszüge gezeigt. Die F i j;. 6a zeigt
uic Z-ciigcDCnnipülsC
gp pg (
Spalte a in Tabelle 1). F i g. 6b zeigt die Überlaufimpulse für die Geschwindigkeitsinterpolationsrechnumg in der
Ausgangsleitung 29 (siehe Spalte c in Tabelle \\ wobei (\ «= 40 ist. Die F i g. 6c zeigt die Überlaufimpulse für die
XAchseninterpolationsrechnung an der Ausgangsleitung 30 (siehe Spalte e in Tabelle \\ und F ii 15.6d zeigt
die Interpolationsimpulse in der Ausgangsleitiing 31 für die Y-Achse (siehe Spalte g in Tabelle 1) jeweils für den
Fall Λ-40.
(a) (b)
(O (d)
(e) (D
1 0 + 40 = 40
2 40 + 40 = 80
3 80 + 40 = 120
4 120 + 40=160
5 160 + 40 = 200
6 200 + 40=240
7 240 + 40 = 24 +
8 24 + 40 = 64
9 64 i- 40 =104 10 104 + 40=144
Π 144 + 40= 184
12 184 + 40=224
13 224 + 40 = 8 +
14 8 + 40 = 48
15 48 + 40 = 88
16 88 + 40=128
17 128 + 40= 168
18 168 + 40 = 208
19 208 + 40 = 248
20 248 + 40 = 32 + 256
21 32 + 40 = 72
22 72 + 40=112
23 112 + 40=152
24 152 + 40=192
25 192 + 40 = 232
26 232 + 40=16 + 256
27 16 + 40 = 56
28 56 + 40 = 96
29 96 + 40=136 3Ö i36 + 4O= i 76 31 176 + 40 = 216
0 + 200 = 0 + 150 = 150
I 200 + 200=144 + 256 1 150+150= 44 + 256 1
144 + 200 = 88 + 256 44+150=194
88 + 200 = 32 + 256 1 194+150 = 88 + 256 1
Fortsetzung
(a) in)
(O id)
(e) (0 (g)
32 216+10 = 0 + 256
33 0 + 40 = 40
34 40 + 40 = 80
35 80 + 40=120
36 120 + 40 = 160
37 160 + 40=200
38 200 + 40=240
39 240 + 40=24 + 256
40 24 + 40 = 64
41 64 + 40= 104
42 104 + 40= 144
43 144 + 40=184
44 184 + 40 --- 224
45 224 + 40 = 8 + 256
46 8 + 40 = 48
47 48 + 40 = 88
48 88 + 40= 128
49 128 + 40 = 168
50 168 + 4Γ = 208
51 208 + 40=248
52 248 + 40=32 + 256
53 32 + 40=72
54 72 + 40=112
55 112 + 40=152
56 152 + 40=192
32 + 200 = 232
88+150=238
1 232+200=176 + 256 1 238+150=132 + 256 1
1 176 + 200=120 + 256
1 120 + 200 = 64 + 256 1 132+150=26 + 256 1
26+150=176
Zum Vergleich ist in F i g. 6 der Fall dargestellt, wenn f\ — 200 ist. F i g. 6e zeigt für diesen Fall die Geschwindigkeitsinterpolationsimpulse,
6f stellt die .tf-Achseninterpolationsimpulse und 6g die y-Achseninterpolationsimpulse
dar. Wie der Vergleich der Impulszüge in F i g. 6e, 6f und 6g mit denjenigen nach F i g. 6b 6c und
6d zeigt, hat sich die Impulshäufigkeit um das 5fache erhöht Dies bedeutet also, daß der Digitalschaltkreis
gemäß dem Stand der Technik bei Zi= 200 fünfmal schneller arbeiten muß als beim Fall, wo f\ ^AO ist.
Die Tabelle 2 zeigt die Interpolationsrechnung gemäß der vorliegenden Erfindung für den Fall /i=40 (T=39),
*=200 und y= 150. In Tabelle 2 beinhaltet die Spalte a
die Zeitgeberimpulse vom Impulsgenerator 101 in F i g. 4, die Spalte b den Ausgang vom Zähler 102, die
Spalte c die Geschvvindigkeitsinterpolationsrechnung, die Spalte d die Geschwindigkeitsinterpolationsimpulse
Fj, die Spalte e die .X-Achseninterpolationsrechnung, die
Spalte f die ΛΓ-Achseninterpolationsimpulse x* die
Spalte g die A'-Achseninterpolationsrechnung und die
Spalte h die Y-Achseninterpolationsimpulse yj.
Gemäß Fig.4 werden die Zeitgeberimpulse vom
Impulsgenerator 101 gezählt im Zähler 102, wobei die
Geschwindigkeitsinterpolationsrechnung entsprechend der Gleichung 8 ausgeführt wird, wenn der Inhalt des
Zählers 102 den Wert «, erreicht Es ist zu vermerken,
daß der Wert «/willkürlich gewählt werden kann und im
Ausführungsbeispiel gemäß Tabelle 2 wie folgt ist
ai=6,«2 = 8,*3 =
6, «5= \\,<Xf, — 6,
Wenn der Inhalt α, des Zählers 102 dem Register 103
zugeführt ist, wird der Zähler 102 auf Null zurückgestellt, und der Zähler 102 zählt die Impulse für den
nächsten Interpolationszyklus.
Die Rechnung gemäß Gleichung 8 wird ausgeführt unter Verwendung des Inhalts des Registers 103 und des
Inhalts f\ des Registers 106. Der durch die Rechnung
so erhaltene ganzzahlige Anteil gleich oder größer als 28
( = 256) wird in das Register 103 eingegeben und dort als Wert F, gespeichert. Der Rest kleiner als 28 wird im
Register 110 gespeichert. Der Inhalt /vdes Registers 103
und der Wert X im Register 107 werden im Multiplikator 104 miteinander multipliziert, und das
Produkt dieser Multiplikation wird im Addierer 105 zum Inhalt des Registers 111 hinzuaddiert entsprechend der
Gleichung 9. Als Ergebnis der -Y-Achseninterpolationsrechnung
wird der ganzzahlige Teil größer oder gleich 28 der Ausgangsleitung 122 als -V-Achseninterpolationscode
zugeführt, der umgewandelt wird in einen Impulszug von Interpolationsimpulsen durch den
Konverter 114. Die so erhaltenen Interpolationsimpulse
werden über den Servoschaltkreis 116 dem Antriebsmotor
118 zugeführt Entsprechend wie die X-Achseninterpolationsimpulse
werden diejenigen für die y-AchseninterpoIation erhalten. Sie sind in Spalte h der
Tabelle 2 gezeigt
13
14
(b! (C)/, =40
(d) (C)(AT)I = 200
(O
I | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 1 |
8 | 2 |
9 | 3 |
10 | 4 |
11 | 5 |
12 | 6 |
13 | 7 |
14 | 8 |
15 | 1 |
16 | 2 |
17 | 3 |
18 | 4 |
19 | 5 |
20 | 6 |
21 | 7 |
22 | 8 |
23 | 9 |
24 | 1 |
25 | 2 |
26 | 3 |
27 | 4 |
28 | 5 |
0 (200 x0 + 0)/2g = 0 + 0/2" 0 (150x0+0)/28 = 0+0/2" 0
(40x8 + 240)/2" =
2 (20Ox 2 + 0)/2" = 1 + 144/2»
(150 x2 + 0)/2" = 1+44/2'
(40x9 + 48)/28 = 1 + 152/2" 1 (20Ox 1 + l44)/2' = 1 +88/2" 1 (15Ox 1+44)/2'= 0+194/2* O
6 (40x6+152)/2"= 1 + 136/28 1 (20Ox 1+88)/2'= 1+ 32/2' 1 (15Ox 1 + 198)/2" = 1 +88/2" I
Tabelle 2 (Fortsetzung)
(a) | (b) | (C/, | = 40 | I | (d) | (e) X = | 200 | I | (O | (g) Γ = | 150 | 1)1 ' | lh) |
PG | + A1C-DIy | 2" | |||||||||||
!101) | L | Ir. χ F1 | X, | Iy* F,· | + W- | ||||||||
30 | 1 |
31 | 2 |
32 | 3 |
33 | 4 |
34 | 5 |
35 | 6 |
36 | 7 |
37 | 8 |
39 | 9 |
39 | IO |
40 | Il |
41 | I |
42 | 1 |
43 | 3 |
44 | 4 |
45 | 5 |
46 | 6 |
47 | I |
48 | 2 |
49 | .1 |
50 | 4 |
51 | 5 |
52 | fl |
53 | 7 |
54 | 8 |
55 | 9 |
(4Ox 11 + 136) 2" = 2 + 64/2" 2 (200 χ 2 + 32)/2" = 1 + 176/2" I (15Ox 2 + 8£)/2" = I + 132/2" I
(40x6 + 64)/2"= 1+48/2" I (200χ 1 + 176)/2" = 1 + 120/2" I (15Ox I + 132)/28 = 1+26/2" I
IO (40* IO+ 48); 2" = I +32/2" I (20Ox I + 120) 2" = I+64/2" I (150 χ I + 26)2" = 0+176 2" 0
Geschwindigkeit f\ gering ist Fig.7e zeigt den
Impulszug der Interpolationsimpulse in K-Richtung, wobei dieser Impulszug demjenigen nach Fig.6d
entspricht, da die Geschwindigkeit /ι gering ist
Als nächstes wird die Arbeitsweise gezeigt wenn die
Geschwindigkeit /t groß ist Im folgenden Beispiel sei vorausgesetzt daß die Geschwindigkeit /i-200
(7-195,3), X= 200 und y-150 ist Die Interpolationsrechnung wird in Tabelle 3 verdeutlicht
Die durch die Rechnung erhaltenen Impulse der ι ο
Tabelle2 sind in Fig.7 gezeigt Fig.7a zeigt die
Zeitgeberimpulse welche im Impulsgenerator 101 in F i g. 4 erzeugt werden. F i g. 7b zeigt den Wert«»d. h.
den Ausgang des Zählers 102 entsprechend Spalte b in
Tabelle 2. λ,- wird im vorliegenden Ausführungsbeispiel
erzeugt beim &, H, 23, 29, 40, 46. und 56.
Zeitgeberimpuls. Die Zahlen 0, 2, 1, 1, 2, 1, 1 an der
Oberseite jedes Impulses in Fig. 7b zeigen die Anzahl der Geschwindigkeiuinterpolationsimpulse F/ entsprechend Spalte d in Tabelle 2. Fig. 7c zeigt den Ausgang
des Addierers 105 in Λ'-Richtung, und die Zahlen an der
Oberseite jedes Impulses geben die Anzahl der Jf-Richtungsinterpolationsimpulse X-, an. Diese Zahlen
in F i g. 7c korrespondieren mit der Spalte /in Tabelle 2. Fig.7d zeigt den Impulszug am Ausgang des
Impulskonverters 114. Es zeigt sich, daß der Impulszug
in Fig.7d der gleiche ist wie in Fig.7c, da die
(b) (C)/= 200
(d) (e)
(0
I | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 1 |
8 | 2 |
9 | 3 |
10 | 4 |
11 | 5 |
12 | 6 |
13 | 7 |
14 | 8 |
15 | 1 |
16 | 2 |
17 | 3 |
18 | 4 |
19 | 5 |
20 | 6 |
21 | 7 |
22 | 8 |
23 | 9 |
24 | I |
25 | 2 |
26 | 3 |
27 | 4 |
28 | 5 |
(200x6 + 0)/2" = 4+I76/2' 4 (200 χ 4 + 0)/2" = 3 + 32/2" 3 (150x4 + 0)/28 = 2 + 88/2'
(200x8 + 176)/2* = 6 + 240/2" 6 (200 x6 + 32)<2" = 4 + 208/2" 4 (150 χ 6 + 88)/2" = 3 + 220/2» 3
(200x9 + 240)/28 = 7+248/2' 7 (2OOx7 + 208)/2" = 6 + 72/2" 6 (15Ox 7+ 220)/2" = 4 + 246/2" 4
6 (2O0x6 + 248)/2" = 5+168/2" 5 (200x 5 + 72) 2" = 4 + 48/2" 4 (15Ox 5 + 246) 2" = 3 + 228 2" 3
(a) (b) (C)/, = 200
(d) (e) = 200 /. !χχ^ + .ν
(0 (g).i = l50
X, l.ixf,+K,(i-I)) 1
30 | 1 |
31 | 2 |
32 | 3 |
33 | 4 |
.14 | 5 |
35 | 6 |
36 | 7 |
.17 | 8 |
.18 | 9 |
.19 | 10 |
I i7 I Fortsetzung |
(b) (C)/, = 200 | 28 35 164 | 18 | (hi |
(a) | ' ι » ι 2" | (d) (β)χ= 2OD | (0 (B)J = ISO | y, |
11 (20Ox 11+ 168)/2" = 9 + 64/2" | *, iJ-xfi+^w-Djl · | 6 | ||
40 | 1 2 3 4 5 |
9 (200x9+48)/2" = 7 + 56/2" | 7 (150x9 + 228)/2" = 6+42/2" | |
41 42 43 44 45 |
6 (200 χ 6 + 64)/2" = 4+240/2" | 2 | ||
46 | 1 2 3 4 5 6 7 8 9 |
4 (200x4 + 56)/2" = 3 + 88/2" | 3 (150x4+42)/2" = 2+l30/2" | |
S Sl 52 53 54 55 |
||||
10 (20Gx 10 + 240)/2" = 8+192/2' 8 (200x8 + 88)/28 = 6+152/2" 6 (150x8 + 130)/28 = 5 + 50/2" 5
In Tabelle 3 gibt die Spalte a den Ausgang de» Impulsgenerators 101 wieder, Spalte b zeigt den
Ausgang des Zählers 102, Spalte c die Geschwindigkeitsinterpolationsrechnung, Spalte d die Geschwindigkeit^·
interpolationsimpulse F» Spalte e die X-Achseninterpolationsrechnung, Spalte /"die X-Achsenunterpolationsimpulse Xh die Spalte g die V-Achseninterpolations-
rechnung und die Spalte h den V-Achseninterpolationsimpuls Yi. Gemäß Tabelle 3 erzeugt der Zähler 102
einen Ausgang beim 6, 14., 23, 29, 40, 46. und 56. Impuls
des Impulsgenerator 101. Entspi chend Spalte b in
Tabelle 3 ist der Wert von
«, gleich «,·— 6, on - 8 (-14—6),
() (
5-ll (=40-29),o«-6(-46-40),
( )
Die Gescbwindigkeitsinterpolationsrechnung für jeden Wert α, wird entsprechend Spalte c in Tabelle 3
ausgeführt Die sich ergebenden Geschwindigkeitsinter· polationsimpulse F1 i zeigt die Spalte d in Tabelle 3 (Fi-4,
6, 7, 5, 9, 4, 8). Unter Verwendung des so erhaltenen Werts Fi werden die Interpolationsrechnungen ausgeführt entsprechend den Spalten e und g. Es werden
Werte Xi (= 3, 4, 6, 4, 7. 3, 6) und Y{ r (- 2 3, 4, 3, 6, 2, 5)
erhalten.
Die F i g. 7f bis 7j zeigt die nach der Rechnung in Tabelle 3 erhaltenen Impulszüge. F i g. 7a ist wiederum
der Zeitgeberimpulszug vom Ausgang des Impulsgenerators 101. Es handelt sich hierbei um den gleichen wie
beim Beispiel mit Λ — 40. Fig.7f zeigt den Ausgang α,
des Zählers 102, wobei ein Ausgangssignal auftritt beim 6, 14, 23, 29, 40, 46. und 56. Zeitgeberimpuls
entsprechend Spalte b in Tabelle 3. Die Zahlen 4,6,7,5,
9, 4, 8 an der Überseite jedes Impulses gemäß F i g. 7f zeigt die Anzahl der Geschwindigkeitsinterpolationsimpulse f-, für jeden Wert von «, entsprechend Spalte d
in Tabelle 3. Fig.7g zeigt die Anzahl x, der X-Achseninterpolationsimpulse am Ausgang des Addierers 105 infolge der X-Achseninterpolationsrechnung
entsprechend Spalte e in Tabelle 3. Die Zahlen an der Spitze jedes Impulses in F i g. 7g entspricht der Spalte f
in Tabelle 3. Fi g. 7h zeigt den Impulszug am Ausgang des X-Achsenkonverters 114. Die Gesamtzahl der
Impulse in F i g. 7h Ober einen gegebenen Zeitraum ist gleich der Gesamtzahl der Impulse in F i g. 6f, jedoch
werden gemäß Fig.7h mehrere Impuls«* gleichzeitig
erzeugt Obwohl mehrere Interpolationsimpulse zur gleichen Zeit erzeugt werden, wird eine gleichmäßige
Bewegung der Werkzeugmaschine auch bei hoher Geschwindigkeit f\ erreicht F i g. 7i zeigt die Y-Achseninterpolationsimpulse und Fig.7j die Impulse am
Ausgang des V-Achsenkonverters entsprechend Spalte
hin Tabelle 3.
Es ist zu vermerken, daß der Wert ä» d.h. der
Ausgang des Zählers 102 eine ganze Zahl größer als 2 sein kann. Demgemäß kann der Multiplizierer 104 in
Fig.4 auch andere Aufgaben erfüllen außer der Geschwindigkeitsinterpolationsrechnung entsprechend
Gleichung 8 und der Achseninteryj'ationsrechnung
entsprechend Gleichung 9. Beispielsweise kann er die Auswahl eines Bits für den nächsten von der
Werkzeugmaschine auszuführenden Arbeitsprozeß steuern. Die hierfür zur Verfügung stehende Zeit hängt
natürlich davon ab, welche Arbeiten dieses Bauteil zuvor ausführte. Falls ein Zeitgeberimpuls im Impulsgenerator 101 während der Zeit erzeugt wird, bei der
der Multiplizierer 104 eine andere Aufgabe erfüllt, so wird dieser Impuls nirht verloren, sondern im Zähler 102
gezählt Nachdem der Multiplizierer 104 die andere Aufgabe beendet hat kann eine Interpolationsrechnung
ausgeführt werden unter Verwendung des im Zähler 102 gespeicherten Werts on. Auf diese Weise werden
Interpolationsimpulse erhalten, auch wenn der Multiplizierer 104 eine andere Aufgabe übernommen hat
Die Interpolationsrechnungen können ausgeführt werden durch einen programmierten Microcomputer,
der nicht nur die Interpolationsrechnungen ausführt, sondern auch andere Aufgaben zur Steuerung einer
Werkzeugmaschine übernimmt Selbst wenn der Microcomputer eine andere Aufgabe eine Zeitlang übernommen hat kann er die Interpolationsrechnung korrekt
nach Beendigung dieser Aufgabe ausführen unter Verwendung des Inhalts des Zählers 102.
Claims (1)
1. Numerische Interpolationsjchaltung zur
Ansteuerung von Koordinatenstellmitteln auf der Basis von digitalen Differentialanalysatoren mit
Eingangsregistern zur Speicherung von Sollwertgrößen, mit Summenregistern und miit Addierern, die
die gebildeten Summen für die Koordinatenbefehle und einen Geschwindigkeitsbefehl jeweils aufteilen ι ο
in Oberlauf- und Restwerte, welche letztere in die Summenregister eingegeben wenden, wobei die
Ausgänge der Differentialanalysatoren mit den Koordinatenstellmitteln verbunden sind, dadurch
gekennzeichnet, daß die Eingangsregister is
(106, 107, 108) und die Summenrogister (UO1 111,
112) zu je einer Gruppe zusammengefaßt sind, daß nur ein einziger Addierer (105), «in Multiplizierer
(104) und ein Überlauf register (103) vorgesehen sind, daß der Multiplizierer (104) den jeweiligen Inhalt des
Oberlaufregii'ers (103) multipliziert mit dem Inhalt
eines der Eiagangsregister (z.H. 106) und das Ergebnis dem Addierer (105) :tuführt, daß der
Addierer (105) dieses Ergebnis addiert zu dem Inhalt des Summenregisters (z. B. 110), welches dem einen
Eingangsregister (z. B. 106) zugeordnet ist, daß der
Überlaufwert für jede Koordinai:e das zugehörige Koordinatenstellmittel ansteuen und der Überlaufwert des Geschwindigkeitsbefehl·! in das Überlaufregister (103) für die Multiplikation mit den Inhalten
der die Koordinatenbefehle (x, y) speichernden Eingangsregistern (107, 108) eingegeben wird und
daß das Überiaufregister (103) für die Multiplikation mit dem Geschwindigluitsbeft'.il (Ti) eine Zahl (<m)
enthält, welche durch den Inhalt eines von Zeitgeberimpulsen getakteten '.ählers (102) bestimmt wird.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9876877A JPS5433980A (en) | 1977-08-19 | 1977-08-19 | N c system and devic |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2835164A1 DE2835164A1 (de) | 1979-02-22 |
DE2835164C2 true DE2835164C2 (de) | 1982-10-07 |
Family
ID=14228559
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2835164A Expired DE2835164C2 (de) | 1977-08-19 | 1978-08-11 | Numerische Interpolationsschaltung |
Country Status (3)
Country | Link |
---|---|
US (1) | US4213186A (de) |
JP (1) | JPS5433980A (de) |
DE (1) | DE2835164C2 (de) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4578763A (en) * | 1983-08-15 | 1986-03-25 | International Cybernetics Corp. | Sampled data servo control system with deadband compensation |
US5175701A (en) * | 1989-07-25 | 1992-12-29 | Eastman Kodak Company | System for performing linear interpolation |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3590226A (en) * | 1968-06-10 | 1971-06-29 | Hughes Aircraft Co | Machine tool control system |
US3649899A (en) * | 1971-01-25 | 1972-03-14 | Allen Bradley Co | Feedrate numerical control contouring machine including means to provide excess feedrate |
JPS5337510B2 (de) * | 1973-06-05 | 1978-10-09 | ||
US4031369A (en) * | 1975-08-12 | 1977-06-21 | The Bendix Corporation | Interpolation and control apparatus and method for a numerical control system |
JPS6045442B2 (ja) * | 1976-02-25 | 1985-10-09 | 豊田工機株式会社 | 直線補間パルス分配方式 |
US4125897A (en) * | 1977-05-10 | 1978-11-14 | Oki Electric Industry Co., Ltd. | High speed pulse interpolator |
-
1977
- 1977-08-19 JP JP9876877A patent/JPS5433980A/ja active Granted
-
1978
- 1978-08-08 US US05/932,186 patent/US4213186A/en not_active Expired - Lifetime
- 1978-08-11 DE DE2835164A patent/DE2835164C2/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2835164A1 (de) | 1979-02-22 |
JPS5538687B2 (de) | 1980-10-06 |
US4213186A (en) | 1980-07-15 |
JPS5433980A (en) | 1979-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60302920T2 (de) | Numerische Steuerung | |
DE102018000369B4 (de) | Numerische steuerung | |
DE3422107C2 (de) | Roboter-Steuerungsvorrichtung | |
CH630553A5 (de) | Maschine zum selbsttaetigen schneiden von flachmaterial. | |
DE4107707A1 (de) | Verfahren und vorrichtung zum kompensieren von lagefehlern | |
DE2045114A1 (de) | Verfahren zur Herstellung von Datensätzen fur numerische Steuerungen | |
DE2138815A1 (de) | Numerische Werkzeugmaschinensteue rung | |
DE2114225C2 (de) | Digitale Funktionsgeneratoranordnung | |
EP0419705A1 (de) | Verfahren zur Ruckbegrenzung von numerischen Antriebssystemen | |
DE1299917B (de) | Automatische Programmsteuereinrichtung fuer Werkzeugmaschinen | |
DE102009038155A1 (de) | Servomotorsteuergerät | |
DE1588093A1 (de) | Anordnung zum automatischen Steuern von Werkzeugmaschinen | |
EP3438773B1 (de) | Bearbeitung von werkstücken mit modellgestützter fehlerkompensation | |
DE2103049C3 (de) | Vorrichtung eines numerisch gesteuerten Folgesystems | |
DE102009026412A1 (de) | Numerische Steuervorrichtung mit der Funktion zur Durchführung einer zyklischen Hochgeschwindigkeitsbearbeitung | |
EP0184075A1 (de) | Einrichtung und Verfahren zum Regeln eines Industrieroboters | |
DE2835164C2 (de) | Numerische Interpolationsschaltung | |
DE2827712A1 (de) | Einrichtung zum interpolieren eines bogens fuer eine nc-steuerung | |
DE19614232A1 (de) | Verfahren und Vorrichtung für die numerische Steuerung | |
DE3943342A1 (de) | Servosteuersystem | |
EP0417337B1 (de) | Verfahren zum Betrieb einer numerisch gesteuerten Werkzeugmaschine oder eines Roboters | |
DE2441100A1 (de) | Frequenzvervielfachungssystem mit digitalem differentialanalysator zur numerischen werkzeugmaschinensteuerung | |
EP0184036B1 (de) | Numerische Steuerung für Werkzeugmaschinen | |
DE102018009999A1 (de) | Numerische steuerung | |
DE2360752A1 (de) | Vorschubgeschwindigkeits-regelsystem fuer eine nc-vorrichtung, insbesondere fuer eine werkzeugmaschine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OAP | Request for examination filed | ||
OD | Request for examination | ||
D2 | Grant after examination | ||
8339 | Ceased/non-payment of the annual fee |