0 BEGIN PGM 4235_DE MM 1 ;NC-Programm, um eine angestellte Bohrung 2 ;zu erstellen. 3 ;Um unnoetige Bewegungen in der Luft zu 4 ;vermeiden und die Bearbeitung mit einem 5 ;moeglichst kurzen Werkzeug durchfuehren 6 ;zu koennen, erfolgt die Bearbeitung in 7 ;folgenden Schritten. 8 ;Zunaechst definieren Sie alle fuer die 9 ;Bearbeitung benoetigten Paramter und das 10 ;Werkzeug. Danach fuehrt die Steuerung einige 11 ;Berechnungen durch. Anschliessend 12 ;positioniert die Steuerung das Werkzeug, 13 ;senkrecht zur Oberflaeche, im Zentrum 14 ;der Bearbeitung und fuehrt einen 15 ;Kreistaschenzyklus aus. Mit diesem Zyklus 16 ;erstellt die Steuerung eine moeglichst grosse 17 ;Kernbohrung. 18 ;Anschliessend stellt die Steuerung das 19 ;Werkzeug an, faehrt es auf eine zuvor 20 ;berechnete Tiefe, die sich aus der Fraestiefe 21 ;und einem Versatz zusammensetzt, damit die 22 ;Unterkante der Bohrung mit der Fraestiefe 23 ;uebereinstimmt. Danach faehrt das 24 ;Werkzeug auf einer Ellipsenbahn und erstellt 25 ;die Bohrungskontur. Am Programmende faehrt 26 ;die Steuerung das Werkzeug wieder in das 27 ;Zentrum, faehrt die Rundachsen wieder auf 28 ;Null, deaktiviert TCPM und beendet das 29 ;Programm. 30 ; 31 ; 32 BLK FORM 0.1 Z X+0 Y+0 Z-15 33 BLK FORM 0.2 X+100 Y+100 Z+0 34 ; 35 ;Eingabe Parameter 36 FN 0: Q1 =+25 ;BOHRUNGSRADIUS 37 FN 0: Q3 =+0 ;STARTWINKEL 38 FN 0: Q4 =+360 ;ENDWINKEL 39 FN 0: Q7 =+50 ;BOHRUNGSZENTRUM X 40 FN 0: Q8 =+50 ;BOHRUNGSZENTRUM Y 41 FN 0: Q9 =+0 ;KOORDINATEN OBERFLAECHE 42 FN 0: Q11 =-10 ;ANSTELLWINKEL A 43 FN 0: Q12 =-20 ;FRAESTIEFE 44 FN 0: Q20 =+1500 ;VORSCHUB TIEFENZUSTELLUNG 45 FN 0: Q21 =+2000 ;VORSCHUB FRAESEN 46 FN 0: Q25 =+5 ;SICHERE POSITION Z 47 FN 0: Q26 =+360 ;TEILUNG 48 ;Parametereingabe Ende 49 ; 50 ;Werkzeugaufruf Fraeser 51 TOOL CALL 8 Z S3000 52 ; 53 ;Berechnungen 54 Q38 = COS Q11 ;Anstellwinkel umrechnen 55 FN 4: Q60 =+Q1 DIV +Q38 ;Halbachse Y fuer Kernbohrung 56 Q61 = Q12 ;Tiefe der Kernbohrung 57 Q62 = SIN Q11 * Q108 ;Versatz Z fuer die angestellte Bahn 58 FN 12: IF +Q62 LT +0 GOTO LBL 22 ;Pruefen ob der Wert vom Versatz in Z negativ ist 59 LBL 23 60 Q12 = Q12 - Q62 ;Z Tiefe fuer angestellte Bahn 61 Q1 = Q1 - Q108 ;Korrigierter Radius fuer angestellte Werkzeugbahn 62 Q27 = Q12 * TAN Q11 ;Versatz des Mittepunkts von oberer zu unterer Kontur 63 Q29 = Q27 ;Versatz in Parameter fuer Vergleich schreiben 64 FN 4: Q2 =+Q1 DIV +Q38 ;Halbachse Y mit Radiuskorrektur 65 FN 12: IF +Q29 LT +0 GOTO LBL 20 ;Pruefen ob der Wert vom Versatz positiv ist 66 LBL 21 67 Q28 = ( Q60 * 2 ) - ( Q29 * 2 ) ;Durchmesser Kernbohrung 68 ;Berechnungen Ende 69 ; 70 ;Kernbohrung fraesen 71 L Z+100 R0 F9998 M3 ;Auf Sichere Hoehe fahren 72 L X+Q7 Y+Q8 R0 FMAX ;Werkzeug in das Zentrum positionieren 73 CYCL DEF 252 KREISTASCHE ~ Q215=+1 ;BEARBEITUNGS-UMFANG ~ Q223=+Q28 ;KREISDURCHMESSER ~ Q368=+0.1 ;AUFMASS SEITE ~ Q207=+Q21 ;VORSCHUB FRAESEN ~ Q351=+1 ;FRAESART ~ Q201=+Q61 ;TIEFE ~ Q202=+5 ;ZUSTELL-TIEFE ~ Q369=+0 ;AUFMASS TIEFE ~ Q206=+Q20 ;VORSCHUB TIEFENZ. ~ Q338=+0 ;ZUST. SCHLICHTEN ~ Q200=+Q25 ;SICHERHEITS-ABST. ~ Q203=+Q9 ;KOOR. OBERFLAECHE ~ Q204=+Q25 ;2. SICHERHEITS-ABST. ~ Q370=+1 ;BAHN-UEBERLAPPUNG ~ Q366=+1 ;EINTAUCHEN ~ Q385=+500 ;VORSCHUB SCHLICHTEN 74 M99 ;Zyklus aufrufen 75 ;Kernbohrung fertig erstellt 76 ; 77 ;Angestellte Flaeche fraesen 78 ;Nullpunkt ins Zentrum der Bearbeitung verschieben 79 CYCL DEF 7.0 NULLPUNKT 80 CYCL DEF 7.1 X+Q7 81 CYCL DEF 7.2 Y+Q8 82 CYCL DEF 7.3 Z+Q9 83 ;Nullpunkt inkremental um den Versatz weiter verschieben 84 CYCL DEF 7.0 NULLPUNKT 85 CYCL DEF 7.1 IY-Q27 86 ; 87 CC X+0 Y+0 ;Kreismitte definieren 88 L X+0 Y+0 R0 F9998 ;Vorpositionieren in X und Y 89 L Z+Q25 ;Vorpositionieren in Z 90 FUNCTION TCPM F TCP AXIS SPAT PATHCTRL AXIS ;TCPM aktivieren 91 L A+Q11 B+0 C+0 R0 F9998 ;Anstellwinkel einschwenken 92 ; 93 CALL LBL 10 ;Aufruf der Bearbeitung 94 ; 95 L Z+100 R0 F9998 M2 ;Freifahren und Programmende 96 ; 97 ; 98 ;Unterprogramme zur Bearbeitung 99 LBL 10 100 FN 0: Q36 =+Q3 ;Aktueller Winkel gleich Startwinkel 101 FN 2: Q35 =+Q4 - +Q3 ;Oeffnungswinkel 102 FN 4: Q35 =+Q35 DIV +Q26 ;Winkelschritt 103 FN 0: Q46 =+0 ;Zaehler 104 CALL LBL 2 ;Berechnung aufrufen 105 L Z+Q43 R0 FQ20 ;Ersten Punkt in Z anfahren 106 L X+Q41 Y+Q42 R0 FQ20 M3 ;Ersten Punkt in X und Y anfahren 107 LBL 1 ;Wiederholungen 108 FN 1: Q36 =+Q36 + +Q35 ;Neuen Winkel berechnen 109 FN 1: Q46 =+Q46 + +1 ;Zaehler takten 110 CALL LBL 2 ;Berechnungen aufrufen 111 L X+Q41 Y+Q42 Z+Q43 FQ21 ;Neuen Punkt anfahren 112 FN 12: IF +Q46 LT +Q26 GOTO LBL 1 ;Zaehler vergleichen 113 L X+0 Y+0 R0 F9998 ;In das Zentrum positionieren 114 L Z+Q25 ;In der Z-Achse auf sichere Hoehe fahren 115 L A+0 B+0 C+0 R0 F9998 ;Rundachsen zurueck schwenken 116 FUNCTION RESET TCPM ;TCPM deaktivieren 117 ;Nullpunktverschiebung zuruecksetzen 118 CYCL DEF 7.0 NULLPUNKT 119 CYCL DEF 7.1 X+0 120 CYCL DEF 7.2 Y+0 121 CYCL DEF 7.3 Z+0 122 LBL 0 ;Ruecksprung 123 ; 124 LBL 2 ;Berechnungen neue Position 125 FN 7: Q31 = COS +Q36 ;Neue X-Koordinate berechnen 126 FN 3: Q31 =+Q31 * +Q1 ;Neue X-Koordinate berechnen 127 FN 3: Q41 =+Q31 * +1 ;Neue X-Koordinate berechnen 128 FN 6: Q32 = SIN +Q36 ;Neue Y-Koordinate berechnen 129 FN 3: Q32 =+Q32 * +Q2 ;Neue Y-Koordinate berechnen 130 FN 3: Q42 =+Q32 * +1 ;Neue Y-Koordinate berechnen 131 FN 0: Q43 =+Q12 ;Z Koordinate 132 LBL 0 133 ; 134 ;Unterprogramm um den Versatz in Y positiv zu setzen 135 LBL 20 136 Q29 = Q29 * - 1 ;Negativen Versatz mit -1 multiplizieren 137 FN 9: IF +0 EQU +0 GOTO LBL 21 ;Ruecksprung in das Hauptprogramm 138 LBL 0 139 ; 140 ;Unterprogramm um den Versatz in Z positiv zu setzen 141 LBL 22 142 Q62 = Q62 * - 1 ;Negativen Versatz mit -1 multiplizieren 143 FN 9: IF +0 EQU +0 GOTO LBL 23 ;Ruecksprung in das Hauptprogramm 144 LBL 0 145 END PGM 4235_DE MM