0 BEGIN PGM 30851_FR MM 1 ;Programme CN permettant d'effectuer des calculs et 2 ;d'exécuter des mouvements de trajectoires individuels 3 ;pour usiner un élément d'arc concave. 4 FN 0: Q46 =+0 ;Compteur de passes 5 FN 0: Q52 =+0 ;Point de départ sur l'axe Y 6 FN 1: Q53 =+Q3 + +Q23 ;Coordonnée Z avec surépaisseur 7 FN 0: Q56 =+Q6 ;Rayon actuel 8 FN 0: Q57 =+Q7 ;Angle actuel de la section de profil 9 FN 0: Q58 =+Q8 ;Angle actuel dans le plan 10 FN 2: Q77 =+Q17 - +Q7 ;Angle d'ouverture dans le plan X/Z 11 FN 4: Q77 =+Q77 DIV +Q27 ;Incrément angulaire dans le plan X/Z 12 FN 3: Q77 =+Q77 * +Q29 ;Incrément angulaire multiplié par un facteur d'ébauche 13 FN 2: Q78 =+Q18 - +Q8 ;Angle d'ouverture dans le plan X/Y 14 FN 4: Q78 =+Q78 DIV +Q26 ;Pas angulaire dans le plan X/Y 15 FN 3: Q78 =+Q78 * +Q29 ;Incrément angulaire multiplié par un facteur d'ébauche 16 FN 2: Q76 =+Q16 - +Q6 ;Modification du rayon 17 FN 4: Q76 =+Q76 DIV +Q26 ;Modification du rayon à chaque passe 18 FN 3: Q76 =+Q76 * +Q29 ;Modification du rayon multipliée par un facteur d'ébauche 19 ;Décalage du point zéro au centre, sur la surface d'usinage 20 CYCL DEF 7.0 POINT ZERO 21 CYCL DEF 7.1 X+Q1 22 CYCL DEF 7.2 Y+Q2 23 CYCL DEF 7.3 Z+Q53 24 ; 25 LBL 1 26 ;Rotation pour atteindre l'angle actuel dans le plan 27 CYCL DEF 10.0 ROTATION 28 CYCL DEF 10.1 ROT+Q58 29 FN 0: Q57 =+Q7 ;Angle actuel égal à l'angle de départ 30 L X+Q10 R0 FMAX ;Pré-positionnement 31 CC Z+0 X+Q10 ;Centre de la section de profil 32 LP PR+Q56 PA+Q57 FQ22 ;Approche du point de départ 33 L Y+Q52 FQ22 ;Approche du point de départ sur l'axe Y 34 LBL 3 ;Déplacement jusqu'à l'angle final 35 FN 1: Q57 =+Q57 + +Q77 ;Incrémentation de l'angle actuel 36 FN 11: IF +Q57 GT +Q17 GOTO LBL 4 ;Vérification si l'angle final est atteint 37 LP PR+Q56 PA+Q57 R0 FQ21 ;Approche du nouvel angle 38 FN 12: IF +Q57 LT +Q17 GOTO LBL 3 ;Saut à l'élément linéaire suivant 39 LBL 4 40 LP PR+Q56 PA+Q17 FQ20 ;Déplacement jusqu'à l'angle final 41 FN 1: Q46 =+Q46 + +Q29 ;Incrémentation du compteur 42 FN 1: Q56 =+Q56 + +Q76 ;Actualisation du rayon 43 FN 1: Q58 =+Q58 + +Q78 ;Actualisation de l'angle de rotation 44 FN 11: IF +Q46 GT +Q26 GOTO LBL 99 ;Vérification si le nombre de passes est atteint 45 LBL 5 46 ; 47 ;Rotation jusqu'à atteindre le nouvel angle 48 CYCL DEF 10.0 ROTATION 49 CYCL DEF 10.1 ROT+Q58 50 FN 0: Q57 =+Q17 ;Angle actuel égal à l'angle final 51 CC Z+0 X+Q10 ;Centre de la section de profil 52 LP PR+Q56 PA+Q57 FQ22 ;Approche du point de départ 53 L Y+Q52 FQ22 ;Approche du point de départ en Y 54 ; 55 LBL 7 ;Déplacement jusqu'au point de départ 56 FN 2: Q57 =+Q57 - +Q77 ;Actualisation de l’angle 57 FN 12: IF +Q57 LT +Q7 GOTO LBL 8 ;Vérification si l'angle actuel est inférieure à l'angle de départ 58 LP PR+Q56 PA+Q57 R0 FQ21 ;Approche de l'angle actuel 59 FN 11: IF +Q57 GT +Q7 GOTO LBL 7 ;Vérification si l'angle de départ est atteint 60 LBL 8 61 LP PR+Q56 PA+Q7 FQ20 ;Approche de l'angle de départ 62 FN 1: Q46 =+Q46 + +Q29 ;Incrémentation du compteur 63 FN 1: Q56 =+Q56 + +Q76 ;Actualisation du rayon 64 FN 1: Q58 =+Q58 + +Q78 ;Actualisation de l'angle de rotation 65 FN 9: IF +Q46 EQU +Q26 GOTO LBL 1 ;Vérification si le nombre de passes est atteint 66 FN 12: IF +Q46 LT +Q26 GOTO LBL 1 ;Vérification si le nombre de passes est atteint 67 LBL 99 68 ;Réinitialisation de la rotation 69 CYCL DEF 10.0 ROTATION 70 CYCL DEF 10.1 ROT+0 71 ;Réinitialisation du décalage du point zéro 72 CYCL DEF 7.0 POINT ZERO 73 CYCL DEF 7.1 X+0 74 CYCL DEF 7.2 Y+0 75 CYCL DEF 7.3 Z+0 76 ; 77 ;Dégagement 78 L Z+Q25 R0 F9999 79 END PGM 30851_FR MM