Siemens
Siemens

Digital Industries, Motion Control, Machine Tool Systems

DMG CTX Beta 1250 Radien/Sphärisch Fräsen

Beitrag 02.08.2014, 08:27 Uhr
ingo1974
Level 2 = Community-Facharbeiter
**
Hallöchen liebes Forum,

seit einiger Zeit lese ich hier mit und versuche tiefer in die Programmiermöglichkeiten einzutauchen, als ich es bislang gewohnt war. Ursprünglich komme ich vom "normalen" drehen ohne großartige Fräsoperationen. Die CTX Beta 1250 TC ist absolutes Neuland für mich. Mit Drehteilen und einfachen Fräsoperationen (Flächen, Polygone Mantel/Stirn etc) komme ich mittlerweile schon recht gut klar. Jetzt eine neue Herausforderung:

Schaut euch bitte die Zeichnung mal an.

So eine Kontur lässt sich ja nicht über Shopturn programmieren nehme ich an. Dann wohl eher als G-Code Programm, weil man auch Schleifen/Parameter etc einbauen muss. So zumindest meine Vermutung bislang.

Worum es mir geht:

Ich bin kein fauler Hund der jetzt denkt:"Hoffentlich schreibt mir hier jemand das Programm, dann kann ich das so 1:1 laufen lassen", sondern, ich möchte die Abläufe und Programmiertricks und Finessen wirklich lernen. Wenn nun jemand ein komplettes PRG bzw Teil-PRG zur Verfügung stellt, das gut dokumentiert ist, dann wäre das Spitze, damit ich das Grundprinzip verstehen kann. In den 80ern habe ich recht viel in Basic programmiert, sodaß ich mir durchaus zutraue solche DIN/ISO Programme hinzubekommen.

Frage: wie beschreibe ich eine Bewegung (siehe Zeichnung, Radientasche R7.5)? mit G3 und den Verfahrachsen X und Z bei angestellter B-Achse? Radienfräser R15 (gibt es den überhaupt?) wäre hierbei wohl das Beste denke ich.

Ginge das einfach mit:

G1 X40 Z0
G3 X? Z-39 I0 K-21.5 R29.67
G1 Z-49; Auslauf

Eine allmähliche Zustellung in X könnte man ja sicherlich z.B. mit Schleifen realisieren. Eine programmierte Rotation der C-Achse wäre dann natürlich auch noch nötig. Wie ihr schon sehen könnte, stehe ich noch ganz am Anfang, aber ich möchte es unbedingt mit eurer Hilfe lernen und verstehen. Wäre toll, wenn sich der eine oder andere die Zeit nehmen würde, mich zu unterstützen!

Oder wäre es besser, wenn man die R7.5 Tasche (wie auf der rechten Darstellung zu sehen) auszeilt mit Kugelfräser und dann (wenn programmiertechnisch möglich) dann mit allmählicher Zustellung auf der R29.67 Kreisbahn abfährt Zeile für Zeile? Wie würdet ihr an die Sache rangehen?

Vielen Dank schonmal für eure Aufmerksamkeit!!

Liebe Grüße
Ingo

Der Beitrag wurde von ingo1974 bearbeitet: 02.08.2014, 08:30 Uhr
Angehängte Datei(en)
Angehängte Datei  radien.JPG ( 502.71KB ) Anzahl der Downloads: 112
 
   
Beitrag 02.08.2014, 09:40 Uhr
MIXer18
Level 3 = Community-Techniker
***
Hi,
könntest du bitte B-B Schnitt hier reinstellen?
   
Beitrag 02.08.2014, 10:33 Uhr
ingo1974
Level 2 = Community-Facharbeiter
**
Den habe ich gerade nicht zur Hand. Ich denke aber, dass dort nur die Mantelfläche zum Vorschein kommt, die aber ohnehin gedreht wird. Das ist ja kein Problem.
   
Beitrag 02.08.2014, 22:52 Uhr
woaldy
Level 4 = Community-Meister
****
Hallo Ingo,

Dein Beispiel ist in erster Linie viel Rechnerei.
Angehängte Datei  radius.png ( 42.36KB ) Anzahl der Downloads: 68

0.5mm Vor- und Nachlauf sind von mir frei gewählt
Werkzeug = Kugelfräser Ø15 R7.5

