0 BEGIN PGM 9025_FR MM 1 ;Ce programme combine à la fois un compteur et un 2 ;programme de gravure. 3 ;La fonction de comptage est réalisée à l'aide d'un 4 ;tableau de manière à ce que la valeur actuelle 5 ;reste mémorisée même après une coupure de courant. 6 ;Au début du programme, la valeur 1 doit figurer à 7 ;la ligne 0 - colonne Q1 du tableau. La CN lit cette 8 ;valeur, la convertit en string, la combine à un 9 ;autre string et grave le texte qui lui est associé, 10 ;sur la pièce. La CN compare ensuite le nombre de 11 ;pièces usinées avec le nombre d'usinages souhaité 12 ;que vous avez défini en début de programme. 13 ;Si le nombre est atteint, un message s'affiche à 14 ;l'écran et le compteur se réinitialise. Si le nombre 15 ;n'est pas atteint, la CN incrémente le compteur de 16 ;un et mémorise la nouvelle valeur dans le tableau. 17 ;!!IMPORTANT!! Les exécutions de programme en mode 18 ;Test sont elles aussi comptées et mémorisées dans le 19 ;tableau ! 20 ; 21 BLK FORM 0.1 Z X+0 Y+0 Z-10 22 BLK FORM 0.2 X+100 Y+100 Z+0 23 ; 24 ;Saisie des répétition souhaitées Q10 = 10 ;QUANTITE A USINER 25 ; 26 ;Ouverture du tableau T90252_fr.tab 27 FN 26: TABOPEN T90252_fr.tab 28 ; 29 ;Lecture de la valeur que contient la colonne Q1 30 FN 28: TABREAD Q1 =0 /"Q1" 31 ; 32 ;Appel de l'outil de gravure 33 TOOL CALL 201 Z S9000 F300 34 ; 35 L X+20 Y+45 R0 FMAX M3 ;Prépositionnement à la position de départ du texte 36 ; 37 ;Définition du texte à graver 38 ;Définition de la partie de texte comme string 39 DECLARE STRING QS2 = "Part No." 40 ;Conversion de la valeur de Q1 en string QS1 = TOCHAR( DAT+Q1 DECIMALS0 ) 41 ;Combinaison des strings au texte à graver QS3 = QS2 || QS1 42 ; 43 ;Définition du cycle de gravure 44 CYCL DEF 225 GRAVAGE ~ QS500= QS3 ;TEXTE GRAVAGE ~ Q513=+10 ;HAUTEUR CARACTERES ~ Q514=+0 ;FACTEUR ECART ~ Q515=+0 ;POLICE ~ Q516=+0 ;DISPOSITION TEXTE ~ Q374=+0 ;POSITION ANGULAIRE ~ Q517=+50 ;RAYON CERCLE ~ Q207=+500 ;AVANCE FRAISAGE ~ Q201=-0.5 ;PROFONDEUR ~ Q206=+150 ;AVANCE PLONGEE PROF. ~ Q200=+2 ;DISTANCE D'APPROCHE ~ Q203=+0 ;COORD. SURFACE PIECE ~ Q204=+50 ;SAUT DE BRIDE 45 M99 ;Appel du cycle 46 ; 47 ; 48 FN 0: Q2 =+Q1 ;Définition d'une valeur de comparaison Q1 = Q1 + 1 ;Actualisation du compteur 49 FN 12: IF +Q2 LT +Q10 GOTO LBL 98 ;A ignorer si la quantité n'est pas encore atteinte 50 STOP 51 ; 52 ;Information à l'écran que la quantité à usiner est atteinte 53 FN 16: F-PRINT 90251_fr.a / Screen: 54 ;Réinitialisation du compteur et inscription dans le tableau Q1 = 1 55 FN 27: TABWRITE 0 /"Q1" = Q1 56 ;Saut à la fin du programme 57 FN 9: IF +0 EQU +0 GOTO LBL 99 58 ; 59 LBL 98 60 ;Inscription de la valeur de comptage actuelle dans le tableau 61 FN 27: TABWRITE 0 /"Q1" = Q1 62 ; 63 ;Fin du programme 64 LBL 99 65 M30 66 END PGM 9025_FR MM