QUOTE (guest @ 25.02.2016, 15:21 Uhr)

@CNCTango
Nicht falsch verstehen, ich kann das schon berechnen.
Ich kann das auch in verschiedenen CAD's ausmessen. Das nützt aber in einem Parameter-Programm herzlich wenig. Ich kann meine Parameterrechnung lediglich verifizieren.
Nun hätten wir, mit dem X-Wert des Radien-Schnittpunktes, schon einen wichtigen Schritt geschafft. Die Formel dafür kam mir, ehrlich gesagt, nicht in den Sinn.
Das könnte, mit einer anderer Kreisprogrammierung (FK), zwar schon genügen, wird für die Programmierung Kreisendpunkt-Radius aber nicht ganz reichen. Der Kreisendpunkt ist jetzt durch X, Drehrichtung und Radius noch unterbestimmt (nicht eindeutig).
Da wäre also noch der Y-Wert des Radien-Schnittpunktes zu berechnen. Vielleicht denke ich auch gerade nur zu kompliziert?
Ehrlich gesagt verstehe ich unter einem "Parameter-Programm" nicht nur den Austausch von Kontur-Werten, die ich im
CAD bestimmen muß, durch Variable. Diese Variable sollten (in geometrischen Grenzen) relativ frei bestimmbar sein und eine eindeutig bestimmte Kontur ergeben. Und da ist deutlich mehr Aufwand nötig. Deshalb auch der Hinweis, daß es eben nicht mal so eben nebenbei geschrieben ist.
Um beim Beispiel zu bleiben, ist die Angabe der Radien 8.5, 10.5, der Wellenlänge 22 und der Wellenhöhe 4.04 schon überbestimmt. Denn ändert man nur einen Wert davon, gibt es keinen tangentialen Übergang mehr.
Entschuldigung, aber ich bin genauso wenig wie einige andere dazu bereit hier ein solches Programm komplet zu erstellen. Wenn man aus meinem ersten Post, den mit den Formeln, und dem zweiten Post kombiniert hat man auch den Endpunkt in Y.
Also brauche ich:
Q1=0; Start in X
Q2=0; Start in Y
Q3=0; Start in Z
Q4=6; Zustellung in Z
Q5=55; Kontur Tiefe
Q6=10,5; Radius innen
Q7=6,5; Radius aussen
Q8=22; Mittelpunkt-Abstand
Q9=X; Länge der Kontur, oder Anzahl der Wellen. Je Steuerungs-Version und vorliebe des Programmierers!
*- Formeln....
IF Q108 GT Q6 THEN GOTO LBL 99
IF Q108 EQ Q6 THEN GOTO LBL 99
; Q0 -Q99 ist frei verwendbar wenn man keine SL-Zyklen verwendet!
; Benötigt wird:
; 1.) Die Verhältnis Gleichung
; 2.) Pythagoras
Q10=Q8 / (Q6+Q7) * Q6 /2;Welle Innen Abstand in 'X' Kreismittelpunkt zum Kreisendpunkt aus dem Beispiel => 6,794
Q11=Q8 / (Q6+Q7) * Q7 /2;;Welle Aussen Abstand in 'X' Kreismittelpunkt zum Kreisendpunkt aus dem Beispiel => 4,205
usw...
Weitere Formeln für 'Y' siehe oben!
LBL 'KONTUR'
L Z100 FMAX M3
L XQ1 YQ2 ZQ3 FMAX
LBL 'KWDH'
CALL LBL 'KWDH' REP Q9; So nur wenn Steuerung Q im REP akzeptiert, sonst mit Zaehler und IF ... THEN
LBL 0; ENDE LBL KONTUR
;
M0
;
IF 0 EQ 0 THEN GOTO LBL 30
*- Fehler Meldung wenn Werkzeugradius groesser oder gleich dem kleinsten Radius ist
LBL 99
M0
; Werkzeugradius ist für diese Kontur zu groß!
LBL 30
M30
LBL 0
Nein ich habe nicht gesagt dass das mal eben zu machen ist. Aber das war nicht die Frage des TS. Er hat gefragt:"Ob man das Programm für andere Radien verwenden kann?"
Und da habe ich behauptet: Ja das geht! Und komfortabler, wenn man es mit einem Parameter-Programm macht. Habe aber auch dazu geschrieben dass es verschiedene Lösungs-Ansätze gibt. Dieser oben beschrieben Anfang ist nur ein Möglicher.
Und nein, man braucht dann keine zusätzlichen Informationen mehr über ein CAD, schon garnicht über den Mittelpunkt-Abstand wie Du unten geschrieben hast. Was in der Zeichnung fehlt sind die Schnittpunkte der Kreise, und wie man die berechnet habe ich oben schon beschrieben!
Und zwar ohne CAD, sondern mit Geometrie der 5. Klasse
Aber ja, wenn man nur einen Wert ändert funktioniert das ganze nicht mehr! Der TS bekommt aber eine Zeichnung an die Maschine in der alle NEUEN Werte enthalten sind! Wenn Du natürlich unterstellst, der TS bekommt jetzt einen R11,6 anstatt dem 10,5 und dass wars dann. Dann M30!
Er ist nicht der Konstrukteur und auch nicht der Zeichner. Und das gehört dann auch nicht zu seinen Aufgaben, dann hätte er übrigens bestimmt auch hier nicht um Hilfe beim Programmieren gefragt.
Schönen Feierabend
und Gruß
Tango