DE1513474A1 - Numerische Bahnsteuerung - Google Patents
Numerische BahnsteuerungInfo
- Publication number
- DE1513474A1 DE1513474A1 DE19651513474 DE1513474A DE1513474A1 DE 1513474 A1 DE1513474 A1 DE 1513474A1 DE 19651513474 DE19651513474 DE 19651513474 DE 1513474 A DE1513474 A DE 1513474A DE 1513474 A1 DE1513474 A1 DE 1513474A1
- Authority
- DE
- Germany
- Prior art keywords
- interpolator
- interpolation
- control according
- functions
- equidistant
- 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
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/36—Nc in input of data, input key till input tape
- G05B2219/36573—X, y, z and tooloffset values or direction values
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/50—Machine tool, machine tool null till machine tool work handling
- G05B2219/50334—Tool offset, diameter correction
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)
- Complex Calculations (AREA)
Description
- Numerische Bahnsteuerung Die Erfindung bezieht sich auf eine numerische Bahnsteuerung für Werkzeug- und ähnliche Maschinen zum Erzeugen ebener Kurven mit variabler Krümmung. Insbesondere ist die erfindun@sgemäße Steuerung für eine von der Eingabe der Bahndaten gesonderte Eingabe einer relativen derkzeugversetzun; vorgesehen. Ein wesentlicher Teil einer numerischen Bahnsteuerung ist ein digitaler Interpolator. Dieser hat die Aufgabe, ein I-Yerczeug (z. B. einen Fräser, einen Schneidbrenner, einen Zeichenstift) auf einer bestimmten, freizügig programmierbaren Bahn relativ zu einem Jerkgtück - als solches ist beispielsweise auch eine Zeichnung zu verstehen - zu führen. Die Bahn wird bei digitaler Steuerunan der Maschine selbst nicht durch eine Linie, sondern durch eine Punktfol_;e festgelegt, die so dicht sein muß, daß eirB sche-rbar kontinuierliche Bewegung entobht. Der Berechnung dieser Punktfolge dienen kleine Spezialrechner, die erwähnten Interpolatoren (oder Funktionsgeneratoren). In der Regel beschränkt man sich auf möglichst wenige verschiedenartige Interpolationsfunktionen, um den Aufwand niedrig zu halten. Am meiste n.werden Geraden alleine (Automatik", Januar 1960, Seiten 6 bis 13) oder Geraden und Kreise, seltener Parabeln, Hyperbeln., Ellipsen und Polynome verwendet ("Regelungstechnikt' 1965, Heft 3, Seiten 115 bis 123). Neuerdings wurde auch die Anwendung sogenannter "natürlicher Polynome" für diesen Zweck bekannt ("YDI-Zeitschrift" 104, 1962, Nr. 35, Seiten 1806 bis 1813). - . Die Gerade allein reicht grundsätzlich zur Approximation jeder beliebigen Kurve aus. Es sind aber soviele kleine Stücke nötig, daß zu ihrer Berechnung ein Digitalrechner unumgänglich ist. Der Kreis als diejenige gekrümmte Kurve, die sich am einfachsten zeichnen und maschinell fertigen läßt, kommt in der Technik sehr häufig vor. Deshalb ist es sinnvoll, als weitere Interpolationskurve den Kreis einzuführen. Noch bessere Interpolationsmöglichkeiten bieten Kurven mit variabler Krümmung, z. B. die Kegelschnitte und Polynome. Diese haben jedoch im Gegensatz zum Kreis in der Regel keine enge Beziehung zu den üblichen Konstruktions- und Herstellungsverfahren, lassen sich aber mit Interpolatoren verhältnismäßig leicht erzeugen. Dagegen erfordern die natürlichen Polynome einen sehr hohen Aufwand, ohne daß sie in der Anwendung weitere Vorteile bietens ihre Eigenschaft, unabhängig vom Koordinatensystem immer die gleiche Approximation einer punktweise gegebenen Funktion
zu liefern, ist technisch nichybedeutsam. - Dadurch wird erreicht, daß sich die äquidistanten Kurven nur im Wert-cines Funktionsparameters unterscheiden. Die erfindungsgemäß verwendeten Interpolationsiunktionen werden im folgenden einfach "Äquidistanzfunktionen" genannt. Als Spezialfälle sind in ihnen auch Kreis und Gerade enthalten. Die Darstellung im kartesischen, oder im Polarkoordinatensystem bietet keinen Ansatzpunkt für die Gewinnung der Xquidistanzfunktionen. Ihre kennzeichnende Eigenschaft ist nämlich, daß sie konzentrische Krümmungskreise in einander entsprechcnden Punkten besitzen. Die erfindungsgemäßen Äquidistanzfunktionen genügen somit alle dem Schema ,@ f @N) + a t1) Dabei bedeutet den Krümmungsradius,L.den Winkel zwischen der Normalen in dem betri,chteten Punkt und einer beliebigen, festen Geraden g, a eine Konstante, die allein sich mit dem Abstand ändert, also für jede einer Schar von Äquidistanten eine andere ist.
- Die in Verbindung mit den folgenden Erläuterungen stehenden Figurgn stellen dar:
Figur 2 ein Stück einer Interpolationskurve in einem rechtwinklig . gen Koordinatensystem; . Figur 3 einige Beispiele von bevorzugten erfindungsgemäperi Inter- polationskurven; Figur 4 einige Transformationen ins und 1; Figur 5 verschiedene Interpolationskurven durch zwei Punkte; Figur 6 eine unbrauchbare Interpolationskurve durch zwei Punkte; Figur 7 die Struktur eines erfindungsgemäßen Interpolators; Figur B_den Aufbau .einer erfindungsgemäßen Steuerung in sche- matischer Form; Figur 9 einander entsprechende Stücke einer Grundbahn und einer Äquidistanten dazu; Im folgenden werden zunWlst die erfindungogemäßen Äquidistanz- funktionen sowie einige ihrer möglichen Transformationen und Verwendungsfälle mathematisch betrachtet. Für die Transformation aus einem y , ,r-System in ein rechtwinkli- ges Kcordinatensystem ( x) y-System) gilt gemäß Figur 2, wenn die Richtung von g in die positive x-Richtung fällt: dx = -da sing _ -@ sing dZ dy'= de aosr _ cos "c dV (2) mit (1) ergibt sich: x = - .@f (Z#) sinT dir + a cosv + c y = lf (Z) cosZ' d V + a sinZ` + e (3) a) S = a = tonst ergibt Kreise x = xo - a + a cosÜ y = yo + a sinV b) Y = a + bv' ergibt Äquidistgriten zur Kreisevolvente x = x0 - a + a cosg + b (G cosc - sin?) y = yo + a sinV + b (C sinG + 'tos ä -1). c) = a + b e~ ergibt Äquidistanten zur logarithmischen Spirale N H x = xo - a - 2 + a tos V + -b@ e4 tos (G + '@4 ) y = yo - 2 + a sinc + b ev sin(V + #) 2 d) # = a + b sin z ergibt. Äquidistanten zu,#Zykloide x = xo - a + a cosV + # (sin2G - 2V) y = yo + a sinV - b (cos2 i - 1) (4) - Für die Interpolationskurven bestehen noch Variationsmöglichkeiten: Eine Drehung der Kurven um den @Vinkelc(# entsteht durch die Transformation VK- = V - c(. (Gü kann als Winkel zwischen der Bezugsgeraden g und der positiven x-Achse gedeutet werden). Eine solche Drehung bedingt einen etwas größeren Aufwand im Interpolator, gibt aber noch größere Freizügigkeit bei der Anwendung von Interpolationskurven.
- Bei der Transformation V * _ - (Figur 4a) ändert sich gemäß Gleichung (2) nur das Vorzeichen von dy, wodurch eine Spiegelung an der x-Achse hervorgerufen wird. Die Vorzeichen von dx und dy werden durch die Transformation r x-- = V + i , also durch Drehung um 180o, geändert (Figur 4b);'dGmit ist gleichbedeutend die Transformation = -, was 'auch geometrisch verständlich ist (Figur 4c).
- Die Beispiele b bis d erfindungsgemäßer Interpolationsfunktionen zeigen Funktionen mit 4 Freiheitsgraden. Sie können beispielsweise durch zwei Funkte und die Richtungen in diesen Punkten bestimmt werden: Für die Funktionen x _ gx .(al by cy 4) und y = gy (a, b, e , v ) seien die Punkte (x" y,) und (x2, y2) mit den Normalenrichtungen i bzw.- yi2 gegeben. Durch Einsetzen in die obigen Gleichungen ergeben sich dann vier Bestimmungsgleichungen für die vier Unbekannten, a, b, c und e. Die Gleichungen sind, da die Winkelfunktionen für i und 7'2 bekannt sind, in den Unbekannten linear und lassen sich somit leicht auflösen.
- Würde eine Drehung um den Winkelc-teingeführt, so entstünden erheblich kompliziertere Gleichungen, welche die Kreisfunktionen vonczenthielten. Trotzdem wäre eine Lösung noch mit erträglichem Aufwand möglich, wenn von einem dritten Punkt die Abszisse oder Ordinate und die Neigung vorgegeben wären..Würden4 indessen beide Koordinaten, x3 und y3 dieses Punktes vorgeschrieben, so müßten sechs Gleichungen angesetzt werden, welche die Neigung 3 als sechste Unbekannte enthielten. Das gären im allgemeinen aber analytisch nicht lösbare (transzendente) Gleichungen, da sich-nicht eliminieren läßt. Aus dem gleichen Grunde ist es bei dem zuerst betrachteten System mit vier Unbekannten nicht möglich, drei Punkte und eine Richtung oder vier Punkte vorzuschreiben.' Allgemein ist es daher am zweckmäßigsten, eine Funktion mit vier Freiheitsgraden zu wählen, und sie durch die Vorgabe von zwei Punkten und zwei'Neigungen in diesen Punkten zu be=. stimmen. Notfalls müssen die Neigungen beim Programmieren besonders berechnet werden, z.B. bei einer Punktfolge mit Hilfe von Appromaxitionspolynomeri höheren Grades.
- Die Winkel dürfen nicht modulo 25'u, sondern müssen eindeutig angegeben werden. In Figur 5 beispielsweise nimmt rV, zwischen den Punkten P, und P2 längs der Kurve Ki von V, > 0 auf tV, 2 < 0 ab. Würde anstelle von C2 der Winkel 3 V2 + 21t eingesetzt, so würde eine Kurve in der Art von K2 entstehen.
- ep Weiterhin ist darauf zu achten, daß S im betrachteten Bereich nicht das Vorzeichen ändert, weil sonst bei in gleichem,Sinne vreiterlaufendem V eine Spitze in der Approximationskurve auftreten würde (Figur 6). Gegebenenfalls ist der Approximationsbereich zu verkleinern,oder eine andere Funktion zu wählen.
- Im folgenden wird ein für die erfindungsgemäße Steuerung in Frage kommender Interpolator erörtert.
- Die Äquidistanzfunktionen liegen in Parameterforrm vor. Zum technischen Protlcm hat der Parameter V keinerlei Beziehung; er ist vielmehr eine rein geometrische Hilfsgröße: , Bei der Berechnung dient er als unabhängige Variable, die fortlaufend in kleinen Schritten d7 verändert wird. Wegen der endlichen Größe von dV wird. bei der numerischen Rechnung die Integration durch eine Summation ersetzt. Bei den abhängigen Variablen x und y interessieren allerdings nicht alle zugehörigen Werte, da die Maschinenschritte eine Mindestgröße, beispielsweise 0,01 mm, besitzen, die größer als die vom Winkelschritt d2' hervorgerufene Änderung gewählt wird.-die Änderungen dx und dy werden demgemäß fortlaufend addiert, aber die Maschine erhält immer nur dann einen Vorschubbefehl, wenn die Summe die Grenze eines neuen Maschinenschrittes überschreitet oder, anders ausgedrückt, wenn auf die zugehörige Stelle des betreffenden Registers ein Additionsüberlauf kommt. Für den Bearbeitungsvorgang ist natürlich außer der Bahnform auch die Bahngeschwindigkeit, die aus der Längs-und Querbewegung resultiert, vorzuschreiben. Dadurch wird die Winkelgeschwindigkeit dV/dt,-@d.h. das Produkt aus der Größe und der Frequenz der dT -Änderungen eindeutig festi.-clegt. Aus der Vorschubgeschwindigkeit v = ds/dt = S dc/dt ergibt sich'die Taktfrequenz f = 1/dt = v/f # dz. Auf ihre Erzeugung braucht hier im einzelnen nicht eingegangen zu werden, da Taktgeneratoren allgemein bekannt sind. Es sei nur vermerkt, daß erfindungsgemäß die Abhängigkeit f -1/@ beispielsweise durch Zuschalten von Kgpazitäten in einem Zeitglied, am Grundtaktgcnerator eingestellt werden--kann. Dieses Vdrfah ren ist schon vom Kreisinterpolatorher bekannt, lediglich mit der Unterschied, daß dort y abschnittsweise konstant ist. Die einfachste und flexibelste Bahnberechnung im Interpolator geht von den Differentialgleichungen (2) aus. Hierzu werden zunächst die Koordinaten eines Einheitskreises (sin ~ , cos'?7) berechnet, die dann mit multipliziert werden. Figur 7 zeigt als Beispiel in schematischer Form einen Interpolator mit-der Struktur eines üblichen Digitalrechners; die Speicherinhalte des Speichers Sp lassen sich bei diesem von außen einstellen und mit Hilfe eines Rechenwerkes RVl und eines ,, Steuerwerkes Stt'! verknüpfen. Sp* stellt eine Gruppe von Pufferspeicherregistern dar. Von den einzelnen Speicherinhalten ., wird später noch die Rede sein.
- Die Veränderungen des Einheitskreises (sinV , cos c) als ' folge der Winkeländerung d Z sind d(sinc ) = cosV dV d(cosIC) = -sinc dV Mit dV als Zehnerpotenz 10-n (bzw. Zweierpotenz 2 n bei dualer Struktur) sind zur Ausführung lediglich Additionen mit Stellenverschiebung erforderlich: Werden sint und cos V z.23. fünfstellig ausgewertet - der maximale Radius kann dann 99 999 r -Einheiten sein - und wird dV = 10-5 gewählt, so ist jede Veränderung.kleiner als die ausgewertete Einheit. Die eigentliche Addition erfolgt also nur in den mit dem Index "r" bezeichneten Restregistern, in dem gewählten Beispiel also in der sechsten bis zehnten Stelle. Eine Änderung d(sin V )
tritt erst dann nach außen hin in Erscheinung, wenn ein Addi- tionsüberlauf auf die kleinste gewertete Stelle (10 5), d.h. auf das Hauptregister erfolgt. In den folgenden Gleichungen wird die.scm Überlauf die Bezeichnung d(sin") beigelegt, wenn d(sinrL ) als tiultiplikator auftritt; durch den Überlauf wird nämlich die jeweilige Rechenoperation ausgelöst. Ent- sprechendes gilt für die anderen Änderungen (Prinzip des so- genannten "Digital Differential Analyser"). Demgemäß bedeutet (2), nämlich dx - - sin.7.` dz'= -S d(cos 7) dy = c' cos:' d':_ d(sin daß in dem gewählten Beispiel 10-5 von.x subtrahiert wird, wenn in dem Register "cos "' ein Additionsübertrag auf die Stelle 10 5 erfolgt, und daß 10-5 ' zu y addiert wird, wenn in dem Register "sinZ" ein Additionsübertrag auf die Stelle 10-5 erfolgt. Wenn konstant ist, wird auf diese Weise ein Kreis mit dem Radius 5^ erzeugt. Bei den übri- gen Äquidistanzfunktionen ändert sich dagegen um endlich kleine Schritte dy . In den.Beispielen a) bis d) erfindungs- gemäßer Interpolationsfunktionen ist dr = 0 für i = a = const (a) die ^ b d V für = a + b t'_ . (b) - Das Steuerprogramms muß für jedes Kurvenstück folgende Daten enthalten: Die Art der Kurve; Die kennzeichnenden Größen im Anfangspunkt (Krümmungsradius , b oder (@ - a) je nach Art der Funktion und zweckmäßigerweise sin Va und cos ä); Daten für den Endpunkt (x e und y. oder 4x und ay je nachdem, ob mit absoluten oder mit fortlaufenden Maßen gearbeitet wird).
- für diese Größen sind zweckmäßigerweise Pufferspeicher vorgesehen, damit beim Übergang zwischen den Kurvenabschnitten keine Unterbrechungen auftreten.
- Bei der hier durchgeführten1'numerlschen Integration" sind Rundungbfehler praktisch nicht zu vermeiden. Das Problem der Genauigkeit existiert in gleicher Weise bei allen Interpo- . lationsfunktionen und wird deshalb hier nicht besonders behandelt. Es sei nur erwähnt, daß in günstigen Fällen die tatsächlich erzeugte Funktion durch Auflösen der Differenzengleichungen, nach denen der Interpolator arbeitet, exakt erfaßt werden-können, so daß daraus eine maximal zulässige Länge der Interpolationsabschnitte angegeben werden kann. .Andererseits können aus den analytisch integrierten Lösungen. (3)-andere Differenzengleichungen hergeleitet werden, mit denen genauere Lösungen erzielbar sind. Hierbei steigt jedoch ebenso wie bei sonstigen bekannten Verfahren mit höherer Genauigkeit der Aufwand an iiaterial und/oder Redrnzeit erheblich. Rundungsfehler müssen stets hingenommen werden, denn bei der Lösung von Differenzengleichungemrußte an sich die Stellenzahl im Zuge der Rechnung fortwährend anwachsen. Die Fehler, die sich beim Durchlaufen jedes einzelnen Kurvenabschnittes in der Praxis-ein"stellen können, werden jedoch dadurch in engen Grenzen gehalten, daß die Länge der einzelnen Stücke begrenzt ist. Damit sich bei beliebig langen Programmen diese Fehler nicht aufsummieren können, muß der Endpunkt eines Jeden Abschnittes unbedingt durch seine Koordinaten - nicht etwa durch YJinkelfuntionen - festgelegt werden. Der Rechnungsgang ist am Schluß jedes Interpolationsabschnittes in jedem Fall so zu modifizieren, daß der Endpunkt tatsächlich erreicht wird. Auch dieses Problem tritt bei jeder numerischen Bahnsteuerung in Erscheinung und kann auf eine der bekannten Arten gelöst werden, so daß hier nicht näher darauf eingegangen werden muß. In Figur 8 ist ein Beispiel einer erfindungsgemäßen Bahnsteuerung in detaillierterer Form dargestellt, bei welchem auch die Mittel zur Berechnung einer zu der programmierten Bahn äquidistanten Bahn zu erkennen sind. Die Darstellung ist ein Blockdiagramm. Die verbindenden Linien stellen dabei keine Zeitungen im eigentlichen Sinne; sondern Wirkungslinien
d. z. e dar, bei denen/jeweilige Hauptwirkungsrichtung durch Pfeile - Es sind zwei Eingabeeinheiten 1 und 2 vorhanden. Durch die erste, 1, die beispielsweise in einem lochstreifenleser besteht, werden alle Daten eingegeben, mit denen die programmierte Bahn festgelegt ist, sowie Daten zur Bestimmung der Vorschubgeschwindigkeit. Die Bahndaten, im betrachteten Fall die Koordinatei differenzen Ax und c;y zwischen dem Anfangs-und dem Endpunkt eines jeden Interpolationsabschnittes, Sinus und Cosinus des Anfangswinkels va und des Endwinkels _-e der Bahnnormalen, der Krümmungsradius der programmierten Bahn im Anfangspunkt @a sowie b bzw.' -@'a - a, die als Parameter in den Gleichungen (5) für d auftreten,. für die betreffende Interpolaticnsfunktion, gelangen von der Eingabeeinheit 1 in eine Gruppe von Pufferspeicherregistern 3 bis 10, wo sie bis zur weiteren Verarbeitung gespeichert werden. Durch die Eingabeeinheit 2, die zum Zwecke der Eingabe insbesondere Drucktasten oder Drehschalter besitzt, wird die Werkzeugversetzung Aß eingegeben und gelangt in das
Pufferspeicherregister 11. Falls :4,R :3- 0 ist, werden die Vierte äx, c,y und @«a in den Re- gistern 3, 4 und 10 mit Hilfe des Korrekturrechners 20 durch die entsprechenden Werte der korrigierten Bahn zr.x*, L@y*-und ;a* ersetzt. Der Inhalt des Registers 9 bleibt in jedem Fall unverändert, da AR als weitere Konstante in der Funktion f -) + a (Gleichung (1)) auf d-" keinen Einfluß hat. Daraus folgt auch, daß in jedem Fall d-* = d.? ist. Für j;x* und @iy* gilt nach Figur 9: i ,_;x* =@c - x a + :'xe = J.x - LR cos va + -1`R cos @:e -y* = 2.y + Cya - `ye = @y + L#R sin ja - AR sin ;@e (6 ) Die Werte Xe und - ye, die gleichzeitig die Werte .`xa und des folgenden Interpolationsabschnittes darstellen, können, um nicht erneut berechnet werden zu müssen, in Speichern 12 bzw. 13 gespeichert werden. Dies gilt auch, fall die pro- grammierte Bahn zwischen zwei aufeinanderfolgenden Abschnit- ten einen Knick aufweist, wenn jeder Knickpunkt - wie es ohnehin für die Korrekturrechnung zweckmäßig ist - von vorne- herein als Kreis vom Radius 0 programmiert wird. Die Pufferspeicherregister 3 bis 6 sowie 9 und 10 stehen mit Arbeitsspeichern 14 bis 19 in Verbindung,.deren Inhalt im Zuge der Interpolationsrechnung ausgehend von den aus den Pufferspeichern stammenden'Anfangswerten schrittvieise ver- ' ändert wird. . Die Interpolationsrechnung gdht in diesem Beispiel aus von den Gleichungen (2) : dx* = - da* sin v = - *»sing d V dy* = da* cos t = * cos T d,t (2a) Dabei ist 3a * + #dJ*. Mit dem Index "" sind dabei sämtliche Größen belegt, in die entweder selbst die Versetzung 11R Eingang gefunden hat oder die auf solche Grüßen zurückgehen. Wie bereits ausgeführt, sind unter d g* sowie d x* und dy* bei der hier stattfindenden numerischen Integration keine echten Differentiale, sondern Differenzen zu verstehen, de- nen endlich große Elementarschritte d ü des i'linkels L zugrunde -liegen. In den Registern 14 und 15 werden die Differenzen dx* und dy* fortwährend von &x* bzw. Ay* subtrahiert bis der Registerinhalt zu 0 wird. Daraufhin wird die Impulsaus- gabe für den. betreffenden Interpolationsabschnitt abge- brochen, da dann der Endpunkt erreicht ist. Die Arbeitsspeicher 14 bis 19 sind aus den früher dargeleg- ten Gründen (Addition mit Stellenverschiebung) für die dop- pelte Zahl der Stellen n, mit denen die Maschine normaler- weise arbeitet,.susgelegt oder es sind Bußerden noch Rest- register vorhanden, wie sie in Figur 7 mit der Index "r1' be- zeichnet sind. Der Inhalt der einzelnen Arbeitsspeicher ist folgender: Speicher 16: sinT- = Bin Va + id(sinti) mit d(sinV) = cosi dZ Für cosV wird der augenblicklich im Speicher 17 vorhandene Wert genommen.- Speicher 17: - cos rc = cos t'a + id(cos9) mit d(cosi) _ - sini dV Für sinV wird der augenblicklich im Speicher 16 vorhandene Wert genommen. Speicher 18:- b oder - a, je nachdem, vrelcher Art die vorge- gebene Interpolationsfunktion ist. Dabei ist - a = Ya - a. + Yd _ @a - a + Zd P* := @'`@ a) di unter Verwendung des zuletzt in :l-er I3 befindlichen Wertes g - a. * Y * + a mit- d * = 0 b4@#i. = b dV bz,x@ . = ( - a) d G a aus Spedier 18) b b d (s i n c) . Dabei tritt d_ (sin Z,) nach den früheren Ausführungen als I,1.ul- tiplikator erst in Erscheinung, wenn bei der laufenden Addi- ticri von cosc d7 ein Übertrag auf die kleinste gewertete ü ü:elle, nämlich 10-x1 erfolgt. Entsprechendes gilt auch für die @knderungen dx* und dy* in den Speichern 14 bzw. 15. Der Inhalt dieser Speicher ist folgender: Speicher 14: . Ax* - #-dx* mit dx* = -@ d(cosr) Speicher 15: A y* - ) dy* rait dy* = @- d (sinV) Die eigciitl iche interpolatiorisrechnung wird scmit unmittel- - Der betrechtete Interpolator kann ohne weiteres euch Geraden erzeugen. Für eine Gerade mit der Neigung lassen sich nämlich die Änderungen dx* und dy* folgendermaßen ausdrücken: dx* = coscc d dy* = sinn, d Diese beiden Ausdrücke weisen eine große formale Ähnlichkeit mit den Ausdrücken (2a) auf, so daß sie leicht in derselben Interpolator gebildet werden können. Für die Vorschubgeschwir_-digkeit v gilt in diesem Falle Dieser Ausdruck ist also mit dem früher erwähnten identisch für den Fall daß@ = 1 gesetzt wird.
- An den Ausgängen +X und +Y bzw. -X und -Y des Interpolationsrechners erscheint jeweils dann ein Impuls, wenn sich die letzte gewertete Stelle der Speicher 14 bzvr. 15 um eine Einheit ändert. Die an diesen Ausgängen erscheinenden Impulse werden in der angeschlossenen tlaschine, beispielsweise durch Schrittmotoren, in Einheztsvorschubschritte in den betreffenden Koordinatenrichtungeri umgesetzt.
- In der Anordnung nach Figur 8 ist ferner noch ein Steuerwerk 22 vorgesehen, welchem in der bei numerischen Rechnern üblichen ,leise die Koordination sämtlicher Einzelorgane obliegt, und das den Rechenablauf nach Maßgabe der durch das Programmeingc.bemittel bestimmten Interpolationsfunktion steuert. Weiterhin ist ein Zeitgeber 23 vorhanden, der den bereits erwähnten Taktgenerator enthält. Diesen Taktgenerator wird in der vorher erwähnten Weise der im Speicher 19 vorhandene Wert"> eingegeben, durch den die Taktfrequenz beeinflußt wird. Der Zeitgeber 23 enthält weiterhin Mittel, in denen die Taktfrequenz in bekannter ,leise mit einen der prograrmierten Vorschubgeschwindigkeit proportionalen Faktor multipliziert wird.
- Grundsätzlich können die erfindungsgemäß auftretenden Rechenoperationen sowohl in der bei Digital-Rechnern üblichen Art, d.h. unter Verwendung von besonderen Speichern, bei- _ spielsweise Magnetkernspeichern oder Laufzeitspeichern, in Verbindung mit einen Rechen- und Steuerwerk oder in beliebiger anderer Weise ausgeführt werden, u.U. auch mit sogenannten Pulsfrequenzmultiplizierern in Verbindung mit Zählregistern. Andererseits kann, wenn genügend schnelle Sch@:ltkygise und Speicher verwendet werden, ein und derselbe Rechner sowohl für die Berechnung der auf Grund'der eingegebenen Versetzung korrigierten Daten als auch für die Interpolaticn selbst verwendet werden. Die Korrekturrechnung bedingt dann allerdings eine - in. allgemeinen unschädliche - kurze Unterbrechung der Impulsausgabe zwischen zwei aufeinanderfolgenden Dearbeitungsabschnitten.
Claims (1)
- P a t e n t a n s p r ü c h e
1. @uineris,-:he Steuerung für Werkzeugmaschinen und ähnliche i@,iäschwnen, durch die Bahnen in ,durch Programmeingabemittel festgelegten Abschnitten aufgrund von.auf demselben Programm- e eingaberriittel festgelegten Interpolationsfunktionen mit Hilfe eines Interpolators approximiert werden und bei der eine Korrektur- vorgesehen ist, um in Abhängigkeit von einer durch gesonderte Eingabemittel eingebbaren @,iPerkzeubversetzung eine zu der programmierten Bahn äquidistante Bahn festzulegen, dadurch gekennzeichnet, daß in dem Interpolator für die abschnittsweise Approximation Funktionen verwendet werden, die analytisch gleichartig aufgebaut sind wie ihre Äquidistanten. 2. Steuerung, nach Anspruch 1, gekennzeichnet durch einen Interpolator, der Äquidistanten zu Zykloiden als Interpo- lationsfuni,--tionen verwendet. 3. Steuerunnach einem der Ansprüche 1 oder 2, gekenn- zeichnet durch einen Interpolator, der Äquidistanten zu Kreisevolventen als Interpolationsfunktionen verwendet. :.;-. Steuerun nach einem der vorhergehenden Ansprüche, ge- zennzeichnet durch einen lnterpolator, der Äquidistanten
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DES0097629 | 1965-06-15 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE1513474A1 true DE1513474A1 (de) | 1969-10-23 |
Family
ID=7520869
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19651513474 Pending DE1513474A1 (de) | 1965-06-15 | 1965-06-15 | Numerische Bahnsteuerung |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE1513474A1 (de) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2911376A1 (de) * | 1978-03-24 | 1979-09-27 | Toshiba Machine Co Ltd | Verfahren und anordnung zur steuerung der ausrichtung eines werkzeugs |
EP0319586A1 (de) * | 1987-06-24 | 1989-06-14 | Fanuc Ltd. | Verfahren zur geschwindigkeitssteuerung einer evolventen-interpolation |
EP0328674A1 (de) * | 1987-07-30 | 1989-08-23 | Fanuc Ltd. | Numerische steuereinheit |
-
1965
- 1965-06-15 DE DE19651513474 patent/DE1513474A1/de active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2911376A1 (de) * | 1978-03-24 | 1979-09-27 | Toshiba Machine Co Ltd | Verfahren und anordnung zur steuerung der ausrichtung eines werkzeugs |
EP0319586A1 (de) * | 1987-06-24 | 1989-06-14 | Fanuc Ltd. | Verfahren zur geschwindigkeitssteuerung einer evolventen-interpolation |
EP0319586A4 (en) * | 1987-06-24 | 1990-12-27 | Fanuc Ltd | Involute interpolation speed control method |
EP0328674A1 (de) * | 1987-07-30 | 1989-08-23 | Fanuc Ltd. | Numerische steuereinheit |
EP0328674A4 (en) * | 1987-07-30 | 1990-12-27 | Fanuc Ltd | Numerical controller |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2745914A1 (de) | Numerische steuerung fuer die treibereinrichtung von schrittmotoren | |
DE2822346C2 (de) | Elektrische numerische Programmsteuerung für Kurbelwellenfräsmaschinen und Kurbelwellen-Schleifmaschinen | |
EP0477397B2 (de) | Verfahren zur Ermittlung von Werkzeugbahnkonturen bei numerisch gesteuerten Maschinen | |
DE102018007773A1 (de) | Numerisches Steuergerät | |
DE2114225C2 (de) | Digitale Funktionsgeneratoranordnung | |
DE2051432A1 (de) | Numerische Werkzeugmaschinen Lageregelemnchtung | |
DE2052123A1 (de) | Digitale Schaltungsanordnung für eine Erosionsmaschine | |
DE2103049C3 (de) | Vorrichtung eines numerisch gesteuerten Folgesystems | |
DE1513474A1 (de) | Numerische Bahnsteuerung | |
DE2702498B2 (de) | Vorrichtung zur numerischen Steuerung des Anfangspunktes des Gewindeschneidvorganges für mehrgängige Gewinde | |
DE2052161A1 (de) | Schaltungsanordnung für eine Elektroerosionsmaschine zum Steuern der relativen Bewegung zwischen mindestens einer Elektrode und mindestens einem Werkstück | |
DE2828285A1 (de) | Verfahren und vorrichtung zur erzeugung und verarbeitung elektrischer impulse | |
DE2560651C2 (de) | ||
DE2430104C3 (de) | Numerisch arbeitende Programmsteuerung | |
DE2226547B2 (de) | Numerisch arbeitende Programmsteuerung für eine Werkzeugmaschine | |
DE2418360B2 (de) | Numerische werkzeugkorrektur bei einer werkzeugmaschinensteuerung | |
DE1763932B2 (de) | Vorrichtung für eine numerisch arbeitende Programmsteuerung | |
DE2434454A1 (de) | Verfahren und vorrichtung zur erstellung und durchfuehrung eines programms an einer numerisch gesteuerten werkzeugmaschine | |
DE1944058A1 (de) | Schaltung zum Zaehlen von Impulsen | |
DE1763438A1 (de) | Elektronische Werkzeugmaschinensteuerung | |
DE2210376A1 (de) | Schaltungsanordnung zur Regelung der Bewegung eines längs eines Wegsegmentes laufenden Elementes | |
DE2422035A1 (de) | Numerisches steuersystem | |
DE3527488C2 (de) | ||
DE2313707B2 (de) | Numerische Lageregeleinrichtung für eine Werkzeugmaschine zum Schneiden eines Gewindes mit sich ändernder Steigung in ein rotierendes Werkstück | |
DE2928076A1 (de) | Steuereinrichtung fuer strickmaschinen |