0 BEGIN PGM 3225_NL MM 1 ;Programma om aan een werkstuk, op de X-as, een 2 ;concave radius te frezen. 3 ;De bewerking is mogelijk met een kogel- of 4 ;schachtfrees. 5 ;Het middelpunt en de radius moeten via parameters 6 ;worden bepaald. Het referentiepunt moet het 7 ;negatiefste punt op de X- en Y-as zijn. Op de 8 ;Z-as wordt de radius vanaf de gedefinieerde 9 ;hoogte van de bewerking tot aan het niveau van 10 ;Z0 verplaatst. 11 ; 12 BLK FORM 0.1 Z X+0 Y+0 Z-20 13 BLK FORM 0.2 X+100 Y+100 Z+20 14 ; 15 ;Gereedschapsoproep kogel- of schachtfrees 16 TOOL CALL 159 Z S5000 17 ; 18 L Z+100 R0 FMAX M3 19 ; 20 ;Invoer parameters 21 FN 0: Q30 =+0 ;CIRKELMIDDELPUNT IN Y 22 FN 0: Q31 =+20 ;CIRKELMIDDELPUNT IN Z 23 FN 0: Q32 =+20 ;RADIUS 24 FN 0: Q34 =+20 ;VERDELING 25 FN 0: Q35 =+0 ;OVERMAAT 26 FN 0: Q36 =+20 ;HOOGTE VAN DE BEWERKING 27 FN 0: Q37 =+100 ;LENGTE VAN HET WERKSTUK 28 FN 0: Q38 =+2 ;ZIJDELINGSE VEILIGHEIDSAFSTAND 29 FN 0: Q39 =+1000 ;AANZET FREZEN 30 FN 0: Q40 =+1 ;VORM VAN HETGEREEDSCHAP: 31 ; ;KOGELFREES = 1 32 ; ;SCHACHTFREES = 0 33 FN 0: Q33 =+10 ;RADIUS VAN KOGELFREES 34 ;Einde invoer 35 ; 36 ;Berekeningen Q50 = ACOS ( ( Q31 - Q36 ) / Q32 ) ;Beginhoek Q51 = ACOS ( Q31 / Q32 ) ;Eindhoek 37 FN 2: Q52 =+Q50 - +Q51 ;Hoekverschil Q53 = Q52 / ( Q34 + 1 ) ;Hoekstap Q54 = Q32 - Q33 - Q35 ;Effectieve radius 38 FN 4: Q55 =+Q34 DIV +2 ;Aantal herhalingen 39 FN 1: Q56 =+Q108 + +Q38 ;Positie X minimum Q57 = Q37 + Q38 + Q108 ;Positie X maximum 40 FN 0: Q58 =+0 ;Radiuscorrectie kogelfrees 41 FN 9: IF +Q40 EQU +0 GOTO LBL 2 ;Sprong naar berekening voor schachtfrees 42 LBL 3 43 ; 44 ;Bewerking 45 FN 0: Q70 =+Q50 ;Actuele hoek = beginhoek 46 LBL 1 ;Herhaling van de bewerking 47 FN 2: Q70 =+Q70 - +Q53 ;Hoekstap 48 CYCL DEF 7.0 NULPUNT 49 CYCL DEF 7.1 Y+Q30 50 CYCL DEF 7.2 Z+Q31 Q71 = - ( COS ( Q70 ) * Q54 ) - Q33 ;Berekening nieuwe Z-positie Q72 = SIN ( Q70 ) * Q54 - Q58 ;Berekening nieuwe Y-positie 51 L X-Q56 Y+Q72 R0 FMAX ;X- en Y-positie naderen 52 L Z+Q71 FMAX ;Z-positie naderen 53 L X+Q57 FQ39 ;X-baan frezen 54 ; Q70 = Q70 - Q53 ;Hoekstap Q71 = - ( COS ( Q70 ) * Q54 ) - Q33 ;Berekening Z-positie Q72 = SIN ( Q70 ) * Q54 - Q58 ;Berekening Y-positie 55 L Y+Q72 Z+Q71 R0 FMAX ;Y- en Z-positie naderen 56 L X-Q56 FQ39 ;X-baan frezen 57 CALL LBL 1 REPQ55 ;Bewerking herhalen 58 STOP 59 ; 60 CYCL DEF 7.0 NULPUNT 61 CYCL DEF 7.1 X+0 62 CYCL DEF 7.2 Y+0 63 CYCL DEF 7.3 Z+0 64 L Z+Q36 FMAX ;Z naar startpositie verplaatsen 65 L IZ+50 FMAX ;Z vrijmaken 66 ; 67 ;Einde van programma 68 M30 69 ; 70 LBL 2 ;Berekening voor schachtfrees 71 FN 0: Q33 =+0 ;Waarde voor radius kogelfrees gelijk aan nul instellen 72 FN 0: Q58 =+Q108 ;Correctie met gereedschapsradius 73 FN 2: Q54 =+Q32 - +Q35 ;Effectieve radius 74 FN 9: IF +0 EQU +0 GOTO LBL 3 ;Terugsprong 75 LBL 0 76 END PGM 3225_NL MM