0 BEGIN PGM 3255_NL MM 1 ;NC-programma om een contour met cyclus 25 2 ;te bewerken en aansluitend aan de 3 ;bovenkant een afkanting af te frezen. 4 ;De afkanting wordt door de besturing in 5 ;hoogtelijnen afgefreesd. Voor de berekening 6 ;van de hoogtelijnen leest de besturing de 7 ;gereedschapsradius 2 uit de 8 ;gereedschapstabel. Zo kan de bewerking met 9 ;een schachtfrees, een kogelfrees of een 10 ;torusfrees worden uitgevoerd, zonder dat 11 ;u iets aan het NC-programma hoeft te 12 ;wijzigen. 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 ;Gereedschapsoproep voor het contourfrezen 18 TOOL CALL "MILL_D24_ROUGH" Z S6000 F2000 19 ; 20 L Z+100 R0 FMAX M3 ;Vrijzetten 21 ; 22 CYCL DEF 14.0 CONTOUR 23 CYCL DEF 14.1 CONTOURLABEL10 24 CYCL DEF 270 CONTOURREEKS- DATA ~ Q390=+2 ;TYPE BENADERING ~ Q391=+1 ;RADIUS COMPENSATIE ~ Q392=+10 ;RADIUS ~ Q393=+90 ;MIDDELPUNTSHOEK ~ Q394=+0 ;AFSTAND 25 CYCL DEF 25 CONTOURREEKS ~ Q1=-15 ;FREESDIEPTE ~ Q3=+0 ;OVERMAAT ZIJKANT ~ Q5=+0 ;COORD. OPPERVLAK ~ Q7=+50 ;VEILIGE HOOGTE ~ Q10=-5 ;DIEPTEVERPLAATSING ~ Q11=+150 ;AANZET DIEPTEVERPL. ~ Q12=+500 ;AANZET UITRUIMEN ~ Q15=+1 ;FREESWIJZE ~ Q18=+0 ;VOORRUIMGEREEDSCHAP ~ Q446=+0.01 ;RESTMATERIAAL ~ Q447=+10 ;VERBINDINGSAFSTAND ~ Q448=+2 ;BAANVERLENGING 26 M99 ;Cyclusoproep 27 ; 28 ;Gereedschapsoproep voor afkanting frezen 29 TOOL CALL "BALL_MILL_D10" Z S6000 F2000 30 ; 31 L Z+100 R0 FMAX M3 32 ; 33 ;Parameterinvoer voor afkanting Q50 = 30 ;AFKANTINGSHOEK Q51 = 0.2 ;AFSTAND VAN DE HOOGTELIJNEN Q52 = 2.5 ;AFKANTINGSLENGTE BOVEN 34 CALL LBL "FASE" ;Oproep subprogramma voor afkanting frezen 35 ; 36 L Z+100 R0 FMAX ;Vrijzetten 37 M30 ;Einde van programma 38 ; 39 ;Subprogramma's 40 LBL 10 ;Contour 41 L X+10 Y+10 42 L Y+90 43 CR X+90 Y+90 R+100 DR+ 44 L Y+10 45 CR X+10 Y+10 R+100 DR- 46 LBL 0 47 ; 48 ;Subprogramma voor de afkanting 49 LBL "FASE" 50 CYCL DEF 14.0 CONTOUR 51 CYCL DEF 14.1 CONTOURLABEL10 Q49 = Q108 + 2 ;Radius voor voorzichtig naderen 52 CYCL DEF 270 CONTOURREEKS- DATA ~ Q390=+2 ;TYPE BENADERING ~ Q391=+1 ;RADIUS COMPENSATIE ~ Q392=+Q49 ;RADIUS ~ Q393=+90 ;MIDDELPUNTSHOEK ~ Q394=+0 ;AFSTAND 53 FN 18: SYSREAD Q65 = ID50 NR3 ;R2 van het actieve gereedschap uitlezen Q61 = 0 ;Z begin 54 LBL 1 Q60 = Q52 / ( TAN Q50 ) ;Z totale diepte Q61 = Q61 + Q51 ;Z-coördinaat in de nieuwe hoogtelijn berekenen 55 FN 11: IF +Q61 GT +Q60 GOTO LBL "ENDE1" ;Controleren of nieuwe diepte groter is dan de totale diepte 56 FN 9: IF +Q61 EQU +Q60 GOTO LBL "ENDE1" ;Controleren of nieuwe diepte gelijk is aan de totale diepte Q62 = Q61 + ( Q65 - SIN Q50 * Q65 ) ;Berekenen van de nieuwe Z-coördinaat met inachtneming van gereedschapsradius R2 Q63 = ( Q52 - TAN Q50 * Q61 ) + ( Q65 - COS Q50 * Q65 ) ;Overmaat voor hoogtelijn berekenen 57 CYCL DEF 25 CONTOURREEKS ~ Q1=-Q62 ;FREESDIEPTE ~ Q3=-Q63 ;OVERMAAT ZIJKANT ~ Q5=+0 ;COORD. OPPERVLAK ~ Q7=+2 ;VEILIGE HOOGTE ~ Q10=-Q62 ;DIEPTEVERPLAATSING ~ Q11= AUTO ;AANZET DIEPTEVERPL. ~ Q12= AUTO ;AANZET UITRUIMEN ~ Q15=+1 ;FREESWIJZE ~ Q18=+0 ;VOORRUIMGEREEDSCHAP ~ Q446=+0.01 ;RESTMATERIAAL ~ Q447=+10 ;VERBINDINGSAFSTAND ~ Q448=+2 ;BAANVERLENGING 58 M99 ;Cyclusoproep 59 FN 9: IF +0 EQU +0 GOTO LBL 1 ;Sprong 60 ; 61 ;Subprogramma voor de laatste hoogtelijn 62 LBL "ENDE1" Q61 = Q60 ;Einddiepte Q62 = Q61 + ( Q65 - SIN Q50 * Q65 ) ;Z-coördinaat met inachtneming van gereedschapsradius R2 Q63 = ( Q52 - TAN Q50 * Q61 ) + ( Q65 - COS Q50 * Q65 ) ;Overmaat voor hoogtelijn berekenen 63 CYCL DEF 25 CONTOURREEKS ~ Q1=-Q62 ;FREESDIEPTE ~ Q3=-Q63 ;OVERMAAT ZIJKANT ~ Q5=+0 ;COORD. OPPERVLAK ~ Q7=+2 ;VEILIGE HOOGTE ~ Q10=-Q62 ;DIEPTEVERPLAATSING ~ Q11= AUTO ;AANZET DIEPTEVERPL. ~ Q12= AUTO ;AANZET UITRUIMEN ~ Q15=+1 ;FREESWIJZE ~ Q18=+0 ;VOORRUIMGEREEDSCHAP ~ Q446=+0.01 ;RESTMATERIAAL ~ Q447=+10 ;VERBINDINGSAFSTAND ~ Q448=+2 ;BAANVERLENGING 64 M99 ;Cyclusoproep 65 L Z+20 R0 FMAX ;Vrijzetten 66 LBL 0 67 END PGM 3255_NL MM