0 BEGIN PGM 2070_FR MM 1 ;Programme permettant de fraiser une trajectoire elliptique. 2 ;Pour cela, la trajectoire est décomposée en plusieurs 3 ;éléments linéaire individuels. Le nombre de mouvements 4 ;linéaires impliqués détermine le niveau d'exactitude de la 5 ;trajectoire linéarisée par rapport à la trajectoire elliptique. 6 ;La trajectoire s'effectue dans le sens horaire. Toutes les 7 ;valeurs utiles doivent être définies dans les paramètres. 8 ; 9 ;Définition des paramètres 10 FN 0: Q1 =+0 ;CENTRE ELLIPSE AXE X 11 FN 0: Q2 =+0 ;CENTRE ELLIPSE AXE Y 12 FN 0: Q3 =-10 ;PROFONDEUR 13 FN 0: Q5 =+50 ;DIVISION 14 ; ;;DEFINIT LE NOMBRE D'ELEMENTS LINEAIRES QUI 15 ; ;COMPOSENT LA TRAJECTOIRE 16 FN 0: Q6 =+45 ;DEMI-AXE ELLIPTIQUE EN X 17 FN 0: Q16 =+25 ;DEMI-AXE ELLIPTIQUE EN Y 18 FN 0: Q7 =+0 ;ANGLE DE DEPART DANS LE PLAN X/Y 19 FN 0: Q17 =+360 ;ANGLE FINAL DANS LE PLAN X/Y 20 FN 0: Q8 =+0 ;ROTATION DE L'ELLIPSE 21 FN 0: Q10 =+2 ;DISTANCE D'APPROCHE 22 FN 0: Q11 =+300 ;AVANCE DE LA PASSE EN PROFONDEUR 23 FN 0: Q12 =+555 ;AVANCE FRAISAGE 24 FN 0: Q14 =+0 ;SUREPAISSEUR 25 ; ;VALEUR DE MODIFICATION DES DEMI-AXES 26 ; ;!!ATTENTION AU SIGNE QUI PRECEDE!! 27 FN 0: Q15 =+2 ;COMPENSATION DE RAYON 28 ; ;0=PAS DE COMPENSATION 29 ; ;1=COMPENSATION DE RAYON VERS LA GAUCHE 30 ; ;2=COMPENSATION DE RAYON VERS LA DROITE 31 ;Fin de la définition des paramètres 32 ; 33 BLK FORM 0.1 Z X-60 Y-50 Z-40 34 BLK FORM 0.2 X+60 Y+50 Z+0 35 ; 36 ;Appel de l'outil de fraisage 37 TOOL CALL 10 Z S3000 38 ; 39 ;Appel du mouvement de trajectoire 40 CALL LBL 1 41 ; 42 ;Dégagement et fin de programme 43 L Z+100 R0 FMAX M30 44 ; 45 ;Mouvement de trajectoire 46 LBL 1 47 ;Conversions de coordonnées 48 CYCL DEF 7.0 POINT ZERO 49 CYCL DEF 7.1 X+Q1 50 CYCL DEF 7.2 Y+Q2 51 CYCL DEF 10.0 ROTATION 52 CYCL DEF 10.1 ROT+Q8 53 ; 54 FN 0: Q23 =+Q3 ;Copie de la valeur Z 55 FN 0: Q27 =+Q7 ;Angle actuel = angle de départ 56 FN 1: Q31 =+Q6 + +Q14 ;Demi-axe X effectif 57 FN 1: Q32 =+Q16 + +Q14 ;Demi-axe Y effectif 58 FN 0: Q35 =+0 ;Compteur 59 FN 2: Q37 =+Q17 - +Q7 ;Incrément angulaire 60 FN 4: Q37 =+Q37 DIV +Q5 ;Incrément angulaire 61 CALL LBL 4 ;Appel du mouvement de position 62 ; 63 ;Prise en compte de la correction de rayon et 64 ;Approche de la première position 65 FN 9: IF +Q15 EQU +1 GOTO LBL 11 66 FN 9: IF +Q15 EQU +2 GOTO LBL 12 67 LBL 10 68 L X+Q21 Y+Q22 R0 FMAX M3 69 FN 9: IF +0 EQU +0 GOTO LBL 2 70 LBL 11 71 L X+Q21 Y+Q22 RL FMAX M3 72 FN 9: IF +0 EQU +0 GOTO LBL 2 73 LBL 12 74 L X+Q21 Y+Q22 RR FMAX M3 75 ; 76 LBL 2 77 L Z+Q10 FMAX ;Pré-positionnement de l'axe Z 78 L Z+Q3 FQ11 ;Passe en profondeur 79 ; 80 LBL 3 ;Répétition 81 FN 1: Q27 =+Q27 + +Q37 ;Nouveau calcul de l'angle 82 FN 1: Q35 =+Q35 + +1 ;Nouveau calcul du compteur 83 FN 11: IF +Q35 GT +Q5 GOTO LBL 99 ;Comparaison pour savoir si le nombre d'étapes est atteint 84 CALL LBL 4 ;Appel du calcul de position 85 L X+Q21 Y+Q22 Z+Q23 FQ11 ;Approche de la nouvelle position 86 FN 12: IF +Q35 LT +Q5 GOTO LBL 3 ;Comparaison pour savoir si d'autres répétitions sont nécessaires 87 ; 88 LBL 99 89 L Z+Q10 R0 FMAX ;Dégagement de l'axe Z 90 ;Réinitialisation de la conversion des coordonnées 91 CYCL DEF 10.0 ROTATION 92 CYCL DEF 10.1 ROT+0 93 CYCL DEF 7.0 POINT ZERO 94 CYCL DEF 7.1 X+0 95 CYCL DEF 7.2 Y+0 96 LBL 0 97 ; 98 LBL 4 ;Calcul de la nouvelle position en X et Y 99 FN 7: Q21 = COS +Q27 100 FN 3: Q21 =+Q21 * +Q31 101 FN 6: Q22 = SIN +Q27 102 FN 3: Q22 =+Q32 * +Q22 103 LBL 0 104 END PGM 2070_FR MM