0 BEGIN PGM 4235_NL MM 1 ;NC-programma om een schuine boring te 2 ;maken. 3 ;Om onnodige bewegingen in de lucht te 4 ;voorkomen en de bewerking met een zo 5 ;kort mogelijk gereedschap te kunnen 6 ;uitvoeren, vindt de bewerking in de 7 ;volgende stappen plaats. 8 ;Eerst definieert u alle voor de 9 ;bewerking benodigde parameters en het 10 ;gereedschap. Daarna voert de 11 ;besturing enkele berekeningen uit. 12 ;Vervolgens positioneert de besturing 13 ;het gereedschap, loodrecht op het 14 ;oppervlak, in het midden van de 15 ;bewerking en voert een rondkamercyclus 16 ;uit. Met deze cyclus maakt de 17 ;besturing een zo groot mogelijke 18 ;kernboring. 19 ;Dan stelt de besturing het 20 ;gereedschap in, verplaatst het naar 21 ;een vooraf berekende diepte die uit 22 ;de freesdiepte en een verstelling is 23 ;samengesteld, zodat de onderkant van 24 ;de boring met de freesdiepte 25 ;overeenkomt. Daarna verplaatst het 26 ;gereedschap zich op een ellipsbaan 27 ;en maakt het de boringscontour. Aan 28 ;het einde van het programma verplaatst 29 ;de besturing het gereedschap weer naar 30 ;het midden, zet de roterende assen 31 ;weer op nul, deactiveert TCPM en 32 ;beëindigt het programma. 33 ; 34 ; 35 BLK FORM 0.1 Z X+0 Y+0 Z-15 36 BLK FORM 0.2 X+100 Y+100 Z+0 37 ; 38 ;Invoer parameters 39 FN 0: Q1 =+25 ;BORINGSRADIUS 40 FN 0: Q3 =+0 ;STARTHOEK 41 FN 0: Q4 =+360 ;EINDHOEK 42 FN 0: Q7 =+50 ;BORINGSCENTRUM X 43 FN 0: Q8 =+50 ;BORINGSCENTRUM Y 44 FN 0: Q9 =+0 ;COÖRDINATEN OPPERVLAK 45 FN 0: Q11 =-10 ;INVALSHOEK A 46 FN 0: Q12 =-20 ;FREESDIEPTE 47 FN 0: Q20 =+1500 ;AANZET DIEPTEVERPLAATSING 48 FN 0: Q21 =+2000 ;AANZET FREZEN 49 FN 0: Q25 =+5 ;VEILIGE POSITIE Z 50 FN 0: Q26 =+360 ;VERDELING 51 ;Einde parameterinvoer 52 ; 53 ;Gereedschapsoproep frees 54 TOOL CALL 8 Z S3000 55 ; 56 ;Berekeningen Q38 = COS Q11 ;Invalshoek omrekenen 57 FN 4: Q60 =+Q1 DIV +Q38 ;Y-halve as voor kernboring Q61 = Q12 ;Diepte van de kernboring Q62 = SIN Q11 * Q108 ;Offset Z voor de schuine baan 58 FN 12: IF +Q62 LT +0 GOTO LBL 22 ;Controleren of de waarde van de offset in Z negatief is 59 LBL 23 Q12 = Q12 - Q62 ;Z diepte voor schuine baan Q1 = Q1 - Q108 ;Gecorrigeerde radius voor schuine gereedschapsbaan Q27 = Q12 * TAN Q11 ;Offset van het middenpunt van de bovenste naar onderste contour Q29 = Q27 ;Offset in parameters voor vergelijking schrijven 60 FN 4: Q2 =+Q1 DIV +Q38 ;Y-halve as met radiuscorrectie 61 FN 12: IF +Q29 LT +0 GOTO LBL 20 ;Controleren of de waarde van de offset positief is 62 LBL 21 Q28 = ( Q60 * 2 ) - ( Q29 * 2 ) ;Diameter kernboring 63 ;Einde berekeningen 64 ; 65 ;Kernboring frezen 66 L Z+100 R0 F9998 M3 ;Naar veilige hoogte verplaatsen 67 L X+Q7 Y+Q8 R0 FMAX ;Gereedschap naar het middelpunt positioneren 68 CYCL DEF 252 RONDKAMER ~ Q215=+1 ;BEWERKINGSOMVANG ~ Q223=+Q28 ;CIRKEL DIAMETER ~ Q368=+0.1 ;OVERMAAT ZIJKANT ~ Q207=+Q21 ;AANZET FREZEN ~ Q351=+1 ;FREESWIJZE ~ Q201=+Q61 ;DIEPTE ~ Q202=+5 ;DIEPTEVERPLAATSING ~ Q369=+0 ;OVERMAAT DIEPTE ~ Q206=+Q20 ;AANZET DIEPTEVERPL. ~ Q338=+0 ;VERPLAATSING NABEW. ~ Q200=+Q25 ;VEILIGHEIDSAFSTAND ~ Q203=+Q9 ;COORD. OPPERVLAK ~ Q204=+Q25 ;2E VEILIGHEIDSAFST. ~ Q370=+1 ;BAANOVERLAPPING ~ Q366=+1 ;INSTEKEN ~ Q385=+500 ;AANZET NABEWERKEN 69 M99 ;Cyclus oproepen 70 ;Kernboring voltooid 71 ; 72 ;Schuin vlak frezen 73 ;Nulpunt naar het centrum van de bewerking verschuiven 74 CYCL DEF 7.0 NULPUNT 75 CYCL DEF 7.1 X+Q7 76 CYCL DEF 7.2 Y+Q8 77 CYCL DEF 7.3 Z+Q9 78 ;Nulpunt incrementeel met de offset verder verschuiven 79 CYCL DEF 7.0 NULPUNT 80 CYCL DEF 7.1 IY-Q27 81 ; 82 CC X+0 Y+0 ;Cirkelmiddelpunt definiëren 83 L X+0 Y+0 R0 F9998 ;Voorpositioneren in X en Y 84 L Z+Q25 ;Voorpositioneren in Z 85 FUNCTION TCPM F TCP AXIS SPAT PATHCTRL AXIS ;TCPM activeren 86 L A+Q11 B+0 C+0 R0 F9998 ;Invalshoek naar binnen zwenken 87 ; 88 CALL LBL 10 ;Oproep van de bewerking 89 ; 90 L Z+100 R0 F9998 M2 ;Vrijzetten en programma-einde 91 ; 92 ; 93 ;Subprogramma's voor bewerking 94 LBL 10 95 FN 0: Q36 =+Q3 ;Actuele hoek gelijk aan starthoek 96 FN 2: Q35 =+Q4 - +Q3 ;Openingshoek 97 FN 4: Q35 =+Q35 DIV +Q26 ;Hoekstap 98 FN 0: Q46 =+0 ;Teller 99 CALL LBL 2 ;Berekening oproepen 100 L Z+Q43 R0 FQ20 ;Eerste punt in Z benaderen 101 L X+Q41 Y+Q42 R0 FQ20 M3 ;Eerste punt in X en Y benaderen 102 LBL 1 ;Herhalingen 103 FN 1: Q36 =+Q36 + +Q35 ;Nieuwe hoek berekenen 104 FN 1: Q46 =+Q46 + +1 ;Teller cycli 105 CALL LBL 2 ;Berekeningen oproepen 106 L X+Q41 Y+Q42 Z+Q43 FQ21 ;Nieuw punt naderen 107 FN 12: IF +Q46 LT +Q26 GOTO LBL 1 ;Teller vergelijken 108 L X+0 Y+0 R0 F9998 ;In het midden positioneren 109 L Z+Q25 ;Over de Z-as naar veilige hoogte verplaatsen 110 L A+0 B+0 C+0 R0 F9998 ;Roterende assen terugzwenken 111 FUNCTION RESET TCPM ;TCPM uitschakelen 112 ;Nulpuntverschuiving resetten 113 CYCL DEF 7.0 NULPUNT 114 CYCL DEF 7.1 X+0 115 CYCL DEF 7.2 Y+0 116 CYCL DEF 7.3 Z+0 117 LBL 0 ;Terugsprong 118 ; 119 LBL 2 ;Berekeningen nieuwe positie 120 FN 7: Q31 = COS +Q36 ;Nieuwe X-coördinaat berekenen 121 FN 3: Q31 =+Q31 * +Q1 ;Nieuwe X-coördinaat berekenen 122 FN 3: Q41 =+Q31 * +1 ;Nieuwe X-coördinaat berekenen 123 FN 6: Q32 = SIN +Q36 ;Nieuwe Y-coördinaat berekenen 124 FN 3: Q32 =+Q32 * +Q2 ;Nieuwe Y-coördinaat berekenen 125 FN 3: Q42 =+Q32 * +1 ;Nieuwe Y-coördinaat berekenen 126 FN 0: Q43 =+Q12 ;Z-coördinaat 127 LBL 0 128 ; 129 ;Subprogramma om de offset in Y positief in te stellen 130 LBL 20 Q29 = Q29 * - 1 ;Negatieve offset met -1 vermenigvuldigen 131 FN 9: IF +0 EQU +0 GOTO LBL 21 ;Terugspringen naar het hoofdprogramma 132 LBL 0 133 ; 134 ;Subprogramma om de offset in Z positief in te stellen 135 LBL 22 Q62 = Q62 * - 1 ;Negatieve offset met -1 vermenigvuldigen 136 FN 9: IF +0 EQU +0 GOTO LBL 23 ;Terugspringen naar het hoofdprogramma 137 LBL 0 138 END PGM 4235_NL MM