0 BEGIN PGM 2035-DE MM 1 ;Programm zum fraesen einer Spirale in X/Y 2 ;Ebene 3 ;Aus den eingegebenen Parameter wird die 4 ;Werkzeugbahn berechnet, die aus einzelnen 5 ;Linearsaetzen besteht, von denen jeweils 6 ;die Endpunkte in X und Y bestimmt 7 ;werden. Mit der einzugebenden Teilung wird 8 ;definiert in wie viele Linearsaetze eine 9 ;360 Grad Bahn aufgeteilt wird. Auf diese 360 10 ;Grad Bahn wird ebenfalls die eingegebene 11 ;Steigung verrechnet. Die Werkzeugbewegungen 12 ;in der Z-Achse werden senkrecht gefahren. 13 ; 14 BLK FORM 0.1 Z X+0 Y+0 Z-20 15 BLK FORM 0.2 X+100 Y+100 Z+0 16 ; 17 ;Werkzeugaufruf 18 TOOL CALL 5 Z S4000 19 ; 20 ;Eingabe Parameter 21 FN 0: Q1 =+50 ;ZENTRUM IN DER X-ACHSE 22 FN 0: Q2 =+50 ;ZENTRUM IN DER Y-ACHSE 23 FN 0: Q3 =-15 ;TIEFE 24 FN 0: Q4 =+1 ;UMLAUFSINN 25 ; ;+1=GEGEN UHRZEIGERSINN 26 ; ;-1=IM UHRZEIGERSINN 27 FN 0: Q5 =+180 ;TEILUNG (ANZAHL 28 ; ;DER LINEARSAETZE AUF 360GRAD) 29 FN 0: Q6 =+10 ;STARTRADIUS 30 FN 0: Q16 =+47 ;ENDRADIUS 31 FN 0: Q7 =+90 ;STARTWINKEL 32 FN 0: Q8 =+10 ;STEIGUNG IN MM AUF 360 GRAD 33 FN 0: Q10 =+2 ;SICHERHEITSABSTAND 34 FN 0: Q11 =+100 ;VORSCHUB TIEFENZUSTELLUNG 35 FN 0: Q12 =+300 ;VORSCHUB FRAESEN 36 FN 0: Q14 =+0 ;SEITLICHES AUFMASS 37 FN 0: Q15 =+0 ;RADIUSKORREKTUR 38 ; ; 0=KEINE RADIUSKORREKTUR 39 ; ;+1=WERKZEUG FAEHRT AUSSERHALB 40 ; ;DER KONTUR 41 ; ;-1=WERKZEUG FAEHRT INNERHALB 42 ; ;DER KONTUR 43 ;Ende Parametereingabe 44 ; 45 L X+Q1 Y+Q2 R0 FMAX M3 ;Vorpositionieren 46 L Z+Q10 R0 FMAX 47 CALL LBL 1 48 ;Programmende 49 L Z+100 R0 FMAX M5 M2 50 ; 51 ; 52 LBL 1 ;Berechnungen 53 CC X+Q1 Y+Q2 ;Mittelpunkt setzen 54 FN 3: Q38 =+Q108 * +Q15 ;Radiuskorrekur verrechnen 55 FN 3: Q39 =+Q14 * +Q15 ;Aufmass verrechnen 56 FN 1: Q26 =+Q6 + +Q38 ;Radiuskorregierter Startradius 57 FN 1: Q26 =+Q26 + +Q39 ;Effektiver Startradius (inkl. Aufmass) 58 FN 0: Q27 =+Q7 ;Aktueller Winkel=Startwinkel 59 FN 4: Q36 =+Q8 DIV +Q5 ;Radiusschritt festlegen 60 FN 8: Q36 =+Q36 LEN +0 ;Festlegen, dass mit positiven Werten gerechnet wird 61 FN 4: Q37 =+360 DIV +Q5 ;Winkelschritt festlegen 62 FN 3: Q37 =+Q37 * +Q4 ;Winkelschritt mit Umlaufsinn verrechnen 63 ; 64 ; 65 LP PR+Q26 PA+Q7 R0 F9999 M3 ;Auf Startposition fahren 66 L Z+Q3 FQ11 ;Eintauchen 67 ; 68 LBL 2 ;Wiederholung 69 FN 1: Q26 =+Q26 + +Q36 ;Radius weiterrechnen 70 FN 1: Q27 =+Q27 + +Q37 ;Winkel weiterrechnen 71 ;Koordinaten X und Y berechnen 72 FN 7: Q21 = COS +Q27 73 FN 3: Q21 =+Q21 * +Q26 74 FN 1: Q21 =+Q21 + +Q1 75 FN 6: Q22 = SIN +Q27 76 FN 3: Q22 =+Q22 * +Q26 77 FN 1: Q22 =+Q22 + +Q2 78 ;Kontrolle ob Endradius erreicht 79 FN 11: IF +Q26 GT +Q16 GOTO LBL 99 ; 80 ;Neue X und Y Position anfahren 81 L X+Q21 Y+Q22 Z+Q3 FQ12 82 ;Wenn Endradius nicht erreicht ist dann 83 ;Ruecksprung zur Wiederholung 84 FN 12: IF +Q26 LT +Q16 GOTO LBL 2 85 ; 86 LBL 99 ;Spirale fertig 87 L Z+Q10 F9999 ;Fahren auf Sicherheitsabstand 88 LBL 0 89 END PGM 2035-DE MM