-Startpunkt in Z
(Kreismittelpunkt In Z + (Distanz bis Z+ + Vorlauf) / Sollradius * Werkzeugmittelbahn
-21.5+(21.5+0.5)/29.67*37.17 = Z+6.061

Endpunkt in Z
(Kreismittelpunkt In Z + (Distanz bis Z- + Nachlauf) / Sollradius * Werkzeugmittelbahn
-21.5-(17.5+0.5)/29.67*37.17 = Z-44.05

Startdurchmesser
Wurzel aus (Werkzeugbahnradius² - Radiuslänge Z²) *2(für XØ) - Fräserdurchmesser
SQRT(POT(37.17)-POT(21.5+6.061))*2 -15 = X34.879

Enddurchmesser
SQRT(POT(37.17)-POT(21.5-44.05))*2 -15 = X44.097

Bitte beachte: in diesem Beispiel würde ich ohne Bahnkorrektur fahren!
G0 X34.879 Z10
G1 Z6.061
G3 X44.097 Z-44.05 R37.17

Jetzt könntest Du anfangen Deine Konstanten durch R-Parameter zu ersetzen.
R1=29.67 ;Sollradius
R2=7.5 oder $P_TOOLR für deinen Werkzeugradius
R3=0.5 ;Vor- Nachlauf
R4=-21.5 ;Kreismittelpunkt In Z
R5=39 ;Bauteillänge
;R6 Start Z
;R7 Start Ø
;R8 Ende Z
;R9 Ende Ø
R10=R1+R2 (Mittelbahnradius)

;Berechnen
R6=R4+(-R4+R3)/R1*R10
R7=SQRT(POT(R10)-POT(R4-R6))*2 - 2*R2
R8=R4-(R5+R4+R3)/R1*R10
R9=SQRT(POT(R10)-POT(R4-R8))*2 - 2*R2

Eine Schleife kannst du z.B. mit
For .. Endfor
If .. goto..
While..
generieren. Sollte Dir ja bekannt vorkommen.

Schruppen in X könnte dann so aussehen:
R11=10 ;Aufmass in XØ
R12=10 ;Anzahl Zustellungen
R13=0 ;Zähler initialisieren

BERECHNEN: (Label als Sprungziel)
R14=R11-R11/R12*R13 ;aktuelles Aufmass
R6=R4+(-R4+R3)/R1*R10
R7=SQRT(POT(R10)-POT(R4-R6))*2 - 2*R2 + R14
R8=R4-(R5+R4+R3)/R1*R10
R9=SQRT(POT(R10)-POT(R4-R8))*2 - 2*R2 + R14

G0.. ;Kontur

R13=R13+1 ;Zähler hochsetzen
IF R13 <= R12 GOTOB BERECHNEN

Beim Auszeilen der Nut kommen noch ein paar Parameter hinzu
-Es wir dabei in X eine Hand voll praralleler Schnitte in X erzeugt.
Das Aufmass sollte gleichmäßig in der Nut verteilt sein (X und Y)
-Dann wird die Nut ausgezeilt. Auf der Y- Seite 'vor' auf Y+ wechseln
und wieder 'zurück'.
R1=29.67 ;Sollradius
R2=6.0 oder $P_TOOLR für deinen Werkzeugradius
R3=0.5 ;Vor- Nachlauf
R4=-21.5 ;Kreismittelpunkt In Z
R5=39 ;Bauteillänge
;R6 Start Z
;R7 Start Ø
;R8 Ende Z
;R9 Ende Ø
R15=7.5 Profilradius
R10=R1+R14 (Mitte Profil Radius)
R11=10 ;Aufmass in XØ
R12=10 ;Anzahl Zustellungen
R13=0 ;Zähler initialisieren
;R14 aktuelles Aufmass
R16=-90 ;Anfangswinkel Profil
R17=90 ;Endwinkel Profil
R18=12 ;Anzahl der Zustellung
R19=0.5 ; Zähler Profil initialisieren
;R20 aktueller Winkel Profil
;R21 Position in Y

;Berechnen-schruppen
R14=R11-R11/R12*R13 ;aktuelles Aufmass
R6=R4+(-R4+R3)/R1*R10
R8=R4-(R5+R4+R3)/R1*R10

SCHRUPPEN: (Label als Sprungziel)
R7=SQRT(POT(R10)-POT(R4-R6))*2 - 2*R2 + R14
R9=SQRT(POT(R10)-POT(R4-R8))*2 - 2*R2 + R14

;Kontur-schruppen
G0 X=R7 Y0 Z10
G1 Z=R6
G3 X=R8 Z=R9 R=R10
G0 X..
G0 Z10

R13=R13+1 ;Zähler hochsetzen
IF R13 <= R12 GOTOB SCHRUPPEN

SCHLICHTEN: (Label als Sprungziel)
R20=R16+(R17-R16)/R18*R19 ;aktueller Profil-Winkel
R21=SIN(R20)*(R15-R2) ;Position in Y
R10=R1+R14-(R14-R2)*COS(R20) (Mittelbahnradius)
R6=R4+(-R4+R3)/R1*R10 ;Anfang Z
R7=SQRT(POT(R10)-POT(R4-R6))*2 - 2*R2 ;Anfang X
R8=R4-(R5+R4+R3)/R1*R10 ;Ende Z
R9=SQRT(POT(R10)-POT(R4-R8))*2 - 2*R2 ;Ende X

;Profil schlichten
G0 X=R7 Y=R21 Z10
G1 Z=R6
G3 X=R8 Z=R9 R=R10 ;vor
G1 Y=-R21
G2 X=R7 Z=R6 R=R10 ;zurück
G0 Z10

R20=R20+1 ;Zähler hochsetzen
IF R20 <= (R18/2) GOTOB SCHLICHTEN

Habe hier R18/2 -eingetragen, also die Anzahl der Soll-Bahnen halbiert.
Weil ich die Nut ja im Zick-Zack schlichte passt es am Ende wieder.
Wenn Du alles aus einer Richtung schlichten willst, musst Du nur R18 eintragen
und die 2. Bahn aus dem Profil entfernen.

Jetzt fehlt noch die Erkennung, dass bei Bahn bei Y=0 nur 1x gefahren werden soll...

Die Wiederholungen könntest du z.B.: wieder mit einem Label lösen.
G0 C0
NUTFRAESEN:
R1=...
ganzer Block bis
If R20..
G0 C=IC(45)
ENDLABEL:
REPEAT NUTFRAESEN P=7

Dieses Programm ist nur im Texteditor geschrieben, wird bestimmt noch Syntax- oder Rechenfehler haben!
Weitere Anregungen zum 'Zeilen' findest Du hier bestimmt im Forum. Zuletzt hier

Gruß & viel Erfolg
woaldy
   
Beitrag 03.08.2014, 01:46 Uhr
ingo1974
Level 2 = Community-Facharbeiter
**
WOALDY!!! Du bist ja weltklasse! Wahnsinn, was du da auf die Beine gestellt hast!! Morgen (Sonntag) fuchse ich mich in das Programm von dir rein, um genau zu verstehen, was da genau passiert! Ich werde dann nochmal Feedback dazu geben!

DANKE!
   
Beitrag 03.08.2014, 15:09 Uhr
nixalsverdruss
Level 7 = Community-Professor
*******
QUOTE (woaldy @ 02.08.2014, 23:52 Uhr) *
Jetzt könntest Du anfangen Deine Konstanten Werte durch R-Parameter Variablen zu ersetzen.
R1=29.67 ;Sollradius
R2=7.5 oder $P_TOOLR für deinen Werkzeugradius
R3=0.5 ;Vor- Nachlauf
R4=-21.5 ;Kreismittelpunkt In Z
R5=39 ;Bauteillänge
;R6 Start Z
;R7 Start Ø
;R8 Ende Z
;R9 Ende Ø
R10=R1+R2 (Mittelbahnradius)

;Berechnen
R6=R4+(-R4+R3)/R1*R10
R7=SQRT(POT(R10)-POT(R4-R6))*2 - 2*R2


Warum Schreibt man heute noch Programme mit R Parametern ?


Start_Z = Kreismittelpunkt_ Z + (Kreismittelpunkt_ Z + Vor_Nachlauf ) / Sollradius * Mittelbahnradius

Ließt sich für mich besser als das

R6=R4+(-R4+R3)/R1*R10
   
Beitrag 03.08.2014, 16:30 Uhr
woaldy
Level 4 = Community-Meister
****
Nachtrag zur Berechnung:
Angehängte Datei  Radius_2.png ( 11.35KB ) Anzahl der Downloads: 24

Der Wert Z_Startpunkt ist entweder Dreisatz oder 'halbe Winkelberechnung'
Gegenkathete / Hypotenuse = SIN...
Weil das Verhältnis gleichbleibend ist habe ich

(Kreismittelpunkt_Z+Vorlauf) / Sollradius = (Kreismittelpunkt_Z+Startpunkt_Z) / Mittelbahnradius

umgewandelt zu:

(Kreismittelpunkt_Z+Vorlauf) / Sollradius
- Kreismittelpunkt_Z = Startpunkt_Z
Mittelbahnradius
Angehängte Datei  Radius_3.png ( 10.44KB ) Anzahl der Downloads: 8

Der X_Wert ist dann Pythagoras
Wurzel aus (Hypothenuse²-Gegenkathete²) = Ankathete

@nixalsverdruss:
Ja, man hätte alle Variablen als Klartext definieren können:

def real Sollradius, Werkzeugradius, Startpunkt_Z usw.

Habe ich aber noch nie gemacht, und deswegen auch nicht daran gedacht.
Gruß woaldy
   
Beitrag 04.08.2014, 05:37 Uhr
ingo1974
Level 2 = Community-Facharbeiter
**
Woaldy du bist der Beste!!! Habe es jetzt erst entdeckt. Ich drucke es aus und nehme es mit zur Arbeit. Ich bin so gespannt, ob ich mit deiner Hilfe hinbekomme!!!

Ich melde mich, sobald ich Ergebnisse vorweisen kann!

Danke!
   
1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: