▼
Scroll to page 2
of
576
Electric Drives and Controls Hydraulics Linear Motion and Assembly Technologies Pneumatics Rexroth IndraMotion MTX Manuel de programmation 07VRS Description de l‘application Service R911325162 Édition 03 Bosch Rexroth AG | Electric Drives and Controls Titre Rexroth IndraMotion MTX | Description de l'application Rexroth IndraMotion MTX Manuel de programmation 07VRS Type de documentation Code de type de documentation Référence interne du fichier But de la documentation Evolution des modifications Protection Description de l'application DOK-MTX***-NC**PRO*V07-AW03-FR-P RS-55a90e1320d54cd50a6846a001a54a89-3-fr-FR-7 Le présent manuel contient des informations relatives à la programmation standard de la commande IndraMotion MTX. Edition Situation Remarque 120-2500-B349-03/FR 12.2008 Intégration des modifica‐ tions © Bosch Rexroth AG, 2008 La transmission et la reproduction de ce document, l'exploitation et la commu‐ nication de son contenu sont interdits, sauf autorisation écrite. Toute infraction donne lieu à des dommages et intérêts. Tous droits réservés quant à l'octroi de brevet ou de certificat d'utilité (DIN 34-1). Obligations Editeur Les données techniques fournies n'ont pour seul but que de décrire le produit ; elles ne sont pas à comprendre en tant que propriétés garanties au sens légal. Tous droits de modification de ce document et de disponibilité du matériel ré‐ servés. Bosch Rexroth AG Bgm.-Dr.-Nebel-Str. 2 ■ 97816 Lohr am Main / Allemagne Téléphone +49 (0)93 52/ 40-0 ■ Télécopie +49 (0)93 52/ 40-48 85 http://www.boschrexroth.com/ BRC/EMS (SaKi) Remarque Cette documentation est imprimée sur papier blanchi sans chlore. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls I/XXI Table des matières Table des matières Page 1 1.1 1.1.1 1.1.2 1.2 2 2.1 2.1.1 2.1.2 2.1.3 2.1.4 2.2 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.2.7 2.2.8 3 3.1 3.2 3.2.1 3.2.2 3.2.3 3.3 3.3.1 3.3.2 3.3.3 3.3.4 3.4 3.4.1 3.4.2 3.4.3 3.5 3.5.1 3.5.2 Consignes d'utilisation importantes................................................................................ 1 Conformité d'utilisation........................................................................................................................... 1 Introduction.......................................................................................................................................... 1 Domaine d'application et de mise en oeuvre....................................................................................... 1 Emploi non conforme.............................................................................................................................. 2 CONSIGNES de SÉCURITÉ pour ENTRAÎNEMENTS ÉLECTRIQUES et COMMANDES ....................................................................................................................................... 3 CONSIGNES DE SÉCURITÉ - GÉNÉRALITÉS..................................................................................... 3 APPLICATION et TRANSMISSION des CONSIGNES de SÉCURITÉ............................................... 3 CONSEILS pour L'APPLICATION des CONSIGNES de SÉCURITÉ................................................. 3 EXPLICATION des SYMBOLES D'AVERTISSEMENT et CLASSE de RISQUE................................ 5 DANGERS dus à une UTILISATION INCORRECTE.......................................................................... 5 CONSEILS se RÉFÉRANT aux DANGERS........................................................................................... 6 PROTECTION contre un CONTACT avec des PIÈCES ÉLECTRIQUES et BOÎTIERS..................... 6 PROTECTION contre les RISQUES D'ELECTROCUTION par ALIMENTATION EN TRES BASSE TENSION DE SECURITE................................................................................................................... 8 PROTECTION contre les MOUVEMENTS DANGEREUX.................................................................. 8 PROTECTION contre les CHAMPS MAGNÉTIQUES et ELECTROMAGNÉTIQUES lors du SERVICE et du MONTAGE............................................................................................................................... 11 PROTECTION contre les CONTACTS avec des PIECES à TEMPÉRATURES ÉLEVÉES............. 11 PROTECTION lors de la MANUTENTION et du MONTAGE............................................................ 12 MESURES de SÉCURITÉ lors de la MANIPULATION de BATTERIES........................................... 12 PROTECTION contre les risques liés aux CONDUITES sous PRESSION...................................... 13 Fondements de la programmation CN......................................................................... 15 Introduction........................................................................................................................................... 15 Principes fondamentaux concernant la programmation standard et CPL............................................ 16 Possibilités de programmation.......................................................................................................... 16 Caractérisation des éléments CPL au sein d'un programme pièce ! ................................................ 17 Les moments d'interprétation entre les parties des langages CPL et standard sont à prendre en comp‐ te !...................................................................................................................................................... 18 Liaison de programmes CN.................................................................................................................. 18 Tableau de liaison............................................................................................................................. 18 Liaison de sous-programmes - liaison supplémentaire..................................................................... 19 Influencer le processus de liaison à l'aide de l'identificateur DIN/CPL.............................................. 19 Unités de liaison................................................................................................................................ 19 Eléments de base d'un programme CN................................................................................................ 20 Bloc de programme........................................................................................................................... 20 Instructions........................................................................................................................................ 21 Conditions supplémentaires.............................................................................................................. 21 Mots du programme.............................................................................................................................. 22 Aperçu............................................................................................................................................... 22 Mots du programme à partir des fonctions CN.................................................................................. 23 II/XXI Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Table des matières Page 3.5.3 3.5.4 3.5.5 3.6 3.7 3.7.1 3.7.2 3.8 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.9 3.9.1 3.9.2 3.9.3 3.9.4 3.9.5 3.9.6 3.9.7 3.10 3.10.1 3.10.2 3.10.3 3.10.4 3.10.5 3.10.6 3.10.7 3.11 3.11.1 3.11.2 3.11.3 3.11.4 3.12 3.12.1 3.12.2 3.12.3 3.12.4 3.13 3.13.1 3.13.2 Mots du programme en tant que paramètres.................................................................................... 26 Attributs de programmation............................................................................................................... 27 Utilisation des caractères de séparation entre 2 mots partiels ......................................................... 28 Fin du programme................................................................................................................................ 29 Effet de mots du programme................................................................................................................ 29 modal ................................................................................................................................................ 29 non modal ......................................................................................................................................... 30 Eléments spéciaux pour la configuration du programme ..................................................................... 31 Caractérisation du canal.................................................................................................................... 31 Numéros de bloc............................................................................................................................... 31 Lignes vides dans le code du programme......................................................................................... 31 Commentaires dans un programme pièce........................................................................................ 31 Remarques dans l'interface utilisateur............................................................................................... 33 Sauts dans le déroulement du programme ...................................................................................... 34 Sous-programmes................................................................................................................................ 35 Aperçu............................................................................................................................................... 35 Appel de sous-programmes avec adresse P..................................................................................... 36 Appel de sous-programmes sans adresse P..................................................................................... 37 Appels de sous-programmes autodéfinis avec des codes G et M ................................................... 37 Appels de sous-programmes modaux autodéfinis............................................................................ 38 Appel de sous-programmes en CPL via l'ordre CALL....................................................................... 39 Transfert des paramètres à des sous-programmes.......................................................................... 40 Programmation label et instructions de saut......................................................................................... 41 Aperçu............................................................................................................................................... 41 Labels dans les blocs CN standard et dans les blocs CPL............................................................... 41 GoAhead (GOA) Saut en avant sur un bloc CN standard................................................................. 42 GoBack (GOB) Saut en arrière sur un bloc CN standard ................................................................. 43 GoCond (GOC) Saut conditionnel sur un bloc CN standard............................................................. 43 GoTo Saut inconditionnel sur un bloc CN standard ......................................................................... 44 Saut CPL (GOTO) Saut sur un bloc de programme quelconque...................................................... 45 Instructions de décision et de branchement......................................................................................... 46 Aperçu............................................................................................................................................... 46 Fonction "Ignorer bloc"...................................................................................................................... 46 Instruction CPL : IF-THEN-ELSE-ENDIF.......................................................................................... 46 Instruction CPL : CASE-LABEL...LABEL-OTHERWISE-ENDCASE................................................. 47 Instructions de répétition....................................................................................................................... 48 Aperçu............................................................................................................................................... 48 Instruction CPL : FOR-STEP-TO-NEXT ........................................................................................... 49 Instruction CPL : REPEAT-UNTIL..................................................................................................... 50 Instruction CPL : WHILE-DO-END ................................................................................................... 50 Programmation des variables .............................................................................................................. 50 Noms des variables........................................................................................................................... 50 Groupes de variables........................................................................................................................ 51 Introduction..................................................................................................................................... 51 Variables locales............................................................................................................................ 52 Variables globales.......................................................................................................................... 52 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls III/XXI Table des matières Page 3.13.3 3.13.4 3.13.5 3.14 3.14.1 3.14.2 3.14.3 3.15 3.16 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17 3.17.1 Variables permanentes .................................................................................................................. 52 Variables permanentes définissables............................................................................................. 52 Variables structurées...................................................................................................................... 56 Types de variables............................................................................................................................ 56 Variable entière (INTEGER............................................................................................................ 56 Variable à virgule flottante (REAL)................................................................................................. 56 Variable à virgule flottante (DOUBLE)............................................................................................ 57 Variable logique (BOOLEAN)......................................................................................................... 57 Variable de tableau (ARRAY)......................................................................................................... 57 Variables CHARACTER etSTRING................................................................................................ 58 Aperçu des variables...................................................................................................................... 58 Variables dans la programmation CN standard................................................................................. 59 Variable ERRNO pour l'analyse des erreurs des fonctions CPL....................................................... 60 ERRNO........................................................................................................................................... 60 Informations générales relatives au système....................................................................................... 61 Données administratives................................................................................................................... 61 VERSINF$...................................................................................................................................... 61 Erreurs et avertissements.................................................................................................................. 62 SETERR......................................................................................................................................... 62 SETWARN...................................................................................................................................... 63 CLRWARN..................................................................................................................................... 63 Informations relatives aux variables.................................................................................................. 64 VARINF.......................................................................................................................................... 64 Mots d'ordre réservés........................................................................................................................... 64 Instructions CPL................................................................................................................................... 66 Attribution de valeur........................................................................................................................... 66 Attribution....................................................................................................................................... 66 NUL................................................................................................................................................ 67 Operations mathématiques............................................................................................................... 67 Fonctions simples........................................................................................................................... 67 ABS................................................................................................................................................ 68 INT.................................................................................................................................................. 68 ROUND.......................................................................................................................................... 68 SQRT.............................................................................................................................................. 68 SIN, COS, TAN, ASIN, ACOS, ATAN............................................................................................ 68 Liaisons logiques............................................................................................................................... 69 Généralités..................................................................................................................................... 69 NOT, AND, OR, XOR..................................................................................................................... 69 Conversion entre les systèmes de numération................................................................................. 70 BCD................................................................................................................................................ 70 BIN.................................................................................................................................................. 70 Opérations de comparaison.............................................................................................................. 70 =, >=, >, <>, <=, <........................................................................................................................... 70 Autres éléments de base CPL.............................................................................................................. 70 Constantes........................................................................................................................................ 70 Généralités..................................................................................................................................... 70 IV/XXI Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Table des matières Page 3.17.2 3.18 3.18.1 3.18.2 3.18.3 Variable entière (INTEGER)........................................................................................................... 70 Constante à virgule flottante (REAL).............................................................................................. 70 Constante double précision et opérations double précision........................................................... 71 Constante de chaîne de caractères................................................................................................ 71 Caractères clé................................................................................................................................... 71 Ordres pour la synchronisation des blocs CN ..................................................................................... 72 Aperçu............................................................................................................................................... 72 Fonctions de synchronisation de la préparation du bloc................................................................... 73 WAIT (sans paramètre).................................................................................................................. 73 Fonction CPL : WAIT(,<Temps d'attente>)..................................................................................... 73 Fonction CPL : WAIT(BITIF(...))..................................................................................................... 74 BlkNmb (BNB)................................................................................................................................ 75 Fonctions de synchronisation au moment de l'exécution du bloc...................................................... 75 Généralités..................................................................................................................................... 75 Attente aux états sur l'interface bit API CN : WAITA / WAITO....................................................... 76 Attendre la valeur d'une variable CPL permanente : WPV / WPVE............................................... 77 Ecriture d'une variable CPL permanente : SPV / SPVE................................................................. 80 Arrêt du mouvement jusqu'à ce qu'une position d'axe soit atteinte : ASTOPA / ASTOPO............ 81 Arrêt du mouvement jusqu'à ce qu'une position de base de la pièce à usiner soit atteinte : BSTOPA / BSTOPO......................................................................................................................................... 82 Arrêt du mouvement jusqu'à ce qu'une position de la pièce à usiner soit atteinte : WSTOPA / WSTO‐ PO.................................................................................................................................................. 84 Suppression des conditions d'arrêt : OFFSTOPA / OFFSTOPO................................................... 86 4 Aperçu des groupes modaux des fonctions CN........................................................... 87 5 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ..................................................................................................................................... 89 5.1 5.2 5.2.1 5.2.2 5.2.3 5.2.4 5.2.5 Aperçu.................................................................................................................................................. 89 Codes G................................................................................................................................................ 90 Interpolation linéaire à avance rapide "G00" .................................................................................... 90 Effet................................................................................................................................................ 90 Programmation............................................................................................................................... 91 Interpolation linéaire à vitesse d'avance programmée "G01" ........................................................... 92 Effet................................................................................................................................................ 92 Programmation............................................................................................................................... 92 Interpolation circulaire/hélicoïdale/hélicoïdale N "G02, G03"............................................................ 94 Effet................................................................................................................................................ 94 Programmation au rayon................................................................................................................ 96 Programmation au centre............................................................................................................... 97 Temporisation "G04".......................................................................................................................... 99 Effet................................................................................................................................................ 99 Programmation............................................................................................................................... 99 Entrée tangentielle dans le cercle "G05"......................................................................................... 100 Effet.............................................................................................................................................. 100 Programmation............................................................................................................................. 100 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls V/XXI Table des matières Page 5.2.6 5.2.7 5.2.8 5.2.9 5.2.10 5.2.11 5.2.12 5.2.13 5.2.14 5.2.15 5.2.16 5.2.17 5.2.18 Programmation spline "G06"........................................................................................................... 100 Effet.............................................................................................................................................. 100 Programmation............................................................................................................................. 101 Spline avec programmation de coefficients (type de spline 0) ....................................................... 101 Programmation des coordonnées/axes........................................................................................ 101 Programmation d'un polynôme dénominateur.............................................................................. 102 Programmation d'un vecteur d'orientation.................................................................................... 102 Programmation de la longueur des paramètres de la spline........................................................ 103 Splines C1 et C2 constantes cubiques (types de spline 1 et 2)...................................................... 103 Programmation des coordonnées................................................................................................ 103 Conditions de départ et d'arrivée.................................................................................................. 104 Longueur des paramètres de la spline......................................................................................... 104 Splines B (NURBS) (Type de spline 3)............................................................................................ 104 Programmation des coordonnées................................................................................................ 104 Longueur des paramètres de la spline......................................................................................... 105 Poids ponctuel spline des points de contrôle pour courbes spline B............................................ 105 Conditions secondaires de départ et d'arrivée................................................................................ 105 Pente de trajectoire ACTIVÉE "G08", Pente de trajectoire DÉSACTIVÉE "G09"........................... 107 Effet.............................................................................................................................................. 107 Programmation............................................................................................................................. 108 Profil de vitesse avec limitation du jerk "G8(SHAPE...)", "G9(SHAPE...)", "G9(ASHAPE...)", "G9(X... , Y... , ...)", "AsynchrShapeOrder, ASO"............................................................................................ 108 Effet.............................................................................................................................................. 108 Shape pour le mode trajectoire - programmation......................................................................... 109 Shape pour le mode de positionnement - programmation........................................................... 109 Ordre Shape résultant.................................................................................................................. 110 Rapport entre ordre Shape et jerk................................................................................................ 111 Shape pour axes asynchrones..................................................................................................... 111 Aucun plan "G16"............................................................................................................................ 112 Effet.............................................................................................................................................. 112 Programmation............................................................................................................................. 112 Changement de plan "G17, G18, G19"........................................................................................... 112 Effet.............................................................................................................................................. 112 Programmation............................................................................................................................. 113 Changement de plan avancé "G17(...), G18(...), G19(...)".............................................................. 114 Effet.............................................................................................................................................. 114 Programmation............................................................................................................................. 114 Libre sélection de plan (indépendamment du WCS) "G20"............................................................. 115 Effet.............................................................................................................................................. 115 Programmation............................................................................................................................. 115 Filetage "G33".................................................................................................................................. 116 Effet.............................................................................................................................................. 116 Programmation............................................................................................................................. 117 Comportement dynamique........................................................................................................... 119 Dégagement rapide...................................................................................................................... 120 Correction de trajectoire de la fraise "G40, G41, G42".................................................................... 121 VI/XXI Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Table des matières Page 5.2.19 5.2.20 5.2.21 5.2.22 5.2.23 5.2.24 5.2.25 5.2.26 5.2.27 5.2.28 5.2.29 5.2.30 5.2.31 5.2.32 Effet.............................................................................................................................................. 121 Programmation............................................................................................................................. 122 Raccords de contour pour la correction de trajectoire de la fraise : Congé "G43", Point d'intersection "G44"............................................................................................................................................... 124 Effet.............................................................................................................................................. 124 Programmation............................................................................................................................. 125 Correction de l'avance : Point de pénétration de la fraise "G45", Centre de la fraise "G46"........... 125 Effet.............................................................................................................................................. 125 Programmation............................................................................................................................. 126 Correction de la longueur de l'outil "G47, G48"............................................................................... 126 Effet.............................................................................................................................................. 126 Programmation............................................................................................................................. 127 G52 Décalage d'origine programmable........................................................................................... 128 Effet.............................................................................................................................................. 128 Programmation............................................................................................................................. 128 Décalages d'origines (NPV) "G53", "G53.1-G59.1" bis "G53.5-G59.5"........................................... 129 Effet.............................................................................................................................................. 129 Programmation............................................................................................................................. 130 Arrêt précis ACTIVÉ/DÉSACTIVÉ "G61, G62"................................................................................ 132 Effet.............................................................................................................................................. 132 Programmation............................................................................................................................. 133 Taraudage sans mandrin de compensation "G63".......................................................................... 134 Effet.............................................................................................................................................. 134 Programmation............................................................................................................................. 135 Programmation en pouces "G70", Programmation locale en pouces "INCH(...)"............................ 136 Effet.............................................................................................................................................. 136 Programmation............................................................................................................................. 136 Programmation métrique "G71"....................................................................................................... 136 Effet.............................................................................................................................................. 136 Programmation............................................................................................................................. 136 Approche des coordonnées du point de référence "G74" .............................................................. 137 Effet.............................................................................................................................................. 137 Programmation............................................................................................................................. 137 Approche du point de référence "G74(HOME)"............................................................................... 138 Effet.............................................................................................................................................. 138 Programmation............................................................................................................................. 138 Palpeur de mesure "G75"................................................................................................................ 139 Effet.............................................................................................................................................. 139 Programmation............................................................................................................................. 139 Approche de la position fixe des axes machine "G76".................................................................... 140 Effet.............................................................................................................................................. 140 Programmation............................................................................................................................. 140 Sous-programmes asynchrones : Repositionnement de coordonnées individuelles "G77"............ 140 Effet.............................................................................................................................................. 140 Programmation............................................................................................................................. 141 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls VII/XXI Table des matières Page 5.2.33 5.2.34 5.2.35 5.2.36 5.2.37 5.2.38 5.2.39 5.2.40 5.2.41 5.3 5.3.1 5.3.2 5.3.3 5.3.4 Changement pour correction ACTIVÉ "G78", Changement pour correction DÉSACTIVÉ "G79".... 141 Effet.............................................................................................................................................. 141 Programmation............................................................................................................................. 142 Programmation absolue "G90", Programmation relative "G91", Programmation absolue locale "AC(...)", Programmation relative locale "IC(...)".............................................................................. 143 Effet.............................................................................................................................................. 143 Programmation............................................................................................................................. 143 Programmation de temps "G93"...................................................................................................... 144 Effet.............................................................................................................................................. 144 Programmation............................................................................................................................. 144 Programmation de l'avance (par min) "G94"................................................................................... 144 Effet.............................................................................................................................................. 144 Programmation............................................................................................................................. 145 Programmation incrémentale de la vitesse "G94(...)" avec adaptation de l'accélération................ 145 Effet.............................................................................................................................................. 145 Programmation............................................................................................................................. 146 Programmation de l'avance (par tour) "G95"................................................................................... 147 Effet.............................................................................................................................................. 147 Programmation............................................................................................................................. 147 Vitesse de coupe constante "G96", Programmation directe de la vitesse de rotation "G97".......... 148 Effet.............................................................................................................................................. 148 Programmation............................................................................................................................. 150 Correction du rayon d'outil 3D "G140, G141, G142"....................................................................... 152 Effet.............................................................................................................................................. 152 Programmation............................................................................................................................. 153 Placement : Plan incliné "G151 - G159.5"....................................................................................... 154 Effet.............................................................................................................................................. 154 Programmation …........................................................................................................................ 155 ... directement dans la ligne de programme en tant que paramètre :........................................... 155 ... en relation avec les tableaux de positionnement :.................................................................... 160 Codes M............................................................................................................................................. 161 Interrompre le programme (Arrêt du programme) "M0, M00".......................................................... 161 Effet.............................................................................................................................................. 161 Programmation............................................................................................................................. 161 Interrompre le programme de façon conditionnelle (Arrêt conditionnel du programme) "M1, M01".... 161 Effet.............................................................................................................................................. 161 Programmation............................................................................................................................. 162 Terminer le programme (Fin de programme) "M2, M02, M30"........................................................ 162 Effet.............................................................................................................................................. 162 Programmation............................................................................................................................. 162 Rotation à droite de la broche "M3, M103, M203", Rotation à droite et Réfrigérant ACTIVÉ "M13, M113, M213".............................................................................................................................................. 163 Effet.............................................................................................................................................. 163 Programmation............................................................................................................................. 163 VIII/XXI Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Table des matières Page 5.3.5 5.3.6 5.3.7 5.3.8 5.3.9 5.3.10 5.4 5.4.1 5.4.2 5.4.3 5.4.4 5.5 5.5.1 5.5.2 6 6.1 6.2 6.2.1 6.2.2 6.3 Rotation à gauche de la broche "M4, M104, M204", Rotation à gauche et Réfrigérant ACTIVÉ "M14, M114, M214"................................................................................................................................... 164 Effet.............................................................................................................................................. 164 Programmation............................................................................................................................. 164 Arrêt de la broche "M5, M105, M205".............................................................................................. 165 Effet.............................................................................................................................................. 165 Programmation............................................................................................................................. 165 Réglage de la broche / Positionnement de la broche "M19, M119, M219"..................................... 166 Effet.............................................................................................................................................. 166 Programmation............................................................................................................................. 166 Sélection automatique de la gamme de vitesse "M40, M140, M240"............................................. 167 Effet.............................................................................................................................................. 167 Programmation............................................................................................................................. 167 Sélection manuelle de la gamme de vitesse "M41...44, M141...144, M241...244".......................... 168 Effet.............................................................................................................................................. 168 Programmation............................................................................................................................. 168 Débrayer la gamme de vitesse "M48, M148, M248"....................................................................... 169 Effet.............................................................................................................................................. 169 Programmation............................................................................................................................. 169 Programmation de l'avance et de la vitesse de rotation..................................................................... 169 Adresse F"F".................................................................................................................................... 169 Effet.............................................................................................................................................. 169 Programmation............................................................................................................................. 170 Vitesse des axes asynchrones "FA"................................................................................................ 170 Effet.............................................................................................................................................. 170 Programmation............................................................................................................................. 170 Adresse oméga (avance) "Oméga"................................................................................................. 170 Effet.............................................................................................................................................. 170 Programmation............................................................................................................................. 171 Programmer la vitesse de rotation de la broche"S, SSPG"............................................................. 171 Effet.............................................................................................................................................. 171 Programmation............................................................................................................................. 171 Correction de l'outil............................................................................................................................. 172 Correction D "D".............................................................................................................................. 172 Effet.............................................................................................................................................. 172 Programmation............................................................................................................................. 173 Correction ED "ED".......................................................................................................................... 173 Effet.............................................................................................................................................. 173 Programmation............................................................................................................................. 174 Fonctions CN avec syntaxe de langage standard..................................................... 175 Aperçu................................................................................................................................................ 175 Surveillance de zone "Area, ARA"...................................................................................................... 176 Effet................................................................................................................................................. 176 Programmation................................................................................................................................ 176 Sous-programmes asynchrones : déconnecter "ASPCLR"................................................................ 179 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls IX/XXI Table des matières Page 6.3.1 6.3.2 6.4 6.4.1 6.4.2 6.5 6.5.1 6.5.2 6.6 6.6.1 6.6.2 6.7 6.7.1 6.7.2 6.8 6.8.1 6.8.2 6.9 6.9.1 6.9.2 6.10 6.10.1 6.10.2 6.11 6.11.1 6.11.2 6.12 6.12.1 6.12.2 6.13 6.13.1 6.13.2 6.14 6.14.1 6.14.2 6.15 6.15.1 6.15.2 6.16 6.16.1 6.16.2 6.17 6.17.1 6.17.2 6.18 Effet................................................................................................................................................. 179 Programmation................................................................................................................................ 179 Sous-programmes asynchrones : désactiver "ASPDIS"..................................................................... 179 Effet................................................................................................................................................. 179 Programmation................................................................................................................................ 179 Sous-programmes asynchrones : activer "ASPENA"......................................................................... 180 Effet................................................................................................................................................. 180 Programmation................................................................................................................................ 180 Sous-programmes asynchrones : Définir le point de redémarrage "ASPRTP".................................. 180 Effet................................................................................................................................................. 180 Programmation................................................................................................................................ 181 Sous-programmes asynchrones : connecter "ASPSET".................................................................... 181 Effet................................................................................................................................................. 181 Programmation................................................................................................................................ 181 Sous-programmes asynchrones : déclenchement à l'aide du programme "ASPSTA"....................... 182 Effet................................................................................................................................................. 182 Programmation................................................................................................................................ 182 Attribuer un nom logique d'axe "AssLogName, ALN"......................................................................... 183 Effet................................................................................................................................................. 183 Programmation................................................................................................................................ 183 Calibrer les cinématiques d'axe : Transformation en arrière "ATBWD".............................................. 184 Effet................................................................................................................................................. 184 Programmation................................................................................................................................ 184 Calibrer les cinématiques d'axe : Optimiser les paramètres "ATCAL"............................................... 184 Effet................................................................................................................................................. 184 Programmation................................................................................................................................ 185 Calibrer les cinématiques d'axe : Transformation en avant "ATFWD"............................................... 186 Effet................................................................................................................................................. 186 Programmation................................................................................................................................ 186 Calibrer les cinématiques d'axe : Lire les paramètres de la CN "ATGET"......................................... 187 Effet................................................................................................................................................. 187 Programmation................................................................................................................................ 188 Calibrer les cinématiques d'axe : Ecrire les paramètres dans la CN "ATPUT" ................................. 189 Effet................................................................................................................................................. 189 Programmation................................................................................................................................ 189 Exécuter les fonctions auxiliaires actives de tous les groupes "AUXFUNC" ..................................... 191 Effet................................................................................................................................................. 191 Programmation................................................................................................................................ 191 Modifier l'accélération maximale de l'axe "AxAcc, AAC", Enregistrer temporairement l'accélération maxi‐ male de l'axe "AxAccSave, AAS"....................................................................................................... 192 Effet................................................................................................................................................. 192 Programmation................................................................................................................................ 192 Couplage d'axes "AxCouple, AXC".................................................................................................... 193 Effet................................................................................................................................................. 193 Programmation................................................................................................................................ 194 Désactiver le mode d'axe C pour les broches "AxisToSpindle, ATS"................................................. 196 X/XXI Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Table des matières Page 6.18.1 6.18.2 6.19 6.19.1 6.19.2 6.20 6.20.1 6.20.2 6.21 6.21.1 6.21.2 6.22 6.22.1 6.23 6.23.1 6.23.2 6.24 6.24.1 6.24.2 6.25 6.25.1 6.25.2 6.26 6.26.1 6.26.2 6.27 6.27.1 6.27.2 6.28 6.28.1 6.28.2 6.29 6.29.1 6.29.2 6.30 6.30.1 6.30.2 6.31 6.31.1 6.31.2 6.32 6.32.1 6.32.2 6.33 6.33.1 Effet................................................................................................................................................. 196 Programmation................................................................................................................................ 196 Modifier la vitesse maximale de l'axe "AxVel, AVE", Enregistrer temporairement la vitesse maximale de l'axe "AxVelSave, AVS" ..................................................................................................................... 197 Effet................................................................................................................................................. 197 Programmation................................................................................................................................ 197 Placement : Correction de la position de la pièce à usiner "BcsCorr, BCR"....................................... 198 Effet................................................................................................................................................. 198 Programmation................................................................................................................................ 199 Programmation de chanfreins "ChLength, CHL" "ChSection, CHS".................................................. 200 Effet................................................................................................................................................. 200 Programmation................................................................................................................................ 201 Détection automatique des angles et des droites "CLD".................................................................... 202 Effet................................................................................................................................................. 202 Surveillance de collision "Collision, CLN"........................................................................................... 203 Effet................................................................................................................................................. 203 Programmation................................................................................................................................ 204 Sélectionner la transformation d'axe "Coord, CRD"........................................................................... 206 Effet................................................................................................................................................. 206 Programmation................................................................................................................................ 207 Tableau de couplage spline "CoupleSplineTab, CST"....................................................................... 207 Effet................................................................................................................................................. 207 Programmation................................................................................................................................ 208 Activer les tableaux de correction D "DcTSel, DCS".......................................................................... 208 Effet................................................................................................................................................. 208 Programmation................................................................................................................................ 208 Accepter le réglage d'axe de défaut des paramètres machine "DefAxis, DAX"................................. 209 Effet................................................................................................................................................. 209 Programmation................................................................................................................................ 209 Remettre les broches du canal aux paramètres machine "DefSpindle, DSP".................................... 210 Effet................................................................................................................................................. 210 Programmation................................................................................................................................ 210 Enchaînement de blocs sans réduction de vitesse "DefTangTrans, DTT" ........................................ 210 Effet................................................................................................................................................. 210 Programmation................................................................................................................................ 210 Programmation au diamètre "DiaProg, DIA", Programmation au rayon "RadProg, RAD".................. 211 Effet................................................................................................................................................. 211 Programmation................................................................................................................................ 211 Réglage en hauteur pour Numérisation "DistCtrl, DCR"..................................................................... 212 Effet................................................................................................................................................. 212 Programmation................................................................................................................................ 212 Couplage de position finale "EndPosCouple, EPC"........................................................................... 214 Effet................................................................................................................................................. 214 Programmation................................................................................................................................ 215 Génération de l'avance : Masquer les axes "FeedAd, FAD".............................................................. 216 Effet................................................................................................................................................. 216 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls XI/XXI Table des matières Page 6.33.2 6.34 6.34.1 6.34.2 6.35 6.35.1 6.35.2 6.36 6.36.1 6.36.2 6.37 6.37.1 6.37.2 6.38 6.38.1 6.38.2 6.39 6.39.1 6.39.2 6.40 6.40.1 6.40.2 6.41 6.41.1 6.41.2 6.42 6.42.1 6.42.2 6.43 6.43.1 6.43.2 6.44 6.44.1 6.44.2 6.45 6.45.1 6.45.2 6.46 6.47 6.47.1 6.47.2 6.48 6.48.1 6.48.2 6.49 Programmation................................................................................................................................ 216 Anticipation "FeedForward, FFW"...................................................................................................... 217 Effet................................................................................................................................................. 217 Programmation................................................................................................................................ 217 Mesure au vol "FlyMeas, FME".......................................................................................................... 218 Effet................................................................................................................................................. 218 Programmation................................................................................................................................ 218 Mesurer sur butée fixe "FsProbe, FSP".............................................................................................. 219 Effet................................................................................................................................................. 219 Programmation................................................................................................................................ 220 Déplacement sur butée fixe "FsMove, FSM", "FsTorque, FST", "FsReset, FSR".............................. 221 Effet................................................................................................................................................. 221 Programmation................................................................................................................................ 222 Reprendre l'axe "GetAxis, GAX"......................................................................................................... 223 Effet................................................................................................................................................. 223 Programmation................................................................................................................................ 224 Compensation des erreurs de trajectoire et d'angle : activer "GCT(1)".............................................. 224 Effet................................................................................................................................................. 224 Programmation................................................................................................................................ 225 Compensation des erreurs de trajectoire et d'angle : désactiver "GCT(0)"........................................ 225 Effet................................................................................................................................................. 225 Programmation................................................................................................................................ 225 Créer les broches de canal "GetSpindle, GSP".................................................................................. 225 Effet................................................................................................................................................. 225 Programmation................................................................................................................................ 225 Changement de bloc via signal à grande vitesse "HsBlkSwitch, HSB".............................................. 226 Effet................................................................................................................................................. 226 Programmation................................................................................................................................ 226 Changement de bloc avec interruption via signal à grande vitesse "HsBlkSwitch(..,HSSTOP=..), HSB(..,HSSTOP=..)"........................................................................................................................... 228 Effet................................................................................................................................................. 228 Programmation................................................................................................................................ 229 Correction en ligne dans les coordonnées de la pièce à usiner "HWOC", "HWOCDIS".................... 230 Effet................................................................................................................................................. 230 Programmation................................................................................................................................ 230 Initialisation de la mesure au vol "InitMeas, IME"............................................................................... 231 Effet................................................................................................................................................. 231 Programmation................................................................................................................................ 231 Sélection de la fenêtre d'arrêt précis "IPS1, IPS2, IPS3"................................................................... 232 Mode JOG dans les coordonnées de la pièce à usiner "JogWCSSelect".......................................... 232 Effet................................................................................................................................................. 232 Programmation................................................................................................................................ 233 Programmation KV "KvProg, KVP"..................................................................................................... 233 Effet................................................................................................................................................. 233 Programmation................................................................................................................................ 234 Compensation de poursuite "LCP"..................................................................................................... 235 XII/XXI Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Table des matières Page 6.49.1 6.49.2 6.50 6.50.1 6.50.2 6.51 6.51.1 6.51.2 6.52 6.52.1 6.52.2 6.52.3 6.52.4 6.52.5 6.53 6.53.1 6.53.2 6.54 6.54.1 6.54.2 6.55 6.55.1 6.55.2 6.56 6.56.1 6.56.2 6.57 6.57.1 6.57.2 6.58 6.58.1 6.58.2 6.59 6.60 6.60.1 6.60.2 6.61 6.61.1 6.61.2 6.62 6.62.1 6.62.2 6.63 Effet................................................................................................................................................. 235 Programmation................................................................................................................................ 235 Repartir le bloc de déplacement : Longueur du parcours partiel "LEN"............................................. 236 Effet................................................................................................................................................. 236 Programmation................................................................................................................................ 236 Réglage de la puissance du laser dépendant de la vitesse de trajectoire "LFP", "LFConf, LFC"...... 238 Effet................................................................................................................................................. 238 Programmation................................................................................................................................ 238 Profils de vitesse (fonctions rampe).................................................................................................... 239 Généralités...................................................................................................................................... 239 Effet des interpolateurs d'accélération "LinUpFeed, LNU", "SinUpFeed, SNU", "Sin2UpFeed, S2U" ... 240 Effet de l'interpolateur de marche constante "ConstFeed, CFD"..................................................... 240 Effet des interpolateurs de freinage "LinDownFeed, LND", "SinDownFeed, SND", "Sin2DownFeed, S2D"................................................................................................................................................ 240 Programmation................................................................................................................................ 241 Prise d'origine Axe modulo (axe linéaire infini) "LinModZp, LMZ"...................................................... 242 Effet................................................................................................................................................. 242 Programmation................................................................................................................................ 243 Changement de broche principale "MainSp, MSP"............................................................................ 243 Effet................................................................................................................................................. 243 Programmation................................................................................................................................ 243 Aide à la saisie : Fonction miroir "Mirror(...), MIR(...)"........................................................................ 244 Effet................................................................................................................................................. 244 Programmation................................................................................................................................ 244 Calcul modulo pour les axes infinis à déplacement incrémental "Modulo, MOD".............................. 246 Effet................................................................................................................................................. 246 Programmation................................................................................................................................ 246 Grignotage "Nibble, NIB".................................................................................................................... 247 Effet................................................................................................................................................. 247 Programmation................................................................................................................................ 248 Repartir le bloc de déplacement : Nombre de parcours partiels "NUM"............................................. 249 Effet................................................................................................................................................. 249 Programmation................................................................................................................................ 249 Programmation de l'orientation "O(), ROTAX()", "phi, theta, psi" : Généralités.................................. 250 Programmation de l'orientation "O(), ROTAX()", "phi, theta, psi" : Orientation vectorielle.................. 250 Effet................................................................................................................................................. 250 Programmation................................................................................................................................ 251 Programmation de l'orientation "O(), ROTAX()", "phi, theta, psi" : Orientation tensorielle................. 253 Effet................................................................................................................................................. 253 Programmation................................................................................................................................ 253 Programmation de l'orientation "O(), ROTAX()", "phi, thêta, psi" : Mouvement d'orientation linéaire avec programmation d'axes........................................................................................................................ 256 Effet................................................................................................................................................. 256 Programmation................................................................................................................................ 257 Programmation de l'orientation "O(), ROTAX()", "phi, thêta, psi" : Mouvement d'orientation linéaire avec programmation de coordonnées......................................................................................................... 258 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls XIII/XXI Table des matières Page 6.63.1 6.63.2 6.64 6.64.1 6.64.2 6.65 6.65.1 6.65.2 6.66 6.66.1 6.66.2 6.67 6.67.1 6.67.2 6.68 6.68.1 6.68.2 6.69 6.69.1 6.69.2 6.70 6.71 6.71.1 6.71.2 6.72 6.72.1 6.72.2 6.73 6.73.1 6.73.2 6.74 6.74.1 6.74.2 6.75 6.75.1 6.75.2 6.76 6.76.1 6.76.2 6.77 6.77.1 6.77.2 6.78 6.78.1 6.78.2 Effet................................................................................................................................................. 258 Programmation................................................................................................................................ 259 Avance 100% "OvrDis, OVD", "OvrEna, OVE"................................................................................... 260 Effet................................................................................................................................................. 260 Programmation................................................................................................................................ 260 Modifier l'accélération de trajectoire "PathAcc, PAC"......................................................................... 261 Effet................................................................................................................................................. 261 Programmation................................................................................................................................ 261 Limiter l'accélération radiale maximale "RadialAcc, RAC"................................................................. 262 Effet................................................................................................................................................. 262 Programmation................................................................................................................................ 262 Sortie à grande vitesse, dépendant de la position "PosDepHSOut, PHS"......................................... 263 Effet................................................................................................................................................. 263 Programmation................................................................................................................................ 263 Activer les tableaux de positionnement "PmTSel, PMS".................................................................... 265 Effet................................................................................................................................................. 265 Programmation................................................................................................................................ 265 Programmation en coordonnées polaires : Définir le pôle "PolarPol, POP"....................................... 265 Effet................................................................................................................................................. 265 Programmation................................................................................................................................ 266 Programmer les coordonnées polaires .............................................................................................. 266 Définir le point de miroir/de rotation "PoleSet, PLS"........................................................................... 270 Effet................................................................................................................................................. 270 Programmation................................................................................................................................ 270 Mode de positionnement pour axes infinis "PosMode, PMD", Mode de positionnement local pour axes infinis "DC", "ACP", "ACN".................................................................................................................. 271 Effet................................................................................................................................................. 271 Programmation................................................................................................................................ 271 Programmation de précision "PrecProg, PRP"................................................................................... 273 Effet................................................................................................................................................. 273 Programmation................................................................................................................................ 274 Temps de déclenchement de la course (point d'arrivée de l'interpolation) "PtBlkEnd, PTE"............. 275 Effet................................................................................................................................................. 275 Programmation................................................................................................................................ 276 Temps de déclenchement de la course (mettre à a valeur de défaut) "PtDefault, PTD".................... 278 Effet................................................................................................................................................. 278 Programmation................................................................................................................................ 278 Temps de déclenchement de la course (fenêtre Inpos) "PtInpos, PTI".............................................. 278 Effet................................................................................................................................................. 278 Programmation................................................................................................................................ 279 Mouvement de déplacement PTP "PtpMove, PTP"............................................................................ 279 Effet................................................................................................................................................. 279 Programmation................................................................................................................................ 280 Découpage-poinçonnage "Punch, PUN"............................................................................................ 281 Effet................................................................................................................................................. 281 Programmation................................................................................................................................ 281 XIV/XXI Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Table des matières Page 6.79 6.79.1 6.79.2 6.80 6.80.1 6.80.2 6.81 6.81.1 6.81.2 6.82 6.82.1 6.82.2 6.83 6.83.1 6.83.2 6.84 6.84.1 6.84.2 6.85 6.85.1 6.85.2 6.86 6.86.1 6.86.2 6.87 6.87.1 6.87.2 6.88 6.88.1 6.88.2 6.89 6.89.1 6.89.2 6.90 6.90.1 6.90.2 6.91 6.91.1 6.91.2 6.92 6.92.1 6.92.2 6.93 6.93.1 6.93.2 Réduction du couple "RedTorque, RDT"............................................................................................ 283 Effet................................................................................................................................................. 283 Programmation................................................................................................................................ 283 Extraire un axe d'un groupe d'axes "RemAxis, RAX"......................................................................... 284 Effet................................................................................................................................................. 284 Programmation................................................................................................................................ 284 Supprimer le nom logique de l'axe "RemLogName, RLN"................................................................. 284 Effet................................................................................................................................................. 284 Programmation................................................................................................................................ 285 Supprimer les broches du canal "RemSpindle, RSP"......................................................................... 285 Effet................................................................................................................................................. 285 Programmation................................................................................................................................ 285 Sous-programmes asynchrones : Définir le point de redémarrage dans le sous-programme asynchrone "REPOSTP"........................................................................................................................................ 286 Effet................................................................................................................................................. 286 Programmation................................................................................................................................ 286 Aide à la saisie : Rotation "Rotate(...), ROT(...)"................................................................................. 286 Effet................................................................................................................................................. 286 Programmation................................................................................................................................ 287 Arrondissage des angles avec indication de la différence "RoundEps, RNE".................................... 289 Effet................................................................................................................................................. 289 Programmation................................................................................................................................ 289 Arrondissage des angles avec indication du rayon "Rounding, RND"................................................ 289 Effet................................................................................................................................................. 289 Programmation................................................................................................................................ 290 Aide à la saisie : Mise à l'échelle "Scale(...), SCL(...)" ....................................................................... 290 Effet................................................................................................................................................. 290 Programmation................................................................................................................................ 291 Couplage sélectif additif de coordonnées "SelCrdCouple, SCC"....................................................... 293 Effet................................................................................................................................................. 293 Programmation................................................................................................................................ 293 Couplage sélectif additif de coordonnées avec tableau"SelCrdCoupleTab, SCCT".......................... 293 Effet................................................................................................................................................. 293 Programmation................................................................................................................................ 294 Fixer la position du programme "SetPos, SPS".................................................................................. 294 Effet................................................................................................................................................. 294 Programmation................................................................................................................................ 294 Décalage programmé du contour "Shift, SHT"................................................................................... 295 Effet................................................................................................................................................. 295 Programmation................................................................................................................................ 296 Limitation de la vitesse de rotation "SMin, SMN", "SMax, SMX"........................................................ 296 Effet................................................................................................................................................. 296 Programmation................................................................................................................................ 297 Valider/reprendre la broche réservée "SpAdmin, SPA"...................................................................... 297 Effet................................................................................................................................................. 297 Programmation................................................................................................................................ 298 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls XV/XXI Table des matières Page 6.94 6.94.1 6.94.2 6.95 6.95.1 6.95.2 6.96 6.96.1 6.96.2 6.97 6.97.1 6.97.2 6.98 6.98.1 6.98.2 6.99 6.99.1 6.99.2 6.100 6.100.1 6.100.2 6.101 6.101.1 6.101.2 6.102 6.103 6.103.1 6.103.2 6.104 6.104.1 6.104.2 6.105 6.105.1 6.105.2 6.106 6.106.1 6.106.2 6.107 6.107.1 6.107.2 6.108 6.108.1 6.108.2 6.109 6.109.1 Définir (activer) le groupe de couplage, dissocier (désactiver) le groupe de couplage "SpCoupleConfig, SPCC"................................................................................................................................................ 298 Effet................................................................................................................................................. 298 Programmation................................................................................................................................ 298 Ecart de couplage de la broche esclave "SpCoupleDist, SPCD"....................................................... 299 Effet................................................................................................................................................. 299 Programmation................................................................................................................................ 299 Fenêtre d'erreur de la marche synchrone "SpCoupleErrWin, SPCE"................................................ 300 Effet................................................................................................................................................. 300 Programmation................................................................................................................................ 300 Décalage angulaire en couplage actif "SpCouplePosOffs, SPCP"..................................................... 300 Effet................................................................................................................................................. 300 Programmation................................................................................................................................ 301 Attente du décalage angulaire "SpCouplePosOffs_Wait, SPCP_WAIT"............................................ 301 Effet................................................................................................................................................. 301 Programmation................................................................................................................................ 301 Fenêtre de marche synchrone "SpCoupleSyncWin, SPCS".............................................................. 302 Effet................................................................................................................................................. 302 Programmation................................................................................................................................ 302 Attente du mode synchrone "SpCouple_Wait, SPC_WAIT"............................................................... 302 Effet................................................................................................................................................. 302 Programmation................................................................................................................................ 302 Définir/dissocier les groupes de broches "SPG.., SPGALL"............................................................... 303 Effet................................................................................................................................................. 303 Programmation................................................................................................................................ 303 Programmation des broches du système "SSp....." : Généralités...................................................... 304 Programmation des broches du système "SSp....." : Programmation de la vitesse de rotation......... 304 Effet................................................................................................................................................. 304 Programmation................................................................................................................................ 304 Programmation des broches du système "SSp....." : Programmation de mouvement....................... 305 Effet................................................................................................................................................. 305 Programmation................................................................................................................................ 305 Programmation des broches du système "SSp....." : Orientation de la broche.................................. 305 Effet................................................................................................................................................. 305 Programmation................................................................................................................................ 305 Programmation des broches du système "SSp....." : Limiter la vitesse de rotation minimale............. 306 Effet................................................................................................................................................. 306 Programmation................................................................................................................................ 306 Programmation des broches du système "SSp....." : Limiter la vitesse de rotation maximale............ 306 Effet................................................................................................................................................. 306 Programmation................................................................................................................................ 306 Programmation des broches du système "SSp....." : Changer la gamme de vitesse......................... 307 Effet................................................................................................................................................. 307 Programmation................................................................................................................................ 307 Programmation des broches du système "SSp....." : Valider/reprendre la broche réservée.............. 308 Effet................................................................................................................................................. 308 XVI/XXI Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Table des matières Page 6.109.2 Programmation................................................................................................................................ 308 6.110 Programmation des broches du système "SSp....." : Désactiver la gestion de mouvement des broches pour certains canaux.......................................................................................................................... 308 6.110.1 Effet................................................................................................................................................. 308 6.110.2 Programmation................................................................................................................................ 308 6.111 Programmation des broches du système "SSp....." : Commutation interface de position/de vitesse de rotation................................................................................................................................................ 309 6.111.1 Effet................................................................................................................................................. 309 6.111.2 Programmation................................................................................................................................ 309 6.112 Activer le mode axe C pour les broches "SpindleToAxis, STA"......................................................... 309 6.112.1 Effet................................................................................................................................................. 309 6.112.2 Programmation................................................................................................................................ 310 6.113 Arrondissage des angles avec des splines "SplineCornering, SCO"................................................. 310 6.113.1 Effet................................................................................................................................................. 310 6.113.2 Programmation................................................................................................................................ 310 6.114 Définition du type de spline "SplineDef, SDF".................................................................................... 311 6.114.1 Effet................................................................................................................................................. 311 6.114.2 Programmation................................................................................................................................ 311 6.115 Répartition du parcours programmable "Split, SPLIT"........................................................................ 312 6.115.1 Effet................................................................................................................................................. 312 6.115.2 Programmation................................................................................................................................ 312 6.116 Broche : Commutation entre l'interface de position/de vitesse de rotation "SpMode, SPM".............. 313 6.116.1 Effet................................................................................................................................................. 313 6.116.2 Programmation................................................................................................................................ 314 6.117 Paramétrage de l'orientation statique de l'outil "StatToolOri, STO".................................................... 314 6.117.1 Effet................................................................................................................................................. 314 6.117.2 Programmation................................................................................................................................ 314 6.118 Déplacement dans le TCS "TCM( , , )"............................................................................................... 315 6.118.1 Effet................................................................................................................................................. 315 6.118.2 Programmation................................................................................................................................ 315 6.119 Guidage tangentiel de l'outil "TangTool, TTL".................................................................................... 315 6.119.1 Effet................................................................................................................................................. 315 6.119.2 Programmation................................................................................................................................ 316 6.120 Orientation tangentielle de l'outil "TangToolOri, TTO"........................................................................ 318 6.120.1 Effet................................................................................................................................................. 318 6.120.2 Programmation................................................................................................................................ 319 6.121 Dégagement de taraudage "TappRet1, TappRet2"............................................................................ 321 6.121.1 Effet................................................................................................................................................. 321 6.121.2 Programmation................................................................................................................................ 321 6.122 Sélection de broches pour le taraudage sans mandrin de compensation "TappSp, TSP"................. 322 6.122.1 Effet................................................................................................................................................. 322 6.122.2 Programmation................................................................................................................................ 322 6.123 Définition du TCS dans les coordonnées du programme "TcsDef, TCS"........................................... 323 6.123.1 Effet................................................................................................................................................. 323 6.123.2 Programmation................................................................................................................................ 323 6.124 Fonctions additionnelles pour le taraudage "ThreadSet, TST"........................................................... 325 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls XVII/XXI Table des matières Page 6.124.1 6.124.2 6.124.3 6.124.4 6.124.5 6.124.6 6.125 6.125.1 6.125.2 6.126 6.126.1 6.126.2 6.127 6.127.1 6.127.2 6.128 6.128.1 6.128.2 6.128.3 6.128.4 6.128.5 6.129 6.129.1 6.129.2 6.130 6.130.1 6.130.2 6.131 6.131.1 6.131.2 6.132 6.132.1 6.132.2 7 7.1 7.1.1 7.1.2 Effet................................................................................................................................................. 325 Programmation : Configurer les données de dégagement.............................................................. 326 Programmation : Valider le dégagement......................................................................................... 326 Programmation : Configurer la dynamique...................................................................................... 327 Programmation : Commuter le mode de fonctionnement de la broche........................................... 327 Fonction de base.......................................................................................................................... 327 Programmation : Influencer le signal IF du canal............................................................................ 327 Décalage des coordonnées du programme "Trans, TRS", Décalage additif des coordonnées du pro‐ gramme "ATrans, ATR"...................................................................................................................... 328 Effet................................................................................................................................................. 328 Programmation................................................................................................................................ 328 Entraînements virtuels "VirtAxisPos, VAP"......................................................................................... 329 Effet................................................................................................................................................. 329 Programmation................................................................................................................................ 329 Reprendre l'axe, attendre le cas échéant "WaitAxis, WAX"............................................................... 330 Effet................................................................................................................................................. 330 Programmation................................................................................................................................ 330 Écriture des paramètres SERCOS "WriteId, WID"............................................................................. 331 Effet................................................................................................................................................. 331 Programmation 1............................................................................................................................. 331 Programmation 2............................................................................................................................. 332 Programmation 3............................................................................................................................. 332 Programmation 4............................................................................................................................. 332 Activer les tableaux de décalage d'origine "ZoTSel, ZOS"................................................................. 333 Effet................................................................................................................................................. 333 Programmation................................................................................................................................ 333 Diagnostic du profil de vitesse "VREC_START", "VREC_STOP"....................................................... 334 Effet................................................................................................................................................. 334 Programmation................................................................................................................................ 335 Sous-programmes asynchrones : Définition du comportement de redémarrage "REPOSDEF".... 336 Effet................................................................................................................................................. 336 Programmation................................................................................................................................ 336 Commutation de la programmation linéaire/spline............................................................................. 336 Effet................................................................................................................................................. 336 Programmation................................................................................................................................ 337 Fonctions CPL........................................................................................................... 339 Valeurs de coordonnées et d'axes..................................................................................................... 339 Généralités...................................................................................................................................... 339 Fonctions de lecture des positions des coordonnées et des axes.................................................. 341 Généralités................................................................................................................................... 341 PCS ............................................................................................................................................. 343 WCS ............................................................................................................................................ 344 MCS ............................................................................................................................................. 345 ACS ............................................................................................................................................. 346 XVIII/XXI Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Table des matières Page 7.1.3 7.1.4 7.2 7.2.1 7.3 7.3.1 7.4 7.4.1 7.5 7.5.1 7.6 7.6.1 7.7 7.7.1 7.8 SPOS ........................................................................................................................................... 347 APOS ........................................................................................................................................... 347 Fonctions de lecture à partir du palpeur de mesure........................................................................ 348 PCSPROBE.................................................................................................................................. 348 PROBE ........................................................................................................................................ 349 PPOS ........................................................................................................................................... 349 Fonctions de lecture des décalages et positionnements................................................................. 350 AXO ............................................................................................................................................. 350 COF.............................................................................................................................................. 351 DPC.............................................................................................................................................. 351 Information sur l'axe AXINF................................................................................................................ 352 Généralités...................................................................................................................................... 352 AXINF........................................................................................................................................... 352 Décalages d'origine............................................................................................................................ 353 Ordres CPL pour tableaux NPV...................................................................................................... 353 Généralités................................................................................................................................... 353 ZOV ZeroOffsetValue................................................................................................................... 354 ZOT ZeroOffsetTable................................................................................................................... 354 ZOTCR......................................................................................................................................... 356 ZOCINS........................................................................................................................................ 357 ZOCDEL....................................................................................................................................... 358 Corrections d'outil............................................................................................................................... 359 Correction d'outil.............................................................................................................................. 359 Généralités................................................................................................................................... 359 TCV ToolCorrectionValue............................................................................................................. 359 DCT D-CorrectionTable................................................................................................................ 359 Base de données des outils................................................................................................................ 361 Base de données............................................................................................................................. 361 DBTAB.......................................................................................................................................... 361 DBSEA......................................................................................................................................... 361 Positionnements (Plan incliné) .......................................................................................................... 363 Plan incliné...................................................................................................................................... 363 Généralités................................................................................................................................... 363 PMV PlaceMentValue................................................................................................................... 363 PMT PlaceMentTable................................................................................................................... 363 Accès général aux tableaux XML....................................................................................................... 364 Tableaux XML................................................................................................................................. 364 XTAB............................................................................................................................................ 364 XTABCR....................................................................................................................................... 365 DBMOVE...................................................................................................................................... 365 DBLOAD....................................................................................................................................... 366 DBSAVE....................................................................................................................................... 367 DBTABX....................................................................................................................................... 368 DBTABXL..................................................................................................................................... 369 DBSEAX....................................................................................................................................... 370 Mise à l'échelle................................................................................................................................... 373 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls XIX/XXI Table des matières Page 7.8.1 7.9 7.9.1 7.9.2 7.10 7.10.1 7.11 7.11.1 7.12 7.12.1 7.13 7.13.1 7.14 7.14.1 7.14.2 7.14.3 7.14.4 7.15 7.15.1 7.15.2 7.15.3 7.15.4 7.15.5 Généralités...................................................................................................................................... 373 SCL............................................................................................................................................... 373 Données système............................................................................................................................... 374 Données système de types simples................................................................................................ 374 MCA.............................................................................................................................................. 374 NCF.............................................................................................................................................. 375 SCS.............................................................................................................................................. 376 SCSL............................................................................................................................................ 377 SD................................................................................................................................................. 378 SDR ............................................................................................................................................. 385 Données système de types structurés............................................................................................ 387 Généralités................................................................................................................................... 387 Accès aux données système........................................................................................................ 387 SDSAVE....................................................................................................................................... 388 SDLOAD....................................................................................................................................... 389 Adresse d'axe variable....................................................................................................................... 390 Généralités...................................................................................................................................... 390 AXP.............................................................................................................................................. 390 Interface API....................................................................................................................................... 391 Généralités...................................................................................................................................... 391 BITIF............................................................................................................................................. 391 PLC............................................................................................................................................... 392 Saisie du temps.................................................................................................................................. 393 Généralités...................................................................................................................................... 393 CLOCK......................................................................................................................................... 393 DATE............................................................................................................................................ 393 TIME............................................................................................................................................. 394 Erreurs et catégories d'erreur............................................................................................................. 394 Généralités...................................................................................................................................... 394 GETERR....................................................................................................................................... 394 Couplage NCS.................................................................................................................................... 397 Généralités...................................................................................................................................... 397 Valeurs de retour d'erreur possibles pour les fonctions................................................................... 397 Fonctions disponibles...................................................................................................................... 398 MCODS........................................................................................................................................ 398 MCOPS........................................................................................................................................ 428 Exemples de programmation........................................................................................................... 436 Traitement des chaînes de caractères............................................................................................... 438 Généralités...................................................................................................................................... 438 Dimensionnement des chaînes de caractères................................................................................ 438 DIM............................................................................................................................................... 438 Lire les caractères dans une chaîne de caractères......................................................................... 439 MID$............................................................................................................................................. 439 Modification des chaînes de caractères.......................................................................................... 439 MID$............................................................................................................................................. 439 Longueur d'une chaîne de caractères............................................................................................. 440 XX/XXI Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Table des matières Page 7.15.6 7.15.7 7.15.8 7.15.9 7.15.10 7.15.11 7.15.12 7.16 7.16.1 7.16.2 7.16.3 7.16.4 7.16.5 7.16.6 7.16.7 7.16.8 7.16.9 7.16.10 7.16.11 7.16.12 7.16.13 7.16.14 LEN............................................................................................................................................... 440 Recherche d'une chaîne de caractères........................................................................................... 441 INSTR........................................................................................................................................... 441 Chaînes de caractères et nombres................................................................................................. 441 ASC.............................................................................................................................................. 441 CHR$............................................................................................................................................ 441 STR$............................................................................................................................................ 442 VAL............................................................................................................................................... 442 Suppression d'espaces de tête ou de queue................................................................................... 443 TRIM$........................................................................................................................................... 443 Exemples de programmation........................................................................................................... 444 Affectation d'une expression STRING à un tableau........................................................................ 446 Comparaisons des expressions STRING........................................................................................ 447 Enchaînement des expressions STRING........................................................................................ 448 Traitement de données....................................................................................................................... 451 Explication....................................................................................................................................... 451 Noms de fichier................................................................................................................................ 451 Structure de fichier séquentielle...................................................................................................... 452 Structure de fichier aléatoire............................................................................................................ 452 Ouverture d'un fichier...................................................................................................................... 452 Généralités................................................................................................................................... 452 OPENW, OPENR......................................................................................................................... 452 FILENO......................................................................................................................................... 455 DIRINF.......................................................................................................................................... 455 DIRCR.......................................................................................................................................... 456 DIRDEL........................................................................................................................................ 456 Écriture d'un fichier.......................................................................................................................... 456 LJUST, NJUST............................................................................................................................. 456 PRN#............................................................................................................................................ 457 REWRITE..................................................................................................................................... 459 Lecture d'un fichier.......................................................................................................................... 460 INP#.............................................................................................................................................. 460 Reconnaître la fin du fichier............................................................................................................. 461 EOF.............................................................................................................................................. 461 Fermeture d'un fichier...................................................................................................................... 462 CLOSE......................................................................................................................................... 462 Lire la position du pointeur du fichier............................................................................................... 463 FILEPOS...................................................................................................................................... 463 Positionner le pointeur du fichier..................................................................................................... 465 SEEK............................................................................................................................................ 465 Déterminer la taille du fichier........................................................................................................... 466 FILESIZE...................................................................................................................................... 466 Supprimer le fichier.......................................................................................................................... 468 ERASE......................................................................................................................................... 468 Déterminer les droits d'accès du fichier........................................................................................... 469 FILEACCESS............................................................................................................................... 469 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls XXI/XXI Table des matières Page 7.16.15 7.16.16 7.16.17 8 8.1 8.1.1 8.1.2 8.2 8.3 9 9.1 9.2 9.3 9.4 Déterminer la date du fichier........................................................................................................... 469 FILEDATE.................................................................................................................................... 469 Copier le fichier................................................................................................................................ 470 Communikation................................................................................................................................ 471 MMC............................................................................................................................................. 471 Annexe....................................................................................................................... 473 Tableau synoptique des fonctions CN................................................................................................ 473 Classées par ordre alphanumérique selon le format long............................................................... 473 Classées par ordre alphanumérique selon le groupe...................................................................... 501 Jeu de caractères ASCII..................................................................................................................... 531 Codes de touches supplémentaires................................................................................................... 534 Aide et support........................................................................................................... 537 Centre d'assistance............................................................................................................................ 537 Service-Hotline................................................................................................................................... 537 Internet................................................................................................................................................ 537 Préparation des informations ............................................................................................................. 537 Index.......................................................................................................................... 539 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 1/550 Consignes d'utilisation importantes 1 Consignes d'utilisation importantes 1.1 Conformité d'utilisation 1.1.1 Introduction Les produits Rexroth sont conçus et fabriqués conformément aux règles de l'art et de la technique respectivement applicables. Avant d'être livrés, ils sont sou‐ mis à un contrôle permettant de garantir leur fonctionnement en toute sécurité. Un emploi incorrect des produits, c'est-à-dire tout emploi non conforme à leur destination est proscrit. Toute utilisation non conforme est synonyme de risques de dommages matériels et lésions corporelles. En tant que producteur, la société Bosch Rexroth décline toute res‐ ponsabilité en cas de dommages résultant d'un emploi incorrect des produits. Ceci signifie que toute garantie ou revendication de dom‐ mages-intérêts sera exclue en cas d'emploi incorrect des produits. Dans un tel cas, l'utilisateur sera seul responsable des risques en‐ courus. Avant d'utiliser les produits de la Société Bosch Rexroth, il est indispensable de veiller à ce que les conditions suivantes soient remplies afin de garantir un emploi correct des produits. 1.1.2 ● Toute personne amenée à manipuler d'une manière quelconque l'un de nos produits, doit avoir lu et compris les consignes de sécurité et le mode d'emploi correct correspondant. ● S'il s'agit de matériel informatique, les produits en question ne doivent pas avoir été modifiés par une mesure constructive quelconque. Les logiciels ne doivent pas avoir été décompilés et leurs codes sources ne doivent pas avoir été modifiés. ● Ne jamais installer ou mettre en service des produits endommagés ou défectueux. ● L'installation des produits conformément aux stipulations de la documen‐ tation doit être garantie. Domaine d'application et de mise en oeuvre La CN Rexroth IndraMotion MTX sert à ● la programmation de technologies de contour et d’usinage (avance de trajectoire, vitesse de rotation de la broche, changement d’outil) d’une pièce à usiner. ● Le guidage d’un outil d’usinage sur une trajectoire programmée. Les entraînements d’avance, les broches et les axes auxiliaires d’une machine outil sont commandés via l’interface SERCOS. En supplément, des composantes E/S sont nécessaires pour l’API intégré qui commande – en communication avec la CN – l’ensemble du processus d’usinage de la machine et qui en contrôle la sécurité. Une utilisation des appareils n'est permise qu'avec les configura‐ tions et combinaisons de composants expressément indiquées et uniquement avec les logiciels et firmwares spécifiés et indiqués dans la description fonctionnelle respective 2/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Consignes d'utilisation importantes Le système Rexroth IndraMotion MTX a été développé pour applications de commande dans des installations multi-axiales. Les domaines d'application types sont les suivants: ● Tours ● Fraiseuses ● Centres d'usinage 1.2 Emploi non conforme L'utilisation de la CN Rexroth IndraMotion MTX en dehors des domaines d'ap‐ plication énumérés précédemment ou dans d'autres conditions de service et avec d'autres données techniques que celles indiquées dans la documentation correspondante est considérée comme incorrecte, c'est-à-dire "non conforme à la destination" prévue. La CN Rexroth IndraMotion MTX ne doit pas être utilisée si: ... ● les conditions de service auxquelles elle va être exposée ne correspon‐ dent pas aux conditions ambiantes spécifiées. Il est, par exemple, abso‐ lument interdit de l' utiliser sous l'eau, sous des températures susceptibles de très fortes fluctuations ou encore sous des températures maximales extrêmes. ● Par ailleurs, il est absolument interdit d'utiliser la CN Rexroth IndraMotion MTX pour des applications qui n'ont pas été expressément autorisées par Bosch Rexroth. Respecter toujours dans ce contexte, les informations données sous le chapitre Consignes de sécurité générales. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 3/550 CONSIGNES de SÉCURITÉ pour ENTRAÎNEMENTS ÉLECTRIQUES et COMMANDES 2 CONSIGNES de SÉCURITÉ pour ENTRAÎNEMENTS ÉLECTRIQUES et COMMANDES 2.1 CONSIGNES DE SÉCURITÉ - GÉNÉRALITÉS 2.1.1 APPLICATION et TRANSMISSION des CONSIGNES de SÉCURITÉ N'essayez pas d’installer ou de mettre cet appareil en service avant d'avoir lu avec soin toute la documentation fournie. Les présentes consignes de sécurité et toutes les instructions d'utilisation doivent être lues avant toute utilisation de l'appareil. Si vous n’avez pas reçu les instructions d'utilisation applicables pour le présent appareil, veuillez vous adresser au représentant Bosch Rexroth compétent pour votre région. Demandez l'expédition immédiate de ces docu‐ ments aux responsables de la sécurité de fonctionnement de cet appareil. Les consignes de sécurité doivent toujours être transmises avec l'appareil dans la langue nationale de l'utilisateur, en cas de vente, de location et/ou de trans‐ fert quelconque à des tiers. AVERTISSEMENT La manipulation incorrecte de ces appareils et le non-respect des aver‐ tissements donnés ici ainsi que toute intervention inappropriée au ni‐ veau des équipements de sécurité peuvent entraîner des dommages matériels, des blessures corporelles, des électrocutions, voire causer la mort, en cas extrêmes. Respectez les consignes de sécurité! 2.1.2 CONSEILS pour L'APPLICATION des CONSIGNES de SÉCURITÉ Lisez les consignes suivants avant la première mise en service de l'appareil pour pouvoir éviter des blessures corporelles et/ou dommages matériels. Vous êtes à tout moment obligé de respecter ces consignes de sécurité. ● La société Bosch Rexroth AG décline toute responsabilité en cas de dom‐ mages causés par un non respect des consignes décrites dans ce manuel. ● Avant toute mise en service du matériel, lire intégralement les instructions de service ainsi que les consignes de maintenance et de sécurité. Si, pour des raisons linguistiques, vous ne comprenez pas la documentation qui vous a été fournie, adressez-vous à votre fournisseur afin qu'il vous pro‐ cure une documentation dans votre propre langue. ● Un fonctionnement en toute sécurité et sans défaillance de cet appareil requiert un transport, stockage, montage et une installation appropriés et dans les règles de l’art ainsi qu'une exploitation correcte et une mainte‐ nance minutieuse. ● Toute intervention sur les installations électriques doit être effectuée par du personnel formé et qualifié: – Seul le personnel compétent formé et qualifié est autorisé à travailler sur ce matériel/appareil ou à proximité de celui-ci. Le personnel est qualifié lorsque le montage, l’installation et l’exploitation du produit ainsi que toutes les mesures de prévention et de sécurité lui sont parfaitement familières. – Ce personnel doit, en outre, disposer de la formation nécessaire et avoir reçu les instructions correspondantes qui l'habilite à mettre sous et hors tension des circuits électriques et des appareils, à les mettre à la terre et à les caractériser correctement et conformément 4/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application CONSIGNES de SÉCURITÉ pour ENTRAÎNEMENTS ÉLECTRIQUES et COMMANDES aux prescriptions de travail. Le personnel doit être en possession d’un équipement de sécurité approprié et avoir reçu une formation de secourisme. ● N’utilisez que les pièces de rechange et accessoires autorisés par le constructeur. ● Respectez les consignes et prescriptions de sécurité en vigueur dans le pays d'utilisation de l’appareil. ● Les appareils ont été conçus pour être intégrés dans des installations uti‐ lisées dans l’industrie. ● Les conditions ambiantes indiquées dans la documentation sur le produit doivent être respectées. ● Toute application importante en matière de sécurité et qui n'est pas ex‐ pressément et clairement mentionnée dans les documents du projet est proscrite. Si elle n'est pas mentionnée, elle est exclue. Toute application pouvant représenter un risque de blessures corporelles et causer des dommages matériels est importante en matière de sécurité. ● Les renseignements qui sont fournis dans la documentation sur le produit en relation avec l'utilisation des composants livrés ne sont que des exem‐ ples ou propositions d'application. Le constructeur de machines et réalisateur d'installations doit pour chaque cas d'application précis vérifier la convenance – des composants livrés et des renseignements fournis dans cette do‐ cumentation pour leur utilisation – adapter ces indications en fonction des règlements de sécurité et normes applicables pour son propre cas d'application et prendre toutes les mesures nécessaires dans ce contexte, en effectuant les modifications et compléments nécessaires. ● Toute mise en service des composants livrés est interdite tant qu’il n’a pas été constaté que la machine ou l'installation dans laquelle les produits sont intégrés, satisfait en tout point aux dispositions nationales, règlements de sécurité et normes pour l’application prévue. ● L'exploitation des produits n’est permise que si les prescriptions CEM (compatibilité électromagnétique) se rapportant au cas d'application prévu sont respectées. ● Les instructions pour une installation conforme aux normes en matière de compatibilité électromagnétique sont contenues dans la documentation correspondante (planification des composants et pour le système). Le constructeur de l'installation ou de la machine assume la responsabilité du respect des limites imposées par les prescriptions nationales. ● Les données techniques, les conditions de raccordement et d’installation sont exposées dans la documentation sur le produit et doivent impérati‐ vement être respectées. DISPOSITIONS NATIONALES à RESPECTER par L'UTILISATEUR ● Pays européens: conformément aux normes européennes EN ● Etats-Unis d'Amérique (USA): – Prescriptions nationales pour appareillage électrique (NEC) – Association nationale des constructeurs d’installations électriques (NEMA) et prescriptions régionales. – Prescriptions de la National Fire Protection Association (NFPA) ● Canada: Canadian Standards Association (CSA) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 5/550 CONSIGNES de SÉCURITÉ pour ENTRAÎNEMENTS ÉLECTRIQUES et COMMANDES ● 2.1.3 Autres pays: – International Organization for Standardization (ISO) – International Electrotechnical Commission (IEC) EXPLICATION des SYMBOLES D'AVERTISSEMENT et CLASSE de RISQUE Les consignes de sécurité décrivent les classes de risque suivantes. Chaque classe de risque décrit le risque encouru en cas de non-respect de la consigne de sécurité Symbole d'avertissement Mot signal Fig.2-1: 2.1.4 Classe de risque selon ANSI Z 535.4-2002 Danger Danger de mort ou de bles‐ sure grave. Avertissement Danger de mort ou de bles‐ sure grave possible. Attention Blessure moyenne ou légère ou dégats matériels possi‐ bles. Classes de risque (selon ANSI Z 535) DANGERS dus à une UTILISATION INCORRECTE Haute tension et courant de travail élevé ! Danger de mort ou de bles‐ sures graves par électrocution! DANGER Respectez les consignes de sécurité! Mouvements entraînant une situation dangereuse! Danger de mort ou de blessure grave ou de dommages matériels importants à la suite de mouvements accidentels des moteurs! DANGER Respectez les consignes de sécurité! Tensions électriques élevées dues à un raccordement incorrect! Danger de mort ou de blessure grave par électrocution! AVERTISSEMENT Respectez les consignes de sécurité! Danger pour la santé des personnes porteuses de stimulateurs cardia‐ ques, d’implants métalliques et d’appareils auditifs se trouvant dans l’entourage immédiat d’installations électriques! AVERTISSEMENT Respectez les consignes de sécurité! 6/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application CONSIGNES de SÉCURITÉ pour ENTRAÎNEMENTS ÉLECTRIQUES et COMMANDES La surface de la carcasse des appareils peut être éventuellement très chaude! Risque de blessure! Risque de brûlure! ATTENTION Respectez les consignes de sécurité! Risque de blessure en cas de manipulation incorrecte! Risque de bles‐ sure par écrasement, cisaillement, coupure, choc ou manipulation in‐ correcte de conduites sous pression! ATTENTION Respectez les consignes de sécurité! Risques de blessure en cas de manipulation incorrecte des batteries! Respectez les consignes de sécurité! ATTENTION 2.2 CONSEILS se RÉFÉRANT aux DANGERS 2.2.1 PROTECTION contre un CONTACT avec des PIÈCES ÉLECTRIQUES et BOÎTIERS Le présent paragraphe ne se rapporte qu’aux appareils et compo‐ sants d'entraînement avec des tensions supérieures à 50 volts. Le contact avec des pièces sous une tension supérieure à 50 volts peut repré‐ senter un danger pour les personnes et entraîner une électrocution. Certaines pièces de cet appareil sont, lors de son utilisation, inévitablement soumises à des tensions dangereuses. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 7/550 CONSIGNES de SÉCURITÉ pour ENTRAÎNEMENTS ÉLECTRIQUES et COMMANDES Tensions électriques élevées! Danger de mort ou de blessures graves par électrocution ou risque de graves lésions corporelles! DANGER ● L'utilisation, la maintenance et/ou la réparation du présent appareil ne doivent être effectuées que par un personnel formé et qualifié pour le tra‐ vail sur ou avec des appareils électriques. ● Respecter les directives et consignes de sécurité générales relatives au travail sur équipements à courant fort. ● Avant la mise sous tension, vérifiez que le conducteur de protection est raccordé de manière permanente à tous les appareils électriques confor‐ mément au schéma de raccordement. ● Une exploitation, même de courte durée à des fins de mesure ou de test, n'est autorisée que si un raccordement correct et fixe du conducteur de protection aux points prévus des composants a été effectué. ● Avant d'intervenir sur des pièces sous tension supérieure à 50 volts, tou‐ jours isoler l'appareil du réseau ou de la source d'alimentation. Verrouiller l’appareil contre une remise sous tension involontaire. ● Pour les pièces électriques d'entraînement et de filtres, tenir compte des points suivants: Après la mise hors tension, attendre d'abord 30 minutes (temps de dé‐ charge des condensateurs) avant d’intervenir sur l’appareil. Mesurer la tension aux bornes des condensateurs avant de commencer à travailler, afin d’éviter tout danger dû à un contact. ● Ne pas toucher les points de raccordement des composants lorsqu'ils sont sous tension. Ne pas enlever ou enficher la fiche lorsque l'appareil est sous tension. ● Avant la mise sous tension, mettre en place les capots et dispositifs de protection prévus pour la protection contre les contacts. Avant la mise sous tension, couvrir et protéger correctement les pièces sous tension pour éviter tout contact. ● Un disjoncteur différentiel (dispositif de protection contre les courants de défaut) ou RCD ne peut pas être utilisé pour les entraînements électri‐ ques! La protection contre un contact indirect doit être assurée d’une autre manière, par exemple, par le biais d'un dispositif contre les surintensités conformément aux normes en vigueur. ● Pour les appareils à intégrer, la protection contre un contact direct avec des pièces sous tension doit être assurée par une enveloppe (carcasse) externe, telle qu'une armoire électrique par exemple. Pour les pièces électriques d'entraînement et de filtre présentant des tensions supérieures à 50 volts, tenez également compte des remarques sur les risques suivants. 8/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application CONSIGNES de SÉCURITÉ pour ENTRAÎNEMENTS ÉLECTRIQUES et COMMANDES Tensions électriques élevées sur les boîtiers/carcasses et courant de fuite élevé! Danger de mort ou de blessures par électrocution! DANGER 2.2.2 ● Avant la mise sous tension, raccorder l'équipement électrique ainsi que la carcasse de tous les appareils électriques et moteurs aux points de terre avec le conducteur de protection ou bien les mettre directement à la terre. Même en cas de tests de courte durée. ● Le conducteur de protection des appareils et de l'équipement électrique doit toujours être raccordé de façon permanente au réseau d'alimentation. Le courant de fuite est supérieur à 3,5 mA. ● Pour ce raccordement, utiliser un conducteur en cuivre présentant une section d’au moins 10 mm 2 sur toute sa longueur! ● Avant la mise en service, même à des fins de test, toujours raccorder le conducteur de protection ou bien raccorder l'installation à la terre. Dans le cas contraire, des tensions élevées peuvent apparaître sur la carcasse de l’appareil avec risque d'électrocution. PROTECTION contre les RISQUES D'ELECTROCUTION par ALI‐ MENTATION EN TRES BASSE TENSION DE SECURITE L'alimentation en très basse tension de sécurité permet de raccorder des ap‐ pareils à isolation simple aux circuits de très basse tension. Toutes les connexions et bornes des produits Rexroth conçues pour des ten‐ sions de 5 à 50 volts, sont conçus en alimentation protégée tension faible sécurité selon TBTS1) . Pour cette raison, il est possible d'y raccorder des ap‐ pareils équipés d'une isolation simple (comme par exemple les appareils de programmation, ordinateurs, ordinateurs portables, modules d'affichage). Tensions électriques élevées dues à un raccordement incorrect! Danger de mort ou de blessures par électrocution! AVERTISSEMENT 2.2.3 Si des circuits de très basse tension d’appareils comprenant également des tensions et circuits électriques supérieurs à 50 volts (p.ex. le raccordement au réseau) sont raccordés aux produits Rexroth, les circuits de faible tension rac‐ cordés doivent remplir les exigences de TBTS2) . PROTECTION contre les MOUVEMENTS DANGEREUX Des mouvements dangereux peuvent être engendrés par une défaillance de la commande des moteurs raccordés. Une défaillance de commande peut s'ex‐ pliquer de différentes façons: ● Filerie ou câblage en mauvais état ou incorrect ● Erreurs lors de l'utilisation de composants ● Paramétrage erroné avant la mise en service ● Erreurs au niveau des capteurs, codeurs et dispositifs de surveillance ● Composants défectueux ● Défaut logiciel 1) "Très Basse Tension de Sécurité" 2) "Très Basse Tension de Sécurité" Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 9/550 CONSIGNES de SÉCURITÉ pour ENTRAÎNEMENTS ÉLECTRIQUES et COMMANDES Ces défaillances peuvent survenir immédiatement après la mise en service ou après un certain temps d'utilisation. Les dispositifs de surveillance intégrés dans les composants d'entraînement permettent d'exclure une grande partie des défaillances d’entraînements. Tou‐ tefois, ces dispositifs ne suffisent pas à eux seuls pour assurer une protection individuelle absolue, en particulier, contre les risques de blessures et de dom‐ mages matériels. Compte tenu du temps de réponse des dispositifs de sur‐ veillance intégrés, il faut, jusqu'à entrée en action des dispositifs de surveillance, toujours envisager un mouvement d'entraînement incontrôlé dont l'ampleur dépend de la commande et de l'état de fonctionnement. 10/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application CONSIGNES de SÉCURITÉ pour ENTRAÎNEMENTS ÉLECTRIQUES et COMMANDES Mouvements entraînant une situation dangereuse! Danger de mort, ris‐ ques d'accidents et de blessures graves ou dommages matériels im‐ portants! DANGER ● La sécurité des personnes doit être garantie par des dispositifs de sur‐ veillance ou des mesures de niveau supérieur intégrées à l’installation. Ces surveillances et mesures sont déterminées par le constructeur de l'installation, après analyse des risques et défaillances possibles spécifi‐ ques à l'installation. Les prescriptions de sécurité en vigueur pour l'instal‐ lation en question y sont également prises en compte. La déconnexion, le contournement ou la mauvaise activation des dispositifs de sécurité peuvent être cause de mouvements incontrôlés de la machine ou d'autres défaillances. Pour éviter les accidents, blessures corporelles et/ou dommages matériels: ● Ne jamais rester dans les zones de mouvement de la machine et/ou des éléments de la machine. Mesures possibles contre un accès involontaire de personnes dans ces zones dangereuses: – Barrière de protection – Grille de protection – Capots de protection – Barrières immatérielles (photo-électrique,…) ● Prévoir des barrières et capots de protection d’une solidité suffisante, afin de garantir leur résistance à l’énergie cinétique maximale possible. ● Installer l'arrêt d’urgence de façon telle qu'il soit facilement accessible et à proximité immédiate. Contrôler le fonctionnement de l'arrêt d’urgence avant la mise en service des équipements. Ne pas utiliser l'appareil en cas de panne de l'arrêt d'urgence. ● Prévoir un verrouillage contre une mise en marche involontaire par dé‐ connexion de la puissance des entraînements par la chaîne d'arrêt d'ur‐ gence ou bien utilisez un dispositif d'anti-démarrage. ● Avant toute intervention ou accès dans la zone de danger, s'assurer de l'arrêt préalable de tous les entraînements . ● Verrouiller en outre les axes verticaux afin d'éviter leur chute ou abaisse‐ ment après arrêt du moteur, par exemple via: – verrouillage mécanique des axes verticaux, – dispositifs de freinage, piégeage, serrage ou – un équilibre suffisant du poids des axes ● La seule utilisation du frein moteur standard ou d'un frein d'arrêt externe commandé par le variateur n'est pas en mesure de garantir la protection des personnes! ● Mettre l'équipement électrique hors tension avec l’interrupteur principal en verrouillant de façon à éviter tout ré-enclenchement accidentel, lors de: ● – travaux de maintenance et de réparation – travaux de nettoyage – longues interruptions de service Eviter l'utilisation d'appareils à haute fréquence, de télécommandes et d’appareils radio à proximité de l'électronique de commande et de ses raccordements. Si l'utilisation de ces appareils est inévitable, contrôler le système et l’installation quant aux défaillances possibles dans tous les cas de figure, avant la première mise en service. Au besoin, effectuer un contrôle de compatibilité électromagnétique (CEM) de l'installation. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 11/550 CONSIGNES de SÉCURITÉ pour ENTRAÎNEMENTS ÉLECTRIQUES et COMMANDES 2.2.4 PROTECTION contre les CHAMPS MAGNÉTIQUES et ELECTROMA‐ GNÉTIQUES lors du SERVICE et du MONTAGE Les champs magnétiques et électromagnétiques émanant des conducteurs électriques et des aimants permanents du moteur peuvent représenter un sé‐ rieux danger pour les personnes portant un stimulateur cardiaque, des implants métalliques et des appareils auditifs. Danger pour la santé des personnes porteuses de stimulateurs cardia‐ ques, d’implants métalliques et d’appareils auditifs se trouvant dans l’entourage immédiat d’installations électriques! AVERTISSEMENT 2.2.5 ● L'accès aux zones suivantes est interdit à toute personne portant un sti‐ mulateur cardiaque et/ou un implant métallique: – zones de montage, d'exploitation ou de mise en service d'appareils et composants électriques. – zones de stockage, de réparation ou de montage de parties de mo‐ teur équipées d'aimants permanents. ● Si une personne portant un stimulateur cardiaque doit absolument accé‐ der à de telles zones, l'autorisation préalable d'un médecin s’impose. La sensibilité aux perturbations des stimulateurs cardiaques étant très va‐ riable, il est impossible d'établir une règle générale en la matière. ● Les personnes portant des implants métalliques ou un appareil auditif doivent consulter un médecin avant d'accéder aux zones susmention‐ nées, vu les risques de préjudice pour la santé. PROTECTION contre les CONTACTS avec des PIECES à TEMPÉ‐ RATURES ÉLEVÉES La surface de la carcasse du moteur, des dispositifs d'entraînement ou des bobines de réactance peut être chaude! Risque de blessure! Risque de brûlure! ATTENTION ● Ne pas toucher la surface des carcasses de l'appareil et des bobines de réactance se trouvant à proximité de sources de chaleur! Risque de brû‐ lure! ● Ne pas toucher la surface des carcasses des moteurs! Risque de brûlure! ● Pendant ou après l'exploitation de l'appareil, les températures peuvent être supérieures à 60°C, 140°F, en fonction des conditions de service. ● Laissez refroidir les moteurs suffisamment après leur déconnexion avant toute intervention. Le temps de refroidissement peut durer jusqu’à 140 minutes ! Le temps de refroidissement nécessaire est environ cinq fois plus élevé que la constante de temps thermique indiquée dans les don‐ nées techniques. ● Après leur déconnexion, refroidir les appareils d'entraînement ou bobines de réactance pendant 15 minutes avant toute intervention. ● Portez des gants de protection ou n'effectuez pas de travaux sur des sur‐ faces chaudes. ● Pour certaines applications, le fabricant doit prendre des mesures sur le produit fini, dans la machine ou dans l'installation selon les prescriptions de sécurité pour éviter des blessures dues aux brûlures. Les mesures à prendre sont entre autres: Avertissements, dispositif de protection (pro‐ tecteur fixe ou mobile), documentation technique. 12/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application CONSIGNES de SÉCURITÉ pour ENTRAÎNEMENTS ÉLECTRIQUES et COMMANDES 2.2.6 PROTECTION lors de la MANUTENTION et du MONTAGE La manipulation et le montage incorrects de certains composants d'entraîne‐ ment peuvent, sous conditions défavorables, être à l'origine de blessures. Risque de blessure en cas de manipulation incorrecte! Blessure par écrasement, cisaillement, coupure, et chocs! ATTENTION 2.2.7 ● Respecter les consignes et directives de sécurité générales lors de la manutention et du montage. ● Utiliser des dispositifs de montage et de levage adaptés. ● Prendre les mesures nécessaires pour éviter les risques de pincement et d'écrasement. ● N'utiliser que des outils appropriés. Si prescrit, utiliser des outils spécifi‐ ques. ● Utiliser des systèmes de levage et outils conformes aux exigences et rè‐ gles techniques. ● Si nécessaire, utilisez des équipements de protection appropriés (comme par exemple lunettes de protection, chaussures de sécurité, gants de pro‐ tection). ● Ne pas stationner sous les charges suspendues. ● Essuyer ou éliminer immédiatement tout liquide répandu sur le sol pour éviter tout risque de glissade. MESURES de SÉCURITÉ lors de la MANIPULATION de BATTERIES Les batteries et piles contiennent des substances chimiques agressives. Une manipulation incorrecte est donc susceptible d’entraîner des blessures ou des dommages matériels. Risque de blessure en cas de manipulation incorrecte! ● Ne pas essayer de réactiver une batterie vide par échauffement ou de toute autre façon. (Risque d’explosion ou de blessures par projection d’acide ). ● Ne pas recharger les piles étant donné qu’elles risquent de couler ou d’exploser. ● Ne pas jeter de batteries/piles dans au feu. ● Ne pas jeter de batteries/piles au feu. ● Ne pas endommager les composants électriques dans les appareils lors du changement de la/des batterie(s)/pile(s). ● N'insérer que les types de batterie/piles prescrits par le fabricant. ATTENTION Protection de l'environnement et élimination des déchets! Les bat‐ teries contenues dans les appareils sont, selon les prescriptions réglementaires, considérées comme produit dangereux en matière de transport routier, aérien, et maritime (risque d'explosion). Sépa‐ rer les batteries/piles usagées des autres déchets. Respecter les dispositions nationales en vigueur dans le pays d'installation. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 13/550 CONSIGNES de SÉCURITÉ pour ENTRAÎNEMENTS ÉLECTRIQUES et COMMANDES 2.2.8 PROTECTION contre les risques liés aux CONDUITES sous PRES‐ SION Les moteurs à refroidissement liquide ou par air comprimé ainsi que les varia‐ teurs peuvent, en fonction des indications fournies dans les guides de projet, être partiellement alimentés par des milieux externes sous pression, tels que par exemple de l’air comprimé, de l’huile hydraulique, des liquides de refroi‐ dissement ou des liquides d’arrosage. L'utilisation incorrecte des systèmes connectés, des conduites d'alimentation et des raccords est source de risques de blessures et/ou de dommages matériels. Risque de blessure en cas de manipulation incorrecte de conduites sous pression! ATTENTION ● Ne jamais essayer de sectionner, d'ouvrir ou de raccourcir des conduites sous pression (risque d'explosion) ● Respecter les instructions de service du constructeur respectif. ● Toujours vidanger les conduites de leur pression ou du milieu qu’elles contiennent avant de les démonter. ● Si nécessaire, utilisez des équipements de protection appropriés (comme par exemple lunettes de protection, chaussures de sécurité, gants de sé‐ curité). ● Essuyer immédiatement tout liquide répandu sur le sol. Protection de l'environnement et élimination des déchets! Le cas échéant, les milieux utilisés avec les produits peuvent être pollu‐ ants. Séparer les substances nocives pour l’environnement des autres déchets. Respecter les dispositions nationales en vigueur dans le pays d'installation. Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 15/550 Fondements de la programmation CN 3 Fondements de la programmation CN 3.1 Introduction Une commande numérique (CN) reçoit toutes les informations nécessaires à l'usinage d'une pièce sur une machine-outil à partir d'un programme CN (pro‐ gramme pièce). La structure d'un tel programme CN est variable si bien qu'il est possible d'usi‐ ner n'importe quel type de pièce avec des technologies les plus diverses (fraisage, tournage, rectification,etc..). Le programme pièce contient les infor‐ mations de déplacement qui décrivent la trajectoire de l'outil par rapport à la pièce mais aussi les informations relatives à la technologie. L'information de déplacement est décomposée en éléments de contour simples (droites, cercles, spirales, splines, nurbs, etc...). La commande peut alors exécuter les mouvements pour un tel élément dans le cadre d'une seule étape de traitement, si toutes les étapes de traitement sont fixées dans l'ordre correct et avec toutes les conditions secondaires nécessai‐ res dans le programme CN. Les conditions secondaires nécessaires se com‐ posent entre autres des fonctions technologiques (vitesses, vitesses de rotation, etc.) et des fonctions auxiliaires des machines (par ex. pour le réfri‐ gérant, blocage d'axe). Les directives fondamentales sur la structure d'un programme CN se trouvent dans la DIN 66025. Le contenu de la DIN 66025 "Structure de programme pour machi‐ nes à commande numérique" (Parties 1 et 2) correspond à celui des normes internationales : ISO/DIS 6983 et ISO/DP 6983 "Nu‐ merical control of machines". La CN Indramotion MTX gère les programmes CN dans son "système de fi‐ chiers". Il est en outre possible de connecter des lecteurs externes et de faire dérouler des programmes directement à partir de ces derniers. De plus amples informations relatives au système de fichiers et aux droits d'ac‐ cès ainsi que les informations relatives à la création et l'édition des programmes pièce sont données dans le mode d'emploi de la MTX. Tout programme CN a un nom du programme CN devant répondre aux con‐ ventions générales applicables au noms des fichiers. Les noms des programmes CN, y compris les extensions des noms de fichiers, ne doivent pas dépasser une longueur maximale de 28 caractères. Les carac‐ tères admissibles sont toutes les lettres, les chiffres ainsi que les caractères spéciaux "." et "_". ● L'extension du nom de fichier que la MTX utilise par défaut pour un pro‐ gramme CN s'appelle ".npg". ● En interne, aucune différence n'est faite entre le nom de fichier et l'exten‐ sion du nom de fichier. ● Il est généralement distingué entre minuscules et majuscules. ● Les désignateurs "." et ".." ne sont pas admissibles en tant que noms de fichier. ● Au sein d'un répertoire, les noms de fichier doivent être univoques. Il est cependant possible que, dans des répertoires différents, deux fichiers portent le même nom. 16/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN ● Dans certains cas exceptionnels (dans la mesure où le programme con‐ cerné n'est jamais lié), il est également possible d'utiliser des noms de fichiers ayant jusqu'à 30 caractères. 3.2 Principes fondamentaux concernant la programmation stan‐ dard et CPL 3.2.1 Possibilités de programmation La commande offre deux possibilités de programmation : ● Programmation standard ou Programmation DIN ● Programmation CPL (CPL : Customer Programming Language). À l'aide de la programmation standard ou DIN, vous décrivez les séquences de mouvement et leurs conditions secondaires (géométrie, cinématique, dynami‐ que, corrections, etc.). La programmation standard représente un pur langage d'ordres pour la commande de mouvements sur la machine et pour le pilotage des fonctions de machine spécifiques. La syntaxe de l'IndraMotion MTX se compose d'ordres qui sont déterminés dans la norme DIN 66025 (codes G et M) ainsi que d'extensions essentielles dans le domaine des codes G et des éléments de syntaxe supplémentaires similaires au langage standard. Les éléments de base de la programmation standard sont les fonctions dites CN auxquelles est affecté à chaque fois une syntaxe de programmation. Il est possible d'affecter des paramètres supplémentaires à une fonction CN à partir desquelles la fonction est paramétrée. Exemple : Fonction CN : G2 interpolation circulaire anti‐ trigonométrique Paramètre : I, J, K, R coordonnées du centre, rayon La programmation CPL (Customer Programming Language) s'oriente sur le standard du BASIC, mais elle contient également des éléments de structure similaires à Pascal. De ce fait, elle s'apprend facilement. CPL est un véritable langage de programmation et de ce fait représente une extension des possibilités de programmation. Il comprend des éléments de programme se trouvant en dehors du centre de la commande de la machine, des fonctions spéciales de système rendant possible l'accès aux données sys‐ tème de la commande. La programmation CPL offre les possibilités suivantes : ● Programmation symbolique avec des variables ● Traitement des chaînes de caractères ● Traitement de fichier ● Opérateurs mathématiques : +, -, *, /, ● Opérateurs de comparaison : =, <, >, ... ● Liaisons logiques : NOT, AND, OR, ... ● Structures de contrôle pour la commande du déroulement de programme : et fonctions trigonométriques, ... REPEAT, WHILE, FOR, IF, CASE, GOTO, ... Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 17/550 Fondements de la programmation CN ● Fonctions de système pour la détermination d'états internes du système : positions, fonctions actives, données d'outil, signaux d'interface, ... ● Services de processus : sélection du programme, remise à zéro, lance‐ ment du programme, définition du mode de fonctionnement Il est ainsi possible de créer et d'enregistrer des déroulements de traitement quelconques avec une écriture variable. Les instructions CPL sont, généralement, écrites en lettres capitales en consi‐ dération des définitions formelles. L'utilisation de CPL mène aux : ● programmes CN plus courts en cas de répétitions et de parties de pro‐ gramme de la même nature ● variantes de programmes dépendant de l'état par l'accès aux états de système de la commande. Une différence essentielle entre la programmation standard et la programma‐ tion CPL consiste dans le fait que toutes les parties CPL sont supprimées déjà au moment de la préparation de bloc, dès la lecture de la ligne de programme correspondante. Pour le traitement ultérieur du bloc et au moment de l'inter‐ polation du bloc CN, les parties CPL n'existent donc plus. 3.2.2 Caractérisation des éléments CPL au sein d'un programme pièce ! Au sein d'un programme pièce, il est possible d'utiliser soit la programmation CPL, soit la programmation standard. Pour des raisons de clarté et notamment afin de rendre efficace l'interprétation du programme, les parties du programme CPL doivent être caractérisées spécialement : ● les blocs de programme ne contenant que des éléments CPL doivent être caractérisés directement au début du bloc avec une valeur en nombre entier sans signe (numéro de la ligne). Exemple : 20 Ax1$="U" ● Attribuer la valeur "U" au bloc CPL 20 de la variable chaîne "Ax1$". Si des éléments CPL sont programmés au sein d'un bloc CN standard (p. ex. à cause d'une programmation de variables symboliques), les parties CPL sont à mettre en crochets ("[" et "]"). Ceci sert à attribuer une valeur paramétrable aux fonctions CN et aux paramètres des fonctions CN. Pour cette raison, seules les expressions qui, au sein de CPL, peuvent se trou‐ ver sur le côté droit d'un signe "=" (variable, expressions mathématiques, fonctions de système fournissant une valeur correspondante) sont per‐ mises entre crochets. Exemple : N10 G1 Y[PCS(X)] Dans le bloc CN N10, l'axe Y doit être déplacé sur la position de la dernière pièce à usiner programmée pour l'axe X. N20 Dans le bloc CN N20, activer l'aide à la saisie 'Tourner'. L'angle de rotation est défini à l'aide d'une expression CPL. ROT([360/A+SIN(B)]) 30 XPOS=100.5 Dans le bloc CPL 30, la valeur 100.5 est tout d'abord affectée à la variable "XPOS". N40 G1 X[XPOS] Y10 Dans le bloc CN N40, le contenu de la variable "XPOS" est transmis à l'axe X en tant que valeur de co‐ ordonnées. 18/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN 3.2.3 Les moments d'interprétation entre les parties des langages CPL et standard sont à prendre en compte ! Par la caractérisation particulière des parties de langage CPL, le programmeur peut immédiatement reconnaître les parties du programme qui sont suppri‐ mées dès la préparation de bloc. Les éléments de la programmation standard ne montrent un effet visible de l'extérieur qu'au moment de l'exécution du bloc sur la machine. Exemple : N523 KvProg(X[@KVX]) Au moment de l'exécution du bloc N523, la valeur à uti‐ liser comme KV pour l'axe X est celle qui était affectée à la variable permanente @KVX au moment de la pré‐ paration du bloc. Jusqu'au moment de l'exécution du bloc N523, la variable @KVX peut toutefois recevoir une valeur tout à fait différente (qui a été écrite par ex. par un autre canal) ! Afin d'éviter ici des incertitudes, il convient d'utiliser la fonction "WAIT". L'ordre WAIT bloque la préparation du bloc jusqu'à ce que le bloc CN programmé pré‐ alablement ait été complètement traité. Ainsi la préparation de bloc est syn‐ chronisée avec l'état actif (moment de l'interpolation) de la commande. Puis. la préparation de bloc est continué pour le bloc programmé ensuite. A ce momentlà, il n'existe plus de blocs préparés étant donné qu'ils ont tous été traités auparavant. Exemple : WAIT Synchronisation de la préparation de bloc. N523 KvProg(X[@KVX]) Au moment de l'exécution de bloc du bloc N523, la va‐ leur à utiliser comme KV pour l'axe X est celle qui a été affectée à la variable permanente @KVX au moment de la préparation de bloc. Du fait que la préparation de bloc a été synchronisée maintenant, il s'agit maintenant de la valeur active de la variable. 3.3 Liaison de programmes CN 3.3.1 Tableau de liaison Après la sélection du programme, celui-ci est d'abord vérifié en ce qui concerne sa syntaxe et les destinations de saut possibles ainsi que les appels de sousprogrammes. En outre, les structures d'administration correspondantes sont créées pour les variables CPL auxquelles la commande accède au moment de l'exécution. Ce processus est désigné liaison (ou préparation). Le résultat d'une exécution de liaison réalisée avec succès est la création d'un tableau de liaison pour le programme CN correspondant. Tous les tableaux de liaison de l'IndraMotion MTX sont archivés dans un répertoire spécial qui est déterminé dans le paramètre machine 3080 00004. Le nom du tableau de liai‐ son pour un programme s'ensuit du nom du programme pièce auquel est ajouté la désignation terminale (extension) ".l" (l : liaison). Pendant le montée en régime de la commande, celle-ci recherche pour tous les tableaux de liaison existants le programme CN correspondant. La recherche est effectuée selon le chemin de recherche réglé dans le paramètre machine 3080 00001. Les tableaux de liaison pour lesquelles aucun programme pièce ne peut être trouvé sont effacés. Lors d'une nouvelle sélection d'un programme CN déjà lié, l'IndraMotion MTX utilise un tableau de liaison déjà existante dans la mesure où le programme Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 19/550 Fondements de la programmation CN pièce n'a pas été modifié entre-temps. Une nouvelle liaison est effectuée après une modification de programme. 3.3.2 Liaison de sous-programmes - liaison supplémentaire Si des sous-programmes sont appelés dans le programme à lier, l'IndraMo‐ tion MTX vérifie si des tableaux de liaison valides existent. Si cela est le cas, de tels sous-programmes ne sont pas liés de nouveau. Ainsi le processus de liaison peut être considérablement raccourci. S'il n'existe pas dans un programme pièce des parties CPL (sauts, variables CPL, expressions CPL, etc.), mais seulement des blocs CN (DIN) et des appels de sous-programmes, le programme ne doit pas être expressément lié avant son exécution. Dans ce cas, lors de la sélection du programme, la clé logicielle à bascule "CPL Prog / DIN Prog" peut être commutée sur le réglage "DIN Prog". Le cas échéant, les sous-programmes sont également liés encore au moment de l'exécution du programme, ce qui peut entraîner un risque de délais dans le flux de traitement. Dans le cas de la programmation d'appels de sous-programmes par des va‐ riables CPL (par ex. P[UP$] ), la liaison pour ce sous-programme ne s'effectue que pendant l'exécution du programme, étant donné que le nom de la variable ne peut être supprimé qu'à ce moment. Un sous-programme appelé de cette manière est donc toujours lié ultérieurement dans la mesure où un tableau de liaison n'existe pas encore. 3.3.3 Influencer le processus de liaison à l'aide de l'identificateur DIN/CPL Dans les conditions décrites ci-dessus, il est également possible de directe‐ ment influencer la liaison par des instructions dans le programme pièce, indé‐ pendamment de la position actuelle de la clé logicielle à bascule "CPL Prog / DIN Prog". A un tel effet, le mot clé "(DIN)" doit être programmé au début de la première ligne de programme. Dans ce cas également, les sous-programmes sont, le cas échéant, liés ultérieurement au moment de l'exécution. Il est également possible de programmer l'instruction (DIN) toujours dans la première ligne d'un sous-programme, ce qui a pour effet, en revanche, que le sous-programme ainsi caractérisé n'est pas lié. En alternative, le mot clé "DIN" (sans parenthèses) peut être également écrit directement derrière l'appel de sous-programme dans le programme appelant (voir également chap. 3.9 "Sous-programmes" à la page 35). Par analogie à l'instruction (DIN), il existe également le mot clé "(CPL)"qui est à programmer lui aussi au début de la première ligne du programme. Cela force la génération d'un tableau de liaison pour le programme concerné, même s'il a été sélectionné sous le réglage "DIN Prog" ou s'il a été appelé en tant que sousprogramme avec la caractérisation DIN. 3.3.4 Unités de liaison La liaison ultérieure au moment de l'exécution du programme crée à chaque fois des unités de liaison autonomes : ● Si l'appel d'un sous-programme est programmé à l'aide des variables CPL (par ex.P[UP$] ), le programme appelant et le sous-programme appelé appartiennent à des unités de liaison différentes. ● Si un sous-programme est programmé directement, mais une liaison ul‐ térieure est effectuée (par ex. à cause de la caractérisation DIN lors de l'appel de sous-programme : P UP DIN), le programme appelant et le 20/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN sous-programme appelé appartiennent certes à la même unité de liaison, mais tous les autres sous-programmes appelés par le sous-programme appartiennent à une autre unité de liaison. En ce qui concerne la validité des variables CPL entre les programmes avec des unités de liaison différentes s'applique ce qui suit : ● Les variables globales sont définies de nouveau pour chaque unité de liaison. S'il existe donc des variables globales du même nom dans des (sous-) programmes avec des unités de liaison différentes, il s'agit de va‐ riables indépendantes les unes des autres. ● Si des informations sur les variables fixes doivent être échangées entre les programmes ayant des niveaux de liaison différents, ceci ne peut s'ef‐ fectuer qu'à l'aide des variables CPL permanentes ou structurées. Fig.3-1: Unités de liaison 3.4 Eléments de base d'un programme CN 3.4.1 Bloc de programme Un programme CN se compose d'au moins 1 bloc de programme. Pour les blocs de programme s'applique ce qui suit : ● Au maximum 1 élément de contour (par ex. droite, congé) peut être pro‐ grammé par bloc de programme. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 21/550 Fondements de la programmation CN 3.4.2 ● Les lignes vides avant ou après un bloc de programme sont permises pour une meilleure structure/lisibilité du code du programme. ● Un bloc de programme ne doit pas avoir plus de 512 caractères. ● Un bloc de programme se termine par le signe ASCII <LINEFEED>. ● Un bloc de programme se compose d'au moins un mot de programme (p.ex. fonction CN, paramètres de fonction). Instructions On entend sous "instructions" les mots du programme qui ont une influence directe ou indirecte sur la trajectoire de l'outil, le déroulement du programme, le statut, l'état ou la réaction de la commande. Toutes les fonctions CN sont par ex. des instructions typiques. Les fonctions CN disponibles ainsi que la règle de syntaxe respectivement re‐ quise sont données dans chap. 6 "Fonctions CN avec syntaxe de langage standard" à la page 175. Les fonctions de parcours occupent une position particulière parmi les instruc‐ tions : Les fonctions de parcours décrivent de quelle manière une position doit être approchée (par ex. droite, cercle, avec ou sans interpolation des axes impli‐ qués, mouvement d'approche en avance ou en vitesse rapide, etc.). Exemples : G0, G1, G2 Les fonctions de parcours sont souvent programmées avec des définitions de position, de course ou de rayon dans un même bloc. Dans de tels cas, les fonctions de parcours déclenchent également toujours les mouvements de dé‐ placement. De même, les définitions de position ou de course, programmées dans un seul bloc de programme sans une fonction de parcours, déclenchent toujours les mouvements de déplacement, étant donné qu'il y a toujours une fonction de parcours quelconque active. Exemple : 3.4.3 Fonction de parcours avec définition de coordonnées Conditions supplémentaires On entend sous conditions supplémentaires les mots du programme avec les‐ quels les conditions secondaires requises pour le traitement ou la technologie sont réglées sur la machine. Les mots du programme ayant l'effet d'une condition supplémentaire : F<Chiffre> influence l'avance des axes synchrones. FA<Chiffre> influence l'avance d'axes asynchrones. S<Chiffre> influence la vitesse de rotation de la broche. M<Chiffre> active les fonctions M (par exemple sélection de la gamme de vitesse, sens de rotation de la broche, appel d'un sous-pro‐ gramme). Les fonctions auxiliaires sont également souvent programmées en tant que fonctions M. T<Chiffre> sélectionne les outils. 22/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN Les mots du programme sont expliqués plus en détail en chap. 6 "Fonctions CN avec syntaxe de langage standard" à la page 175. Exemple : Information sur le parcours avec conditions supplémentaires Bien que de telles conditions supplémentaires ne servent pas di‐ rectement à la description du contour ou du tracé de la trajectoire, elles peuvent tout de même influencer les mouvements sur la ma‐ chine, voire les déclencher (par ex. mouvement du magasin d'ou‐ tils) ! 3.5 Mots du programme 3.5.1 Aperçu Un mot du programme est : 1. une fonction CN, ou 2. un paramètre avec une valeur ou une liste de paramètres. Un paramètre est adressé dans le programme pièce via sa syntaxe (adresse). Les ordres de synchronisation des blocs CN ainsi que les appels de sous-programmes représentent des cas spéciaux des fonctions CN, étant donné qu'ils peuvent être programmés en commun avec une liste de paramètres CPL. Tout mot du programme se compose toujours d'un ou de deux mots par‐ tielspouvant être combinés de la manière suivante : Mot du programme : Mot partiel 1 : Fonction CN Mot partiel 2 : Syntaxe de fonction - Exemples : AxAcc G0 G52.1 Syntaxe de fonction Liste de paramètres AxAcc(...) G0(NIPS) Syntaxe de fonction Valeur D5 M777 Ordre de synchroni‐ Syntaxe de l'ordre sation Syntaxe de l'ordre - OFFSTOPA Liste des paramè‐ tres CPL WPV[@9=10] Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 23/550 Fondements de la programmation CN Mot du programme : Mot partiel 1 : Mot partiel 2 : Exemples : Sous-programme - P UP1 Syntaxe du sousprogramme, G4711 Nom du sous-pro‐ gramme Syntaxe du sousprogramme Liste des paramè‐ tres CPL P UP2[7,@25] Noms des sous-pro‐ grammes Paramètre Syntaxe du paramè‐ Valeur tre X-23.45 Y=AC(40) S250 F5000 Syntaxe du paramè‐ Liste de paramètres O(0,0,1) tre ROTAX(0,45) Fig.3-2: Combinaison des mots partiels Les codes G et M peuvent apparaître non seulement avec, mais également sans mot partiel 2 : ● Pour les codes G et M avec une fonctionnalité fixe interne, la valeur numérique fait partie de la syntaxe, par ex. G0, G17, G54, M0, M3, M19, ... . ● 3.5.2 Pour les fonctions définies par l'utilisateur (appels de sousprogrammes et fonctions auxiliaires), la valeur numérique n'est pas un élément de la syntaxe, mais représente la valeur pour la fonction. Ces fonctions sont configurées au sein des paramètres machine. Mots du programme à partir des fonctions CN En règle générale s'applique ce qui suit : ● La syntaxe des fonctions CN peut se composer non seulement des codes G et M, mais également d'éléments du langage standard. Exemples : "G0", "G41", "G141", "G52.0", "M30", "Mirror(...)" Toutes les fonctions CN disponibles ainsi que la règle de syntaxe corres‐ pondante sont données dans chap. 6 "Fonctions CN avec syntaxe de langage standard" à la page 175. ● Les fonctions CN peuvent avoir des paramètres supplémentaires avec lesquels il est possible de piloter le mode d'action des fonctions CN. Ici, 3 cas sont à différencier : – Les paramètres qui sont programmés en tant que mot du programme autonome dans le bloc CN, par ex. "G02 X10 I1.3 J2.5 G94 F1000". Dans la plupart des cas, il s'agit de paramètres qui sont dé‐ finis au sein de la DIN 66025. – Les paramètres qui sont programmés en tant que mot du program‐ me, mais au sein d'une liste de paramètres avec des éléments de syntaxe spécifiques, par ex."KvProg(X1.2,Y1.2)". 24/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN – ● Les paramètres au sein d'une liste de paramètres sans éléments de syntaxe spécifiques entourés des parenthèses, pour lesquels uni‐ quement la valeur à la place définie est programmée, par ex. "Coord(0,1)", "Rotate(45)", "GetAxis(Z1,Z,W,REV)". Les listes de paramètres peuvent être optionnelles et contiennent au moins un paramètre possible. Si plusieurs paramètres existent pour une liste de paramètres, ceux-ci doivent être séparés l'un de l'autre par une virgule. Les paramètres qui sont disponibles, mais ne peuvent pas être uti‐ lisés simultanément (paramètres alternatifs), sont marqués dans le présent manuel par le caractère "|" prévu entre les deux alternati‐ ves. Le caractère "|" n'est pas programmé. ● Les paramètres des fonctions CN peuvent être optionnels. S'ils ne sont pas programmés en même temps, en règle générale, les réglages stan‐ dard pouvant soit être codés de manière fixe, soit être enregistrés dans les paramètres, prennent effet. Exemple : Règle de syntaxe : TangToolOri({ SYM<s>} ,{ ANG<a>}) A l'aide de la règle de syntaxe, vous pouvez reconnaître que les paramè‐ tres SYM et ANG sont des paramètres optionnels. Pour SYM, à la place du caractère de substitution <s>, et pour ANG, à la place du caractère de substitution <a>, une valeur appropriée doit être programmée. Les valeurs permises pour <s> et <a> sont normalement indiquées dans la règle de syntaxe. Une programmation possible pour la règle de syntaxe indiquée ci-dessus serait donc "TangToolOri(SYM4)". Dans le présent manuel, nous caractérisons ● les paramètres optionnels par des accolades et ● les caractères de substitution pour des valeurs à programmer par crochets triangulaires. Les accolades et les crochets triangulaires ne sont pas program‐ més. Listes de paramètres sans élé‐ ments de syntaxe spécifiques : Tous les paramètres dans ce type de liste sont des constantes et sont transmis directement en tant que valeur numérique ou en tant que nom. Ils doivent être programmés dans un ordre exactement défini, car la signification de chaque paramètre est déterminée uniquement par sa position au sein de la liste. Toute modification de l'ordre des paramètres peut avoir pour résultat un tout autre mode d'action : Exemple : GetAxis(X1,X,Y3,Y) Les axes avec les noms de système X1 et Y3 sont repris dans le canal et les noms des canaux "X" et "Y" leur sont attribués. GetAxis(X1,Y3,X,Y) Les axes avec les noms de système X1 et X sont repris dans le canal et les noms des canaux "Y3" et "Y" leur sont attribués. Les paramètres d'une liste de paramètres sans éléments de syntaxe spécifi‐ ques peuvent être optionnels. Pour de tels cas s'applique ce qui suit : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 25/550 Fondements de la programmation CN ● Les paramètres optionnels au début et au milieu de la liste peuvent être omis, mais la virgule correspondante doit être programmée. C'est uni‐ quement ainsi que la position des paramètres dans la liste reste univoque. ● Les paramètres optionnels à la fin de la liste peuvent être omis et la liste peut être terminée avec ")". Exemple : GetAxis(<Phy.Ax1> {,<Log.Ax1>} {,<Phy.Ax2} {,<Log.Ax2>} {,...}) programmé sans paramètres au milieu : GetAxis(X,,Z) programmé sans paramètres à la fin : GetAxis(X) Utilisation d'expressions CPL dans les listes de paramètres sans éléments de syntaxe spécifiques : Si des éléments individuels doivent être transmis en tant qu'expression CPL, ceux-ci doivent toujours être entourés de crochets. Exemple : Noms de variables en tant que paramètres de transfert 10 AX1$="U" La variable chaîne "AX1$" reçoit le contenu "U". 20 AX2$="V" La variable chaîne "AX2$" reçoit le contenu "V". : N100 G17([AX1$],[AX2$]) Listes de paramètres avec élé‐ ments de syntaxe spécifiques : G17 circonscrit le plan de travail avec les axes U et V. L'ordre de tous les paramètres dans ce type de liste est libre, car la signification d'un paramètre est déterminée par sa syntaxe programmée. Exemple : "KvProg(X1.2,Y1.4,Z1.6)" et "KvProg(Z1.6,Y1.4,X1.2)" semblent être identiques étant donné que les valeurs KV individuelles peuvent être attribuées de manière univoque à l'aide des adresses des axes X, Y et Z. Les expressions CPL peuvent être utilisées non seulement pour les éléments de syntaxe, mais aussi pour les valeurs numériques. Celles-ci doivent être mi‐ ses entre crochets "[" et "]". Exemple : 20 VALEUR=1.2 Attribuer à la variable "VALEUR" la valeur 1.2. N30 KvProg(Y[VALEUR],X1.2) Programmer les valeurs KV des axes Y et X. L'axe Y reçoit la valeur se trouvant dans la va‐ riable "VALEUR" ; l'axe X reçoit la valeur 1.2 (constante). Exemple : 40 ACHSB$="X":FACT%=2 Attribuer la valeur "X" à la variable chaîne "ACHSB$" et la valeur 2 à la variable entière "FACT%". N50 Scale([ACHSB$][FACT%]) Activer la mise à l'échelle du facteur 2 pour l'axe "X". Correspond à la programmation : Scale(X2) Exemple : 26/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN 60 DIM PARAMETER$(10) Créer un tableau de caractères pour une chaî‐ ne avec 10 caractères au maximum. 70 PARAMETER$="X2" N80 AxAcc([Parameter$]) 3.5.3 Attribuer à l'axe "X" l'accélération d'axe de 2 m/ s2. Mots du programme en tant que paramètres Paramètres suivis par une valeur : Exemple : Pour de tels mots du programme s'applique en règle générale ce qui suit : ● Une adresse commence toujours avec une lettre et peut être composée de plusieurs caractères. ● Les mots du programme avec adresse et chiffres sont utilisés par ex. pour la programmation de – Désignations d'axes et de coordonnées (par ex. X..., Y..., Z..., B...) – Rayons (R...) et paramètres d'interpolation (I..., J..., K...) – Valeurs d'avance ou temporaires (F...) – Vitesses de rotation de la broche et vitesses de coupe (S..., Si=...) – Corrections externes de l'outil (ED...) – Corrections D (D...) – Fonctions auxiliaires (M..., T...) ● Les zéros de tête ne doivent pas être programmés. ● Les nombres décimaux sont écrits avec un point décimal ; les zéros con‐ sécutifs sont facultatifs ("X100.500" correspond par exemple à "X100.5"). ● Si aucun signe ou le signe plus (n')a été programmé, la valeur qui suit est toujours interprétée comme positive. Le signe moins déclare une valeur négative. Mot du programme, composé de lettres d'adresse et d'un chiffre (ici : valeur de coordonnée de l'axe X) Paramètres suivis par une liste de paramètres : Pour de tels mots du programme s'applique en règle générale ce qui suit : ● En principe, les explications données pour les mots du programme com‐ posés d'une adresse et d'un chiffre sont également valables ici. ● La liste de paramètres doit être programmée derrière l'adresse et mise entre parenthèses. Les éléments individuels doivent être séparés les uns des autres par des virgules. ● Les éléments dans la liste de paramètres sont des constantes et sont transmis directement en tant que valeur numérique ou en tant que nom. Ils doivent être programmés dans un ordre exactement défini, car la si‐ gnification de chaque paramètre est déterminée uniquement par sa posi‐ tion au sein de la liste. ● Si des éléments individuels doivent être transmis en tant qu'expressions CPL, ceux-ci doivent être transmis entre crochets. ● Les mots du programme avec adresse et liste de paramètres sont utilisés par ex. pour la programmation de Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 27/550 Fondements de la programmation CN 3.5.4 – Coefficients spline (par ex. X(...)..., Y(...)..., Z(...)..., B(...)...) – Orientation vectorielle (O(...), ROTAX(...) ) Attributs de programmation Lors de la programmation des positions d'axes et de coordonnées, il est pos‐ sible en option d'indiquer un attribut de programmation pour la valeur de position programmée. Si aucun attribut de programmation n'est indiqué, la valeur de position est in‐ terprétée conformément à l'état modal actuel de la machine. Si un attribut de programmation est indiqué, l'état modal peut être remplacé localement par axe ou coordonnée. L'IndraMotion MTX connaît les attributs suivants : AC(...) : L'indication de position programmée est interprétée de façon absolue indépendamment de G90/G91. IC(...) : L'indication de position programmée est interprétée de façon incrémentale indépendamment de G90/G91. DC(...) : La position programmée pour un axe infini est approchée via le parcours le plus court, indépendamment des réglages dans les paramètres machine et de la programmation de la fonction "PosMode". ACP(...) : La position programmée pour un axe infini est approchée avec un sens de rotation positif, indépendamment des réglages dans les paramètres machine et de la programmation de la fonction "PosMode". ACN(...) : La position programmée pour un axe infini est approchée avec un sens de rotation négatif, indépendamment des réglages dans les paramètres machine et de la programmation de la fonction "PosMode". INCH(...) : L'indication de position programmée pour un axe asynchrone est interprétée comme mesure en pouce, indépendamment de l'unité enregistrée dans les données de configuration. L'attribut peut également être utilisé pour l'avance asynchrone (adresse FA) dont la valeur programmée est interprétée en pouces/minute pour les axes linéaires, indépendamment de l'unité configurée pour les axes asynchrones. MM(...) : L'indication de position programmée pour un axe asynchrone est interprétée comme mesure en mm, indépendamment de l'unité enregistrée dans les données de configuration. L'attribut peut également être utilisé pour l'avance asynchrone (adresse FA) dont la valeur programmée est interprétée en mm/minute pour les axes linéaires, indépendamment de l'unité configurée pour les axes asynchrones. Exemples : N10 G90 G1 F1000 X10 Y=IC(15) L'axe X se déplace de manière absolue sur la position 10 ; l'axe Y avance de 15 mm de manière incrémentale. N20 G91 X=AC(15) Y5 En dépit de G91, l'axe X se déplace sur la position ab‐ solue 15 ; l'axe Y avance de 5 mm de façon incrémen‐ tale. N30 B=DC(90) L'axe B (axe infini) doit s'approcher sur le parcours le plus court de la position 90 degrés. 28/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN 3.5.5 N40 B=ACP(350) L'axe B doit s'approcher de la position 350 degrés avec un sens de rotation positif (course de déplacement : 260 degrés). N50 B=ACN(0) L'axe B doit s'approcher de la position 0 degrés avec un sens de rotation négatif (course de déplacement : 350 degrés). Utilisation des caractères de séparation entre 2 mots partiels Chaque mot partiel peut se composer d'un ou plusieurs caractères (chaîne de caractères). Chaque caractère programmable peut être classifié conformément aux groupes suivants : ● Lettres : "A" - "Z", "a" - "z" ● Chiffres (le point décimal inclus !) : "0" - "9", "." ● Caractères ayant l'effet d'un caractère de séparation : "", "=", "+", "-", "(", ")" ● Autres caractères spéciaux (ici sans pertinence) Un caractère de séparation doit être programmé entre 2 mots partiels voisins si : ● le premier mot partiel se termine en une lettre ou un chiffre, et ● le deuxième mot partiel commence avec une lettre ou un chiffre. Ceci est par exemple le cas, si Exemples : ● une autre syntaxe suit une fonction CN sans valeur, ni liste des paramè‐ tres, ou ● une syntaxe de paramètre se termine en un chiffre et une valeur numéri‐ que doit être attribuée au paramètre. 1. N10 OVE FeedForward(...) caractère de séparation qui convient : "". 2. N20 X2=2 caractère de séparation qui convient : "=" Dans le 2ème cas, il est également possible d'utiliser "" ou "+" comme caractère de séparation alternatif, et lors d'une attribution de valeur négative, "-" est éga‐ lement possible. L'utilisation de caractères de séparation peut être également significative pour des listes de paramètres avec éléments spécifiques à la syntaxe ! Particularités pour les désignations d'axe et de coordonnées : Les désignateurs d'axes et de coordonnées souhaités sur votre commande sont à déterminer dans les paramètres machine : ● MP 1003 00001 désignation de l'axe du système ● MP 7010 00010 désignation de l'axe du canal ● MP 7010 00020 noms optionnels de l'axe du canal ● MP 7080 00010 noms de coordonnées du canal ● MP 7080 00020 noms de coordonnées cartésiennes du canal Les désignations d'axes et de coordonnées commencent toujours avec une lettre et peuvent : ● se composer d'une ou plusieurs lettres, le nom de la chaîne de caractères en résultant ne devant toutefois pas être celui d'une fonction CN. Exemples : "X", "PALETTE" ● se composer d'une/plusieurs lettres et se terminer en un chiffre. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 29/550 Fondements de la programmation CN Exemples : "X1", "PALETTE1" ● Exemple : 3.6 Ici, pour la séparation entre le désignateur et la valeur suivante, un ca‐ ractère de séparation approprié doit être programmé :"=", "+", "-" ou un espace. Les désignateurs d'axe "X" et "X2" sont définis. N40 G1 X10 Axe X s'approche de la position 10. N50 G1 X20 Axe X s'approche de la position 20. N60 G1 X2.5 Axe X s'approche de la position 2.5. N70 G1 X=2.2 Axe X s'approche de la position 2.2. N80 G1 X 2.8 Axe X s'approche de la position 2.8. N90 G1 X2 Axe X s'approche de la position 2. N100 G1 X2 1 Axe X2 s'approche de la position 1. N110 G1 X2=2.8 Axe X2 s'approche de la position 2.8. N120 G1 X2+3 Axe X2 s'approche de la position 3. N130 G1 X2-2.4 Axe X2 s'approche de la position -2.4. Fin du programme La fin d'un programme ou d'un sous-programme est atteinte dans les cas sui‐ vants : ● à la fin du fichier, ou ● en cas d'une ligne de programme contenant "M2", "M02" ou "M30". Vous trouverez de plus amples informations relatives aux fonctions M mentionnées sous chap. 5.3 "Codes M" à la page 161. Exemple : : N250 ... N250 est le dernier bloc du programme. M30 Fin du programme. Après la fin d'un sous-programme, le système retourne dans le programme appelant. Tous les états modaux ("modal", voir chap. 3.7.1 "modal " à la page 29) sont conservés. Après la fin d'un programme principal, le système saute à son début et attend un nouveau "Démarrage CN". Si "M2", "M02" ou "M30" a été utilisé comme fin du programme principal, les états modaux sont mis sur la partie M30 du INITSTRING. 3.7 Effet de mots du programme 3.7.1 modal Les mots du programme peuvent avoir un effet "modal" ou "non modal". "modal" signifie qu'un mot du programme reste actif dans tout bloc de pro‐ gramme suivant, jusqu'à ce que vous ● programmiez le même mot du programme avec une autre valeur, ● programmiez un autre mot du programme annulant son effet, ou ● désactiviez la fonction du mot du programme. Parfois, la notion de "maintien automatique" est également utilisée comme synonyme pour "modal". 30/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN Exemple d'un programme pièce CN : N10 F1000 Mettre la vitesse d'avance à 1000 mm/min. F1000 a un effet modal. N20 G0 X0 Y0 Interpolation linéaire en avance rapide sur position X0/ Y0. G0 a un effet modal. N30 Z100 Interpolation linéaire en avance rapide sur position Z100. N40 G1(IPS1) X10 Y10 Interpolation linéaire (en avance ; avec fenêtre de posi‐ tionnement exacte) avec 1000 mm/min sur position X10/ Y10. G1 annule l'effet de G0. G1(IPS1) a un effet modal. N50 X20 Interpolation linéaire (en avance ; avec fenêtre de posi‐ tionnement exacte) avec 1000 mm/min sur position X20/ Y10. N60 G1(IPS2) X30 Y30 Interpolation linéaire (en avance ; avec fenêtre de posi‐ tionnement approximative) avec 1000 mm/min sur po‐ sition X30/Y30. G1 a été programmé avec une autre valeur (IPS2). G1(IPS2) a un effet modal. N70 X40 Y40 F500 Interpolation linéaire (en avance; avec fenêtre de posi‐ tionnement approximative) avec 500 mm/min sur posi‐ tion X40/Y40. F a été programmé avec une autre valeur (500). F500 a un effet modal. N80 G0 X0 Y0 Interpolation linéaire en avance rapide sur position X0/ Y0. G0 annule l'effet de G1(...). G0 a un effet modal. 3.7.2 N90 Scale(X2,Y2) Activer la mise à l'échelle. La mise à l'échelle a un effet modal. : La mise à l'échelle reste encore active. N200 Scale() Désactiver le mise à l'échelle. non modal "non modal" signifie qu'un mot du programme n'a un effet que dans le bloc du programme dans lequel il a été programmé. Parfois, les notions "sans maintien automatique" ou "local" sont également utilisées comme synonymes pour "non modal". Exemple d'un programme pièce CN : N10 G1 F1000 Activer l'interpolation linéaire. G1 a un effet modal. Mettre la vitesse d'avance à 1000 mm/min. F1000 a un effet modal. N20 G75 X100 Y100 Le palpeur de mesure G75 n'a pas d'effet modal. Dans ce bloc, la fonction modale G1 est masquée par la fonc‐ tion G75. N30 Z100 Interpolation linéaire en vitesse d'avance vers Z100. G1 a toujours un effet modal. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 31/550 Fondements de la programmation CN 3.8 Eléments spéciaux pour la configuration du programme 3.8.1 Caractérisation du canal Outil pour déterminer dans quel canal le programme concerné peut être ex‐ clusivement utilisé. Le démarrage dans un autre canal entraîne une erreur d'exécution. La caractérisation du canal est écrite au début du programme. 3.8.2 Syntaxe : $<Numéro du canal> Exemple : N10 $2 Ce programme ne peut être exécuté que dans le canal 2. : Instructions programmées M30 Fin du programme Numéros de bloc ● Vous pouvez caractériser des blocs du programme avec un numéro de bloc afin d'améliorer la lisibilité du code du programme. Dans la mesure où vous attribuez des numéros de bloc univoques, il est possible de programmer des sauts sur ces numéros de bloc. ● Les blocs du programme ne contenant que des éléments CPL doivent être caractérisés par un numéro de bloc. De tels blocs sont également dési‐ gnés blocs CPL. Pour les numéros de bloc s'applique ce qui suit : ● Les numéros de bloc doivent toujours être programmés comme premier mot CN dans une ligne du programme. ● Les numéros de bloc des blocs CN standard se composent de la lettre d'adresse "N" et d'un nombre positif qui suit directement. (exemple : "N10", "N10.2"). Prendre en considération que les expressions CPL au sein des blocs CN standard doivent être mises entre crochets. ● Les numéros de blocs CPL purs se composent exclusivement d'un chiffre positif sans signe (exemple : "10", "11.9"). L'instruction CPL ou l'accord du bloc est programmé derrière le numéro de bloc. ● 3.8.3 Si un bloc CPL se termine par un ":", il faut connecter un autre bloc CPL qui ne possède pas de numéro de ligne. Lignes vides dans le code du programme Les lignes vides permettent de structurer le programme et d'augmenter donc sa lisibilité. Les lignes vides sont ignorées par la commande. 3.8.4 Commentaires dans un programme pièce Lors de l'exécution du programme, les commentaires sont ignorés par la com‐ mande. Utiliser des commentaires afin de : ● documenter le code du programme ou de le doter d'explications. ● commenter en détail des lignes de programme entières ou des éléments individuels. 32/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN Les programmes bien commentés facilitent et accélèrent le remaniement ulté‐ rieur, par exemple lorsque des modifications doivent être apportées au pro‐ gramme. Chaque caractère de commentaire entraîne cependant une augmen‐ tation d'1 octet du fichier de programme. Commenter en détail les lignes de programme entières : Commentaires dans un bloc CN standard : Vous avez la possibilité de masquer complètement chaque ligne de program‐ me, peu importe qu'il s'agisse d'un bloc CN standard ou d'un bloc CPL. Pour effectuer les commentaires : ● programmer un point-virgule ";" au début du bloc, ou ● mettre la ligne complète entre parenthèses "(" et ")". Au sein d'un bloc CN standard, il est possible de programmer un commentaire à n'importe quel endroit : ● Programmer un point-virgule ";" à l'endroit où le commentaire commence. La commande interprétera la ligne du programme, à partir du point-virgule jusqu'à la fin de la ligne, comme commentaire. ● Mettre les commentaires isolés au sein d'un bloc CN standard en paren‐ thèses "(" et ")". Ainsi, il est également possible de programmer des "commentaires imbriqués", par ex. si vous voulez masquer une séquence au sein d'une ligne du programme, dans laquelle se trouve déjà un com‐ mentaire entre parenthèses. Les parenthèses ne doivent pas être utilisées derrière les fonctions pour lesquelles une liste de paramètres avec parenthèses peut être program‐ mée en option (par ex. G0, G1, G61), sans que cette liste n'ait été programmée. Exemple : N10 G0 (<Texte du commentaire>) Programmation invalide ! N20 G0 (NIPS) (<Texte du commentaire>) Programmation valide. ● Commentaires dans un bloc CPL : Il est possible d'ouvrir un commentaire avec "//" après une fonction avec une liste optionnelle des paramètres possibles s'il manque la liste des paramètres. En option, un tel commentaire peut être terminé par "\\". Au sein d'un bloc CPL, il convient d'ouvrir un commentaire avec "REM". La commande interprétera la ligne du programme à partir de l'instruction REM jusqu'à la fin de la ligne comme commentaire. Syntaxe : REM <Texte du commentaire> Exemple : ... 10 REM ***Sous-programme pour démasquer le mot d'état*** ... Exemples : Commentaires dans le programme pièce : Code du programme ; <Commentaire> Ligne de commentaire ;N10 <Bloc CN standard> Masquer le bloc CN standard. ;20 <CPL> Masquer le bloc CPL. ( <Commentaire> ) Ligne de commentaire Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 33/550 Fondements de la programmation CN 3.8.5 (N30 <Bloc CN standard>) Masquer le bloc CN standard. (40 <CPL>) Masquer le bloc CPL. N50 G1 X0 Y0 ; <Commentaire> Commentaire dans un bloc CN stan‐ dard. N60 G1(IPS) (<Commentaire>) F1000 Commentaire isolé dans un bloc CN standard. N70 X10 (Y10 (<Commentaire>)) "Commentaire imbriqué" dans un bloc CN. N80 G0 //<Commentaire> Commentaire derrière une fonction pour laquelle des paramètres option‐ nels pourraient être programmés. N90 G0 //<Commentaire>\\ X0 Y0 Commentaire isolé derrière une fonc‐ tion pour laquelle des paramètres op‐ tionnels pourraient être programmés. 100 REM <Commentaire> Commentaire dans un bloc CPL. Remarques dans l'interface utilisateur Utiliser la programmation de remarques afin d'afficher dans l'interface utilisa‐ teur CN les textes de remarque (80 caractères au maximum). Il est ainsi possible d'informer l'utilisateur de la machine par ex. pendant l'exécution du programme ● de l'état actuel du programme, ou ● de donner des consignes de manipulation. Deux types de remarque sont différenciés : ● les remarques spécifiques au canal : Elles sont effacées au moment de la désélection du programme ou de la remise à zéro du canal. Syntaxe : MSG (<Texte de remarque>) ● remarques multicanaux : Il est possible de les effacer avec la remise en zéro globale. Syntaxe : GMSG (<Texte de remarque>) Il est également possible de programmer une remarque afin d'afficher une ins‐ truction pour l'utilisateur de la machine. Pour ce faire, programmer dans la même ligne ou dans la ligne suivante par exemple un "M0". Vous assurez ainsi que le programme est interrompu directement à la suite de l'affichage du texte de remarque. La suite du déroulement du programme ne s'effectue qu'après actionnement de "Démarrage CN". Exemple : : Code du programme N60 (MSG Mesurer pièce à usiner !) Editer une remarque spécifique au ca‐ nal. N70 M0 Attendre la touche Démarrage CN. : Code du programme Pour des raisons de compatibilité, il existe quelques variantes alternatives de syntaxe pour la programmation des remarques qui sont toutefois toutes équi‐ valentes en ce qui concerne la fonctionnalité. 34/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN ● Variantes de syntaxe pour remarques spécifiques au canal : (MSG<Texte de remarque>) (*MSG<Texte de remarque>) (MSG,<Texte de remarque>) (*MSG,<Texte de remarque>) ● Variantes de syntaxe pour remarques multicanaux : (GMSG<Texte de remarque>) (GMSG,<Texte de remarque>) 3.8.6 Sauts dans le déroulement du programme Plus les programmes sont volumineux, plus une "programmation précise" est importante. Par cela, on entend principalement : ● une programmation structurée, ● une tolérance à l'égard des erreurs, et ● une ergonomie du logiciel. Les programmes structurés sont généralement plus clairs. Le regroupement sensé des sections ou des fonctions souvent requises pour les sous-program‐ mes (paramétrés) ou sous une destination de saut, muni d'un indicateur (label) compréhensible, conduit non seulement à une meilleure lisibilité, mais égale‐ ment à un travail plus efficace, étant donné que ces programmes peuvent être réutilisés dans d'autres programmes. Les possibilités suivantes sont disponibles : ● Appels de sous-programmes (voir chap. 3.9 "Sous-programmes" à la page 35) Utiliser des sous-programmes, si une section précise de traitement ap‐ paraît plusieurs fois de façon identique ou similaire au cours du traitement. Vous programmez cette section une seule fois (le cas échéant avec la possibilité de transmettre des paramètres), vous l'enregistrez en tant que programme et vous l'appelez tout simplement en cas de besoin. Cela vous permet d'économiser les codes du programme et la capacité de mémoire. Par ailleurs, les programmes sont beaucoup plus clairs et beaucoup plus conviviaux du point de vue de l'entretien. ● Instructions de saut (voir chap. 3.10 "Programmation label et instructions de saut" à la page 41) Utiliser les instructions de saut pour continuer, au sein du programme ac‐ tuel, le déroulement du programme à d'autres endroits, en fonction d'évé‐ nements définis (comme par ex. des résultats de calcul). ● Instructions de décision/de branchement (voir chap. 3.11 "Instructions de décision et de branchement" à la page 46) Utiliser de tels ordres, si des blocs du programme individuels, différents éléments du programme ou des sous-programmes complets doivent être exécutés en fonction des conditions définies. ● Instructions de répétition (voir chap. 3.12 "Instructions de répétition" à la page 48) Utiliser les instructions de répétition, si des éléments du programme ou des sous-programmes complets doivent être exécutés à plusieurs repri‐ Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 35/550 Fondements de la programmation CN ses. Dans ce cas, il est également possible, en règle générale, de déter‐ miner le nombre de répétitions. 3.9 Sous-programmes 3.9.1 Aperçu Les programmes qui sont appelés par un appel de sous-programme sont nom‐ més sous-programmes (UP). A la suite de l'exécution d'un sous-programme, le programme appelant continue son traitement en commençant derrière l'ap‐ pel de sous-programme. On parle d'un sous-programme "récursif", quand un programme s'appelle lui-même. Le programme principal (HP) est le programme à partir duquel on passe au premier niveau de sous-programme (niveau UP). D'un point de vue formel, on ne distingue pas entre les programmes principaux et les sous-programmes, mais seuls les sous-programmes peuvent disposer de paramètres de transfert. Pour les sous-programmes s'applique ce qui suit : ● Les sous-programmes peuvent contenir des blocs CN standard et des blocs CPL. ● Chaque programme pièce peut être appelé par d'autres programmes en tant que sous-programme. Cependant, un programme ne peut pas s'ap‐ peler lui-même en tant que sous-programme (appel recursif impossible). ● Le programme appelant peut transmettre des paramètres à un sous-pro‐ gramme. ● La profondeur maximale d'imbrication est de 8, c'est-à-dire la commande peut maintenir ouverts simultanément 8 niveaux de sous-programmes au maximum. ● La commande distingue entre majuscules et minuscules dans les noms des sous-programmes. Pour des informations relatives à la fin d'un sous-programme, voir chap. 3.6 "Fin du programme" à la page 29. Exemple : Imbrication de sous-programmes UPx : Nom du sous-programme Il est distingué entre les sous-programmes locaux et modaux : ● En règle générale, les sous-programmes sont locaux. Dans ce cas, le sous-programme est appelé une fois à l'endroit d'appel. ● Si, cependant, un sous-programme modal est activé, celui-ci est appelé de nouveau avec chaque déplacement suivant programmé, jusqu'à ce qu'il soit désactivé. Les cycles de perçage en constituent un exemple d'application. L'IndraMotion MTX offre les variantes suivantes d'appels de sousprogrammes : 36/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN 3.9.2 ● Appel avec adresse P et nom de sous-programme à partir d'un bloc CN standard (en option avec indication du chemin). ● Appel uniquement avec nom de sous-programme à partir d'un bloc CN standard, sans indication de chemin et sans adresse P. ● Sous-programme en tant que fonction G ou M autodéfinie dans un bloc CN standard. ● Activation d'un sous-programme modal avec syntaxe autodéfinie à partir d'un bloc CN standard. ● Appel via la fonction CALL à partir d'un bloc CPL. Appel de sous-programmes avec adresse P ● Le nom du sous-programme est programmé directement derrière l'adres‐ se P. En option, le répertoire dans lequel se trouve le sous-programme peut être programmé en même temps. ● Afin d'améliorer la lisibilité, un espace peut être programmé en tant que caractère de séparation entre l'adresse P et le nom du sous-programme. ● L'appel de sous-programme doit être programmé à la fin du bloc. Les déplacements qui sont programmés dans le même bloc seront exé‐ cutés avant que le sous-programme ne soit appelé (voir l'exemple). Syntaxe : ● 1 appel de sous-programme au maximum peut être programmé dans un bloc. ● L'appel de sous-programme est local (non modal). P{<Chemin>}<Nom> {DIN} avec <Chemin> Répertoire dans lequel se trouve le sous-programme. <Nom> Nom du programme à appeler. DIN En option. Empêche la liaison du sous-programme. Utiliser ce paramètre seulement si le sous-programme n'appelle pas de blocs CPL, ni d'autres sous-program‐ mes. Sinon, un message d'erreur sera généré lors de l'exécution du programme. Pour de plus amples informations, voir l'ordre CALL (chap. 3.9.6 "Appel de sous-programmes en CPL via l'ordre CALL" à la page 39). Fig.3-3: Exemple : Syntaxe avec adresse P : N40 P Gabarit de perçage Appel de programme "Gabarit de perçage". N50 X100 Le bloc N50 suit la fin du sous-programme. : N140 G0 X10 Y0 PUP1 D'abord le positionnement sur X10/Y0 en avance rapide. N150 Z0 Ensuite appel de programme "UP1". : Le bloc N150 suit la fin du sous-programme. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 37/550 Fondements de la programmation CN 3.9.3 Appel de sous-programmes sans adresse P Il est également possible d'appeler des sous-programmes sans adresse P pla‐ cée en tête. ● Uniquement le nom du sous-programme est programmé directement. ● L'indication d'un chemin n'est pas possible. ● L'appel de sous-programme doit être programmé à la fin du bloc. Les déplacements qui sont programmés dans le même bloc seront exé‐ cutés avant que le sous-programme ne soit appelé (voir l'exemple). Syntaxe : ● 1 appel de sous-programme au maximum peut être programmé dans un bloc. ● L'appel de sous-programme est local (non modal). <Nom> avec <Nom> Fig.3-4: Nom du programme à appeler. Syntaxe sans adresse P Vous assurer que cette variante de programmation ne provoque pas de confusions avec la syntaxe normale ! Utiliser par conséquent un nom dépourvu de toute ambiguïté pour les sousprogrammes, afin d'éviter des erreurs d'interprétation de la part de l'interpréteur de la commande. Exemple : : N40 XUP Appel de programme "XUP". N50 X100 Le bloc N50 suit la fin du sous-programme. : N100 X1UP Attention ! Le nom UP "X1UP" programmé ici entraîne une er‐ reur de syntaxe étant donné que "X1" est interprété en tant que coordonnée d'un axe portant le nom "X" et qu'un programme du nom "UP" n'existe pas. : : : : : 3.9.4 N140 G0 X10 Y0 XUP D'abord le positionnement sur X10/Y0 en avance rapide. N150 Z0 Ensuite appel de programme "XUP". : Le bloc N150 suit la fin du sous-programme. Appels de sous-programmes autodéfinis avec des codes G et M Outre les appels de sous-programmes déjà mentionnés, la commande vous fournit également la possibilité de définir ● les sous-programmes "non modaux" avec l'adresse M (voir MP 3090 00003 et MP 3090 00004) et ● les sous-programmes "non modaux" avec l'adresse G 38/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN (voir MP 3090 00001 et MP 3090 00002) vous-même. Il est possible d'attribuer des sous-programmes jusqu'à un maximum de 16 codes G et de 8 codes M définis par l'utilisateur, ces programmes étant appelés lors de la programmation des codes G ou M correspondants en tant que sousprogramme local (non modal). Les codes G et M configurés en tant qu'appels de sous-programme ne doivent pas être en contradiction avec les codes G et M définis de manière fixe. Pour de plus amples informations sur les appels de sous-program‐ mes configurés spécialement sur votre machine, veuillez contacter votre responsable système. Pour la programmation des appels de sous-programmes autodéfinis s'applique ce qui suit : ● Uniquement le code G ou M correspondant est programmé dans le pro‐ gramme pièce. Il s'ensuit de la configuration des paramètres machine quel programme est ainsi appelé. ● L'appel de sous-programme doit être programmé à la fin du bloc. Les déplacements qui sont programmés dans le même bloc seront exé‐ cutés avant que le sous-programme ne soit appelé. 3.9.5 ● 1 appel de sous-programme au maximum peut être programmé dans un bloc. ● L'appel de sous-programme est local (non modal). Appels de sous-programmes modaux autodéfinis Après leur premier appel, les sous-programmes ayant un effet modal sont au‐ tomatiquement exécutés à la suite de chaque déplacement imposé par un bloc CN standard. Ceci est valable jusqu'à ce qu'ils soient désactivés par une fonc‐ tion CN spéciale. Les appels modaux des sous-programmes sont configurés dans les paramè‐ tres machine (voir MP 3090 00005 et suivants), y compris la syntaxe de la fonction d'arrêt. Il est possible de régler 15 sous-programmes au maximum qui se désélection‐ nent mutuellement. Les noms des sous-programmes sont attribués aux synta‐ xes librement définissables. De plus, il faut indiquer le nombre maximal des paramètres pouvant être transmis au sous-programme correspondant. Les syntaxes des appels de sous-programmes modaux ne doivent pas être en contradiction avec les fonctions CN définies de manière fixe. Pour de plus amples informations sur les appels de sous-program‐ mes configurés spécialement sur votre machine, veuillez contacter votre responsable système. Pour la programmation d'appels de sous-programmes modaux s'applique ce qui suit : ● Uniquement la syntaxe configurée correspondante du sous-programme modal est programmée dans le programme pièce. Il s'ensuit de la confi‐ guration des paramètres machine quel programme est ainsi appelé. ● Seulement 1 appel de sous-programme peut être programmé dans un bloc. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 39/550 Fondements de la programmation CN ● 3.9.6 L'appel de sous-programme est modal, c'est-à-dire le sous-programme est appelé de nouveau à la suite de chaque déplacement programmé jusqu'à ce qu'il soit désactivé. Appel de sous-programmes en CPL via l'ordre CALL L'ordre CALL offre la possibilité d'appeler des sous-programmes également à partir de programmes purs CPL. Pour la programmation s'applique ce qui suit : ● Le sous-programme programmé après l'ordre CALL est appelé directe‐ ment. ● L'ordre CALL doit être programmée dans un bloc CPL séparé. ● L'appel de sous-programme est local. Le nom du programme est situé derrière le mot clé CALL ; les paramètres de transfert dans des crochets et, en dernier lieu, la caractérisation "DIN" (pour influencer le processus de liaison) peuvent suivre. Dans un bloc CPL avec l'instruction CALL, ":" ne doit pas être utilisé. Les instructions CPL suivantes doivent être programmées dans un nouveau bloc CPL. Exemple : 50 IF A% = 1 THEN %! CALL P999 %" ENDIF : Influence sur le processus de liai‐ son ("Préparation") à l'aide de la caractérisation "DIN" : Exemple : Si, lors d'un appel de sous-programme via CALL, vous programmez la carac‐ térisation "DIN" en tant que terminaison, la commande n'effectue pas la liaison du sous-programme appelé. Ainsi, il est possible d'accélérer de manière con‐ sidérable le processus de liaison par ex. d'un programme principal appelant de nombreux sous-programmes. 50 IF A% = 1 THEN 51 CALL P999 DIN Le sous-programme "P999" n'est pas lié. 52 ENDIF M30 Nous recommandons de ne programmer la caractérisation "DIN" que si le sousprogramme appelé ● se compose exclusivement des blocs DIN, et ● n'appelle pas d'autres sous-programmes. Si, en raison de la caractérisation "DIN", un sous-programme n'a pas été lié et contient des éléments CPL, la commande émet un message d'erreur consé‐ quent au cours de l'exécution du programme. Alternativement, il est également possible d'insérer la caractérisation "DIN" en tant que commentaire dans la première ligne du sous-programme à appeler. La commande n'effectue alors pas de liaison du programme. Exemple : Caractérisation "DIN" dans le programme à appeler N10 (DIN) N20 ... : Le sous-programme "P999" n'est pas lié. 40/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN 3.9.7 Transfert des paramètres à des sous-programmes A l'aide d'une liste de paramètres CPL, il est possible de transmettre des pa‐ ramètres à un sous-programme. Pour ce faire, les paramètres sont mis dans une liste entre crochets CPL "[" et "]" et programmés immédiatement après l'appel de sous-programme. Les différents paramètres sont séparés les uns des autres par des virgules. Les paramètres admissibles sont : ● Chiffres ● Constantes chaînes CPL (entre guillemets : "<Constante chaîne CPL>" ● Variables CPL ● Expressions CPL arithmétiques Les paramètres transmis lors de l'appel de sous-programme sont toujours adressés dans le sous-programme via les variables P1, P2, P3 etc. selon l'ordre du transfert des paramètres. Il est également possible d'adresser les paramètres par P1TEST, P2XYZ etc., les lettres majuscules qui suivent P1, P2 etc. étant cependant ignorées (P1 = P1TEST = P1XYZ). Exemple : ● Dans le sous-programme P999, P1 a la valeur 2.75, ● P2 a la valeur de la variable X% au moment du transfert des paramètres ● P3 a la valeur 0. Si P2 doit représenter une valeur INTEGER également dans le sous-program‐ me, ceci peut s'effectuer par l'addition d'un caractère % à P2. Cette caractéri‐ sation du type de la variable peut être effectuée également avec d'autres types de variables de manière correspondante. La valeur des paramètres individuels peut être attribuée à d'autres variables dans le sous-programme. Programme principal : 50 IF A% = 1 THEN 51 CALL P999 [2.75, X%, 0] Appel de sous-programme avec transfert des pa‐ ramètres. 52 ENDIF M30 Sous-programme P999 : 1 FAKTOR=P1 : XWERT%=P2% : KORRTAB%=P3% N1 G1 X[XWERT%*FAKTOR] N2 G22 K[KORRTAB%] Si un sous-programme ● doit être appelé avec une constante chaîne en tant que paramètre de transfert et ● si le programme appelant est sélectionné sans liaison, l'ordre PDIM doit être utilisé. Syntaxe : PDIM <Nom du paramètre>(<Taille du tableau>) Si la taille du tableau n'a pas été programmée ou si sa valeur programmée est trop petite, la commande signale l'erreur du programme pièce "Variable inad‐ missible". Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 41/550 Fondements de la programmation CN Exemple : Programme principal : N10 (DIN) : N50 P UP["Test"] M30 Sous-programme : 10 PDIM P1$(4) M30 La variable chaîne P1$ a la valeur "TEST". 3.10 Programmation label et instructions de saut 3.10.1 Aperçu A l'aide des instructions de saut, il est possible de continuer le déroulement du programme à des points d'entrée définis. Quant aux instructions de saut, l'IndraMotion MTX offre la fonctionnalité sui‐ vante : ● Programmation label pour les blocs CN standard (DIN) ● Programmation label pour les blocs CPL ● GoAhead (GOA) : saut en avant sur un bloc CN standard ● GoBack (GOB) : saut en arrière sur un bloc CN standard ● GoCond (GOC) : saut conditionnel sur un bloc CN standard ● GoTo : saut inconditionnel sur un bloc CN standard ● Saut CPL (GOTO) : saut sur un bloc du programme quelconque Le saut CPL GOTO est supprimé déjà au moment de la liaison. Pour les ordres CN standard, cependant, la destination du saut n'est cherchée qu'au moment de l'exécution du programme, ce qui a un effet défavorable sur le comportement de l'exécution, en par‐ ticulier si la destination du saut se trouve très loin de l'appel du saut. Il est interdit de sauter à une instruction CASE–LABEL...LABEL– OTHERWISE–ENDCASE à l'aide du saut CPL GOTO. Il est interdit d'entrer dans ou de sortir d'une instruction de répétition CPL ou d'une instruction de branchement CPL à l'aide des ordres de saut CN standard "GoAhead", "GoBack", "GoCond" et "GoTo". Les instructions CPL suivantes en sont concernées : 3.10.2 ● REPEAT – UNTIL ● WHILE – DO – END ● FOR – STEP – TO – NEXT ● IF – THEN – ELSE – ENDIF ● CASE – LABEL ... LABEL – OTHERWISE – ENDCASE. Labels dans les blocs CN standard et dans les blocs CPL Un label est une étiquette de saut pour un ordre de saut. L'IndraMotion MTX différencie les labels dans un bloc CN standard (DIN) et un bloc CPL. 42/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN Programmation label dans un bloc CN standard (DIN) : ● La destination du saut doit toujours être programmée au début du bloc. ● En cas de blocs avec numéro de bloc, la destination du saut se trouve directement derrière le numéro du bloc, séparée par un caractère de sé‐ paration. ● Le nom label peut être composé de 2 jusqu'à 32 caractères. Les lettres, caractères de soulignement et chiffres sont autorisés, mais les deux pre‐ miers caractères ne doivent pas être des chiffres. Il est distingué entré minuscules et majuscules. ● Un deux-points doit être programmé derrière le nom de label à la desti‐ nation du saut. Programmation label dans un bloc CPL : 3.10.3 ● La destination du saut est programmée directement derrière le numéro du bloc, séparée par un caractère de séparation. ● Le nom label se compose d'un point décimal et des caractères ASCII sui‐ vants, une lettre majuscule étant son premier élément. ● Un label ne doit pas être une variable. GoAhead (GOA) Saut en avant sur un bloc CN standard Poursuit le déroulement du programme sans conditions sur une destination de saut (label). Pour le saut en avant s'applique ce qui suit : ● La destination du saut doit être définie. ● Par rapport au bloc actuel du programme, la destination du saut doit se trouver dans la direction de la fin du fichier. Programmation label requise, voir chap. 3.10 "Programmation label et instruc‐ tions de saut" à la page 41. Syntaxe : GoAhead <Label> Format abrégé : GOA avec <Label> Nom de la destination du saut. 2 à 32 caractères. Les lettres, caractères de souligne‐ ment et chiffres sont autorisés, mais les 2 premiers caractères ne doivent pas être des chiffres. Fig.3-5: Exemple : Syntaxe GoAhead : N40 GoAhead LABEL1 Saut en avant sur la destination du saut "LABEL1". : N80 LABEL1 : : Programmation label de la destination du saut "LA‐ BEL1". Il est interdit d'entrer dans ou de sortir d'une instruction de répétition CPL ou d'une instruction de branchement CPL à l'aide de l'ordre de saut CN standard "GoAhead". Pour les instructions CPL concer‐ nées, voir chap. 3.10.1 "Aperçu" à la page 41. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 43/550 Fondements de la programmation CN 3.10.4 GoBack (GOB) Saut en arrière sur un bloc CN standard Poursuit le déroulement du programme sans conditions sur une destination de saut (label). Pour le saut en arrière s'applique ce qui suit : ● La destination du saut doit être définie. ● Par rapport au bloc actuel du programme, la destination du saut doit se trouver dans la direction du début du fichier. Programmation label requise, voir chap. 3.10 "Programmation label et instruc‐ tions de saut" à la page 41. Syntaxe : GoBack <Label> Format abrégé : GOB avec <Label> Nom de la destination du saut. 2 à 32 caractères. Les lettres, caractères de souligne‐ ment et chiffres sont autorisés, mais les 2 premiers caractères ne doivent pas être des chiffres. Fig.3-6: Syntaxe GoBack Il convient de prendre en compte que, lors de la programmation des sauts en arrière, des boucles infinies non intentionnelles se forment facilement ! Exemple : : N40 LABEL1 : : N80 GoBack LABEL1 : Programmation label de la destination du saut "LA‐ BEL1". Saut en arrière sur la destination du saut "LA‐ BEL1". Si, entre N40 et N80, aucun autre ordre de saut n'est programmé, le programme continue entre N40 et N80 dans une boucle infinie ! Il est interdit d'entrer dans ou de sortir d'une instruction de répétition CPL ou d'une instruction de branchement CPL à l'aide de l'ordre de saut CN standard "GoBack". Pour les instructions CPL concernées, voir chap. 3.10 "Programmation label et instructions de saut" à la page 41. 3.10.5 GoCond (GOC) Saut conditionnel sur un bloc CN standard Poursuit le déroulement du programme à un numéro de bloc indiqué, dans la mesure où, sur l'interface canal, le signal d'entrée "Saut conditionnel" était actif au moment du traitement du bloc. Pour le saut conditionnel s'applique ce qui suit : ● Le numéro de bloc indiqué doit exister. ● La position du numéro de bloc indiqué au sein du fichier de programme peut être choisie à volonté, par rapport au bloc actuel du programme. 44/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN Syntaxe : GoCond N<Chiffre> Format abrégé : GOC avec <Chiffre> Numéro du bloc. Nombre en format entier ou réel avec 15 chiffres au maximum. Dans la mesure où le numéro du bloc cible est pro‐ grammé avec des zéros de tête (par ex. "N0020 ..."), les zéros de tête doivent également programmés ici. ("GoCond N0020"). Fig.3-7: Particularités et restrictions : Syntaxe GoCond ● A l'exception d'un numéro du bloc éventuellement programmé mis en tête, d'autres mots du programme ne sont pas permis dans le même bloc. ● Les modifications du signal d'interface du canal "Saut conditionnel" ap‐ portées entre la préparation et l'exécution du bloc ne sont pas prises en compte. Dans la mesure où ce comportement n'est pas admissible pour votre ap‐ plication, il convient de programmer la fonction "WAIT"" dans la ligne de programme précédente. Il convient de prendre en compte que, lors de la programmation des sauts vers le début du fichier, des boucles infinies non intention‐ nelles se forment facilement ! Exemple : 10 WAIT N20 GoCond N090 : : Arrêter le traitement du bloc jusqu'à ce que tous les blocs avant N20 aient été traités. Ensuite, saut sur bloc N090, si le signal d'interface "Saut conditionnel" est actif au moment du traite‐ ment du bloc de N20. : : N090 ... : Il est interdit d'entrer dans ou de sortir d'une instruction de répétition CPL ou d'une instruction de branchement CPL à l'aide de l'ordre de saut CN standard "GoCond". Pour les instructions CPL concer‐ nées, voir chap. 3.10 "Programmation label et instructions de saut" à la page 41. 3.10.6 GoTo Saut inconditionnel sur un bloc CN standard Poursuit le déroulement du programme sans conditions à partir d'un numéro de bloc quelconque. Pour le saut inconditionnel s'applique ce qui suit : ● Le numéro de bloc indiqué doit exister. ● La position du numéro de bloc indiqué au sein du fichier de programme peut être choisie à volonté, par rapport au bloc actuel du programme. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 45/550 Fondements de la programmation CN Syntaxe : GoTo N<Chiffre> avec <Chiffre> Numéro de bloc. Nombre en format entier ou réel avec 15 chiffres au maximum. Dans la mesure où le numéro du bloc cible est pro‐ grammé avec des zéros de tête (par ex. "N0020 ..."), les zéros de tête doivent également programmés ici. ("GoTo N0020"). Fig.3-8: Particularités et restrictions : Syntaxe GoTo A l'exception d'un numéro du bloc éventuellement programmé mis en tête, d'autres mots du programme ne sont pas permis dans le même bloc. Il convient de prendre en compte que, lors de la programmation des sauts vers le début du fichier, des boucles infinies non intention‐ nelles se forment facilement ! Exemple : : N40 GoTo N080 Saut en avant sur bloc N080. : N080 GoTo N40 Saut en arrière sur bloc N40. Si, entre N40 et N80, aucun autre ordre de saut n'est programmé, le programme continue entre N40 et N80 dans une boucle infinie ! : Il est interdit d'entrer dans ou de sortir d'une instruction de répétition CPL ou d'une instruction de branchement CPL à l'aide de l'ordre de saut CN standard "GoTo". Pour les instructions CPL concernées, voir chap. 3.10.1 "Aperçu" à la page 41. 3.10.7 Saut CPL (GOTO) Saut sur un bloc de programme quelconque Poursuit le déroulement du programme sans conditions à partir d'une destina‐ tion de saut. Pour le saut inconditionnel avec CPL s'applique ce qui suit : ● La destination de saut peut être un numéro de bloc CPL, un numéro de bloc CN standard ou un "label" (étiquette de saut). ● La position de la destination de saut au sein du fichier de programme peut être choisie à volonté, par rapport au bloc actuel du programme. Syntaxe : GOTO <Destination> Exemple : 10 GOTO N20 Saut sur le bloc N20 N20 X100 30 GOTO 120 Saut sur le bloc CPL 120 ... 120 GOTO .ZIEL1 Saut sur le label .ZIEL1 46/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN ... 150 .ZIEL1 Il est interdit de sauter à une instruction CASE–LABEL...LABEL– OTHERWISE–ENDCASE à l'aide du saut CPL GOTO. Conditions de la programmation label, voir chap. 3.10 "Programmation label et instructions de saut" à la page 41. 3.11 Instructions de décision et de branchement 3.11.1 Aperçu Les instructions de décision et de branchement servent à exécuter des blocs du programme individuels et des éléments du programme ou des sous-pro‐ grammes complets en fonction d'événements définis. A cet effet, l'IndraMotion MTX offre les possibilités suivantes : 3.11.2 ● Fonction "Ignorer bloc" pour les blocs CN standard (DIN) ● Instruction CPL IF-THEN-ELSE-ENDIF ● Instruction CPL CASE-LABEL...LABEL-OTHERWISE-ENDCASE Fonction "Ignorer bloc" Cette fonction permet à la commande d'ignorer des blocs CN standard (DIN) individuels. Pour ce faire, il suffit de programmer en début des lignes de pro‐ gramme correspondantes le caractère "/". Les blocs de programme caractérisés ne sont ignorés que si le signal d'inter‐ face "qCh_BlockSlash" (Ignorer bloc) est posé pour l'interface bit du canal concerné. Exemple : : Le signal d'interface "Ignorer bloc" est activé. : /N100 ... Le bloc N100 sera ignoré. : Le signal d'interface "Ignorer bloc" est désactivé. : /N300 ... Le bloc N300 sera exécuté. : La fonction "Ignorer bloc" ne peut être utilisée que pour les blocs CN standard (DIN) ! 3.11.3 Instruction CPL : IF-THEN-ELSE-ENDIF Cette fonction est une simple instruction conditionnelle de branchement : "Si (IF) une condition définie est remplie, alors (THEN) exécute cette routine, autrement (ELSE) exécute l'autre routine !". Syntaxe : IF <Condition> THEN <Routine> [ ELSE <Routine alternative>] ENDIF Pour cette instruction s'applique ce qui suit : ● La condition se trouve dans la même ligne que le "IF" et sera terminée par le "THEN" dans la même ligne. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 47/550 Fondements de la programmation CN ● Les routines THEN et ELSE sont des branchements du programme qui ne doivent pas être parcourues toujours. ● Si on renonce à la partie ELSE, le programme poursuit son déroulement immédiatement après l'instruction ENDIF, lorsque la condition n'est pas remplie. De manière similaire aux conditions d'interruption pour les instructions de bou‐ cles, les liaisons arithmétiques, trigonométriques et logiques peuvent être utilisées dans la condition de l'ordre IF. Une imbrication est également possible. L'ordre IF doit toujours être terminé avec une instruction ENDIF, car autrement la fin de la routine ou de la routine alternative ne sera pas reconnue. Etant donné que le positionnement de l'instruction ENDIF dépend de la logique du déroulement du programme, la commande ne peut pas toujours reconnaître de manière claire une instruction ENDIF manquante. Cela aura pour conséquence des messages d'erreur erronés. L'intégrité de l'ordre IF doit donc toujours être vérifiée par le programmeur. Exemple : ... 10 X = 1 20 .START 30 IF X>=100 THEN 40 GOTO .ENDE 50 ELSE X=X+2.75 60 GOTO .START 70 ENDIF ... 90 ENDE ... Il est interdit d'entrer dans ou de sortir d'une instruction IF-THENELSE-ENDIF à l'aide des ordres de saut CN standard "GoAhead", "GoBack", "GoCond", "GoTo". 3.11.4 Instruction CPL : CASE-LABEL...LABEL-OTHERWISE-ENDCASE Il s'avère souvent nécessaire au sein d'un programme d'interroger plus de 2 états d'une expression entière ou d'une variable entière. Dans de tels cas, une interrogation à l'aide de l'instruction IF n'est possible qu'à l'aide de plusieurs instructions IF imbriquées. Ceci requiert un temps de calcul élevé et diminue la lisibilité et la facilité d'entretien du programme. Ces inconvénients peuvent être évités grâce à la structure CASE : CASE <Expression INTEGER> OF LABEL <Constante INT>[ , <Constante INTEGER>][ : <Instruction>] <Instruction> : LABEL ... : [OTHERWISE <Instruction> <Instruction> :] ENDCASE 48/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN Le déroulement du programme est branché après l'instruction CASE vers l'ins‐ truction LABEL, pour laquelle une des <Constantes INT> est égale à la valeur de l'<Expression INTEGER>. Maintenant, toutes les instructions sont exécu‐ tées jusqu'à la prochaine instruction LABEL ou OTHERWISE. Ensuite, le programme passe directement à l'instruction ENDCASE. Si aucune instruction LABEL remplissant cette condition n'existe, le programme est branché vers l'instruction OTHERWISE, ou (si OTHERWISE n'a pas été programmé) directement vers l'instruction ENDCASE. Dans le domaine de l'<Instruction> d'une structure CASE, toutes les instruc‐ tions CPL peuvent être utilisées. L'imbrication de 10 structures CASE au maximum est possible. Exemples : 10 CASE A% OF 20 LABEL 0 : Y=1 30 LABEL 2 40 Y=Y*Y 50 LABEL 4 : Z=Y*Y 60 Y=Z*Z 70 OTHERWISE Y=0 80 ENDCASE 10 CASE (INT(X/Y)+C%) OF 20 LABEL 1.2 : X=1 : Y=2 30 LABEL 4.8 40 X=2 : Y=4 50 LABEL 0 60 X=0 : Y=1 70 OTHERWISE X=0 : Y=0 80 ENDCASE 10 CASE INTFELD%(1,2) OF 20 LABEL 1,2,3 : GOTO .MARKE1 30 LABEL 4,5,6 : GOTO .MARKE2 40 OTHERWISE GOTO .ENDE 50 ENDCASE Il est interdit d'entrer dans ou de sortir d'une instruction CASE-LA‐ BEL...LABEL-OTHERWISE-ENDCASE à l'aide des ordres de saut CN standard "GoAhead", "GoBack", "GoCond", "GoTo". Il est interdit de sauter à une instruction CASE–LABEL...LABEL– OTHERWISE–ENDCASE à l'aide du saut CPL GOTO. 3.12 Instructions de répétition 3.12.1 Aperçu Si un ou plusieurs blocs du programme, dépendant de conditions définies, est/ sont exécuté(s) à plusieurs reprises, il est possible de programmer cela dans Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 49/550 Fondements de la programmation CN le cadre des instructions de répétition CPL. L'exécution du programme à plu‐ sieurs reprises est également qualifiée de boucle. A cet effet, l'IndraMotion MTX offre les possibilités suivantes : 3.12.2 ● Instruction CPL FOR-STEP-TO_NEXT ● Instruction CPL REPEAT-UNTIL ● Instruction CPL WHILE_DO_END Instruction CPL : FOR-STEP-TO-NEXT Si la condition d'interruption pour l'instruction de répétition doit s'ensuivre di‐ rectement de l'exécution de la routine, un compteur, tournant en parallèle par exemple, est nécessaire. Celui-ci ne nécessite pas une programmation spéciale lors de la boucle FOR‐ NEXT. Une variable de comptage (ENTIÈRE) sera fixée dont ses états de début et de fin doivent être indiqués. Si le pas de comptage est différent de 1, la longueur de pas (STEP) peut être déterminée séparément. Syntaxe : FOR <Var. de comptage>=<Valeur de départ> [ STEP <Longueur de pas>] TO <Valeur d'arrivée><Routine> NEXT [<Variable de comptage>] Exemple : 10 FOR I%=0 TO 18 20 XSINUS(I%)=SIN(I%*10) 30 NEXT I% A la fin de la boucle, la variable de comptage a une valeur qui est supérieure à la valeur de fin (longueur de pas max.). Ici, les valeurs sinus de 0 à 180 degrés sont inscrites dans le tableau XSINUS. Le "I%" ajouté dans la ligne 30 à "NEXT" ne sert qu'à la clarification et peut être omis le cas échéant. Il est également possible de programmer des boucles FOR-NEXT avec une longueur de pas variable. La variable de la longueur de pas devrait alors avoir le même type de variable que la variable de comptage. Exemple : 10 20 30 40 50 60 70 Programme: OPENW(1,"P222",130) PAS%=2 : DEBUT%=1 : FIN%=3500 : NJUST POUR COMPTEUR%=DÉBUT% PAS PAS% À LA FIN% PAS%=ROUND(PAS%*SQRT(PAS%)) PRN#(1,"COMPTEUR : ",COMPTEUR%,"LONGUEUR DE PAS : " ,PAS%) NEXT CLOSE(1) À la fin de ce programme, il est inscrit dans le fichier "P222" : Exemple : COMPTEUR COMPTEUR COMPTEUR COMPTEUR COMPTEUR COMPTEUR COMPTEUR : : : : : : : Programme: LONGUEUR DE PAS : 4 LONGUEUR DE PAS 9 LONGUEUR DE PAS 20 LONGUEUR DE PAS 56 LONGUEUR DE PAS 272 LONGUEUR DE PAS 3447 LONGUEUR DE PAS 3 : : : : : : 5 11 36 216 3175 178902 50/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN Il est interdit d'entrer dans ou de sortir d'une instruction FOR-STEPTO-NEXT à l'aide des ordres de saut CN standard "GoAhead", "GoBack", "GoCond", "GoTo". 3.12.3 Instruction CPL : REPEAT-UNTIL Si la condition d'interruption pour l'instruction de répétition ne doit être interro‐ gée qu'après la première exécution de la routine, la boucle REPEAT peut être utilisée. Syntaxe : Exemple : REPEAT <Routine> UNTIL <Condition> : 30 REPEAT Boucle jusqu'à X = 100 40 X=X+1 50 UNTIL X=100 : Il est interdit d'entrer dans ou de sortir d'une instruction REPEATUNTIL à l'aide des ordres de saut CN standard "GoAhead", "Go‐ Back", "GoCond", "GoTo". 3.12.4 Instruction CPL : WHILE-DO-END Si la condition d'interruption pour l'instruction de répétition doit être interrogée avant la première exécution de la boucle, il est possible de formuler ce qui suit : "Pendant que (⇒en anglais "while") la condition est remplie, exécute (⇒en an‐ glais "to do") la routine !". La boucle WHILE est structurée de manière suivante : Syntaxe : WHILE <Condition> DO <Routine> END Exemple : : 30 WHILE SD(9)=0 DO Boucle d'attente jusqu'à ce que SD(9) ait la valeur 0. 40 I=I+1 50 END : Il est interdit d'entrer dans ou de sortir d'une instruction WHILE-DOEND à l'aide des ordres de saut CN standard "GoAhead", "Go‐ Back", "GoCond", "GoTo". 3.13 Programmation des variables 3.13.1 Noms des variables La programmation des variables fait partie intégrante du langage CPL ! La programmation des variables en CPL sert à rendre les programmes para‐ métrables et à adapter ainsi le déroulement du programme aux conditions actuelles. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 51/550 Fondements de la programmation CN ● Les variables sont des noms de symbole quelconques pour lesquels quel‐ ques conditions secondaires spéciales sont valables : ● – Les noms des variables doivent être univoques. – Les noms des variables ne doivent pas être identiques aux mots d'ordres CPL réservés. Du fait de la séparation formelle entre les programmations CN stan‐ dard et CPL, il est théoriquement possible que les noms des varia‐ bles soient conformes aux noms des fonctions CN ou des paramètres de fonction CN ; une variable "X" pourrait p. ex. être dé‐ finie bien qu'il existe en même temps un axe avec la désignation "X" dans le système. – Le nom de variable se compose d'une série quelconque de lettres majuscules et de chiffres, le premier caractère devant être une lettre majuscule. Un nom de variable se composant de la lettre "N" suivie par les chiffres n'est pas un nom de variable valable. Cet ordre de caractères correspond à la caractérisation d'un bloc CN. Seuls les premiers 8 caractères du nom de variable sont significa‐ tifs, c'est-à-dire uniquement les premiers 8 caractères sont utilisés pour la différenciation du nom (exception : variables permanentes définissables). ● Exemples : 3.13.2 3 groupes de variables déterminant la plage de validité des variables exi‐ stent au total. Le groupe de variables est déterminé par une caractérisa‐ tion au début du nom de variable. Ce caractère compte toujours parmi les positions significatives du nom ! Il existe les groupes de variables suivants avec leur caractérisation correspondante : – Variables locales : aucune caractérisation spéciale – Variables globales : "#" – Variables permanentes : "@" ● Le type de variable est toujours déterminé par une caractérisation à la fin du nom de variable. Cela est également valable si le nom de variable dépasse le nombre des positions significatives. Il existe les types de va‐ riables suivants avec leur caractérisation correspondante : ● – INTEGER : "%" – DOUBLE : "!" – BOOLEAN : "?" – CHARACTER : "$" – REAL : sans caractérisation particulière Variables locales, globales et permanentes : 10 ANZAHL1% = 1 variable INTEGER locale 20 #ANZAHL2% = 2 variable INTEGER globale 30 @36% = 3 variable INTEGER permanente 40 @ABCD% = 4 variable INTEGER permanente définie Groupes de variables Introduction Des accords en ce qui concerne la plage d'effet de variables sont nécessaires du fait de la possibilité d'utiliser des sous-programmes et de la nécessité éven‐ 52/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN tuelle de mettre les valeurs de variables dans la mémoire intermédiaire indé‐ pendamment du programme concerné. A cet effet, on distingue entre les groupes de variables décrits ci-dessous. Variables locales Les variables locales n'ont un effet qu'au sein du programme dans lequel elles sont convenues. Après la fin de ce programme, ces variables sont effacées et la mémoire occupée est libérée. Lors d'un appel de sous-programme, un nom de variable local pour le programme appelant n'est pas "visible" pour le sousprogramme. C'est pourquoi il est possible que le nom de variable y soit convenu également de manière locale sans que les deux variables ne s'influencent mu‐ tuellement. Lors du retour dans le programme appelant, la variable locale originale est de nouveau à disposition avec la valeur affectée immédiatement avant l'appel de sous-programme. Variables globales Les variables globales sont caractérisées par un caractère # mis en tête. Après la première attribution d'une valeur à une variable globale, elle peut être lue ou modifiée à partir de toutes les parties du programme pour la durée restante du programme complet. Les variables globales sont effacées après la fin du pro‐ gramme. La validité des variables globales est toujours limitée à une unité de liaison ! (pour des explications relatives aux unités de liaison, voir chap. 3.3.4 "Unités de liaison" à la page 19) Variables permanentes Les variables permanentes sont également caractérisées par un caractère @ mis en tête, suivi du nom de la variable. Elles peuvent être adressées par cha‐ que programme actif. Les variables permanentes se trouvent dans une zone d'enregistrement séparée et sont conservées après toute fin de programme, après la remise à zéro et après la mise hors/en service. L'effacement n'est possible que par le remplacement direct. Sous la désignation @1 à @100, les variables permanentes du type INTEGER peuvent être adressées (signification du type INTEGER, voir chap. 3.13.3 "Types de variables" à la page 56) Afin d'améliorer la lisibilité du programme, la désignation de telles variables permanentes peut être complétée par les let‐ tres ajoutées au chiffre. En outre, il est possible d'utiliser la variable de tableau unidimensionnel @_R avec 100 éléments du type "DOUBLE". Les deux variables permanentes @_RES_DOUBLE et @_RES_DWORD sont réservées pour des applications internes et ne devraient pas être utilisées. Variables permanentes définissables Les variables permanentes définissables sont également caractérisées par un caractère @ mis en tête, suivi du nom de la variable. Les différences par rapport aux "variables permanentes" sont les suivantes : ● Elles ne feront pas automatiquement partie du logiciel du système, mais doivent être manuellement déclarées par inscription dans les fichiers "wmhperm.dat" (pour les données spécifiques à WMH) et "anw‐ perm.dat" (pour les données spécifiques aux utilisateurs finaux). Vous trouverez la syntaxe pour la déclaration sous 'Structure du fichier" de "wmhperm.dat" et "anwperm.dat". Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 53/550 Fondements de la programmation CN Pendant le démarrage, la commande cherche ces fichiers d'abord dans le répertoire racine, puis dans le FEPROM utilisateur et ensuite dans le FEPROM. Le premier fichier trouvé sous chaque nom est évaluée par la commande, et elle génère à partir des inscriptions s'y trouvant des "variables perma‐ nentes définissables" dans la mesure où elles n'existent pas encore. Les "variables permanentes définissables" existantes qui ne sont pas décla‐ rées dans un des deux fichiers sont effacées. Le nombre maximal possible de variables permanentes définissables est limité par l'espace mémoire mis à disposition. Si, pour la génération des variables, il n'existe plus de mémoire, la commande sort un message d'erreur correspondant. ● Les noms des "variables permanentes définissables" commencent tou‐ jours avec le caractère @ et une chaîne de caractères. Cette chaîne de caractères se compose d'une lettre majuscule, suivie de lettres majuscu‐ les ou de chiffres à volonté. Pour les "variables permanentes définissables", les premières 16 posi‐ tions du nom de variable sont significatives. Si elles ne se distinguent qu'à partir de la 17ème position, CPL les interprète en tant qu'une seule va‐ riable ! ● ● Les variables permanentes définissables peuvent être du type INTEGER, REAL, DOUBLE, BOOLEAN ou CHARACTER. Le type de variable est déterminé par une caractérisation à la fin du nom de variable. Cette ca‐ ractérisation doit être indiquée dans le programme pièce : – @ABCD% variable perm. déf. du type INTEGER – @EFGH variable perm. déf. du type REAL (sans %, !,$ ou ?) – @IJKL! variable perm. déf. du type DOUBLE – @MNOP? variable perm. déf. du type BOOLEAN – @QRST$ variable perm. déf. du type CHARACTER Les tableaux uni- et bidimensionnels peuvent être utilisés. L'index maximal pour les variables de tableau du type INTEGER, REAL, DOUBLE ou BOOLEAN est de 65535. Pour les variables de tableau du type CHARACTER, il s'élève à 1024. Exemples : @WZNR%(1)=4 La valeur 4 est attribuée à la première variable (avec l'index 1) du tableau unidimensionnel @WZNR du type INTEGER. @WZKOR(2,2)=0.2 A la variable (avec l'indice 2,2), au sein du tableau bidimensionnel @WZKOR du type REAL, est attri‐ buée la valeur 0,2. ● Estimation du nombre de variables permanentes définissables disponi‐ bles : Espace mémoire total pour variables permanentes : 100 koctets (102400 octets) 54/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN Pos. Réservé pour Espace mémoire en oc‐ Remarque tets 1 toutes les variables perma‐ nentes 102400 @1 - @100 800 espace mémoire total dont réservé pour 2 (variables permanentes) 3 informations administratives 24 4 toutes les variables perma‐ nentes définissables 101576 (4) = (1) - (2) - (3) 5 @_R 823 variable de tableau permanente avec 100 élé‐ ments du type DOUBLE 6 @_RES_DOUBLE 40 tableau de données permanent du type DOU‐ BLE, réservée pour les applications internes 7 @_RES_DWORD 35 variable permanente du type INTEGER, réservée pour les applications internes 8 nouvelles variables perma‐ nentes définissables 100678 (8) =(4) - (5)- (6) - (7) dont réservé pour Fig.3-9: Espace mémoire pour toutes les variables permanentes Toute variable permanente définissable occupe l'espace mémoire suivant : Pos. Réservé pour Espace mémoire en oc‐ Remarque tets 9 le nom des variables perma‐ nentes définissables 16 au maximum 10 la valeur de la variable perma‐ 1, 4 ou 8 nente définissable 1 octet par caractère INTEGER : 4 octets DOUBLE : 8 octets REAL : 4 octets BOOLEAN : 1 octet 11 informations administratives 12 une variable permanente défi‐ 44 nissable du type DOUBLE avec un nom se composant de 16 caractères Fig.3-10: 20 par ex. : occupation maximale de l'espace mé‐ moire (9) + (10) + (11) Espace mémoire pour les variables permanentes définissables Nombre des "variables permanentes définissables" du type DOUBLE et INTE‐ GER : Type de variable Nombre de varia‐ Remarque bles Type DOUBLE avec un nom se composant de 16 caractères au maximum 2288 100678/44 = 2288 Type INTEGER avec un nom se composant de 16 caractères au maximum 2516 100678/(16+4+20) = 2516 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 55/550 Fondements de la programmation CN Type de variable Nombre de varia‐ Remarque bles Type INTEGER avec un nom se composant de 8 caractères au maximum 3146 100678/(8+4+20) = 3146 Variables de tableau avec un nom se composant de 16 caractères au maximum 25160 (100678-16-20)/4 = 25160 12580 (100678-16-20)/8 = 12580 Type INTEGER Variables de tableau avec un nom se composant de 16 caractères au maximum Type DOUBLE Fig.3-11: Structure de fichier du "wmhperm.dat" et "anwperm.dat" : Nombre des "variables permanentes définissables" Les fichiers ne doivent contenir que les déclarations des "variables permanen‐ tes définissables". Chaque déclaration est effectuée dans une ligne séparée et terminée avec la touche Entrée. Une ligne de déclaration a toujours la structure suivante : DEF <Type de variable> @ <Nom de variable> ;[<Commentaire>] Le caractère de séparation " ;" doit également être écrit, même si aucun commentaire ne suit. Exemples pour "wmhperm.dat" et "anwperm.dat" : Exemples d'application pour les va‐ riables permanentes : DEF INT @CDEF DEF INT @ABCD ;variable INTEGER simple DEF REAL @EFGH ;variable REAL simple DEF DOUBLE @IJKL ;variable DOUBLE simple DEF BOOL @MNOP ;variable BOOLEAN simple DEF CHAR @PSTR1(3) ;variable CHARACTER avec longueur 3 DEF INT @WZNR(9) ;tableau INTEGER unidimensionnel avec 9 varia‐ bles DEF INT @WZKOR(9,2) ;tableau REAL bidimensionnel avec 18 variables DEF CHAR @PSTR2(9,2) ;tableau CHARACTER bidimensionnel avec 9 chaî‐ nes partielles à 2 caractères chacune 10 @1 = 1 15 @2_ZAEHLER = 2 20 @ABCD% = 3 25 @EFGH = 4.1 30 @IJKL! = 5.12345 35 @MNOP? = TRUE 40 @PSTR1$ = "ABC" 45 @WZNR%(2) = 6 50 @WZKOR(3,2) = 7.6 55 @PSTR2$(3) = "DE" 56/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN Variables structurées Les variables structurées peuvent être remplacées par les données système (SD), mais sont conservées pour des raisons de compatibilité (voir chap. 7.9 " Données système" à la page 374). Les variables structurées sont caractérisées par des différents niveaux de structure qui sont séparés dans la représentation par un point ("."). Les varia‐ bles structurées commencent toujours avec un "SV.". Toutes les variables structurées auxquelles le système doit accéder dans une instruction CPL, doivent être déclarées manuellement par inscription dans le fichier "machdef.dat". Pendant le démarrage, la commande cherche le fichier "machdef.dat" d'abord dans le répertoire racine, puis dans le FEPROM utilisa‐ teur et ensuite dans le FEPROM. Le premier fichier trouvé est évalué lors du démarrage de la CN et les données administratives ainsi que la mémoire pour les données utiles des variables structurées sont créées. Lors de chaque dé‐ marrage, la mémoire est créée de nouveau et toutes les valeurs sont mises à 0. Le fichier "machdef.dat" sert uniquement à la définition des variables structu‐ rées. Chaque définition se trouve dans une ligne séparée et est terminée par un point-virgule. Une ligne de définition a toujours la structure suivante : DEF<Type de variable> SV.<Nom de variable> ; [<Commentaire>] <Type de variable> et <Nom de variable> sont des chaînes pouvant être com‐ posées de lettres minuscules ou majuscules, de chiffres, du trait d'union et du caractère de soulignement. Pour tous les noms de variables, les premières 16 positions du nom de variable sont significatives. Si elles ne se distinguent qu'à partir de la 17ème position, CPL les interprète en tant qu'une seule va‐ riable ! Exemple : DEF DBT1Rec_t SV.A; Définition d'une variable structurée du type "DBT1Rec_t" Les instructions CPL peuvent accéder non seulement à SV.A, mais également à tous les composants de SV.A. Les différents composants sont séparés l'un de l'autre par un ".". Exemple : 3.13.3 10 SV.A.Hd=DBSEA("DBT1",-1,-1,"K1=1",FOUND%) Types de variables Variable entière (INTEGER Une variable INTEGER requiert 32 bits de la mémoire. Elle est caractérisée par le caractère "%" ajouté au nom de la variable. La plage de valeur s'étend de -2.147.483.647 jusqu'à +2.147.483.647. Variable à virgule flottante (REAL) Si aucune caractérisation spéciale n'est postposée au nom de variable, la va‐ riable est interprétée comme variable REAL simple précision. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 57/550 Fondements de la programmation CN Dans ce cas, une variable occupe 32 bits de la mémoire. La plage de valeur s'élève à +/-1038. Ceci correspond à 7 positions significatives. Variable à virgule flottante (DOUBLE) Si un caractère "!" est postposé au nom de variable, la variable est interprétée comme variable REAL double précision. Dans ce cas, une variable occupe 64 bits de la mémoire. La plage de valeur s'élève à +/-10308. Ceci correspond à 15 positions significatives. Variable logique (BOOLEAN) La caractérisation s'effectue par un "?" postposé au nom de variable. Les va‐ riables logiques (variables bouléennes) ne peuvent avoir que la valeur TRUE (= vrai) ou FALSE (=faux, non vrai). Les états ou conditions logiques requis pour l'exécution ultérieure du programme y sont mémorisés. Variable de tableau (ARRAY) Avec les variables ARRAY, il est possible de réserver sous un seul nom de variable un tableau uni- ou bidimensionnel (Array) dans la zone de mémoire, qui est composé de plusieurs variables du même type. Les définitions de tableau sont possibles pour les variables du type INTEGER, REAL, DOUBLE, BOOLEAN et CHARACTER. Afin de pouvoir accéder aux différents éléments d'un tableau, il convient d'indiquer non seulement le nom de la variable de tableau, mais également son index ou ses indices. Exemple : Dimensionnement d'une variable ARRAY Exemple : Accès à la variable ARRAY 100 FELDVAR(1,1) = MCS(1) 110 FELDVAR(2,1) = PCS(1) 120 FELDVAR(1,2) = MCS(2) 130 FELDVAR(2,2) = PCS(2) 140 FELDVAR(1,3) = MCS(3) 150 FELDVAR(2,3) = PCS(3) Avant le premier accès au tableau, il convient de dimensionner la plage de l'index ou la dimension de la variable de tableau au moyen des constantes INTEGER : ● Dimension de la variable de tableau du type INTEGER et REAL : 58/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN 65536 au maximum ● Dimension de la variable de tableau du type CHARACTER : 1024 au maximum DIM <Nom de variable> (<Taille du tableau1>[,<Taille du tableau2>] ) Le dimensionnement avec DIM ne doit pas être utilisé pour les "variables permanentes définissables". Le dimensionnement de ces variables s'effectue dans le fichier "wmhperm.dat" ou "anwp‐ werm.dat". Variables CHARACTER etSTRING Une variable CHARACTER est caractérisée par le caractère "$" postposé. Il est possible d'enregistrer dans ce type de variable aussi bien un caractère uni‐ que qu'une chaîne de caractères (STRING) complète. Les instructions relatives aux chaînes de caractères (voir section "Traitement des chaînes de caractères") ne sont possibles cependant que si une chaîne de caractères est sauvegardée dans un tableau (ARRAY) uni- ou bidimensionnel de variables CHARACTER. Pour ce faire, le tableau doit être déclaré à l'aide de l'instruction DIM. Chaque variable CHARACTER dans ce tableau contient alors 1 caractère de la chaîne de caractères. Un tableau unidimensionnel des variables du type CHARACTER est appelé variable STRING. Lors de l'accès à des variables CHARACTER unidimension‐ nelles, aucun index n'est indiqué. En revanche, un index doit être indiqué pour l'accès aux variables CHARACTER bidimensionnelles. Exemple : 1 REM variable STRING AB (longueur 10) 2 DIM AB$(10) 3 REM 3 variables STRING CD (longueur 5 chacune) 4 DIM CD$(3,5) 5 AB$ = "Z" 6 CD$(2) = "ABC" Aperçu des variables Groupe de varia‐ Nom de variable bles locales 8 caractères significatifs au maximum Type de varia‐ Tableaux ble (AR‐ RAYS) possibles (X=oui) % INTEGER X REAL X ! DOUBLE X ? BOOLEAN X $ CHARAC‐ TER X Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 59/550 Fondements de la programmation CN Groupe de varia‐ Nom de variable bles Type de varia‐ Tableaux ble (AR‐ RAYS) possibles (X=oui) % INTEGER X REAL X y compris caractère "#", 8 caractères ! DOUBLE X significatifs au maximum ? BOOLEAN X globales# permanentes@ permanentes définissables@ $ CHARAC‐ TER X % INTEGER X REAL X 1 - 100 16 caractères significatifs au maxi‐ ! DOUBLE X mum ? BOOLEAN X $ CHARAC‐ TER Fig.3-12: 3.13.4 X Aperçu des variables Variables dans la programmation CN standard Il se fait souvent qu'on veut paramétrer à l'aide de variables les fonctions CN ou les paramètres de fonctions CN dans un programme pièce au sein de la programmation CN standard (DIN). Lors de cette attribution de valeurs, il faut faire attention à ce que les expres‐ sions CPL au sein de la programmation CN standard soient mises entre crochets "[" et "]". Exemples : Paramétrage des blocs CN standard : 10 ANGLE = 45 20 VAL1 = 1.5 30 VAL2 = 1.5 40 XPOS = 10.2 50 YPOS = 5.73 60 FEEDRATE = 1000 N70 Rotate([ANGLE]) N80 Scale (X[VAL1],Y[VAL2]) N90 G1 X[POS] Y[POS] F[FEEDRATE] Il est impossible de paramétrer le numéro de bloc au moyen des variables CPL ! Toutes les adresses appelant un sous-programme ne sont pas destinées à l'écriture variable ! 60/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN 3.13.5 Variable ERRNO pour l'analyse des erreurs des fonctions CPL ERRNO Il est possible de transmettre à une fonction CPL pouvant générer une erreur d'exécution en cas d'erreur la variable CPL ERRNO en tant que paramètre de transfert, dans laquelle la fonction appelée signale les erreurs. La variable CPL ERRNO est un paramètre optionnel qui peut être programmé dans les fonctions CPL, dans lesquelles il est déclaré en tant que paramètre. Là il est programmable en n'importe quelle position. Si ERRNO n'est pas programmé, la fonction CPL génère une erreur d'exécution ou un avertissement en cas d'erreur. Lors de la programmation de ERRNO, la fonction CPL ne génère aucune erreur d'exécution et aucun avertissement. Dans ce cas, la variable CPL ERRNO doit être analysée dans le programme CPL, et une erreur d'exécution ou un aver‐ tissement doit être générée explicitement respectivement avec SETERR ou SETWARN. En cas de l'exécution correcte de la fonction CPL, ERRNO a la valeur 0. Les erreurs sont signalées par des valeurs négatives. La signification des valeurs négatives est généralement valide, cependant toutes les valeurs ne sont pas applicables à chaque fonction CPL. Les valeurs d'erreur possibles pour une fonction CPL sont mentionnées ensemble avec la fonction correspondante. Liste des valeurs d'erreur généralement valables : 0: Accès OK. -1: Erreur de paramètre. -2: La coordonnée/L'axe n'existe pas. -3: La coordonnée/L'axe est inadmissible dans le canal. -4: L'axe n'est pas une pseudo-coordonnée. -5: Le canal n'existe pas. -6: La fonction ne peut être appelée que dans son canal propre. -7: Impossible de lire les données. -8: Nom du fichier source, y compris le chemin, trop long. -9: Impossible d'accéder au fichier source. -10: Nom du fichier cible, y compris le chemin, trop long. -11: Nom du fichier (source ou cible) inadmissible. -12: Impossible de copier. -13: Impossible d'écrire les données. -14: Le tableau XML existe. -15: Impossible de trouver le tableau XML. -16: Extension du fichier non valable. -17: Type de tableau invalide. -18: Position d'insertion erronée. -19: Nombre d'axes maximum dépassé. -20: Root-Tag erroné. -21: Impossible d'accéder au fichier. -22: Clé non valable. -23: Jeu de données est bloqué. -24: Aucun droit de lecture pour le fichier. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 61/550 Fondements de la programmation CN Exemple : -25: Aucun droit d'écriture pour le fichier. -26: Ordre avec valeur de paramétrage non valable. -27: Ordre avec type de paramètre non valable. -28: Erreur lors de l'accès au tableau XML. -29: Faux index du tableau. -30: Espace mémoire insuffisant. -31: Condition de recherche erronée. -32: Un jeu de données dans cet tableau de base de données est bloqué. -33: Le jeu de données n'est pas bloqué dans le canal. -34: Variable non affectée sur le côté droit de l'attribution. -35: Erreur interne lors de l'accès aux données système. Lire la position de l'axe X du canal dans le premier canal. Ce faisant, il est alternativement possible de programmer une des quatre lignes suivantes avec le même effet : 10 POS = ACS("X",1,1,ERRNO) 10 POS = ACS("X",1,ERRNO,1) 10 POS = ACS("X",ERRNO,1,1) 10 POS = ACS(ERRNO,"X",1,1) 3.14 Informations générales relatives au système 3.14.1 Données administratives VERSINF$ A l'aide de VERSINF$, il est possible d'interroger les données administratives de l'IndraMotion MTX dans le programme CPL. La fonction fournit une valeur du type STRING. Syntaxe : VERSINF$(<Index1>[,<Index2>]) <Index1> Type de constante INTEGER. Mode fonction : 1: Lire la version du logiciel. 2: Lire la version du matériel. <Index2> Type INTEGER. Mode supplémentaire de la fonction, dépendant de la valeur du paramètre <Index1>. <Index1> = 1 : Aucun mode supplémentaire disponible <Index1> = 2 : Mode supplémentaire : 1: Type matériel (par défaut) 2: N° du groupe de commuta‐ tion 3: Index du n° du groupe de commutation Fig.3-13: Syntaxe VERSINF$ 62/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN Exemple : 10 DIM SYS_INFO$(50) 20 SYS_INFO$ = VERSINF$(1) 30 PRN#(0,"Software-Version: ", SYS_INFO$) M30 3.14.2 Erreurs et avertissements SETERR Une erreur de durée d'exécution peut être générée avec l'ordre CPL SETERR à la suite de l'exploitation de ERRNO. Le programme pièce est ainsi interrompu à cette position. Le texte indiqué dans la <Chaîne d'erreur> est toujours affiché, indépendamment du langage actuellement configuré. Le paramètre optionnel <Mode> permet de contrôler dans le canal actuel si le nom du pro‐ gramme pièce et la ligne actuelle du programme pièce sont également affichés. En cas d'une sortie dans un autre canal, seul le texte indiqué est affiché. Syntaxe : SETERR(<Chaîne d'erreur>[,[<Canal>]][,<Mode>]) avec <Chaîne d'erreur> Texte affiché en tant qu'erreur (sous le code erreur de Wera 3371). <Canal> Numéro du canal dans lequel l'erreur doit être signalé. Si le <Canal> n'est pas indiqué, le canal actuel est utilisé en tant que valeur par défaut. <Mode> Définit, si le nom du programme pièce et la ligne du programme pièce sont également sortis dans le canal actuel. 0: aucune sortie d'informations relatives au programme pièce 1: sortie du nom du programme pièce et de la ligne du programme pièce. Si <Mode> n'est pas indiqué, 0 est utilisé en tant que valeur de défaut. ERRNO Variable CPL, programmable à une position quel‐ conque dans les parenthèses. Avec ERRNO, une erreur d'exécution n'est pas générée en cas d'erreur. Les valeurs de retour sont : 0: Accès OK. -1: Erreur de paramètre. -5: Le canal n'existe pas. Fig.3-14: Exemple : Syntaxe SETERR Lire la position de l'axe X du canal dans le premier canal. 10 POS = ACS("X",1,1,ERRNO) 20 IF ERRNO <> 0 THEN 30 SETERR("impossible de lire la position") 40 ENDIF Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 63/550 Fondements de la programmation CN SETWARN Une erreur d'exécution peut être générée avec l'ordre CPL SETWARN à la suite de l'exploitation d'ERRNO, l'exécution du programme pièce continuant. Le tex‐ te indiqué dans le paramètre <Chaîne d'avertissement> est toujours édité, indépendamment du langage actuellement configuré. Le paramètre op‐ tionnel <Mode> permet de contrôler dans le canal actuel si le nom du program‐ me pièce et la ligne actuelle du programme pièce sont également affichés. En cas d'une sortie dans un autre canal, seul le texte indiqué est sorti. Syntaxe : SETWARN(<Chaîne d'avertissement>[,[<Canal>]][,<Mode>]) avec <Chaîne d'avertissement> Texte sorti en tant qu'avertissement (sous le code er‐ reur de Wera 3372). <Canal> Numéro du canal dans lequel l'avertissement doit être sorti. Si le <Canal> n'est pas indiqué, le canal actuel est utilisé en tant que valeur par défaut. <Mode> Définit, si le nom du programme pièce et la ligne du programme pièce sont également sortis dans le canal actuel. 0: aucune sortie d'informations relatives au programme pièce 1: sortie du nom du programme pièce et de la ligne du programme pièce. Si <Mode> n'est pas indiqué, 0 est utilisé en tant que valeur de défaut. ERRNO Variable CPL, programmable à une position quel‐ conque dans les parenthèses. Avec ERRNO, une er‐ reur d'exécution n'est pas générée en cas d'erreur ; les valeurs de retour sont : 0: Accès OK. -1: Erreur de paramètre. -5: Le canal n'existe pas. Fig.3-15: Syntaxe SETWARN CLRWARN A l'aide de l'ordre CLRWARN, il est possible d'effacer tous les avertissements d'un canal générés par SETWARN. 64/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN Syntaxe : CLRWARN([<Canal>] ) avec <Canal> Numéro du canal dans lequel tous les messages d'aver‐ tissement doivent être effacés. Si le <Canal> n'est pas indiqué, le canal actuel est utilisé en tant que valeur par défaut. ERRNO Variable CPL, programmable à une position quel‐ conque dans les parenthèses. Avec ERRNO, une erreur d'exécution n'est pas générée en cas d'erreur ; les valeurs de retour sont : 0: Accès OK. -1: Erreur de paramètre. -5: Le canal n'existe pas. Fig.3-16: Exemple : Syntaxe CLRWARN 10 CLRWARN(,ERRNO) 20 IF ERRNO <> 0 THEN 30 SETWARN("avertissements non effacés") 40 ENDIF 3.14.3 Informations relatives aux variables VARINF L'instruction VARINF permet d'interroger dans le programme pièce, si une date du système structurée ou une variable permanente existe. L'instruction donne une 1 en tant que résultat, si la variable indiquée existe. Si la variable indiquée n'existe pas, la commande fournit une 0. Syntaxe : VARINF(<Nom de variable>) avec <Nom de variable> Fig.3-17: Exemple : Nom de la date du système structurée ou de la variable permanente. Syntaxe VARINF 10 DIM A$(20) 10 I% = VARINF("@_RES_DOUBLE") ... 40 A$ = "SD.SysSRun[1].Active" 50 J% = VARINF(A$) ... 3.15 Mots d'ordre réservés Les notions clés citées ici doivent être positionnées séparément ou être limitées par des caractères spéciaux. Ainsi, elles sont reconnaissables en tant que mots d'ordre. Lors de la sélection des noms de variables, ne pas utiliser les mots d'ordre réservés ! Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 65/550 Fondements de la programmation CN Exemple : Notions clé : A: ABS B: GOTO 10 Saut à la ligne 10 GOTO10 Nom de symboles (variable) quelconque ; s'il est placé seul, il entraîne un message d'erreur "Erreur d'exécution 2167 = man‐ que", parce qu'une attribution de valeur est attendue pour la variable "GOTO10". . BCD C: CALL D: DATE ACOS BIN CASE DBSEA AND BITIF CHR$ DBTAB APOS CLOCK DCT ASC CLOSE DIM ASIN CLRWARN DIRCR ATAN COF DIRDEL AXO COS DIRINF AXP CPROBE DO DPC E: ELSE F: FALSE G: GETERR I: GOTO IF END FILEACCESS INP# ENDIF FILECOPY INSTR ENDCASE FILEDATE INT EOF FILENO ERASE FILEPOS ERRNO FILESIZE FOR FXC FXCR FXDEL FXINS L: LABEL M: MCODS N: NCF O: OF LEN MCOPS NEXT OPENR LJUST MID$ NJUST OPENW MMC NOT OTHERWISE NUL OR 66/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN P: PDIM R: REM S: SCL T: TAN PMT REPEAT SCS TCV PMV REWRITE SCSL THEN PPOS ROUND SD TIME PRN# SDR TO PROBE SEEK TRIM$ SETERR TRUE SETWARN SIN SPOS SQRT STEP STR$ U: UNTIL V: VAL W: VERSINF$ Z: WAIT WHILE X: XOR XTAB ZOT ZOV Fig.3-18: 3.16 Instructions CPL 3.16.1 Attribution de valeur Notions clé Attribution Il est possible d'attribuer des valeurs aux variables locales et globales. Ceci s'effectue avec le signe égal "=". Exemple : Attribution de valeur pour une variable BOOLEAN Exemple : Attribution de valeur pour une variable REAL Exemple : Attribution de valeur entre variables Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 67/550 Fondements de la programmation CN La variable à laquelle une valeur doit être attribuée doit se trouver à gauche du caractère d'attribution, la valeur concernée à sa droite. Cet accord doit être surtout considéré, si une valeur de variable doit être attribuée à une autre va‐ riable. NUL Si aucune valeur n'a été attribuée à une variable, elle a la valeur NUL, c'est-àdire la déclaration <Variable>= NUL est vraie. Ici, il est possible de reconnaître que le signe égal peut se trouver également dans des comparaisons ou des conditions. Si une variable locale ou globale doit être effacée, ceci est possible à l'aide de l'attribution de la valeur NUL. Une variable permanente ne peut pas être effa‐ cée, mais seulement être remplacée. Exemple : Effacement d'une variable Programme: 1 2 3 4 3.16.2 XSOLL = NUL IF XSOLL = NUL THEN PRN#(0,"Variable non occupée.") ENDIF Operations mathématiques Fonctions simples Outre l'attribution d'une valeur en tant qu'expression de constante (chiffres) ou en tant que variable, il est également possible d'attribuer la valeur d'une ex‐ pression CPL à une variable. Une expression CPL peut inclure les fonctions avec des constantes et des variables. Les fonctions les plus simples comprennent les opérations élémentaires : ● Addition "+" ● Soustraction "-" ● Multiplication "*" ● Division "/" Les "opérations à point sont prioritaires sur les opérations à trait", c'est-à-dire la multiplication et la division sont effectuées avant l'addition et la soustraction. En plus, il est possible d'utiliser des parenthèses, dont leur imbrication à 7 ni‐ veaux est possible pour les expressions simples (sans appels de fonctions). Exemple : 1 I% = 25: XHABEN = 10 2 XSOLL = 150/(100-I%)+XHABEN XSOLL a la valeur 12 Il est en outre également possible d'appeler des fonctions mathématiques ay‐ ant un effet sur les variables, constantes ou expressions CPL qui doivent se trouver immédiatement après le mot d'ordre concerné entre parenthèses. La fonction se réfère toujours à la représentation interne des chiffres de la valeur entrée. Il est possible de contrôler celle-ci lors de l'exécution du programme sous "contrôle du programme". En cas d'expressions imbriquées, surtout celles avec des appels de fonctions, il convient de considérer la profondeur possible de l'imbrication qui dépend de la mémoire requise pour les expressions entre parenthèses pendant l'exécution. 68/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN ABS Représente la valeur absolue de la valeur entrée, c'est-à-dire les valeurs né‐ gatives deviennent positives, les valeurs positives restent positives. Exemple : 1 I% = -125 2 XWERT = 2*SQRT(ABS(100+I%)) XWERT a la valeur 10 INT INT transforme la valeur de l'entrée (REAL) en un chiffre entier (INTEGER) en coupant les chiffres après la virgule (arrondissement au chiffre inférieur). La valeur entrée peut être une constante ou une variable. Exemple : 1 XWERT% = INT(10.9) XWERT a la valeur 10 ROUND ROUND convertit la valeur entrée par arrondissement au chiffre supérieur ou inférieur en un chiffre entier (INTEGER). La valeur entrée peut être une ex‐ pression REAL. Exemple : 1 XWERT% = Round(10.9) XWERT a la valeur 11 2 XWERT% = Round(5.5) XWERT a la valeur 6 3 XWERT% = Round(5.49) XWERT a la valeur 5 SQRT Forme la racine carrée d'une valeur entrée. La valeur entrée ne doit pas être négative en ce moment, étant donné que ceci n'est pas défini. Exemple : 1 I% = 44 2 XSOLL = 4*SQRT(100+I%) XSOLL a la valeur 48 SIN, COS, TAN, ASIN, ACOS, ATAN En ce qui concerne les fonctions trigonométriques transformant les angles en degrés anciens, il est judicieux de caractériser les angles en tant que variables REAL double précision. Les fonctions trigonométriques suivantes peuvent être utilisées : ● S I fonction sinus N ● C O fonction cosinus S ● T A fonction tangente N ● A S fonction arc sinus I N Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 69/550 Fondements de la programmation CN Exemple : 3.16.3 ● A C fonction arc cosinus O S ● A T fonction arc tangente A N 1 WINKEL = 30 2 XWERT = SIN(ANGLE) XWERT a la valeur 0.5 3 YWERT = ASIN(XWERT) XWERT a la valeur 30 Liaisons logiques Généralités Il est possible d'effectuer des liaisons logiques binaires avec des variables lo‐ giques et décimales avec des variables INTEGER. Elles peuvent également être représentées, comme montré dans la de la figure ci-dessous, avec les symboles d'opération habituels, à savoir le caractère "·" et le caractère "+" (non en CPL). Ici également, "les opérations à point sont prioritaires sur les opéra‐ tions à trait", la liaison AND prend donc effet avant la liaison OR. Une imbrica‐ tion de parenthèses jusqu'à 7 niveaux est possible. NOT, AND, OR, XOR CPL met à disposition quatre fonctions de liaison : ● Fonction NON NOT ● Fonction ET AND ● Fonction OU OR ● Fonction OU EXCLUSIF XOR Fig.3-19: Liaisons logiques Les liaisons logiques peuvent être utilisées pour le masquage de bits. Exemple : Le bit 0 est-il posé en @20 ? ... 20 IF @20 AND 1 <> 0 THEN GOTO . POSÉ 30 ELSE GOTO . NON POSE ENDIF ... 70/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN 3.16.4 Conversion entre les systèmes de numération BCD Convertit une valeur binaire en format BCD : <Valeur BCD>=BCD(<Valeur binaire>) Exemple : 1 BCD_WERT = BCD(49) BCD_WERT a la valeur 73 BIN Convertit les chiffres codés BCD en valeurs binaires : <Valeur binaire>=BIN(<Valeur BCD>) Exemple : 3.16.5 1 BIN_WERT = BCD(49) BIN_WERT a la valeur 31 Opérations de comparaison =, >=, >, <>, <=, < Les opérateurs de comparaison suivants sont admissibles : "=" égal(e) à ">=" supérieur(e) ou égal(e) à ">" supérieur(e) à "<>" inégal(e) "<=" inférieur(e) ou égal(e) à "<" inférieur(e) à Les opérations de comparaison sont utilisées afin de décrire la relation ("rem‐ plie" ou "non remplie") d'une condition (par ex. pour les instructions REPEAT UNTIL, WHILE - DO - END, IF - THEN - ELSE - ENDIF). 3.17 Autres éléments de base CPL 3.17.1 Constantes Généralités Si les valeurs numériques pour le déroulement du programme sont fixées et doivent rester inchangées (constantes), il est possible d'utiliser ces valeurs di‐ rectement en écriture de chiffres dans les instructions. Variable entière (INTEGER) Les nombres entiers sont écrits sans point décimal. Exemple : ANZAHL% = 4 Constante INTEGER Constante à virgule flottante (REAL) Les nombres réels (chiffres décimaux ou nombres fractionnaires) sont carac‐ térisés par un point décimal (séparation flottante). Exemple : PI = 3.141593 Constante REAL Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 71/550 Fondements de la programmation CN Constante double précision et opérations double précision Les constantes attribuées à une variable REAL double précision ou comparées avec une variable REAL double précision sont représentées en double préci‐ sion (c'est-à-dire à 15 positions). Exemples : Attribution des constantes REAL double précision et comparaison des varia‐ bles avec constantes REAL double précisions : 4 D5! = -1234.123456 + 12345 + 1234.234567 20 D0! = 123456789.123456 22 D1! = 1.12345678901234 24 D2! = -123456789012345 26 D3! = -1234.123456 Les interrogations suivantes donnent le résultat : E? = TRUE 28 IF D0! = 123456789.123456 THEN E?=TRUE ELSE E?=FALSE ENDIF 29 IF D1! = 1.12345678901234 THEN E?=TRUE ELSE E?=FALSE ENDIF 30 IF D2! = -123456789012345 THEN E?=TRUE ELSE E?=FALSE ENDIF 31 IF D3! = -1234.123456 THEN E?=TRUE ELSE E?=FALSE ENDIF 32 IF D0! + 2.1 + 3.1 = 123456789.123456 + 2.1 + 3.1 THEN 33 E? = TRUE 34 ELSE 35 E? = FALSE 36 ENDIF 37 IF (D0! + 2.1) + 3.1 = 123456789.123456 + 2.1 + 3.1 THEN 38 E? = TRUE 39 ELSE 40 E? = FALSE 41 ENDIF Constante de chaîne de caractères Une constante de chaîne de caractères (constante STRING) est limitée par les guillemets ( " ). Exemple : 3.17.2 EXEMPLE$ = "Ceci est une chaîne de ca‐ Constante STRING ractères" Caractères clé Les caractères clés suivants sont utilisés par CPL : La virgule est normalement utilisée en tant que caractère de séparation. Uni‐ quement au sein des chaînes de caractères, elle est utilisée en tant que signe de ponctuation. Le point est utilisé en tant que point décimal dans les chiffres décimaux et en tant que caractérisation label pour les destinations de saut. Le point est interprété en tant que signe de ponctuation au sein des chaînes de caractères. 72/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN 3.18 Ordres pour la synchronisation des blocs CN 3.18.1 Aperçu A l'aide des ordres pour la synchronisation du bloc CN, il est possible : ● de synchroniser des programmes CN à certains événements définis. ● de synchroniser la préparation du bloc avec l'exécution du programme. ● de limiter la prévisualisation des blocs (LookAhead) à un nombre de blocs défini. ● de synchroniser les programmes CN les uns avec les autres dans les différents canaux. ● Les fonctions de synchronisation prennent effet soit au moment de la pré‐ paration du bloc, soit au moment actif de l'exécution du bloc. Fonctions de synchronisation de la préparation du bloc : ● WAIT (sans paramètre) : Arrête la préparation du bloc jusqu'à ce que tous les blocs préalables aient été traités. ● Fonction CPL WAIT(,<Temps d'attente>) : La préparation du bloc est arrêtée pendant le temps indiqué. ● Fonction CPL WAIT(BITIF(...)) : La préparation de bloc attend un signal défini au sein de l'interface bit API CN. ● BlkNmb : Limite la prévisualisation de blocs au nombre programmé de blocs. Fonctions de synchronisation au moment actif : ● WAITA / WAITO : Attente d'un état défini sur l'interface bit API CN. ● WPV / WPVE : ● SPV / SPVE : Attente de la valeur d'une variable CPL permanente. Ecriture de variables CPL permanentes. ● ASTOPA / ASTOPO : Arrêt de mouvement jusqu'à ce qu'une position définie de l'axe soit at‐ teinte. ● BSTOPA / BSTOPO : Arrêt de mouvement jusqu'à ce que les positions définies soient atteintes dans le système de coordonnées de base de la pièce à usiner (BCS). ● WSTOPA / WSTOPO : Arrêt de mouvement jusqu'à ce que les positions définies soient atteintes dans le système actuel de coordonnées de la pièce à usiner (WCS). ● OFFSTOPA / OFFSTOPO : Suppression de conditions d'arrêt dans le canal pilote. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 73/550 Fondements de la programmation CN 3.18.2 Fonctions de synchronisation de la préparation du bloc WAIT (sans paramètre) La fonction WAIT arrête la préparation du bloc jusqu'à ce que tous les blocs programmés avant le bloc WAIT soient complètement traités. Elle est impéra‐ tivement nécessaire si on veut ensuite, au sein du programme, accéder aux données relatives à la machine ou au processus. La préparation du bloc dans laquelle les lignes du programme individuelles sont analysées et interprétées se déroule - du point de vue du temps - toujours avant l'exécution sur la machine. Le laps de temps entre la préparation et l'exécution n'est pas constant, mais dépend de plusieurs paramètres (avance, distance de déplacement, Look-Ahead, etc.). Si le programme doit réagir à un état réel relatif à la machine ou au processus (par ex. position réelle actuelle, signal sur l'interface bit, etc.), il doit être assuré à l'aide de WAIT que ce laps de temps s'élève à "0" au moment de l'exploitation. Exemple : WAIT (sans paramètre) N10 X0 N100 (MSG, encore en marche) N20 X150 30 WAIT Traitement du bloc arrêté 40 XPOS = MCS(1)-150 50 IF XPOS < 0.0001 THEN (MSG, position atteinte) "Position atteinte" est signalé à X=150 70 ENDIF Il est possible de programmer la fonction WAIT (sans) paramètre aussi bien dans les blocs CN standard (DIN) que dans les blocs CPL. Dans un bloc CPL avec instruction WAIT, ":" ne doit pas être programmé. Les instructions CPL suivantes doivent être écrites dans un nouveau bloc CPL. Fonction CPL : WAIT(,<Temps d'attente>) Arrête la préparation du bloc jusqu'à ce que le temps d'attente programmé soit terminé. Syntaxe : WAIT(,<Temps d'attente>[,<VarRésultat>]) avec <Temps d'attente> Temps d'attente en millisecondes, sans chiffres après la virgule. Le temps d'attente peut également être pro‐ grammé en tant qu'expression arithmétique entier. <VarRésultat> Variable INTEGER optionnelle. Une fois le temps d'at‐ tente expiré, 1 est affecté à <VarRésultat>. Fig.3-20: Exemple : Syntaxe WAIT WAIT avec temps d'attente 74/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN 10 WAIT(,1000,E%) Le traitement du bloc est arrêté pendant 1000 ms. En‐ suite, la variable E% est attribuée la valeur INTEGER "1". 10 WAIT(,ZEIT%) Le contenu de la variable INTEGER ZEIT% détermine combien de temps le traitement du bloc est arrêté. Au‐ cune valeur n'est signalée. Fonction CPL : WAIT(BITIF(...)) La préparation du bloc est arrêtée jusqu'à ce qu'un état défini se soit produit sur l'interface bit API CN. En option, il est possible d'également programmer un laps de temps. La pré‐ paration du bloc est alors arrêtée jusqu'à ce que l'état sur l'interface bit se soit produit ou jusqu'à ce que le laps de temps ait expiré. Syntaxe : WAIT(<Condition BITIF>[,[<Dépassement de temps>][,<VarRésultat>]]) avec <Condition BITIF> Spécifie la condition qui doit être contrôlée sur l'interfa‐ ce bit API CN. Pour cela, la syntaxe suivante doit être respectée : [NOT(]BITF(<Paramètre>)[)][=<État>] <Paramètre> Paramètre de transfert de la fonction BITIF (description, voir fonction BITIF, chap. " BITIF" à la page 391). <État> Expression booléenne avec laquelle le résultat de la fonction BITIF est comparée. Si <État> n'est pas pro‐ grammé, la comparaison avec TRUE est effectuée. Si la condition est remplie, le traitement du bloc est con‐ tinué. <Dépassement de temps> La préparation du bloc attend jusqu'à ce que la <Con‐ dition BITIF> ait été remplie, mais au maximum jusqu'à ce que le <Dépassement de temps> soit expirée. <VarRésultat> Variable INTEGER optionnelle. Une fois le temps d'at‐ tente expiré, 1 est affecté à <VarRésultat>. Fig.3-21: Exemple : Syntaxe WAIT WAIT(BITIF(...) 10 WAIT(BITIF(1,1,1)=TRUE) Attente, jusqu'à ce que le 2ème si‐ gnal d'entrée relatif à l'axe du 1er axe soit posé. 10 WAIT(BITIF(2,0,2)=(E1? OR E2?)) Attente, jusqu'à ce que le 3ème si‐ gnal de l'entrée relatif au canal du 2ème canal possède la valeur de l'expression logique (E1?OR E2?). Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 75/550 Fondements de la programmation CN 10 WAIT(NOT BITIF(3,2,1),,C%) 20 IF C%=0 THEN 30 DSP(10,10,"BED. SCHON OK") 40 ENDIF 10 WAIT(BITIF(4,4,1)=E7?,250,ERG%) 20 IF ERG%=0 THEN 30 DSP(10,10,"NON ATTENDU") 40 ENDIF 50 IF ERG%=2 THEN 60 DSP(10,10,">ATTENDU pour 250 ms") 70 ENDIF Attente, jusqu'à ce que le 4ème si‐ gnal d'entrée relatif à la broche de la 1ère broche possède la valeur FALSE. La variable C% fournit soit la valeur "0", si la condition était dé‐ jà remplie lors de l'appel WAIT, ou la valeur "2", si la condition n'a été remplie que pendant l'attente. Attente, jusqu'à ce que le 5ème si‐ gnal de sortie relatif à l'axe du 1er axe prenne la valeur de la variable E7?, ou que 250 ms se soient écou‐ lées. La variable ERG% fournit soit la valeur "0", si la condition était dé‐ jà remplie lors de l'appel WAIT, ou la valeur "1", si le temps est déjà expiré, ou la valeur "2", si la condi‐ tion a été remplie pendant l'attente. BlkNmb (BNB) A l'aide de la fonction CN standard BlkNmb, il est possible de limiter le nombre maximal des blocs traités dans la préparation de blocs. La fonction BlkNmb permet par exemple de gérer la poursuite du traitement des résultats de mesure déterminés au moment de l'exécution dans le pro‐ gramme pièce suivant. Syntaxe : BlkNmb(<Nbr>) Limitation ACTIVÉE. BlkNmb() ou Limitation DÉSACTIVÉE. BlkNmb(0) Le nombre de blocs maximal permis dépend de MP 7060 00110. Format abrégé : BNB(...) avec <Nbr> Nombre de blocs maximal souhaité. INTEGER. Champs de saisie : supérieur/égal à 0. 0: Le nombre de blocs maximal permis dépend de MP 7060 00110. Fig.3-22: Particularités et restrictions : 3.18.3 Syntaxe BlkNmb (BNB) ● Si, au moment de l'appel de la fonction déjà, plus de <Nbr> blocs sont préparés, la préparation de blocs s'arrête jusqu'à ce que le nombre des blocs préparés est inférieur à <Nbr>. ● Si, par rapport au <Nbr>, plus de blocs sont indiqués que prévu dans le cadre de la configuration de la commande, le nombre de blocs effectif est automatiquement réduit au paramétrage MP 7060 00110. Fonctions de synchronisation au moment de l'exécution du bloc Généralités Un programme par canal peut être traité dans l'IndraMotion MTX. Si les sé‐ quences d'usinage sont subdivisées en différents programmes séparés et si ces programmes sont procédés dans différents canaux, il est possible de piloter 76/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN le déroulement de l'usinage de tout programme séparé par les fonctions de synchronisation dépendantes du déroulement de l'exécution. Toutes les fonctions de synchronisation ont des listes de paramètres CPL (si‐ milaires à des sous-programmes) au moment de l'exécution du bloc. Ces dernières comprennent les listes programmées d'expressions CPL mises entre crochets "[" et "]". Pour ces listes s'applique ce qui suit : ● Les variables CPL permanentes utilisées dans les fonctions WPV, WPVE, SPV, SPVE sont valides dans tout le système. Le programmeur doit donc s'assurer qu'elles sont utilisées correctement afin d'éviter tout effet réci‐ proque non voulu. ● Dans les fonctions CN proposées, on ne doit utiliser que les types de va‐ riables CPL permanentes simples exposés ci-après : – INT – BOOL – REAL – DOUBLE Pour les tableaux, seuls les éléments individuels peuvent être adressés ! Les fonctions WAITA, WAITO, WVP, WVPE entraînent implicitement un Downslope à la fin du bloc. Des points de synchronisation mal posés peuvent entraîner un endommagement de la machine. AVERTISSEMENT Il est donc recommandé de tester le déroulement du programme avant l'usi‐ nage réel, afin de pouvoir détecter d'éventuels problèmes de synchronisation au cours de son exécution. Attente aux états sur l'interface bit API CN : WAITA / WAITO Avec la fonction WAITA / WAITO, le système attend, au moment de l'exécution d'un programme, qu'un ou plusieurs des 16 signaux d'interface maximaux re‐ çoivent une valeur respective prédéfinie. Selon la liaison, il est possible de programmer avec plusieurs signaux d'inter‐ face : ● WAITA : "Liaison ET" des différents signaux Attendre jusqu'à ce que tous les signaux d'interface aient reçu la valeur prédéfinie. ● WAITO : "Liaison OU" des différents signaux Attendre jusqu'à ce qu'un signal d'interface ait reçu la valeur prédéfinie. Exemple : Programme 1 dans le canal 1 traite la face avant d'une pièce à tourner. Pro‐ gramme 2 dans le canal 2 doit fraiser une rainure sur cette face et doit attendre que programme 1 libère la pièce pour programme 2. La libération de la pièce pour programme 2 s'effectue par la pose de certains signaux d'inter‐ face. Lorsque les signaux d'interface ont atteint l'état voulu, canal 1 transfère la libération au canal 2. Tandis que le programme 2 est procédé, programme 1 attend programme 2 pour poursuivre son traitement. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 77/550 Fondements de la programmation CN Syntaxe : Attendre tous les signaux indiqués : WAITA[BITIF(<Paramètre>){=<État>}, BITIF(<Paramètre>){=<État>},...,{<Dépas‐ sement de temps>}] Attendre un des signaux indiqués : WAITO[BITIF(<Paramètre>){=<État>}, BITIF(<Paramètre>){=<État>},...{,<Dépas‐ sement de temps>}] avec : <BITIF> La fonction BITIF interroge l'interface API NC. En option, 2 à 16 signaux d'interface peuvent être in‐ terrogés simultanément. <Paramètre> Paramètre de transfert de la fonction BITIF (description, voir fonction BITIF, chap. " BITIF" à la page 391). <État> Expression booléenne avec laquelle le résultat de la fonction BITIF est comparée. Si <État> n'est pas pro‐ grammé, la comparaison avec TRUE est effectuée. Si la condition est remplie, le traitement du bloc est con‐ tinué. <Dépassement de temps> En option, temps en ms, défaut = 0. Si <Dépassement de temps> est expiré avant que la condition correspondante ne soit satisfaite, un avertis‐ sement est généré et l'attente se poursuit. Si un dépassement de temps n'a pas été programmé ou s'il est égal à 0, aucun avertissement n'est généré. Fig.3-23: Exemple : Syntaxe BlkNmb (BNB) N10 WAITO[BITIF(10,1,1)=FALSE, BITIF(11,1,2)] N10 WAITA[BITIF(10,1,1)=FALSE, BITIF(11,1,2)] Attend activement jusqu'à ce que BI‐ TIF(10,1,1) ait pris la valeur 0 ou BI‐ TIF(11,1,2) la valeur ait pris la valeur 1. Attend activement jusqu'à ce que BI‐ TIF(10,1,1) ait pris la valeur 0 et BI‐ TIF(11,1,2) ait pris la valeur 1. Pour WAITA, WAITO s'applique ce qui suit : Si WAITA et WAITO sont programmés dans un bloc CN, l'exécution du bloc sera alors suspendue jusqu'à ce que ces deux conditions soient remplies ; la condition WAITO étant évaluée tout d'abord. Les fonctions WAITA, WAITO, WVP, WVPE entraînent implicitement un Downslope à la fin du bloc. Des points de synchronisation mal posés peuvent entraîner un endommagement de la machine. AVERTISSEMENT Il est donc recommandé de tester le déroulement du programme avant l'usi‐ nage réel, afin de pouvoir détecter d'éventuels problèmes de synchronisation au cours de son exécution. Attendre la valeur d'une variable CPL permanente : WPV / WPVE Avec la fonction WPV / WPVE, le système attend au moment de l'exécution du programme qu'une variable CPL permanente ait pris une valeur de comparai‐ son définie. La valeur de comparaison peut être déterminée à des différents moments : 78/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN ● WPV : La valeur de comparaison est une expression CPL calculée au moment de l'exécution et ce, juste au moment où le bloc CN est activé. Toute mo‐ dification apportée à la valeur de comparaison après que le bloc CN a été activé n'a plus d'effet. La valeur de comparaison est comparée avec la valeur de la variable permanente. L'exploitation au moment de l'exécution ne permet qu'une expression CPL simple. ● WPVE : La valeur de comparaison est une expression CPL qui est calculée au moment de la préparation, mais qui n'est comparée avec la valeur de la variable permanente qu'au moment de l'exécution. Syntaxe : La valeur de comparaison n'est déterminée qu'au moment de l'exécution : WPV[<Variable CPL perm.><Opérateur de comparaison><Expression CPL sim‐ ple>{,<Dépassement de temps>}] La valeur de comparaison n'est déterminée qu'au moment de la préparation : WPVE[<Variable CPL perm.><Opérateur de comparaison><Expression CPL sim‐ ple>{,<Dépassement de temps>}] avec : <Variable CPL perm.> La variable permanente caractérisée par le caractère "@" est suivie du nom de variable. S'il s'agit des éléments d'un tableau, l'index pour WPV ne doit être qu'une constante ou une variable INTEGER permanente. En cas de WPVE, l'index peut être une constante ou une variable CPL INTEGER quelconque. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 79/550 Fondements de la programmation CN <Opérateur de comparai‐ son> <Expression CPL simple> Les opérateurs de comparaison suivants sont possi‐ bles : = La variable CPL permanente est égale à la valeur de l'ex‐ pression CPL. Judicieux seulement pour valeurs en‐ tières ou booléennes. <> La variable CPL permanente est inégale à la valeur de l'expression CPL. Judicieux seulement pour valeurs en‐ tières ou booléennes. < La variable CPL permanente est inférieure à la valeur de l'expression CPL. ≤ La variable CPL permanente est inférieure ou égale à la valeur de l'expression CPL. > La variable CPL permanente est supérieure à la valeur de l'expression CPL. ≥ La variante CPL permanente est supérieure ou égale à la valeur de l'expression CPL. Afin de ne pas entraver la génération de mouvement au moment de l'exécution, seules les expressions CPL simples peuvent être exploitées. Une expression CPL simple est une expression mathé‐ matique se composant des variables CPL permanen‐ tes, des constantes et des opérations mathématiques possibles en CPL. <Expression CPL> Expression mathématique quelconque en langage de programmation CPL. <Dépassement de temps> En option, temps en ms, défaut = 0. Si <Dépassement de temps> est expiré avant que la condition correspondante ne soit satisfaite, un avertis‐ sement est généré et l'attente se poursuit. Si un dépassement de temps n'a pas été programmé ou s'il est égal à 0, aucun avertissement n'est généré. Fig.3-24: Exemple : Exemple : Syntaxe WPV / WPVE N10 WPV[@9=10] Le programme attend au moment actif jusqu'à ce que la variable @9 prenne la valeur 10. N10 WPVE[@8=(5*#VAR2%)] L'expression "5 * #VAR2%" est exploitée au moment de la préparation. La valeur alors déterminée est comparée au moment de l'exécution avec la variable permanente @8. Tant que @8 ne correspond pas à la valeur déter‐ minée, aucun nouveau bloc CN n'est activé. WPV/SPV 80/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN Les fonctions "WPV" et "SPV" servent par exemple à synchroniser deux canaux au moment de l'exécution à l'aide des variables CPL permanentes. Au canal 1, la séquence suivante est procédée : Programme: ;Canal 1 N20 G1 F1000 X100 Y100 N30 WPV(@20=5) N30 X200 Y200 N40 SPV(@20=6) Approcher position 1 Attendre jusque @20=5, ici synchronisation lors de Approcher position 2 Poser @20=6, canal 2 doit continuer maintenant Au canal 2, la séquence suivante est procédée : Programme: ;Canal 2 N20 G1 F1000 Z100 W100 N30 SPV(@20=5) N30 Z200 W200 N40 WPV(@20=6) Approcher position 1 Poser @20=5, canal 1 doit continuer maintenant Approcher position 2 Attendre jusque @20=6, ici synchronisation lors de Ecriture d'une variable CPL permanente : SPV / SPVE A l'aide de la fonction SPV / SPVE, une valeur est attribuée à une variable CPL permanente par écriture au moment de l'exécution. La valeur peut être déterminée à des différents moments : ● SPV : La valeur à attribuer à la variable permanente n'est déterminée qu'au mo‐ ment de l'exécution. L'exploitation au moment de l'exécution ne permet qu'une expression CPL simple. ● SPVE : La valeur à attribuer à la variable permanente est calculée au moment de la préparation (temps d'interprétation CPL), mais elle n'est affectée à la variable CPL permanente qu'au moment de l'exécution. Syntaxe : La valeur à attribuer n'est déterminée qu'au moment de l'exécution : SPV[<Variable CPL perm.> =<Expression CPL simple>] La valeur à attribuer est déterminée au moment de la préparation : SPVE[<Variable CPL perm.> =<Expression CPL>] avec : <Variable CPL perm.> La variable permanente caractérisée par le caractère "@" est suivie du nom de variable. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 81/550 Fondements de la programmation CN <Expression CPL simple> Afin de ne pas entraver la génération de mouvement au moment de l'exécution, seules les expressions CPL simples peuvent être exploitées. Une expression CPL simple est une expression mathé‐ matique se composant des variables CPL permanen‐ tes, des constantes et des opérations mathématiques possibles en CPL. <Expression CPL> Fig.3-25: Exemple : Expression mathématique quelconque en langage de programmation CPL. Syntaxe SPV / SPVE N10 SPV[@6=1] La valeur 1 est attribuée à la variable permanente "@6" au moment de l'exécution. N10 SPV[@5=(7*(@PERMVAR1% +5))] La valeur de l'expression (7*(@PER‐ MVAR1% + 5)) est calculée au mo‐ ment de l'exécution, puis attribuée à @5. N10 SPVE[@5=(7*#VAR1%)] La valeur de l'expression (7 * #VAR1%) est calculée au moment de la préparation, puis attribuée à @5 au moment de l'exécution. Arrêt du mouvement jusqu'à ce qu'une position d'axe soit atteinte : ASTOPA / ASTOPO Avec la fonction ASTOPA / ASTOPO, il est possible de synchroniser des mou‐ vements entre les canaux. En fonction de la position d'un ou plusieurs axes du système de coordonnées de l'axe (ACS) dans un canal, le mouvement syn‐ chrone dans un autre canal peut être arrêté, puis continué. Restrictions : ● Les axes utilisés pour la synchronisation doivent appartenir à un autre canal que celui à piloter, car, dans le cas contraire, un auto-verrouillage risque de se produire. ● Le canal à piloter doit se trouver en mode "Automatique" ou "Introduction manuelle de données". ● Si des conditions ET et OU sont prédéfinies pour ce canal en même temps, le canal sera arrêté dès que la condition correspondante est rem‐ plie pour au moins une des deux fonctions. Pour chaque canal pilotant, une ou plusieurs conditions pour arrêter le canal peuvent être prédéfinies : ● ASTOPA : Tant que toutes les conditions sont remplies, le mouvement synchrone du canal à piloter est arrêté (liaison ET logique). ● ASTOPO : Tant qu'au moins une condition est remplie, le mouvement synchrone du canal à piloter est arrêté (liaison OU logique). La définition de nouvelles conditions ET ou OU invalide toutes les conditions valables jusqu'à présent. 82/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN Syntaxe : Conditions ET : ASTOPA[<Numéro du canal> ,<Cond.1> {,<Cond.2> }{..{,<Cond.8> }.}] Conditions OU : ASTOPO[<Numéro du canal> ,<Cond.1> {,<Cond.2> }{..{,<Cond.8> }.}] avec : <Numéro du canal> Numéro du canal à piloter (1..n). Valeur INTEGER ou variable INTEGER. <Cond.1, Cond.2...Cond.8> Définition de 1 à 8 condition(s) sous la forme : <Axe><Opérateur de comparaison><Valeur de compa‐ raison> avec : <Axe> Nom d'axe du système ou du canal, programmé en tant que constante de chaî‐ ne CPL ou variable de chaîne CPL. <Opérateur de comparai‐ son> Opérateurs admissibles : < , ≤, > , . <Valeur de comparaison> Valeur réelle ou expres‐ sion réelle CPL. La valeur est calculée au moment de la préparation et elle reste active en tant que valeur modale. Fig.3-26: Syntaxe A partir d'un canal, il est possible d'arrêter jusqu'à 4 autres canaux au maximum au moyen des conditions ET/OU. Exemple : Utilisation des noms et numéros d'axe 10 ACHSNR% = 2 Définition : 20 ACHSNAME$ = "X" ● Numéro de l'axe 30 STOPCHAN% = 2 ● Nom de l'axe : ● Numéro du canal N40 ASTOPO[STOPCHAN%, ACHSNR%<10] : N90 ASTOPO[STOPCHAN%, "Z">20.3] : N150 ASTOPO[STOPCHAN%, ACHSNAME$<1.5] Arrêt du mouvement jusqu'à ce qu'une position de base de la pièce à usiner soit atteinte : BSTOPA / BSTOPO Avec la fonction BSTOPA / BSTOPO, il est possible de synchroniser des mou‐ vements entre les canaux. En fonction de la position d'une ou de plusieurs coordonnées du système de coordonnées de base de la pièce à usiner Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 83/550 Fondements de la programmation CN (BCS) dans un canal, le mouvement synchrone dans un autre canal peut être arrêté, puis continué. Restrictions : ● Les coordonnées utilisées pour la synchronisation doivent appartenir à un autre canal que celui à piloter, car, dans le cas contraire, un auto-ver‐ rouillage risque de se produire. ● Le canal à piloter doit se trouver en mode "Automatique" ou "Introduction manuelle de données". ● Si des conditions ET et OU sont prédéfinies pour ce canal en même temps, le canal sera arrêté dès que la condition correspondante est rem‐ plie pour au moins une des deux fonctions. Pour chaque canal pilotant, une ou plusieurs conditions pour arrêter le canal peuvent être prédéfinies : ● BSTOPA : Tant que toutes les conditions sont remplies, le mouvement synchrone du canal à piloter est arrêté (liaison ET logique). ● BSTOPO : Tant qu'au moins une condition est remplie, le mouvement synchrone du canal à piloter est arrêté (liaison OU logique). La définition de nouvelles conditions ET ou OU invalide toutes les conditions valables jusqu'à présent. Syntaxe : Conditions ET : BSTOPA[<Numéro du canal> ,<Cond.1> {,<Cond.2> }{..{,<Cond.8> }.}] Conditions OU : BSTOPO[<Numéro du canal> ,<Cond.1> {,<Cond.2> }{..{,<Cond.8> }.}] avec : <Numéro du canal> Numéro du canal à piloter (1..n). Valeur INTEGER ou variable INTEGER. 84/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN <Cond.1, Cond.2...Cond.8> Définition de 1 à 8 condition(s) sous la forme : <Coordonnée><Opérateur de comparaison><Valeur de comparaison> avec : <Coordonnée> En ce qui concerne BCS : Nom de coordonnée ou in‐ dex de coordonnée, pro‐ grammé en tant que cons‐ tante chaîne CPL ou variable chaîne CPL. <Opérateur de comparai‐ Opérateurs admissibles : son> < , ≤, > , . <Valeur de comparaison> Valeur réelle ou expression réelle CPL. La valeur est calculée au moment de la préparation et elle reste ac‐ tive en tant que valeur mo‐ dale. Fig.3-27: Syntaxe BSTOPA / BSTOPO A partir d'un canal, il est possible d'arrêter jusqu'à 4 autres canaux au maximum au moyen des conditions ET/OU. Exemple : Activer une condition ET pour les coordonnées de base de la pièce à usiner. N10 BSTOPA[3,"z"<12.0,"x">15] Le canal 3 sera arrêté tant que les conditions suivantes sont applicables dans le canal pilo‐ tant : - Position de la coordonnée de base de la pièce à usiner < 12 mm et - Position de la coordonnée de base de la pièce à usiner x > 15 mm Arrêt du mouvement jusqu'à ce qu'une position de la pièce à usiner soit atteinte : WSTOPA / WSTOPO Avec la fonction WSTOPA / WSTOPO, il est possible de synchroniser des mouvements entre les canaux. En fonction de la position d'une ou plusieurs coordonnées du système de coordonnées de la pièce à usiner (WCS) dans un canal, le mouvement synchrone dans un autre canal peut être arrêté, continué. Restrictions : ● Les coordonnées utilisées pour la synchronisation doivent appartenir à un autre canal que celui à piloter, car, dans le cas contraire, un auto-ver‐ rouillage risque de se produire. ● Le canal à piloter doit se trouver en mode "Automatique" ou "Introduction manuelle de données". ● Si des conditions ET et OU sont prédéfinies pour ce canal en même temps, le canal sera arrêté dès que la condition correspondante est rem‐ plie pour au moins une des deux fonctions. Pour chaque canal pilotant, une ou plusieurs conditions pour arrêter le canal peuvent être prédéfinies : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 85/550 Fondements de la programmation CN ● WSTOPA : Tant que toutes les conditions sont remplies, le mouvement synchrone du canal à piloter est arrêté (liaison ET logique). ● WSTOPO : Tant qu'au moins une condition est remplie, le mouvement synchrone du canal à piloter est arrêté (liaison OU logique). La définition de nouvelles conditions ET ou OU invalide toutes les conditions valables jusqu'à présent. Syntaxe : Conditions ET : WSTOPA[<Numéro du canal>,<Cond.1>{,<Cond.2>}{..{,<Cond.8>}.}] Conditions OU : WSTOPO[<Numéro du canal>,<Cond.1>{,<Cond.2>}{..{,<Cond.8>}.}] avec : <Numéro du canal> Numéro du canal à piloter (1..n). Valeur INTEGER ou variable INTEGER. <Cond.1, Cond.2...Cond.8> Définition de 1 à 8 condition(s) sous la forme : <Coordonnée><Opérateur de comparaison><Valeur de comparaison> avec : <Coordonnée> En ce qui concerne WCS : Nom de coordonnée ou in‐ dex de coordonnée, pro‐ grammé en tant que cons‐ tante chaîne CPL ou variable chaîne CPL. Fig.3-28: <Opérateur de comparai‐ son> Opérateurs admissibles : <Valeur de comparaison> Valeur réelle ou expres‐ sion réelle CPL. La valeur est calculée au moment de la préparation et elle reste active en tant que valeur modale. < , ≤, > , . Syntaxe WSTOPA / WSTOPO A partir d'un canal, il est possible d'arrêter jusqu'à 4 autres canaux au maximum au moyen des conditions ET/OU. Exemple : Activer une condition ET pour les coordonnées de la pièce à usiner. 86/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fondements de la programmation CN N10 WSTOPA[3,"Z"<12.0,"X">15] Le canal 3 sera arrêté tant que les conditions suivantes sont applicables dans le canal pilo‐ tant : Position de la coordonnée Z de la pièce à usi‐ ner du canal inférieure à 12 mm et position de la coordonnée X de la pièce à usiner supérieure à 15 mm. Suppression des conditions d'arrêt : OFFSTOPA / OFFSTOPO Effacement des conditions d'arrêt pour un canal pilote. Syntaxe : OFFSTOPA Efface toutes les conditions d'arrêt ET. OFFSTOPO Efface toutes les conditions d'arrêt OU. Pour les fonctions de synchronisation s'applique ce qui suit : ● ASTOPO, BSTOPO, WSTOPO, OFFSTOPO sont des fonctions modales qui se révoquent réciproquement. ● ASTOPA, BSTOPA, WSTOPA, OFFSTOPA sont des fonctions modales qui se révoquent réciproquement. Suppression des conditions d'arrêt par la fin du programme (M30) : À la fin d'un programme pièce (M30) ainsi que lors de la remise à zéro du canal ou la désélection du programme, les conditions d'arrêt activées dans ce canal sont supprimées de manière implicite. AVERTISSEMENT Mouvement de déplacement non intentionnel ! De nombreuses fonctions CN attendent la programmation des adresses d'axes ou de coordonnées. En règle générale, outre les adresses des coordonnées, seules les adresses des axes concernés du canal, c'està-dire les axes synchrones, peuvent être programmées. En général, la programmation de l'adresse d'un axe asynchrone au sein d'une liste de paramètres provoque une erreur de syntaxe alors que la programmation en dehors d'une liste de paramètres entraîne un mou‐ vement de déplacement asynchrone ! Exceptions : ● G74(Home) VA1 : ● GAX(VA) : L'axe asynchrone VA se déplace vers le point de référence. L'axe asynchrone VA est repris dans le canal. ● FsMove, FsTorque, FsReset : La fonctionnalité "Déplacement contre butée fixe" a également un effet sur les axes asynchrones. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 87/550 Aperçu des groupes modaux des fonctions CN 4 Aperçu des groupes modaux des fonctions CN Un grand nombre de fonctions CN offertes par la MTX est configuré dans les groupes de fonctions CN. Les différentes fonctions CN d'un groupe modal se révoquent réciproquement de manière que seule une fonction d'un groupe mo‐ dal peut être efficace à la fois. Groupe modal Fonctions CN Géometrie G0, G1, G2, G3, G5, G6, G33 Profil de vitesse G8, G9, CFD, LNU, LND, SNU, SND, S2U, S2D Plan G16, G17, G18, G19, G20 Programmation absolue/incrémentale G90, G91 Programmation de l'avance G93, G94, G95 Programmation de la vitesse de la broche G96, G97 Pouce/métrique G70, G71 Correction de la longueur de l'outil G47, G48 Correction du rayon d'outil à 2,5 D G40, G41, G42 Correction du rayon d'outil à 3 D G140, G141, G142 Correction D D0, D Correction ED ED0, ED Angles extérieurs en cas de la correction du rayon à 2,5 D G43, G44 Avance en cas de la correction du rayon à 2,5 D G45, G46 Surveillance de collision pour la correction du rayon à 2,5 D CLN, Off** Inpos en avance G61, G62 Fenêtre Inpos active IPS1, IPS2, IPS3 Décalage d'origine banque 1 G52, G53.1, G54, G55, G56, G57, G58, G59 Décalage d'origine banque 2 G52.2, G53.2, G54.2 G55.2, G56.2, G57.2, G58.2, G59.2 Décalage d'origine banque 3 G52.3, G53.3, G54.3 G55.3, G56.3, G57.3, G58.3, G59.3 Décalage d'origine banque 4 G52.4, G53.4, G54.4 G55.4, G56.4, G57.4, G58.4, G59.4 Décalage d'origine banque 5 G52.5, G53.5, G54.5 G55.5, G56.5, G57.5, G58.5, G59.5 Positionnement - plan incliné, banque 1 G151.1, G152.1, G153.1, G154.1 G155.1, G156.1, G157.1, G158.1, G159.1 Positionnement - plan incliné, banque 2 G151.2, G152.2, G153.2, G154.2 G155.2, G156.2, G157.2, G158.2, G159.2 Positionnement - plan incliné, banque 3 G151.3, G152.3, G153.3, G154.3 G155.3, G156.3, G157.3, G158.3, G159.3 Positionnement - plan incliné, banque 4 G151.4, G152.4, G153.4, G154.4 G155.4, G156.4, G157.4, G158.4, G159.4 Positionnement - plan incliné, banque 5 G151.5, G152.5, G153.5, G154.5 G155.5, G156.5, G157.5, G158.5, G159.5 Positionnement - correction de la position de la pièce à usiner BCR, Off** Décalage des coordonnées TRS, Off* Décalage additif des coordonnées ATR, Off** 88/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Aperçu des groupes modaux des fonctions CN Groupe modal Fonctions CN Aide à la saisie - décalage du contour SHT, Off** Aide à la saisie - mise à l'échelle SCL, Off** Aide à la saisie - fonction miroir MIR, Off** Aide à la saisie - rotation ROT, Off** Aide à la saisie - pôle PLS, Off** Aide à la saisie - couplage de programmation PLP, EPC, Off** Congés et chanfreins RND, RNE, CHF, CHL, Off** Congés avec splines SCO, Off** Remplacer les droites par les splines LTS, Off** OVERRIDE OVD, OVE Programmation au diamètre DIA, RAD Affectation de correction G78, G79 Pôle pour coordonnées polaires POP, Off** Vitesse de l'axe AVE, Off** Accélération de l'axe AAC, Off** Accélération de trajectoire PAC, Off** Programmation KV KVP, Off** Anticipation FFW, Off** Mode de positionnement pour axes infinis PMD, Off** Programmer le couple de réduction RDT. Off** Ajustement de l'avance FAD, Off** Découpage-poinçonnage PUN, NIB, Off** Guidage tangentiel de l'outil TTL, Off** Orientation tangentielle de l'outil TTO, Off* Surveillance de zone ARA, Off** Scinder SPLIT, Off** Couplage d'axes AXC, Off** Couplage sélectif de coordonnées SCC, SCCT, Off** Tableaux de compensation GCT, Off** Laser LFP, Off** Raccordement tangentiel DTT, Off** Programmation de précision PRP, Off** Sous-programmes modal G80, G81, G82, G83, ... Off** Fig.4-1: Fonction de mise hors service par programmation de la fonction CN avec (0) ou ( ), p.ex. AAC(0) Aperçu des groupes modaux des fonctions CN Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 89/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) 5 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) 5.1 Aperçu La commande dispose d'un grand nombre de fonctions CN. Outre les ordres déterminés dans la norme DIN 66025, il y a également des extensions essen‐ tielles dans le domaine des codes G et des éléments de syntaxe supplémen‐ taires similaires au langage standard. Les fonctions CN de la commande comprennent ● les codes G à 1 et 2 chiffre(s) : répondent en grande partie à la norme DIN 66025 et complètent son "vocabulaire du code G" de manière afin – d'étendre les groupes de fonctions compris dans la DIN (p. ex. G52, G53, G54, ...), ou – d'introduire des nouveaux groupes de fonctions en rapport avec les groupes de fonctions déjà existants. Les codes G à 1 chiffre peuvent toujours être écrit avec 2 chiffres com‐ mençant avec un zéro de tête (par ex. G0=G00, G1=G01, ...). ● les codes G à 3 chiffres (cas exceptionnels ) : sont utilisés lorsqu'une fonctionnalité déjà existante en 2D est introduite de la même façon en 3D (p. ex. G41, G42 → G141, G142). ● les codes G suivis de "." : sont utilisés en relation avec les décalages d'origine ou transformations des coordonnées. Ces fonctions possèdent jusqu'à 6 banques qui peu‐ vent être adressées/programmées via le suffixe ".". Exemples : G54.4 Décalage d'origine de la banque 4 G59.2 Décalage d'origine de la banque 2 ● Fonctions M avec fonctionnalité CN définie par ex. M0, M30 ● Fonctions CN avec syntaxe de langage standard : (voir chap. 6 "Fonctions CN avec syntaxe de langage standard" à la page 175) Un tableau synoptique de toutes les fonctions CN est donné dans chap. 8 "Annexe" à la page 473. En outre, les fonctions CN sont données dans l'index. Écritures utilisées : Dans le manuel, les écritures suivantes sont utilisées pour la syntaxe des fonc‐ tions CN : Police de caractères "Courier gras" ou "Courier" : Les chaînes de caractères dans cette écriture doivent être programmées com‐ me indiqué. Exemple : G0(POL) Crochets triangulaires < > 90/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) caractérisent un caractère de substitution pour une expression/un paramètre à programmer. Le caractère de substitution est représenté en italique. Exemple : <Axe1> Accolades { } caractérisent une expression/un paramètre optionnel/le. De tels éléments de syntaxe peuvent, mais ne doivent pas, être programmés. Exemple : G0 { ( { POL,}{<Par1>} ) } Caractère "|" sépare les paramètres possibles, mais non utilisables simultanément (para‐ mètre alternatif). Exemple : G0{({POL,}{NIPS|IPS1|IPS2|IPS3})} 5.2 Codes G 5.2.1 Interpolation linéaire à avance rapide "G00" Effet La position programmée est atteinte par interpolation sur une droite à vitesse maximale de trajectoire (= à avance rapide). Pour l'avance rapide s'applique ce qui suit : ● Un axe au moins se déplace à vitesse ou accélération maximale. La vi‐ tesse des axes est réglée de façon à atteindre le point d'arrivée au même moment. ● Si la fonction est activée, le signal IF du canal "Avance rapide active" est généré. ● La fonction est modale et révoque G1, G2, G3, G5, G6, G33. ● L'écart de poursuite (décalage entre valeur de consigne et valeur réelle) à la fin du bloc permet de réduire la taille de la fenêtre cible définie (= fonctionnalité "Arrêt précis"). Fig.5-1: Interpolation linéaire à avance rapide Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 91/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Programmation Fonction de base Syntaxe : G0 Avance rapide avec arrêt précis ACTIVÉE et program‐ mation de la position d'arrivée en coordonnées carté‐ siennes. Pour cela, le dernier réglage de la fenêtre d'arrêt prévu pour l'avance rapide (défaut = précise) est pris en considération. À la fin du bloc, la commande dé‐ célère tout d'abord à la vitesse de trajectoire de v = 0. Le bloc suivant n'est déplacé que lorsque cette fenêtre d'arrêt précis a été atteinte pour tous les axes intéres‐ sés. Fig.5-2: Exemple : Syntaxe G00 : N40 X100 Y100 Position de départ. N50 G0 X500 Y300 Approche de la position d'arrivée à avance rapide. Paramètres optionnels Syntaxe : G0( {NIPS|IPS1|IPS2|IPS3,}{POL} ) avec NIPS Arrêt précis DÉSACTIVÉ. Sauf condition contraire, pas de décélération à v=0 à la fin du bloc. IPS1 Comme G0 sans paramètres, mais avec fenêtre d'arrêt précis exacte. IPS2 Comme G0 sans paramètres, mais avec fenêtre d'arrêt précis approximative. IPS3 Comme G0 sans paramètres, mais avec fenêtre d'arrêt précis infinie. C'est-à-dire, aucune fenêtre de position‐ nement n'est contrôlée ; seule une décélération à la vitesse v=0 est effectuée à la fin du bloc. POL Active la programmation des coordonnées polaires et définit l'angle polaire 1 sur 0, l'angle polaire 2 sur 90 degrés. Pour la programmation en coordonnées polai‐ res, voir chap. 6.69 "Programmation en coordonnées polaires : Définir le pôle PolarPol, POP" à la page 265. Fig.5-3: Particularités et restrictions : Paramètres optionnels G00 ● La fonction est programmable avec ou sans adresses d'axe dans un mê‐ me bloc. ● La vitesse correspondante est déterminée via les paramètres machine pour la vitesse maximale de l'axe. ● La vitesse de l'avance rapide peut être limitée à la valeur définie dans les paramètres machine au moyen du signal IF du canal "Avance rapide ré‐ duite" (qCh_RedRap). ● La vitesse de l'avance rapide peut également être limitée par la fonction "Avance rapide de test" pilotée via le signal IF du canal "Avance rapide de test" (qCh_TestRap). 92/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ● On peut influencer cette vitesse au moyen du potentiomètre. ● Les modifications de l'arrêt précis (ACTIVÉ/DÉSACTIVÉ, réglage de la fenêtre d'arrêt précis) effectuées avec G0 ne s'appliquent qu'à l'avance rapide. ● Afin de généralement modifier le réglage de la fenêtre d'arrêt précis, c'està-dire pour l'avance rapide et pour toutes les fonctions d'avance, les fonctions CN IPS1, IPS2, IPS3 doivent être utilisées. Pour de plus amples informations relatives à l'arrêt précis, voir G1, G61/62, IPS1, IPS2, IPS3 dans le présent manuel ainsi que dans le manuel "Description des fonctions", chapitre "Précision", alinéa "Arrêt précis". 5.2.2 Interpolation linéaire à vitesse d'avance programmée "G01" Effet La position programmée est atteinte par interpolation sur une droite avec l'avance valable (programmable par l'adresse F). Le mouvement est coordonné de façon à ce que tous les axes intéressés at‐ teignent simultanément le point d'arrivée programmé. Pour cette fonction s'applique ce qui suit : ● La vitesse d'avance programmée (F) correspond à une avance sur tra‐ jectoire et de ce fait, dans le cas de mouvements de plusieurs axes, la participation de chaque axe est inférieure à F. ● La fonction est modale et révoque G0, G2, G3, G5, G6, G33. Fig.5-4: Interpolation linéaire à vitesse d'avance programmée Programmation Fonction de base Syntaxe : G1 Fig.5-5: Exemple : Mouvement suivant l'avance active et programmation de la position d'arrivée en coordonnées cartésiennes. L'arrêt précis dépend du fait si G61 (arrêt précis ACTI‐ VÉ) ou G62 (arrêt précis DÉSACTIVÉ) est active. Pour cela, le dernier réglage de la fenêtre d'arrêt précis défini pour l'avance (défaut = exact) est pris en compte. Syntaxe G01 : N40 X100 Y100 Position de départ. N50 G0 X500 Y300 F100 Position d'arrivée, approche avec avance F100. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 93/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Paramètres optionnels Syntaxe : G1({IPS|IPS1|IPS2|IPS3,}{POL} ) avec IPS Arrêt précis ACTIVÉ, indépendamment de G61/G62. Pour cela, le dernier réglage de la fenêtre d'arrêt précis défini pour le mode d'avance (défaut = exact) est pris en compte. À la fin du bloc, la commande réduit tout d'abord la vitesse de trajectoire en décélérant à la vi‐ tesse v=0. Le bloc suivant n'est déplacé que lorsque cette fenêtre de positionnement a été atteinte pour tous les axes intéressés. Cette mise en service de l'arrêt précis ne s'applique qu'à G1. Pour toutes les autres fonctions d'avance, G61/G62 reste valable. IPS1 Comme IPS, mais avec fenêtre d'arrêt précis exacte. Le réglage de la fenêtre d'arrêt précis est également vala‐ ble pour toutes les autres fonctions d'avance, exception faite de l'avance rapide (G0), tandis que la mise en ser‐ vice de l'arrêt précis ne se fait que pour G1. IPS2 Comme IPS, mais avec fenêtre d'arrêt précis approxi‐ mative. Le réglage de la fenêtre d'arrêt précis est éga‐ lement valable pour toutes les autres fonctions d'avan‐ ce, exception faite de l'avance rapide (G0), tandis que la mise en service de l'arrêt précis ne se fait que pour G1. IPS3 Comme IPS, mais avec fenêtre d'arrêt précis infinie. C'est-à-dire, aucune fenêtre de positionnement n'est contrôlée ; seule une décélération à la vitesse v=0 est effectuée à la fin du bloc. Le réglage de la fenêtre d'arrêt précis est également valable pour toutes les autres fonctions d'avance, exception faite de l'avance rapide (G0), tandis que la mise en service de l'arrêt précis ne se fait que pour G1. POL Active la programmation des coordonnées polaires et définit l'angle polaire 1 sur 0, l'angle polaire 2 sur 90 degrés. Pour la programmation en coordonnées polai‐ res, voir chap. 6.69 "Programmation en coordonnées polaires : Définir le pôle PolarPol, POP" à la page 265. Fig.5-6: Particularités et restrictions : Paramètres optionnels G01 ● La fonction est programmable avec ou sans adresses d'axe dans un mê‐ me bloc. ● Si aucune avance n'a encore été activée, une avance doit être program‐ mée dans la même ligne par adresse F. Cette avance programmée reste active tant qu'elle est écrasée par une autre valeur d'avance. ● La vitesse de trajectoire programmée peut être réduite à l'aide des para‐ mètres machine. ● On peut influencer cette vitesse au moyen du potentiomètre d'avance. ● La fenêtre d'arrêt rapide peut également être modifiée pour toutes les fonctions d'avance à l'aide des fonctions CN G61(IPS1), G61(IPS2), G61(IPS3). 94/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ● Afin de généralement modifier le réglage de la fenêtre d'arrêt précis, c'està-dire pour l'avance rapide et pour toutes les fonctions d'avance, les fonctions CN IPS1, IPS2, IPS3 doivent être utilisées. Pour de plus amples informations relatives à l'arrêt précis, voir G0, G61/62, IPS1, IPS2, IPS3 dans le présent manuel ainsi que dans le manuel "Description des fonctions", chapitre "Précision", alinéa "Arrêt précis". 5.2.3 Interpolation circulaire/hélicoïdale/hélicoïdale N "G02, G03" Effet La position d'arrivée programmée dans le plan de travail actif est atteinte par interpolation sur une trajectoire circulaire avec l'avance actuelle (programmable par adresse F). ● G2 : trajectoire circulaire dans le sens des aiguilles d'une montre (antitri‐ gonométrique) ● G3 : trajectoire circulaire dans le sens inverse des aiguilles d'une montre (trigonométrique) En même temps, d'autres axes peuvent être programmés en dehors du plan de travail, dont les mouvements linéaires sont co-interpolés. Fig.5-7: G2 trajectoire circulaire dans le sens des aiguilles d'une montre ; G3 trajectoire circulaire dans le sens inverse des aiguilles d'une montre Interpolation circulaire : Seuls les axes du plan de travail actif y participent. Interpolation hélicoïdale : Outre les axes du plan de travail actif, un axe synchrone supplémentaire inter‐ vient. Dans la mesure où ce dernier est configuré perpendiculairement au plan de travail actif (par ex. l'axe restant du système de coordonnées de la pièce à usiner), une trajectoire sous forme de spirale à pas constant (interpolation hé‐ licoïdale) peut être créée. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 95/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Fig.5-8: Interpolation hélicoïdale Interpolation hélicoïdale N : Outre les axes du plan de travail actif, plus d'un axe synchrone supplémentai‐ re est programmé (6 au maximum). Fig.5-9: Interpolation hélicoïdale N Pour l'interpolation s'applique ce qui suit : ● Les axes qui se déplacent sur le congé sont clairement définis par les plans de travail sélectionnés (G17, G18, G19, G20). ● La vitesse d'avance programmée (F) correspond à une avance sur tra‐ jectoire et se rapporte en règle générale à tous les axes se déplaçant dans un bloc ; ainsi, dans le cas de mouvements de plusieurs axes, la partici‐ pation de chaque axe est inférieure à F. ● L'avance réelle peut être limitée par l'accélération radiale maximale pos‐ sible. ● Les fonctions G0, G1, G2, G3, G5, G6 forment un groupe de fonctions modales et se révoquent ainsi réciproquement. ● La trajectoire circulaire peut être programmée comme suit : – programmation au rayon ou – programmation au centre. Programmation au rayon : À partir de la position actuelle (point de départ), on définit une trajectoire cir‐ culaire en programmant le ● point d'arrivée du cercle et 96/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ● rayon du cercle. Le point d'arrivée du cercle doit donc être programmé comme valeur de position absolue ou incrémentale. Programmation au rayon Fonction de base Syntaxe : G2<EP> R<Valeur> Trajectoire circulaire antitrigonométrique G3<EP> R<Valeur> Trajectoire circulaire trigonométrique avec <EP> Coordonnées du point d'arrivée. <Valeur> Rayon de la trajectoire circulaire. Le rayon doit être au moins égal à la moitié de l'écart entre le point de départ et le point d'arrivée. Au moyen du signe, vous pouvez déterminer si, en cas de deux trajectoires circulaires possibles, la trajectoire avec le petit ou le grand congé doit être déplacée : Rayon positif : congé ≤ 180 degrés Rayon négatif : congé > 180 degrés Si le rayon est juste égal à la moitié de l'écart entre le point de départ et le point d'arrivée, on obtiendra un demi-cercle et le signe de la valeur du rayon est indif‐ férent. Particularités et restrictions : Fig.5-10: Syntaxe G02, Programmation au rayon Fig.5-11: Rayon des trajectoires circulaires G2 et G3 ● Les cercles complets ne peuvent pas être créés. ● La commande corrige automatiquement les indications imprécises de rayon suivant la tolérance définie dans les paramètres machine. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 97/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Dans le cas contraire, une erreur d'exécution est générée. Programmation au centre : À partir de la position actuelle (point de départ), on définit une trajectoire cir‐ culaire en programmant le ● point d'arrivée du cercle et ● centre du cercle. Le centre du cercle est programmé de manière incrémentale, par rapport au point de départ respectif du cercle. Programmation au centre Fonction de base Syntaxe : G2<EP> <IP> Trajectoire circulaire antitrigonométrique G3<EP> <IP> Trajectoire circulaire trigonométrique avec <EP> Coordonnées du point d'arrivée. Si le point de départ et le point d'arrivée sont identiques au sein du plan circulaire, un cercle entier est généré automatiquement. <IP> Paramètres d'interpolation I, J et K. Ils définissent pour chaque axe l'écart entre le point de départ A du cercle et le centre M du cercle. Le signe découle de l'orientation vectorielle de A vers M. Quel paramètre d'interpolation est attribué à quel axe peut être déduit de la signification des coordonnées dans les paramètres machine. Règle standard : I = M(X) - A(X) pour coordonnée X J = M(Y) - A(Y) pour coordonnée Y K = M(Z) - A(Z) pour coordonnée Z Particularités et restrictions : Fig.5-12: Syntaxe G02, Programmation au centre Fig.5-13: Programmation au centre ● Si le point de départ et le point d'arrivée sont identiques, la commande génère automatiquement un cercle entier. ● La commande corrige automatiquement les indications imprécises de centre suivant la tolérance définie dans les paramètres machine. Pour ce faire, elle décale la position du centre en conséquence. 98/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ● Si des paramètres d'interpolation et un rayon de cercle sont programmés dans un même bloc, le système ne tiendra compte que du rayon de cercle (= programmation au rayon). ● Si des paramètres d'interpolation ne correspondant pas au plan sélec‐ tionné ont été programmés, la commande génère un message d'erreur d'exécution. Exemple : G17 G2 X5 I9 K7 (erreur : K ne correspond pas au plan X/Y) Paramètres optionnels Syntaxe : G2/G3(POL)<EP> R<Va‐ leur> Programmation au rayon en coordonnées polaires G2/G3(POL)<EP> <IP> Programmation au centre en coordonnées polaires avec Active la programmation des coordonnées polaires pour les coordonnées du point d'arrivée et définit l'angle polaire 1 sur 0, l'angle polaire 2 sur 90 degrés. Pour la programmation en coordonnées polaires, voir chap. 6.69 "Programmation en coordonnées polaires : Définir le pôle PolarPol, POP" à la page 265. POL Fig.5-14: Exemple : Paramètres optionnels G02, G03 Programmation au rayon (cartésienne) : N40 G1 X10 Y10 F100 Approche du point de départ. N50 G2 X38 Y20 R15 Interpolation circulaire. Fig.5-15: Exemple : Programmation au rayon (cartésienne) Programmation au centre (cartésienne) : N80 G1 X100 Y100 F100 Approche de la position de départ. N90 G90 G17 G3 X350 Y250 I200 J-50 : Interpolation circulaire trigonométrique dans le plan X/ Y. La programmation absolue pour les coordonnées du point d'arrivée est active. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 99/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Fig.5-16: 5.2.4 Programmation au centre (cartésienne) Temporisation "G04" Effet Interrompt l'exécution du programme. Le bloc programmé suivant n'est exécuté qu'une fois la temporisation programmée terminée. La temporisation commence lorsque le bloc CN précédent a été complètement exécuté. Les broches en rotation ou axes secondaires en déplacement ne sont pas im‐ mobilisés. Des axes synchrones peuvent éventuellement compenser leur dé‐ calage de poursuite. La temporisation peut être programmée en : ● secondes ou ● tours de broche. Pour la détermination de la vitesse de rotation de la broche (en nombre de tours), il faut déterminer cycliquement la vitesse réelle actuelle de la broche principale, puis calculer le nombre de tours exécutés. En cas de broches très puissantes, une certaine différence peut donc apparaître au sein des phases d'accélération et de freinage entre la vitesse de broche programmée et la vi‐ tesse réellement attendue. Si la broche principale configurée est une broche analogique (sans retour de la vitesse de rotation), on utilisera pour les calculs la vitesse de rotation réelle au lieu de la consigne de rotation. Programmation Syntaxe : G4(F<Valeur>) Temporisation en secondes. G4(S<Valeur>) Temporisation en nombre de tours de la broche. avec <Valeur> Indication des secondes ou du nombre de tours de la broche. L'entrée de "0" rejette le bloc G4 en interne. Fig.5-17: Particularités et restrictions : Syntaxe G04 ● La fonction doit être programmée dans un bloc séparé sans information sur la course. Dans ce bloc, seules des fonctions auxiliaires et addition‐ nelles sont encore possibles. ● Les vitesses de rotation programmées se réfèrent à la broche principale configurée dans les paramètres machine ou dans la fonction MainSp (voir 100/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) chap. 6.54 "Changement de broche principale MainSp, MSP" à la page 243). 5.2.5 Entrée tangentielle dans le cercle "G05" Effet La commande calcule automatiquement une entrée tangentielle dans le cercle pour le bloc G5 sur la base du dernier mouvement de déplacement programmé. Un raccord n'est tangentiel que s'il ne présente aucune inversion de direction. En cas d'enchaînement de plusieurs mouvements G5, la 1ère tan‐ gente d'entrée influence tous les éléments de contour G5 suivants. Les fonctions G0, G1, G2, G3, G5, G6 forment un groupe de fonctions modales et se révoquent ainsi réciproquement. Des marques d'usinage peuvent apparaître au niveau du raccord des blocs en interpolation hélicoïdale/hélicoïdale N ! ATTENTION Le raccord tangentiel calculé ne se rapporte qu'au plan circulaire ! La tangente dans l'espace peut sauter au niveau du raccord des blocs ! Programmation Syntaxe : <EP> G5 avec <EP> Fig.5-18: Particularités et restrictions : Coordonnées du point d'arrivée du cercle. Syntaxe G05 ● La programmation de G5 en mode "Introduction manuelle de données" n'est pas possible. ● Avant G5, il faut programmer un bloc avec un mouvement de déplacement dans le même programme. ● Juste avant et pendant l'activation de G5, il ne faut pas changer le plan actuel. Exemples : Fig.5-19: 5.2.6 Exemple - Entrée tangentielle dans le cercle Programmation spline "G06" Effet Par rapport à l'Interpolation linéaire, l'Interpolation spline dispose d'un nombre réduit de repères fixes, mais fournit approximativement la même qualité de surface et précision du contour, car les courbes constantes sont déterminées entre les points. L'IndraMotion MTX supporte les types de spline suivants : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 101/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ● Type de spline 0 : spline avec programmation de coefficients (coefficients des polynômes du système DAO/FAO), ● Type de spline 1 : courbes spline C1constantes cubiques avec programmation de repères fixes (raccords tangentiels au niveau des points fixes), ● Type de spline 2 : courbes spline C2constantes cubiques avec programmation de repères fixes (raccords à courbure constante au niveau des points fixes), ● Type de spline 3 : courbe spline B avec programmation de points de contrôle (tracé de la courbe près des repères fixes). Le type de spline souhaité est sélectionné et initialisé à l'aide de la fonction "SplineDef" (SDF, voir chap. 6.114 "Définition du type de spline SplineDef, SDF" à la page 311). Ensuite, la programmation spline peut être activée à l'aide de la fonction G6. Pour de plus amples informations relatives aux différents types de spline, voir le manuel "Description des fonctions". Programmation Syntaxe : Activation du type de trajectoire "Spline". G6 Fig.5-20: Syntaxe G06 En fonction du mode de programmation requis, il est possible de programmer G6 pour les différents types de spline avec de différents paramètres modaux : Particularités et restrictions : 5.2.7 Les fonctions suivantes ne peuvent pas être programmées conjointement avec des splines : ● Orientation tensorielle ● Correction de la trajectoire 2D G41/G42 ● Découpage-poinçonnage/grignotage avec division de la trajectoire ● Chanfreins et congés ● Guidage tangentiel de l'outil ● Programmation de précision ● G5 à la suite d'une spline ● Effacement de la course restante Spline avec programmation de coefficients (type de spline 0) Programmation des coordonnées/axes Chaque coordonnée du canal peut être déplacée au choix ● en tant que courbe spline par l'entrée des coefficients polynomiaux : <Nom de co‐ ord.>(<c0>,<c1>,....,<cn>) Fig.5-21: Programmation des différentes coordonnées avec co‐ efficients polynomiaux. Mouvement de coordonnées en tant que courbe spline 102/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ou ● linéairement par l'entrée de la position d'arrivée : <Nom. de coord.>(<Pos. d'arrivée>) Programmation de la position d'arrivée des différent(e)s coordonnées/axes. avec <Nom de coord.> Nom de la coordonnée/de l'axe. <c0>,<c1>,...,<cn> Coefficient polynomial d'une coordonnée "n" correspond au degré de lissage défini dans "Spline‐ Def". <Pos. d'arrivée> Fig.5-22: Exemple : Position d'arrivée de la coordonnée. Mouvement "linéaire" de coordonnées SplineDef(3) G6 X(0.1,1.25,0.5,0.73) Y30 B(0.0,-1.0,0.1,-0.2) Programmation d'un polynôme dénominateur DN(<g0>,<g1>,...,<gn>) Polynôme dénominateur commun pour toutes les coor‐ données spline. avec <g0>, <g1>, ..., <gn>: Coefficients polynomiaux du polynôme dénominateur. n correspond au degré de lissage défini dans "Spline‐ Def". Fig.5-23: Exemple : Programmation d'un polynôme dénominateur SplineDef(3) G6 X(0.1,1.25,0.5,0.73) B(0.0,-1.0,0.1,-0.2) DN(1,0,1) Programmation d'un vecteur d'orientation Ce type de programmation présuppose une transformation d'axe active d'orien‐ tation vectorielle ("Coord(..)"). O1(<o10>,<o11>,...,<o1n>) Comp. x du vecteur d'orientation O2(<o20>,<o21>,...,<o2n>) Comp. x du vecteur d'orientation O3(<o30>,<o31>,...,<o3n>) Comp. x du vecteur d'orientation avec <o10> ,<o11> ,... ,<o1n>: Coefficients spline de la composante x du vecteur d'orientation. <o20> ,<o21> ,... ,<o2n>: Coefficients spline de la composante y du vecteur d'orientation. <o30> ,<o31> ,... ,<o3n>: Coefficients spline de la composante z du vecteur d'orientation. "n" correspond au degré de lissage défini dans "Spline‐ Def". Fig.5-24: Exemple : Programmation d'un vecteur d'orientation N00 ;coefficients de lissage (spline) pour l'orientation vectorielle Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 103/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) 001 PI=3.14159:PIH=PI/2:PIHQ=PIH*PIH:PIHC=PIHQ*PIH N10 G1 F30000 X0 Y0 Z0 B90 C0 N20 SplineDef(3) N30 Coord(1) ;transformation géométrique 5 axes avec orientation vectorielle activée N40 G6 PL[PIH] ;PL voir Programmation de la longueur des paramètres de la spline N50 O1(1,0,-3/PIHQ,2/PIHC) PIHC) O3(0,1,(3-PI)/PIHQ,(-2+PIH)/ N60 O1(0,0,3/PIHQ,-2/PIHC) O3(1,0,(-3+PIH)/PIHQ,(2-PIH)/ PIHC) N70 O(0,1,0) ;orientation vectorielle normale N80 G1 N90 Coord(0) Programmation de la longueur des paramètres de la spline La longueur des paramètres de la spline correspond à la longueur de l'intervalle de définition de w, w commençant à 0...we. La valeur we est modale et reste valide pour tous les blocs CN jusqu'à désélection de G6. La PL doit être programmée dans le premier bloc de déplacement après G6, sinon, un message d'erreur d'exécution sera généré. { PL<we>} Programmation optionnelle de la longueur des paramè‐ tres de la spline. avec <we>: Fig.5-25: Exemple : Valeur quelconque > 0 Programmation de la longueurs des paramètres de la spline G6 X(0.1,1.25,0.5,0.73) B(0.0,-1.0,0.1,-0.2) PL0.6 (X = 0.1 + 1.25 w + 0.5 w2+ 0.73 w3 et B = 0.0 - 1.0 w + o.1 w2- 0.2 w3 avec w va de 0...0.6) 5.2.8 Splines C1 et C2 constantes cubiques (types de spline 1 et 2) Programmation des coordonnées On programme les points d'arrivée des coordonnées du canal. Tous les <Éléments> compris dans "SplineDef" se déplacent sur la courbe spline, les coordonnées restantes non comprises dans "SplineDef" se meuvent linéairement. <Nom de coord.><Pos. d'ar‐ Programmation des différentes coordonnées et de leurs rivée> valeurs. avec <Nom de coord.> Nom de la coordonnée (y compris orientation O). <Pos. d'arrivée> Position d'arrivée de la coordonnée. Fig.5-26: Exemple : Programmation du point d'arrivée des coordonnées du canal Coordonnées x, y, z et coordonnées d'orientation phi, thêta. 104/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) SplineDef(2203,x,y,z,phi,theta) G6 x10 y20 phi20 theta30 x15 y22 O(1,1,2) Exemple : Axes X,Y,U SplineDef(1213,X,Y) G6 X10 Y10 U20 (X et Y se déplacent sous forme d'une spline, U linéaire‐ ment) Conditions de départ et d'arrivée Voir chap. 5.2 "Codes G" à la page 90. Longueur des paramètres de la spline La CN calcule la longueur des paramètres de la spline sur la base des repères fixes définis. Pour ce faire, elle utilise la méthode (paramétrage) indiquée dans l'ID Spline. Si besoin est, la longueur des paramètres de la spline peut égale‐ ment être programmée : { PL<we>} Programmation optionnelle de la longueur des paramè‐ tres de la spline, si la sélection du <Paramétrage> doit être écrasée (voir chap. 6.114 "Définition du type de spline SplineDef, SDF" à la page 311, paramètre <ID>). avec <we> Fig.5-27: 5.2.9 Valeur quelconque > 0 Programmation optionnelle de la longueur des paramètres de la spline Splines B (NURBS) (Type de spline 3) Programmation des coordonnées On programme les points d'arrivée des coordonnées du canal (points de con‐ trôle). Tous les <Éléments> compris dans "SplineDef" se déplacent sur la courbe spline, les coordonnées restantes non comprises dans "SplineDef" se meuvent linéairement. <Nom de coord.><Pos. d'ar‐ Programmation des différents points de contrôle (coor‐ rivée> données) et de leurs valeurs. avec <Nom de coord.> Nom de la coordonnée (y compris orientation O). <Pos. d'arrivée> Position d'arrivée de la coordonnée. Fig.5-28: Exemples : Programmation des points de contrôle (coordonnées/axes) Coordonnées x, y, z et coordonnées d'orientation SplineDef(3103,x,y,z,O) G6 x10 y20 z30 O(0.1,0,1.0) Axes X,Y,U SplineDef(3102,X,Y)G6 X10 Y10 U20 (X et Y se déplacent sous forme d'une spli‐ ne, U linéairement) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 105/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Longueur des paramètres de la spline La CN calcule la longueur des paramètres de la spline automatiquement sur la base des points de contrôle définis. Pour ce faire, elle utilise la méthode (pa‐ ramétrage = 1, 2 ou 3) indiquée dans l'ID Spline. Si besoin est, la longueur des paramètres de la spline peut également être programmée : { PL<we>} Programmation optionnelle de la longueur des paramè‐ tres de la spline, si la sélection du <Paramétrage> doit être écrasée (voir chap. 6.114 "Définition du type de spline SplineDef, SDF" à la page 311, paramètre <ID>). avec <we> Fig.5-29: Valeur quelconque > 0 Programmation optionnelle de la longueur des paramètres de la spline Poids ponctuel spline des points de contrôle pour courbes spline B { PW<w>} Programmation optionnelle de poids ponctuels. Les courbes splines peuvent être modifiées à proximité d'un point de contrôle. avec <w> Valeur par défaut : 1 0 < w < 1: écarte la courbe spline du point de contrôle. w > 1: rapproche la courbe spline au point de contrôle. Fig.5-30: Exemple : Programmation optionnelle de poids ponctuels Coordonnées x, y, z et coordonnées d'orientation SplineDef(3103,x,y,z,O) G6 x10 y20 z30 O(0.1,0,1.0) PW2.3 5.2.10 Conditions secondaires de départ et d'arrivée Pour tous les types de spline, exception faite de type 0 (programmation des coefficients), il est possible de définir les conditions secondaires de départ et/ ou d'arrivée au sein de la séquence spline dans les blocs CN. SBC(<Type BC>{,<Va‐ leurs>}) Condition secondaire pour le point de départ d'un bloc spline ou d'une séquence spline. EBC(<Type BC>{,<Va‐ leurs>}) Condition secondaire pour le point de départ d'un bloc spline ou d'une séquence spline. avec 106/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) <Type BC> 1 (pour types de spline 1, 2) Indication de la direction tangentielle au point de départ et d'arrivée de la séquence spline. Pour tout élément spline, une valeur est à indiquer dans la liste <Valeurs> (3 valeurs pour le vecteur d'orientation). 10 (pour types de spline 1, 2, 3) Les tangentes de départ et d'arrivée montrent en direc‐ tion de la ligne de connexion point de départ-point d'ar‐ rivée du bloc spline actuel. 11 (pour types de spline 1, 2) En cas de SBC : La tangente de départ du bloc spline actuel montre en direction de la ligne de connexion point de départ-point d'arrivée du bloc précédent. 2 (pour types de spline 1, 2) Indication de la seconde dérivée au point de départ ou d'arrivée de la séquence spline après le paramètre spli‐ ne "w". Pour tout élément spline, une valeur est à indi‐ quer dans la liste <Valeurs> (3 valeurs pour le vecteur d'orientation). 3 (uniquement pour type de spline 2) Condition secondaire De Boor, lie les deuxièmes déri‐ vées aux premiers ou aux derniers points d'appui. <Va‐ leurs> est généralement 1. Programmable uniquement au début et à la fin de la séquence spline. 4 (uniquement pour type de spline 2) Condition secondaire périodique : le dernier et le pre‐ mier point de la séquence spline coïncident. SBC(4) requiert impérativement EBC(4) et vice versa. Toute la séquence spline doit se trouver dans la zone de prévi‐ sualisation, car, dans le cas contraire, un message d'erreur d'exécution sera généré. <Valeurs> Uniquement en combinaison avec le type BRC = 1, 2 et 3 Valeurs de défaut 0,...,0 pour les types BC = 1, 2 et 1,...,1 pour le type BC = 3 Aucunes valeurs pour les types BC 10,11 et 4 Fig.5-31: Exemples : Conditions secondaires de départ et d'arrivée SBC(1, 1.0, 1.0, 0.2) pour SplineDef(1213,X,Y,B) SBC(1, 1.0, 1.0, Def(2203,x,y,z,O) 0.2, 0.0, EBC(2) pour SplineDef(2203,x,y,z,O) EBC(10) pour SplineDef(3203,x,y,z,O) 0.5, 0.5) pour Spline‐ Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 107/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) 5.2.11 Pente de trajectoire ACTIVÉE "G08", Pente de trajectoire DÉSACTI‐ VÉE "G09" Effet ● Sans une "pente de trajectoire", la commande exécute un Upslope et Downslope complet à la vitesse v=0 au début et à la fin du bloc de dépla‐ cement. Cela réduit l'écart de contour au niveau du raccord des blocs, mais requiert également un temps d'usinage plus long. ● Via la fonction "Pente de la trajectoire", la commande essaie de générer une vitesse aussi constante que possible, de l'ordre de l'avance program‐ mée, également au niveau du raccord des blocs. Ceci réduit le temps d'usinage. Le fait que le contour soit, le cas échéant, "rectifié" au niveau des angles peut être avantageux pour certaines opérations d'usinage (surface plus uniforme). Fig.5-32: Pente de trajectoire Lors du calcul du profil de vitesse optimal, outre la capacité de saut de l'axe (MP 1010 00011), la commande tient compte du nombre des blocs de programme suivants (prévisualisation de blocs ; MP 7060 00110 7060 00130), car une décélération au sein de la marge dynamique de la machine doit être garantie à tout moment. Pour limiter les malfaçons de contour au droit des angles réels, la capacité de saut de l'axe ne doit pas être trop importante. D'un autre côté, un saut de l'axe trop faible entraîne un freinage inopportun au droit des petits coudes de contours (raccords quasi-continus). Il est possible d'entrer un filtrage de l'accélération de trajectoire en tant que réglage par défaut pour G8 dans le paramètre machine 7050 00320 (fonction SHAPE, voir également chap. 5.2 "Codes G" à la page 90). 108/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Programmation Syntaxe : G8 Pente de trajectoire ACTIVÉE G9 Pente de trajectoire DÉSACTIVÉE Fig.5-33: Particularités et restrictions : 5.2.12 Syntaxe G08, G09 ● Si "Arrêt précis" est activé, la vitesse est réduite après tout bloc à v=0, bien que la fonction G8 soit active. ● Les fonctions auxiliaires peuvent réduire l'effet de G8, si leur temps d'exé‐ cution, validation comprise, n'est pas nettement inférieur au temps d'in‐ terpolation d'un bloc. Le cas échéant, il faut prolonger la course de déplacement d'un bloc ou réduire son avance. ● La pente de trajectoire n'affecte que les axes synchrones (axes d'usina‐ ge). ● Les fonctions G8 et G9 forment un groupe de fonctions modales avec les fonctions rampe et se révoquent réciproquement. Profil de vitesse avec limitation du jerk "G8(SHAPE...)", "G9(SHA‐ PE...)", "G9(ASHAPE...)", "G9(X... , Y... , ...)", "AsynchrShapeOrder, ASO" Effet Le profil de vitesse avec limitation du jerk filtre les sauts qui se produisent sur plusieurs cycles d'interpolation au fur et à mesure de l'accélération de trajec‐ toire. Le nombre des cycles d'interpolation est programmable. De cette façon, il est possible d'obtenir de douces transitions de vitesse (limi‐ tation du jerk). Le profil de vitesse avec limitation du jerk est possible aussi bien en ● "mode trajectoire" (la fonction G8 étant active), ainsi qu'en ● "mode de positionnement" (la fonction G9 étant active), ainsi qu'en ● "mode asynchrone". Le profil de vitesse avec limitation du jerk est également appelé Fonction SHA‐ PE. Fig.5-34: Division de l'accélération avec/sans SHAPE Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 109/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Shape pour le mode trajectoire - programmation Syntaxe : G8{(SHAPE<Valeur>)} avec <Valeur> 0 ou 1 : Désactiver Shape pour le mode trajectoire. 0 ou 1 : 2 à 100 (nombres entiers) : Nombre de cycles d'interpolation sur lequel la comman‐ de doit répartir linéairement le saut (ordre SHAPE) . Sans paramètre SHAPE : Déplacement avec la valeur de défaut enregistrée pour SHAPE dans le paramètre machine 7050 00320. Fig.5-35: Syntaxe G08(SHAPE) La modification de l'ordre SHAPE entraîne toujours une vitesse d'enchaînement de blocs v = 0. Exemple : N30 G8(SHAPE10) : Activer SHAPE en mode trajectoire et répartir les sauts d'accélération sur 10 cycles IPO. : N50 G8(SHAPE0) Désactiver SHAPE en mode trajectoire. : : N70 G8(SHAPE1) Désactiver SHAPE en mode trajectoire. : : N90 G8 Déplacement avec la valeur de défaut enregistrée pour SHAPE dans le paramètre machine 7050 00320. Shape pour le mode de positionnement - programmation Syntaxe : G9{(SHAPE<Valeur>)} Activer SHAPE linéaire en mode de positionnement. avec <Valeur> Nombre de cycles d'interpolation sur lequel la comman‐ de doit répartir linéairement un saut d'accélération. Plage de valeurs : 2 ... 100 cycles ; nombre entiers. Sans paramètres SHAPE : Déplacement avec la valeur de défaut enregistrée pour SHAPE dans le paramètre machine 7050 00340. G9(SIN<Valeur>) Activer SHAPE de forme sin2 en mode de positionne‐ ment. avec 110/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) <Valeur> Nombre de cycles d'interpolation sur lesquels la com‐ mande doit répartir sous forme sin2 un saut d'accéléra‐ tion. Les valeurs suivantes sont admissibles : 5: 5 cycles IPO 10: 10 cycles IPO 15: 15 cycles IPO 20: 20 cycles IPO 40: 40 cycles IPO G9(ASHAPE { , TYP <i> } ) Chaque axe du canal attribue l'ordre SHAPE spécifique à l'axe correspondant (nombre de cycles IPO) à partir de MP 1003 00008 et calcule l'ordre SHAPE résultant par bloc respectif pour la trajectoire. G9( <Par1>{,<Par2>,...} {,TYP<i>} ) Programmer l'ordre SHAPE axe par axe. Pour les axes non programmés, l'ordre SHAPE est repris du paramè‐ tre MP 1003 00008. avec <Parx> Nom logique d'axe avec ordre SHAPE devant être at‐ tribué à cet axe (maximum 100). Exemple : Ordre SHAPE (axe X) = 4 N30 G9(X4,Y6,Z10) Ordre SHAPE (axe Y) = 6 Ordre SHAPE (axe Z) = 10 TYP 0 ou aucun TYP Tout ordre Shape d'un axe est évalué avec le rapport entre l'accélération réelle de l'axe et l'accélération maxi‐ male de l'axe. L'ordre le plus haut ainsi déterminé de‐ vient l'ordre Shape de la trajectoire (voir ci-dessous). TYP 1 L'ordre Shape le plus haut devient l'ordre Shape de la trajectoire. Fig.5-36: Syntaxe G09(SHAPE) et G09(ASHAPE) Ordre Shape résultant L'ordre Shape résultant de la trajectoire Sb correspond au maximum des ordres Shape des axes effectifs Sieff de tous les axes participant à l'interpolation : Sb= max {S1eff,..., Sneff} Pour G9(…,TYP0) ou pour les cas sans indication TYP, les ordres Shape effi‐ caces des axes Sieff sont calculés à partir des ordres Shapes programmés selon la formule : Pour G9(…,TYP1) s'applique ce qui suit : Sieff = Sip Ici : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 111/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Sip Ordre Shape des axes programmé avec G9 (...). aieff Accélération effective des axes dans le bloc CN actuel. En cas de l'interpolation linéaire, cette valeur est fonc‐ tion de la part actuelle de l'axe dans la trajectoire. Avec les autres modes d'interpolation (p.ex. circulaire, héli‐ coïdale), elle correspond normalement à l'accélération de l'axe programmée avec "AxAcc". Quant aux fonctions "Plan incliné" ou "Couplage d'axes", l'accélération effective des axes est, en règle générale, encore diminuée par rapport à la valeur défi‐ nie dans "AxAcc" ! Accélération maximale de l'axe (de MP 1010 00001). aimax Fig.5-37: Ordre Shape de l'axe, accélération efficace de l'axe et accélération maximale de l'axe "AxAcc" ne modifie pas l'accélération maximale de l'axe réglée en MP 1010 00001 ! Rapport entre ordre Shape et jerk Avec les ordres Shape des axes Sieff, un jerk maximal rimax (dérivée de l'accé‐ lération en fonction du temps) est défini pour chaque axe, cette valeur n'étant pas dépassée quel que soit le mouvement. Le jerk est défini par : Tipo : Temps de cycle de l'interpolateur Exemple : L'axe X a une accélération maximale (MP 1010 00001) de 10 m/s2. L'ordre Shape programmé de l'axe est de 5 et le cycle d'interpolation de 4 ms. Suivant la formule ci-dessus, le jerk maximal défini pour l'axe X est alors de 500 m/s3. Shape pour axes asynchrones Syntaxe : AsynchShapeOrder <Valeur> Format abrégé : ASO <Valeur> avec <Valeur> Fig.5-38: Exemple : Nombre de cycles d'interpolation sur lesquels la com‐ mande doit répartir linéairement un saut d'accélération. Plage de valeurs : 2 ... 100 cycles ; nombre entiers. Syntaxe AsynchShapeOrder N10 W150 FA20000 ASO(100) Le jerk de l'axe découle de : 112/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Si l'ordre Shape n'est pas indiqué dans le bloc, la valeur de défaut du paramètre 1003 00008 "Ordre Shape pour axe" est utilisée. Exemple : N10 W150 FA1000 AxAcc(W0.5) Le jerk de l'axe découle de : Le paramètre 1003 00007 "Ordre Shape minimal pour la limitation du jerk" ne doit jamais être dépassé négativement. Si aucun ordre Shape n'est programmé et si les paramètres pour le préréglage et l'ordre Shape minimal sont affectés 0 ou 1, la commande réalise le déplacement de l'axe sans limitation du jerk. L'indication de l'ordre Shape pour les axes asynchrones est efficace par bloc et se réfère à tous les axes synchrones programmés. 5.2.13 Aucun plan "G16" Effet Désactive un plan éventuellement actif. Pour cette fonction s'applique ce qui suit : ● Si un axe principal ou secondaire est extrait d'un canal (p.ex. en relation avec la fonctionnalité "Transfert d'axe"), la commande désactive automa‐ tiquement le plan sélectionné et active la fonction G16. Toute interpolation circulaire/hélicoïdale est impossible dans ce canal tant qu'un plan valide ait été à nouveau sélectionné. ● Pour certaines applications, certains types de machine ou unités de trai‐ tement, la configuration d'un plan n'est pas nécessaire, si une interpolation circulaire ou hélicoïdale n'est pas requise (par exemple dans le cas de canaux avec seulement un axe d'usinage). Dans le MP 7010 00030 (signification des coordonnées), on peut donc inscrire "999" pour chaque axe (aucun rôle technique). ● Si, en état de marche d'un canal (MP 7060 00010 et 7060 00020), aucune fonction de plan (G17, G18, G19, G20) n'a été entrée, la fonction G16 est alors automatiquement activée pour le canal correspondant. ● Les fonctions G16, G17, G18, G19 et G20 forment un groupe de fonctions modales et se révoquent ainsi réciproquement. Programmation Syntaxe : Particularités et restrictions : 5.2.14 G16 Si la correction de trajectoire de la fraise (G41/G42) est active, il ne faut pas changer ou désactiver le plan actif. Changement de plan "G17, G18, G19" Effet Le plan actif est sélectionné au moyen de la fonction "Changement de plan". Elle est définie par une coordonnée principale et une coordonnée secondaire ainsi que, le cas échéant, par un axe d'approche qui doit être perpendiculaire au plan. À cet effet, G17, G18 et G19 sont programmés sans paramètres. Un système de coordonnées cartésiennes de la pièce à usiner (WCS) est soustendu par les axes X, Y et Z pour une machine-outil cartésienne type. 3 plans de base au total peuvent être définis par respectivement 2 axes des coordon‐ nées du système de coordonnées de la pièce à usiner. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 113/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Le plan actif est sélectionné au moyen de la fonction "Changement de plan". Elle est définie par une coordonnée principale et une coordonnée secondaire ainsi que, le cas échéant, par un axe d'approche qui doit être perpendiculaire au plan. À cet effet, G17, G18 et G19 sont programmés sans paramètres. Ces coordonnées de même que le plan actif sont définis par G17, G18 et G19 comme suit : Fig.5-39: Changement de plan Coordonnée prin‐ Coordonnée se‐ cipale condaire Coordonnée d'approche Plan actif G17 X Y Z XY G18 Z X Y ZX G19 Y Z X YZ Fig.5-40: Aperçu des coordonnées G17, G18 et G19 Programmation Syntaxe : G17 G18 G19 Particularités et restrictions : ● Si la correction de trajectoire de la fraise (G41/G42) est active, il ne faut pas changer ou désactiver le plan actif. ● Quant aux paramètres d'interpolation I,J,K pour G02/03 et G33 s'applique ce qui suit : "I" se rapporte à l'axe X. "J" se rapporte à l'axe Y. "K" se rapporte à l'axe Z. ● La correction de la longueur de l'outil est assignée au plan actif à l'aide de G47(ActPlane) comme suit : L1 à la coordonnée principale. L2 à la coordonnée secondaire. L3 à la coordonnée d'approche. Cette assignation est mise à jour après le changement du plan actif. ● Assignation indépendamment des noms d'axe : Les fonctions G16, G17, G18, G19 et G20 forment un groupe de fonctions modales et se révoquent ainsi réciproquement. Il est possible de librement régler les noms d'axe dans l'IndraMotion MTX. De ce fait, la sélection des axes, qui doivent sous-tendre le système de coordon‐ nées de base de la pièce à usiner (WCS), est effectuée au moyen du paramètre machine 7010 00030 (signification des coordonnées). Celui-ci définit, indépen‐ 114/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) damment des noms d'axes configurés, quels axes respectifs sous-tendent les coordonnées X, Y et Z du système de coordonnées de la pièce à usiner : Axe avec "Signification d'axe X" : coordonnée X du WCS. Axe avec "Signification d'axe Y" : coordonnée Y du WCS. Axe avec "Signification d'axe Z" : coordonnée Z du WCS. De façon générale, on obtient donc l'assignation suivante pour G17, G18 et G19 : Coordonnée prin‐ Coordonnée se‐ cipale condaire Plan actif G17 Coord. X WCS Coord. Y WCS Coord. Z WCS Coord. XY WCS G18 Coord. Z WCS Coord. X WCS Coord. Y WCS Coord. ZX WCS G19 Coord. Y WCS Coord. Z WCS Coord. X WCS Coord. YZ WCS Fig.5-41: 5.2.15 Coordonnée d'approche Aperçu de l'assignation des noms d'axe Changement de plan avancé "G17(...), G18(...), G19(...)" Effet Lors du changement de plan avancé, outre la sélection du plan actif, on définit également quels axes doivent actuellement sous-tendre le système de coor‐ données de base de la pièce à usiner WCS. De cette façon, il est possible de définir pendant l'exécution un système de coordonnées de base de la pièce à usiner qui est différent du réglage dans les paramètres machine et de sélectionner le plan actuel sur la base de celui-ci. Le plan est sélectionné selon l'aperçu suivant : Coordonnée prin‐ Coordonnée se‐ cipale condaire Coordonnée d'approche Plan actif G17 Coord. X WCS Coord. Y WCS Coord. Z WCS Coord. XY WCS G18 Coord. Z WCS Coord. X WCS Coord. Y WCS Coord. ZX WCS G19 Coord. Y WCS Coord. Z WCS Coord. X WCS Coord. YZ WCS Fig.5-42: Aperçu de l'assignation des noms d'axe Programmation Syntaxe : G17(<Axe1>,<Axe2>,<Axe3> ) G18(<Axe1>,<Axe2>,<Axe3> ) G19(<Axe1>,<Axe2>,<Axe3> ) avec <Axe1> "Coordonnée X" du système de coordonnées de la piè‐ ce à usiner WCS <Axe2> "Coordonnée Y" du système de coordonnées de la piè‐ ce à usiner WCS <Axe3> "Coordonnée Z" du système de coordonnées de la piè‐ ce à usiner WCS Fig.5-43: Particularités et restrictions : ● Syntaxe G17 - G19 Les axes peuvent être programmés par désignation d'axe logique (spé‐ cifique au canal) ou physique (spécifique au système) et doivent être Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 115/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) différents les uns des autres. L'entrée est possible soit directement, soit en tant que variable chaîne CPL. ● Les axes programmés doivent être affectés au canal actuel. ● Pour la programmation, il suffit d'entrer comme paramètres les axes qui doivent être configurés. Pour tous les axes restants, les coordonnées cor‐ respondantes du WCS restent inchangées. Exemple : G17(,,W) La coordonnée Z du WCS est définie au moyen de l'axe W. Les coordon‐ nées X et Y du WCS restent inchangées. Le plan actif est sous-tendu par les coordonnées X et Y du WCS. ● La programmation des parenthèses vides reproduit le WCS configuré dans MP 7010 00030, puis active le plan sélectionné. Exemple : G17() ● La fonction ne doit pas être programmée, si la fonction "Correction de trajectoire de la fraise" (G41/G42) est active. Si la correction de trajectoire de la fraise est active, il ne faut généralement pas changer ou désactiver le plan. 5.2.16 ● Si la correction d'axes est active, aucun changement de plan avancé ne peut être programmé, car le WCS est sous-tendu par les coordonnées tridimensionnelles. ● Les fonctions G16, G17, G18, G19 et G20 forment un groupe de fonctions modales et se révoquent ainsi réciproquement. Libre sélection de plan (indépendamment du WCS) "G20" Effet La libre sélection de plan est nécessaire pour les applications lors desquelles le plan actif doit être découplé du système de coordonnées actuel de la pièce à usiner (WCS). Elle permet de sous-tendre les axes quelconques, sans con‐ sidérer si ceux-ci sous-tendent aussi le WCS. Il est ainsi possible, entre autres, de calculer les corrections d'outil (G41, G42, G47) dans les coordonnées principale, secondaire et d'approche du plan ac‐ tuel, alors que les transformations de la pièce à usiner (placements, corrections du plan sous-tendu) se rapportent en même temps à un système de coordon‐ nées de la pièce à usiner qui est sous-tendu par d'autres axes. Programmation Syntaxe : G20(<Axe1>,<Axe2>{,<Axe3>} ) avec <Axe1> Coordonnée principale du plan à sous-tendre ; affectée au paramètre d'interpolation "I". <Axe2> Coordonnée secondaire du plan à sous-tendre ; affec‐ tée au paramètre d'interpolation "J". <Axe3> Coordonnée d'approche du plan à sous-tendre. Peut être programmé, si une coordonnée d'approche doit absolument être prévue pour la correction d'outil "G47(ActPlane)". Fig.5-44: Syntaxe G20 116/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Particularités et restrictions : ● Les axes peuvent être programmés par désignation d'axe logique (spé‐ cifique au canal) ou physique (spécifique au système). ● Une correction de trajectoire de la fraise G41/G42 se rapporte au plan sélectionné. Pour cette raison, il ne faut changer le plan actif que si la correction de trajectoire de la fraise (G40) est désactivée. Sinon, un mes‐ sage d'erreur sera émis. ● La correction de la longueur de l'outil est assignée au plan actif à l'aide de "G47(ActPlane)" comme suit : L1 à la coordonnée principale. L2 à la coordonnée secondaire. L3 à la coordonnée d'approche. Cette assignation est mise à jour après le changement du plan actif. ● 5.2.17 Les fonctions G16, G17, G18, G19 et G20 forment un groupe de fonctions modales et se révoquent ainsi réciproquement. Filetage "G33" Effet Cette fonction permet l'exécution de ● filetages longitudinaux (mouvement de coupe parallèle à l'axe principal du plan actif), ● filetages transversaux (mouvement de coupe parallèle à l'axe secondaire du plan actif), ● filetages coniques (avec participation de l'axe principal et de l'axe secondaire du plan actif). G33 est possible soit avec broche asservie en vitesse, soit avec broche asser‐ vie en position. Le mouvement de coupe est toujours associé à la broche principale active dans le canal correspondant (voir chap. 6.54 "Changement de broche principale MainSp, MSP" à la page 243). La vitesse d'avance du mouvement de coupe est la résultante de la vitesse de rotation actuelle de la broche et du pas en pourcentage respectivement pro‐ grammé (constant, variable ; voir chap. "Programmation" à la page 117). Particularités : ● Possibilité de réaliser les filetages uniques et multiples. ● Possibilité de programmer les pas de filetage constants et variables. ● Dynamique spéciale réglable en cours du filetage. ● Possibilité de programmer un mouvement de dégagement rapide. ● Possibilité de fabriquer des filets enchaînés. Le potentiomètre d'avance n'a aucun effet en cours de G33. Le filetage, comme l'interpolation circulaire (G2, G3), est une fonc‐ tion dépendante du plan actif (G17…G20). Le comportement de la fonction "Filetage" est normalement défini au moyen des paramètres machine 7050 006xx. Comme il est judicieux en cas particuliers ou au cours de la première mise en service de pouvoir adapter certains zones partielles, on a prévu la fonction Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 117/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) "ThreadSet" (pour la description, voir chap. 6.124 "Fonctions additionnelles pour le taraudage ThreadSet, TST" à la page 325). "ThreadSet" permet ● une adaptation de la dynamique et du mouvement de dégagement. ● la commutation du mode de fonctionnement de la broche (asservissement en vitesse, en position). ● l'initialisation d'un signal au niveau de l'interface canal (configurable au sein des signaux "Fonction active" via les paramètres machine). Programmation Syntaxe : G33G33 <EP> <Pas constant> {<Pas var.>} {Angle de départ} avec <EP> Coordonnés de l'axe principal et de l'axe secondaire du plan actif. Le plan actif est déterminé par G17, G18, G19 ou G20 Exemple : Le plan actif pour G18 est normalement sous-tendu par les axes Z (axe principal) et X (axe secondaire). <Pas constant> Détermine la course (en mm) qui sera parcourue par tour de broche en direction de l'axe principal ou de l'axe secondaire. On programme la valeur avec le paramètre d'interpolation (I, J ou K) respectivement valide dans le plan actif. En cas de filetages coniques, le pas de filetage entré doit toujours se rapporter à la direction principale de coupe. Exemple : Pour G18, le paramètre K est affecté à l'axe principal et le paramètre I à l'axe secondaire. Pour un filet longitu‐ dinal (pas dans le sens de l'axe principal), le pas de filetage constant est programmé avec l'adresse K. <Pas variable> Paramètre optionnel avec l'adresse DF. Définit l'augmentation/la réduction du pas en mm par tour de broche. Programmation : "DF<Valeur>" avec <Valeur> en mm. <Angle de départ> Paramètre optionnel. Si <Angle de départ> n'est pas programmé, le système se base sur un angle de 0 degré. L'angle de départ (décalage au départ) est requis pour les filets multiples. L'adresse est représentée par le pa‐ ramètre d'interpolation qui n'est pas associé au plan actif. Exemple : Pour G18, les adresses I et K sont affectées au plan. L'adresse de l'angle de départ est donc J. Fig.5-45: Exemple : Syntaxe G33 Filet longitudinal 118/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) G91 G18 G8 M3 S1000 Activer la programmation relative. Activer le plan Z/X. G0 X-10 Mouvement d'approche de l'outil de coupe (1). G33 Z-50 K2 Filetage (2). Point d'arrivée : incrément de -50 mm en direction Z. Pas de filetage constant : 2 mm/tour. Paramètres d'interpolation : ici K. Dégagement de l'outil de coupe (3). G0 X10 Fig.5-46: Exemple : Filet longitudinal Filet transversal G91 G18 G8 M3 S1000 Activer la programmation relative. Activer le plan Z/X. G0 Z-10 Mouvement d'approche de l'outil de coupe (1). G33 X40 I2 Filetage (2). Point d'arrivée : incrément de +40 mm en direction X. Pas de filetage constant : 2 mm/tour. Paramètres d'interpolation : ici I. Dégagement de l'outil de coupe (3). G0 Z10 Fig.5-47: Exemple : Filet transversal Filet longitudinal conique G91 G18 G8 M3 S1000 Activer la programmation relative. Activer le plan Z/X. G0 X-20 Mouvement d'approche de l'outil de coupe (1). Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 119/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) G33 Z-50 X15 K2 Filetage (2). Point d'arrivée : incrément de -50 mm en direction Z et de +15 mm en direction X. Pas de filetage constant : 2 mm/tour. Paramètres d'interpolation : ici I. Dégagement de l'outil de coupe (3). G0 X5 Fig.5-48: Filet longitudinal conique Filets enchaînés ● Exécution possible à partir de tous les modes de filetage mentionnés cidessus. ● Programmation par plusieurs blocs consécutifs G33. La CN vérifie pour chaque bloc G33 programmé si le bloc suivant est un bloc G33 avec course. Si cela est le cas, le passage au bloc suivant doit être effectué sans arrêt de l'axe. Filets multiples Pour l'exécution de filets multiples, il faut décaler l'angle de départ (angle de départ, voir "Syntaxe :" à la page 117). Exemple : Pour exécuter un filet quadruple, il faut effectuer quatre coupes respectivement décalées de 90 degrés (0, 90, 180, 270). Fig.5-49: Filet quadruple Comportement dynamique Au début et à la fin de l'usinage d'un filet, les axes intéressés doivent être ac‐ célérés ou décélérés (jusqu'à l'arrêt). 120/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) En conséquence, il faut toujours prévoir un tronçon d'entrée (pour l'accélération des axes de coupe) et un tronçon de sortie (pour la décélération jusqu'à l'arrêt), ces tronçons devant être suffisamment dimensionnés. Par principe, on distingue 2 possibilités d'usinage : ● Démarrage "rigide" et fin "rigide" du mouvement de coupe : Au début du mouvement G33, l'axe ou les axes passe(nt) à la vitesse de coupe dès que l'angle de départ est atteint (vitesse de la broche * pas constant). À la fin du mouvement G33, la vitesse saute à 0. ● Démarrage/fin du mouvement de coupe avec dynamique individuellement programmable : La solution "rigide" n'étant pas toujours souhaitée ou ne pouvant pas tou‐ jours être exécutée en raison de limitations au niveau de la dynamique des axes, il est également possible de programmer manuellement le com‐ portement dynamique quant au saut de vitesse, à l'accélération de dé‐ marrage et de freinage : – de manière statique à l'aide des paramètres machine (7050 00610, 7050 00615 et 7050 00620). – de manière dynamique à l'aide du programme pièce avec "TreadSet(DYN)" (voir chap. 6 "Fonctions CN avec syntaxe de langage standard" à la page 175). La commande calcule à partir de l'angle de départ programmé un angle de départ décalé en fonction de la pente de la rampe d'accélération. Ceci permet de garantir que le pas de filetage réalisé sera toujours le même indépendamment de la grandeur de l'accélération. À la fin du filet, l'axe/les axes de coupe, découplé(s) de la broche, est/sont décéléré(s) conformément à l'accélération de freinage réglée, d'abord à la vitesse de saute et puis normalement jusqu'à l'arrêt. Si, toutefois, avec G8 activée, un autre bloc de déplacement suit directe‐ ment le bloc G33, le mouvement de ce bloc démarre avec la vitesse qui aurait été disponible, si le bloc de filetage était un bloc G1. Dégagement rapide En relation avec G33, un "dégagement rapide" peut s'avérer judicieuse. Dans la mesure où les données de dégagement ● sont configurés – (de manière statique à l'aide des paramètres machine (7050 00645, 7050 00650) ou – de manière dynamique dans le programme avec "TreadSet(RD...)" (chap. 6.124 "Fonctions additionnelles pour le tarau‐ dage ThreadSet, TST" à la page 325) et ● activées – (de manière statique à l'aide des paramètres machine (7050 00640) ou – de manière dynamique dans le programme avec "TreadSet(RON1)" (chap. 6.124 "Fonctions additionnelles pour le tarau‐ dage ThreadSet, TST" à la page 325), Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 121/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) un front montant sur le signal IF du canal "Dégagement rapide" déclenche le mouvement de dégagement avec le déroulement suivant : 1. Le mouvement de coupe est superposé par un mouvement orienté per‐ pendiculairement à la direction principale de coupe. 2. Lorsque plus de 70% de la course de dégagement ont été effectués, l'axe(les axes) de coupe est(sont) découplé(s) de la broche et arrêté(s) avec l'accélération de freinage programmée (paramètres machine 7050 00620). Si le dégagement a été déclenché, cet état ne peut être quitté qu'avec la "Remise à zéro" ou "Quitter le contour". Les mouvements de dégagement sont toujours effectués perpendiculairement à la direction principale de coupe, en direction de l'axe de coupe secondaire. La CN déclenche automatiquement un mouvement de dégagement, quand l'événement "Remise à zéro du canal", "Remise à zéro du système" et "Remise à zéro de la broche" se produit. Exemple : Dégagement à partir d'un filetage longitudinal G18 Activer le plan Z/X (G18). TST(RON1) Activer le dégagement rapide (RON1). TST(RD(0,5)) Mouvement de dégagement (RD...) de +5 mm en direc‐ tion de l'axe de coupe secondaire (ici X). : G91 G33 Z-20,K1 Programmation incrémentale activée (G91). Filetage (G33). Point d'arrivée : incrément de -20 mm en direction Z. Pas de filetage constant : 1 mm/tour. Paramètres d'in‐ terpolation : ici K. 5.2.18 Correction de trajectoire de la fraise "G40, G41, G42" Effet La correction de trajectoire de la fraise permet, lors de l'exécution d'un pro‐ gramme pièce, d'amener l'outil sur une ligne équidistante parallèle à la trajec‐ toire programmée (ligne équidistante = trajectoire à une distance constante perpendiculaire au contour programmé). L'écart entre la ligne équidistante et la trajectoire programmée est fonction de la valeur activée de correction du rayon. Le schéma suivant illustre le principe appliqué : 122/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Fig.5-50: Correction de trajectoire de la fraise Programmation Syntaxe : G40 Correction de trajectoire de la fraise DÉS‐ ACTIVÉE (état de mise en service). Si aucun mouvement de déplacement n'est programmé dans le bloc G40, la com‐ mande désactive la correction immédiate‐ ment et perpendiculairement au bloc de déplacement précédent. Si un mouvement de déplacement est pro‐ grammé dans le bloc G40, la commande désactive la correction linéairement sur le parcours menant au point d'arrivée du mouvement de déplacement programmé. En fonction du fait s'il s'agit d'un angle in‐ térieur ou d'un angle extérieur, la désacti‐ vation de la correction se fait à partir de la verticale finale du bloc précédent ou de la verticale initiale du bloc actuel. S'il s'agit d'un angle extérieur, le cas échéant, un segment de trajectoire transitoire est insé‐ ré pour les transferts de contour (G43/ G44) en fonction de la stratégie actuelle. G40(ORTH) Correction de trajectoire de la fraise DÉS‐ ACTIVÉE. Indépendamment du fait si le raccord du contour entre le contour et le bloc de dé‐ connexion se distingue par un angle intér‐ ieur ou un angle extérieur, la désactivation de la correction se fait à partir de la verti‐ cale finale du bloc précédent. La désacti‐ vation se fait linéairement sur le parcours menant au point d'arrivée du mouvement de déplacement programmé. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 123/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) G41 Correction de trajectoire de la fraise à gau‐ che de la pièce à usiner ACTIVÉE (avec des valeurs de correction positives vues dans le sens de l'usinage). Si aucun mouvement de déplacement n'est programmé dans le bloc G41, la com‐ mande active la correction immédiatement et perpendiculairement à la direction ini‐ tiale du bloc de déplacement suivant. Si un mouvement de déplacement est pro‐ grammé dans le bloc G41, la commande active la correction linéairement sur le par‐ cours menant au point d'arrivée du mou‐ vement de déplacement programmé. En cas d'un angle intérieur, l'activation de la correction se fait sur la verticale initiale du déplacement suivant programmé. À un angle extérieur, l'activation de la cor‐ rection se fait sur la verticale finale du bloc de mise en service. En fonction de la stra‐ tégie actuelle pour le raccord du contour (G43/G44), un segment de transition est inséré le cas échéant. G41(ORTH) Correction de trajectoire de la fraise à gau‐ che de la pièce à usiner ACTIVÉE Indépendamment du fait si le raccord du contour suivant se distingue par un angle intérieur ou un angle extérieur, l'activation de la correction se fait sur la verticale ini‐ tiale du bloc de déplacement suivant. G42 Correction de trajectoire de la fraise à droi‐ te de la pièce à usiner ACTIVÉE. Pour le reste comme voir G41. G42(ORTH) Correction de trajectoire de la fraise à droi‐ te de la pièce à usiner ACTIVÉE. Pour le reste voir G41(ORTH). Fig.5-51: ATTENTION Particularités et restrictions : Syntaxe G40 - G42 Les valeurs de correction sont, le cas échéant, entrées ou sorties im‐ médiatement sans programmation d'un mouvement de déplacement séparé. Ceci peut entraîner un endommagement de la pièce à usiner ou de l'outil. Pour cette raison, respecter toutes les informations fournies dans le présent chapitre ! ● Les fonctions G40, G41 et G42 sont des fonctions modales qui se révo‐ quent mutuellement. ● Si G40, G41 ou G42 sont actives, G2, G3 ou G5 doivent absolument et toujours être programmées sans mouvement de déplacement. ● Si G41 et G42 sont actives, les fonctions suivantes sont interdites : – G17 ... G20 (Changement de plan) 124/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ● 5.2.19 – G70, G71 (Commutation du système pouce/métrique) – G63 (Taraudage sans mandrin de compensation) – G74 (Approche des coordonnées du point de référence) – G75 (Entrée du palpeur de mesure) – G76 (Approche de la position fixe des axes machine) – G54.x ... G59.x (Décalages d'origine) – G154.x ... G159.x (Plan incliné) G40, G41 et G42 n'ont aucune influence sur une correction active de la longueur d'outil. Raccords de contour pour la correction de trajectoire de la fraise : Con‐ gé "G43", Point d'intersection "G44" Effet Fonction pour la correction active de trajectoire de la fraise (G41, G42). La commande réalise un raccord de contour aux angles extérieurs soit sous la forme d'un ● congé engendré automatiquement(G43), soit sous la forme d'un ● point d'intersection des lignes équidistantes (G44). G43 : Congé Le "vide" sur la trajectoire est comblé par un congé tangentiel du rayon "r". Fig.5-52: Congé G43 G44 : Point d'intersection La commande essaie de fermer le vide entre les deux éléments de trajectoire en définissant un point d'intersection pour les deux lignes équidistantes. En fonction de l'écart "A" entre l'angle de contour "KE" et le point d'intersection "S", la commande procède de la façon suivante : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 125/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Fig.5-53: Point d'intersection G44 Si aucun point d'intersection n'existe, la ligne est fermée avec G43 au moyen d'un congé. Programmation Syntaxe : G43 Raccord de contour sous la forme d'un congé G44 Raccord de contour sous la forme d'un point d'intersec‐ tion des lignes équidistantes. Fig.5-54: Syntaxe G43, G44 Pour ces fonctions s'applique ce qui suit : Particularités et restrictions : 5.2.20 ● Les fonctions G43 et G44 sont des fonctions modales qui se révoquent réciproquement. ● L'état de marche peut être défini à l'aide des paramètres machine. G43 ou G44 sont programmés sans condition de course. Correction de l'avance : Point de pénétration de la fraise "G45", Centre de la fraise "G46" Effet Fonction pour la correction active de trajectoire de la fraise (G41, G42). Ces fonctions définissent si, en cas d'interpolation circulaire, la commande doit maintenir constante l'avance programmée ● sur le point de pénétration de la fraise (trajectoire de coupe de la fraise) ou ● sur la trajectoire du centre de la fraise . 126/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Fig.5-55: Avance G45 et G46 Programmation Syntaxe : G45 Maintenir constante l'avance FB le long de la trajectoire de coupe. G46 Maintenir constante l'avance FM le long de la trajectoire du centre de la fraise. Fig.5-56: Syntaxe G45, G46 Pour ces fonctions s'applique ce qui suit : Particularités et restrictions : 5.2.21 ● Les fonctions G45 ou G46 sont des fonctions modales qui se révoquent mutuellement. ● L'état de marche peut être défini à l'aide des paramètres machine. Comme la vitesse d'avance peut fortement augmenter sur les contours circu‐ laires, n'utiliser G45 que pour le fraisage de finition. Correction de la longueur de l'outil "G47, G48" Effet La fonction ● active/désactive la correction de la longueur de l'outil. ● commute en option l'affectation des valeurs de correction de longueur L1, L2 et L3 en différentes coordonnées (fonctionnement comme G78 ; voir chap. 5.2.33 "Changement pour correction ACTIVÉ G78, Changement pour correction DÉSACTIVÉ G79" à la page 141). Si la correction de la longueur de l'outil est activée, les éléments suivants sont importants : ● les valeurs de correction de longueur L1, L2 et L3 du bloc de correction actuellement sélectionné D (Dxx). ● les valeurs de correction de longueur L1, L2 et L3 d'une correction externe d'outil (EDxx). ● la fonction "Orientation statique de l'outil" (paramétrable avec STO ; voir chap. 6.117 "Paramétrage de l'orientation statique de l'outil StatToolOri, STO" à la page 314). ● la fonction "Correction de l'orientation des arêtes de coupe", dans la me‐ sure où une position d'arête de coupe est indiquée dans le bloc de correction D actuellement sélectionné (Dxx) et la correction de trajectoire de la fraise G41/G42 est active (voir chap. 5.2.18 "Correction de trajec‐ toire de la fraise G40, G41, G42" à la page 121). Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 127/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Programmation Syntaxe : G47 Correction de la longueur de l'outil ACTIVÉE. G47(ActPlane) Affecter les valeurs de correction de longueur L1, L2 et L3 aux coordonnées principale, secondaire et normale du plan actif, puis activer la correction de la longueur de l'outil. Reste active en tant que valeur modale et est re‐ configurée automatiquement pour chaque changement de plan suivant. G47({{-}<L1-Coord>} Modifier l'affectation des valeurs de correction de lon‐ gueur L1, L2 et L3 aux différentes coordonnées, puis activer la correction de la longueur de l'outil. {,{{-}<L2-Coord>} {,{-}<L3-Coord>}}) G47() Affecter les valeurs de correction de longueur L1, L2 et L3 conformément aux réglages dans les paramètres machine 7050 01300 et 7050 01310, puis activer la cor‐ rection de la longueur de l'outil. G48 Correction de la longueur de l'outil DÉSACTIVÉE. avec <Coord. Li> Nom de la coordonnée WCS, à laquelle doit être attri‐ buée la correction Li (avec i = 1, 2, 3) dans le système de coordonnées actif de la pièce à usiner. Si la correction Li (avec i = 1, 2, 3) doit agir sur les co‐ ordonnées dans le système de coordonnées de l'outil (TCS), XTR, YTR et ZTR doivent être utilisées comme désignateurs de coordonnées et une transformation géométrique en correction d'axes correspondante doit être active. Signe négatif optionnel : La correction est calculée en direction négative. Les valeurs de correction Li, auxquelles aucune coor‐ donnée n'est attribuée, sont négligées. Fig.5-57: Particularités et restrictions : Syntaxe G47, G48 ● Les coordonnées qui ne sont pas comprises dans le réglage par défaut du canal ne sont jamais prises en compte dans la syntaxe "G47()". ● Les fonctions G47.. et G48 sont des fonctions modales qui se révoquent réciproquement. ● Le fait que les adresses de coordonnées programmées sous G47 se rap‐ portent aux coordonnées de la pièce à usiner ou aux coordonnées de l'outil dépend du désignateur de coordonnées utilisé (voir <Coordonnée i> ci-dessus). ● G47/G48 peuvent être programmées conjointement avec d'autres condi‐ tions de course, informations de déplacement ou fonctions auxiliaires. 128/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Exemple : G47(X,,ZTR) La correction L1est affectée à la coordonnée X du sys‐ tème de coordonnées de la pièce à usiner (WCS), la correction L3 à la coordonnée Z du système de coor‐ données de l'outil (TCS). Ces deux corrections sont calculées en direction positive. Ensuite, la correction de la longueur de l'outil est activée. La correction L2 n'est pas calculée, comme aucune co‐ ordonnée ne lui est attribuée. 5.2.22 G52 Décalage d'origine programmable Effet À l'aide du décalage d'origine programmable, il est possible de déplacer le système de coordonnées de la machine MCS (par) dans l'espace par la pro‐ grammation dans le programme piece. Le décalage d'origine programmable peut être activé pour un total de 5 banques d'origine actives (groupes). Les décalages issus des différentes banques du décalage d'origine ont toujours un effet additif. Le décalage d'origine programmable complète les décalages d'origines G54.1G59.5, pour lesquels les valeurs de décalage doivent être chargées à partir des tableaux d'origine, par une variante pour laquelle les valeurs de décalage sont programmées directement dans le programme pièce - sans avoir être indiquées dans le tableau d'origine. Le décalage d'origine programmable d'une banque forme un groupe modal avec les décalages d'origine G54.x-G59.x de la banque correspondante. Les fonctions d'un groupe modal se révoquent réciproquement. La désélection du décalage d'origine d'une certaine banque se fait via G53.x. La désélection de tous les décalages d'origine se fait via G53. Programmation · Syntaxe : G52.<Banque de décalage d'origine> (<Coordonnées de la machine>) Déca‐ lage d'origine programmable de la <Banque de décalage d'origine> ACTIVÉE Format abrégé : G52 pour le décalage d'origine programmable de la banque 1. avec <Banque de décalage d'origine> 1...5, INTEGER La désélection du décalage d'origine se fait avec : G53 Décalages d'origine pour toutes les banques de correction DÉSACTIVÉS. G53.<Banque de décalage d'origine> Décalage d'origine de la <banque de dé‐ calage d'origine> DÉSACTIVÉ G54.<Banque de décalage d'origine> ... G59.<Banque de décalage d'origine> Décalage d'origine (sur la base du tableau) de la <banque de décalage d'ori‐ gine> ACTIVÉ Pour ces fonctions s'applique ce qui suit : ● G52.1, G53.1, G54.1 ... G59.1 sont des fonctions modales et se révoquent réciproquement. G52.2, G53.2, G54.2 ... G59.2 sont des fonctions modales et se révoquent réciproquement. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 129/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) G52.3, G53.3, G54.3 ... G59.3 sont des fonctions modales et se révoquent réciproquement. G52.4, G53.4, G54.4 ... G59.4 sont des fonctions modales et se révoquent réciproquement. G52.5, G53.5, G54.5 ... G59.5 sont des fonctions modales et se révoquent réciproquement. G53 active les fonctions G53.1 ... G53.5 et désélectionne donc tous les décalages d'origine. Exemple : ● Si le décalage d'origine est programmé seul, il n'entraîne pas de dépla‐ cement. Seul le système de coordonnées de la machine (MCS) est décalé. ● Le décalage d'origine programmable peut être programmé conjointement avec un mouvement de déplacement. Le décalage d'origine modifié dé‐ cale le MCS actuel, ce qui entraîne simultanément une modification du WCS actuel. Le mouvement de déplacement programmé dans le même bloc se réfère au nouveau WCS. Effet additif des décalages d'origine provenant des différentes banques de dé‐ calage d'origine. Programme : N20 G52.1 (X100, Y100) Aucun mouvement de déplacement. Décalage d'origine sur position ACS X100 Y100 activé. N30 G52.2 (X300, Y100) Aucun mouvement de déplacement. Décalage d'origine additif activé. L'origine résultante de la machine est maintenant à la position ACS X400 Y200. N40 G90 G1 F1000 X10 Y15 Les axes se déplacent sur la position ACS X410 Y215. N50 G53.1 La banque d'origine 1 est désactivée. L'origine de la machine est maintenant sur X300 Y100. Particularités et restrictions : N60 X10 Y10 Les axes se déplacent sur la position ACS X310 Y110. N70 G53 Tous les décalages d'origine sont désactivés. L'origine programmable se réfère aux coordonnées de la machine. Le décalage d'origine programmable peut être programmé conjointement avec d'autres conditions de parcours dans un bloc. Il est possible de programmer un mouvement de déplacement avec un déca‐ lage d'origine dans un même bloc. 5.2.23 Décalages d'origines (NPV) "G53", "G53.1-G59.1" bis "G53.5-G59.5" Effet A l'aide de la fonction NPV, il est possible de déplacer le système de coordon‐ nées de la machine dans l'espace. 130/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Si une correction du plan sous-tendu s'avère nécessaire, voir la fonctionnalité "BcsCorr" (transformation de la pièce à usiner : cor‐ rection de position de la pièce à usiner, voir chap. 6.20 "Placement : Correction de la position de la pièce à usiner BcsCorr, BCR" à la page 198). Les "tableaux de décalage d'origine" comprennent les distances de décalage pour les coordonnées de la machine dans le canal : ● Un tableau de décalage d'origine comprend 5 banques de décalage d'ori‐ gine (groupes) avec 6 décalages d'origine chacune (NPV). ● Les décalages issus des différentes banques de décalage d'orgine ont toujours un effet additif. ● Les décalages au sein d'une banque de décalage d'origine s'écrasent ré‐ ciproquement. ● Les décalages ayant le numéro de canal 0 sont actifs dans tous les canaux dans lesquels ils ont été activés. Les décalages ayant un numéro de canal > 0 ne peuvent être efficaces que dans le canal indiqué. Si les mêmes coordonnées de machine sont entrées plusieurs fois pour différents ca‐ naux, veiller à ce que le numéro de canal 0 ne soit pas utilisé, car, sinon, tous les décalages suivants spécifiques aux canaux de cette coordonnée ne sont plus pris en compte. Fig.5-58: Décalages d'origine (NPV) Pour l'édition des tableaux de décalage d'origine, veuillez consulter le mode d'emploi. Programmation Syntaxe : 1. Activer le tableau de décalage d'origine (NPV) désiré à l'aide de "ZoT‐ Sel" (voir chap. 6.129 "Activer les tableaux de décalage d'origine ZoTSel, ZOS" à la page 333). 2. Programmer la fonction nécessaire : G53 Tous les décalages d'orgine pour toutes les banques de correction DÉSACTIVÉS. G53.<Banque de décalage d'origine> Tous les décalages d'origine de la <banque de décala‐ ge d'orgine> DÉSACTIVÉS. G54.<Banque de décalage d'origine> 1. Décalage d'origine de la <banque de décalage d'or‐ gine> ACTIVÉ. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 131/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) G55.<Banque de décalage d'origine> 2. Décalage d'origine de la <banque de décalage d'or‐ gine> ACTIVÉ. G56.<Banque de décalage d'origine> 3. Décalage d'origine de la <banque de décalage d'or‐ gine> ACTIVÉ. G57.<Banque de décalage d'origine> 4. Décalage d'origine de la <banque de décalage d'or‐ gine> ACTIVÉ. G58.<Banque de décalage d'origine> 5. Décalage d'origine de la <banque de décalage d'or‐ gine> ACTIVÉ. G59.<Banque de décalage d'origine> 6. Décalage d'origine de la <banque de décalage d'or‐ gine> ACTIVÉ. Format abrégé : G54 à G59 pour tout décalage d'origine de la banque 1. avec <Banque de décalage d'ori‐ gine> Fig.5-59: 1...5, INTEGER Syntaxe G53 - G59 Pour ces fonctions s'applique ce qui suit : ● G52.1, G53.1, G54.1 ... G59.1 sont des fonctions modales et se révoquent réciproquement. G52.2, G53.2, G54.2 ... G59.2 sont des fonctions modales et se révoquent réciproquement. G52.3, G53.3, G54.3 ... G59.3 sont des fonctions modales et se révoquent réciproquement. G52.4, G53.4, G54.4 ... G59.4 sont des fonctions modales et se révoquent réciproquement. G52.5, G53.5, G54.5 ... G59.5 sont des fonctions modales et se révoquent réciproquement. G53 active les fonctions G53.1 ... G53.5 et désélectionne donc tous les décalages d'origine. Exemple : ● Si les fonctions sont programmées seules, elles n'entraînent pas de dé‐ placement. Seul le système de coordonnées de la machine est décalé. ● Les fonctions peuvent également être programmées dans le même bloc avec d'autres conditions de course, Dans ces cas, le décalage de point d'origine correspondant est d'abord activé, ensuite le déplacement s'ef‐ fectue vers la position programmée. ● Les entrées NPV pour un certain canal (canal > 0) ne sont actives que dans le canal indiqué. Ainsi, vous avez la possibilité d'activer différentes origines pour le même désignateur des coordonnées de machine avec un tableau de décalage d'origine séparé pour tout canal. Le tableau de décalage d'origine "Z01" contient les valeurs de décalage sui‐ vantes sous la banque de décalage d'origine 1 : 1. décalage d'origine : X100, Y100 2. décalage d'origine : X300, Y100 3. décalage d'origine : X500, Y100 4. décalage d'origine : X100, Y450 5. décalage d'origine : X300, Y450 6. décalage d'origine : X500, Y450 Effet des fonctions G54.1 à G59.1 : 132/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Fig.5-60: Exemple : Effet des fonctions G54.1 à G59.1 Effet additif de décalages d'origine issus de différentes banques de décalage d'origine. Le tableau de décalage d'origine "Z01" contient les valeurs de décalage sui‐ vantes : Banque de décalage d'origine 1, 1er décalage d'origine : X100, Y100 Banque de décalage d'origine 1, 2ème décalage d'origine : X300, Y100 Banque de décalage 2, 4ème décalage d'origine : X200, Y350 : : Position actuelle de la machine 0,0. Aucun décalage d'origine. : Toutes les données de coordonnées données ci-des‐ sous sont des coordonnées de la machine ! N40 ZOS(Z01) Activer le tableau de décalage d'origine "Z01". N50 G54.1 Aucun mouvement de déplacement. Décalage sur X100, Y100 activé. N60 G55.1 X...Y... Décalage sur X300, Y100 activé. Ensuite mouvement de déplacement. N70 G57.2 X...Y... Décalage sur X500, Y450 activé. Ensuite mouvement de déplacement. N80 G53 5.2.24 Tous les décalages encore actifs DÉSACTIVÉS . Arrêt précis ACTIVÉ/DÉSACTIVÉ "G61, G62" Effet Minimise l'erreur de poursuite à la fin du bloc. Lors des mouvements d'outils, les valeurs de consigne et les valeurs réelles des différents axes sont décalées dans le temps en raison de la propre dyna‐ mique de la machine. Lors de l'usinage, cet "effet" entraîne une erreur de poursuite dont l'importance dépend de la vitesse d'avance et du facteur KV (dynamique des axes). En présence de raccords de contour irréguliers (an‐ gles), cette erreur de poursuite se traduit par un "écrasement" de l'angle. Pour ces fonctions s'applique ce qui suit : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 133/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ● La distance de poursuite (décalage entre la valeur de consigne et la valeur réelle) à la fin de bloc peut être diminuée à la taille de certaines fenêtres cibles. ● G61 n'agit que sur les mouvements en avance. Il n'agit pas sur des mou‐ vements d'avance rapide. ● Contraitement à la fonction arrêt précis G1, G61 active toutes les fonctions d'interpolation (donc également les interpolations circulaires/hélicoïdales, spline) à l'exception de G0. ● G61/G62 sont des fonctions modales qui se révoquent réciproquement. Fig.5-61: Arrêt précis Lorsque G61 est active (mode arrêt précis activé), la commande décélère toujours à la fin du bloc à v = 0. Programmation Fonction de base Syntaxe : G61 Arrêt précis ACTIVÉ. G62 Arrêt précis DÉSACTIVÉ. Fig.5-62: Syntaxe G61, G62 Pour l'arrêt précis ACTIVÉ, la dernière fenêtre de positionnement active reste valide pour le mode trajectoire. Valeur par défaut : fenêtre de positionnement exacte. Paramètres optionnels Pour la sélection de la fenêtre de positionnement pour le mode d'avance. Syntaxe : G61(IPS1|IPS2|IPS3) avec IPS1 Arrêt précis ACTIVÉ. Attente de la fenêtre de positionnement exacte. À la fin du bloc, la commande décélère tout d'abord à la vitesse de trajectoire de v = 0. Le bloc suivant n'est déplacé que lorsque cette fenêtre de positionnement a été atteinte pour tous les axes intéressés. 134/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Arrêt précis ACTIVÉ. IPS2 Attente de la fenêtre de positionnement approximative. Sur l'interface du canal, "Zone INPOS 2 activée" est af‐ fiché (voir également Manuel "Interface API"). À la fin du bloc, la commande décélère tout d'abord à la vitesse de trajectoire de v = 0. Le bloc suivant n'est déplacé que lorsque cette fenêtre de positionnement a été atteinte pour tous les axes intéressés. Arrêt précis ACTIVÉ. IPS3 Décélération à v = 0 à la fin du bloc. À la fin du bloc, la commande décélère à la vitesse de trajectoire v = 0. Ensuite, le bloc suivant est déplacé sur une fenêtre de positionnement sans être vérifié. Fig.5-63: Paramètres optionnels G61 Les paramètres "Fenêtre de positionnement exacte" et "Fenêtre de positionnement approximative" peuvent être définis dans les fi‐ chiers SERCOS pour Phase 3. Pour de plus amples informations relatives aux fichiers SERCOS, veuillez consulter le chapitre "Initialisation SERCOS" dans le Ma‐ nuel "Paramètres machine". Particularités et restrictions : G61/G62 doivent être programmés au plus tard dans le bloc dans lequel ils doivent être actifs. Exemple : : N40 G61 Arrêt précis ACTIVÉ. : N50 Y200 Positionnement. : N60 G62 Arrêt précis DÉSACTIVÉ. : N70 Y0 Positionnement. : N80 G61 Y200 Positionnement avec arrêt précis ACTIVÉ. : 5.2.25 Taraudage sans mandrin de compensation "G63" Effet ● Synchronise l'interpolation linéaire de l'axe de taraudage avec la broche commutée sur l'axe C. Ceci rend superflu un mandrin de compensation qui, autrement, aurait du capter les différences de vitesse entre l'axe de taraudage et la broche. ● G63 n'est active que dans le bloc programmé. ● Pour la durée du taraudage, un signal peut être émis au niveau de l'inter‐ face du canal (configurable au sein des signaux "Fonction active" via les paramètres machine). Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 135/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ● Durant le taraudage, seul le potentiomètre d'avance est actif. En cas d'activation de G63, l'axe de la broche C doit être en mode broche. Concernant le taraudage à plusieurs broches, veuillez vous repor‐ ter également au chap. 6.122 "Sélection de broches pour le tarau‐ dage sans mandrin de compensation TappSp, TSP" à la page 322. Si le masquage d'axes est nécessaire pour la génération de l'avan‐ ce, veuillez vous reporter au chap. 6.33 " Génération de l'avance : Masquer les axes FeedAd, FAD" à la page 216. Programmation Syntaxe : G63(M<3|4>,S<Vitesse de rotation>|H<Pas de filetage>)<Axe de tarauda‐ ge><Profondeur des pas de pénétration>{F<Avance>}, Le pas de filetage est le résultat du rapport entre l'avance sur trajectoire et la vitesse de rotation (F/S). Les pas de filetage différents lors de la pénétration et du dégagement peuvent détériorer la pièce à usiner/l'outil ! ATTENTION Particularités et restrictions : Programmer donc la pénétration et le dégagement toujours de façon à ce que les pas de filetage résultants soit identiques dans les deux cas ! ● Les blocs de taraudage et de dégagement doivent être programmées di‐ rectement l'un après l'autre. ● Si aucune autre valeur n'est indiquée (adresse F) dans le bloc G63, la commande utilise l'avance de trajectoire active. ● Les adresses "M" et "S" ne sont actives que dans le bloc G63 programmé. ● Ni "Orientation de la broche", ni "Arrêt de la broche" ne sont requis avant G63. ● Le passage au mode axe C s'effectue automatiquement. Avant le démar‐ rage, la commande attend en interne le message "INPOS" de tous les axes concernés. Si un axe dérive de sa zone INPOS, G63 ne sera pas lancée. ● Après le bloc de dégagement, la broche retourne automatiquement en mode broche. ● G63 avec expressions CPL : Une programmation de la forme : G63 (M[MCODE%], S[DREHZ]) n'est pas possible. Programmer au lieu de cela : G63 ([MCODE$], S[DREHZ]). Exemple : N20 G0 X20 Y15 Z10 F1000 Positionnement. N30 G63(M3,S500) Z-20 F500 Pénétration de l'outil (axe de taraudage Z). N40 G63(M4,S500) Z5 F500 Dégagement (axe de taraudage Z). : N120 G0 X20 Y15 Z10 F1000 Positionnement pour le taraudage de trous pro‐ fonds. N130 G63(M3,S500) Z-20 F500 Pénétration du secteur partiel 1. N140 G63(M4,S500) Z5 F500 Dégagement du secteur partiel 1. 136/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) N150 G63(M3,S500) Z-40 F500 Pénétration du secteur partiel 2. N160 G63(M4,S500) Z5 F500 Dégagement du secteur partiel 2. : 5.2.26 Programmation en pouces "G70", Programmation locale en pouces "INCH(...)" Effet Permet l'indication de la course, des informations d'avance et des accélérations en pouces. Programmation Syntaxe : G70 La course, les informations d'avance et les accéléra‐ tions sont interprétées en pouces. <Axe>=INCH(<Valeur>) La course pour l'axe linéaire synchrone est interpretée en pouces. Fig.5-64: Syntaxe G70 Pour cette fonction s'applique ce qui suit : Exemple : ● G70 est une fonction modale et révoque G71. ● L'état de marche peut être défini à l'aide des paramètres machine. ● G70 peut également être programmée dans le même bloc avec d'autres conditions de course. ● G70 se réfère aux : – courses de déplacement, – avances, – accélérations, – autres grandeurs auxiliaires géométriques, comme p. ex. les para‐ mètres d'interpolation I, J, K. A partir de N40 incluse, toutes les informations relatives à la course et l'avance sont interprétées en pouces. N40 G70 : N50 W=INCH(2) 5.2.27 Déplacer l'axe asynchrone linéaire W sur position 2 (inch). Programmation métrique "G71" Effet Permet l'indication de la course, des informations d'avance et des accélérations en unités de mesure métriques. Programmation Syntaxe : La course, les informations d'avance et les accéléra‐ tions sont interprétées en unité de mesures métriques. G71 Fig.5-65: Syntaxe G71 Pour cette fonction s'applique ce qui suit : ● G71 est une fonction modale et révoque G70. ● L'état de marche peut être défini à l'aide des paramètres machine. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 137/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Exemple : ● G71 peut également être programmée dans le même bloc avec d'autres conditions de course. ● G71 se réfère aux : – courses de déplacement, – avances, – accélérations, – autres grandeurs auxiliaires géométriques, comme p. ex. les para‐ mètres d'interpolation I, J, K. N40 G71 : 5.2.28 A partir de N40 incluse, toutes les informations relatives à la course et l'avance sont interprétées en unités de mesure métriques. Approche des coordonnées du point de référence "G74" Effet Les axes programmés dans le même bloc que G74 se déplacent simultané‐ ment sur leurs positions de référence. La vitesse d'avance dépend de G0/G1 en avance rapide/avance. Avec G74, le système ne tient compte ni des cames, ni des repères de points de référence. G74 est une pure opération de positionnement sur les positions absolues des axes, et vaut donc également pour les axes avec codeurs à dis‐ tances codées. D'éventuelles corrections actives sont négligées lors de cette pro‐ cédure de positionnement ! Pour cette fonction s'applique ce qui suit : ● G74 agit bloc par bloc et est révoquée lorsque les axes machine pro‐ grammés dans le bloc G74 ont atteint leur point de référence. ● Lors de l'approche du point de référence avec G74, les valeurs réelles des axes ne sont pas réinitialisées. ● Des corrections éventuellement encore actives, des décalages d'origine etc. ne sont pas pris en compte dans le bloc G74 pour les axes program‐ més. Programmation Syntaxe : G74<Coordonnées d'axe> Lancer "Approche des coordonnées du point de réfé‐ rence". avec <Coordonnées d'axe> Fig.5-66: Particularités et restrictions : Les adresses des axes doivent être programmées avec une valeur numérique (par exemple X1 Y1 Z1). La va‐ leur numérique n'a aucune influence sur la position du point de référence. Elle sert seulement à compléter le mot. Syntaxe G74 La programmation de G74 s'effectue dans un bloc séparé avec les axes à dé‐ placer. Les fonctions auxiliaires et additionnelles peuvent être programmées dans le même bloc. 138/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Exemple : N100 G74 X1 Y1 Z1 : 5.2.29 Les axes X, Y et Z démarrent simultanément leurs dé‐ placements vers les positions de leurs points de réfé‐ rence et les atteignent simultanément. Approche du point de référence "G74(HOME)" Effet La fonction G74(HOME) est également applicable pour des axes asynchrones ! Déclenche la prise d'origine des axes programmés via un programme pièce. La fonction désactive l'ordre SERCOS "Prise d'origine contrôlée par l'entraî‐ nement" (S-0-0148) pour les entraînements des axes programmés. Sur ce, l'entraînement est découplé de la commande et génère lui-même ses données de position pour la prise d'origine. Pour ce faire, il utilise les paramè‐ tres SERCOS S-0-0147 (Paramètre de la prise d'origine), S-0-0041 (Vitesse de la prise d'origine) et S-0-0042 (Accélération de la prise d'origine). Pour une description détaillée, voir le manuel "Description des fonctions". Pour cette fonction s'applique ce qui suit : ● Si plusieurs axes sont programmés dans le bloc G74(HOME), ils appro‐ chent leur point de référence indépendamment l'un de l'autre (pas de mode trajectoire). Les points de référence ne sont donc pas atteints si‐ multanément. ● Il est possible de programmer des axes synchrones et asynchrones. Le traitement de bloc est suspendu jusqu'à ce que tous les entraînements de la commande aient confirmé l'arrivée à leur point de référence. ● La fonction ne présente pas de différence par rapport à "Approche du point de référence" en mode "Configuration". Programmation Syntaxe : G74(HOME)<Coordonnées d'axe> Lancer l'instruction SERCOS "Prise d'origine contrôlée par l'entraînement" pour les axes programmés. avec <Coordonnées d'axe> Fig.5-67: Exemple : Les adresses des axes doivent être programmées avec une valeur numérique (par exemple X1 Y1 Z1). La va‐ leur numérique n'a aucune influence sur la position du point de référence. Elle sert seulement à compléter le mot. Syntaxe G74(HOME) N1 G74(HOME) X1 Y1 Z1 Envoyer l'instruction SERCOS "Prise d'origine contrôlée par l'entraînement" aux entraînements des axes X, Y et : Z. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 139/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) 5.2.30 Palpeur de mesure "G75" Effet La commande amène un ou plusieurs axes de mesure en avance en direction de la position programmée avec G75 tout en contrôlant si le palpeur de mesure se déclenche. Dès que le front défini à l'aide des paramètres machine est détecté, la com‐ mande réagit avec : ● mémorisation de la position réelle, ● décélération à v = 0 avec l'accélération maximale autorisée, ● effacement de G75 et de la course restante, ● passage au prochain bloc. N'utilisez G75 qu'en relation avec un programme CPL pour l'ex‐ ploitation. La fonction du palpeur de mesure est paramétrable via les para‐ mètres machine. Programmation Syntaxe : G75<Coordonnée d'axe> Fig.5-68: Particularités et restrictions : Exemple : Activer l'entrée de mesure et déplacer l'axe de mesure sur la <Coordonnée d'axe>. Syntaxe G75 ● G75 agit bloc par bloc. ● Il est interdit de programmer des fonctions auxiliaires dans le bloc G75. D'autres conditions de course sont cependant admises. ● G75 doit être programmée conjointement avec au moins une <Coordon‐ née d'axe>. La valeur de celle-ci représente la profondeur de recherche maximale à laquelle le palpeur de mesure devra être activé au plus tard. ● L'arrêt du traitement de bloc à la suite du bloc G75 n'est pas nécessaire (pas de WAIT nécessaire). ● L'évaluation des informations relatives aux axes, les surveillances de sé‐ curité, la génération de messages d'erreur etc. doivent être réalisés via le programme CPL. N100 G75 Y250 F500 Déplacement sur la position Y250 à l'aide de F500. 110 IF SD(9)=0 THEN Interrogation, si le palpeur de mesure est ori‐ enté. 120 YPOS=PPOS(2) Mémoriser la position de commutation de l'axe Y dans la variable YPOS. : N130 MSG(CONTACT) 140 ELSE 150 SETWARN("NO CONTACT!") N160 M0 170 WAIT 180 CLRWARN() 140/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) 190 ENDIF N200 ... 5.2.31 Approche de la position fixe des axes machine "G76" Effet Permet la programmation et l'approche linéaire de positions dans le système de coordonnées de la machine, sans devoir désactiver séparément les correc‐ tions et transformations éventuellement actives dans le programme pièce. Ceci peut s'avérer nécessaire par exemple pour le changement d'outil, les con‐ trôles de rupture d'outil, les cycles de mesure ou les changements de palettes. G76 est active bloc par bloc en avance rapide (G0) ou en avance (G1), mais également en combinaison avec G93 (Programmation de temps), G94/95 (Pro‐ grammation d'avance) et le mot F. Les fonctions suivantes ne sont pas prises en compte pour G76 : ● Corrections de l'outil (G41, G42, G47 Dxx, EDxx) ● Aides à la saisie (miroir, mise à l'échelle, rotation, décalage) ● Décalages d'origine (G54.1…G59.5) ● Placements (BcsCorr, G154.1...G159.5) ● Transformations d'axes sur la base des coordonnées de la machine, p.ex. transformation à 5 axes ● Programmation relative (G91) ● Initialisation de la position de programme (SetPos) Programmation Syntaxe : G76<Coordonnées de la machine> avec <Coordonnées de la machi‐ ne> Fig.5-69: Particularités et restrictions : 5.2.32 Coordonnées de la machine à approcher. Syntaxe G76 ● G76 peut être écrite conjointement avec d'autres conditions de course (par exemple G0, G1, G93, G94, G95, mot F). ● Une programmation relative locale ("IC(…)" ; voir chap. 5.2.34 "Program‐ mation absolue G90, Programmation relative G91, Programmation abso‐ lue locale AC(...), Programmation relative locale IC(...)" à la page 143) n'est pas permise en relation avec G76 et se solde par un message d'er‐ reur d'exécution. Sous-programmes asynchrones : Repositionnement de coordonnées individuelles "G77" Effet Pour un sous-programme asynchrone (ASUP) s'applique ce qui suit : Les co‐ ordonnées programmées avec G77 sont déplacées à leurs positions de syn‐ chronisation correspondantes (ceci est la position, sur laquelle la coordonnée doit se trouver après la fin du sous-programme asynchrone). En option, il est possible d'indiquer un décalage pour la position de synchronisation sur lequel la coordonnée doit être déplacée au sein du bloc G77. Alternativement, la position actuelle de la coordonnée peut être définie comme position de synchronisation. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 141/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) De plus amples informations relatives à l'utilisation et au paramé‐ trage des sous-programmes asynchrones sont données dans le manuel "Description des fonctions". Programmation Syntaxe : G77<Coord 1><Mode><Coord n><Mode>... F<Valeur> avec <Coord i> Nom de coordonnée (p.ex. "x"). <Mode> ● 1: Déplacer la coordonnée à la position de syn‐ chronisation. ● 0: Définir la position actuelle de la coordonnée en tant que position de synchronisation. ● =IC(<Décalage>) : Déplacer la coordonnée à la valeur "Position de synchronisation + <Décala‐ ge>". <Valeur> Fig.5-70: Particularités et restrictions : 5.2.33 Avance, avec laquelle le positionnement sur la position de redémarrage doit être effectué. Syntaxe G77 ● La fonction est prévue pour l'utilisation dans un sous-programme asyn‐ chrone. ● Toutes les coordonnées non programmées avec G77 sont déplacées via une droite allant au point de redémarrage à la fin du sous-programme asynchrone. ● Toute modification de correction survenue entre-temps au sein du sousprogramme asynchrone est prise en compte automatiquement lors du calcul interne du point de redémarrage nécessaire. ● En tant que syntaxe alternative, il est également possible de programmer REPOS à la place de G77. Changement pour correction ACTIVÉ "G78", Changement pour cor‐ rection DÉSACTIVÉ "G79" Effet Affecte les corrections de longueur de la fonction "Correction de géométrie" à des coordonnées individuelles. ll s'agit là des coordonnées du : ● système de coordonnées actuel de la pièce à usiner (WSC), ou ● système de coordonnées de l'outil (TCS). Une affectation quant aux coordonnées du système de coordonnées de la piè‐ ce à usiner (WCS) est toujours possible, lorsque l'outil est orienté perpendicu‐ lairement au plan de travail actuel et lorsque son orientation en cours d'usinage reste constant par rapport au plan de travail. Une affection des corrections quant aux coordonnées du système de coordon‐ nées de l'outil (TCS) est nécessaire, lorsque l'orientation de l'outil change en cours d'usinage, par exemple lors de fraisage des surfaces de formes libres. Pour un tel calcul de correction, il faut effectuer une transformation géométrique active en correction d'axes (par exemple : transformation en correction 5 axes ou 6 axes) Le calcul des valeurs de correction s'effectue au sein de la trans‐ formation géométrique en correction d'axes. 142/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Fig.5-71: Correction de l'outil dans le système de coordonnées de la pièce à usi‐ ner WCS et TCS Pour activer les valeurs de correction pour le traitement, voir G47 (chap. 5.2.21 "Correction de la longueur de l'outil G47, G48" à la page 126). Programmation Syntaxe : G78({{-}<Coordonnée1>},{{-}<Coordonnée2>},{{-}<Coordonnée3>}) Changement pour correction ACTIVÉ. avec <Coordonnée i> Nom de la coordonnée WCS (nom d'axe logique/phy‐ sique) à laquelle la correction Li (avec i = 1, 2, 3) doit être attribuée. Si la correction Li doit agir sur des coordonnées du sys‐ tème de coordonnées de l'outil (TCS), WTR, UTR et ZTR doivent être utilisés en tant que désignateurs de coordonnées. Signe négatif optionnel : La correction est calculée en direction négative. Les valeurs de correction Li, auxquelles aucune coor‐ donnée n'est attribuée, sont négligées. G78(ActPlane) Les corrections L1, L2 et L3 sont affectées aux coordon‐ nées principale, secondaire et normale du plans res‐ pectivement actif. G79 Changement pour correction DÉSACTIVÉ. Les réglages dans les paramètres machine sont de nouveau actifs. Fig.5-72: Particularités et restrictions : Syntaxe G78, G79 ● Les fonctions G78 et G79 sont des fonctions modales qui se révoquent réciproquement. ● Les coordonnées qui ne font pas partie des réglages par défaut du canal ne sont pas prises en compte avec G79 ! ● Les adresses de coordonnée programmées sous G78 peuvent se référer aux coordonnées de la pièce à usiner ou aux coordonnées de l'outil (voir ci-dessus <Coordonnée i>). ● G78/G79 peuvent être programmées conjointement avec d'autres condi‐ tions de course, informations de déplacement ou fonctions auxiliaires. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 143/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Exemples : 5.2.34 G78(X, ,ZTR) La correction L1est affectée à l'axe X du système de co‐ ordonnées de la pièce à usiner (WCS), la correction L3 à l'axe Z du système de coordonnées de l'outil (TCS). Ces deux corrections sont calculées en direction positi‐ ve. G78( , ,-Y) La correction L3 est affectée à l'axe Y du système de coordonnées de la pièce à usiner (WCS) et calculée en direction négative. G78(YA,YB) La correction L1 est affectée à l'axe YA et la correction L2 à l'axe YB du système de coordonnées de la pièce à usiner (WCS). Ces deux corrections sont calculées en direction positive. G79 Pour toutes les coordonnées de défaut du canal, les corrections sont déactivées. Programmation absolue "G90", Programmation relative "G91", Pro‐ grammation absolue locale "AC(...)", Programmation relative locale "IC(...)" Effet Défini, si la commande doit interpréter les cotes données pour les axes et co‐ ordonnées en tant que valeurs absolues ou relatives (incrémentales). ● Les cotes absolues se réfèrent à l'origine actuel (du système de coordon‐ nées du programme). ● Les cotes relatives se réfèrent à la dernière position approchée. Fig.5-73: Programmation absolue G90 et programmation relative G91 Pour ces fonctions s'applique ce qui suit : ● Les fonctions G90 et G91 sont des fonctions modales qui se révoquent réciproquement. ● AC(...) et IC(...) agissent de façon indépendante d'un G90/G91 actif uni‐ quement pour l'information de course des axes dont la position est pro‐ grammée avec AC(...) ou IC(...). Programmation Syntaxe : G90 Programmation absolue. G91 Programmation relative. <Axe>=AC(<Valeur>) Programmation absolue locale. <Axe>=IC(<Valeur>) Programmation relative locale. avec 144/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) <Axe> Adresse d'axe logique. <Valeur> Information de course pour <Axe>. Fig.5-74: Exemple : Syntaxe G90, G91 N10 G1 G90 Programmation absolue ACTIVÉE. N20 X100 Y100 Déplacement sur les coordonnées X100, Y100. N30 G91 Programmation relative ACTIVÉE. N40 X100 Y100 Déplacement sur les coordonnées X200, Y200. N50 X=AC(50) Y50 5.2.35 Programmation absolue locale pour l'axe X. Déplace‐ ment au niveau de la machine sur X50, Y250. Programmation de temps "G93" Effet La commande interprète les mots F en tant que temps de traitement en se‐ condes pour la trajectoire programmée (durée de bloc). Pour cette fonction s'applique ce qui suit : Les fonctions G93, G94 et G95 sont des fonctions modales qui se révoquent mutuellement. L'état de marche souhaité (G93, G94 ou G95) peut être défini dans les paramètres machine (par défaut : G94) Programmation Syntaxe : Commuter à la programmation de temps. G93 Fig.5-75: Exemple : Syntaxe G93 N5G93 G1 X30 Y20 F20 L'interpolation linéaire programmée dure 20 secondes. : Particularités et restrictions : ● Une valeur F programmée durant G93 reste enregistrée en interne en cas de commutation sur G94 ou G95 et est réactivée en cas de nouvelle sé‐ lection de G93. ● Après la mise en route ou la remise à zéro, la mot F défini dans les para‐ mètres machine est actif (par défaut : F0) ● La commande calcule en interne l'avance requise sur la base de la lon‐ gueur de course du bloc de déplacement respectif et du temps d'usinage programmé. L'avance finalement active peut cependant être limitée par la commande en fonction de la trajectoire programmée et des valeurs maximales des axes intéressés, de façon à ce que la durée du bloc augmente. ● 5.2.36 L'atténuateur d'avance reste également actif sous G93, en dépendance de la fonction OvrEna / OvrDis. Programmation de l'avance (par min) "G94" Effet La commande interprète les mots F (voir chap. 5.4.1 " Adresse FF" à la page 169) ou les mots oméga (voir chap. 5.4.3 "Adresse oméga (avance) Oméga" à la page 170) en tant qu'avance pour une trajectoire programmée. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 145/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Pour cette fonction s'applique ce qui suit ● Les fonctions G93, G94 et G95 sont des fonctions modales qui se révo‐ quent mutuellement. ● L'avance programmée est interprétée en – mm/min, si G71 est active. – pouces/min, si G70 est active. – degrés/min pour les axes rotatifs. Les paramètres machine permettent de régler le calibrage de l'avance pour G70/G71. L'état de marche souhaité (G93, G94 ou G95) peut être défini dans les paramètres machine (par défaut : G94) Programmation Syntaxe : Commuter sur programmation d'avance. G94 Fig.5-76: Exemple : Syntaxe G94 N10 G71 Programmation métrique ACTIVÉE. N20 G1 G94 X20 Y30 F200 Déplacement avec une avance de 200 mm/min. N30 G4(F40) Temporisation de 40 secondes. N40 G70 Programmation en pouces ACTIVÉE. N60 X300 Y400 L'avance F200 (en mm/min) est de nouveau active. N70 F100 Nouvelle valeur d'avance : 100 pouces/min. : Particularités et restrictions : ● Une valeur F ou oméga programmée durant G94 reste enregistrée en interne en cas de commutation sur G93 ou G95 et est réactivée en cas de nouvelle sélection de G94. ● Après la mise en route ou la remise à zéro, la mot F défini dans les para‐ mètres machine est actif (par défaut : F0) La valeur oméga est toujours initialisée automatiquement sur "0" après la mise en route. 5.2.37 ● L'avance efficace peut être limitée par la commande à cause des vitesses maximales configurées des axes intéressés. ● L'avance est influencée par l'atténuateur d'avance en fonction de OvrEna / OvrDis. Programmation incrémentale de la vitesse "G94(...)" avec adaptation de l'accélération Effet Modifie l'avance ou la vitesse de rotation de façon relative par rapport à la der‐ nière valeur active. L'accélération au sein du bloc G94(...) est adaptée de façon à ce que la vitesse ou la vitesse de rotation résultante ne puisse être atteinte qu'à la fin du bloc. Ceci entraîne un comportement d'accélération très doux. Pour cette fonction s'applique ce qui suit : 146/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ● La fonction G94 est modale, mais l'avance résultante n'est pas modale pour les blocs suivants. ● Selon G70/G71, l'unité de l'avance incrémentale est pouce/min ou mm/ min. ● L'avance est influencée par l'atténuateur d'avance en fonction de OvrEna / OvrDis. Programmation Syntaxe : G94(DF<F-Valeur>) Programmer de façon incrémentale la vitesse de tra‐ jectoire. G94(DS1 <S-Valeur>) Programmer de façon incrémentale la vitesse de broche pour la broche 1. G94(DF <F-Valeur> ,DS7 <S-Valeur>) Programmer de façon incrémentale la vitesse de tra‐ jectoire et la vitesse de broche pour la broche 7. avec <F-Valeur> Vitesse incrémentale de trajectoire. Les valeurs positi‐ ves augmentent et les valeurs négatives diminuent la vitesse de trajectoire actuellement efficace. <S-Valeur> Vitesse de rotation incrémentale de la broche. Les va‐ leurs positives augmentent et les valeurs négatives di‐ minuent la vitesse de rotation de la broche actuellement efficace. Fig.5-77: Exemple : Syntaxe G94 (F-Valeur/S-Valeur) N30 G94(DF100) X250 Y300 Augmenter de manière linéaire l'avance sur trajec‐ toire de 100 mm/min jusqu'à la fin du bloc. : N50 G94(DF-50) X300 Y200 Diminuer de manière linéaire l'avance sur trajectoi‐ re de 50 mm/min jusqu'à la fin du bloc. : N70 G94(DS1=100) X25 Y30 Augmenter de manière linéaire la vitesse de rota‐ tion de la 1ère broche à 100 tours/min jusqu'à la fin : du bloc. N90 G94(DF100,DS7=150) X2 Y2 : Particularités et restrictions : Augmenter de manière linéaire la vitesse sur la tra‐ jectoire de 100 mm/min et la vitesse de rotation de la broche 2 de 150 tours/min jusqu'à la fin du bloc. ● Les valeurs limites existantes pour l'accélération ou la décélération sont surveillées. De ce fait, la vitesse finale qui en résulte ne peut éventuelle‐ ment être atteinte que dans le prochain bloc. ● L'accélération calculée n'agit que dans le bloc G94(...). En cas d'interrup‐ tion de bloc, la décélération est effectuée à l'accélération calculée. ● L'avance absolue et l'avance incrémentale ne doivent pas être program‐ mées simultanément dans un bloc. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 147/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) 5.2.38 Programmation de l'avance (par tour) "G95" Effet La commande interprète les mots F (voir chap. 5.4.1 " Adresse FF" à la page 169) en tant qu'avance/tour. Ceci est indispensable pour la broche principale. Pour cette fonction s'applique ce qui suit : ● Les fonctions G93, G94 et G95 sont des fonctions modales qui se révo‐ quent mutuellement. ● L'avance programmée est interprétée en – mm/tour, si G71 est active. – pouces/tour, si G70 est active. Les paramètres machine permettent de régler le calibrage de l'avance pour G70/G71. L'état de marche souhaité (G93, G94 ou G95) peut être défini dans les paramètres machine (par défaut : G94) Concernant la définition de la broche principale, voir MP 7020 00010 ou la fonction "MainSp". Programmation Syntaxe : Commuter sur programmation d'avance rotative. G95 Fig.5-78: Exemple : Syntaxe G95 N05 G71 Programmation métrique ACTIVÉE. N10 S200 M4 Vitesse de rotation de la broche 200 t/min, vers la gauche. N20 G1 G95 X20 Z30 F0.2 Déplacement avec une avance de 0,2 mm/t. N30 G4(S20) Temporisation de 20 tours. N40 G70 Programmation en pouces ACTIVÉE. N60 X300 Z40 L'avance F0.2 (en mm/tour) est de nouveau active. N70 F0.1 Nouvelle avance 0,1 pouces/tour. : Particularités et restrictions : ● G95 suppose une broche principale en rotation. ● L'avance efficace est influencée d'une part par le potentiomètre de la bro‐ che, d'autre part par le potentiomètre d'avance. ● L'avance efficace peut être limitée par la commande à cause des vitesses maximales configurées des axes intéressés. ● Une valeur F programmée durant G95 reste enregistrée en interne en cas de commutation sur G93 ou G94 et est réactivée en cas de nouvelle sé‐ lection de G95. ● Après l’accélération ou la position initiale la mot F défini dans les para‐ mètres machine est actif (par défaut : F0) 148/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) 5.2.39 Vitesse de coupe constante "G96", Programmation directe de la vitesse de rotation "G97" Effet La commande interprète les mots S lors de l'usinage rotatif en tant que ● consigne de vitesse de coupe de l'outil (G96) ou ● vitesse de rotation de l'axe de rotation de la pièce à usiner (G97). En cas de vitesse de rotation de la broche définie, la vitesse de coupe dépend de la distance de l'outil de coupe par rapport à l'axe de rotation de la pièce à usiner. Afin de compenser cet état des faits, la fonction G96 automatiquement modifie la vitesse de rotation de l'axe de rotation en fonction de la distance entre l'outil de coupe et l'axe de rotation de la pièce à usiner : ● pour G71 : Fig.5-79: ● pour G70 : Fig.5-80: Par défaut, la CN calcule la distance dans le système de coordonnées de la machine (référentiel MCS) : Fig.5-81: Référentiel MCS Lorsque la broche doit être positionnée entre différents points de logements des outils, G96 peut tenir compte des décalages d'origine correspondants qui sous-tendent un système de coordonnées locale (référentiel LCS) : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 149/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Fig.5-82: Référentiel LCS Pour les outils que ne sont pas disposés parallèlement à la broche, il est éga‐ lement possible de prendre en considération les décalages et rotations (pla‐ cements) de l'origine de la pièce à usiner (référentiel PCS) : Fig.5-83: Référentiel PCS La vitesse de coupe sur la pièce à usiner n'est donc plus influencée par la distance entre l'outil de coupe et l'axe de rotation de la pièce à usiner. Si ce comportement n'est pas requis ou désiré, il faut utiliser la fonction G97. La vitesse de l'axe de rotation de la pièce à usiner est alors définie uniquement par le mot S programmé. Pour cette fonction s'applique ce qui suit : ● L'axe de référence pour la distance entre la pointe de l'arête de coupe et l'axe de rotation de la pièce à usiner est défini à l'aide du paramètre ma‐ chine 7010 00110 (valeur par défaut). ● Cet axe de référence peut être reprogrammé pour l'exécution. ● Le système de coordonnées de référence (point d'action) pour l'axe de référence est prédéfini par le paramètre machine 7010 00120. On peut choisir entre : – PCS : position dans le système de coordonnées du programme. – LCS : position dans le système de coordonnées local de la machine (dé‐ calée par NPV) – MCS : 150/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) position dans le système de coordonnées de la machine (défaut) ● Le point d’action de l'axe de référence peut être reprogrammé pour l’exé‐ cution. ● La vitesse de coupe programmée est interprétée en ● – m/min, si G71 est active. – pieds/min, si G70 est active (1 pied = 12 pouces). Outre l'atténuation de l'avance pour la broche, les fonctions pour la limi‐ tation de la vitesse de rotation (SMin, SMax ; voir chap. 6.92 "Limitation de la vitesse de rotation SMin, SMN, SMax, SMX" à la page 296) sont également actives. Programmation Syntaxe : G96 {( {<Axe de référence> {,<Point d'action> }}) } ... S<i>=<V> Les mots S des broches programmées dans le bloc G96 sont interprétés lors de l'usinage rotatif en tant que con‐ signe de vitesse de coupe sur l'outil. Toutes les autres broches retombent à la programma‐ tion de vitesse de rotation directe ! G96 Les derniers réglages programmés deviennent actifs ; si aucun réglage n'a été effectué, les valeurs par défaut sont actives. G96() ... Les valeurs par défaut pour l'axe de référence et le point d'action sont réactivés. G97 ... S<i>=<Vitesse Seules les broches dont les mots S sont programmés de rotation> dans le bloc G97 retombent à la programmation directe de la vitesse de rotation. Les mots S programmés sont interprétés pour ces broches en tant que vitesse de ro‐ tation pour l'axe de rotation de la pièce à usiner. Toutes les broches retombent à la programmation de vitesse de rotation directe. G97 avec <Axe de référence> Nom logique ou physique de l'axe de référence. La pro‐ grammation est conservée jusqu'à ce qu'une nouvelle valeur ou la valeur par défaut soit activée. <Point d'action> Système de coordonnées de l'axe de référence : PCS, LCS ou MCS La programmation est conservée jusqu'à ce qu'une nouvelle valeur ou la valeur par défaut soit activée. <i> Index de la broche. 1: première broche ; 2 : deuxième broche etc. <V> Vitesse de coupe de la broche concernée en m/min ou pieds/min. <Vitesse de rotation> Vitesse de rotation de la broche concernée en tours/ min. Fig.5-84: Syntaxe G96, G97 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 151/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Exemple (2 broches configurées dans le système) : N10 G71 S1=500 S2=500 Définir pour la première fois les consignes de rotation des deux broches dans le programme. : N60 G96 S1=50 : Activer G96 pour la 1ère broche avec une vitesse de coupe de 50 m/min. : 2. La broche tourne encore à programmation de vitesse de rotation. : G96 est active. N100 S1=30 Réduire la vitesse de coupe de la 1ère broche à 30 m/ min. : : 2. La broche tourne encore à programmation de vitesse de rotation. : G96 est active. N140 G96(Y,LCS) S2=100 L'axe de référence est Y, le point d'action est le système de coordonnées local LCS. : Activer une vitesse de coupe de 100 m/min pour la 2ème broche. : : 1. La broche retombe à la programmation de vitesse de rotation. : G96 est active. : N180 G97 : : Particularités et restrictions : Toutes les broches retombent – si elles ne l'ont pas fait déjà - à la programmation de vitesse de rotation. G97 est active. ● Il est possible de commuter dans un même bloc plusieurs broches en programmant les mots S correspondants les uns après les autres (exem‐ ple : G96 S1=100 S2=1000). ● Pour modifier la vitesse de coupe d'une broche déjà commutée sur G96 lors du déroulement du programme, il suffit de reprogrammer le mot S de la broche correspondante. ● La vitesse de coupe actuellement active d'une broche reste enregistrée en interne après la commutation sur G97. Elle redevient active dès que l'on "repasse" la broche correspondante sur G96. ● Lors de la commutation de G96 à G97, la commande reprend pour toutes les broches dont le mot S n'est pas programmé dans le bloc G97 la vitesse de rotation actuelle en tant que nouvelle consigne de rotation. ● Un changement de gamme de vitesse éventuellement souhaité doit être réalisé avant l'activation de G96. ● Lorsque G96 est active, la fonction "Commutation automatique des gam‐ mes de vitesse" ne passe pas à une autre gamme de vitesse. ● Lorsque G96 est active, la commande vérifie s'il existe une "prise" de l'axe de référence sur le point d'action actif. Si cela n'est pas le cas (par exemple si l'axe quitte le canal), une erreur d'exécution est signalée. 152/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) 5.2.40 Correction du rayon d'outil 3D "G140, G141, G142" Effet La fonction déplace un outil à symétrie de révolution à gauche ou à droite de la trajectoire programmée tout en guidant son point d'intervention dans l'avance active sur la trajectoire programmée. Lors d'un mouvement d'orientation pur, la position actuelle du point d'interven‐ tion reste fixe et le TCP se déplace. Sur les angles extérieurs, le parcours de la trajectoire est fermé par un bloc intermédiaire généré automatiquement (congé). Sur les angles intérieurs, le point d'intersection est calculé. Pour la correction, la commande tient compte ● du rayon d'outil r (est repris automatiquement à partir des données d'outil actives D, G146 à G846 ou G147 à G847), ● de la profondeur de plongée d (voir la syntaxe INSDEP) ainsi que ● d'un métré optimal par rapport à la trajectoire qui est actif de façon additive au rayon d'outil (voir la syntaxe COFFS). Le schéma suivant illustre le principe appliqué : Fig.5-85: Correction du rayon d'outil 3D Les modification de la profondeur de plongée (INSDEP), du métré (COFFS), de la longueur d'outil ou du rayon de fraisage sont effectuées immédiatement et progressivement (par splines) lorsque G141/G142 est active. Pour de plus amples informations relatives à la fonction, voir le ma‐ nuel "Description des fonctions". ATTENTION Les valeurs de correction sont, le cas échéant, entrées ou sorties im‐ médiatement sans programmation d'un mouvement de déplacement séparé. Ceci peut entraîner un endommagement de la pièce à usiner ou de l'outil. Respecter en conséquence toutes les informations fournies dans le présent chapitre et dans le manuel "Description des fonctions". Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 153/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Programmation Syntaxe : Correction du rayon d'outil 3D DÉSACTIVÉE G140 (état de mise en service après montée en régime de la commande). La correction (rayon, profondeur de plongée) est dissi‐ pée par interpolation à l'aide d'un éventuel mouvement de déplacement programmé (via les splines de 3ème or‐ dre). G140 n'a aucune influence sur une correction active de la longueur d'outil. Correction du rayon d'outil 3D à gauche de la trajectoi‐ re ACTIVÉE (vue dans la direction de traitement en cas de valeurs de correction positives). G141 Les mouvements de déplacement ou d'orientation peu‐ vent être programmés dans un même bloc. Le rayon et la profondeur de plongée sont utilisés, si une des coordonnées tridimensionnelles actives est pro‐ grammée dans le même bloc. Dans la cas contraire, la commande effectue la modification ● lors du prochain bloc de déplacement, si G140 était active préalablement. ● immédiatement (en avance active), si G141/G142 était active préalablement. Correction du rayon d'outil 3D à droite de la trajectoire ACTIVÉE. G142 Pour le reste, voir G141. INSDEP<ET> Définit la profondeur de plongée <ET>. Est une fonction modale. État de mise en service après montée en régime de la commande : 0 COFFS<KA> Définit le métré <KA>. Est une fonction modale et ad‐ ditive au rayon d'outil r. État de mise en service après montée en régime de la commande : 0 Fig.5-86: Particularités et restrictions : Syntaxe G140 - G142 ● Les fonctions G140, G141 et G142 sont des fonctions modales qui se révoquent mutuellement. ● Début et fin de la correction sur un contour quelconque (G2, G6 etc...). ● Si G141 ou G142 est active, les fonctions suivantes sont interdites : – G17 ... G20 (Changement de plan) – G70, G71 (Commutation du système pouce/métrique) – G63 (Taraudage sans mandrin de compensation) – G74 (Approche des coordonnées du point de référence) – G75 (Entrée du palpeur de mesure) – G76 (Approche de la position fixe des axes machine) – SetPos (Fixer la position de programme) – G54.x ... G59.x (Décalages d'origine) 154/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) 5.2.41 – G154.x ... G159.x (Plan incliné) – G40 ... G42 (Correction du rayon d'outil) – Coord() (Activer/désactiver/commuter la transformation d'axe) – Transfert d'axe des axes participant aux coordonnées tridimension‐ nelles actuelles via la transformation d'axe/de coordonnées. ● Aucun contrôle de collision n'est effectué, si G141 ou G142 est active. ● Si le programme se termine sans M30, G140 doit être active à ce moment précis. Les valeurs actuelles pour la profondeur de plongée et le métré sont conservées. ● G140 est activée automatiquement après la remise à zéro, la remise à zéro du système ou M30. Les valeurs actuelles pour la profondeur de plongée et le métré sont paramétrées à 0. Placement : Plan incliné "G151 - G159.5" Effet Le positionnement "Plan incliné" peut librement déplacer et orienter le système de coordonnées de la pièce à usiner dans l'espace. Le plan incliné a un effet sur les coordonnées avec les significations "X", "Y" et "Z" dans le canal cor‐ respondant. Les désignations d'axe "X", "Y" et "Z" utilisées ci-après se réfèrent aux axes ayant la signification X, Y et Z. Comme il existe 3 degrés de liberté pour l'orientation, chaque orientation peut être représentée par 3 rotations de base successives : Fig.5-87: Placement "Plan incliné" La fonctionnalité résultante du "Plan incliné" est influencée par Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 155/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ● 5 banques (1 à 5) qui agissent de façon additive les unes par rapport aux autres. Elles permettent de générer jusqu'à 5 systèmes de coordonnées pour la pièce à usiner reposant les uns sur les autres. ● 8 jeux alternatifs par banque. Tout jeu contient toutes les données de décalage et d'orientation néces‐ saires pour un système de coordonnées de la pièce à usiner. Au sein d'une banque, un seul jeu peut être actif à un moment donné, c'est-à-dire que les jeux d'une banque se révoquent mutuellement. Le plan incliné agit de façon additive au positionnement "Correction de la po‐ sition de la pièce à usiner" et se situe donc dans la "chaîne de calcul" après la correction de position de pièce à usiner : Fig.5-88: Placement "Correction de la position de la pièce à usiner" Programmation … Toutes les données nécessaires au décalage et à l'orientation d'un système de coordonnées de la pièce à usiner déterminent un "jeu". Les jeux peuvent soit ● être programmés directement dans le programme pièce en tant que pa‐ ramètres de fonction, soit ● être activés de manière implicite selon l'orientation actuelle de l'outil, ou ● être indiqués dans un tableau de positionnement (voir chap. 6.68 "Activer les tableaux de positionnement PmTSel, PMS" à la page 265). Un tableau de positionnement peut contenir jusqu'à 30 jeux (5 banques, 6 jeux par banque). ... directement dans la ligne de programme en tant que paramètre : Fonction de base En cas du plan incliné verticalement à l'outil, la position et l'orientation du nou‐ veau système de coordonnées de la pièce à usiner à sous-tendre sont déter‐ minées directement par le TCP et l'orientation de l'outil. 156/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Fig.5-89: Plan incliné verticalement à l'outil Une fois le plan incliné verticalement à l'outil activé, l'origine du nouveau sys‐ tème de coordonnées de la pièce à usiner se trouve dans le TCP de l'outil. Le nouvel axe Zw se trouve en direction de l'axe longitudinal de l'outil. La nouvelle coordonnée Yw est parallèle au plan sous-tendu par les coordon‐ nées de base précédentes XB et YB. La nouvelle axe Xw est le résultat du produit vecteur des deux autres coordon‐ nées, selon la définition mathématique : Xw = Yw x Zw. La figure suivante montre la configuration après l'activation du plan incliné ver‐ ticalement à l'outil : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 157/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Fig.5-90: Configuration après activation du plan incliné verticalement à l'outil La programmation optionnelle de l'angle de rotation psi, l'orientation du systè‐ me de coordonnées peut être tournée autour de la nouvelle coordonnée Zw. Syntaxe : G151.<Banque>{(<An‐ gle3>)} Plan incliné de la banque voulue ACTIVÉ. Les valeurs de décalage ressortent de la position actuelle de la pointe de l'outil (TCP) dans le système de coordonnées actuel du programme (PCS). Les angles de rotation sont le résultat direct de l'orientation actuelle de l'outil. Si aucune transformation d'axe orientable n'est active, les valeurs des angles Euler sont mises à la valeur 0. Format abrégé : G151 correspond à G151.1 G153.<Banque> Plan incliné de la banque programmée DÉSACTIVÉ. G153 Plan incliné DÉSACTIVÉ (désactiver toutes les ban‐ ques). avec <Banque> Numéro de la banque voulue. Plage de valeurs : 1 à 5 <Angle3> Angle de rotation psi autour de la nouvelle coordonnée Zw. Plage de valeurs : 0 <= <Angle3 <= 360 degrés Fig.5-91: Syntaxe G151, G153 158/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) G152.<Banque>({<Décalage XW>}{, {<Décalage YW>}{,{<Décalage ZW>}{, {<An‐ gle1>}{,{<Angle2>}{, {<Angle3>}}}}}}) Plan incliné de la banque voulue ACTIVÉ, avec des données de décalage/d'orientation programmées. Format abrégé : G152 correspond à G152.1 G153.<Banque> Plan incliné de la banque programmée DÉSACTIVÉ. G153 Plan incliné DÉSACTIVÉ (désactiver toutes les ban‐ ques). avec <Banque> Numéro de la banque voulue. Plage de valeurs :1 à 5 <Décalage XW> Valeur de décalage dans la direction de la coordonnée principale. <Décalage YW> Valeur de décalage dans la direction de la coordonnée secondaire. <Décalage ZW> Valeur de décalage dans la direction de la coordonnée normale. <Angle1> Angle de rotation autour de la coordonnée Z. Plage de valeurs : 0 ≤ <Angle1 > < 360 degrés <Angle2> Angle de rotation autour de la coordonnée Y'. Plage de valeurs : 0 ≤ <Angle2 > < 180 degrés <Angle3> Angle de rotation autour de la coordonnée Z''. Plage de valeurs : 0 ≤ <Angle3 > < 360 degrés Fig.5-92: Exemple : G151, G153 Syntaxe G152, G153 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 159/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Sous-programme "Perçage" 10 ZVAL = P1 20 FEED = P2 30 OLDFEED = SD(5,1,2) 40 DIM FCODE$(4) 50 FCODE$ = NCF("G94") 60 DIM ICODE$(4) Le sous-programme "Perçage" active au point d'ap‐ pel la fonction "Plan incliné verticalement à l'outil" et effectue ensuite un perçage en direction z avec la profondeur et l'avance transmises. Les états des groupes modaux de "G1", "G90" et "G94" ainsi que la valeur d'avance initiale sont sauvegardés au dé‐ but du sous-programme et restaurés à sa fin. En outre, le plan incliné est désélectionné à la fin du sous-programme. 70 ICODE$ = NCF("G1") 80 DIM ACODE$(4) 90 ACODE$ = NCF("G90") N100 G151.1 N110 G1 G91 G94 N120 z[ZVAL] F[FEED] N130 G4(F0.5) N140 [ACODE$] z0 [FCODE$] F[OLDFEED] N150 G153.1 N160 [ICODE$] M30 Programme principal "FatTOIncli‐ Dans le programme principal "FatTOInclinedPla‐ nedPlane.npg" ne.npg", la transformation d'axe 1 est activée et, ensuite, l'outil est positionné et orienté à différentes N05 Coord(1) positions dans l'espace. Pour toutes ces positions, N10 G1 x0 y0 z100 phi90 theta1 le sous-programme "Perçage" est appelé qui active F2000 le "Plan incliné verticalement à l'outil" et effectue ensuite un perçage. La profondeur et l'avance de N20 P Bohren[-10,500] perçage sont transférées en tant que paramètres N30 phi90 theta10 au sous-programme. N40 P Bohren[-10,500] N50 theta45 N60 P Bohren[-10,500] N70 phi0 N80 P Bohren[-10,500] N90 G2 I100 J0 ROTAX(0,0,1) O(-360) N100 P Bohren[-10,500] N110 G90G1 N120 Coord(0) M30 G152, G153 160/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) : N40 G152.1(100,0,0,90) Activer le plan incliné banque 1. : Le point d'origine est décalé de 100 mm en direction des X et le WCS tourné de 90 degrés autour de la coordon‐ née Z. : : Aucun mouvement de déplacement. : : Désactiver toutes les banques (désactiver complète‐ ment le plan incliné). N180 G153 ... en relation avec les tableaux de positionnement : Syntaxe : 1. Activer le tableau de positionnement voulu (voir chap. 6.68 "Activer les tableaux de positionnement PmTSel, PMS" à la page 265). 2. Programmer la fonction requise : G154.<Banque> Plan incliné de la banque programmée jeu 1 ACTI‐ VÉ. G155.<Banque> Plan incliné de la banque programmée jeu 2 ACTI‐ VÉ. G156.<Banque> Plan incliné de la banque programmée jeu 3 ACTI‐ VÉ. G157.<Banque> Plan incliné de la banque programmée jeu 4 ACTI‐ VÉ. G158.<Banque> Plan incliné de la banque programmée jeu 5 ACTI‐ VÉ. G159.<Banque> Plan incliné de la banque programmée jeu 6 ACTI‐ VÉ. Format abrégé : G152 - G159 correspond à G154.1 - G159.1 G153.<Banque> Plan incliné de la banque programmée DÉSACTI‐ VÉ. G153 Plan incliné DÉSACTIVÉ (désactiver toutes les banques). avec <Banque> Numéro de la banque voulue. Plage de valeurs : 1 à 5 Fig.5-93: Syntaxe G153 - G159 Pour de plus amples informations relatives à l'élaboration et l'édition des tableaux de positionnement, veuillez consulter le "Mode d'em‐ ploi". Exemple : G153 - G159 N40 PMS(Tab1) Activer le tableau de positionnement "Tab1". N50 G154.1 Activer la banque 1 avec le jeu 1. Aucun mouve‐ ment de déplacement. : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 161/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) N90 G154.2 X1 Y2 Z3 : Activer la banque 2 avec le jeu 1 (agit de façon ad‐ dititive à la banque 1). Approcher la position pro‐ grammée P(1,2,3) dans la WCS résultant. : N120 G153.2 Désactiver la banque 2 (la banque 1 reste active). : N180 G153 Particularités et restrictions : Désactiver toutes les banques (désactiver complè‐ tement le plan incliné). ● Dans la mesure où une transformation d'axe est active, le plan incliné ne doit pas être programmé dans un même bloc avec un déplacement. ● L'état de mise en service et le comportement lors de la remise à zéro sont configurés dans les paramètres machine 7060 00010 et 7060 00020. ● Toutes les fonctions ont un effet modal au sein d'une banque (1…5) et se révoquent réciproquement. ● L'activation et la désactivation du plan incliné interrompent la prévisuali‐ sation de blocs et ne doivent pour cette raison pas être programmées lors de la correction de la trajectoire de la fraise (G41/G42, voir chap. 5.2.18 "Correction de trajectoire de la fraise G40, G41, G42" à la page 121). ● Si la fonction "Plan incliné verticalement à l'outil" est appelée, il n'est pas contrôlé si cet appel est plausible. Cela veut dire que l'utilisateur est res‐ ponsable d'appeler la fonction dans la banque de positionnement correc‐ te. ● Afin d'activer un positionnement Plan incliné dans un canal, au moins 2 axes avec une signification ("X", "Y", "Z") doivent exister dans un canal. 5.3 Codes M 5.3.1 Interrompre le programme (Arrêt du programme) "M0, M00" Effet ● Interrompt le programme CN, ● arrête les mouvements de la machine suite à l'exécution du bloc et ● émet le signal d'interface spécifique au canal "Arrêt du programme M0". L'état actuel du canal passe sur "CN prête". Une nouvelle activation de "Démarrage CN" reprend l'exécution du programme. Pour interrompre un programme en fonction du signal d'interface spécifique au canal "Arrêt optionnel", voir M1/M01. Programmation Syntaxe : Particularités et restrictions : 5.3.2 M0 ou M00 Il est possible de programmer "Arrêt du programme" avec d'autres fonctions CN dans le même bloc. La fonction "Arrêt du programme" ne prend effet qu'après toutes les autres fonctions programmées ont été effectuées. Interrompre le programme de façon conditionnelle (Arrêt conditionnel du programme) "M1, M01" Effet ● Interrompt le programme CN et 162/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ● arrête les mouvements de la machine suite à l'exécution du bloc, si le signal d'interface spécifique au canal "Arrêt optionnel" est actif. L'état actuel du canal passe sur "CN prête". Une nouvelle activation de "Démarrage CN" reprend l'exécution du programme. Programmation Syntaxe : Particularités et restrictions : 5.3.3 M1 ou M01 Il est possible de programmer "Arrêt conditionnel du programme" avec d'autres fonctions CN dans le même bloc. La fonction "Arrêt conditionnel du program‐ me" ne prend effet qu'après toutes les autres fonctions programmées ont été effectuées. Terminer le programme (Fin de programme) "M2, M02, M30" Effet Termine un programme. Si ce programme est un sous-programme, la CN ● passe à une fonction auxiliaire (M2, M02 ou M30), ● resaute dans le programme appelant et ● continue à effectuer le programme appelant. Les états modaux modifiés dans le sous-programme ne sont pas remis à zéro ! Si le programme est un programme principal, la CN ● initialise le signal d'interface spécifique au canal "Fin de programme M30", ● retire le signal d'interface spécifique au canal "Programme en cours", ● désélectionne une "Sélection automatique de la gamme de vitesse " éventuellement active (la gamme de vitesse actuelle est par contre con‐ servée), ● commute sur "Programmation directe de la vitesse de rotation" (G97), ● active tous les états qui sont définis dans le paramètre machine 7060 00020 "États de mise en service" pour un évènement "M30", ● saute au début du programme principal et ● attend un nouveau "Démarrage CN". Une nouvelle activation de "Démarrage CN" redémarre l'exécution du pro‐ gramme à partir du début. Programmation Syntaxe : Particularités et restrictions : M2 ou M02 ou M30 Programmer la fonction dans une ligne de programme séparée. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 163/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) AVERTISSEMENT L'absence des définitions pour des états de mise en service peut en‐ traîner des dommages ! Si certains états ou certaines fonctions sont nécessaires après la fin d'un programme principal, il faut s'assurer que l'INITSTRING de l'évènement "M30" est paramétré correctement dans MP 7060 00020 ! Il doit contenir toutes les fonctions qui mettront la CN en l'état nécessaire/désiré après une fin de programme principal. Dans ce contexte, tenir compte du fait que les fonctions modales restent actives après la fin du programme ! Pour de plus amples informations relatives aux états de mise en service, voir le manuel "Description des fonctions". 5.3.4 Rotation à droite de la broche "M3, M103, M203", Rotation à droite et Réfrigérant ACTIVÉ "M13, M113, M213" Effet ATTENTION La syntaxe décrite n'est valide que pour les réglages par défaut des domaines de paramètres machine 1040 001xx et 1040 002xx. Elle est librement configurable et peut donc être différente sur votre machine ! La documentation du constructeur de la machine-outil est donc toujours prioritaire. Consulter votre responsable système pour savoir si les fonctions décrites ciaprès sont également valables pour votre machine ! ● Démarre une broche en rotation à droite - par rapport à la direction du regard - "Outil vers pièce à usiner", ● annule un asservissement de positionnement activé par "Réglage/posi‐ tionnement de la broche", ● réserve la/les broche(s) correspondante(s) pour le canal actuel. Le mouvement de broche ne démarre que lorsque un mot S ou SSPG supérieur à 0 a été programmé préalablement ou dans le même bloc pour la broche/le groupe de broches concerné(e) (voir chap. 5.4.4 "Programmer la vitesse de rotation de la brocheS, SSPG" à la page 171). Programmation Syntaxe : M3 Agit sur le 1er groupe de broches. M103 Agit sur la 1ère broche. M203 Agit sur la 2ème broche. M13 Agit sur le 1er groupe de broches. Effectue également « Réfrigérant ACTIVÉ». M113 Agit sur la 1ère broche. Effectue également « Réfrigé‐ rant ACTIVÉ». M213 Agit sur la 2ème broche. Effectue également « Réfrigé‐ rant ACTIVÉ». Fig.5-94: Particularités et restrictions : ● Syntaxe M3, M13, M103, M113, M203 et M213 La fonction respective réserve automatiquement la/les broche(s) corres‐ pondante(s) pour le canal actuel. L'utilisation de la/des broche(s) réser‐ vée(s) par un autre canal n'est à nouveau possible que si la fonction "Arrêt 164/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) de la broche" (voir chap. 5.3.6 " Arrêt de la broche M5, M105, M205" à la page 165) ou "SpAdmin" (SPA, voir chap. 6.93 "Valider/reprendre la broche réservée SpAdmin, SPA" à la page 297) est utilisée pour la/les broche(s) correspondante(s). ● La fonction correspondante est active jusqu'à ce qu'un nouvel état de mouvement soit programmé pour la/les même(s) broche(s) (par exemple un sens de rotation différent, avec/sans réfrigérant, "Arrêt de la broche" ou "Réglage de la broche"). ● Les ordres concurrentiels pour les broches individuelles et les groupes de broches programmés dans un même bloc génèrent une erreur d'exécution (exemple : M3 et M104 ne sont pas admis dans le même bloc). ● 5.3.5 Après un changement de gamme de vitesse, la direction de rotation pré‐ alablement programmée de la broche est réappliquée automatiquement. Rotation à gauche de la broche "M4, M104, M204", Rotation à gauche et Réfrigérant ACTIVÉ "M14, M114, M214" Effet ATTENTION La syntaxe décrite n'est valide que pour les réglages par défaut des domaines de paramètres machine 1040 001xx et 1040 002xx. Elle est librement configurable et peut donc être différente sur votre machine ! La documentation du constructeur de la machine-outil est donc toujours prioritaire. Consulter votre responsable système pour savoir si les fonctions décrites ciaprès sont également valables pour votre machine ! ● Démarre une broche en rotation à gauche - par rapport à la direction du regard - "Outil vers pièce à usiner", ● annule un asservissement de positionnement activé par "Réglage/posi‐ tionnement de la broche", ● réserve la/les broche(s) correspondante(s) pour le canal actuel. Le mouvement de broche ne démarre que lorsque un mot S ou SSPG supérieur à 0 a été programmé préalablement ou dans le même bloc pour la broche/le groupe de broches concerné(e) (voir chap. 5.4.4 "Programmer la vitesse de rotation de la brocheS, SSPG" à la page 171). Programmation Syntaxe : M4 Agit sur le 1er groupe de broches. M104 Agit sur la 1ère broche. M204 Agit sur la 2ème broche. M14 Agit sur le 1er groupe de broches. Effectue également « Réfrigérant ACTIVÉ». M114 Agit sur la 1ère broche. Effectue également « Réfrigé‐ rant ACTIVÉ». M214 Agit sur la 2ème broche. Effectue également « Réfrigé‐ rant ACTIVÉ». Fig.5-95: Syntaxe M4, M14, M104, M114, M204 et M214 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 165/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Particularités et restrictions : ● La fonction respective réserve automatiquement la/les broche(s) corres‐ pondante(s) pour le canal actuel. L'utilisation de la/des broche(s) réser‐ vée(s) par un autre canal n'est à nouveau possible que si la fonction "Arrêt de la broche" (voir chap. 5.3.6 " Arrêt de la broche M5, M105, M205" à la page 165) ou "SpAdmin" (SPA, voir chap. 6 "Fonctions CN avec syntaxe de langage standard" à la page 175) est utilisée pour la/les broche(s) correspondante(s). ● La fonction correspondante est active jusqu'à ce qu'un nouvel état de mouvement soit programmé pour la/les même(s) broche(s) (par exemple un sens de rotation différent, avec/sans réfrigérant, "Arrêt de la broche" ou "Réglage de la broche"). ● Les ordres concurrentiels pour les broches individuelles et les groupes de broches programmés dans un même bloc génèrent une erreur d'exécution (exemple : M3 et M104 ne sont pas admis dans le même bloc). ● 5.3.6 Après un changement de gamme de vitesse, la direction de rotation pré‐ alablement programmée de la broche est réappliquée automatiquement. Arrêt de la broche "M5, M105, M205" Effet ATTENTION La syntaxe décrite n'est valide que pour les réglages par défaut des domaines de paramètres machine 1040 001xx et 1040 002xx. Elle est librement configurable et peut donc être différente sur votre machine ! La documentation du constructeur de la machine-outil est donc toujours prioritaire. Consulter votre responsable système si vous n'êtes pas sûr que les fonctions décrites ci-après sont également valables pour votre machine ! ● Arrête la/les broche(s), ● annule une éventuelle réservation de la/des broche(s) indiquée(s) par le canal actif, ● annule un asservissement de positionnement activé par "Réglage/posi‐ tionnement de la broche". Programmation Syntaxe : M5 Agit sur le 1er groupe de broches. M105 Agit sur la 1ère broche. M205 Agit sur la 2ème broche. Fig.5-96: Particularités et restrictions : Syntaxe M5, M105 et M205 ● La fonction correspondante est active jusqu'à ce qu'un nouvel état de mouvement soit programmé pour la/les même(s) broche(s) (par exemple "Rotation à gauche/droite de la broche" ou "Réglage de la broche"). ● Les ordres concurrentiels pour les broches individuelles et les groupes de broches programmés dans un même bloc génèrent une erreur d'exécution (exemple : M3 et M105 ne sont pas admises dans le même bloc). 166/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) 5.3.7 Réglage de la broche / Positionnement de la broche "M19, M119, M219" Effet ATTENTION La syntaxe décrite n'est valide que pour les réglages par défaut des domaines de paramètres machine 1040 001xx et 1040 002xx. Elle est librement configurable et peut donc être différente sur votre machine ! La documentation du constructeur de la machine-outil est donc toujours prioritaire. Consulter votre responsable système si vous n'êtes pas sûr que les fonctions décrites ci-après sont également valables pour votre machine ! La broche est réservée pour le canal actuel et positionnée en asservissement de positionnement sur une position définissable. La positionnement s'effectue ● à l'arrêt : comme stipulé dans le paramètre S-0-0154 de l'entraînement. ● lors d'un mouvement rotatif actif : en conservant le sens de rotation. Programmation Syntaxe : M19 Groupe de broches 1 : Positionner toutes les broches intéressées sur leurs angles de référence (paramètre d'entraînement S-0-0153). M119 1. Positionner la broche sur son angle de référence (S-0-0153). M219 2. Positionner la broche sur son angle de référence (S-0-0153). M19S<Angle> Groupe de broches 1 : Positionner toutes les broches intéressées sur <Angle>. M119 S1=<Angle> 1. Positionner la broche sur <Angle>. M219 S2=<Angle> 2. Positionner la broche sur <Angle>. <Angle> Position de broche absolue désirée en degrés. Plage de valeurs : 0° ≤ Position de la broche < 360°. Si une autre valeur est programmée en tant que posi‐ tion, elle est automatiquement convertie en l'intervalle indiqué. Si la broche se trouve déjà à la position indiquée, un nouveau mouvement n'a pas lieu. Fig.5-97: Particularités et restrictions : Syntaxe M19, M119 et M219 ● La fonction respective ne doit pas être programmée avec une fonction de broche concurrentielle ("Rotation à droite/gauche de la broche", "Arrêt de la broche") dans le même bloc. ● Dans la mesure où le mot S est indispensable, il doit être programmé dans le même bloc. ● Après le processus de positionnement, la broche conserve l'asservisse‐ ment de positionnement. L'asservissement de positionnement n'est an‐ Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 167/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) nulé automatiquement que par "Rotation à droite/gauche de la broche" ou "Arrêt de la broche". ● Les ordres concurrentiels pour les broches individuelles et les groupes de broches programmés dans un même bloc génèrent une erreur d'exécution (exemple : M3 et M119 ne sont pas admis dans le même bloc). ● Exemples : En cas de la définition du signal d'interface "qSp_SValueSD", la définition des positions se fait via la date du système "SysSpCmdData[n]/OriPos". La valeur programmée est ignorée. Toutes les broches du 1er groupe de broches se posi‐ tionnent sur leurs angles de référence. N60 M19 : Seule la 2ème broche se positionne sur son angle de référence. N70 M219 : : Toutes les broches du 1er groupe de broches se posi‐ tionnent sur 180 degrés. N90 M119 S1=370 1. broche positionnée sur 10 degrés. N80 M19 S180 : N95 M19 S1=10 S2=20 : Dans le cas où la 1ère ou 2ème broche sont attribuées au 1er groupe de broche : 1. broche positionnée sur 10, 2. broche positionnée sur 20 degrés. Toutes les autres broches du groupe de broches 1 se positionnent sur leurs angles de référence. 5.3.8 Sélection automatique de la gamme de vitesse "M40, M140, M240" Effet ATTENTION La syntaxe décrite n'est valide que pour les réglages par défaut des domaines de paramètres machine 1040 001xx et 1040 002xx. Elle est librement configurable et peut donc être différente sur votre machine ! La documentation du constructeur de la machine-outil est donc toujours prioritaire. Consulter votre responsable système si vous n'êtes pas sûr que les fonctions décrites ci-après sont également valables pour votre machine ! La commande sélectionne automatiquement, en fonction de la vitesse de ro‐ tation active, la gamme adéquate parmi les gammes de vitesse disponibles. Si les plages de certaines gammes de vitesse se chevauchent, la commande choisira toujours la gamme inférieure (avec la vitesse de rotation supérieure du moteur). Programmation Syntaxe : M40 Activer la sélection automatique de la gamme de vitesse pour le 1er groupe de broches. M140 Activer la sélection automatique de la gamme de vitesse pour la 1ère broche. M240 Activer la sélection automatique de la gamme de vitesse pour la 2ème broche. Fig.5-98: Syntaxe M40, N140 et M240 168/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Particularités et restrictions : 5.3.9 ● La programmation de la vitesse de rotation "0" n'entraîne pas de chan‐ gement de gamme de vitesse. ● M40, M41-M44, M48, M140, M141-M144 et M148 sont des fonctions mo‐ dales qui se révoquent respectivement. ● Les fonctions M240, M241-M244 et M248 sont des fonctions modales qui se révoquent mutuellement. ● M30 désélectionne une sélection automatique de la gamme de vitesse éventuellement active (la gamme de vitesse actuelle reste pourtant sé‐ lectionnée). ● La sélection automatique de la gamme de vitesse n'agit pas sur les bro‐ ches analogiques. Sélection manuelle de la gamme de vitesse "M41...44, M141...144, M241...244" Effet ATTENTION La syntaxe décrite n'est valide que pour les réglages par défaut des domaines de paramètres machine 1040 001xx et 1040 002xx. Elle est librement configurable et peut donc être différente sur votre machine ! La documentation du constructeur de la machine-outil est donc toujours prioritaire. Consulter votre responsable système si vous n'êtes pas sûr que les fonctions décrites ci-après sont également valables pour votre machine ! Sélectionne la gamme de vitesse correspondante. Si une vitesse de rotation est programmée, qui se situe en dehors de la plage de la gamme de vitesse, la commande indique la vitesse de rotation minimale ou maximale de la gamme de vitesse correspondante. Programmation Syntaxe : M4<Gamme de vitesse> Activer la gamme de vitesse <Gamme de vitesse> pour le 1er groupe de broches. M14<Gamme de vitesse> Activer la gamme de vitesse <Gamme de vitesse> pour la 1ère broche. M24<Gamme de vitesse> Activer la gamme de vitesse <Gamme de vitesse> pour la 2ème broche. avec <Gamme de vitesse> Fig.5-99: Particularités et restrictions : Plage de saisie : 1... 4. Syntaxe M4, M14 et M24 ● M40, M41-M44, M48, M140, M141-M144 et M148 sont des fonctions mo‐ dales qui se révoquent respectivement. ● Les fonctions M240, M241-M244 et M248 sont des fonctions modales qui se révoquent mutuellement. ● La sélection manuelle de la gamme de vitesse n'agit pas sur les broches analogiques. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 169/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) 5.3.10 Débrayer la gamme de vitesse "M48, M148, M248" Effet ATTENTION La syntaxe décrite n'est valide que pour les réglages par défaut des domaines de paramètres machine 1040 001xx et 1040 002xx. Elle est librement configurable et peut donc être différente sur votre machine ! La documentation du constructeur de la machine-outil est donc toujours prioritaire. Consulter votre responsable système si vous n'êtes pas sûr que les fonctions décrites ci-après sont également valables pour votre machine ! Débraie la gamme de vitesse. Le réducteur marche ensuite à vide. Programmation Syntaxe : M48 Débrayer la gamme de vitesse pour le 1er groupe de broches. M148 Débrayer la gamme de vitesse pour la 1ère broche. M248 Débrayer la gamme de vitesse pour la 2ème broche. Fig.5-100: Particularités et restrictions : Syntaxe M48, M148 et M248 ● M40, M41-M44, M48, M140, M141-M144 et M148 sont des fonctions mo‐ dales qui se révoquent respectivement. ● Les fonctions M240, M241-M244 et M248 sont des fonctions modales qui se révoquent mutuellement. ● Les fonctions n'agissent pas sur les broches analogiques. 5.4 Programmation de l'avance et de la vitesse de rotation 5.4.1 Adresse F"F" Effet La commande interprète les adresses F en fonction de la fonction G actuelle‐ ment active G93, G94, G95 en tant que ● durée d'interpolation en secondes (voir G93, chap. 5.2.35 "Programma‐ tion de temps G93" à la page 144) ● avance exprimée en mm/min ou pouce/min (voir G94, chap. 5.2.36 "Pro‐ grammation de l'avance (par min) G94" à la page 144) ● avance exprimée en mm/tour (voir G95, Page chap. 5.2.38 "Program‐ mation de l'avance (par tour) G95" à la page 147) Pour les adresses F s'applique ce qui suit : F est une fonction modale pour G94 et G95. ATTENTION Après la montée en régime ou la remise à zéro, la dernière valeur F active est modifiée le cas échéant ! Après les événements mentionnés ci-dessus, la valeur F définie dans les paramètres machine 7060 00020 ou 7060 00010 est active (valeur par défaut : F0). Il y est également indiqué si G93, G94 ou G95 doit être activée (valeur par défaut : G94). C'est pourquoi vous devez vous assurer que l'avance nécessaire soit toujours programmée avant l'usinage ! 170/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Programmation Syntaxe : F <Valeur> avec <Valeur> Fig.5-101: Particularités et restrictions : 5.4.2 Est interprétée en fonction de la fonction G active en tant que durée d'interpolation, avance ou temporisation. Syntaxe F<Valeur> L'avance sur trajectoire programmée peut être écrasée à l'aide de la fonction "Avance d'essai". Celle-ci est commandée via le signal IF du canal "IF qCh_TestFeed" (Avance d'essai). Vitesse des axes asynchrones "FA" Effet Tous les déplacements d'axes asynchrones programmés dans le bloc FA ne sont pas effectués en avance rapide, mais à la vitesse programmée. L'unité dans laquelle l'avance asynchrone des axes linéaires est à interpréter est déterminée via le paramètre de configuration "NCO/CorrUnit/AsynchrAxU‐ nit" : mm/min ou pouce/min. L'unité peut être changé pour tout bloc individuel au moyen des attributs de programmation MM(...) et INCH(...). Pour les axes rotatifs, l'avance FA programmée est interprétée en degrés/min, indépendamment de la configuration et de l'attribut de programmation. Une programmation erronée est susceptible d'entraîner un endomma‐ gement de la machine ! La vitesse indiquée n'agit que dans le bloc FA actif ! AVERTISSEMENT Si, dans un bloc suivant, des axes asynchrones sont programmés sans nou‐ veau mot FA, les axes se déplacent à nouveau en vitesse rapide. Programmation Syntaxe : FA<Valeur> avec <Valeur> Fig.5-102: Exemple : Vitesse voulue. Syntaxe FA N10 G1 G94 X200 Z300 F200 Avance des axes synchrones : 200 mm/min. 5.4.3 N11 UA400 VA140 FA250 Les axes asynchrones UA et VA se déplacent à une vitesse de 250 mm/min. N12 UA0 WA10 Les axes asynchrones UA et WA se déplacent à nouveau en vitesse rapide. Adresse oméga (avance) "Oméga" Effet Si, dans un bloc, seuls les axes qui sont exclus de la génération de l'avance sont déplacés (voir "FeedAd", chap. 6.33 " Génération de l'avance : Masquer les axes FeedAd, FAD" à la page 216), leur avance peut être réglée via l'adresse "Oméga". Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 171/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Programmation Syntaxe : Oméga<Valeur> avec <Valeur> Fig.5-103: 5.4.4 Avance voulue. Syntaxe Oméga Programmer la vitesse de rotation de la broche"S, SSPG" Effet Définit pour la G97 active la vitesse de rotation ● d'une broche individuelle (S…), ou ● d'un groupe complet de broches (SSPG…). La broche n'atteint la vitesse de rotation programmée que si une instruction de rotation de broche est active (par exemple rotation à droite : M3, rotation à gauche : M4). Programmation Syntaxe : S<Numéro>=<Valeur> Programmer la vitesse de rotation pour une broche in‐ dividuelle. SSPG<Groupe>=<Valeur> Programmer la vitesse de rotation pour un groupe com‐ plet de broches. S<Valeur> Format abrégé pour programmer la vitesse de rotation de la 1ère broche. N'agit que sur la 1ère broche, si toutefois elle n'est at‐ tribuée à aucun groupe de broches via MP 1040 00002. Dans le cas contraire, ceci programme le groupe com‐ plet de broches comprenant la 1ère broche. avec <Numéro> Numéro de la broche (index de broches). Champs de saisie : 1 jusqu'au nombre de broches définies (définies via MP 1040 00001). Valeurs entières. <Groupe> Numéro du groupe de broches. Champs de saisie : 1 ... 4 <Valeur> Vitesse de rotation de la broche voulue (unité par dé‐ faut : tours/min). Valeur de saisie : ≥ 0. Fig.5-104: Particularités et restrictions : Syntaxe S et SSPG ● Lorsque G96 st active, un mot S est interprété en tant que vitesse de coupe. Pour la syntaxe, voir chap. 5.2.39 "Vitesse de coupe constante G96, Programmation directe de la vitesse de rotation G97" à la page 148. ● En relation avec la fonction "Réglage de la broche", un mot S est interprété en tant qu'angle de positionnement. Pour la syntaxe, voir chap. 5.3.7 "Réglage de la broche / Positionnement de la broche M19, M119, M219" à la page 166. 172/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) ● Il est possible de programmer les vitesses de rotation de plusieurs bro‐ ches/groupes de broches dans un même bloc. ● La vitesse de rotation résultante dépend de l'atténuateur spécifique à la broche. ● La vitesse de rotation résultante est éventuellement limitée par ● – les fonctions SMin ou SMax (voir chap. 6.92 "Limitation de la vitesse de rotation SMin, SMN, SMax, SMX" à la page 296). – les limites de gamme de vitesse (MP 1040 00011, 1040 00012). La vitesse de rotation maximale autorisée d'un groupe de couplage de broches (broches à marche synchrone) dépend du temps de cycle CN. Pour cette fonction s'applique ce qui suit : Smax [tours/min] = 14400 / (MP 9030 00001 [ms] ). ● La vitesse de rotation définie vaut tant qu'elle n'est pas écrasée par une nouvelle vitesse de rotation prédéfinie pour la/les même(s) broche(s). Après la montée en régime de la commande, S=0 est valide. ● Exemple : En cas de la définition du signal d'interface "qSp_SValueSD", la définition de la vitesse de rotation se fait via la date du système "SysSpCmdData[n]/ Speed". Les valeurs programmées via S, Sx=, SSPGx sont ignorées. N10 G97 Activer la programmation de la vitesse de rotation. N20 SSPG1=1000 : Toutes les broches du 1er groupe de broches à une vi‐ tesse de rotation de 1000 tours/min. N50 S1=2000 S2=60 Vitesse de rotation de la 1ère broche à 2000 tours/min. : Vitesse de rotation de la 2ème broche à 60 tours/min. N80 S3=2000 Vitesse de rotation de la 3ème broche à 2000 tours/min. : N90 S1500 Vitesse de rotation de la 1ère broche à 1500 tours/min. Dans la mesure où la 1ère broche est attribuée à un groupe de broches, la vitesse de rotation prédéfinie est valide pour l'ensemble des groupes de ce groupe. : 5.5 Correction de l'outil 5.5.1 Correction D "D" Effet La correction D appelle les valeurs de correction d'outil qui sont enregistrées au sein de l'IndraMotion MTX dans les tableaux de correction XML D. Un ta‐ bleau de correction ne peut contenir que 99 articles au maximum. Tout article contient les valeurs de correction suivantes : ● 3 longueurs d'outil L1, L2, L3, ● le rayon de coupe RAD, ● l'orientation de l'arête de coupe ORI. La correction D est indiquée pareillement pour les outils de perçage, de frai‐ sage, de tournage et d'équerrage. A l'aide des 3 valeurs de décalage L1, L2 et L3 disponibles, il est possible de réaliser des décalages d'outil constants dans l'espace pour un outil ainsi que des corrections de longueur parallèles pour un maximum de 3 outils différents. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 173/550 Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) Un tableau de correction D est activé à l'aide de la fonction "DcTSel" (DCS), et ensuite un bloc de correction est sélectionné parmi les 99 articles au maximum via l'ordre CN "D". Les valeurs de correction deviennent actives avec la correction d'outil active G47 (longueur d'outil et orientation de l'arête de coupe), ou avec la correction de fraisage active G41/G42 ou G141/G142 (rayon de l'outil). Elles sont dans ce cas superposées de façon additive par les valeurs de correction sélection‐ nées activement de la correction externe de l'outil ED. Pour la correction D s'applique ce qui suit : ● Le bloc d'outil présélectionné est actif de façon modale. Une nouvelle programmation supprime le bloc d'outil présélectionné jusqu'à présent. ● Une correction D peut être programmée dans un même bloc avec d'autres conditions de course, mouvements de déplacement ou fonctions auxiliai‐ res. ● La correction d'outil n'est calculée que lorsque la fonction CN correspon‐ dante a été activée : G47, G41, G42, G141, G142. Programmation Syntaxe : D<No. du bloc d'outil> Présélectionner le bloc de correction d'outil à partir du tableau de correction D active. D0 Désélectionner le bloc de correction d'outil, sans en présélectionner un nouveau. avec <No. du bloc d'outil> Numéro du bloc de données de correction. Plage de saisie : 1... 99. Fig.5-105: Exemple : N10 D7 : 5.5.2 Syntaxe D et D0 Présélectionner les valeurs de correction pour le bloc d'outil 7. Correction ED "ED" Effet La correction externe de l'outil (Correction ED) appelle des valeurs de correc‐ tion pour un maximum de 16 arêtes de coupe de l'outil. Les valeurs de correction peuvent être inscrites via le module de programme "MT_TCorr" par l'API ou via le programme pièce avec l'ordre CPL "DTC". Chacun des 16 articles contient les valeurs de correction suivantes : ● 3 longueurs d'outil L1, L2, L3, ● le rayon de coupe RAD, ● l'orientation de l'arête de coupe ORI. La correction ED est indiquée pareillement pour les outils de perçage, de frai‐ sage, de tournage et d'équerrage. A l'aide des 3 valeurs de décalage L1, L2 et L3 disponibles, il est possible de réaliser des décalages d'outil constants dans l'espace pour un outil ainsi que des corrections de longueur parallèles pour un maximum de 3 outils différents. Un bloc de correction est sélectionné parmi les 16 articles via l'ordre CN "ED". Les valeurs de correction deviennent actives avec la correction d'outil active G47 (longueur d'outil et orientation de l'arête de coupe), ou avec la correction 174/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec une syntaxe conforme à la norme DIN 66025 (y compris extensions) de fraisage active G41/G42 ou G141/G142 (rayon de l'outil). Elles sont dans ce cas superposées de façon addititive par les valeurs de correction sélection‐ nées activement de la correction D. Pour la correction ED s'applique ce qui suit : ● L'arête de coupe d'outil présélectionné est active de façon modale. Une nouvelle programmation supprime l'arête de coupe d'outil présélectionnée jusqu'à présent. ● Une correction ED peut être programmée dans un même bloc avec d'au‐ tres conditions de course, mouvements de déplacement ou fonctions auxiliaires. ● La correction d'outil n'est calculée que lorsque la fonction CN correspon‐ dante a été activée : G47, G41, G42, G141, G142. ● L'arête de coupe d'outil présélectionnée peut être indiquée sur l'interface API du canal respectif : iCh_ActFunc1..24 Programmation Syntaxe : ED<No. de l'arête de coupe de l'outil> Présélectionner le bloc de correction. ED0 Désélectionner le bloc de correction, sans en présélec‐ tionner un nouveau. avec <No. de l'arête de coupe de l'outil> Fig.5-106: Exemple : N10 ED7 : Numéro de l'arête de coupe de l'outil. Plage de saisie : 1... 16. Syntaxe ED Présélectionner les valeurs de correction pour l'arête de coupe 7. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 175/550 Fonctions CN avec syntaxe de langage standard 6 Fonctions CN avec syntaxe de langage standard 6.1 Aperçu La commande dispose d'un grand nombre de fonctions CN. Outre les ordres déterminés dans la norme DIN 66025, également les extensions essentielles dans le domaine des codes G et les éléments de syntaxe additionnels similaires au langage standard sont décrits dans ce chapitre. ● Fonctions CN avec syntaxe de langage standard : ● En cas des fonctions CN avec syntaxe de langage standard, il est en règle générale possible de déduire la signification de la fonction à partir du nom (par ex. "Scale" : mise à l'échelle). Il existe le plus souvent les variantes suivantes d'égale importance : – forme complète avec écriture en majuscules/minuscules à volonté. Afin d'améliorer la lisibilité, le présent manuel écrit les premières let‐ tres des mots composés en majuscule. Exemple : "KvProg". – forme abrégée, composée de 3 lettres majuscules (en cas d'excep‐ tion également 4 lettres majuscules). Exemple : forme abrégée de KvProg : KVP. La forme abrégée concernée est affichée également dans l'affichage des données de processus pour les fonctions actives modales. Dans les descriptions de syntaxe suivantes, les deux variantes sont indi‐ quées. Un tableau synoptique de toutes les fonctions CN est donné dans chap. 8 "Annexe" à la page 473. En outre, les fonctions CN sont données dans l'index. Écritures utilisées : Dans le manuel, les écritures suivantes sont utilisées pour la syntaxe des fonc‐ tions CN : Police de caractères "Courier gras" ou "Courier" : Les chaînes de caractères dans cette écriture doivent être programmées com‐ me indiqué. Exemple : G0(POL) Crochets triangulaires < > caractérisent un caractère de substitution pour une expression/un paramètre à programmer. Le caractère de substitution est représenté en italique. Exemple : <Axe1> Accolades { } caractérisent une expression/un paramètre optionnel/le. De tels éléments de syntaxe peuvent, mais ne doivent pas être programmés. Exemple : G0 { ( { POL, }{<Par1>} ) } Caractère "|" sépare les paramètres possibles, mais non utilisables simultanément (para‐ mètres alternatifs). Exemple : G0 { ( { POL, }{ NIPS | IPS1 | IPS2 | IPS3 } ) } 176/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.2 Surveillance de zone "Area, ARA" 6.2.1 Effet Définit, active ou désactive jusqu'à 10 zones de travail ou zones mortes rec‐ tangulaires, bidimensionnelles avec des limites parallèles aux axes et surveille leurs points d'intersection avec les mouvements de déplacement droits ou cir‐ culaires. ● Zones mortes : Ne doivent ni être croisées, ni être touchées – leurs limites incluses – lors d'un mouvement de déplacement. ● Zones de travail : Ne doivent pas être quittées – leurs limites incluses – lors d'un mouvement de déplacement. Les données de défaut de toutes les zones sont définies dans le groupe de paramètres machine MP 8002. 6.2.2 Programmation Activer et désactiver une zone de surveillance individuelle ou l'ensemble des zones de surveillance. Syntaxe : Area ( <BNr> , <Sta> ) Format abrégé : ARA(...) avec <BNr> Numéro de la zone. Valeur entière. Champs de saisie : -1, 1...10. -1: désactiver/activer toutes les zones. <Sta> État de surveillance souhaité. 0: Désactiver la surveillance. 1: Activer la surveillance. Fig.6-1: Syntaxe 1 Area (ARA) . Définir, activer ou désactiver une zone individuelle de surveillance. Syntaxe : Area (<BNr> , <Sta>{ ,<Mod> , {<P1>} ,{<P2>} , {<D1>} ,{<D2>}} ) Format abrégé : ARA(...) avec <BNr> Numéro de la zone. Valeur entière. Champs de saisie : 1...10. <Sta> État de surveillance souhaité. 0: Désactiver la surveillance de la zone <BNr>. 1: Activer la surveillance de la zone <BNr>. <Mod> 0: La zone <BNr> n'est pas utilisée. 1: La zone <BNr> est une zone morte. 2: La zone <BNr> est une zone de travail. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 177/550 Fonctions CN avec syntaxe de langage standard <P1> Position dans le système de coordonnées de la machi‐ ne. Détermine la valeur de position du centre de la zone par rapport au premier axe de système participant à la zone (définie par MP 8002 00001). Voir l'exemple suivant. Unité de programmation, voir les coordonnées d'axes. <P2> Position dans le système de coordonnées de la machi‐ ne. Détermine la valeur de position du centre de la zone par rapport au deuxième axe de système participant à la zone (définie par MP 8002 00002). Voir l'exemple sui‐ vant. Unité de programmation, voir les coordonnées d'axes. <D1> Détermine la longueur de la zone par rapport au premier axe de système participant à la zone (définie par MP 8002 00001). Voir l'exemple suivant. Unité de programmation, voir les coordonnées d'axes. <D2> Détermine la longueur de la zone par rapport au deu‐ xième axe de système participant à la zone (définie par MP 8002 00002). Voir l'exemple suivant. Unité de programmation, voir les coordonnées d'axes. Fig.6-2: Syntaxe 2 Area (ARA) Les valeurs non programmées restent conservées dans la mesure où elles étaient déjà indiquées une fois dans le déroulement du programme. Si elles n'étaient pas encore indiquées dans le déroulement du pro‐ gramme, la commande utilise les valeurs correspondantes à partir du groupe de paramètres machine 8002. Particularités et restrictions : ● Tous les axes de système participant aux différentes zones doivent être définis dans les paramètres MP 8002 00001 et MP 8002 00002. ● Le réglage approprié de MP 8002 00032 est nécessaire afin de pouvoir influencer des zones par "Area". ● La fonction nécessite des axes pris à l'origine. ● Lors de l'activation d'une zone, les axes correspondants doivent se trouver dans le canal actuel. ● L'influence sur une zone via "Area" n'agit que dans le canal dans lequel "Area" est programmé. Si des axes d'une zone sont transférés à un autre canal, la zone présente alors dans le canal cible les valeurs préréglées par défaut dans le groupe de paramètres machine 8002 et elle est inactive. Les valeurs éventuellement programmées par "Area" dans le canal source ne sont pas transférées. ● En mode JOG : les axes déplacés à l'aide de la manivelle ne sont pas surveillés. ● En mode JOG : pour les axes sous-tendant une zone morte, un seul axe peut être déplacé à la fois en mode JOG. ● Les dépassements de zone en mode JOG génèrent un avertissement. L'axe concerné reste à l'arrêt et ne peut être déplacé qu'en sens contraire par mode JOG. 178/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Exemple : ● Si les dimensions d'une zone se trouvent au sein du plan actif, les mou‐ vements linéaires et circulaires pour cette zone sont surveillés. ● Si les dimensions d'une zone se trouvent en dehors du plan actif, seuls les mouvements linéaires pour cette zone sont surveillés. ● Si les dimensions d'une zone se trouvent partiellement en dehors du plan actif, seuls les mouvements linéaires pour cette zone sont surveillés. Les mouvements circulaires ne peuvent pas être surveillés et déclenchent un avertissement. ● Ce qui est surveillé sont les mouvements de déplacement linéaires dont les axes intéressés se trouvent dans le canal surveillé. ● Ce qui est surveillé sont les mouvements de déplacement circulaires, dans la mesure où la zone de surveillance respective avec ses deux di‐ mensions d'axe se trouve dans le plan actif. ● Si, en cas d'un mouvement de déplacement circulaire avec les deux di‐ mensions, une zone de surveillance est en dehors du plan actif, il n'y a aucune surveillance pour cette zone. Si une dimension de la zone seule‐ ment est dans le plan actif, un avertissement est déclenché disant que le mouvement n'est pas surveillé. N100 Area(4,0,,100,200) Désactiver la zone 4 et mettre le centre de la zone sur les coordonnées de la machine indiquées (100,200). Les longueurs de la zone restent inchangées. Fig.6-3: Exemple Area (ARA) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 179/550 Fonctions CN avec syntaxe de langage standard 6.3 Sous-programmes asynchrones : déconnecter "ASPCLR" 6.3.1 Effet Déconnecte un sous-programme asynchrone dans le canal actuel. Il est impossible d'activer ou désactiver des sous-programmes déconnectés. Pour reconnecter des sous-programmes asynchrones, voir la fonc‐ tion ASPSET, chap. 6.7 "Sous-programmes asynchrones : con‐ necter ASPSET" à la page 181. De plus amples informations relatives à l'utilisation et au paramé‐ trage des sous-programmes asynchrones sont données dans le manuel "Description des fonctions". 6.3.2 Programmation Syntaxe : ASPCLR(<No du sous-programme> ) avec <No du sous-programme> Numéro du sous-programme. Champs de saisie : 1...8. Valeur entière. Fig.6-4: Particularités et restrictions : Syntaxe ASPCLR ● Le sous-programme correspondant doit être connecté dans le canal cible (voir ASPSET, chap. 6.7 "Sous-programmes asynchrones : connecter ASPSET" à la page 181). ● Pour la désactivation temporaire d'un sous-programme, voir la fonction ASPDIS chap. 6.4 "Sous-programmes asynchrones : désactiver ASP‐ DIS" à la page 179. 6.4 Sous-programmes asynchrones : désactiver "ASPDIS" 6.4.1 Effet Désactive un sous-programme asynchrone dans le canal actuel. Un sous-programme désactivé n'est pas appelé lorsque survient l'événement pertinent. De plus amples informations relatives à l'utilisation et au paramé‐ trage des sous-programmes asynchrones sont données dans le manuel "Description des fonctions". 6.4.2 Programmation Syntaxe : ASPDIS(<No du sous-programme> ) avec <No du sous-programme> Numéro du sous-programme. Champs de saisie : 1...8. Valeur entière. Fig.6-5: Syntaxe ASPDIS 180/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Particularités et restrictions : ● Le sous-programme correspondant doit être connecté dans le canal cible (voir ASPSET, chap. 6.7 "Sous-programmes asynchrones : connecter ASPSET" à la page 181). ● Pour l'activation d'un sous-programme désactivé, voir la fonction ASPE‐ NA, chap. 6.5 "Sous-programmes asynchrones : activer ASPENA" à la page 180. 6.5 Sous-programmes asynchrones : activer "ASPENA" 6.5.1 Effet Active un sous-programme asynchrone dans le canal actuel. Seuls les sous-programmes activés peuvent être appelés lorsque survient l'événement pertinent. De plus amples informations relatives à l'utilisation et au paramé‐ trage des sous-programmes asynchrones sont données dans le manuel "Description des fonctions". 6.5.2 Programmation Syntaxe : ASPENA(<No du sous-programme> ) avec <No du sous-programme> Numéro du sous-programme. Champs de saisie : 1...8. Valeur entière. Fig.6-6: Particularités et restrictions : Syntaxe ASPENA ● Le sous-programme correspondant doit être connecté dans le canal cible (voir ASPSET, chap. 6.7 "Sous-programmes asynchrones : connecter ASPSET" à la page 181). ● Pour la désactivation d'un sous-programme, voir la fonction ASPDIS, chap. 6.4 "Sous-programmes asynchrones : désactiver ASPDIS" à la pa‐ ge 179. 6.6 Sous-programmes asynchrones : Définir le point de redémar‐ rage "ASPRTP" 6.6.1 Effet Définit si, à la fin d'un sous-programme asynchrone, la commande doit se po‐ sitionner sur le ● point de départ, ou ● point d'arrivée, ou ● point d'interruption d'un bloc de déplacement éventuellement interrompu. Si, lors du moment de l'interruption, aucun bloc de déplacement n'est actif, la commande se positionne toujours sur les dernières coordonnées actives. De plus amples informations relatives à l'utilisation et au paramé‐ trage des sous-programmes asynchrones sont données dans le manuel "Description des fonctions". Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 181/550 Fonctions CN avec syntaxe de langage standard 6.6.2 Programmation Syntaxe : ASPRTP(<No du sous-programme> ,<Point>) avec <No du sous-programme> Numéro du sous-programme. Champs de saisie : -1; 1...8. Valeur entière. -1: Définir le point de redémarrage souhaité pour tous les sous-programmes asynchrones du canal actuel. <Point> Point de redémarrage souhaité : 1: point de départ 2: point d'arrivée 3: point d'interruption Fig.6-7: Particularités et restrictions : Syntaxe ASPRTP ● Le point de redémarrage souhaité et réglé sera effacé par la remise à zéro ou par M30. ● Les modifications de correction survenues entretemps au sein d'un sousprogramme asynchrone sont prises en compte automatiquement pour le calcul interne du point de redémarrage requis. ● A l'aide de la fonction "REPOSTP" (voir chap. 6.83 "Sous-programmes asynchrones : Définir le point de redémarrage dans le sous-programme asynchrone REPOSTP" à la page 286), le point de redémarrage défini peut être masqué temporairement dans le sous-programme asynchrone. 6.7 Sous-programmes asynchrones : connecter "ASPSET" 6.7.1 Effet Connecte un sous-programme asynchrone dans le canal actuel et l'active (pour l'activation, voir également la fonction ASPENA, chap. 6.5 "Sous-programmes asynchrones : activer ASPENA" à la page 180). Seuls les sous-programmes connectés et activés peuvent être utilisés. Pour déconnecter les sous-programmes asynchrones, voir la fonc‐ tion ASPCLR, chap. 6.3 "Sous-programmes asynchrones : décon‐ necter ASPCLR" à la page 179. De plus amples informations relatives à l'utilisation et au paramé‐ trage des sous-programmes asynchrones sont données dans le manuel "Description des fonctions". 6.7.2 Programmation Syntaxe : ASPSET(<No du sous-programme> ,<Nom du sous-programme>{,<Drapeaux>}) avec <No du sous-programme> Numéro du sous-programme. Champs de saisie : 1...8. Valeur entière. 182/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard <Nom du sous-programme> Nom du sous-programme, avec ou sans indication du chemin. Si le chemin n'est pas indiqué, le fichier est re‐ cherché conformément à MP 3080 00001 (chemin de recherche pour les sous-programmes). <Drapeaux> Commutateurs avec lesquels il est possible d'influencer le comportement après l'appel : 00 ni processus de liaison, ni démarrage automatique. 10 processus de liaison, mais pas de démarrage auto‐ matique. 01 pas de processus de liaison, mais démarrage auto‐ matique. 11 processus de liaison et démarrage automatique. Fig.6-8: Exemple : Syntaxe ASPSET : N30 ASPSET(1,ASUP1,10) : Connexion du programme ASUP1 en tant que pre‐ mier sous-programme asynchrone dans le canal ac‐ tif. À la suite de son appel (par ex. par signal d'interface), il est – si nécessaire – lié automatique‐ ment et démarré explicitement par démarrage CN. 6.8 Sous-programmes asynchrones : déclenchement à l'aide du programme "ASPSTA" 6.8.1 Effet Appelle un sous-programme asynchrone par pilotage de programme dans un canal quelconque. De plus amples informations relatives à l'utilisation et au paramé‐ trage des sous-programmes asynchrones sont données dans le manuel "Description des fonctions". 6.8.2 Programmation Syntaxe : ASPSTA(<No du sous-programme>{,<No du canal>}) avec <No du sous-programme> Numéro du sous-programme. Champs de saisie : 1...8. Valeur entière. <No du canal> Canal cible dans lequel <No du sous-programme> doit être appelé. Au cas où aucun canal cible n'est programmé, <No du sous-programme> est appelé dans le canal actuel. Fig.6-9: Particularités et restrictions : Syntaxe ASPRTP ● Les sous-programmes asynchrones ne doivent pas être imbriqués. ● Le sous-programme appelé doit être connecté dans le canal cible (voir ASPSET, chap. 6.7 "Sous-programmes asynchrones : connecter AS‐ PSET" à la page 181). ● Le sous-programme appelé ne doit pas être déconnecté dans le canal cible (voir ASPDIS, chap. 6.4 "Sous-programmes asynchrones : désac‐ Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 183/550 Fonctions CN avec syntaxe de langage standard tiver ASPDIS" à la page 179, ou ASPENA, chap. 6.5 "Sous-programmes asynchrones : activer ASPENA" à la page 180). 6.9 Attribuer un nom logique d'axe "AssLogName, ALN" 6.9.1 Effet Attribue un nouveau nom logique d'axe à un axe asynchrone dans le canal appelant. L'ancien nom logique d'axe devient invalide. Pour de plus amples informations relatives à la fonction "Transfert d'axe", voir le manuel "Description des fonctions". 6.9.2 Programmation Syntaxe : AssLogName(<PAN>|<PAI>|<LAN>,<LANnouveau> { ,<PAN>|<PAI>|<LAN>,<LANnouveau>}... ) Format abrégé : ALN(..) avec <PAN> Nom physique de l'axe. Définit l'axe qui doit être renommé dans le canal actuel. <PAI> Index physique d'axes. Effet similaire à <PAN>. <LAN> Nom logique de l'axe. Effet similaire à <PAN>. <LANnouveau> Nouveau nom logique de l'axe. L'axe indiqué à l'aide de <PAN>, <PAI> ou <LAN> reçoit dans le canal actuel le nom logique <LANnouveau>. <LANnouveau> doit être défini dans MP 7010 00010 (Désignation logique de l'axe) ou MP 7010 00020 (Dé‐ signation optionnelle de l'axe). Fig.6-10: Particularités et restrictions : Exemple : Syntaxe AssLogName (ALN) ● Un axe qui est à renommer doit être arrêté. Si cela n'est pas le cas, la commande génère un message d'erreur et interrompt le programme. ● Les positions d'axe dans un même bloc doivent être toujours programmés suivant l'expression AssLogName(…). : N030 ALN(YP,X,3,Y,B,Z) : L'axe physique YP reçoit le nom logique X, le 3ème axe physique reçoit le nom logique Y et l'axe logique B reçoit le nom logique Z. La programmation subséquente de B entraîne une erreur de durée d'exécution. 184/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.10 Calibrer les cinématiques d'axe : Transformation en arrière "ATBWD" 6.10.1 Effet Sert à la conversion les coordonnées du système de coordonnées de la pièce à usiner (WCS) en positions d'axe réelles (ACS). Ce processus est appelé "Transformation en arrière". 6.10.2 Programmation Syntaxe : AtBwd(<Coord.Ax>,<Coord>) avec <Coord.Ax> Tableau CPL permanent, global ou local. Type : DOUBLE : Dimension : au moins le nombre d'axes dans le canal actuel. Les variables individuelles du tableau contiennent les positions d'axe réelles dans l'ACS après l'appel. <Coord> Tableau CPL permanent, global ou local. Type : DOUBLE : Dimension : au moins le nombre des coordonnées du canal pour le système de coordonnées généré par la transformation d'axe. Les variables du tableau doivent contenir les coordon‐ nées de la pièce à usiner de toutes les coordonnées participant à la transformation d'axe dans le WCS. Fig.6-11: Particularités et restrictions : Syntaxe AtBwd La transformation en arrière est effectuée pour la transformation d'axe active au moment de l'appel. Les paramètres de longueur et d'angle requis pour cela sont repris à partir des paramètres machine. 6.11 Calibrer les cinématiques d'axe : Optimiser les paramètres "ATCAL" 6.11.1 Effet Sert à l'optimisation des paramètres d'angle et de longueur spécifiques à la cinématique d'axe dans le contexte de la fonctionnalité "Calibrage des ciné‐ matiques d'axe". Ces données sont différentes pour chaque type de transformation d'axe et contenues dans MP 1030 00140 pour chaque transformation d'axe. En règle générale, elles doivent être lues avant l'optimisation à l'aide de la fonction AT‐ GET (voir chap. 6.13 "Calibrer les cinématiques d'axe : Lire les paramètres de la CN ATGET" à la page 187) et retransférées dans la CN à l'aide de la fonction ATPUT (voir chap. 6.14 "Calibrer les cinématiques d'axe : Ecrire les paramè‐ tres dans la CN ATPUT " à la page 189). De plus amples informations relatives au calibrage des cinémati‐ ques d'axe sont données dans le manuel "Description des fonc‐ tions". Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 185/550 Fonctions CN avec syntaxe de langage standard 6.11.2 Programmation Syntaxe : ATCAL(<Fichier>,<OptData>,<Mask>{,<Info>}{,<AnzIt>}) avec <Fichier> Nom du fichier de calibrage ; avec ou sans indication de chemin. Si le chemin n'est pas indiqué, le fichier est recherché conformément à MP 3080 00001 (chemin de recherche pour les sous-programmes). <Fichier> contient les données nécessaires à l'optimi‐ sation. Pour de plus amples informations à ce sujet, voir le manuel "Description des fonctions". <OptData> Tableau CPL permanent, global ou local. Type : DOUBLE. Dimension : 16 au minimum. Après le calcul, le tableau contient un bloc de paramè‐ tres avec les paramètres de longueur et d'angle optimi‐ sés. L'ordre des variables individuelles (indices 1 à 16) cor‐ respond à l'index d'élément de MP 1030 00140. Les valeurs ont la même unité que les paramètres indivi‐ duels dans MP 1030 00140. <Mask> Variable CPL. Type : INTEGER. Masque de bit avec laquelle les paramètres individuels à optimiser sont déterminés. Exemple : Fig.6-12: Masque de bit 186/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard <Info> Tableau CPL permanent, global ou local. Type : DOUBLE. Dimension : 4 au minimum. Contient les données suivantes après l'optimisation : <Info>[1] Valeur de la fonction de qualité (écart quadra‐ tique) avant l'optimisation. Unité : mm. <Info>[2] Valeur de la fonction de qualité (écart quadra‐ tique) après l'optimisation. Unité : mm. <Info>[3] Écart max. avant l'optimisation (en mm). <Info>[4] Écart max. après l'optimisation (en mm). <AnzIt> Nombre maximum des pas d'itération pour l'optimisa‐ tion. Dans la mesure où l'itération n'est pas indiquée ou in‐ diquée avec "-1", elle n'est terminée que si l'écart entre deux blocs de paramètres successifs calculés dépasse un seuil interne à CN suffisant (il n'existe plus aucun écart pertinent). Si "1" est indiqué, le calcul de compensation linéaire in‐ tervient. Fig.6-13: Exemple : Syntaxe ATCAL 01 DIM PAR!(16) Dimensionner le tableau CPL local avec 16 élé‐ ments du type DOUBLE (pour les paramètres de longueur/d'angle optimisés). 02 DIM GA!(4) Dimensionner le tableau CPL local avec 4 élé‐ ments du type DOUBLE (pour la qualité et l'écart). 03 MASK%=2+4+32 Optimisation des paramètres individuels avec les indices de tableau 2, 3 et 6. N4 ATCAL(CL.TXT,[PAR!], Lancer l'optimisation. [MASK%],[GA!],-1) 6.12 Calibrer les cinématiques d'axe : Transformation en avant "ATFWD" 6.12.1 Effet Sert à la conversion des positions d'axe réelles en coordonnées d'un système de coordonnées généré par la transformation d'axe, dans le contexte de la fonctionnalité "Calibrage des cinématiques d'axe". Ce processus est également appelé "Transformation en avant". De plus amples informations relatives au calibrage des cinémati‐ ques d'axe sont données dans le manuel "Description des fonc‐ tions". 6.12.2 Programmation Syntaxe : ATFWD(<Coord>,<Coord.Ax>{,<ParData>}) avec Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 187/550 Fonctions CN avec syntaxe de langage standard <Coord> Tableau CPL permanent, global ou local. Type : DOUBLE : Dimension : au moins le nombre des coordonnées du canal pour le système de coordonnées généré par la transformation d'axe. Les variables individuelles du tableau contiennent les coordonnées de canal résultant de la conversion dans le système de coordonnées transformé. <Coord.Ax> Tableau CPL permanent, global ou local. Type : DOUBLE : Dimension : au moins le nombre d'axes dans le canal actuel. Les variables du tableau doivent contenir les positions d'axe réelles de tous les axes de canal participant à la transformation d'axe. <ParData> Tableau CPL permanent, global ou local. Type : DOUBLE : Dimension : 16 au minimum. Le tableau doit contenir un bloc de paramètres avec tous les paramètres de longueur et d'angle pour une transformation d'axe. L'ordre des variables individuelles (indices 1 à 16) cor‐ respond à l'index d'élément de MP 1030 00140. Les valeurs doivent avoir la même unité que les paramètres individuels dans MP 1030 00140. Si rien n'a été programmé, le bloc de paramètres de la transformation d'axe actuellement active est utilisé. Dans la mesure où deux transformations d'axe sont si‐ multanément actives dans la commande (AT1, AT2 ; voir la fonction "Coord" (chap. 6.24 "Sélectionner la transformation d'axe Coord, CRD" à la page 206), les données de l'AT2 sont utilisées. Fig.6-14: Particularités et restrictions : Syntaxe ATFWD Si <ParData> a été programmé et aucune transformation d'axe n'est active, une erreur d'exécution est affichée. 6.13 Calibrer les cinématiques d'axe : Lire les paramètres de la CN "ATGET" 6.13.1 Effet Sert à la lecture des paramètres machine spécifiques à la transformation d'axe dans le contexte de la fonctionnalité "Calibrage des cinématiques d'axe". Ces données diffèrent pour tout type de transformation d'axe. En règle géné‐ rale, elles doivent être lues avant l'optimisation (voir la fonction ATCAL, chap. 6.11 "Calibrer les cinématiques d'axe : Optimiser les paramètres ATCAL" à la page 184) et retransférées dans la CN à l'aide de la fonction ATPUT (voir chap. 6.14 "Calibrer les cinématiques d'axe : Ecrire les paramètres dans la CN AT‐ PUT " à la page 189). 188/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard De plus amples informations relatives au calibrage des cinémati‐ ques d'axe sont données dans le manuel "Description des fonc‐ tions". 6.13.2 Programmation Syntaxe : AtGet(<ParData>{,<AxTrafoNr>}{,<MaschParNr>}) avec <ParData> Tableau CPL permanent, global ou local. Type : DOUBLE : Dimension : 8 au minimum (MaschParNr = 1030 00130) ou 16 au minimum (MaschParNr = 1030 00140). Une fois la fonction exécutée, le tableau contient les valeurs actuellement valables du paramètre machine "MaschParNr" de la transformation d'axe "AxTrafoNr". L'ordre des variables individuelles (index 1,2,...) corres‐ pond à l'index d'élément du paramètre machine asso‐ cié. Les valeurs ont la même unité que le paramètre machine correspondant. <AxTrafoNr> Numéro de la transformation d'axe dont le paramètre doit être lu. Si rien n'a été programmé, les données de la transfor‐ mation d'axe actuellement active sont lues. Dans la mesure où deux transformations d'axe sont si‐ multanément actives dans la commande (AT1, AT2 ; voir la fonction "Coord" (chap. 6.24 "Sélectionner la transformation d'axe Coord, CRD" à la page 206), les données de l'AT2 sont utilisées. <MaschParNr> Numéro du paramètre machine qui est lu. S'il n'est pas programmé, la valeur 1030 00140 est uti‐ lisée par défaut, c'est-à-dire, les paramètres de la lon‐ gueur et de l'angle sont lus. Fig.6-15: Particularités et restrictions : Exemple : Syntaxe AtGet ● Parmi les valeurs admissibles pour MaschParNr sont 1030 00130 (Posi‐ tions de l'axe dans la position de référence) et 1030 00140 (Paramètres de longueur et d'angle). ● L'ordre "ATGET" mène à une erreur d'exécution, si AxTrafoNo n'a pas été programmé et aucune transformation d'axe (COORD(0,2) et CO‐ ORD(0,1)) n'est active. 01 DIM LENPARAM!(16) Tableau CPL local avec 16 élé‐ ments pour les paramètres de lon‐ gueur et d'angle. 01 DIM ZEROPOS!(8) Tableau CPL local avec 8 élé‐ ments pour les positions de réfé‐ rence des axes du canal. Les valeurs suivantes sont lues : N1 ATGET (LENPARAM!) MP 1030 00140 de la transforma‐ tion d'axe actuelle Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 189/550 Fonctions CN avec syntaxe de langage standard N1 ATGET (LENPARAM!,3) MP 1030 00140 de la transforma‐ tion d'axe 3 N1 ATGET (LENPARAM!,2, 103000140) MP 1030 00140 de la transforma‐ tion d'axe 2 N1 ATGET (ZEROPOS!,, 103000130) MP 1030 00130 de la transforma‐ tion d'axe actuelle N1 ATGET (ZEROPOS!,3, 103000130) MP 1030 00130 de la transforma‐ tion d'axe 3 6.14 Calibrer les cinématiques d'axe : Ecrire les paramètres dans la CN "ATPUT" 6.14.1 Effet Sert à l'écrasement des paramètres machine spécifiques à la transformation d'axe dans le contexte de la fonctionnalité "Calibrage des cinématiques d'axe". Ces données diffèrent pour tout type de transformation d'axe. En règle géné‐ rale, elles doivent être lues (voir la fonction ATGET, chap. 6.11 "Calibrer les cinématiques d'axe : Optimiser les paramètres ATCAL" à la page 184) avant l'optimisation (voir la fonction ATCAL, chap. 6.13 "Calibrer les cinématiques d'axe : Lire les paramètres de la CN ATGET" à la page 187) et retransférées dans la CN après l'optimisation à l'aide de la fonction ATPUT. De plus amples informations relatives au calibrage des cinémati‐ ques d'axe sont données dans le manuel "Description des fonc‐ tions". 6.14.2 Programmation Syntaxe : AtPut(<ParData>{,<AxTrafoNr>}{,<MaschParNr>}) avec <ParData> Tableau CPL permanent, global ou local. Type : DOUBLE : Dimension : 8 au minimum (MaschParNr = 1030 00130) ou 16 au minimum (MaschParNr = 1030 00140). Le tableau doit contenir un bloc de paramètres complet du paramètre machine "MaschParNr" de la transforma‐ tion d'axe "AxTrafoNr". L'ordre des variables individuelles (index 1,2,...) corres‐ pond à l'index d'élément du paramètre machine asso‐ cié. Les valeurs ont la même unité que le paramètre machine correspondant. 190/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard <AxTrafoNr> Numéro de la transformation d'axe dont le paramètre doit être écrit. Si rien n'a été programmé, les données de la transfor‐ mation d'axe actuellement active sont écrasées. Dans la mesure où deux transformations d'axe sont si‐ multanément actives dans la commande (AT1, AT2 ; voir la fonction "Coord" (chap. 6.24 "Sélectionner la transformation d'axe Coord, CRD" à la page 206), les données de l'AT2 sont modifiées. <MaschParNr> Numéro du paramètre machine qui est écrasé. S'il n'est pas programmé, la valeur 1030 00140 est uti‐ lisée par défaut, c'est-à-dire, les paramètres de la lon‐ gueur et de l'angle sont modifiés. Fig.6-16: Particularités et restrictions : Exemple : Syntaxe AtPut ● Parmi les valeurs admissibles pour MaschParNr sont 1030 00130 (Posi‐ tions de l'axe dans la position de référence) et 1030 00140 (Paramètres de longueur et d'angle). ● L'ordre "ATPUT" mène à une erreur d'exécution, si AxTrafoNo manque et aucune transformation d'axe (COORD(0,2) et COORD(0,1)) n'est active. ● L'exécution de la fonction ATPUT nécessite un niveau utilisateur CN per‐ mettant l'écrasement des paramètres machine. ● Le bloc de paramètres écrit ne devient actif qu'après – la remise à zéro du système et – une nouvelle programmation de COORD(<AxTrafoNr> ). 01 DIM LENPARAM!(16) Tableau CPL local avec 16 éléments pour les paramètres de longueur et d'angle. 01 DIM ZEROPOS!(8) Tableau CPL local avec 8 éléments pour les positions de référence des axes du canal. 01 LENPARAM!(1) = 123.456 Attributions de valeur : : : 01 ZEROPOS!(8) = 1.0 Les valeurs suivantes sont écrasées : N1 ATPUT (LENPARAM!) MP 1030 00140 de la transformation d'axe actuelle N1 ATPUT (LENPARAM!,3) MP 1030 00140 de la transformation d'axe 3 N1 ATPUT (LENPARAM!,2, 103000140) MP 1030 00140 de la transformation d'axe 2 N1 ATPUT (ZEROPOS!,, 103000130) MP 1030 00130 de la transformation d'axe actuelle N1 ATPUT (ZEROPOS!,3, 103000130) MP 1030 00130 de la transformation d'axe 3 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 191/550 Fonctions CN avec syntaxe de langage standard 6.15 Exécuter les fonctions auxiliaires actives de tous les groupes "AUXFUNC" 6.15.1 Effet Exécute les fonctions auxiliaires spécifiques au canal et multicanaux actuelle‐ ment actives de tous les groupes de fonctions auxiliaires. La fonction est pertinente en relation avec l'avance du bloc (par ex. après une interruption de traitement) pour le rétablissement de tous les états des fonctions auxiliaires à une position déterminée du programme pièce. Si par ex. un programme pièce est interrompu pendant le traitement, il est éventuellement possible de reprendre le traitement à partir du bloc qui a été traité au moment de l'interruption à l'aide de l'avance de bloc. Dans ce cas, le programme pièce est redémarré depuis le début avec l'avance du bloc, mais le traitement sur la machine ne s'effectue qu'à partir d'un bloc de programme défini. Etant donné que la commande n'interpole pas pendant l'avancé du bloc et qu'elle ne sort pas des fonctions auxiliaires programmées, le rétablissement de tous les états des fonctions auxiliaires est nécessaire à la fin de l'avance du bloc. De plus amples informations relatives à l'utilisation et au paramé‐ trage des fonctions auxiliaires sont données dans le manuel "Description des fonctions". 6.15.2 Programmation Syntaxe : AUXFUNC Exemple : N100 T102 Sélectionner outil T102. N110 M6 Remplacer outil T102. : N150 M3 : 1. Démarrer la broche/le groupe de broches. Rotation vers la droite. ... interruption de programme dans N160... ● T102 et M3 étaient actifs. ● T102 est remplacé. La position de l'outil n'est pas modifiée. Ensuite, le programme est sélectionné de nouveau et se poursuit à l'aide de l'avance du bloc jusqu'à N150 inclus sans mouvements de déplacement. Les fonctions auxiliaires programmées sont activées sans cependant être utilisées. Avant de traiter N160, les fonctions auxiliaires spécifiques au canal et multica‐ naux actuellement actives de tous les groupes de fonctions auxiliaires sont exécutées maintenant avec AUXFUNC. En l'occurrence, AUXFUNC provoque ce qui suit : ● Activer outil numéro T102 (outil est encore remplacé). ● 1. Démarrer la broche/le groupe de broches avec rotation vers la droite. 192/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.16 Modifier l'accélération maximale de l'axe "AxAcc, AAC", Enre‐ gistrer temporairement l'accélération maximale de l'axe "AxAccSave, AAS" 6.16.1 Effet ● ● 6.16.2 AxAcc : – modifie temporairement les limites supérieures des accélérations maximales de l'axe. – Pour cela, la fonction masque les valeurs d'accélération maximales de l'axe issues des paramètres machine avec les valeurs program‐ mées. AxAccSave : – enregistre temporairement les valeurs d'accélération maximales ac‐ tuelles de tous les axes dans une mémoire interne. – Cette mémoire interne est toujours préinitialisée lors de la sélection du programme avec les valeurs des paramètres machine. Programmation Syntaxe : Format abrégé : AAS Enregistrer temporairement toutes les accélérations maximales actuelles des axes. AxAcc (<Valeurs>) Modifier les accélérations maximales des axes. AxAcc ou AxAcc(1) Réactiver les accélérations des axes enregistrées avant à l'aide de "AxAccSave". AxAcc() ou AxAcc(0) Réactiver les accélérations des axes à partir des para‐ mètres machine. AxAccSave Format abrégé : AAC(..) avec <Valeurs> Nom de l'axe et valeur d'accélération. Les indications pour plusieurs axes sont séparées par une virgule. En fonction de l'unité de mesure (G71/G70), la com‐ mande interprète les valeurs programmées en "1000 pouces/s2" ou "m/s2". Fig.6-17: Particularités et restrictions : Exemple : Syntaxe AxAcc, AAC S'il existe dans le système un axe physique ainsi qu'un axe logique du canal actif sous le même nom, l'accélération de l'axe logique est toujours influencée. Situation de départ : Dans les paramètres machine, la valeur de 8,0 m/s2 est prédéfinie pour les axes A à Z. : N40 AAC(X1.0,Z2.1) Accélération max. pour l'axe X : 1,0 m/s2, : accélération max. pour l'axe Z : 2,1 m/s2. : L'accélération max. de l'axi Y reste inchangée (8,0 m/ s2). : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 193/550 Fonctions CN avec syntaxe de langage standard N80 AxAccSave : N90 AxAcc() : Enregistrer temporairement toutes les valeurs d'accélé‐ ration maximales de l'axe actuellement actives. Réactiver les valeurs à partir des paramètres machine : accélération max. pour l'axe X : 8,0 m/s2. : accélération max. pour l'axe Y : 8,0 m/s2. : accélération max. pour l'axe Z : 8,0 m/s2. : N150 AxAcc(Y5) Accélération max. pour l'axe Y : 5,0 m/s2. : Les accélérations maximales pour les axes X et Z res‐ tent inchangées. : N200 AxAcc : : Réactiver les valeurs enregistrées à l'aide de "AxAcc‐ Save" : accélération max. pour l'axe X : 1,0 m/s2. accélération max. pour l'axe Y : 8,0 m/s2. accélération max. pour l'axe Z : 2,1 m/s2. 6.17 Couplage d'axes "AxCouple, AXC" 6.17.1 Effet A l'aide du couplage d'axes est établi un rapport défini entre le mouvement d'un "axe maître" synchrone et un ou plusieurs (7 au maximum) "axes esclaves" synchrones. Si, lors de l'activation du couplage, les axes esclaves ne se trouvent pas sur la position de couplage, ils sont déplacés à cette position par un mouvement de déplacement linéaire généré à l'interne. Pour cela, l'avance active sur la tra‐ jectoire et le potentiomètre de l'atténuateur sont efficaces. Si l'axe maître se déplace, tous les axes esclaves bougent automatiquement conformément à leur propre rapport défini avec l'axe maître. Pour cette raison, l'axe maître et tous les axes esclaves participants sont appelés également "Groupe d'axes". Rapports possibles entre l'axe maître et un axe esclave : ● Les consignes de position de l'axe maître sont transformées en consignes de position correspondantes de l'axe esclave à l'aide d'un décalage cons‐ tant (voir formule 1). L'axe peut ainsi être déplacé par rapport à l'axe maître sur une course quelconque, toujours constante, en direction positive ou négative de dé‐ placement. ● Les consignes de position de l'axe maître sont transformées en consignes de position correspondantes de l'axe esclave à l'aide d'un facteur de cou‐ plage constant (voir formule 1). Ainsi il est possible de bouger l'axe esclave par rapport à l'axe maître dans un rapport défini. ● Les consignes de position de l'axe maître sont transformées en consignes de position quelconques correspondantes de l'axe esclave à l'aide d'un tableau (de couplage). Dans ce cas, des paires de repères sont déposées dans le tableau indiquant la position correspondante de l'axe esclave pour une position d'axe maître et un décalage éventuellement nécessaire de l'axe maître (voir formule 2). 194/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard La commande peut déterminer les positions entre les points de repère individuels à l'aide de l'interpolation linéaire ou à l'aide de la fonction spline cubique. Fig.6-18: Formules pour le couplage d'axes Tous les rapports mentionnés peuvent être combinés à discrétion. De cette manière, des axes parallèles (par ex. pour des plateaux d'usinage disposés parallèlement) ou également des entraînements électroniques (1 tour de l'axe maître engendre par ex. 10 tours de l'axe esclave) peuvent être réalisés très facilement. Pour cette fonction s'applique ce qui suit : ● Tous les axes d'un groupe d'axes doivent se trouver dans le même canal. ● Plusieurs groupes d'axes dans un même canal sont permis. De plus amples informations relatives à la fonction "Couplage d'axes" sont données dans le manuel "Description des fonctions". Il s'y trouve également les informations concernant le tableau de couplage requise pour les "couplages libres". 6.17.2 Programmation Syntaxe : AxCouple(<M><Variante>,<S> ({<SO>},{<SF>}{,{<MO>},<Tab>}){,...}) AxCouple() ou AxCouple(0) Effacer tous les groupes d'axes dans le canal actuel. Format abrégé : AXC(..) avec <M> Adresse logique de l'axe maître. <Variante> 0 Créer un nouveau groupe d'axes 1 Modifier un groupe d'axes (ajouter des nouveaux axes esclaves ou modifier la désignation de couplage) -1 Effacer l'axe esclave ou supprimer complètement le groupe Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 195/550 Fonctions CN avec syntaxe de langage standard <S> Adresse logique de l'axe esclave. Si <S> ne peut pas être distingué de la programmation d'un axe/d'une coordonnée avec valeur, un signe d'éga‐ lité doit se trouver entre <S> et "(" : (..,<S>=(..)) Voir également l'exemple donné ci-dessous. <SO> Décalage de l'axe esclave. S'il n'est pas programmé, <SO> = 0 s'applique. <SF> Facteur de couplage de l'axe esclave. S'il n'est pas programmé, <SF> = 1 s'applique. <MO> Décalage de l'axe maître. Uniquement pertinent pour "couplage libre" (voir formu‐ le 2, ci-dessus). S'il n'est pas programmé, <MO> = 0 s'applique. <Tab> Fig.6-19: Exemples : Nom du tableau de couplage de l'axe esclave corres‐ pondant. Uniquement pertinent pour "couplage li‐ bre" (voir formule 2, ci-dessus). Syntaxe AxCouple N100 AXC(Z0,A(4,2),B(2,1)) Créer un groupe d'axes. : Z : axe maître, : A/B : axes esclaves. : Les deux axes esclaves fonctionnent avec couplage "linéaire". N200 AXC(X0,A(4,2),B(,0.5,,T_B)) Créer un groupe d'axes. : X : axe maître, : A/B : axes esclaves. Axe esclave A fonctionne avec cou‐ plage "linéaire", axe esclave B avec couplage "libre". : N100 AXC(Z-1,A(),B()) Les axes esclaves A et B sont suppri‐ més du groupe d'axes Z. : N200 AXC(Z-1) Le groupe d'axes Z complet est effacé. : Autre exemple : Axe maître X, axe esclave Y2 L'axe esclave a un nom d'axe ambigu Y2 ne se distinguant pas de la program‐ mation de l'axe Y avec la valeur 2. La programmation d'AXC doit se présenter comme suit : AXC(X,Y2=(....)) La fonction déclenche un mouvement de déplacement de tous les axes esclaves programmés dans le bloc ! ATTENTION Particularités et restrictions : Les axes esclaves se déplacent alors sur leurs points de couplage spécifique (valeur guide) qui est défini par la position maître et le rapport de couplage. ● Tous les axes participant à un groupe d'axes doivent être des axes syn‐ chrones au moins pendant le couplage des axes. 196/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Les axes asynchrones ou les axes Hirth ne sont pas admis en tant qu'axes esclaves d'un groupe de couplage. ● La programmation d'un mouvement de déplacement pour des axes es‐ claves n'est pas permise et engendre un message d'erreur. ● Un axe esclave ne peut pas être en même temps un axe maître dans un autre groupe d'axes. ● La fin du programme ne dissocie pas automatiquement un couplage d'axes existant. ● Si l'axe maître est un axe modulo, l'axe esclave doit être également un axe modulo lorsqu'il s'agit d'un rapport de couplage linéaire. ● Afin qu'une approche des points de référence axe par axe soit possible, l'ouverture du couplage d'axes est nécessaire. ● La zone de déplacement permise de l'axe maître peut être réduite par des axes esclaves couplés (si par ex. l'axe esclave atteint ses zones d'extré‐ mité plus vite que l'axe maître ou si la zone de déplacement de l'axe esclave est plus petite que la zone de déplacement de l'axe maître). ● Dans la mesure où les commutateurs de fin de course sont désactivés pour l'axe maître et/ou l'axe esclave, aucun commutateur de fin de course n'est effectif pour le groupe d'axes complet. ● La dynamique maximale de l'axe "le plus faible" détermine la dynamique maximale du groupe d'axes complet. ● Le blocage d'axes est interdit, quand un groupe d'axes est actif. ● Des axes couplés en mode test doivent être découplés avant la désacti‐ vation du mode test. 6.18 Désactiver le mode d'axe C pour les broches "AxisToSpindle, ATS" 6.18.1 Effet Commute une broche se trouvant dans le mode d'axe C (voir chap. 6.112 "Activer le mode axe C pour les broches SpindleToAxis, STA" à la page 309) en mode broche. Pour de plus amples informations relatives à la fonction "Transfert d'axe", voir le manuel "Description des fonctions". 6.18.2 Programmation Syntaxe : AxisToSpindle(<PAN>|<PAI>{,<PAN>|<PAI>}...) Format abrégé : ATS(..) avec <PAN> Nom physique de l'axe. Détermine l'axe qui doit être commuté du mode d'axe C en mode broche. <PAI> Index physique de l'axe. Effet similaire à <PAN>. Fig.6-20: Particularités et restrictions : ● Syntaxe AxisToSpindle Un axe indiqué doit être à l'arrêt et ne doit pas appartenir à un groupe d'axes. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 197/550 Fonctions CN avec syntaxe de langage standard Si cela n'est pas le cas, la commande génère un message d'erreur et interrompt le programme. ● Exemple : Les positions d'axe dans un même bloc doivent toujours être programmés suivant l'expression AxisToSpindle(…). : N030 ATS(CH) : L'axe physique CH (c.à.d. la broche qui porte le nom CH dans le mode axe) est commuté en mode broche. 6.19 Modifier la vitesse maximale de l'axe "AxVel, AVE", Enregistrer temporairement la vitesse maximale de l'axe "AxVelSave, AVS" 6.19.1 Effet AxVel : Cette fonction modifie temporairement les limites supérieures des vitesses maximales de l'axe. Pour cela, la fonction masque les valeurs de vitesse maxi‐ males de l'axe issues des paramètres machine avec les valeurs programmées. AxVelSave : Enregistre temporairement les valeurs de vitesse maximales actuelles de tous les axes dans une mémoire interne. Cette mémoire interne est toujours préini‐ tialisée lors de la sélection du programme avec les valeurs des paramètres machine. 6.19.2 Programmation Syntaxe : Enregistre les valeurs de vitesse maximales actuelle‐ ment actives. AxVelSave Format abrégé : AVS AxVel(<Valeurs>) Modifier la vitesse maximale de l'axe. AxVel() ou AxVel(0) Réactiver la vitesse maximale de l'axe à partir des pa‐ ramètres machine. AxVel(1) Activer la vitesse maximale de l'axe enregistrée par Ax‐ VelSave. AxVelSave Enregistre les valeurs de vitesse maximales actuelle‐ ment actives. Format abrégé : AVE(..) avec <Valeurs> Fig.6-21: Nom de l'axe et valeur de vitesse. Syntaxe AxVel, AxVelSave Les indications pour plusieurs axes sont séparées par une virgule. En fonction de l'unité de mesure active (G71/G70), la commande interprète les données programmées pour les axes linéaires en "pouces/min" ou en "mm/ min". Les axes rotatifs sont toujours considérés en "1000 degrés/min". Exemple : Situation de départ : 198/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Dans les paramètres machine, la valeur de 50000 mm/s est prédéfinie pour les axes X à Z. : N40 AVE(X10000,Z30000) Vitesse max. pour l'axe X : 10000,0 mm/s. Vitesse max. pour l'axe Z : 30000,0 mm/min. La vitesse max. de l'axe Y reste inchangée (50000,0 mm/min). : N80 AVS Enregistrer temporairement toutes les valeurs de vites‐ se maximales de l'axe actuellement actives. : N90 AVE() Réactiver les valeurs à partir des paramètres machine. : N200 AVE Réactiver les valeurs enregistrées à l'aide de "AVS/Ax‐ VelSave" : vitesse max. pour l'axe X : 10000,0 mm/s. vitesse max. pour l'axe Z : 30000,0 mm/min. vitesse max. pour l'axe Y : 50000,0 mm/min. : 6.20 Placement : Correction de la position de la pièce à usiner "BcsCorr, BCR" 6.20.1 Effet Sert à la correction du plan sous-tendu. Le positionnement "Correction de la position de la pièce à usiner" peut déplacer et orienter le système de coordonnées de la pièce à usiner dans l'espace. La correction de la position de la pièce à usiner a un effet sur les coordonnées avec les significations "X", "Y" et "Z " dans le canal correspondant. Les désignations d'axe "X", "Y" et "Z" utilisées ci-dessous se réfè‐ rent aux axes ayant les significations X, Y et Z. Les efforts de configuration sont considérablement réduits, si la position de la pièce à usiner est mesurée après être sous-tendue et est corrigée au moyen de la correction de la position de la pièce à usiner. Comme il existe 3 degrés de liberté pour l'orientation, chaque orientation peut être représentée par 3 rotations de base successives. Pour des raisons de simplification, seule la rotation de base autour de la coordonnée Z est repré‐ sentée dans la figure suivante : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 199/550 Fonctions CN avec syntaxe de langage standard Fig.6-22: Rotation de base autour de la coordonnée Z Le positionnement "Plan incliné" est identique du point de vue fonc‐ tionnel (voir page chap. 5.2 "Codes G" à la page 90). Là, vous trouverez également une représentation des 3 rotations de base. D'autres positionnements (par ex. Plan incliné) ont un effet additif. Dans la "chaîne de calcul", la correction de la position de la pièce à usiner se trouve encore avant le plan incliné : Fig.6-23: 6.20.2 Chaîne de calcul Programmation Syntaxe : BcsCorr({<Décalage XW>}{,{<Décalage YW>}{,{<Décalage ZW>}{,{<Angle1>} {,{<Angle2>}{,{<Angle3>}}}}}}) Correction de la position de la pièce à usiner ACTIVÉE. BcsCorr() ou BcsCorr(0) Correction de la position de la pièce à usiner DÉSAC‐ TIVÉE. Format abrégé : BCR(..) avec <Décalage XW> Valeur de décalage dans la direction de la coordonnée principale X. <Décalage YW> Valeur de décalage dans la direction de la coordonnée secondaire Y. <Décalage ZW> Valeur de décalage dans la direction de la coordonnée normale Z. 200/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard <Angle1> Angle de rotation autour de la coordonnée Z. Plage de valeurs : 0 ≤ <Angle1 > < 360 degrés <Angle2> Angle de rotation autour de la coordonnée Y'. Plage de valeurs : 0 ≤ <Angle2 > < 180 degrés <Angle3> Angle de rotation autour de la coordonnée Z''. Plage de valeurs : 0 ≤ <Angle3 > < 360 degrés Fig.6-24: Exemple : Syntaxe BcsCorr (BCR) N70 G40 Correction de la trajectoire de la fraise DÉSACTIVÉE. N80 BCR(50,300,10,1.23) Correction de la position de la pièce à usiner ACTIVÉE. : : : : L'origine du nouveau système de coordonnées de la pièce à usiner se trouve dans le BCS sur X50 Y300 et Z10. Par rapport au BCS, les axes de coordonnées X et Y du nouveau système de coordonnées de la pièce à usiner sont tournés de 1,23 degrés dans le sens inverse des aiguilles d'une montre autour du nouvel axe de co‐ ordonnées Z. : : : : N200 BCR() Particularités et restrictions : Correction de la position de la pièce à usiner DÉSAC‐ TIVÉE. ● L'activation et la désactivation de la correction de la position de la pièce à usiner interrompent la prévisualisation de blocs et, pour cette raison, ne doivent pas être programmées lors de la correction de la trajectoire de la fraise (G41/G42, voir chap. 5.2 "Codes G" à la page 90). ● L'état de mise en service et le comportement lors de la remise à zéro sont configurés dans les paramètres machine 7060 00010 et 7060 00020. 6.21 Programmation de chanfreins "ChLength, CHL" "ChSection, CHS" 6.21.1 Effet La fonction "Programmation de chanfreins" insère entre deux blocs consécutifs CN de type linéaire ou circulaire une phase de transition, dont la longueur peut être définie en tant que longueur de chanfrein absolue ou en tant que longueur du segment de chanfrein. Le chanfrein est généré au sein du plan de travail actif. Les raccords de chanfrein suivants sont possibles : ● Chanfrein entre deux droites sécantes Le chanfrein suit un tracé en angle droit avec la bissectrice entre deux segments de trajectoire voisins. La longueur du chanfrein est automati‐ quement corrigée (diminuée), s'il n'y a pas de point d'intersection avec les segments de trajectoire voisins programmés. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 201/550 Fonctions CN avec syntaxe de langage standard Fig.6-25: ● Chanfrein entre deux droites sécantes Chanfrein entre deux segments sécants de cercle En cas de raccords de contour avec des segments de cercle, les dimen‐ sions des chanfreins se rapportent aux tangentes finale et initiale respec‐ tives des segments de trajectoire participant au raccord de contour. La longueur de chanfrein effective est, entre autres, fortement dépendante des rayons des cercles intéressés et diffère ainsi plus ou moins des di‐ mensions programmées. Fig.6-26: 6.21.2 Chanfrein entre deux segments sécants de cercle Programmation Syntaxe : ChLength(<Longueur de chanfrein>) "Programmation de chanfreins" ACTIVÉE. ChLength() ou ChLength(0) "Programmation de chanfreins" DÉSACTIVÉE. Indiquer la <longueur de chanfrein> souhaitée en mm (G71) ou en pouces (G70). Format abrégé : CHL(..) ChSection(<Segment de chanfrein>) "Programmation de chanfreins" ACTIVÉE. Indiquer le <segment de chanfrein> souhaité en mm (G71) ou en pouces (G70). ChSection() ou "Programmation de chanfreins" DÉSACTIVÉE. ChSection(0) Format abrégé : CHS(..) Fig.6-27: Syntaxe ChLength (CHL) ou ChSection (CHS) 202/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Particularités et restrictions : ● Les fonctions "ChLength", "ChSection", "RoundEps" et "Rounding" ont un effet modal et se révoquent mutuellement. ● Le chanfrein se réfère toujours seulement au plan de travail actif (G17, G18, G19, G20). Le fait que d'autres axes participent éventuellement au mouvement n'a aucun effet sur les chanfreins. Comme les coordonnées des blocs de déplacement pour les axes, pro‐ grammés au sein du plan de travail, sont modifiées par les chanfreins, mais les valeurs pour les axes en dehors du plan de travail ne sont pas modifiées, la direction peut changer dans l'espace, par exemple pour les droites. ● La fonction n'agit que dans la zone de commande "Exécution" sous "Bloc suivant", "Bloc séparé" ou "Pas séparé". Comme le "Bloc du programmé" se comporte comme une introduction manuelle de données, la programmation de chanfreins est ici sans effet. ● Le comportement de mise en/hors service ainsi que le comportement pendant la remise à zéro sont déterminés par les INITSTRINGS dans les paramètres machine 7060 00010 et 7060 00020. ● Si, entre 2 blocs successifs, le plan, le décalage d'origine ou une trans‐ formation d'axe est modifié(e), aucun chanfrein n'est généré. 6.22 Détection automatique des angles et des droites "CLD" 6.22.1 Effet La fonction "Détection automatique des angles et des droites" genère des an‐ gles et des droites au sein des séquences spline en fonction des paramètres programmés. En cas d'un angle de coude supérieur à l'angle limite programmé, un coude programmé est maintenu, c'est-à-dire il n'est pas arrondi en une courbe spline. En cas de blocs, dont l'écart des points est supérieur à l'écart limite programmé, une spline linéaire (droite) est générée. De plus, un facteur d'angle ou d'écartement peut être défini. Un coude ou une droite est créé(e) également, si un angle ou un écart dépasse la valeur moyenne respective don‐ née dans la zone de prévisualisation. La fonction n'est efficace que si G06 (Interpolation spline) est actif. Elle est active pour tous les types de spline, ex‐ ception faite de la programmation des coefficients splines. Syntaxe : La détection automatique des angles et des droites est activée à l'aide de la syntaxe CornerLineDetection. CornerLineDetection(ANG<a>,AFACT<fa>,DIST<d>,DFACT<fd>) Les paramètres ont la signification suivante : ANG<a> "a" est l'angle de coude maximal admissible pour le contour. En cas des angles de coude supérieurs à a, la condition d'angle est remplie. AFACT<fa> "fa" est le facteur d'angle. Si l'angle de coude dépasse l'angle de coude moyen du facteur fa, la condition d'an‐ gle est remplie. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 203/550 Fonctions CN avec syntaxe de langage standard DIST<d> "d" est l'écart de points maximal admissible. En cas des écarts supérieurs à d, la condition d'écartement est remplie. DFACT<fd> "fd" est le facteur d'écartement. Si l'écart des points dé‐ passe l'écart des points moyen du facteur fd, la condi‐ tion d'écartement est remplie. Fig.6-28: Syntaxe CornerLineDetection Les paramètres individuelles sont facultatifs. Les conditions DIST et DFACT ainsi que ANG et AFACT sont liées par un "OU" logique. Après CLD a été programmé avec au moins un paramètre, la fonction est modalement active et efficace dès que G06 est active (exception : programmation spline des coeffi‐ cients). Les paramètres peuvent à tout moment être modifiés par un nouveau paramétrage. Le format abrégé est CLD(…). La fonction est désactivée par la programmation sans le paramètre CornerLi‐ neDetection(). Courbe spline C2 constante SPD(2203,x,y,z,O) CLD(ANG20,AFACT5,DIST5) ... G06 x.. y.. z.. phi.. theta.. ;spline 2203 ACTIVÉE, condition d'écartement absolue, ;conditions d'angle absolue et relative actives x.. y.. z.. O(..) ... x.. y.. z.. O() CLD(DIST8) ;spline DÉSACTIVÉE G01 ;désactivation des conditions d'angle, nouvelle condi‐ tion d'écartement absolue ... G06 ;spline ACTIVÉE, le dernier CLD(DIST8) étant valable Approximation spline B SPD(4203,x,y,z) CLD(DIST5,DFACT4,ANG30) EMAX0.01 ... G06 x.. y.. z.. phi.. theta.. ;spline 4203 ACTIVÉE, condition d'angle absolue, ; conditions d'écartement absolue et relative actives x.. y.. z.. O(..) ... ... G01 ;spline DÉSACTIVÉE 6.23 Surveillance de collision "Collision, CLN" 6.23.1 Effet Offre la possibilité de mettre la surveillance de collision pour la correction de la trajectoire de la fraise G41/G42 ● en ou hors service et 204/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard ● de l'adapter à l'application quant à la zone de prévisualisation et au com‐ portement en cas de collision. Pour cette fonction s'applique ce qui suit : ● La surveillance de collision est seulement effective, si la correction de la trajectoire de la fraise G41/G42 est active, même si le rayon de correction a la valeur "0". ● Si la valeur de la correction du rayon ne permet pas le traitement de seg‐ ments individuels du contour, la commande tente alors de modifier le tracé de la trajectoire correspondante de façon à ce que le contour ne soit pas endommagé. ● La surveillance de collision ne prend en considération que les coordon‐ nées du plan de travail actif lors du tracé de contour. En cas d'empêche‐ ment de collision suite à une technique de programme, par ex. par modification de la profondeur du pas de pénétration de l'outil, la surveil‐ lance de collision réagit néanmoins au sein de la zone de prévisualisation actuelle. Dans de tels cas, il est possible de désactiver temporairement la surveil‐ lance de collision dans le secteur de traitement concerné. Pour de plus amples informations relatives à la fonction "Surveil‐ lance de collision", voir le manuel "Description des fonctions". Nous recommandons d'inscrire le comportement souhaité de la surveillance de collision dans MP 7060 00010 / MP 7060 00020. 6.23.2 Programmation Syntaxe : Collision(1) ou Surveillance de collision ACTIVÉE. CLN(1) ou Maintenir le comportement actuel dans le cas d'une col‐ lision. CLN Si le comportement n'a pas encore été programmé ou inscrit dans MP 7060 00010/MP 7060 00020, le com‐ portement correspond à celui de Collision(CollErr 0). CLN ("CLN sans parenthèses") correspond à CLN(1) ou à Collision(1). Collision() ou Surveillance de collision DÉSACTIVÉE. Collision(0) Collision(DEF) Prédéfinir la valeur pour la zone de prévisualisation de la surveillance de collision à 2 blocs. Collision(CollErr<Art> ) Surveillance de collision ACTIVÉE et définir le compor‐ tement dans le cas d'une collision. Collision(DLA<Blocs>) Prédéfinir la valeur pour la zone de prévisualisation de la surveillance de collision. Prend effet avec la prochaine programmation de G41/ G42. Collision (LA<Blocs>) Modifier temporairement la zone de prévisualisation jusqu'à la prochaine programmation de G41/G42. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 205/550 Fonctions CN avec syntaxe de langage standard Format abrégé : CLN(...) avec <Type> Définit le comportement de la commande lors de la dé‐ tection d'une collision : 0 : Ni une erreur d'exécution, ni un avertissement n'est signalé(e). 1 : Une erreur d'exécution est signalée. Le traitement est interrompu. 2 : Un avertissement est signalé. Le traitement n'est pas interrompu. <Blocs> Détermine la dimension (nombre de blocs) de la zone de prévisualisation. Valeur entière. Zone de prévisualisation recommandée : 1 à 10 blocs. Fig.6-29: Particularités et restrictions : Syntaxe Collision (CLN) ● Le préréglage pour la zone de prévisualisation s'élève à 2 blocs. ● La zone maximale de prévisualisation dépend des paramètres machine 7060 00110 à 7060 00130. ● Afin de pouvoir déplacer en arrière, quand la correction de la trajectoire de la fraise est activée, sans que la surveillance de collision ne réagisse, la direction active de correction doit être échangée (programmer G42 pour G41 actif et G41 pour G42 actif). La commande termine la zone de prévisualisation de la surveillance de collision automatiquement dans un bloc G41 ou G42 et redémarre ensuite la prévisualisation. Exemple : : N100 CLN(DLA 5) : Préréglage pour la zone de prévisualisation de la sur‐ veillance de collision à partir de la prochaine G41/G42 : 5 blocs. : N110 G41 D10 Correction de la trajectoire de la fraise à gauche de la pièce à usiner. N120 X10 Déplacement en avant. N130 X20 N140 X30 N150 G42 : : Commuter à la correction de la trajectoire de la fraise à droite de la pièce à usiner. A partir du bloc 150, la prévisualisation de la surveillance de collision est ter‐ minée et redémarrée ensuite. : N160 X20 N170 X10 Déplacement en arrière. 206/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard N180 X0 N190 G40 : Correction de la trajectoire de la fraise DÉSACTIVÉE. La surveillance de collision devient ainsi inactive, mais elle n'est pas désactivée ! 6.24 Sélectionner la transformation d'axe "Coord, CRD" 6.24.1 Effet Active ou désactive les transformations d'axe configurées dans le groupe de paramètres machine 1030. La fonction est nécessaire par ex. dans le contexte de la program‐ mation des coordonnées tridimensionnelles (voir le manuel "Des‐ cription des fonctions") ou dans certaines conditions pour le calibrage des cinématiques d'axe (voir chap. 6.13 "Calibrer les ci‐ nématiques d'axe : Lire les paramètres de la CN ATGET" à la page 187, chap. 6.14 "Calibrer les cinématiques d'axe : Ecrire les para‐ mètres dans la CN ATPUT " à la page 189 et chap. 6.12 "Calibrer les cinématiques d'axe : Transformation en avant ATFWD" à la pa‐ ge 186). Dans la commande, une transformation d'axe peut avoir un effet à 2 points d'action au maximum : Fig.6-30: Transformation d'axe Pour chaque transformation d'axe disponible, il est déjà défini en interne sur quel point d'action cette transformation prendra effet. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 207/550 Fonctions CN avec syntaxe de langage standard 6.24.2 Programmation Syntaxe : Coord(<AxTrafoNr>) ou Transformation d'axe ACTIVÉE. Coord (<[SDTrfName]>) Coord() ou Transformation d'axe au point d'action 2 DÉSACTIVÉE. Coord(0) Coord(0,<Point d'action>) Transformation d'axe au point d'action sélectionné DÉSACTIVÉE. Format abrégé : CRD(...) avec <AxTrafoNr> Numéro de la transformation d'axe. Champs de saisie : 1.. 20. Valeur entière. L'attribution entre AxTrafoNr et le type de transforma‐ tion d'axe est déposée dans MP 1030 00110. <[SDTrfName]> Nom de la date du système (en parenthèses) du type Typ SysAxTrafo_t qui contient les données de transfor‐ mation à activer. Le type de transformation d'axe est contenu directement dans la date du système. <Point d'action> Point d'action de la transformation d'axe à désactiver. Saisie : 1 ou 2. Fig.6-31: Particularités et restrictions : Syntaxe Coord (CRD) ● Il est possible de commuter directement entre les différentes transforma‐ tions d'axe sur le point d'action 2. Une désactivation préalable n'est pas nécessaire. ● Une transformation d'axe sur le point d'action 1 ne doit être commutée que si aucune transformation d'axe n'est active sur le point d'action 2. Pour de plus amples informations relatives aux types de transfor‐ mations d'axe disponibles, voir le manuel "Description des fonc‐ tions". 6.25 Tableau de couplage spline "CoupleSplineTab, CST" 6.25.1 Effet Pour un couplage d'axes ou de coordonnées, la fonction du couplage est dé‐ posée sous forme de paires de repères dans un tableau de couplage. Pour le calcul de positions de l'axe esclave entre les points de repère, la préparation du bloc génère un tableau spline. Le tableau spline est généré lors de l'interprétation de la syntaxe de couplage et puis enregistrée en tant que fichier dans le répertoire des tableaux de liaison. Les tableaux spline sont générés automatiquement. Il est également possible de générer un tableau spline de manière définie avec CoupleSplineTab(...) : ● CST(STAB(<NomTab>, 1)) force explicitement la création d'un nouveau tableau spline. ● CST(STAB(<NomTab>, 0)) force la création d'un nouveau tableau, si au‐ cun tableau spline n'existe ou si le tableau spline existant est plus ancien que le tableau de couplage. 208/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Avec CoupleSplineTab(...), il est également possible de créer un tableau spline sans qu'un groupe d'axes ne doive exister obligatoirement (par exemple à l'aide de l'introduction manuelle de données). Le nom du tableau spline est généré à partir du nom du tableau de couplage actuellement actif et de l'extension ".s", le nom du tableau de couplage cur‐ ve.fct devient p. ex. le nom du tableau spline curve.fct.s. Le tableau de couplage est recherché dans le chemin de recherche actuel. Le chemin de recherche est réglé dans le paramètre ma‐ chine 3080 00001. Le répertoire de défaut pour les tableaux de liaison est : /usr/lnk. Il peut être librement défini au moyen du paramètre machine 3080 00004. 6.25.2 Programmation Syntaxe : CoupleSplineTab(STAB(<NomTab>{,<1|0>})) Créer un tableau spline. Format abrégé : CST(...) avec <NomTab> Nom du tableau de couplage qui est recherché dans le chemin de recherche actuel et pour lequel un tableau spline est créé. <1|0> En option : 0 : Le tableau spline n'est créé qui s'il n'existe pas ou s'il est plus ancien que le tableau de couplage. (défaut) 1 : Le nouveau tableau spline est créé. Fig.6-32: Exemple : Syntaxe CoupleSplineTab (CST) CST(STAB(curve.fct)) Crée, si nécessaire, le tableau spline /<Répertoire de liaison>/curve.fct.s. CST(STAB(curve.fct,1)) Crée le tableau spline/<Répertoire de liaison>/cur‐ ve.fct.s indépendamment de la date ou de son exi‐ stence. 6.26 Activer les tableaux de correction D "DcTSel, DCS" 6.26.1 Effet Active un tableau de correction D (tableau de correction géométrique, table GEO). Les tableaux de correction D sont enregistrés en tant que fichiers XML dans le système de fichiers de la commande. 6.26.2 Programmation Syntaxe : DcTSel({<Chemin>}<Nom du fichier>) Format abrégé : DCS(..) avec Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 209/550 Fonctions CN avec syntaxe de langage standard <Chemin> Indication optionnelle du chemin pour le répertoire dans lequel <Nom du fichier> est enregistré. Si aucun chemin n'est indiqué, la recherche est effec‐ tuée sous le chemin "/database". Si <Nom de fichier> ne peut y être trouvé, la commande utilise le chemin de recherche pour sous-programmes afin de rechercher <Nom du fichier> également dans d'autres répertoires. <Nom du fichier> Nom du fichier du tableau de correction D avec exten‐ sion du fichier incluse. Les tableaux ayant des noms standard (DC <Numé‐ ro>.dct) peuvent être activés directement via le numéro, p.ex. DcTSel(7) active le tableau DC7.dct. Fig.6-33: Syntaxe DcTSel (DCS) Pour de plus amples informations relatives à la création et l'édition des tableaux de correction D, veuillez consulter le mode d'emploi de la commande ! Exemple : : N030 DCS(geotab.dct) : Effectue la recherche du tableau de correction "geo‐ tab.dct" d'abord dans le répertoire "/database" ; ensuite, si la recherche a été infructueuse, dans le chemin de recherche pour sous-programmes. Le premier tableau de correction D trouvé avec le nom "geotab.dct" est ac‐ tivé. N130 DCS(/mnt/ge.dct) Recherche et active le tableau de correction D "ge.dct" dans le répertoire "/mnt". S'il n'y est pas trouvé, un mes‐ : sage d'erreur est généré. 6.27 Accepter le réglage d'axe de défaut des paramètres machine "DefAxis, DAX" 6.27.1 Effet Active la configuration d'axe de défaut selon MP 1003 00002 pour tous les canaux. Pour de plus amples informations relatives à la fonction "Transfert d'axe", voir le manuel "Description des fonctions". 6.27.2 Programmation Syntaxe : DefAxis Format abrégé : DAX Particularités et restrictions : Entraîne une erreur d'exécution, si un axe intéressé n'est pas validé. 210/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Etant donné que souvent plusieurs canaux interviennent dans le transfert d'axe, nous recommandons d'inscrire la fonction dans MP 7060 00020 derrière le mot clé "#SysRes". De cette manière, il est toujours possible de rétablir la configuration d'axe de défaut dans le contexte de la "Remise à zéro du systè‐ me". 6.28 Remettre les broches du canal aux paramètres machine "DefSpindle, DSP" 6.28.1 Effet Active le réglage de défaut de la broche selon MP 7020 00020. 6.28.2 Programmation Syntaxe : DefSpindle Format abrégé : DSP 6.29 Enchaînement de blocs sans réduction de vitesse "DefTang‐ Trans, DTT" 6.29.1 Effet La fonction "Enchaînement de blocs sans réduction de vitesse" limite l'influence de la capacité de saut de l'axe aux grands angles de raccordement. Un para‐ métrage correspondant permet de régler un comportement en cas duquel le saut d'axe n'est pris en compte que pour les coudes de contour, tandis que les coudes de contour plus petits sont considérés comme quasi-continus et la vi‐ tesse de trajectoire n'est pas réduite là. En cas d'une machine réelle, ceci peut entraîner l'écrasement du contour programmé. 6.29.2 Programmation Syntaxe : DefTangTrans (<Angle>) Format abrégé : DTT (<Angle>) avec <Angle> Si, au niveau du raccord de contour, la modification de la partie d'axe au vecteur de direction normalisé est su‐ périeure à sin(<Angle>), la capacité de saut de l'axe est prise en compte pour le raccord de contour. Si la modi‐ fication est inférieure à sin(<Angle>), la capacité de saut de l'axe est ignorée et la vitesse n'est pas réduite au raccord de contour (à condition que la distance de frei‐ nage disponible dans le cadre de la prévisualisation des blocs réglée suffit). Plage de valeurs : 0 à 50 degrés. DefTangTrans({0}) Fig.6-34: Particularités et restrictions : ● L'angle limite inscrit dans le paramètre machine 7030 00310 prend effet. Syntaxe DefTangTrans (DTT) En cas d'un arrêt précis actif, la vitesse v = 0 est ralentie à tout enchaî‐ nement de blocs. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 211/550 Fonctions CN avec syntaxe de langage standard ● Après la remise à zéro, le réglage de la chaîne de mise en service prend effet. ● Si la fonction "DefTangTrans" est utilisée, il faut toujours veiller à la vitesse avec laquelle le déplacement doit se faire. Comme celle-ci peut être igno‐ rée temporairement, dans les limites configurées dans les paramètres machine, les erreurs d'asservissement peuvent se produire, avant tout à des hautes vitesses et avec des grands angles de transfert ! 6.30 Programmation au diamètre "DiaProg, DIA", Programmation au rayon "RadProg, RAD" 6.30.1 Effet Les coordonnées pour les axes du plan (sur les tours ; le plus souvent la co‐ ordonnée X) peuvent être interprétées de manière alternative en tant que diamètre ou rayon. Il est ainsi possible de reprendre les cotes existantes cor‐ respondantes directement dans le programme pièce sans conversion. Si la "Programmation au diamètre" est activée, le symbole diamètre est placé en tête de la position de la pièce à usiner, la course restante, la position finale et la valeur du programme dans les indications d'axe de l'axe du plan. La position de la machine, la valeur réelle de l'axe et la poursuite sont toujours affichées en tant que valeurs de rayon. ATTENTION 6.30.2 Une fausse interprétation des cotes est possible ! "DIA" n'agit que sur les coordonnées de diamètre indiquées/configurées. La programmation au diamètre n'a aucune influence sur les paramètres de l'interpolation circulaire I, J, K. Il convient de toujours s'assurer que seules les cotes appropriées sont pro‐ grammées. Programmation Syntaxe : DIA {({ <Coord1> {,..., <Coord8>}})} Programmation au diamètre pour 8 axes ou coordon‐ nées linéaires au maximum ACTIVÉE. Pour toutes les coordonnées non indiquées, la pro‐ grammation au diamètre est désactivée. avec <Coordi> 8 axes ou coordonnées linéaires au maximum (i = 1...8), dont les mesures de course doivent être évaluées en tant qu'indications de diamètre. DIA Rétablit le dernier état de RAD. Après la montée en ré‐ gime, les valeurs par défaut des paramètres machine sont applicables. DIA() Les valeurs par défaut sont activées. L'axe de la clas‐ sification X devient l'axe de diamètre, si aucune coor‐ donnée de diamètre n'est définie dans les paramètres machine. Si celui-ci n'existe pas non plus, la commande signale une erreur d'exécution. RAD Programmation au rayon pour toutes les coordonnées ACTIVÉE. Fig.6-35: Syntaxe DiaProg (DIA) et RadProg (RAD) 212/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Particularités et restrictions : ● Ces fonctions sont modales et se révoquent réciproquement. ● Si une coordonnée de diamètre est intégrée dans une transformation d'axe, la CN arrête la programmation au diamètre pour cet axe. Lorsque une transformation d'axe est activée, il est cependant également possible de commuter des coordonnées dans la programmation au diamètre. ● Pour les modes de fonctionnement "Introduction manuelle de données" et "Exécution" est valable ce qui suit : En cas de cotes pour les coordonnées du centre du cercle, les longueurs d'outil et les décalages d'origine, les coordonnées de l'axe du plan sont toujours interprétées en tant que valeur de rayon. ● Pour les modes de fonctionnement "Manivelle" et "JOG" est valable ce qui suit : Il est possible de commuter entre la programmation au diamètre et la pro‐ grammation au rayon à l'aide du signal d'interface d'axe "Longueur de pas - diamètre" (qAx_JogDia). Exemple : N10 DIA() Activer les coordonnées de diamètre configurées. N20 DIA(Y1,W2) Les coordonnées Y1 et W1 indiquées deviennent des coordonnées de diamètre ; toutes les coordonnées non programmées deviennent des coordonnées de rayon. N30 RAD La programmation au diamètre est arrêtée pour toutes les coordonnées. N40 DIA Les coordonnées Y1 et W1 deviennent des coordon‐ nées de diamètre (dernier état avant RAD). : 6.31 Réglage en hauteur pour Numérisation "DistCtrl, DCR" 6.31.1 Effet Permet de maintenir constant l'écart entre la surface balayée et le dispositif de mesure (laser par exemple). Ainsi, on peut assurer que la zone de travail dis‐ ponible pour le dispositif de mesure n'est pas dépassée. Pour de plus amples informations relatives à la fonction, voir le ma‐ nuel "Description des fonctions". 6.31.2 Programmation Syntaxe : DistCtrl(1) ou DistCtrl Démarre le réglage en hauteur et reprend la distance actuelle entre le dispositif de mesure et la surface en tant que valeur de référence. Les données de configuration définies au moyen du pa‐ ramètre machine 7050 007xx prennent effet. DistCtrl() ou DistCtrl(0) Termine le réglage en hauteur, reprend la valeur de correction actuelle et arrête le mouvement des axes. S'il est programmé conjointement avec un mouvement de déplacement dans le même bloc, le réglage en hau‐ teur n'est désactivé qu'après l'exécution du mouve‐ ment. DistCtrl(<Fct>) Masque quelques données de configuration spécifi‐ ques à la fonction dans les paramètres machine. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 213/550 Fonctions CN avec syntaxe de langage standard Format abrégé : DCR(...) avec <Fct> DcAxis(<Axe>,)<Corr>) Masque MP 7050 00702. Format abrégé : DCA(...) <Axe> Nom ou numéro de l'axe du canal qui doit être réglé en hauteur. <Corr> Direction de mouvement dans laquelle les valeurs de correction doivent être calculées : +1 ou 1 : dans la direction de mouvement positive -1: dans la direction de mouvement négative <Fct> DcFilter(<Temps>) Masque MP 7050 00730. Format abrégé : DCF(...) <Temps> Paramétrage de filtre pour le filtrage des valeurs de la sonde. 0: Filtre DÉSACTIVÉ. >0: Filtre ACTIVÉ ; temps de filtrage en ms. <Fct> DcLimit( {<Vitesse>},{<Accél>}) Masque MP 7050 00740 ou MP 7050 00741. Format abrégé : DCL(...) <Vitesse> Vitesse de modification maximale de la valeur de correction. Masque MP 7050 00740. Valeur de saisie en fonc‐ tion du système de mesure actif (G71,G70) en mm/min ou en pouces/min. <Accél> Pente maximale (accéléra‐ tion) de la valeur de cor‐ rection. Masque MP 7050 00741. Valeur de saisie en fonc‐ tion du système de mesure actif (G71,G70) en m/s2 ou en 1000 pouces/s2. 214/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard <Fct> DcMon({<Collision>},{<Trou>}) Masque MP 7050 00750 ou MP 7050 00751. Format abrégé : DCM(...) <Collision> Plage de tolérance pour la détection de collision. Masque MP 7050 00750. Valeur de saisie en fonc‐ tion du système de mesure actif (G71,G70) en mm ou en pouces. 0: Détection de collision DÉSACTIVÉE. <Trou> Plage de tolérance pour la détection de trous. Masque MP 7050 00751. Valeur de saisie en fonc‐ tion du système de mesure actif (G71,G70) en mm ou en pouces. 0: Détection de trous DÉS‐ ACTIVÉE. Interrompt le réglage en hauteur. La valeur de correc‐ tion actuelle reste active. DcBreak Format abrégé : DCB Reprend un réglage en hauteur interrompu avant par DCB. La CN équilibre la différence par rapport à la va‐ leur de référence aussi vite que possible. DcCont Format abrégé : DCC Fig.6-36: Syntaxe DistCtrl (DCR) 6.32 Couplage de position finale "EndPosCouple, EPC" 6.32.1 Effet Effectue le couplage de deux coordonnées actuelles synchrones dans un mê‐ me canal selon le rapport suivant : Δ coordonnée esclave = facteur de couplage *Δ coordonnée maître. Afin de pouvoir effectuer le calcul de la coordonnée esclave en résultant, les définitions de position de la coordonnée maître sont toujours converties auto‐ matiquement en courses incrémentielles. Pour chaque bloc CN dans lequel une définition de position de la coordonnée maître est programmée, la commande calcule la position finale nécessaire de la coordonnée esclave selon le rapport donné ci-dessus. Par rapport aux autres fonctions CN, la coordonnée esclave se comporte com‐ me si sa course de déplacement avait été écrite spécialement dans le pro‐ gramme pièce au moyen de la programmation relative locale (IC). Ceci signifie par ex. que l'avance actuelle agit sur le mouvement sur trajectoire résultant. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 215/550 Fonctions CN avec syntaxe de langage standard 6.32.2 Programmation Syntaxe : EndPosCouple(<Coord M>, <Coord S>,<Facteur>) Couplage de position finale ACTIVÉ. EndPosCouple() ou Couplage de position finale DÉSACTIVÉ. EndPosCouple(0) Format abrégé : EPC(...) avec <Coord M> Nom de la coordonnée maître. <Coord S> Nom de la coordonnée esclave. <Facteur> Rapport entre la course de déplacement de l'esclave et la course de déplacement du maître. Fig.6-37: Particularités et restrictions : Exemple : Syntaxe EndPosCouple (EPC) ● Le couplage de position finale n'est pas possible en relation avec les co‐ ordonnées infinies (coordonnées dont les valeurs sont transformées au‐ tomatiquement en la plage de valeurs définie lors du dépassement de leurs limites de zone). ● La programmation de coordonnées polaires n'est pas permise lors d'un couplage de position finale activé. ● Si le couplage de position finale est actif, les coordonnées maître et es‐ clave ne doivent pas être programmées dans le même bloc CN. La programmation exclusive de la coordonnée esclave dans un bloc CN est cependant admise. ● Ni la coordonnée maître, ni la coordonnée esclave ne doit quitter le canal, lorsque le couplage de la position finale est actif. L'échange d'axes ou les modifications de la transformation active sont interdits. ● Même si la programmation au diamètre est activée pour la coordonnée maître (voir chap. 6.30 "Programmation au diamètre DiaProg, DIA, Pro‐ grammation au rayon RadProg, RAD" à la page 211), la valeur de rayon correspondante est utilisée pour le couplage. N10 G18 G0 Z0 Plan actif : z,x. Par vitesse rapide sur z=0. N20 G1 F1000 Z3 X1 Positionnement sur P1. N30 EPC(Z,X,1) Activer le couplage de position finale. : Coordonnée maître : Z ; coordonnée esclave : X. : Course de déplacement esclave = course de déplace‐ ment maître. N40 Z4 Positionnement sur P2. N50 X1 Positionnement sur P3. N60 Z5 Positionnement sur P4. N70 X3 Positionnement sur P5. N80 Z0 Positionnement sur P6. N90 EPC() Couplage de position finale DÉSACTIVÉ. : 216/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Fig.6-38: Exemple EndPosCouple (EPC) 6.33 Génération de l'avance : Masquer les axes "FeedAd, FAD" 6.33.1 Effet Enlève tous les axes définis dans MP 1003 00020 de la génération de l'avance. Les axes enlevés sont ensuite déplacés en même temps de manière synchro‐ ne. En conséquence, l'avance réelle peut augmenter par rapport à la valeur F pro‐ grammée. 6.33.2 Programmation Syntaxe : FeedAd(1) ou Enlever les axes de la génération de l'avance. FeedAd FeedAd(0) ou FeedAd() Prendre en considération les axes lors de la génération de l'avance. Format abrégé : FAD(..) Fig.6-39: Particularités et restrictions : Exemple : Syntaxe FeddAd (FAD) Dans la mesure où, dans un bloc, seuls les axes qui sont masqués pour la génération de l'avance sont déplacés, leur avance peut être réglée par l'adres‐ se "Oméga" au lieu de l'adresse "F" (voir chap. 5.4 "Programmation de l'avance et de la vitesse de rotation" à la page 169). (axe Y est inscrit dans MP 1003 00020) : N100 G94 G0 X0 Y0 Positionnement sur P(0;0) en vitesse rapide. N110 FeedAd() N120 X100 Y100 F100 Positionnement sur P(100;100). : Avance sur trajectoire programmée :100 mm/min : Avance sur trajectoire réelle :100 mm/min Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 217/550 Fonctions CN avec syntaxe de langage standard N150 FeedAd N160 X200 Y200 F100 Positionnement sur P(200;200). : Avance sur trajectoire programmée :100 mm/min : Avance sur trajectoire réelle :141,42 mm/min 6.34 Anticipation "FeedForward, FFW" 6.34.1 Effet La fonction diminue la poursuite due au système par la correction correspon‐ dante des valeurs définies de l'interpolateur dans l'entraînement. Il est ainsi possible d'atteindre une fidélité de contour augmentée ou le "Fonctionnement sans erreur de poursuite". La fonction "Anticipation" est réalisée de manière spécifique au fa‐ bricant dans l'entraînement et n'est activée/désactivée que par la syntaxe d'ordre indiquée à partir du programme pièce. Pour une description détaillée de la fonction "Anticipation", veuillez consulter la documentation sur l'entraînement. La possibilité de l'activation de l'anticipation doit être validée au moyen du paramètre machine 1003 00009 pour les axes corres‐ pondants. 6.34.2 Programmation Syntaxe : FeedForward(1) ou FeedForward Activer l'anticipation pour tous les axes validés selon MP 1003 00009 (les entraînements pertinents sont commutés au mode de fonctionnement secondaire 1). FeedForward(<Adr><Va‐ leur>,...) Activer/désactiver l'anticipation pour les axes program‐ més (effet dépendant de <Valeur>). FeedForward() ou Désactiver l'anticipation pour tous les axes. FeedForward(0) (tous les entraînements pertinents sont commutés sur au mode de fonctionnement principal). Format abrégé : FFW(..) avec <Adr> Adresse physique ou logique de l'axe. <Valeur> Information sur la course pour <Adr>. 0: Désactiver l'anticipation. Inégal à 0 : activer l'anticipation. Fig.6-40: Syntaxe Feedforward (FFW) 218/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Exemple : Activer l'anticipation pour tous les axes du canal validés selon MP 1003 00009. N10 FFW : Désactiver l'anticipation pour Z (commuter Z au mode de fonctionnement principal). N50 FFW(Z0) : Désactiver l'anticipation de tous les axes du canal (com‐ muter au mode de fonctionnement principal). N90 FFW() : : Particularités et restrictions : ● Lors de la désactivation de l'anticipation, tous les axes du canal sont com‐ mutés à leur mode de fonctionnement principal. ● Le paramétrage de l'anticipation dans l'entraînement n'est possible que par l'écriture des paramètres d'entraînement pertinents. "WriteId" est disponible en tant que fonction pour l'écriture des paramètres SERCOS par programme pièce (voir chap. 6.128 "Écriture des paramè‐ tres SERCOS WriteId, WID" à la page 331). 6.35 Mesure au vol "FlyMeas, FME" 6.35.1 Effet La fonction "Mesure au vol" sert à la mesure accompagnant le traitement. Le mouvement de déplacement n'est pas interrompu lors de la commutation du palpeur de mesure. La position de mesure est transmise par l'entraînement à la CN. Elle peut être interrogée à l'aide de l'ordre CPL PPOS. 6.35.2 Programmation Syntaxe : FlyMeas(MpiAxis<i>)<Coordonnées d'axe> Lancer le cycle de mesure. Format abrégé : FME(..) avec <i> Index de l'axe physique avec lequel la mesure doit être réalisée. <Coordonnées d'axe> Position sur laquelle doit avoir lieu le déplacement pen‐ dant la mesure. Fig.6-41: Particularités et restrictions : Syntaxe FlyMeas (FME) ● Avant la première mesure, le palpeur de mesure doit être initialisé une fois à l'aide de la fonction "InitMeas". ● La fonction agit bloc par bloc. ● Il est possible de programmer la fonction conjointement avec tous les ty‐ pes d'interpolation ; elle agit parallèlement à l'interpolation active. ● Si le palpeur de mesure ne commute pas, la CN attend à la fin du bloc jusqu'à ce qu'un événement de mesure se réalise. ● La prévisualisation de blocs doit être respectée, si l'information du palpeur de mesure doit être traitée ultérieurement. Le cas échéant, il convient de programmer un WAIT ou bien la prévisualisation doit être limitée par "BlkNmb". Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 219/550 Fonctions CN avec syntaxe de langage standard Exemple : ● La position de mesure peut être interrogée à l'aide de PPOS. ● La fonction peut être utilisée pour les axes infinis linéaires, si les positions programmées ont un signe positif. Le déplacement en arrière avec le pal‐ peur de mesure (programmation de positions négatives) ne fournit aucune valeur précise. : N100 IME(MpiAxis 1) : Initialisation de la logique du palpeur de mesu‐ re de l'axe physique 1 (ici : axe X). N110 G0 X0 Y0 N120 FME(MpiAxis 1) G1 X10 Y10 Démarrage du cycle de mesure et positionne‐ ment en avance sur X10, Y10. : Fig.6-42: Exemple FlyMeas (FME) 6.36 Mesurer sur butée fixe "FsProbe, FSP" 6.36.1 Effet Pendant que la commande déplace tous les axes synchrones programmés sur le point final programmé par l'interpolation linéaire dans l'avance indiquée, le couple actuel est surveillé sur un axe sélectionné. Si le couple de cet axe dépasse une valeur limite configurable lors du mouve‐ ment, les actions suivantes se déclenchent dans la commande : ● Emission du signal IF de l'axe "Butée fixe atteinte", ● Mémorisation de la position réelle, ● Freinage du mouvement sur trajectoire à v=0 avec accélération maximale admissible, ● Effacement de la course restante, ● Suppression de "FsProbe" ("FsProbe" agit bloc par bloc). La commande génère un message d'erreur, si aucune "butée fixe" n'a encore été atteinte à la fin de trajectoire (dépassement du seuil de couple défini). N'utiliser "FsProbe" qu'en combinaison avec un programme CPL pour l'évaluation. 220/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.36.2 Programmation Syntaxe : FsProbe(MfsAxis<i>) "Mesurer sur butée fixe" ACTIVÉE. <Coordonnées> <Avance> Pour l'axe <i>, et déplacer les coordonnées program‐ mées avec l'interpolation linéaire. FsProbe(MfsAxis (<i>,<Seuil>)) <Coordonnées> <Avance> "Mesurer sur butée fixe" ACTIVÉE. Avec seuil de couple pour l'axe <i>, et déplacer les co‐ ordonnées programmées avec l'interpolation linéaire. Format abrégé : FSP(..) avec <i> Index de l'axe physique avec lequel la mesure doit être réalisée. <Seuil> Seuil de couple Valeur de saisie : en % du couple maximal. Si <Seuil> n'est pas programmé, le paramètre machine 1003 00031 prend effet (valeur limite de couple - butée fixe). <Coordonnées> Position sur laquelle doit avoir lieu le déplacement pen‐ dant la mesure. <Avance> Avance sur trajectoire souhaitée. Est limitée par MP 1005 00030 (Avance maximale pour le déplacement sur butée fixe) et par MP 1005 00002 (Vitesse maximale de l'axe et vitesse en avance rapide). Fig.6-43: Exemple : Syntaxe FsProbe (FSP) N100 FSP(MfsAxis(1,30)) X100 F500 Activer "Mesurer sur butée fixe" pour le premier axe physique et approcher la position X100 avec F500. Régler 30% du couple maximal en tant que seuil de couple. 110 IF SD(9)=0 THEN Interrogation, si le seuil de couple a été dépassé. 120 XPOS=PPOS(1) Mémorisation de la position au mo‐ ment de la commutation du 1er axe (axe X) dans les variables XPOS. : : N130(MSG, CONTACT) 140 GOTO N180 150 ENDIF N160(MSG, NO CONTACT) Arrêt de programme. N170 M0 N180 ... Particularités et restrictions : ● Dans le bloc "FsProbe", les fonctions suivantes sont interdites : – G75 (Palpeur de mesure), – InitMeas/FlyMeas (Mesure au vol), Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 221/550 Fonctions CN avec syntaxe de langage standard – RedTorque (Réduction du couple), – FsMove/FsReset/FsTorque (Déplacement sur butée fixe). ● "FsProbe" doit être programmée conjointement avec une coordonnée au minimum. Sa valeur représente la profondeur de recherche maximale jusqu'à laquelle la "butée fixe" devra être atteinte au plus tard. ● "FsProbe" arrête implicitement la préparation des blocs suivants. La pro‐ grammation de "WAIT" est donc inutile. ● L'évaluation si la "butée fixe" est atteinte, la poursuite du programme (suite à une erreur), les suivis de sécurité, la génération de messages d'erreur etc. doivent être réalisés dans le programme CPL. ● Avec SD(9), il est possible de consulter si la butée fixe a été atteinte. ● La position de la butée fixe peut être interrogée à l'aide de PPOS. 6.37 Déplacement sur butée fixe "FsMove, FSM", "FsTorque, FST", "FsReset, FSR" 6.37.1 Effet La fonction "Déplacement sur butée fixe" est également applicable pour les axes asynchrones ! La fonction entière "Déplacement sur butée fixe" comprend les fonctions par‐ tielles suivantes : 1. "Réduction de couple - butée fixe" : FsTorque, FST Réglage du couple que l'entraînement peut fournir au maximum après l'activation de la fonction "Déplacement sur butée fixe". Si "FsTorque" n'est pas utilisé, MP 1003 00031 prend effet. 2. "Déplacement sur butée fixe" : FsMove, FSM Démarrer le mouvement en direction de la butée fixe en prenant compte du couple maximal admissible. L'atteinte du couple maximal admissible (voir point 1) dans le déroulement de ce mouvement déclenche la chaîne d'action suivante dans la com‐ mande : ● Émission du signal IF de l'axe "Butée fixe atteinte". ● Freinage du mouvement sur trajectoire à v = 0 avec accélération maximale admissible. ● Réglage de la consigne de position sur : position réellle + 0,1 mm (ou position réelle + 0,1 degrés). ● Surveillance de la position de l'axe quant à : position de la butée fixe + MP 1003 00032 ("Fenêtre de surveillance - butée fixe - en mm ou degrés") ● Maintenir le couple spécifié sur l'entraînement concerné. ● Continuer le traitement du programme pièce. La commande émet un message d'erreur, si aucune butée fixe n'a encore été atteinte à la fin de lal trajectoire programmée (atteinte du seuil de cou‐ ple défini ; voir "FsTorque"). "FsMove" reste active au-delà du bloc "FsMove" et n'est arrêté que par "FsReset". 3. "Suppression de la butée fixe" : FsReset, FSR 222/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Débloquer les axes et quitter la butée fixe, le cas échéant. ● Dans la mesure où des axes synchrones et/ou asynchrones ont été programmés dans le bloc "FsReset", la commande déplace tous les axes avec l'avance définie sur les points d'arrivée programmés. Pour ce déplacement, le couple maximal admissible des différents axes est valide. ● Si aucuns axes n'ont été programmés dans le bloc "FsReset", seuls les axes synchrones sont débloqués. Les axes asynchrones pour lesquels le "Déplacement sur butée fixe" est encore actif ne peuvent être débloqués dans ce cas que par le signal d'interface "Suppres‐ sion de la butée fixe". Dans la mesure où cela est souhaité et si "FsReset" (voir point 3.) n'est pas encore programmé, il est possible de modifier un couple agissant de manière active sur la butée fixe dans la suite du pro‐ gramme pièce par "FsTorque" (voir point 1.). 6.37.2 Programmation Syntaxe : FsTorque(<Adr><Mom>) Activer pour l'axe <Adr> le couple maximal admissible <Mom>. Les axes synchrones et asynchrones sont per‐ mis. Format abrégé : FST( ..) FsMove.. Activer "Déplacement sur butée fixe". <Coord-Syn> <Avance> <Coord-Asy> <Avance-Asy> Déplacer les axes synchrones et asynchrones sur les positions finales programmées. Format abrégé : FSM .. FsReset.. <Coord-Syn> <Avance> <Coord-Asy> <Avance-Asy> Désactiver "Déplacement sur butée fixe". Déplacer les axes synchrones et asynchrones sur les positions finales programmées. Format abrégé : FSR.. avec <Adr> Adresse physique ou logique de l'axe ; axes asynchro‐ nes également possibles. <Mom> Couple maximal en % du couple d'arrêt d'axe corres‐ pondant. Plage de valeurs : de 0 à 500 %. <Coord-Syn> Coordonnées souhaitées du point d'arrivée pour les axes synchrones (par exemple "X100 Y100 Z100"). Sont approchées par interpolation linéaire de tous les axes intéressés, l'<Avance> et MP 1010 00030 étant tenus en compte (accélération maximale "Déplacement sur butée fixe"). Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 223/550 Fonctions CN avec syntaxe de langage standard <Avance> Avance sur trajectoire souhaitée. Est programmée via l'adresse F et limitée par MP 1005 00030 (Avance maximale "Déplacement sur butée fixe") et MP 1005 00002 (Vitesse maximale de l'axe et vitesse en avance rapide). <Coord-Asy> Coordonnées souhaitées du point d'arrivée pour les axes asynchrones. Elles sont approchées, compte tenu de l'<Avance-Asy> et du MP 1010 00030 (Accélération maximale "Déplacement sur butée fixe"). <Avance-Asy> Avance souhaitée pour les axes asynchrones. Est programmée via l'adresse "FA" et limitée par MP 1005 00030 (Avance maximale "Déplacement sur butée fixe") et MP 1005 00002 (Vitesse maximale de l'axe et vitesse en avance rapide). Fig.6-44: Exemple : Syntaxe FsMove (FSM), FsTorque (FST) et FsReset (FSR) : N100 FST(X20) Limiter le couple pour l'axe désigné "X" à 20% du couple d'arrêt d'axe. N110 FSM X100 F200 Activer "Déplacement sur butée fixe" : Démarrer le mouvement avec l'avance de 200 mm/min sur position X=100. : : Continuer le traitement du programme pièce. N500 FSR Désactiver "Déplacement sur butée fixe" et débloquer tous les axes synchrones. : Particularités et restrictions : ● ● Les fonctions suivantes ne sont pas permises lors du "Déplacement sur butée fixe" et dans le bloc "FsReset" : – G75 (Palpeur de mesure), – InitMeas / FlyMeas (Mesure au vol), – Réduction du couple via l'interface API, – FsProbe (Mesurer sur butée fixe). "FsMove" doit être programmée conjointement avec une coordonnée au moins pour le point d'arrivée. Sa valeur représente la profondeur de re‐ cherche maximale jusqu'à laquelle la "butée fixe" devra être atteinte au plus tard. 6.38 Reprendre l'axe "GetAxis, GAX" 6.38.1 Effet Reprend un axe asynchrone dans le canal appelant. Ainsi l'axe asynchrone devient un axe synchrone. L'axe est alors programmable dans le canal actuel via son nom physique ou logique. Pour de plus amples informations relatives à la fonction "Transfert d'axe", voir le manuel "Description des fonctions". 224/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.38.2 Programmation Syntaxe : GetAxis(<PAN>|<PAI>,{<LAN>}{,<PAN>|<PAI>,{<LAN>}}...) Format abrégé : GAX(..) avec <PAN> Nom physique de l'axe. Définit l'axe qui doit être repris dans le canal actuel. <PAI> Index physique de l'axe. Effet similaire à <PAN>. <LAN> Nom logique de l'axe. Dans la mesure où celui-ci a été programmé, l'axe à reprendre dans le canal actuel reçoit le nom logique <LAN>. <LAN> doit être défini dans MP 7010 00010 (Désigna‐ tion logique de l'axe) ou MP 7010 00020 (Désignation optionnelle de l'axe). Fig.6-45: Particularités et restrictions : ● Syntaxe GetAxis (GAX) Un axe à reprendre doit être arrêté. Si cela n'est pas le cas, la commande génère - contrairement à la fonction "WaitAxis" (voir chap. 6.127 " Reprendre l'axe, attendre le cas échéant WaitAxis, WAX" à la page 330) - un message d'erreur et interrompt le programme. Exemple : ● Les positions d'axe dans un même bloc doivent toujours être program‐ mées après GetAxis(…) et la programmation ne doit s'effectuer que si aucune transformation d'axe n'est active. ● Les axes à reprendre ne doivent être intéressés à aucune zone de sur‐ veillance active (voir chap. 6.2 "Surveillance de zone Area, ARA" à la page 176). : N030 GAX(YP,,ZP,Z) : Les axes physiques YP et ZP sont repris dans le canal appelant. Tandis que YP est désigné adresse YP également dans le canal appelant, ZP reçoit dans le canal appelant l'adresse Z. 6.39 Compensation des erreurs de trajectoire et d'angle : activer "GCT(1)" 6.39.1 Effet Active la compensation des erreurs de trajectoire et d'angle pour la compen‐ sation des erreurs géométriques provoquées par les imprécisions de la méca‐ nique et ne pouvant pas être saisies par les codeurs. De plus amples informations relatives à l'utilisation et au paramé‐ trage de la "Compensation des erreurs de trajectoire et d'angle" sont données dans le manuel "Description des fonctions". Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 225/550 Fonctions CN avec syntaxe de langage standard 6.39.2 Programmation Syntaxe : Fig.6-46: Particularités et restrictions : (alternativement : GCT, GeoComp(1), GEOCOMP(1)) GCT(1) Syntaxe GCT(1) ● L'utilisateur enregistre les données de compensation dans un schéma XML. ● Ces fichiers sont sauvegardés dans le répertoire racine ou dans l'USR‐ FEP de la commande. Le nom de fichier est librement configurable ; l'extension du fichier doit être "gct". 6.40 Compensation des erreurs de trajectoire et d'angle : désactiver "GCT(0)" 6.40.1 Effet Désactive la compensation des erreurs de trajectoire et d'angle. 6.40.2 Programmation Syntaxe : (alternativement : GeoComp(0), GEOCOMP(0)) GCT(0) Fig.6-47: Syntaxe GCT(0) 6.41 Créer les broches de canal "GetSpindle, GSP" 6.41.1 Effet Reprend une broche de système dans le canal appelant. La broche de système devient ainsi une broche de canal. Ensuite, la broche peut être programmée dans le canal actuelle à l'aide de son nom logique et ses fonctions auxiliaires logiques. 6.41.2 Programmation Syntaxe GetSpindle (<SysSpNr> | <SysSpName> , <ChanSpNr> |<ChanSpName> , {...}) Reprend une broche de système en tant que broche logique dans le canal (broche de canal). avec <SysSpNr> 1..32 <SysSpName> SSp01 .. SSp32 ou SSP01 .. SSP32 <ChanSpNr> 1..8 <ChanSpName> S1 .. S8 Format abrégé : GSP Fig.6-48: Particularités et restrictions Syntaxe GetSpindle (GSP) ● Une broche de système peut logiquement exister en plusieurs canaux. ● GetSpindle ne déclenche pas d'erreur d'exécution, si une broche de canal du nom indiqué existe déjà. Exception : La broche à remplacer est opérée à vitesse de coupe cons‐ tante (G96). 226/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Exemple : ... N50 GSP(7,2) Reprend la 7ème broche de système en tant que 2ème broche de canal. N60 M203 S2=500 Démarre la 2ème broche de canal. ... N110 GSP(SSP12,S2) Reprend la 12ème broche de système en tant que 2ème broche de canal. ... 6.42 Changement de bloc via signal à grande vitesse "HsBlkSwitch, HSB" 6.42.1 Effet Permet le changement de bloc anticipé via les entrées à grande vitesse ou les entrées client de l'interface du canal de la commande. De cette manière, il est d'anticiper l'arrêt d'un déplacement linéaire en fonction d'événements externes. Modification de la trajectoire programmée ! ATTENTION Dans la mesure où les points d'arrivée programmés du bloc "HsBlkSwitch" et son bloc suivant ne se trouvent pas sur une droite, l'apparition d'un événement externe engendre toujours une modification de la trajectoire qui ne peut pas être prévue exactement ! Il est possible de configurer les signaux à grande vitesse à l'aide des paramètres machine. Pour le changement de bloc au vol est valable ce qui suit : 6.42.2 ● Supprimer sans course restante dans les modes de fonctionnement "Bloc suivant", "Bloc séparé" et "Pas séparé". ● Supprimer avec course restante dans les modes de fonctionnement "Bloc de programme" et "Introduction manuelle de données". ● Dans la plupart des cas sans arrêt de l'axe. Le bloc est quitté avec la vitesse actuelle (exceptions, voir "Particularités et restrictions"). ● Aucun contrôle en ce qui concerne la capacité de saut de l'axe possible au maximum. ● Le mode d'action dépend du mode de fonctionnement actuel (Bloc sui‐ vant/Bloc séparé/Bloc de programme, Pas séparé, Introduction manuelle de données). Voir "Particularités et restrictions". Programmation Syntaxe : HsBlkSwitch(HS<x>=<y>) ou HsBlkSwitch(CI<x>=<y>) Changement de bloc au vol Format abrégé : HSB(..) avec Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 227/550 Fonctions CN avec syntaxe de langage standard <x> Numéro du signal à grande vitesse ou de l'entrée client (qCh_Custom<x>). Plage de valeurs : 1...8, valeur entière. <y> État de signal requis pour le changement de bloc. 0: Low 1: High Fig.6-49: Particularités et restrictions : Exemple : Syntaxe HsBlkSwitch (HSB) ● La fonction exige un déplacement linéaire non seulement dans le bloc "HsBlkSwitch", mais également dans le bloc suivant. ● La fonction doit être écrite avec une information de course et peut être écrite conjointement avec d'autres conditions de course. ● Sous les modes de fonctionnement "Bloc suivant", "Bloc séparé" et "Pas séparé", les points d'arrivée de tels axes qui ne sont pas programmés dans le bloc suivant sont repris du bloc terminé par anticipation. ● Le "Changement de bloc au vol" avec arrêt d'axe s'effectue dans les cas suivants : – Coude de contour > 90° entre le bloc "HsBlkSwitch" et son bloc sui‐ vant. – L'arrêt précis est actif, c'est-à-dire G0(IPS...) ou G1(IPS...). – En raison d'une programmation supplémentaire, le bloc suivant com‐ mence avec v = 0 (par ex. lors de la programmation KV active ou de l'anticipation). – "Profil de vitesse avec limitation du jerk" (G8(SHAPE...), G9(SHA‐ PE...) etc.) est actif. – Le mode de fonctionnement "Bloc séparé", "Pas séparé", "Bloc de programme" ou "Introduction manuelle de données" est actif. Avance dépendant d'un événement L'avance effectuée doit être réduite sur une course droite en fonction d'un évé‐ nement externe. Pour cela 3 blocs CN sont nécessaires dans lesquels sont définies les diffé‐ rentes indications d'avance. Etant donné que lors du raccordement de bloc le freinage à v = 0 ne doit pas être effectué, un changement de bloc au vol est nécessaire. Veuillez respecter que tous les points d'arrivée programmés doivent se trouver sur la même droite en raison de la mission (..."sur une course droite"...). Les points d'arrivée d'un bloc suivant ne doivent pas être identiques aux ceux du bloc précédent. Sinon un déplacement n'est pas dé‐ clenché dans le bloc suivant ! La distance de déplacement programmée d'un bloc suivant influen‐ ce la vitesse d'avance possible au maximum sur le raccord de bloc. Les distances de déplacement trop courtes peuvent engendrer une réduction automatique de la vitesse de trajectoire ! : N20 G0 X0 Y0 Approche de la position de départ. 228/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard N30 HSB(HS1=1) G1 X100 Y10 F500 Déplacement avec F500 jusqu'à ce que le signal à grande vitesse 1 a atteint "High" ou X100 Y10. N40 HSB(HS1=0) X110 Y11 F100 Déplacement avec F100 jusqu'à ce que lu signal à grande vitesse 1 a atteint "Low" ou X110 Y11. N50 X120 Y12 F500 Déplacer la course restante jusqu'à X120 Y12 avec F500. : Fig.6-50: Exemple HsBlkSwitch (HSB) 6.43 Changement de bloc avec interruption via signal à grande vi‐ tesse "HsBlkSwitch(..,HSSTOP=..), HSB(..,HSSTOP=..)" 6.43.1 Effet Permet le changement de bloc anticipé via les entrées à grande vitesse ou les entrées client de l'interface du canal de la commande. De cette manière, il est d'anticiper l'arrêt d'un déplacement linéaire en fonction d'événements externes. Modification de la trajectoire programmée ! ATTENTION Dans la mesure où les points d'arrivée programmés du bloc "HsBlkSwitch" et son bloc suivant ne se trouvent pas sur une droite, l'apparition d'un événement externe engendre toujours une modification de la trajectoire qui ne peut pas être prévue exactement ! Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 229/550 Fonctions CN avec syntaxe de langage standard Il est possible de configurer les signaux à grande vitesse à l'aide des paramètres machine. Pour le changement de bloc avec interruption s'applique ce qui suit : ● Supprimer dans tous les modes de fonctionnement avec course restante. ● Freinage toujours à v = 0 ; en option par saut de vitesse ou Downslope. Même si l'événement externe ne s'est pas produit, un freinage à v=0 est effectué. 6.43.2 Programmation Syntaxe : HsBlkSwitch(HS<x>=<y>,HSSTOP=<z>) ou HsBlkSwitch(CI<x>=<y>,HSSTOP=<z>) Changement de bloc avec interruption Format abrégé : HSB(..,HSSTOP=..) avec <x> Numéro du signal à grande vitesse ou de l'entrée client (qCh_Custom<x>). Plage de valeurs : 1...8, valeur entière. <y> État de signal requis pour le changement de bloc. 0: Low 1: High <z> Mode de freinage lors de l'apparition de l'événement : 0: Décélération avec rampe à v=0 avec accélération de freinage maximale. -1: Saut de vitesse à v = 0. Fig.6-51: Particularités et restrictions : Exemple : Syntaxe HsBlkSwitch (HSSTOP) ● La fonction exige un déplacement linéaire non seulement dans le bloc "HsBlkSwitch", mais également dans le bloc suivant. ● La fonction doit être écrite avec une information de course et peut être écrite conjointement avec d'autres conditions de course. ● Si "Profil de vitesse avec limitation du jerk" (G8(SHAPE...), G9(SHAPE...), etc.) est actif, aucun saut de vitesse ne se produit à HSSTOP=-1. Interruption du déplacement en fonction de l'événement : : N20 G1 X0 Y0 F1000 Approche de la position de départ. 230/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard N30 HSB(HS1=1,HSSTOP=-1) X10 F10 Déplacement de l'axe X avec F10 jusqu'à ce que le signal à grande vitesse 1 a atteint "High" ou X10. Un événement se produisant déclenche le saut à v = 0 et la suppression de la course restante. N40 HSB(HS2=1,HSSTOP=0) Y100 F200 Déplacement de l'axe Y avec F200 jusqu'à ce que le signal à grande vitesse 2 a atteint "High" ou Y100. Un événement se produisant déclenche la décélération avec rampe à v = 0 avec ac‐ célération du freinage maximale et la sup‐ pression de la course restante. 6.44 Correction en ligne dans les coordonnées de la pièce à usiner "HWOC", "HWOCDIS" 6.44.1 Effet Avec la correction en ligne dans les coordonnées de la pièce à usiner, ● les positions actuelles ou les orientations dans le système de coordon‐ nées de la pièce à usiner d'un canal ou ● les positions de l'axe longitudinal de l'outil en direction TCS-z sont "superposées" par une correction. La commande déduit la dimension de la correction à partir d'une manivelle raccordée (cas normal), d'un entraînement ou de la valeur d'une variable CPL. Pour de plus amples informations relatives à la fonction, voir le manuel "Des‐ cription des fonctions". 6.44.2 Programmation Syntaxe : HWOC({CHAN<NoCanal>},CRDNO <NoCoord>,{STEP<Incr>}) Correction en ligne ACTIVÉE. HWOCDIS{(CHAN<NoCanal>)} Correction en ligne DÉSACTIVÉE ; la dimension de correction actuelle reste enregistrée en interne. HWOC() ou Correction en ligne DÉSACTIVÉE et HWOC(0) suppression des valeurs de correction pertinentes. avec <NoCanal> Numéro du canal dans lequel la correction en ligne est activée/désactivée. Si CHAN<NoCanal> n'est pas programmé, le numéro du canal actuel est actif. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 231/550 Fonctions CN avec syntaxe de langage standard <NoCoord> Coordonnée sur laquelle la correction en ligne doit agir. Plage de valeurs : 1 à 9 et 103. Valeur entière. 1à8: Numéro de coordonnée dans le canal indiqué. 9 ou 103 : Coordonnée TCS. <Incr> Définition de la longueur de pas souhaitée par 1 incr. Seulement actif, si MP 7050 00926 = 0. Fig.6-52: Particularités et restrictions : ● Syntaxe HWOC, HWOCDIS Une position de coordonnée générée par la correction en ligne n'est pas contrôlée en ce qui concerne le dépassement des commutateurs de fin de course du logiciel. Pour cette raison, un contrôle des commutateurs de fin de course du côté entraînement devrait être activé lors de l'utilisation de la correction en li‐ gne. ● La correction en ligne n'est pas possible dans les modes de fonctionne‐ ment "Configuration manuelle" (Mode JOG) et "Configuration de l'appro‐ che du point de référence". ● G76 approche une position décalée par la valeur de correction actuelle. ● Les fonctions CPL PPOS et PCSPROBE ne tiennent pas en compte la valeur de correction de la correction en ligne. ● G75 mesure la position réelle actuelle (correction en ligne incluse). ● "FsProbe" mesure la position réelle actuelle (correction en ligne incluse). 6.45 Initialisation de la mesure au vol "InitMeas, IME" 6.45.1 Effet La fonction "InitMeas" sert à l'initialisation du palpeur de mesure pour la fonc‐ tionnalité "Mesure au vol" (FlyMeas). L'initialisation doit être appelée avant la première mesure d'un axe. 6.45.2 Programmation Syntaxe : InitMeas(MpiAxis<i>) Initialisation de la logique du palpeur de mesure. Format abrégé : IME(..) avec <i> Index de l'axe physique avec lequel la mesure doit être réalisée. Fig.6-53: Particularités et restrictions : Syntaxe InitMeas (IME) ● La fonction agit bloc par bloc. ● Il est possible de programmer la fonction conjointement avec tous les ty‐ pes d'interpolation ; elle agit parallèlement à l'interpolation active. ● La fonction doit être appelée avant le premier appel de la fonction "Fly‐ Meas" pour chaque axe concerné. 232/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.46 Sélection de la fenêtre d'arrêt précis "IPS1, IPS2, IPS3" Les instructions CN IPS1,IPS2, IPS3 permettent un préréglage général - en avance rapide et en avance normale - de la taille pour la fenêtre d'arrêt précis. IPS1 Fenêtre d'arrêt précis exacte. IPS2 Fenêtre d'arrêt précis approximative. IPS3 Fenêtre d'arrêt précis infinie. Fig.6-54: Fenêtres d'arrêt précis réglables avec IPS1, IPS2, IPS3 Si, pour la fonction CN actuellement active du groupe modal {G0, G1, G2, G3, G5, G6, G33}, l'arrêt précis est actif, ce préréglage prend immédiatement effet. IPS1 Fenêtre d'arrêt précis exacte : À la fin du bloc, la com‐ mande décélère tout d'abord à la vitesse de trajectoire de v = 0. Le bloc suivant n'est déplacé que lorsque cette fenêtre d'arrêt précis a été atteinte pour tous les axes intéressés. IPS2 Fenêtre d'arrêt précis approximative, pour le comporte‐ ment, voir IPS1. IPS3 Fenêtre d'arrêt précis infinie : À la fin du bloc, la com‐ mande ne décélère qu'à la vitesse de trajectoire v = 0. Le contrôle de la fenêtre d'arrêt précis n'a pas lieu. Fig.6-55: Effet de IPS1, IPS2, IPS3, si, pour la fonction CN actuellement active du groupe modal {G0, G1, G2, G3, G5, G6, G33}, l'arrêt précis est actif Si, pour la fonction CN actuellement active du groupe modal {G0, G1, G2, G3, G5, G6, G33}, aucun arrêt précis n'est actif, la taille pour la fenêtre d'arrêt précis est préréglée à l'aide de IPS1, IPS2, IPS3, pour l'avance rapide ainsi que pour l'avance normale, mais ne prend pas effet. La taille de la fenêtre d'arrêt précis peut être modifiée comme suit par un nouvel paramétrage de IPS1, IPS2, IPS3 : G0(IPS1), G0(IPS2), G0(IPS3) (seulement efficace pour l'avance rapide). G1(IPS1), G1(IPS2), G1(IPS3), G61(IPS1), G61(IPS2), G61(IPS3) (seulement efficace pour l'avance normale). Pour de plus amples informations relatives à l'arrêt précis, voir G0, G1, G61/62 dans le présent manuel ainsi que dans le manuel "Description des fonctions", chapitre "Précision", alinéa "Arrêt pré‐ cis". 6.47 Mode JOG dans les coordonnées de la pièce à usiner "JogWCSSelect" 6.47.1 Effet Définit pour le mode de fonctionnement "Mode de configuration, Mode JOG dans les coordonnées de la pièce à usiner" quelle coordonnée doit être dépla‐ cée en mode JOG ou à l'aide de la manivelle. Les coordonnées suivantes peuvent être sélectionnées pour le mode JOG : ● Toutes les coordonnées d'axes de machine individuels (pseudo-coordon‐ nées), dans la mesure où aucune transformation d'axe n'est active. ● Toutes les coordonnées linéaires et d'orientation – se rapportant au WCS actif -, si une transformation d'axe apte à l'orientation est active. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 233/550 Fonctions CN avec syntaxe de langage standard ● La coordonnée TCS-z, dans la mesure où une transformation d'axe apte à l'orientation est active. Il dépend du réglage dans MP 7050 01010 que la vitesse d'avance et la lon‐ gueur de pas (en mode JOG incrémental) sont à déduire des réglages d'un axe de machine existant ou s'ils doivent être programmés explicitement. Pour de plus amples informations relatives à la fonction, voir le ma‐ nuel "Description des fonctions". 6.47.2 Programmation Syntaxe : JogWCSSelect({JWSCHAN<NoCanal>,}JWSCOORD<NoCoord>, {JWSFEED<Valeur F>{,JWSSTEP<Incr>}}) avec <NoCanal> Numéro du canal dans lequel doit être déplacée une coordonnée par mode JOG. Valeur par défaut : Numéro du canal dans lequel la fonction est programmée. <NoCoord> Sélection des coordonnées. Plage de valeurs : 1 à 8 et 103. Valeur entière. 1 à 8 : Numéro de la coordonnée à déplacer en mode JOG. 103: La coordonnée TCS doit être déplacée en mode JOG. <Valeur F> Vitesse de déplacement par mode JOG. Valeur de saisie en fonction du système de mesure actif (G71,G70) en mm/min, en pouces/min ou en degrés/ min. Seulement actif, si MP 7050 01010 = 0. <Incr> Sélection d'un déplacement manuel incrémentiel par mode JOG et définition des pas en incréments. Seulement actif, si MP 7050 01010 = 0. Fig.6-56: Particularités et restrictions : Syntaxe JogWCSSelect La fonction est prévue pour l'emploi dans un programme spécial CN pour la sélection des coordonnées (voir également MP 7050 01110). Pour de plus amples informations dans ce contexte, veuillez consulter le ma‐ nuel "Description des fonctions". 6.48 Programmation KV "KvProg, KVP" 6.48.1 Effet Cette fonction permet la modification, assistée par le programme, des valeurs KV d'axes individuels. Ainsi il est possible d'augmenter temporairement (par exemple lors du fraisage d'un trou) la rigidité des axes. Après la montée en régime, la CN lit et enregistre, entre autres, les valeurs KV actuelles de tous les entraînements raccordés. Au cours de la programmation KV, la commande charge les valeurs KV pro‐ grammées dans les entraînements pertinents (paramètre S-0-0104). 234/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Lors de la désactivation de la programmation KV, la commande transfère les valeurs KV sauvegardées avant aux entraînements et rétablit ainsi l'état origi‐ nal. Pour cette fonction s'applique ce qui suit : Exemple : ● KV = (Avance sur trajectoire en m/min) / (Poursuite en mm) ● Avant un bloc avec modification KV, le système décélère toujours à v = 0, étant donné que la valeur KV dans l'entraînement ne devrait être modifié qu'à l'arrêt. ● Après l'ordre de la commutation KV, la commande attend toujours l'ac‐ quittement de tous les entraînements participants. ● La commutation KV s'effectue immédiatement avant un déplacement éventuellement également programmé dans le même bloc. : N10 G1 F1000 : Positionnement avec valeur KV de défaut. N40 X40 N50 KVP(X2) X50 : Fig.6-57: 6.48.2 Transférer la valeur KV 2 à l'axe X et déplacer ensuite. Exemple 1 KvProg (KVP) Programmation Syntaxe : KvProg(<Axe1>{,<Axe2>}{,...}) Programmation KV ACTIVÉE. Programmation KV DÉSACTIVÉE. KvProg({0}) Format abrégé : KVP(..) avec <Axe> Désignation physique (spécifique au système) ou logi‐ que (spécifique au canal) de l'axe avec la valeur KV souhaitée incluse. Valeur KV maximale programmable : 655.35 Fig.6-58: Particularités et restrictions : Exemple : Syntaxe KvProg (KVP) Seuls des axes attribués actuellement au canal peuvent être programmés. : Point de départ : une valeur KV de 1,0 est active dans tous les entraînements. N10 G0 X0 Y0 Z100 Positionnement avec la valeur KV=1,0. : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 235/550 Fonctions CN avec syntaxe de langage standard : Transmettre la valeur KV 2,1 à l'entraînement de l'axe physique Z. N30 G1 Z0 Positionnement avec la valeur KV=2,1. N40 KVP() Z100 Désactiver la programmation KV. : La CN charge automatiquement de nouveau la valeur KV 1,0 dans tous les entraînements. N20 KVP(Z2.1) : Ensuite déplacement de l'axe Z. 6.49 Compensation de poursuite "LCP" 6.49.1 Effet La fonction "LCP" (LagCompensation/Compensation de poursuite) travaille sur la base de l'axe du système. Pour cette fonction CN, les axes doivent être adressés via leurs noms d'axe du système. 6.49.2 Programmation Activation de groupes. Syntaxe : N100 LCP(AbsMode,<Esclave1>,<OnOff>,<Esclave2>,<OnOff>…) avec AbsMode Si "AbsMode" est programmé, les axes supplémentai‐ res sont réglés autour de leurs positions zéro. Pour cela, la MLD tire l'axe (les axes) supplémentaire(s) sur la po‐ sition 0 lors de l'activation. Si AbsMode n'est pas pro‐ grammé, aucun mouvement de synchronisation n'est effectué. Les axes supplémentaires sont réglés autour de leurs positions actuelles. <Esclave i> Nom(s) d'axe du systè‐ me des axe(s) supplé‐ mentaire(s). <OnOff> 0: Désactiver le couplage. 1: Activer le couplage. Fig.6-59: Syntaxe LCP L'appel de cette fonction permet de coupler et découpler un ou plusieurs axe(s) supplémentaire(s) aux/des maîtres définis dans la configuration. Désactivation de tous les groupes : N200 LCP() La description de la fonction est donnée dans le manuel "Descrip‐ tion des fonctions". 236/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.50 Repartir le bloc de déplacement : Longueur du parcours partiel "LEN" 6.50.1 Effet Divise le bloc de déplacement en plusieurs parcours partiels de même lon‐ gueur. N'agit qu'en liaison avec les fonctions "Découpage-Poinçonna‐ ge" (voir chap. 6.78 "Découpage-poinçonnage Punch, PUN" à la page 281) et "Grignotage" (voir chap. 6.57 "Grignotage Nibble, NIB" à la page 247). 6.50.2 Programmation Syntaxe : LEN=<Valeur> avec <Valeur> Pour les blocs linéaires : longueur du parcours partiel. Pour les blocs circulaires : longueur du segment d'arc. Unité de programmation, voir les coordonnées d'axes. <Valeur> ne doit pas être un diviseur entier du parcours programmé. En interne, la CN génère toujours une va‐ leur LEN effective inférieure/égale à la valeur LEN pro‐ grammée, si bien que la longueur effective du parcour partiel est toujours un diviseur entier du parcours pro‐ grammé. Fig.6-60: Particularités et restrictions : Exemple : Syntaxe LEN ● Pour les blocs circulaires divisés, le mouvement s'effectue linéairement de course à course ! ● LEN a un effet modal tant que la fonction découpage/grignotage est acti‐ ve. Il est cependant possible de la masquer bloc par bloc par NUM (voir chap. 6.58 "Repartir le bloc de déplacement : Nombre de parcours partiels NUM" à la page 249). ● La programmation de LEN est possible à tout moment, si le découpage/ grignotage est validé (MP 8001 00010). La répartition de blocs ne com‐ mence toutefois qu'après l'activation du découpage-poinçonnage/grigno‐ tage. ● G90 est active (Programmation absolue). ● Plan actif : X/Y ● Position actuelle : X=0, Y=0, C=0 ● Découpage-poinçonnage/Grignotage DÉSACTIVÉ. : N20 X100 Y100 LEN=15 Diviser les blocs de déplacement consécutifs en segments de trajectoire égaux de 15 mm au maximum. LEN n'est pas encore actif, étant donné que le découpage-poinçonnage/grigno‐ tage est désactivé. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 237/550 Fonctions CN avec syntaxe de langage standard N30 X200 Y200 C180 Punch(1) Découpage-poinçonnage ACTIVÉ. LEN prend effet. La longueur de trajectoire est divisée en 10 segments de bloc. Positions de course en résultant (X,Y,C) : P1 (110,110,18) P2 (120,120,36) : P10 (200,200,180) N40 Y290 C210 La longueur de trajectoire (90 mm) est divisée en 6 segments de bloc. Positions de course en résultant (X,Y,C) : P11 (200,215,185) P12 (200,230,190) : P16 (200,290,210) Découpage-poinçonnage DÉSACTIVÉ. N50 Punch() : Fig.6-61: Exemple LEN 238/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.51 Réglage de la puissance du laser dépendant de la vitesse de trajectoire "LFP", "LFConf, LFC" 6.51.1 Effet Règle la puissance d'un laser à l'aide du signal de tension analogique (0...10<t>V) en fonction de l'avance sur trajectoire actuelle vTrajectoire. Pour de plus amples informations relatives à la fonction, voir le ma‐ nuel "Description des fonctions". 6.51.2 Programmation Syntaxe : LFP(1) ou LFP Réglage de la puissance du laser ACTIVÉ avec paramétrage actuel. LFP({LL(... )}) Réglage de la puissance du laser ACTIVÉ avec paramétrage supplémentaire, comme dé‐ crit sous LFCont. LFP(0) Réglage de la puissance du laser DÉSACTI‐ VÉ. LFConf({LL(<Spg>,<Vmin>)}, Paramétrer le réglage de la puissance du laser. La sélection des coordonnées pertinentes se fait soit avec PL(..), soit avec CD(..). {UL(<Spg>,<Vmax>)}, {PL(<Mode>)}, {CD(<Coord 1>{,<Coord n>}...)},) Format abrégé : LFC(..) avec <Spg> Tension en % de la tension de sortie maximale (10 V). En rapport avec <Vmin> : est indiquée, si la vitesse de trajectoire est in‐ férieure à <Vmin>. En rapport avec <Vmax> : est indiquée, si la vitesse de trajectoire est su‐ périeure à <Vmax>. <Vmin> Limite inférieure de vitesse de trajectoire. Valeur de saisie en fonction du système de mesure actif (G71,G70) en mm/min, en pou‐ ces/min ou en degrés/min. <Vmax> Limite supérieure de vitesse de trajectoire. Valeur de saisie en fonction du système de mesure actif (G71,G70) en mm/min, en pou‐ ces/min ou en degrés/min. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 239/550 Fonctions CN avec syntaxe de langage standard <Mode> Définit quelles coordonnées doivent être utili‐ sées pour la détermination de vtrajectoire : APL Toutes les coordonnées du plan actuel. ASP Toutes les coordonnées de l'espace ac‐ tuel. CFD Coordonnées qui correspondent à MP 7050 00820. <Coord x> Définit quelles coordonnées doivent être utili‐ sées pour la détermination de vtrajectoire. Valeurs de saisie : Noms des coordonnées tridimensionnelles in‐ téressés (transformation d'axe activée) ou noms logiques d'axe (pseudo-coordonnées ; transformation d'axe désactivée). Fig.6-62: Exemples : Syntaxe LFP, LFConf et LFC LFP (LL(10,100), UL(60,700)) Réglage de la puissance du laser ACTIVÉ. Paramétrage supplémentaire : tension de sor‐ tie à 10 % (=1 V), si la vitesse de trajectoire tombe à une valeur inférieure à 100 mm/min, ou à 60 % (=6 V), si la vitesse de trajectoire augmente à une valeur supérieure à 700 mm/ min. LFP(0) Réglage de la puissance du laser DÉSACTIVÉ. LFConf (PL(APL)) Uniquement paramétrage : la vitesse de trajectoire est déduite du mouve‐ ment dans le plan actif. LFConf (CD(X , Z)) Uniquement paramétrage : la vitesse de trajectoire est déduite du mouve‐ ment des coordonnées X et Z. LFConf (UL(80,500)) Uniquement paramétrage : tension de sortie à 80 % (=8 V), si la vitesse de trajectoire augmente à une valeur supérieure à 500 mm/min. Particularités et restrictions : ● Les sorties analogiques disponibles limitent le nombre de canaux pouvant utiliser la fonction. ● Le signal de tension requis pour le réglage du laser tombe à 0 V dans les cas suivants : – Une erreur se produit (erreur d'exécution, erreur de classe d'état 1). – Le signal "Entraînement en service" d'un entraînement participant à la trajectoire est désactivé (aucun FG, entraînement en arrêt). – Le signal "Arrêt de l'avance" devient actif. 6.52 Profils de vitesse (fonctions rampe) 6.52.1 Généralités L'étendue de la fonction permet la définition des séquences d'usinage qui doi‐ vent être déplacées avec des propres profils de vitesse. Les "Modules" suivants sont disponibles pour cela : 240/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard ● 1 interpolateur de marche constante. ● 3 interpolateurs d'accélération et 3 interpolateurs de freinage (pour profil de vitesse de forme linéaire, sinusoïdale et sin2). Pour les fonctions rampe s'applique ce qui suit : Toutes les fonctions décrites ci-dessous ont un effet modal, forment un groupe modal avec G8 et G9 et se révoquent réciproquement. 6.52.2 Effet des interpolateurs d'accélération "LinUpFeed, LNU", "SinUpFeed, SNU", "Sin2UpFeed, S2U" Partant de la vitesse v0 (vitesse au début du bloc), la commande accélère sur toute la longueur de trajectoire programmée jusqu'à la vitesse cible v1. Selon la fonction programmée, cela s'effectue avec une augmentation de vi‐ tesse de forme linéaire, sinusoïdale ou sin2. La vitesse cible v1 est atteinte au point d'arrivée programmé et s'ensuit de l'avance programmée, calibrée avec la valeur actuelle de l'atténuateur. Elle est limitée par ● l'accélération maximale de trajectoire et ● la vitesse max. admissible de trajectoire. La commande calcule ces deux grandeurs en fonction des segments spécifi‐ ques à la trajectoire pour chaque bloc CN et exécute une prévisualisation pour 1 bloc en combinaison avec la vitesse maximale admissible. Ceci permet d'évi‐ ter un dépassement de la vitesse maximale des axes dans le bloc suivant respectif. Si v1 n'est pas supérieure à v0, l'appel de l'interpolateur d'accélé‐ ration est ignoré dans le bloc actuel. Comportement avec les modifications OVERRIDE : 6.52.3 ● Une augmentation de l'OVERRIDE a pour effet un nouveau calcul de la rampe d'accélération. ● Une diminution de l'OVERRIDE à des valeurs résultantes inférieures à la vitesse de départ V0 – a pour effet pour "LinUpFeed" un nouveau calcul de la rampe de freinage qui se prolonge jusqu'au point d'arrivée programmé. – est ignoré pour "SinUpFeed" et "Sin2UpFeed". Effet de l'interpolateur de marche constante "ConstFeed, CFD" La commande tente d'atteindre la consigne de vitesse programmée en tenant compte de la vitesse de trajectoire maximale admissible et de la position OVERRIDE actuelle. Les modifications de vitesse en cas de modifications OVERRIDE sont effec‐ tuées avec les accélérations respectivement admissibles. 6.52.4 Effet des interpolateurs de freinage "LinDownFeed, LND", "SinDown‐ Feed, SND", "Sin2DownFeed, S2D" Partant de la vitesse V0 (vitesse au début du bloc), la commande freine sur toute la longueur de trajectoire programmée jusqu'à l'arrêt (V1=0). Selon la fonction programmée, cela s'effectue avec une réduction de vitesse de forme linéaire, sinusoïdale ou sin2. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 241/550 Fonctions CN avec syntaxe de langage standard Des modifications OVERRIDE restent sans effet, exception faite dans les cas suivants : Si l'OVERRIDE dans le bloc précédent a été fixé sur 0% et si, par conséquent, la consigne de vitesse 0 a été atteinte exactement au droit du passage du bloc à l'interpolateur de freinage, la commande arrête l'interpolateur de freinage jusqu'à ce que l'OVERRIDE soit augmenté à une valeur 0. La vitesse saute alors d'un cran d'accélération (conformément à l'accélération de trajectoire admissible). Sur la base de la vitesse résultante, la commande calcule la rampe de freinage nécessaire. La valeur OVERRIDE effective reste alors sans influence jusqu'à la fin du bloc. 6.52.5 Programmation Syntaxe : LinUpFeed Format abrégé : LNU SinUpFeed Format abrégé : SNU Sin2UpFeed Format abrégé : S2U Activer l'interpolateur d'accélération avec augmentation de vitesse linéaire. Activer l'interpolateur d'accélération avec augmentation de vitesse sinusoïdale. Activer l'interpolateur d'accélération avec augmentation de vitesse sous forme sin2. Activer l'interpolateur de marche constante. ConstFeed Format abrégé : CFD LinDownFeed Format abrégé : LND SinDownFeed Format abrégé : SND Sin2DownFeed Format abrégé : S2D Fig.6-63: Exemple : Activer l'interpolateur d'accélération avec réduction de vitesse linéaire. Activer l'interpolateur d'accélération avec réduction de vitesse sinusoïdale. Activer l'interpolateur d'accélération avec réduction de vitesse sous forme sin2. Syntaxe LNU, SNU, S2U, CFD, LND, SND et S2D Profil de vitesse pour un cycle d'oscillation de l'axe U Fig.6-64: Profil de vitesse pour un cycle d'oscillation de l'axe U N5 G0 U10 Déplacer l'axe U à la position de départ (U=10 mm). N10 S2U U17 F500 Accélérer avec une courbe Sin2 jusqu'à la position U=17. Avance de consigne au point d'arrivée : F=500 mm/min. 242/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard N20 CFD U23 Marche constante jusqu'à la position U=23. N30 LND U29 Freinage linéaire jusqu'à la position U=29. Vitesse finale : 0 mm/min. Particularités et restrictions : N40 G4 F0.5 Temporisation au point d'inversion. N50 LNU U20 Accélération linéaire jusqu'à la position U=20. N60 CFD U17 Marche constante jusqu'à la position U=17. N70 SND U10 Freinage sous forme de courbe sinusoïdale jusqu'à la position U=10. Vitesse d'arrivée : 0 mm/min. ● La coordonnée du point d'arrivée souhaité doit toujours être indiquée dans le bloc programmé. ● Toutes les fonctions rampe ne peuvent être utilisées que sous le mode "Automatique/Bloc suivant". Tout autre mode de fonctionnement (Intro‐ duction manuelle de données, Bloc séparé, Pas séparé ou Bloc de pro‐ gramme) entraînera une erreur d'exécution. ● Si des interpolateurs de freinage sont utilisés avec des courses de dépla‐ cement très courtes, il se peut que des dépassements d'accélération se produisent et engendrent une servoerreur. Veuillez en conséquence tenir compte de la dynamique maximale pos‐ sible de la machine lors de l'élaboration du programme pièce. ● Lorsque les interpolateurs de la marche constante et d'accélération sont actifs, l'utilisation des fonctions auxiliaires ou des fonctions comme par ex. "Arrêt précis" n'est pas permise (peut engendrer des chutes de vitesse). Parmi les fonctions interdites sont par ex. : G0, G4, "KvProg", G63, G33, G61, "G1(IPS)", G75, "G74(HOME)", "HsBlkSwitch", "WriteId". 6.53 Prise d'origine Axe modulo (axe linéaire infini) "LinModZp, LMZ" 6.53.1 Effet Avec "LinModZp", il est possible de définir la position actuelle d'un axe linéaire infini en tant que nouveau point origine du programme. Ensuite, l'affichage des axes saute sur la valeur "0". Le décalage produit reste enregistré en interne de la commande et sera additionné à toutes les coordon‐ nées indiquées ultérieurement de l'axe correspondant. Après la remise à zéro, il sera de nouveau soustrait de la valeur d'affichage et supprimé. En ce qui concerne les axes infins, voir les paramètres machine 1003 00004. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 243/550 Fonctions CN avec syntaxe de langage standard 6.53.2 Programmation Syntaxe : LinModZp(<LinModAxis>) Format abrégé : LMZ(..) avec Index de l'axe du système, nom de l'axe du système ou nom de l'axe du canal de l'axe modulo à remettre à zéro. <LinModAxis> Fig.6-65: Syntaxe LinModZp (LMZ) Exemple : N50 LMZ(1) X20 Définir la position actuelle de l'axe linéaire infini avec l'index d'axe du système1 en tant que nouveau point d'origine du programme. Dépla‐ cer ensuite à la position X20. N90 LMZ(X) X43.7 Définir la position actuelle de l'axe X en tant que nouveau point d'origine du programme. Dépla‐ cer ensuite l'axe X sur la position X43.7. Fig.6-66: Particularités et restrictions : Exemple LinModZp (LMZ) ● Les définitions de position supérieures à la valeur modulo ne sont pas permises. ● Les définitions de position négatives sont possibles tant que la valeur est inférieure à la valeur modulo. La valeur modulo est définie dans l'entraînement via le paramètre SERCOS S-0-0103 pendant la montée en régime de SERCOS. Une valeur modulo modifiée ne prend effet qu'après la nouvelle montée en régime SERCOS ! 6.54 Changement de broche principale "MainSp, MSP" 6.54.1 Effet Définit la broche indiquée en tant que broche principale dans le canal actuel en dérogation du réglage en MP 7020-00010. De cette manière, il est possible de définir dynamiquement dans le programme pièce sur quelle broche les fonctions ● G33 (Filetage) ● G95 (Programmation de l'avance en mm/tour) et ● G4 (Temporisation) doivent prendre effet. 6.54.2 Programmation Syntaxe : MainSp(<Num> ) ou MainSp(<Broche>) Format abrégé : MSP... avec 244/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard <Num> Numéro de la broche (index de broches). Champs de saisie : -1; 1...8. Valeur entière. -1: Broche principale correspondant à MP 7020 00010. <Broche> Fig.6-67: Comme <Num> - ou - nom de la broche (p.ex. S1). Syntaxe MainSp (MSP) 6.55 Aide à la saisie : Fonction miroir "Mirror(...), MIR(...)" 6.55.1 Effet La fonction "miroir" compte parmi les aides à la saisie. La commande traite un contour programmé ou p.ex. un gabarit de perçage en l'inversant symétriquement. La fonction miroir se rapporte toujours au point d'inversion miroir actuel (voir la fonction PoleSet chap. 6.71 "Définir le point de miroir/de rotation PoleSet, PLS" à la page 270). Si celui-ci n'a pas été programmé explicitement, le point d'origine actuel du programme sert de point d'inversement miroir. La fonction miroir est une aide à la saisie et ne modifie donc pas le système de coordonnées actuel du programme. Une aide à la saisie n'est en fait qu'une autre possibilité pour la saisie des coordonnées de programme. La fonction miroir peut également être utilisée conjointement avec la mise à l'échelle et la rotation. Pour cette fonction s'applique ce qui suit : 6.55.2 ● Le fonction agit de façon modale. Elle reste valide jusqu'à ce qu'elle soit désactivée. ● Elle peut être programmée dans un même bloc avec d'autres conditions de course et fonctions auxiliaires. Programmation Syntaxe : Mirror(<Axe 1>1{ ,<Axe n>1}) Activer la fonction miroir pour les axes indiqués. Mirror(<Axe 1>0{,<Axe n>0}) Désactiver la fonction miroir pour les axes indiqués. Mirror(0) ou Mirror() Désactiver la fonction miroir pour tous les axes du ca‐ nal. Les positions d'axe atteintes sont maintenues jus‐ qu'à ce qu'elles soient reprogrammées. Format abrégé : MIR(..) avec <Axe1>, <Axes> Adresses des axes (p.ex. X) en combinaison avec la valeur "1" activent la fonction : tous les ordres de course programmés des axes correspondants (par ex. X100) sont multipliés en interne avec la valeur "-1". La fonction miroir ne devient active qu'avec l'information de déplacement suivante. Fig.6-68: Syntaxe Mirror(...), MIR(...) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 245/550 Fonctions CN avec syntaxe de langage standard Particularités et restrictions : ● La fonction tient compte des paramètres d'interpolation en interpolation circulaire. ● Elle influence le décalage programmable des segments de contour (Shift). Voir chap. 6.91 "Décalage programmé du contour Shift, SHT" à la page 295. ● Elle n'influence pas : – les décalages d'origine (G54-G59.5 ; voir chap. 5.2 "Codes G" à la page 90), – les décalages des coordonnées du programme (Trans ou ATrans ; voir chap. 6.125 "Décalage des coordonnées du programme Trans, TRS, Décalage additif des coordonnées du programme ATrans, ATR" à la page 328), – l'initialisation de la position de programme ("SetPos" ; voir chap. 6.90 "Fixer la position du programme SetPos, SPS" à la page 294), – l'approche des coordonnées du point de référence (G74 ; voir chap. 5.2 "Codes G" à la page 90), – l'approche de la position fixe des axes machine (G76 ; voir chap. 5.2 "Codes G" à la page 90), – les valeurs de correction pour le rayon de la fraise et la longueur de l'outil. Exemples de la fonction miroir : Fig.6-69: Inversion d'un vecteur d'orienta‐ tion : Exemples de la fonction miroir Un vecteur d'orientation est inversé exclusivement de manière composant par composant à l'aide de la syntaxe de fonction suivante. Une mise à l'échelle éventuellement active ou un point de miroir/de rotation n'ont aucune influence sur le résultat. 246/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Syntaxe : Mirror(O(<Sx> ,<Sy> ,<Sz>)) Activer/désactiver la fonction miroir pour les composan‐ tes indiquées d'un vecteur d'orientation. Format abrégé : MIR(..) avec <Sx>,<Sy>,<Sz> Facteurs miroir pour les composantes de vecteur indi‐ viduelles. 0: aucune inversion miroir. 1: avec inversion miroir. Fig.6-70: Syntaxe Mirror Pour le vecteur d'orientation s'applique ce qui suit : ● Les coordonnées polaires φ et ϑ ne peuvent pas être inversées. ● La programmation MIR(phi1,theta1) est interdite. 6.56 Calcul modulo pour les axes infinis à déplacement incrémental "Modulo, MOD" 6.56.1 Effet Si les axes infinis sont déplacés de manière incrémentale, le calcul modulo est supprimé dans la commande. Ainsi il est garanti que la course de déplacement réglée est vraiment déplacée. Seules pour les valeurs de consigne de l'entraî‐ nement et les valeurs d'affichage, le calcul module est activé de manière permanente. Pour les valeurs d'axe dans de la commande, le calcul module n'est effectué que lors de la prochaine définition des positions absolues. Si un axe infini est déplacé de manière incrémentale dans la même direction, il atteint après quelque temps la limite interne de la plage de nombres qui peut être visualisée. Ceci est acquitté par la commande avec une erreur de l'inter‐ rupteur fin de course. Si le total des mouvements incrémentaux dépasse cette valeur limite, il est nécessaire que les mémoires internes de l'axe sont remises de manière coor‐ donnée dans la plage modulo. Cette tâche est assumée par la fonction modulo. Fig.6-71: 6.56.2 Plage modulo Programmation Calcul modulo pour tous les axes infinis du canal. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 247/550 Fonctions CN avec syntaxe de langage standard Syntaxe : Modulo Format abrégé : MOD Calcul modulo pour les différents axes infinis du canal : Syntaxe : Modulo(<AN1>{,<AN1>{, ...}}) Format abrégé : MOD(...) avec <ANx> Nom d'axe de l'axe modulo (nom du canal ou nom du système). L'instruction modulo peut être programmée conjointement avec un mouvement de déplacement quelconque dans un même bloc. L'or‐ dre modulo ne mène pas à une chute de vitesse. Exemple : : N030 MOD(A,B) A270 B90 F1000 : 6.57 Grignotage "Nibble, NIB" 6.57.1 Effet Active ou désactive la fonction "Grignotage". Si le grignotage est activé, une course est déclenchée dans les cas suivants : ● à la fin de chaque segment de parcours programmé ou généré par la fonction "NUM" (voir chap. 6.58 "Repartir le bloc de déplacement : Nom‐ bre de parcours partiels NUM" à la page 249) ou "LEN" (voir chap. 6.50 "Repartir le bloc de déplacement : Longueur du parcours partiel LEN" à la page 236), et ● au début du premier segment de parcours, dans la mesure où aucun dé‐ placement a été programmé dans le plan actif ou dans la mesure où le grignotage a été désactivé. Le mouvement de déplacement subséquent n'est démarré qu'une fois la course terminée. Fonctions influençant le temps de déclenchement de la course : ● PtDefault (voir chap. 6.75 "Temps de déclenchement de la course (met‐ tre à a valeur de défaut) PtDefault, PTD" à la page 278) ● PtBlkEnd (voir chap. 6.74 "Temps de déclenchement de la course (point d'arrivée de l'interpolation) PtBlkEnd, PTE" à la page 275) ● PtInpos (voir chap. 6.76 "Temps de déclenchement de la course (fe‐ nêtre Inpos) PtInpos, PTI" à la page 278). 248/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.57.2 Programmation Syntaxe : Nibble(1) ou Activer le grignotage. Nibble Nibble(0) ou Désactiver le grignotage. Nibble() Format abrégé : NIB(..) Fig.6-72: Particularités et restrictions : Exemple : Syntaxe Nibble (NIB) ● Le grignotage doit être validé via MP 8001 00010. ● La programmation de la fonction "NUM" ou "LEN" est impérative. Ainsi, la commande génère automatiquement des parcours partiels à partir de la course de déplacement programmée, aux extrémités de laquelle une course est déclenchée. ● La fonction agit de façon modale, même sur des déplacements program‐ més dans le même bloc. ● Si le découpage-poinconnage est activé (voir chap. 6.78 "Découpagepoinçonnage Punch, PUN" à la page 281), la fonction "Grignotage" est désélectionnée. ● Les blocs qui ne contiennent pas de coordonnées d'axe du plan actif ne déclenchent pas de course. ● Dans la mesure où l'API supprime le déclenchement de la course, le trai‐ tement s'arrête sur la position de déclenchement de la course jusqu'à ce que l'API valide à nouveau le déclenchement de la course. ● G90 est active (Programmation absolue). ● Plan actif : X/Y ● Position actuelle : X=0, Y=0, C=0 : N10 LEN=12 Diviser les blocs de déplacement en parcours partiels de 12 mm au maximum. LEN doit être programmé avant que le grignotage ne soit activé ! N20 C10 Nibble(1) Activer le grignotage. La fonction LEN modale prend ef‐ fet. L'axe C effectue une rotation à 10 degrés. Pas de course, car les axes X et Y ne sont pas pro‐ grammés. N30 X0 Pas de déplacement, car l'axe X est déjà sur la position 0. Course, car l'axe X est situé dans le plan actif. N40 X110 Le bloc de déplacement est divisé en 10 segments de trajectoire égaux de 11 mm. Course aux positions X11, X22, X33 ...X99, X110. Course supplémentaire sur la position X0, car aucun déplacement s'est effectué dans N30. N50 Y30 NUM=3 Masque LEN (N10) avec effet modal pour le bloc actuel. Diviser le bloc de déplacement en 3 segments de tra‐ jectoire égaux. Course à Y10, Y20, Y30. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 249/550 Fonctions CN avec syntaxe de langage standard LEN de N10 est de nouveau actif. N60 Y90 Course à Y42, Y54, Y66, Y78, Y90. N70 X50 Y50 Nibble() Grignotage DÉSACTIVÉ : : déplacement à X=50, Y=50. Fig.6-73: Exemple de grignotage (NIB) 6.58 Repartir le bloc de déplacement : Nombre de parcours partiels "NUM" 6.58.1 Effet Divise le bloc de déplacement programmé en un nombre défini de parcours partiels ayant la même longueur. N'agit qu'en combinaison avec les fonctions "Découpage-poinçon‐ nage" (voir chap. 6.78 "Découpage-poinçonnage Punch, PUN" à la page 281) et "Grignotage" (voir chap. 6.57 "Grignotage Nibble, NIB" à la page 247). 6.58.2 Programmation Syntaxe : NUM=<Valeur> avec <Valeur> Nombre de parcours partiels. Valeur de saisie : valeur entière supérieure à 0. NUM=1 n'entraîne aucune répartition. Fig.6-74: Particularités et restrictions : Syntaxe NUM ● Pour les blocs circulaires divisés, le mouvement s'effectue linéairement de course à course ! ● NUM n'est actif que dans le bloc programmé et masque un LEN actif (voir chap. 6.50 "Repartir le bloc de déplacement : Longueur du parcours par‐ tiel LEN" à la page 236). 250/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard ● Exemple : 6.59 La programmation de NUM n'est possible que si (MP 8001 00010) le dé‐ coupage-poinçonnage/grignotage est validé et actif. Voir exemple, chap. 6.50 "Repartir le bloc de déplacement : Longueur du par‐ cours partiel LEN" à la page 236. Programmation de l'orientation "O(), ROTAX()", "phi, theta, psi" : Généralités Oriente un outil (fraiseuse, perceuse, laser, pince) librement dans l'espace par rapport au système de coordonnées actuel du programme (PCS). Si, outre le mouvement d'orientation de l'outil, le TCP doit égale‐ ment être déplacé, voir également la fonction "Programmation des coordonnées tridimensionnelles" dans le manuel "Description des fonctions". Si un mouvement d'orientation de l'outil sans mouvement simultané du TCP est programmé, l'avance active (F) n'agit que sur le mouvement d'orientation. Le cas échéant, des mouvements de pseudo-coordonnées programmés sont également effectués (mouvements de pseudo-coordonnées : mouvements provoqués par la programmation des positions d'axe directes). Il est alternati‐ vement possible d'effectuer une programmation "Oméga", si G94 est active. Le vecteur d'orientation longe l'axe de symétrie de l'outil et est orienté vers le logement de l'outil. Différents types de programmation d'orientation sont dis‐ ponibles : 6.60 Programmation de l'orientation "O(), ROTAX()", "phi, theta, psi" : Orientation vectorielle 6.60.1 Effet La programmation de l'orientation de l'outil est également possible à l'aide des ● coordonnées d'orientation du vecteur d'orientation (par ex. phi et thêta). Fig.6-75: ● Coordonnées d'orientation du vecteur d'orientation Fonction O(..) avec angles polaires (φ, ϑ) ou composantes cartésiennes (ρx, ρy, ρz) du vecteur d'orientation. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 251/550 Fonctions CN avec syntaxe de langage standard Fig.6-76: ● Fonction O(..) avec angles polaires (φ, ϑ) ou composantes carté‐ siennes (ρx, ρy, ρz) du vecteur d'orientation Fonction ROTAX(..) pour définir un axe de rotation orienté librement dans l'espace, autour duquel on peut déplacer à l'aide de la fonction O(..) le vecteur d'orientation d'un angle défini β. Dans ce cas, la programmation de l'axe de rotation est possible avec des angles polaires (φu, ϑu), ainsi qu'à l'aide des composantes cartésiennes (ux, uu, uz). Fig.6-77: Fonction ROTAX(..) pour définir un axe de rotation orienté libre‐ ment dans l'espace Pour cette fonction s'applique ce qui suit : 6.60.2 ● L'orientation vectorielle ne peut être programmée qu'avec une transfor‐ mation d'axe dont la position 100 est de type = 2. ● Le mouvement d'orientation s'effectue à partir du début jusqu'à la fin de l'orientation programmée sous la forme d'un mouvement de rotation du vecteur d'orientation. ● Appropriée pour les outils à symétrie de révolution. Programmation Syntaxe : 1. Activer le type de transformation d'axe autorisé (position 100 du type = 2) avec "Coord(...)" (voir chap. 6.24 "Sélectionner la transformation d'axe Coord, CRD" à la page 206). 2. Utiliser la syntaxe indiquée ci-dessous. 252/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard {<No>}{<Mouv TCP>}{<phi><φ>} {<thêta><ϑ>} ou {<No>}{<Mouv TCP>}O(<φ>,<ϑ>) ou {<No>}{<Mouv TCP>}O(<ρx>,<ρy>,<ρz>) ou {<No>}{<Mouv TCP>}ROTAX(<φu>,<ϑu>) O(<β>) ou {<No>}{<Mouv TCP>}ROTAX(<ux>,<uy>,<uz>) O(<β>) avec <No> Numéro du bloc. Voir chap. 3.8.2 "Numéros de bloc" à la page 31. <Mouv TCP> Mouvement TCP supplémentaire. Pour la syntaxe, voir le manuel "Description des fonc‐ tions" dans le chapitre "Programmation des coordon‐ nées tridimensionnelles". <phi> Nom d'angle inscrit dans MP 7080 00010[4]. Valeur par défaut : phi <thêta> Nom d'angle inscrit dans MP 7080 00010[5]. Valeur par défaut : thêta <φ>,<ϑ>,<φu>,<ϑu> Valeurs absolues des angles en degrés. Plage de valeurs : 0° ≤ φ < 360°; 0° ≤ ϑ ≤ 180°. Si une autre valeur est programmée en tant que ϑ, elle est automatiquement convertie en l'intervalle indiqué. O(<φ>,<ϑ>) Orientation à l'aide de la fonction O(..) et des angles polaires <φ> et <ϑ> du vecteur d'orientation. O(<ρx>,<ρy>,<ρz>) Orientation à l'aide de la fonction O(..) et des compo‐ santes cartésiennes <ρx> ,<ρy> , <ρz> du vecteur d'orientation dans la programmation absolue. Standardisation automatique à 1. C'est pourquoi les données exemplaires suivantes entraînent une orien‐ tation identique : O(1,2,4), O(2,4,8) ROTAX(<φu>,<ϑu>) Définition de l'axe de rotation à l'aide des angles polai‐ res (φu,ϑu). ROTAX(<ux>,<uy>,<uz>) Définition de l'angle de rotation à l'aide des composan‐ tes cartésiennes <ux> ,<uy> ,<uz> dans la program‐ mation absolue. Standardisation automatique à 1. O(<β>) Indique en degrés l'angle incrémental <β> duquel le vecteur d'orientation doit se déplacer autour de l'axe de rotation. Les valeurs supérieures à 360 degré sont au‐ torisées. Le sens de rotation peut être sélectionné à l'aide des signes +/-. Fig.6-78: Particularités et restrictions : Syntaxe de l'orientation vectorielle L'orientation de départ/d'arrivée du vecteur d'orientation ne doit pas suivre un tracé parallèle ou non-parallèle, sauf pour la programmation de ROTAX(..). Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 253/550 Fonctions CN avec syntaxe de langage standard 6.61 Programmation de l'orientation "O(), ROTAX()", "phi, theta, psi" : Orientation tensorielle 6.61.1 Effet L'influence sur l'orientation de l'outil s'effectue par l'orientation du système de coordonnées complet de l'outil TCS par rapport au PCS actuel. Fig.6-79: ● Orientation tensorielle La programmation est également possible à l'aide – de l'angle d'Euler phi φ, thêta ϑ et psi ψ. Le TCS obtient son orientation voulue par des rotations successives avec les angles d'Euler. – du tenseur d'orientation 3x3 (matrice de rotation qui réoriente le TCS complet autour du TCP). Les composantes de ses vecteurs colonnes (Ox, Oy, Oz) définissent exactement l'orientation TCS et sont pro‐ grammables en tant qu'angles polaires ou composantes cartésien‐ nes. – de la fonction ROTAX(..) servant définir un axe de rotation orienté librement dans l'espace, autour duquel on peut, à l'aide de la fonction O(..), déplacer le tenseur d'orientation d'un angle défini β. Dans ce cas, la programmation de l'axe de rotation est possible avec des angles polaires (φu, ϑu), ainsi qu'à l'aide des composantes car‐ tésiennes (ux, uu, uz). Pour cette fonction s'applique ce qui suit : 6.61.2 ● L'orientation tensorielle ne peut être programmée qu'avec une transfor‐ mation d'axe dont la position 100 est de type = 3. ● Le mouvement d'orientation s'effectue du début jusqu'à la fin de l'orien‐ tation programmée sous la forme d'un mouvement de rotation du tenseur d'orientation. ● N'est adapté que pour des outils sans symétrie de révolution, car, ici, le TCS est relié de façon fixe à l'outil. Programmation Syntaxe : 1. Activer le type de transformation d'axe autorisé (position 100 du type = 3) avec "Coord(...)" (voir chap. 6.24 "Sélectionner la transformation d'axe Coord, CRD" à la page 206). 254/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 2. Utiliser la syntaxe indiquée ci-dessous. {<No>} {<TCP>}{<phi><φ>} {<theta><ϑ>} {<psi><ψ>} ou {<No>} {<TCP>}Ox(<φx>,<ϑx>) Oy(<φy>,<ϑy>) ou {<No>} {<TCP>}Ox(<φx>,<ϑx>) Oz(<φz>,<ϑz>) ou {<No>} {<TCP>}Oy(<φy>,<ϑy>) Oz(<φz>,<ϑz>) ou {<No>} {<TCP>}Ox(<O11>,<O21>,<O31>) Oy(<O12>,<O22>,<O32>) ou {<No>} {<TCP>}Ox(<O11>,<O21>,<O31> ) Oz(<O13>,<O23>,<O33>) ou {<No>} {<TCP>}Oy(<O12>,<O22>,<O32>) Oz(<O13>,<O23>,<O33>) ou {<No>} {<TCP>}ROTAX(<φu>,<ϑu>) O(<β>) ou {<No>} {<TCP>}ROTAX(<ux>,<uy>,<uz>) O(<β>) avec <No> Numéro du bloc. Voir chap. 3.8.2 "Numéros de bloc" à la page 31. <Mouv TCP> Mouvement TCP supplémentaire. Pour la syntaxe, voir le manuel "Description des fonctions" dans le chapitre "Programma‐ tion des coordonnées tridimensionnelles". <phi> Nom d'angle inscrit dans MP 7080 00010[4]. Valeur par défaut : phi <thêta> Nom d'angle inscrit dans MP 7080 00010[5]. Valeur par défaut : thêta <psi> Nom d'angle inscrit dans MP 7080 00010[6]. Valeur par défaut : psi <φ>,<ϑ>,<ψ> Angles d'Euler absolus en degrés. La programmation AC/IC est autorisée. Plage de valeurs : 0° ≤ φ < 360°; 0° ≤ ϑ ≤ 180°; 0° ≤ ψ ≤ 360°. Les valeurs en dehors de ces limites sont con‐ verties automatiquement en l'intervalle corres‐ pondant. <φ..>,<ϑ..> Valeurs absolues des angles en degrés. Plage de valeurs : 0° ≤ φ.. < 360°; 0° ≤ ϑ.. ≤180°. Si une valeur en dehors de la plage de valeurs est programmée en tant que ϑ.., elle est auto‐ matiquement convertie en l'intervalle indiqué. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 255/550 Fonctions CN avec syntaxe de langage standard Ox(<O11> ,<O21>,<O31>) Oy(<O12>,<O22>,<O32>) Oz(<O13>,<O23>,<O33>) Ox(<φx>,<ϑx>) Oy(<φy>,<ϑy>) Oz(<φz>,<ϑz>) Orientation à l'aide de la fonction Ox(..), Oy(..), Oz(..). Ox(..) définit par exemple la direction de la co‐ ordonnée x du TCS dans le système de coor‐ données de référence. Ceci est également applicable pour Oy(..) et Oz(..). La direction peut être définie soit à l'aide des angles polaires correspondants <φ..> et <ϑ..>, soit à l'aide des composantes cartésiennes des vecteurs colonnes du tenseur d'orientation. Seule la saisie des cotes absolues est autori‐ sée. Les valeurs des composantes des vecteurs co‐ lonnes (o..) sont automatiquement normali‐ sées à 1. ROTAX(<φu>,<ϑu>) Définition de l'axe de rotation à l'aide des an‐ gles polaires (φu,ϑu). ROTAX(<ux>,<uy>,<uz>) Définition de l'angle de rotation à l'aide des composantes cartésiennes <ux> , <uy>, <uz> dans la programmation absolue. Standardisa‐ tion automatique à 1. O(<β>) Indique en degrés l'angle incrémental <β> du‐ quel le tenseur d'orientation doit se déplacer autour de l'axe de rotation. Les valeurs supérieures à 360 degré sont au‐ torisées. Le sens de rotation peut être sélectionné à l'ai‐ de des signes +/-. Fig.6-80: Exemple : Syntaxe d'orientation tensorielle Exemple de paramétrage : MP 1030 00110[1] pour transformation d'axe 2 : 3333301 MP 7080 00010[1] : x MP 7080 00010[2] : y MP 7080 00010[3] : z MP 7080 00010[4] : phi MP 7080 00010[5] : thêta MP 7080 00010[6] : psi N100 G1 X10 Y20 Z30 Ox(1,0,0) Oy(0,0.707,-0.707) ou N100 G1 X10 Y20 Z30 Ox(1,0,0) Oz(0,0.707,0.707) ou N100 G1 X10 Y20 Z30 Oy(0,0.707,-0.707) Oz(0,0.707,0.707) 256/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Fig.6-81: Particularités et restrictions : ● Exemple de l'orientation tensorielle Le mouvement d'orientation s'effectue – sauf pour la programmation de ROTAX(..) – toujours par le chemin le plus court vers l'orientation de fin. Pour ROTAX(..), le sens de rotation dépend du signe +/- de <β>. ● Pour la création univoque du tenseur d'orientation, les restrictions suivan‐ tes sont nécessaires : En cas de ϑ = 0°: la somme de φ et ψ est requise pour la définition d'une orientation. En cas de ϑ = 180°: la différence de φ et ψ est nécessaire pour la définition d'une orientation. ● Si, lors de la programmation des vecteurs colonnes de tenseur deux vec‐ teurs colonnes sont parallèles ou antiparallèles, le tenseur d'orientation ne peut pas être calculé. Une erreur d'exécution est signalée. 6.62 Programmation de l'orientation "O(), ROTAX()", "phi, thêta, psi" : Mouvement d'orientation linéaire avec programmation d'axes 6.62.1 Effet N'est valide que pour la transformation d'axe du type 3032101. Pour la programmation de l'orientation d'outil, les valeurs de position des deux axes rotatifs agissant sur l'outil (par ex. B et C) sont programmables. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 257/550 Fonctions CN avec syntaxe de langage standard Fig.6-82: Mouvement d'orientation linéaire avec programmation d'axes Pour cette fonction s'applique ce qui suit : 6.62.2 ● Seules sont permises les cinématiques d'axe pour lesquelles les valeurs de position des 2 axes rotatifs coïncident une à une avec les coordonnées du vecteur d'orientation (par ex. phi et thêta). ● Le mouvement d'orientation est effectué de manière linéaire par les axes rotatifs. ● Adaptée aux outils à symétrie de révolution. Programmation Syntaxe : 1. Activer le type de transformation d'axe 3032101 avec "Coord(...)" (voir chap. 6.24 "Sélectionner la transformation d'axe Coord, CRD" à la page 206). 2. Utiliser la syntaxe indiquée ci-dessous. {<No>}{<Mouv TCP>}{<B><Pos>}{<C><Pos>} avec <No> Numéro du bloc. Voir chap. 3.8.2 "Numéros de bloc" à la page 31. <Mouv TCP> Mouvement TCP supplémentaire. Pour la syntaxe, voir le manuel "Description des fonc‐ tions" dans le chapitre "Programmation des coordon‐ nées tridimensionnelles". <B>,<C> Adresses d'axe des axes ronds se trouvant sur l'outil. <Pos> Position d'axe absolue en degrés. Fig.6-83: Exemple : Syntaxe "Mouvement d'orientation linéaire avec programmation d'axes" Exemple de paramétrage : MP 1030 00110[1] pour transformation d'axe 2:3032101 MP 7080 00010[1] : x MP 7080 00010[2] : y MP 7080 00010[3] : z 258/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard N10 G1 X0 Y0 Z0 B0 C0 Programmation de noms logiques/physi‐ ques des axes. N20 Coord(2) Activer la transformation d'axe 2. Les éléments suivants sont maintenant programmables : les coordonnées linéaires x, y, z et les coordonnées d'orientation B et C. N30 x100 y200 z300 B20 C60 Interpolation des coordonnées linéaires avec mouvement d'orientation supplémen‐ taire. N40 G2 x.. y.. z.. I.. J.. B20 C60 Mouvement hélicoïdal TCP avec mouve‐ ment d'orientation supplémentaire. N50 G1 B20 C10 Pur mouvement d'orientation. TCP reste constant. N60 Coord(0) Transformation d'axe DÉSACTIVÉE. : Particularités et restrictions : ● Le type de transformation d'axe actif 3032101 est nécessaire. ● Grâce à une logique de recherche spéciale, les rotations des axes ronds supérieures à 180 degrés sont évitées. 6.63 Programmation de l'orientation "O(), ROTAX()", "phi, thêta, psi" : Mouvement d'orientation linéaire avec programmation de coordonnées 6.63.1 Effet N'est valide que pour la transformation d'axe du type 3232101. La programmation de l'orientation de l'outil est également à l'aide des : ● coordonnées d'orientation du vecteur d'orientation (par ex. phi et thêta). Fig.6-84: ● Coordonnées d'orientation du vecteur d'orientation Fonction O(..) avec angles polaires (φ, ϑ) ou composantes cartésiennes (ρx, ρy, ρz) du vecteur d'orientation. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 259/550 Fonctions CN avec syntaxe de langage standard Fig.6-85: 6.63.2 Fonction O(..) avec angles polaires (φ, ϑ) ou composantes carté‐ siennes (ρx, ρy, ρz) du vecteur d'orientation ● La cinématique d'axe servant de base peut être librement choisi. ● Appropriée pour les outils à symétrie de révolution. ● Le mouvement d'orientation se fait en tant qu'interpolation linéaire en φ et ϑ, c'est-à-dire en tant que droite dans un plan imaginaire φ/ϑ. Programmation Syntaxe : 1. Activer le type de transformation d'axe 3232101 avec "Coord(...)" (voir chap. 6.24 "Sélectionner la transformation d'axe Coord, CRD" à la page 206). 2. Utiliser la syntaxe indiquée ci-dessous. {<No>}{<Mouv TCP>}{<phi><φ>} {<thêta><ϑ>} ou {<No>}{<Mouv TCP>}O(<φ>,<ϑ>) ou {<No>}{<Mouv TCP>}{O(<ρx>,<ρy>,<ρz>) avec <No> Numéro de bloc. Voir chap. 3.8.2 "Numéros de bloc" à la page 31. <Mouv TCP> Mouvement TCP supplémentaire. Pour la syntaxe, voir le manuel "Description des fonc‐ tions" dans le chapitre "Programmation des coordon‐ nées tridimensionnelles". <phi> Nom d'angle inscrit dans MP 7080 00010[4]. Valeur par défaut : phi <thêta> Nom d'angle inscrit dans MP 7080 00010[5]. Valeur par défaut : thêta <φ>,<ϑ> Valeurs absolues des angles en degrés. Plage de valeurs : 0° ≤ φ < 360°; 0° ≤ ϑ ≤ 180° 260/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard O( <φ> ,<ϑ> ) Orientation à l'aide de la fonction O(..) et des angles polaires <φ> et <ϑ> du vecteur d'orientation. O(<ρx> , <ρy> , <ρz> ) Orientation à l'aide de la fonction O(..) et des compo‐ santes cartésiennes <ρx>, <ρy>, <ρz> du vecteur d'orientation dans la programmation absolue. Standardisation automatique à 1. C'est pourquoi les données exemplaires suivantes entraînent une orien‐ tation identique : O(1,2,4), O(2,4,8) Fig.6-86: Exemple : Syntaxe "Mouvement d'orientation linéaire avec programmation de co‐ ordonnées" Exemple de paramétrage : MP 1030 00110[1] pour transformation d'axe 2 : 3232101 MP 7080 00010[1] : x MP 7080 00010[2] : y MP 7080 00010[3] : z MP 7080 00010[4] : phi MP 7080 00010[5] : thêta N10 G1 X0 Y0 Z0 B0 C0 Programmation de noms logiques/physi‐ ques des axes. N20 Coord(2) Activer la transformation d'axe 2. Les éléments suivants sont programma‐ bles maintenant : les coordonnées linéai‐ res x, y, z et les coordonnées d'orientation phi, thêta. Particularités et restrictions : N30 x1 y2 z3 phi5 thêta5 Interpolation des coordonnées linéaires avec mouvement d'orientation supplémen‐ taire. N40 Coord(0) Transformation d'axe DÉSACTIVÉE. ● Le type de transformation d'axe actif 3232101 est nécessaire. ● Grâce à une logique de recherche spéciale, les rotations des axes ronds supérieures à 180 degrés sont évitées. ● La programmation "ROTAX(... | O(<β>)" n'est pas possible. 6.64 Avance 100% "OvrDis, OVD", "OvrEna, OVE" 6.64.1 Effet Influence, avec l'assistance du programme, l'effet du potentiomètre d'avance du canal (qCh_Override_xy) pour l'avance et l'avance rapide. Ces fonctions agissent en modes "Introduction manuelle de données" et "Exé‐ cution". Les axes asynchrones ne sont pas affectés de la fonction OVD/OVE. 6.64.2 Programmation Syntaxe : OvrDis Potentiomètre d'avance DÉSACTIVÉ. L'avance est fixée sur 100% de la valeur programmée, indépendamment du potentiomètre d'avance. Format abrégé : OVD Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 261/550 Fonctions CN avec syntaxe de langage standard Potentiomètre d'avance ACTIVÉ. OvrEna L'avance dépend de la position du potentiomètre d'avance. Format abrégé : OVE Fig.6-87: Syntaxe OvrDis (OVD) et OvrEna (OVE) Pour cette fonction s'applique ce qui suit : Exemple : ● Ces deux fonctions sont modales et se révoquent réciproquement. ● L'état de mise en service peut être défini à l'aide des paramètres machine. ● Les deux fonctions peuvent également être programmées avec d'autres conditions de course dans le même bloc. ● L'effet de l'OVERRIDE pour les axes synchrones peut être influencé de manière spécifique à l'axe via le signal d'interface "qAx_Override_100". : Le potentiomètre d'avance est sur 100%. N40 OVD G1 X5 Z-2 F200 S100 M4 Désactiver le potentiomètre d'avance. : Passer le potentiomètre d'avance à 40%, l'avance est maintenue à 100%. N80 OVE X100 Y50 Activer le potentiomètre d'avance. L'avance passe à 40 %. 6.65 Modifier l'accélération de trajectoire "PathAcc, PAC" 6.65.1 Effet Réduit les limites supérieures dans le programme pièce pour ● l'accélération de trajectoire et ● l'accélération de trajectoire. Les deux valeurs d'accélération sont préréglées à l'aide des paramètres ma‐ chine et peuvent être commutées de manière séparée ou couplée dans le programme pièce. L'accélération de trajectoire programmée ou préréglée peut être li‐ mitée par les accélérations de trajectoire maximales des axes intéressés à la trajectoire. 6.65.2 Programmation Syntaxe : PathAcc (ACC<Valeur>) Paramétrage commun de l'accélération de trajectoire et de l'accélération de freinage de trajectoire. PathAcc({UP<Valeur1>,} Réglage séparé de l'accélération de trajectoire et de l'accélération de freinage de trajectoire. {DOWN<Valeur2>}) PathAcc() ou PathAcc(0) Réactiver les valeurs d'accélération de MP 7030 00210 et 7030 00220. Format abrégé : PAC(..) avec <Valeur> Valeur d'accélération. En fonction de l'unité de mesure (G71/G70), la commande interprète la valeur program‐ mée en "1000 pouces/s2" ou en "m/s2". 262/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard <Valeur1> Valeur pour l'accélération de trajectoire. Pour le reste voir <Valeur>. <Valeur2> Valeur pour l'accélération de freinage sur trajectoire. Pour le reste voir <Valeur>. Fig.6-88: Particularités et restrictions : Exemple : Syntaxe PathAcc (PAC) ● Les valeurs d'accélération maximales programmables sont toujours limi‐ tées par les valeurs des paramètres machine. ● Nous conseillons de programmer cette fonction dans un bloc séparé. N30 G71 Activer la programmation métrique. N40 PAC(UP1.5) Régler l'accélération de trajectoire sur 1,5 m/s2. : Régler l'accélération de trajectoire et l'ac‐ célération de freinage de trajectoire à 5 m/ s2. N140 PAC(ACC5) : Régler l'accélération de trajectoire sur 3,5 m/s2, l'accélération de freinage de tra‐ jectoire sur 2 m/s2. N200 PAC(UP3.5,DOWN2) : Mettre les valeurs d'accélération à nou‐ veau sur le réglage des paramètres ma‐ chine. N240 PAC() : 6.66 Limiter l'accélération radiale maximale "RadialAcc, RAC" 6.66.1 Effet Réduit les splines et arcs de cercle pour l'avance sur trajectoire de manière que l'accélération radiale indiquée n'est pas dépassée dans le système de coor‐ données de la pièce à usiner (WCS). 6.66.2 Programmation La limitation de l'accélération radiale est désactivée après la montée en régime de la commande. Syntaxe : RadialAcc (<Valeur>) Paramétrage de l'accélération radiale maximale RadialAcc(0) Annuler la limitation de l'accélération radiale. Format abrégé : RAC(..) avec <Valeur> Fig.6-89: Exemple : Valeur d'accélération. En fonction de l'unité de mesure (G71/G70), la commande interprète la valeur program‐ mée en "1000 pouces/s2" ou en "m/s2". Syntaxe RadialAcc (RAC) N20 RAC(0.1) ;limiter l'accélération radiale à 0,1 m/s2 be‐ grenzen. N30 G1 G8 G90 G94 F5000 ;vitesse sur trajectoire maximale de 5000 mm/min. : N50 G3 Y20 R10 ;Vmax= 1897 mm/min (Vmax=sqrt(RAC*R10)). Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 263/550 Fonctions CN avec syntaxe de langage standard ;Vmax= 1341 mm/min (Vmax=sqrt(RAC*R5)). N60 G2 Y30 R5 : ;désactiver la limitation de l'accélération radiale. N100 RAC(0) Particularités et restrictions : ● Pour les splines, la courbure maximale est déterminée dans le cadre des échantillons au début, au centre et à la fin du bloc. ● La réduction est effectuée pour toute la trajectoire spline ou circulaire sous considération de toutes les coordonnées influençant l'avance. ● L'avance ne peut qu'être réduite. Toutes les autres limitations d'avance par les paramètres machine ou un programme pièce sont toujours effica‐ ces. 6.67 Sortie à grande vitesse, dépendant de la position "PosDepH‐ SOut, PHS" 6.67.1 Effet Influence l'état d'une sortie à grande vitesse à l'aide d'un mouvement de dé‐ placement programmé. Dés que la consigne de position CN a atteint une valeur programmable par rapport au début ou à la fin du bloc actuel, la sortie à grande vitesse est initia‐ lisée ou remise à zéro en fonction de la programmation. Il est possible de programmer pour combien de temps après l'apparition de l'événement spécifique la sortie doit rester initialisée. Paramétrage des sorties à grande vitesse disponibles : via MP 4075 00102. 6.67.2 Programmation Syntaxe : PosDepHSOut(<Mode>{,{<Distance>}{,<Durée>}}) Format abrégé : PHS(..) avec <Mode> Mode d'action voulu de la fonction. Valeurs de saisie : 0, 1 ou -1 0: Enregistre via la <Distance> et/ou la <Durée> les don‐ nées programmées de façon modale. L'état actuel de la sortie à grande vitesse n'est pas modifié dans ce cas. 1: Enregistre via la <Distance> et/ou la <Durée> les don‐ nées programmées de façon modale et paramètre la sortie à grande vitesse. Pour les paramètres non pro‐ grammés, les valeurs des données modales pertinen‐ tes sont en vigueur. -1: Remet à zéro la sortie à grande distance. Une <Distan‐ ce> éventuellement programmée n'agit sur ce bloc que de manière locale. Une <Durée> éventuellement pro‐ grammée est ignorée. 264/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard <Distance> Distance par rapport au début/à la fin du bloc qui doit déclencher l'initialisation du signal lorsqu'il/elle est at‐ teint(e) (en mm ou pouces). Valeur par défaut : 0 0: à la fin du bloc. supérieure à 0 : distance par rapport au début du bloc. inférieure à 0 : distance par rapport à la fin du bloc. <Durée> Durée maximale de fonctionnement de la sortie à gran‐ de vitesse (en ms). Plage de valeurs : 0.5 ... 10000.0 Les valeurs programmées sont arrondies en interne au prochain multiple entier supérieur du temps de cycle CN. Fig.6-90: Exemples : Syntaxe PosDepHSOut (PHS) : N05 G71 N10 PHS(0,-1.2,40) Configurer la fonction. Lors d'un appel suivant via la syntaxe PHS(1), la sortie à grande vitesse est initiali‐ sée environ 1,2 mm avant l'atteinte du point d'arrivée pour une durée d'environ 40 ms. : : : : N210 G1 G91 F1000 N220 X10 Y23 PHS(1) : Régler la sortie à grande vitesse conformément à la configuration en N10. : N330 X10 PHS(1,0.1,900) : N350 X20 PHS(-1,-0.3) : Particularités et restrictions : Régler la sortie à grande vitesse à 0,1 mm après la position de départ pour une durée maximale de 900 ms. Remettre la sortie à grande vitesse à zéro à une distance de 0,3 mm avant la position d'arrivée. ● Une sortie à grande vitesse est supportée par tout canal. ● La fonction n'agit que sur un mouvement de déplacement programmé dans le même bloc. ● Une sortie à grande vitesse initialisée n'est remise à zéro qu'une fois la durée de fonctionnement écoulée. La remise à zéro du système n'affecte pas cet instant. ● <Distance> se rapporte toujours à la consigne de position actuelle du point de vue de la CN. Les temporisations dues au système (provoquées par ex. par les fonctions d'entraînement ou la poursuite d'axe) ne sont pas prises en compte dans ce cas. ● Si, lors d'une durée de fonctionnement se déroulant, un nouvel ordre PHS est reçu, la CN supprime l'ordre encore actif et exécute le nouvel ordre. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 265/550 Fonctions CN avec syntaxe de langage standard Si, en cas de deux ordres PHS consécutifs, aucun changement de signal n'a lieu sur la sortie à grande vitesse, en règle générale, le nouvel ordre ne peut pas être reconnu par le matériel informatique externe. 6.68 Activer les tableaux de positionnement "PmTSel, PMS" 6.68.1 Effet Active les tableaux de positionnement (tableaux de correction du positionne‐ ment "Plan incliné"). Ces tableaux de correction sont archivés sous forme de fichiers XML dans le système de fichiers de la commande. 6.68.2 Programmation Syntaxe : PmTSel({<Chemin>}<Nom du fichier>) Format abrégé : PMS(..) avec <Chemin> Indication optionnelle du chemin pour le répertoire dans lequel <Nom du fichier> est enregistré. Si aucun chemin n'est indiqué, la recherche est effec‐ tuée sous le chemin "/database". Si <Nom de fichier> ne peut y être trouvé, la commande utilise le chemin de recherche pour sous-programmes afin de rechercher <Nom du fichier> également dans d'autres répertoires. <Nom du fichier> Nom du fichier du tableau de positionnement avec ex‐ tension du fichier incluse. Les tableaux ayant des noms standard (PM <Numé‐ ro>.pmt) peuvent être activés directement via le numé‐ ro, p.ex. PmTSel(3) active le tableau PM3.pmt. Fig.6-91: Syntaxe PmTSel (PMS) Pour de plus amples informations relatives à la création et l'édition des tableaux de positionnement, veuillez consulter le mode d'em‐ ploi de la commande ! 6.69 Programmation en coordonnées polaires : Définir le pôle "Po‐ larPol, POP" 6.69.1 Effet ● Définit l'origine du système de coordonnées polaires par rapport au plan actif du système de coordonnées actif du programme. ● Initialise l'angle polaire 1 pour la programmation des coordonnées polai‐ res (adresse standard : A ; paramétrable dans MP 8005 00001) sur 0 degré. ● Initialise l'angle polaire 2 pour la programmation des coordonnées polai‐ res (adresse standard : B ; paramétrable dans MP 8005 00002) sur 90 degrés. 266/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.69.2 Programmation Syntaxe : PolarPol(<ValeurHK>,<ValeurNK>) Définir le pôle. PolarPol(ACTPOS) Mettre le pôle sur la position actuelle. PolarPol() ou Mettre le pôle sur la coordonnée 0,0. PolarPol(0) Format abrégé : POP(..) avec <ValeurHK> Valeur du pôle pour la coordonnée principale. <ValeurNK> Valeur du pôle pour la coordonnée secondaire. Fig.6-92: Particularités et restrictions : Exemple : Syntaxe PolarPol (POP) ● Si toutefois "PolarPol" n'est pas utilisé, la CN se sert de l'origine du sys‐ tème de coordonnées actif du programme en tant que pôle. ● Un pôle programmé ne reste valide pour le plan actuel que jusqu'au pro‐ chain changement de plan (voir chap. 5.2.14 "Changement de plan G17, G18, G19" à la page 112). : N10 G18 : N30 G0 X10 Z25 : N40 POP(ACTPOS) : 6.70 Commutation au plan ZX avec la coordonnée principale Z et la coordonnée secondaire X. Mouvement de positionnement en avance rapide sur les coordonnées cartésiennes X10 et Z25. Pour la définition du pôle, les valeurs de position ac‐ tuelles sont reprises (ValeurHK=25 ValeurNK=10). Programmer les coordonnées polaires L'IndraMotion MTX permet la programmation de coordonnées polaires tant le plan (2D) que dans l'espace (3D). Le point d'arrivée voulu est indiqué à l'aide de ● la valeur du rayon (distance du point cible par rapport au pôle), ● l'angle polaire 1 et ● l'angle polaire 2. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 267/550 Fonctions CN avec syntaxe de langage standard Fig.6-93: Exemple : Coordonnées polaires sur le plan, G17 étant active Valeur du rayon : La programmation s'effectue toujours à l'aide d'une adresse d'axe du plan de travail actuel (par ex. "X" ou "Y", si G17 est active). Cette coordonnée pro‐ grammée est également désignée "Coordonnée de rayon". Elle indique, lors de la programmation absolue, la distance entre le point cible et le pôle et, lors d'une programmation incrémentale, la distance entre le point cible et le point de départ. Si les deux adresses d'axe possibles sont programmées dans un même bloc, une erreur d'exécution est générée. Angle polaire 1 : ● Il est normalement programmé en tant qu'adresse "A"et est toujours situé dans le plan de travail actuel. ● L'angle polaire programmé 1 se rapporte toujours au dernier axe pro‐ gramme de la coordonnée de rayon. Une valeur positive indique une rotation dans le sens mathématique positif et reste valide jusqu'à ce qu'une nouvelle valeur soit programmée. Si une programmation incrémentale est active, l'angle programmé est calculé de façon incrémentale. ● Lors de l'activation de la programmation en coordonnées polaires avec POL, l'angle polaire 1 est initialisé à la valeur de 0 degré. Angle polaire 2 : ● Il est normalement programmé en tant qu'adresse "B" et décrit, si la pro‐ grammation absolue est active, l'angle entre l'axe de la normale (par rapport au plan de travail actuel) et le vecteur du pôle actuel par rapport au point cible. Il reste valide jusqu'à ce qu'une nouvelle valeur soit pro‐ grammée. Si une programmation incrémentale est active, l'angle programmé est calculé de façon incrémentale. ● Lors de l'activation de la programmation en coordonnées polaires avec POL, l'angle polaire 2 est initialisé à la valeur de 90 degrés. Dans ce cas, le point cible se trouve exactement dans le plan de travail actuel. Les coordonnées polaires n'agissent maintenant qu'au niveau du plan. Toutes les autres coordonnées en dehors du plan de travail sont interprétées de façon cartésienne. Ceci est valable notamment pour les valeurs de coordonnées programmées pour l'axe actuel de la normale ! ● Des "vraies" coordonnées polaires tridimensionnelles (coordonnées sphériques) sont créées, si l'angle polaire 2 devient différent de 90 degrés. 268/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard La programmation des valeurs de coordonnées pour l'axe actuel de la normale génère une erreur d'exécution. Toutes les coordonnées en de‐ hors de l'espace 3D, par contre, peuvent être programmées simultané‐ ment. Comme en cas de 2D, elles sont ici également interprétées de façon cartésienne. ● Si l'angle polaire 2 a 0 degré, la valeur de l'angle polaire 1 n'a aucune importance, puisque le point programmé est situé exactement d'aplomb sur le pôle. Fig.6-94: Exemple : Coordonnées polaires dans l'espace, G17 étant active Les adresses standard pour les angles polaires 1 et 2 peuvent être modifiées via les paramètres machine 8005 0001 et 8005 0002. C'est pourquoi elles peuvent être différentes sur votre installation. Exemples : Programmation absolue en coordonnées polaires N10 G18 Changement de plan. : Ici : Commutation au plan ZX avec la coordonnée prin‐ cipale Z et la coordonnée secondaire X. : N40 POP(25,10) : Définition du pôle dans le plan actuel (ici : avec les co‐ ordonnées cartésiennes Z=25 et X=10). : N50 G1(POL) Z20 A70 : : : Fig.6-95: Mouvement sur trajectoire en coordonnées polaires sui‐ vant P2 (voir fig.) : P2 est défini par la distance absolue par rapport au pôle (ici : 20 mm) et par l'angle polaire 1 (ici : A=70 degrés), en fonction de l'axe de rayon programmé (ici : axe Z). Mouvement sur trajectoire en coordonnées polaires suivant P2 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 269/550 Fonctions CN avec syntaxe de langage standard N60 G1(POL) X20 A90 : Mouvement sur trajectoire en coordonnées polaires sui‐ vant P3 (voir fig.) : : P3 est défini par la distance absolue par rapport au pôle (ici : 20 mm) et par l'angle polaire 1 (ici : A=90 degrés), en fonction de l'axe de rayon programmé (ici : axe X). : La programmation suivante est également possible : : N60 G1(POL)Z20 A180 : ou : N60Z20 A180 : : : : Fig.6-96: Exemple : Mouvement sur trajectoire en coordonnées polaires suivant P3 Programmation incrémentale en coordonnées polaires N10 G17 G90 G0 X0 Y0 Position de départ : P0 N20 G1(POL) X200 A0 P1 N30 G91 Y200 A30 P2 N40 A60 P3 N50 A60 P4 N60 A60 P5 N70 A60 P6 N80 A60 P7 N90 X0 P0 270/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard N100 M30 Fig.6-97: Programmation incrémentale en coordonnées polaires 6.71 Définir le point de miroir/de rotation "PoleSet, PLS" 6.71.1 Effet Cette fonction définit la position absolue du pôle pour les aides à la saisie : miroir, mise à l'échelle et rotation. Le pôle défini est alors le point de repère de ces aides à la saisie et représente donc le point de miroir/point de rotation. La fonction n'est pas requise, si la fonction miroir ou la rotation doit être effectuée par rapport à l'origine du programme. Pour cette fonction s'applique ce qui suit : 6.71.2 ● PoleSet est une fonction modale. La position du pôle se rapporte au sys‐ tème de coordonnées actuel du programme et est maintenue jusqu'à ce qu'elle soit remise à zéro sur l'origine des coordonnées du programme ou jusqu'à ce qu'elle soit redéfinie. ● La fonction n'entraîne aucun déplacement des axes. ● La fonction peut être programmée avec d'autres conditions de course et fonctions auxiliaires dans le même bloc. ● Le pôle programmé se rapporte aux fonctions miroir (Mirror), mise à l'échelle (Scale) et rotation (Rotate). Programmation Syntaxe : PoleSet(<Coordonnées>) Mettre le pôle sur les coordonnées indi‐ quées. Les coordonnées indiquées doi‐ vent être séparées par des virgules (par ex. : PoleSet(X5,Y2)). PoleSet(0) ou PoleSet() Format abrégé : PLS(..) Fig.6-98: Syntaxe PoleSet (PLS) Remettre le pôle sur l'origine du système de coordonnées du programme. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 271/550 Fonctions CN avec syntaxe de langage standard Exemple : : N30 PLS(X5,Y2) : N130 PLS() : Particularités et restrictions : Mettre le point de miroir/de rotation sur la position X=5 et Y=2. Remettre le point de miroir/de rotation sur l'origine du système de coordonnées du programme. La position du pôle doit être indiquée de façon absolue, c'est à dire par rapport à l'origine du programme actuel. 6.72 Mode de positionnement pour axes infinis "PosMode, PMD", Mode de positionnement local pour axes infinis "DC", "ACP", "ACN" 6.72.1 Effet Définit dans quel sens doivent tourner les axes du type "infini" lors d'un pro‐ cessus de positionnement. Pour cette fonction s'applique ce qui suit : 6.72.2 ● Contrairement à "PosMode", DC(...), ACP(...) et ACN(...) agissent bloc par bloc et masquent, dans le bloc actuel, le mode de positionnement actif de l'axe programmé concerné. ● Les données de position programmées en relation avec les fonctions DC, ACP ou ACN sont toujours interprétés en tant que valeurs de position absolues. Programmation Syntaxe : PosMode(<Adr><Mode>) Activer le mode de positionnement pour l'axe avec l'adresse <Adr> conformément au <Mode>. Il est pos‐ sible de programmer plusieurs axes dans les parenthè‐ ses. Activer pour les axes rotatifs/infinis non program‐ més dans le canal actuel le mode de positionnement définie dans MP 1003 00005. PosMode() ou Activer le mode de positionnement de tous les axes dans le canal actuel suivant MP 1003 00005. PosMode(0) Format abrégé : PMD(..) <Adr>=DC(<Valeur>) L'axe <Adr> se déplace vers la position absolue <Va‐ leur> sur le chemin le plus court. <Adr>=ACP(<Valeur>) L'axe <Adr> se déplace vers la position absolue <Va‐ leur> dans le sens mathématique positif (voir la remar‐ que ci-dessous). <Adr>=ACN(<Valeur>) L'axe <Adr> se déplace vers la position absolue <Va‐ leur> dans le sens mathématique négatif. avec <Adr> Adresse de l'axe. Les axes du type "infini" sont admissibles. 272/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard <Valeur> Information sur la course pour <Adr>. <Mode> Mode de positionnement. 0 : Aucune logique de positionnement. La direction de déplacement est toujours calculée à partir de la diffé‐ rence entre l'ancienne et la nouvelle position. 1: Chemin le plus court. La course de déplacement maxi‐ male de l'axe ne dépasse pas la moitié de la valeur modulo pertinente. 2 : Suivant le signe +/- programmé : "+" : rotation à droi‐ te ; "-" : rotation à gauche. 3 : Les commutateurs fin de course logiciels actifs (1020 00001/3 et 1020 00002/4) déterminent la zone de déplacement autorisée et la direction possible. La zone de déplacement autorisée s'étend de l'interrupteur fin de course négatif à l'interrupteur fin de course positif. Les zones des interrupteurs fin de course ne deviennent actives qu'après la prise d'origine de l'axe. Les coor‐ données peuvent être indiquées tant dans la plage mo‐ dulo positive que dans la plage modulo négative (20° correspond par ex. à -340°). Le signe des coordonnées ainsi que l'attribut local des coordonnées "DC" sont ignorés. Les attributs "ACP", "ACN" et "IC", par contre, sont observés et mènent à un message d'erreur, si la zone de travail est dépassée. Fig.6-99: Syntaxe PosMode (PMD), DC, ACP et ACN Sens mathématique positif : sens de rotation trigonométrique (in‐ verse aux aiguilles d'une montre) vu d'un axe de coordonnées en direction de l'origine des coordonnées. Exemple : N40 B=ACP(-258) : Indépendamment de "PosMode", l'axe physique dési‐ gné "B" s'approche de la position 258 degrés dans le sens mathématique positif. Le signe +/- est ignoré. : : Particularités et restrictions : N80 PMD(A1,C2) Mode de positionnement de : Axe A : distance la plus courte. : Axe B : selon MP 1003 00005. : Axe C : signe (+/-). ● Exception faite du mode de positionnement "Zone de déplacement limi‐ tée", les commutateurs fin de course logiciels pour axes infinis doivent toujours être masqués. ● La commutation du mode de positionnement pour un axe infini n'est pos‐ sible que si la commutation est validée dans le paramètre MP 1003 00050. ● Il est possible de programmer plusieurs fonctions DC, ACP ou ACN (res‐ pectivement pour des axes différents) dans un même bloc. ● Les fonctions DC, ACP ou ACN ne sont efficaces que pour les axes syn‐ chrones du type "rotatif" ou "infini". Si elles sont utilisées en relation avec d'autres types d'axe, elles sont ignorées par la commande. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 273/550 Fonctions CN avec syntaxe de langage standard ● Les signes négatifs dans les données de position des fonctions DC, ACP ou ACN sont ignorés. ● Pour le mode de positionnement "Course limitée" est valable ce que suit : Les angles finaux négatifs sont toujours indiqués dans la plage modulo positive (0..360°). L'attribut de coordonnée DC "Course la plus courte" est ignoré. Au lieu de cela, la commande choisit la "Course autorisée" avec ajustement auto‐ matique de la direction. Les positionnements de direction par signe, attributs de coordonnée ou incréments ((+/-, ACP/ACN et G91/IC) ne sont pas ajustés et ne sont ad‐ missibles qu'en sein de la zone du commutateur fin de course. Les mouvements ne sont admissibles qu'en sein d'une rotation complète. 6.73 Programmation de précision "PrecProg, PRP" 6.73.1 Effet Réduit l'avance au niveau des raccords entre des segments de contours et des segments de trajectoire circulaires de façon à ce que la précision prédéfinie soit respectée. La précision exigée peut également être influencée par l'indication de ● l'erreur de contour ou de rayon ε maximale admissible au niveau du rac‐ cord des segments de contour ou des arcs de cercle, ou de ● l'erreur de trajectoire δ maximale admissible (distance à l'arête) ne devant pas être dépassée lors d'un changement de segment. 274/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Fig.6-100: Programmation de précision A la différence de la fonction "Arrêt précis" (G61/G62 ; voir chap. 5.2.24 "Arrêt précis ACTIVÉ/DÉSACTIVÉ G61, G62" à la page 132), cette fonction n'entraîne pas obligatoirement la décélération à v=0 au droit de l'enchaînement des blocs. Voir "Particularités et restrictions :" à la page 275. 6.73.2 Programmation Syntaxe : PrecProg ou Programmation de précision ACTIVÉE. PrecProg(1) Erreur de contour/rayon maximale admissible ε suivant MP 8003 00001. PrecProg(EPS<e>) Programmation de précision ACTIVÉE. Erreur de contour/rayon maximal admissible : <ε>. PrecProg(DIST<d>) Programmation de précision ACTIVÉE. Poursuite de trajectoire maximale admissible : <δ>. Pour segments de trajectoire circulaires : tenir compte de la valeur de MP 8003 00001. PrecProg() ou PrecProg(0) Programmation de précision DÉSACTIVÉE. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 275/550 Fonctions CN avec syntaxe de langage standard Format abrégé : PRP(..) avec <ε> : erreur de contour /rayon maximale admissible en mm ou pouces (en fonction de G70/G71). <δ> : poursuite de trajectoire maximale admissible en mm ou pouces (en fonction de G70/G71). Fig.6-101: Particularités et restrictions : Syntaxe PrecProg (PRP) ● Tous les axes correspondants doivent être réglés avec une dynamique identique. ● Dans la mesure où G8 et G62 ne sont pas actives, une décélération à la vitesse v = 0 est toujours effectuée entre deux blocs différents. ● La programmation de l'arrêt précis n'apporte des résultats sensés que si l'influence de l'accélération et de la poursuite peut être négligée. 6.74 Temps de déclenchement de la course (point d'arrivée de l'in‐ terpolation) "PtBlkEnd, PTE" 6.74.1 Effet Agit en relation avec les fonctions "Découpage-poinçonnage" (voir chap. 6.78 "Découpage-poinçonnage Punch, PUN" à la page 281) et "Grignotage" (voir chap. 6.57 "Grignotage Nibble, NIB" à la page 247). La fonction ● définit pour les axes indiqués l'événement de référence temps "L'interpo‐ lateur CN atteint le point d'arrivée du déplacement" et ● définit le laps de temps entre l'événement de référence temps et le dé‐ clenchement de la course. De cette façon, il est possible de librement décaler le moment de déclenche‐ ment de la course – par rapport à la référence temps. Il y a les possibilités suivantes : ● déclenchement de course anticipé (par ex. afin de compenser un temps d'attente constant spécifique à l'ap‐ plication qui est provoqué par le traitement des signaux) et ● déclenchement de course retardé (par ex. afin d'augmenter la précision du positionnement pour les axes à faible dynamique, où lors du découpage-poiçonnage avec serre-flans). D'autres fonctions influençant le temps de déclenchement de la course : PtBlkEnd (voir chap. 6.74 "Temps de déclenchement de la course (point d'arrivée de l'interpolation) PtBlkEnd, PTE" à la page 275). PtInpos (voir chap. 6.76 "Temps de déclenchement de la course (fenêtre Inpos) PtInpos, PTI" à la page 278). 276/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.74.2 Programmation Syntaxe : PtBlkEnd(<Axe><Temps>{,<Axe><Temps>}...) Format abrégé : PTE(..) avec <Axe> Nom logique de l'axe. <Temps> Laps de temps voulu (en ms) entre l'événement de ré‐ férence temps et le déclenchement de la course. 0: Déclenchement de la course au moment de l'événe‐ ment. Valeur négative : déclenchement de course anticipé Valeur positive : déclenchement de course retardé Fig.6-102: Particularités et restrictions : Exemples : Syntaxe PtBlkEnd (PTE) ● Les fonctions PTD, PTE et PTI sont des fonctions modales qui se révo‐ quent mutuellement. ● Le découpage-poiçonnage ou le grignotage doit être défini dans le para‐ mètre MP 8001 00010. ● Tous les temps programmés sont arrondis suivant la grille du temps de cycle de SERCOS. ● Lors les déplacements auxquels participent plusieurs axes avec des ré‐ férences temps et des temps d'attente différents, l'axe le plus "faible" définit le comportement effectif du déclenchement de la course. Pour cette fonction s'applique ce qui suit : – Les axes avec la référence temps "Fenêtre Inpos" (voir chap. 6.76 "Temps de déclenchement de la course (fenêtre Inpos) PtInpos, PTI" à la page 278) sont "plus faibles" que les axes avec la référence temps "Point d'arrivée de l'interpolation". – À référence temps égale, l'axe ayant le temps d'attente le plus long est considéré comme "le plus faible". ● La fonction PtDefault (voir chap. 6.75 "Temps de déclenchement de la course (mettre à a valeur de défaut) PtDefault, PTD" à la page 278) per‐ met de remettre le déclenchement de la course aux valeurs de défaut pour tous les axes du système. ● Configuration de l'axe : X, Y, C ● Temps de cycle SERCOS : 3 ms Réglage des temps de déclenchement de la course : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 277/550 Fonctions CN avec syntaxe de langage standard : N10 PTE(X-10) Événement de référence temps pour l'axe X : : "L'interpolateur CN atteint le point d'arrivée du dépla‐ cement". : : Déclenchement de course anticipé de 10 ms. N20 PTI(Y10,C2) Événement de référence temps pour les axes Y et C : : "fenêtre Inpos atteinte" : : : (pour la fonction, voir chap. 6.76 "Temps de déclen‐ chement de la course (fenêtre Inpos) PtInpos, PTI" à la page 278). Axe Y : déclenchement de course retardé de 10 ms. Axe C : déclenchement de course retardé de 2 ms. Effet durant le déplacement : : N100 G1 Y20 C10 : : : : Y définit le comportement de déclenchement de la course, puisque, à références de temps égales, un temps d'attente supérieur à été programmé (voir N20). Comme les temps d'attente sont arrondis à la grille des temps de cycle SERCOS, le temps de déclenchement de la course retardé s'élève effectivement à 12 ms. : : N110 X20 C20 : : : : C définit le comportement de déclenchement de la course, puisque les axes avec la référence temps "Fe‐ nêtre Inpos" sont "plus faibles" que les axes avec la référence temps "Point d'arrivée de l'interpolation". Comme les temps d'attente sont arrondis à la grille des temps de cycle SERCOS, le temps de déclenchement de la course retardé s'élève effectivement à 3 ms. : : : N120 X30 : : N130 PTD : : X définit le comportement de déclenchement de la course, puisque seul l'axe X est déplacé. Déclenchement de la course anticipé réel : -9 ms. Initialiser le déclenchement de la course de tous les axes du système conformément à MP 8001 00020 et MP 8001 00021 (pour la fonction, voir chap. 6.75 "Temps de déclen‐ chement de la course (mettre à a valeur de défaut) PtDefault, PTD" à la page 278). 278/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.75 Temps de déclenchement de la course (mettre à a valeur de défaut) "PtDefault, PTD" 6.75.1 Effet Agit en relation avec les fonctions "Découpage-poinçonnage" (voir chap. 6.78 "Découpage-poinçonnage Punch, PUN" à la page 281) et "Grignotage" (voir chap. 6.57 "Grignotage Nibble, NIB" à la page 247). Met le moment du déclenchement de la course pour tous les axes du système aux valeurs définies dans MP 8001 00020 et MP 8001 00021. 6.75.2 Programmation Syntaxe : PtDefault Format abrégé : PTD Particularités et restrictions : Exemple : ● Les fonctions PTD, PTE et PTI sont des fonctions modales qui se révo‐ quent mutuellement. ● Le découpage-poiçonnage ou le grignotage doit être défini dans le para‐ mètre MP 8001 00010. voir chap. 6.74 "Temps de déclenchement de la course (point d'arrivée de l'interpolation) PtBlkEnd, PTE" à la page 275. D'autres fonctions influençant le temps de déclenchement de la course : PtBlkEnd (voir chap. 6.74 "Temps de déclenchement de la course (point d'arrivée de l'interpolation) PtBlkEnd, PTE" à la page 275). PtInpos (voir chap. 6.76 "Temps de déclenchement de la course (fenêtre Inpos) PtInpos, PTI" à la page 278). 6.76 Temps de déclenchement de la course (fenêtre Inpos) "PtIn‐ pos, PTI" 6.76.1 Effet Agit en relation avec les fonctions "Découpage-poinçonnage" (voir chap. 6.78 "Découpage-poinçonnage Punch, PUN" à la page 281) et "Grignotage" (voir chap. 6.57 "Grignotage Nibble, NIB" à la page 247). La fonction ● définit pour les axes indiqués l'événement de référence temps "Fenêtre Inpos atteinte" et ● définit le laps de temps entre l'événement de référence temps et le dé‐ clenchement de la course. De cette façon, il est possible de librement retarder le moment de déclenche‐ ment de la course – par rapport à la référence temps (par ex. afin d'augmenter la précision du positionnement pour les axes à faible dynamique, où lors du découpage-poiçonnage avec serre-flans). Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 279/550 Fonctions CN avec syntaxe de langage standard D'autres fonctions influençant le temps de déclenchement de la course : PtBlkEnd (voir chap. 6.74 "Temps de déclenchement de la course (point d'arrivée de l'interpolation) PtBlkEnd, PTE" à la page 275). PtInpos (voir chap. 6.76 "Temps de déclenchement de la course (fenêtre Inpos) PtInpos, PTI" à la page 278). 6.76.2 Programmation Syntaxe : PtInpos(<Axe><Temps>{,<Axe><Temps>}...) Format abrégé : PTI(..) avec <Axe> Nom logique de l'axe. <Temps> Laps de temps voulu (en ms) entre l'événement de ré‐ férence temps et le déclenchement de la course. Fig.6-103: Particularités et restrictions : ● Les fonctions "PTD", "PTE" et "PTI" sont des fonctions modales qui se révoquent mutuellement. ● Le découpage-poiçonnage ou le grignotage doit être défini dans le para‐ mètre MP 8001 00010. ● Tous les temps programmés sont arrondis suivant la grille du temps de cycle de SERCOS. ● Lors les déplacements auxquels participent plusieurs axes avec des ré‐ férences temps et des temps d'attente différents, l'axe le plus "faible" définit le comportement effectif du déclenchement de la course. Pour cette fonction s'applique ce qui suit : ● Exemple : Syntaxe PtInpos (PTI) – Les axes avec la référence temps "Fenêtre Inpos" (voir chap. 6.76 "Temps de déclenchement de la course (fenêtre Inpos) PtInpos, PTI" à la page 278) sont "plus faibles" que les axes avec la référence temps "Point d'arrivée de l'interpolation". – À référence temps égale, l'axe ayant le temps d'attente le plus long est considéré comme "le plus faible". La fonction "PtDefault" (voir chap. 6.75 "Temps de déclenchement de la course (mettre à a valeur de défaut) PtDefault, PTD" à la page 278) permet de remettre le déclenchement de la course aux valeurs de défaut pour tous les axes du système. voir chap. 6.74 "Temps de déclenchement de la course (point d'arrivée de l'interpolation) PtBlkEnd, PTE" à la page 275. 6.77 Mouvement de déplacement PTP "PtpMove, PTP" 6.77.1 Effet Si une transformation d'axe est active, un mouvement de déplacement PointToPoint (PTP) est effectué, c'est-à-dire le mouvement se fait dans le MCS ou le ACS sans que la transformation d'axe ne soit désactivée. La position d'arrivée programmée peut être paramétrée en WCS, MCS ou ACS. La con‐ version correspondante est réalisée dans la commande. 280/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard De plus amples informations relatives à l'utilisation et au paramé‐ trage du déplacement PTP sont données dans le manuel "Descrip‐ tion des fonctions". 6.77.2 Programmation Syntaxe : PTP(<EndposSys>, <MveSys>) (alternativement : PtpMove ( , ) ) et programmation dans la position d'arrivée en Endpos‐ Sys. avec <EndposSys> Système de coordonnées dans lequel la position d'arri‐ vée est programmée. <MveSys> Fig.6-104: WCS Position d'arrivée program‐ mée en coordonnées de la pièce à usiner. MCS Position d'arrivée program‐ mée en coordonnées de la machine. ACS Position d'arrivée program‐ mée en coordonnées de l'axe. Système de coordonnées dans lequel le mouvement est effectué. MCS Mouvement en coordon‐ nées de la machine. ACS Mouvement en coordon‐ nées de l'axe. Syntaxe PtpMove (PTP) La valeur de défaut pour ces fonctions est "MCS". Exemple : PTP (WCS,MCS) x50 y55 ; Coord. WCS x=50, y=55 est approchée. ; Le mouvement se fait dans le MCS. PTP (WCS,ACS) x=IC(50) ; Déplacer la coord. WCS x de manière incré‐ mentale de 50. ; Le mouvement se fait dans l'ACS. PTP (MCS, MCS) X100 Y200 ; Coord. MCS X=100, Y=200 est approchée. ; Le mouvement se fait dans le MCS. PTP (MCS, ACS) X101 Y201 ; Coord. MCS X=101, Y=201 est approchée. ; Le mouvement se fait dans l'ACS. PTP (ACS, MCS) XA50 C45 ; Position ACS XA=50, C=45 est approchée. ; Le mouvement se fait dans le MCS. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 281/550 Fonctions CN avec syntaxe de langage standard PTP (ACS, MCS) XA51 C46 ; Position ACS XA=51, C=46 est approchée. ; Le mouvement se fait dans l'ACS. PTP () correspond à PTP (MCS, MCS). PTP (,) correspond à PTP (MCS, MCS). PTP (WCS, ) correspond à PTP (WCS, MCS). PTP (,ACS) correspond à PTP (MCS, ACS). Particularités et restrictions : ● Il s'agit d'une fonction locale, non modale. ● Un mouvement de déplacement PTP est toujours interpreté comme pro‐ grammation absolue, c'est-à-dire G91. La programmation incrémentale peut se faire via l'attribut de programmation "IC" (e.g. x=IC(50) ). ● Lors d'un mouvement de déplacement PTP, la correction du rayon 3D doit être désactivée. Sinon, une erreur d'exécution est générée. ● Un ordre PTP par ligne peut être programmé. 6.78 Découpage-poinçonnage "Punch, PUN" 6.78.1 Effet Active ou désactive la fonction "Découpage-poinçonnage". Lorsque le découpage-poinçonnage est active, à la fin ● de tout mouvement de déplacement programmé (mode Course séparée) ou ● de tout segment de parcours généré par la fonction "NUM" (voir chap. 6.58 "Repartir le bloc de déplacement : Nombre de parcours partiels NUM" à la page 249) ou "LEN" (voir chap. 6.50 "Repartir le bloc de dé‐ placement : Longueur du parcours partiel LEN" à la page 236) une course est déclenchée. Le mouvement de déplacement subséquent n'est démarré qu'une fois la course terminée. Fonctions influençant le temps de déclenchement de la course : PtDefault (voir chap. 6.75 "Temps de déclenchement de la course (mettre à a valeur de défaut) PtDefault, PTD" à la page 278). PtBlkEnd (voir chap. 6.74 "Temps de déclenchement de la course (point d'arrivée de l'interpolation) PtBlkEnd, PTE" à la page 275). PtInpos (voir chap. 6.76 "Temps de déclenchement de la course (fenêtre Inpos) PtInpos, PTI" à la page 278). 6.78.2 Programmation Syntaxe : Punch(1) ou Activer le découpage-poinçonnage. Punch Punch(0) ou Désactiver le découpage-poinçonnage. Punch() Format abrégé : PUN(..) Fig.6-105: Particularités et restrictions : Syntaxe Punch (PUN) ● Le découpage-poiçonnage doit être validé via MP 8001 00010. ● La fonction agit de façon modale, même sur des déplacements program‐ més dans le même bloc. 282/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Exemple : ● La fonction "NUM" ou "LEN" permet à la commande de générer automa‐ tiquement des parcours partiels à partir de la course de déplacement programmée, aux extrémités de laquelle une course est déclenchée ● Si le grignotage est activé (voir chap. 6.57 "Grignotage Nibble, NIB" à la page 247), la fonction découpage-poiçonnage est désélectionnée. ● Les blocs qui ne contiennent pas de coordonnées d'axe du plan actif ne déclenchent pas de course. ● Dans la mesure où l'API supprime le déclenchement de la course, le trai‐ tement s'arrête sur la position de déclenchement de la course jusqu'à ce que l'API valide à nouveau le déclenchement de la course. ● G90 est active (Programmation absolue). ● Plan actif : X/Y ● Position actuelle : X=0, Y=0, C=0 : N10 C10 Punch(1) Activer le découpage-poinçonnage. L'axe C effectue une rotation à 10 degrés. Pas de cour‐ se, car les axes X et Y ne sont pas programmés. N20 C60 L'axe C effectue une rotation à 60 degrés. Pas de cour‐ se, car les axes X et Y ne sont pas programmés. N30 X0 Pas de déplacement, car l'axe X est déjà sur la position 0. Course, car l'axe X est situé dans le plan actif. N40 LEN=12 Diviser les blocs de déplacement consécutifs en seg‐ ments de trajectoire égaux de 12 mm au maximum. N50 X110 Le bloc de déplacement est divisé en 10 segments de trajectoire égaux de 11 mm. Course aux positions X11, X22, X33 ...X99, X110. N60 Y30 NUM=3 Masque LEN (N40) agissant de façon modale pour le bloc actuel. Diviser le bloc de déplacement en 3 segments de tra‐ jectoire égaux. Course à Y10, Y20, Y30. N70 Y90 LEN de N40 agit à nouveau. Course à Y42, Y54, Y66, Y78, Y90. N80 X50 Y50 Punch() Découpage-poinçonnage DÉSACTIVÉ. : Déplacement à X=50, Y=50. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 283/550 Fonctions CN avec syntaxe de langage standard Fig.6-106: Exemple Punch (PUN) 6.79 Réduction du couple "RedTorque, RDT" 6.79.1 Effet "RedTorque" masque, axe par axe, la valeur du paramètre machine 1003 00010 avec la valeur programmée. La valeur du paramètre machine n'est pas modifiée. De cette façon, le couple maximum réduit d'un axe qui peut devenir efficace après un front positif du signal de l'interface d'axe "Réduction du cou‐ ple" (qAx_TrqLim) n'est plus seulement limité fixement à la valeur du paramètre machine, mais réglable de manière "dynamique". 6.79.2 Programmation Syntaxe : RedTorque(<Axe1> {,<Axe2>{, ...}}) RedTorque(0) ou RedTorque() Mettre les valeurs du couple maximum réduit aux va‐ leurs programmées. Mettre les valeurs du couple maximum réduit aux va‐ leurs des paramètres machine (MP 1003 00010). Format abrégé : RDT(..) avec <Axe i> Désignation physique ou logique de l'axe, y compris le couple maximum respectif exprimé en % du couple d'arrêt de l'axe. Plage de valeurs : 0 à 500 %. Fig.6-107: Exemple : N8 RDT(X5) : : Syntaxe RedTorque (RDT) Avec le front positif suivant du signal pertinent spécifi‐ que à l'axe "Réduction du couple", le couple maximum pour l'axe (en l'occurrence X) est limité à 5 % du couple d'arrêt de l'axe. 284/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.80 Extraire un axe d'un groupe d'axes "RemAxis, RAX" 6.80.1 Effet Extrait un axe synchrone du canal appelant. L'axe synchrone devient ainsi un axe asynchrone. L'axe asynchrone est alors programmable dans chaque canal via son nom d'axe physique. Pour de plus amples informations relatives à la fonction "Transfert d'axe", voir le manuel "Description des fonctions". 6.80.2 Programmation Syntaxe : RemAxis(<PAN>|<PAI>|<LAN>{,<PAN>|<PAI>|<LAN>}...) Format abrégé : RAX(..) avec <PAN> Nom physique de l'axe. Définit l'axe qui doit être extrait du canal actuel. <PAI> Index physique de l'axe. Effet similaire à <PAN>. <LAN> Nom logique de l'axe. Effet similaire à <PAN>. Fig.6-108: Particularités et restrictions : Exemple : Syntaxe RemAxis (RAX) ● Lors de l'extraction d'un axe, la préparation du bloc n'est pas suspendue. ● Les noms d'axe invalides entraînent un message d'erreur. ● Si un axe à extraire est défini dans le système, bien qu'il ne soit plus pré‐ sent dans le canal actuel, aucun message d'erreur n'est généré. ● Les positions d'axe d'un même bloc doivent toujours être programmées après RemAxis(...). : N030 RAX(XP,2,Z) : L'axe physique XP, l'axe physique avec l'index 2 et l'axe logique Z sont extraits du canal. 6.81 Supprimer le nom logique de l'axe "RemLogName, RLN" 6.81.1 Effet Supprime le nom logique d'un axe synchrone dans le canal appelant. L’axe subsiste dans le canal, mais ne pourra plus y être programmé que via son nom d'axe physique ou son index d'axe physique. Pour de plus amples informations relatives à la fonction "Transfert d'axe", voir le manuel "Description des fonctions". Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 285/550 Fonctions CN avec syntaxe de langage standard 6.81.2 Programmation Syntaxe : RemLogName(<PAN>|<PAI>|<LAN>{,<PAN>|<PAI>|<LAN>}...) Format abrégé : RLN(..) avec <PAN> Nom physique de l'axe. Définit l'axe dont le nom logique doit être supprimé dans le canal actuel. <PAI> Index physique de l'axe. Effet similaire à <PAN>. <LAN> Nom logique de l'axe. Effet similaire à <PAN>. Fig.6-109: Particularités et restrictions : Exemple : Syntaxe RemLogName (RLN) ● Un axe indiqué doit être à l'arrêt. Si cela n'est pas le cas, la commande génère un message d'erreur et interrompt le programme. ● Les positions d'axe dans le même bloc doivent toujours être programmés toujours suivant l'expression RemLogName(…). : N030 RLN(YP,3,Z) : Les noms logiques de l'axe physique YP, du 3ème axe physique et de l'axe logique Z sont extraits du canal ap‐ pelant. 6.82 Supprimer les broches du canal "RemSpindle, RSP" 6.82.1 Effet Supprime une broche logique du canal appelant. 6.82.2 Programmation Syntaxe : RemSpindle (<SysSpNr> | <SysSpName> | <ChanSpName , {...}) Supprime une broche de canal du canal. avec <SysSpNr> 1..32 <SysSpName> SSp01 .. SSp32 ou SSP01 .. SSP32 <ChanSpName> S1 .. S8 Format abrégé : RSP Fig.6-110: Particularités et restrictions : Exemple : Syntaxe RemSpindle (RSP) Une broche exploitée à une vitesse de coupe constante (G96) ne peut pas être supprimée du canal. ... N50 RSP(S2) Supprime la 2ème broche de canal du canal. 286/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard N60 M203 S2=500 Génère une erreur d'exécution, car aucune 2ème bro‐ che de canal n'existe. ... 6.83 Sous-programmes asynchrones : Définir le point de redémar‐ rage dans le sous-programme asynchrone "REPOSTP" 6.83.1 Effet Définit si la commande doit, à la fin du sous-programme asynchrone dans le‐ quel la fonction "REPOSTP" est programmée, se positionner sur le ● point de départ, ● point d'arrivée, ou ● point d'interruption d'un bloc de déplacement éventuellement interrompu. Si, lors du moment de l'interruption, aucun bloc de déplacement n'est actif, la commande se positionne toujours sur les dernières coordonnées actives. REPOSTP masque ainsi pour le sous-programme asynchrone actuellement exécuté un point de redémarrage défini préalablement via ASPRP (voir chap. 6.6 "Sous-programmes asynchrones : Définir le point de redémarrage ASPRTP" à la page 180). De plus amples informations relatives à l'utilisation et au paramé‐ trage des sous-programmes asynchrones sont données dans le manuel "Description des fonctions". 6.83.2 Programmation Syntaxe : REPOSTP(<Point>) avec <Point> Point de rédémarrage souhaité : 1: point de départ 2: point d'arrivée 3: point d'interruption Fig.6-111: Particularités et restrictions : Syntaxe REPOSTP ● La fonction est prévue pour l'utilisation dans un sous-programme asyn‐ chrone. ● Le point de redémarrage défini préalablement via ASPRTP (voir chap. 6.6 "Sous-programmes asynchrones : Définir le point de redémarrage ASPRTP" à la page 180) pour le sous-programme asynchrone actuelle‐ ment exécuté redevient efficace automatiquement à la fin du sous-pro‐ gramme. ● Les modifications de correction survenues entretemps au sein d'un sousprogramme asynchrone sont prises en compte automatiquement pour le calcul interne du point de redémarrage requis. 6.84 Aide à la saisie : Rotation "Rotate(...), ROT(...)" 6.84.1 Effet La fonction "Rotation" fait partie des aides à la saisie. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 287/550 Fonctions CN avec syntaxe de langage standard La commande fait tourner un contour programmé dans le plan actif (concernant les plans, voir G17, G18, G19 ou G20). La rotation se rapporte toujours au point de rotation actuel (voir la fonction "PoleSet", chap. 6.71 "Définir le point de miroir/de rotation PoleSet, PLS" à la page 270). Si celui-ci n’a pas été programmé explicitement, le point d’origine actuel du programme sert de point de rotation. A l'aide de cette fonction, les éléments de programme récurrents qui sont dé‐ calés d'un angle défini, ne doivent être programmés qu'une seule fois. Par ailleurs, il n'est plus nécessaire, par exemple, de convertir les cotes des pièces angulaires en coordonnées du système de coordonnées de base de la pièce à usiner. Il suffit de reprendre directement les cotes indiquées sur le plan de construction et de saisir l'angle de rotation correspondant. La commande se charge du reste. La rotation est une aide à la saisie et ne modifie donc pas le système de coordonnées actuel du programme. Une aide à la saisie n'est en fait qu'une autre possibilité pour la saisie des coordonnées de programme. La rotation peut également être utilisée conjointement avec la fonc‐ tion miroir et la mise à l'échelle. Pour cette fonction s'applique ce qui suit : 6.84.2 ● Le fonction agit de façon modale. Elle reste valide jusqu'à ce qu'elle soit désactivée. ● Elle peut être programmée avec d'autres conditions de course et fonctions auxiliaires dans un même bloc. Programmation Syntaxe : Rotate(<Angle de rotation>) Activer la rotation autour de l'<angle de ro‐ tation> souhaité. Rotate(0) ou Désactiver la rotation pour tous les axes du canal. Mettre tous les angles de rotation sur "0". Les positions d'axe atteintes sont maintenues jusqu'à ce qu'elles soient re‐ programmées. Rotate() Format abrégé : ROT(..) avec <Angle de rotation> > 0: Rotation trigonométrique. < 0: Rotation antitrigonométrique. = 0: Désactiver la rotation. Toutes les coordonnées du plan actif pro‐ grammées ensuite subissent une rotation autour du point de rotation (voir PoleSet, chap. 6.71 "Définir le point de miroir/de rotation PoleSet, PLS" à la page 270). La rotation ne devient active qu'avec l'in‐ formation de déplacement suivante. Fig.6-112: Particularités et restrictions : ● Syntaxe Rotate(...), ROT(...) La fonction tient compte des paramètres d'interpolation en interpolation circulaire. 288/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Exemple : ● Elle influence le décalage programmable des segments de contour (Shift). Voir chap. 6.91 "Décalage programmé du contour Shift, SHT" à la page 295. ● Elle n'influence pas : – les décalages d'origine (G54-G59.5 ; voir chap. 5.2.23 "Décalages d'origines (NPV) G53, G53.1-G59.1 bis G53.5-G59.5" à la page 129), – les décalages des coordonnées du programme (Trans ou ATrans ; voir chap. 6.125 "Décalage des coordonnées du programme Trans, TRS, Décalage additif des coordonnées du programme ATrans, ATR" à la page 328), – l'initialisation de la position de programme ("SetPos" ; voir chap. 6.90 "Fixer la position du programme SetPos, SPS" à la page 294), – l'approche des coordonnées du point de référence (G74 ; voir chap. 5.2.28 "Approche des coordonnées du point de référence G74 " à la page 137), – l'approche de la position fixe des axes machine (G76 ; voir chap. 5.2.31 "Approche de la position fixe des axes machine G76" à la page 140), – les valeurs de correction pour le rayon de la fraise et la longueur de l'outil. : N30 ROT(45) : Activer la rotation. Toutes les coordonnées du plan actif programmées ensuite effectuent une rotation trigono‐ métrique de 45 degrés autour d'un point de rotation éventuellement programmé. : : Fig.6-113: Rotation d'un vecteur d'orientation : Exemple Rotate(...), ROT(...) La rotation d'un vecteur d'orientation est effectuée autour de la normale du plan actif. Même si la fonction "Mise à l'échelle" ou un point de miroir/de rotation est actif(ve), ceci n'a pas d'influence sur le résultat La syntaxe est décrite sous "Programmation". Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 289/550 Fonctions CN avec syntaxe de langage standard 6.85 Arrondissage des angles avec indication de la différence "RoundEps, RNE" 6.85.1 Effet Cette fonction insère des arcs tangentiels de raccordement entre 2 blocs li‐ néaires du plan principal. Certes, ceci modifie légèrement le contour programmé au droit de tels angles, mais il est possible d'obtenir les profils de vitesse et d'accélération continus lors de l'interpolation. 6.85.2 Programmation Syntaxe : RoundEps(<Différence>) Activer l'arrondissage des angles entre 2 blocs linéai‐ res. RoundEps(DEF) Activer l'arrondissage des angles entre 2 blocs linéaires avec une différence de défaut de MP 7050 00110. RoundEps(0) ou Désactiver l'arrondissage des angles entre 2 blocs li‐ néaires. RoundEps() Format abrégé : RNE(..) avec <Différence> Différence maximale admissible (en mm) entre le con‐ tour modifié et le contour programmé. Les décimales sont admissibles. La commande calcule elle-même un arc tangentiel de raccordement approprié. Fig.6-114: Particularités et restrictions : Syntaxe RoundEps, RNE ● Les fonctions "ChLength", "ChSection", "RoundEps" et "Rounding" ont un effet modal et se révoquent mutuellement. ● La commande n'exécute pas la fonction "Arrondissage des angles", si ● – au moins l'un des deux blocs voisins n'est pas un bloc linéaire. – au moins l'un des deux blocs voisins a un segment de trajectoire situé en dehors du plan principal sélectionné, ou bien – au moins l'un des deux blocs voisins a une course de déplacement inférieure à la course définie dans le paramètre MP 7050 00120 (2 à 90 mm, valeur par défaut : 10 mm), ou – l'enchaînement de blocs est considéré comme continu selon le pa‐ ramètre machine, c'est-à-dire lorsque l'angle entre les deux blocs est inférieur à l'angle maximal défini dans MP 7050 00130 (valeur par défaut = 1 degré). Si, entre 2 blocs successifs, le plan, le décalage d'origine ou une trans‐ formation d'axe est modifiée, aucun congé n'est généré. 6.86 Arrondissage des angles avec indication du rayon "Rounding, RND" 6.86.1 Effet Cette fonction insère des arcs tangentiels de raccordement entre 2 blocs li‐ néaires, circulaires ou hélicoïdaux du plan principal. 290/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Certes, ceci modifie légèrement le contour programmé au droit de tels angles, mais il est possible d'obtenir les profils de vitesse et d'accélération continus lors de l'interpolation. 6.86.2 Programmation Syntaxe : Rounding(<Rayon>) Activer l'arrondissage des angles entre 2 blocs linéai‐ res/circulaires/hélicoïdaux. Rounding(0) ou Désactiver l'arrondissage des angles entre 2 blocs li‐ néaires/circulaires/hélicoïdaux. Rounding() Format abrégé : RND( ..) avec <Rayon> Fig.6-115: Particularités et restrictions : Rayon souhaité du congé de raccordement, les déci‐ males étant admissibles. Syntaxe Rounding (RND) ● Les fonctions "ChLength", "ChSection", "RoundEps" et "Rounding" ont un effet modal et se révoquent mutuellement. ● La commande n'exécute pas la fonction "Arrondissage des angles", si – au moins l'un des deux blocs voisins a une course de déplacement inférieure à la course définie dans le paramètre MP 7050 00120 (2 à 90mm, valeur par défaut : 10mm), ou – l'enchaînement de blocs est considéré comme continu selon le pa‐ ramètre machine, c'est-à-dire lorsque l'angle entre les deux blocs est inférieur à l'angle maximal défini dans MP 7050 00130 (valeur par défaut = 1 degré). ● Si, entre 2 blocs successifs, le plan, le décalage d'origine ou une trans‐ formation d'axe est modifiée, aucun congé n'est généré. ● Seules les composantes du plan actif sont prises en considération pour le congé. De ce fait, la direction dans l'espace des droites tridimension‐ nelles est modifiée. Ceci est valable de façon analogue pour les segments de trajectoire hélicoïdaux. Fig.6-116: Arondissage des angles avec indication du rayon 6.87 Aide à la saisie : Mise à l'échelle "Scale(...), SCL(...)" 6.87.1 Effet La fonction "Mise à l'échelle" fait partie des aides à la saisie. La commande augmente ou réduit un contour programmé par rapport à l'origine du programme. La mise à l'échelle se rapporte toujours au point de miroir actuel (voir la fonction "PoleSet", chap. 6.71 "Définir le point de miroir/de rotation PoleSet, PLS" à la page 270). Si celui-ci n'a pas été programmé explicitement, le point d'origine actuel du programme sert de point de miroir. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 291/550 Fonctions CN avec syntaxe de langage standard La fonction "Mise à l'échelle" permet la programmation des contours dans les programmes pièce avec une dimension définie (dimension normalisée). Avant l'appel d'un tel programme pièce "normalisé" (par exemple en tant que sousprogramme), on peut ainsi influencer pour tous les axes l'échelle du contour programmé à l'aide des facteurs d'échelle. Ceci permet, par exemple lors de la fabrication des pièces moulées ou forgées, de facilement compenser les retraits des pièces à usiner. La fonction "Mise à l'échelle" est une aide à la saisie et ne modifie donc pas le système de coordonnées actuel du programme. Une aide à la saisie n'est en fait qu'une autre possibilité pour la saisie des coordonnées de programme. La mise à l'échelle peut également être utilisée conjointement avec la fonction miroir et la rotation. Pour cette fonction s'applique ce qui suit : 6.87.2 ● Le fonction agit de façon modale. Elle reste valide jusqu'à ce qu'elle soit désactivée. ● Elle peut être programmée avec d'autres conditions de course et fonctions auxiliaires dans un même bloc. Programmation Syntaxe : Scale(<Axe 1><Facteur>{,...}) Activer la mise à l'échelle pour les axes indiqués avec le facteur programmé. Scale(0) ou Désactiver la mise à l'échelle pour tous les axes du ca‐ nal. Tous les facteurs d'échelle sont mis à la valeur "1". Scale() Les positions d'axe atteintes sont maintenues jusqu'à ce qu'elles soient reprogrammées. Format abrégé : SCL(..) avec <Axe 1> Adresse de l'axe (par ex. X) qui doit être mis à l'échelle. <Facteur> La programmation de l'adresse d'axe avec un facteur positif active la fonction. De ce fait, tous les ordres de course programmés en‐ suite pour l'axe correspondant (par exemple X10) sont multipliés en interne avec ce facteur : Facteur > 1 : le contour est agrandi. Facteur < 1 : le contour est réduit. Facteur = 1 : le contour reste inchangé. La mise à l'échelle elle-même ne déclenche pas de dé‐ placement et ne devient actif qu'avec l'information de déplacement suivante. Fig.6-117: Particularités et restrictions : Syntaxe Scale(...), SCL(...) ● Les facteurs d'échelle négatifs ne sont pas permis. ● Pour une interpolation circulaire/hélicoïdale/hélicoïdale N, les facteurs d'échelle de toutes les coordonnées intéressées du plan circulaire doivent être identiques ! Dans le cas contraire, un message d'erreur est généré. 292/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Exemple : ● La fonction agit également sur les paramètres d'interpolation I,J,K et le montant de l'adresse R (pour la programmation du rayon). ● Elle influence le décalage programmable des segments de contour (Shift). Voir chap. 6.91 "Décalage programmé du contour Shift, SHT" à la page 295. ● Elle n'influence pas : – la programmation de l'avance ou l'avance active, – les décalages d'origine (G54-G59.5 ; voir chap. 5.2.23 "Décalages d'origines (NPV) G53, G53.1-G59.1 bis G53.5-G59.5" à la page 129), – les décalages des coordonnées du programme (Trans ou ATrans ; voir chap. 6.125 "Décalage des coordonnées du programme Trans, TRS, Décalage additif des coordonnées du programme ATrans, ATR" à la page 328), – l'initialisation de la position de programme ("SetPos" ; voir chap. 6.90 "Fixer la position du programme SetPos, SPS" à la page 294), – l'approche des coordonnées du point de référence (G74 ; voir chap. 5.2.28 "Approche des coordonnées du point de référence G74 " à la page 137), – l'approche de la position fixe des axes machine (G76 ; voir chap. 5.2.31 "Approche de la position fixe des axes machine G76" à la page 140), – les valeurs de correction pour le rayon de la fraise et la longueur de l'outil. : N30 SCL(X3,Y0.5) : Activer la mise à l'échelle. Toutes les coordonnées X programmées ensuite seront multipliées par "3", les co‐ ordonnées Y par "0,5". : Fig.6-118: Exemple (...), SCL(...) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 293/550 Fonctions CN avec syntaxe de langage standard 6.88 Couplage sélectif additif de coordonnées "SelCrdCouple, SCC" 6.88.1 Effet Couple une coordonnée de la pièce à usiner du canal actuel (cible) à une co‐ ordonnée de la pièce à usiner d'un autre canal (source). La valeur de coordon‐ née de la source agit donc de façon additive à la valeur de coordonnée du cible. De cette façon, il est possible de superposer les mouvements dans le canal actuel par des mouvements programmés dans un autre canal. 6.88.2 Programmation Syntaxe : SelCrdCouple(SC<Canal>, CL(<Q1>,<Z1>{{,<Qn>,<Zn>}...})) Couplage sélectif additif de coordonnées ACTIVÉ. SelCrdCouple(0) ou SelCrdCouple() Tous les couplages de coordonnées actifs DÉSACTI‐ VÉS. Format abrégé : SCC( ..) avec <Canal> Numéro du canal où se trouve <Qn>. Valeur de saisie : valeur entière. <Canal> doit être inférieur au numéro de canal du canal actuel. <Qn> Source. Nom logique ou numéro logique de la coordon‐ née dans <Canal>. <Zn> Cible. Nom logique ou numéro logique de la coordon‐ née dans le canal actuel. Fig.6-119: Exemples : Syntaxe SelCrdCouple (SCC) SCC(SC1,CL(YA,YB)) Couple la coordonnée YB du canal actuel à la coordonnée YA du canal 1. SCC(SC1,CL(1,1,2,2)) Couple les coordonnées avec les numéros logiques 1 et 2 du canal actuel aux coor‐ données avec les numéros logiques 1 ou 2 du canal 1. 6.89 Couplage sélectif additif de coordonnées avec ta‐ bleau"SelCrdCoupleTab, SCCT" 6.89.1 Effet Accouple une coordonnée de pièce du canal actuel (cible) à une coordonnée pièce ou machine d'un autre canal (source). La valeur de coordonnée de la source agit donc de façon additive à la valeur de coordonnée du cible. De cette façon il est possible de superposer les mouvements dans le canal actuel par les mouvements programmés dans un autre canal. 294/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.89.2 Programmation Syntaxe : SelCrdCoupleTab(DE(<Nom>),SO(<Canal>, <Nom>,<Fact>,<Tab>,<Offs>, WCS|MCS) {,SO2(<No du canal>,<Nom>,<Fact>,<Tab>,<Offs>,WCS|MCS)}) Format abrégé : SCCT avec DE (Destination) <Nom> Nom de la coordonnée cible. SO (Source) <Canal> Numéro du canal source. <Nom> Nom de la coordonnée source. <Fact> Facteur de couplage (1,0, si non programmé). <Tab> Nom du tableau de couplage. <Offs> Valeur de décalage pour l'accès au tableau (0,0, si non programmé). WCS|MCS Système de coordonnées de la source : WCS = coordonnée de la piece à usiner MCS = coordonnée de la machine Valeur par défaut : WCS Fig.6-120: Syntaxe SelCrdCoupleTab (SCCT) La fonction SCCT peut être programmée plusieurs fois pour différentes coor‐ données.. Exemples : SCCT(DE(YB), SO(1,YA)) Couple la coordonnée YA du canal 1 à la coordonnée YB du canal actif. SCCT(DE(ZB), SO(1,ZA, ,SCCTab.fct)) .. Couple la coordonnée ZA du canal 1 à la coordonnée ZB du canal actif via le tableau de couplage "SCCTab.fct". Suppression d'un couplage : SCCT() SCCT() ouvre tous les couplages générés avec SCCT( … ). 6.90 Fixer la position du programme "SetPos, SPS" 6.90.1 Effet Met le point d'origine actuel du programme (par rapport au système de coor‐ données actuel du programme et au point d'origine actif) à la valeur respecti‐ vement programmée sans déclencher des mouvements d'axe. Ensuite, les nouvelles valeurs de position sont affichées automatiquement. 6.90.2 Programmation Syntaxe : SetPos(<Coordonnées>) Fixer le point d'origine du programme pour les axes programmés sous <Coordonnées>. SetPos Annuler tous les décalages déclenchés par SetPose. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 295/550 Fonctions CN avec syntaxe de langage standard Format abrégé : API(..) avec <Coordonnées> Fig.6-121: Particularités et restrictions : Exemple : Mettre les valeurs d'axe aux coordonnées indiquées. Les coordonnées indiquées doivent être séparées par des virgules (par ex. : (X0,Y0)). Syntaxe SetPos, SPS Il est possible de régler de façon spécifique au canal si les décalages SetPos sont à supprimer ou à conserver après la remise à zéro. . Fig.6-122: Exemple : Fixer la position du programme Il est également possible de programmer l'ordre DIN "G92". L'ordre G92, par contre, ne doit pas être programmé dans un même bloc avec des informations de déplacement. 6.91 Décalage programmé du contour "Shift, SHT" 6.91.1 Effet La fonction "Shift" fait partie des aides à la saisie. La commande décale un contour programmé de façon parallèle aux axes du système de coordonnées du programme. "Shift" est une aide à la saisie et ne modifie donc pas le système de coordonnées actuel du programme. Une aide à la saisie n'est en fait qu'une autre possibilité pour la saisie des coordonnées de programme. Pour cette fonction s'applique ce qui suit : ● Les coordonnées de décalage programmées restent effectives jusqu'à elles sont écrasées ou désactivées par un nouveau bloc Shift. ● Si la fonction "Shift" est programmé seule, elle n'entraîne pas de dépla‐ cement, mais il est possible de programmer des informations de dépla‐ cement dans le même bloc. 296/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Une programmation incorrecte peut entraîner un endommagement de la pièce à usiner et de la machine ! ATTENTION 6.91.2 "Shift" est influencée par la fonction miroir, la mise à l'échelle et la rotation des coordonnées, c'est-à-dire que les coordonnées du nouveau point d'origine du contour programmées dans le bloc Shift inversées, mises à l'échelle et tour‐ nées ! Programmation Syntaxe : Shift(<Coordonnées>) Shift(0) ou Activer le décalage du contour. Désactiver le décalage du contour. Shift() Format abrégé : SHT(..) avec <Coordonnées> Fig.6-123: Exemple : Coordonnées de programme pour le point origine du contour décalé. Plusieurs données de coordonnée doi‐ vent être séparées par des virgules (par ex. : SHT (X5,Y2)). Syntaxe Shift (SHT) : Nouveau point origine du contour à X10, Y10, Z50. Pas de déplacement des axes. N100 G1 X...Y...Z... Déplacement des axes, compte tenu du décalage. N10 SHT(X10,Y10,Z50) : N110 SHT(X20,Y20) : Nouveau point origine du contour à X20, Y20, Z50 (le décalage de Z est conservé !). Pas de déplacement des axes. : N210 SHT() X...Y...Z... Désactiver le décalage ; les axes se déplacent sur la position programmée. : 6.92 Limitation de la vitesse de rotation "SMin, SMN", "SMax, SMX" 6.92.1 Effet Définit la plage de vitesse de rotation dans laquelle la vitesse de rotation de la broche doit se situer durant une opération d'usinage en cas d'une programma‐ tion directe de la vitesse de rotation G97 et une vitesse de coupe constante G96 (voir chap. 5.2.39 "Vitesse de coupe constante G96, Programmation di‐ recte de la vitesse de rotation G97" à la page 148). La plage de vitesse de rotation est valide pour toutes les gammes de vitesse. Lorsque la limitation de la vitesse de rotation est active, toutes les définitions de vitesse de rotation sont limitées aux valeurs limites programmées. Les modifications de la vitesse de rotation (même celles provoquées par le potentiomètre de la broche) ne sont effectuées par le système que lorsqu'elles se situent au sein de la plage de vitesse de rotation définie. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 297/550 Fonctions CN avec syntaxe de langage standard 6.92.2 Programmation Syntaxe : SMin(S<Vitesse de rota‐ tion1>) Activé la <Vitesse de rotation1> en tant que limite infé‐ rieure de la plage de vitesse de rotation admissible. SMin(S0) Supprime la limite inférieure de la première broche ou du premier groupe de broches. Format abrégé : SMN(..) SMax(S<Vitesse de rota‐ tion2>) Activé la <Vitesse de rotation2> en tant que limite su‐ périeure de la plage de vitesse de rotation admissible. SMax(S-1) Supprime la limite supérieure de la première broche ou du premier groupe de broches. Format abrégé : SMX(..) avec <Vitesse de rotation1> Vitesse de rotation minimale admissible. Plage de va‐ leurs : > 0. doit être inférieure à <Vitesse de rotation2>. <Vitesse de rotation2> Vitesse de rotation maximale admissible. Plage de va‐ leurs : > 0. doit être supérieure à <Vitesse de rotation1>. Fig.6-124: Syntaxe SMin, SMN, SMax et SMX La syntaxe générale s'appelle : SMin(Sx=0 {,Sx=0} ... ) ou SMax(Sx=-1{,Sx=-1} ... ). Exemple : N50 X.. Y.. SMN(S1500) N60 X.. Y.. SMX(S2500) La vitesse de rotation de la broche doit se situer dans la plage de 1500 à 2500 tours/min. : N90 X.. Y.. SMN() SMX() Particularités et restrictions : Désactiver les limites inférieure et supérieure (=Limitation de la vitesse de rotation DÉSAC‐ TIVÉE). La limitation de la vitesse de rotation n'agit que si les limites de vitesse de rotation programmées se situent au sein des limites des gammes de vitesse. 6.93 Valider/reprendre la broche réservée "SpAdmin, SPA" 6.93.1 Effet Permet ● la validation d'une broche momentanément réservée dans le canal actuel, sans arrêter une broche en cours de rotation. ● ensuite son intégration dans un canal quelconque. La fonction "Arrêt de la broche" sert également à valider une broche (voir chap. 5.3.6 " Arrêt de la broche M5, M105, M205" à la page 165). 298/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.93.2 Programmation Syntaxe : SpAdmin(S<Num>=<Mode>{ ,S<Num>=<Mode>}...) Format abrégé : SPA(...) avec <Num> Numéro de la broche (index de broches). Champs de saisie : 1...8. valeur entière. <Mode> 0: valider la broche. 1: réserver et reprendre la broche validée. Fig.6-125: Particularités et restrictions : Exemple : Syntaxe SpAdmin (SPA) La remise à zéro ou M30 ne valide les broches réservées par le canal actuel que lorsque l'ordre pour "Arrêt de la broche" est inscrit à l'endroit adéquat dans MP 7060 00020. N60 SPA(S1=0,S2=0) 1. Valider la 1ère et la 2ème broche. : 6.94 Définir (activer) le groupe de couplage, dissocier (désactiver) le groupe de couplage "SpCoupleConfig, SPCC" 6.94.1 Effet ● Définit un groupe de couplage et active son couplage de broches. Pour cela, la commande des entraînements de broches intéressés passe automatiquement à l'interface de position. ● Ajoute des broches esclaves à un groupe de couplage existant, ou les extrait d'un groupe de couplage existant. Les entraînements de broches ajoutés sont automatiquement commutés à l'interface de position, les entraînements de broches extraits à l'interface de vitesse de rotation (dans la mesure où l'interface de vitesse de rotation a été activé avant le couplage pour les broches concernées). ● Désactive le couplage de broches d'un groupe de couplage et dissocie le groupe de couplage complet. Tous les entraînements de broches intéressés sont automatiquement commutés à l'interface de vitesse de rotation, dans la mesure où l'interface de vitesse de rotation a été activé avant le couplage pour les broches concernées. 6.94.2 Programmation Syntaxe : SpCoupleConfig (CP=<Groupe>,MA=<Maître>, S<Esclave>=1{{,S<Esclave>=1}...}) Définir un groupe de couplage. SpCoupleConfig (CP=<Groupe>,MA=0) Dissocier un groupe de couplage. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 299/550 Fonctions CN avec syntaxe de langage standard SpCoupleConfig (CP=<Groupe>, Ajouter/extraire des broches esclaves au/du groupe de couplage. S<Esclave>=<Mode> {{,S<Esclave>=<Mode>}...}) Format abrégé : SPCC(...) avec <Groupe> Numéro du groupe de couplage. Champs de saisie : 1...4. valeur entière. <Maître> Numéro de la broche maître (index de broches). Champs de saisie : 1...8. Valeur entière. <Esclave> Numéro de la broche esclave (index de broches). Plage de saisie :1…8. Valeur entière. <Mode> 0: Extraire la broche esclave du <Groupe>. 1: Ajouter la broche esclave au <Groupe>. Fig.6-126: Syntaxe SpCoupleConfig (SPCC) 6.95 Ecart de couplage de la broche esclave "SpCoupleDist, SPCD" 6.95.1 Effet Configure pour la fonction "Couplage de broches" la différence de position souhaitée entre la broche maître et la broche esclave au moment du couplage (lors de l'établissement du couplage). Lorsque la fonction n'est pas utilisée pour une broche esclave souhaitée, la différence de position par rapport à la broche maître est de 0 degré (au moment du couplage). Pour amorcer, durant un couplage de broches actif, un décalage angulaire additif entre la broche maître et la broche esclave, voir la fonction "SpCouplePosOffs", chap. 6.97 "Décalage angulaire en couplage actif SpCouplePosOffs, SPCP" à la page 300. 6.95.2 Programmation Syntaxe : SpCoupleDist(S<Num>=<Écart>{,S<Num>=<Écart>}...) Format abrégé : SPCD(...) avec <Num> Numéro de la broche esclave (index de broches). Champs de saisie : 1...8. Valeur entière. <Écart> Différence de position entre la broche maître et la bro‐ che esclave en degrés. Plage de valeurs : 0° ≤ différence de position < 360°. Si une autre valeur est programmée, elle est automati‐ quement convertie en l'intervalle indiqué. Fig.6-127: Syntaxe SpCoupleDist (SPCD) 300/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Particularités et restrictions : La fonction ne doit être programmée qu'avec des broches qui ne font momen‐ tanément pas partie d'un groupe de couplage. 6.96 Fenêtre d'erreur de la marche synchrone "SpCoupleErrWin, SPCE" 6.96.1 Effet Configure pour la fonction "Couplage de broche" la différence de position maxi‐ male admissible entre la valeur de consigne et la valeur réelle d'une broche esclave. Si la différence de position, durant un couplage actif, se situe au sein de l'in‐ tervalle défini, le signal de sortie spécifique à la broche "Marche synchrone 2" est émis. Lorsque la fonction n'est pas utilisée pour une broche esclave souhaitée, sa fenêtre d'erreur de marche synchrone est de +/- 10 degrés. Voir également la fonction "SpCoupleSyncWin", chap. 6.99 "Fe‐ nêtre de marche synchrone SpCoupleSyncWin, SPCS" à la page 302. 6.96.2 Programmation Syntaxe : SpCoupleErrWin(S<Num>=<Fenêtre>{,S<Num>=<Fenêtre>}...) Format abrégé : SPCE(...) avec <Num> Numéro de la broche esclave (index de broches). Champs de saisie : 1...8. Valeur entière. <Fenêtre> Différence de position maximale admissible par rapport à la valeur de consigne en degrés. Champs de saisie : 0 à 359.9999. Fig.6-128: Particularités et restrictions : Syntaxe SpCoupleErrWin (SPCE) La fonction ne doit être programmée qu'avec des broches qui ne font momen‐ tanément pas partie d'un groupe de couplage. 6.97 Décalage angulaire en couplage actif "SpCouplePosOffs, SPCP" 6.97.1 Effet Amorce, durant un couplage de broches actif, un décalage angulaire entre la broche maître et la broche esclave. La vitesse de rotation relative entre la bro‐ che maître et la broche esclave, avec laquelle le décalage est à effectuer, est programmable de façon optionnelle. Pour la durée de cette rotation, la commande remet le signal de sortie spécifique à la broche "Marche synchrone 1" à zéro. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 301/550 Fonctions CN avec syntaxe de langage standard 6.97.2 Programmation Syntaxe : SpCouplePosOffs(S<Num>=<Décalage>{{,S<Num>=<Décalage>}...} { ,POSVEL<Vitesse de rotation>) Format abrégé : SPCP(...) avec <Num> Numéro de la broche esclave (index de broches). Champs de saisie : 1...8. Valeur entière. <Décalage> Angle de rotation absolu entre la broche maître et la broche esclave en degrés. Plage de valeurs : -3600°...+3600° <Vitesse de rotation> La vitesse de rotation relative entre la broche maître et la broche esclave, avec laquelle le décalage est à ef‐ fectuer. L'unité et la valeur de défaut correspondent au para‐ mètre d'entraînement S-0-0222. Une fois indiquée, la <Vitesse de rotation> reste enre‐ gistrée en interne jusqu'à ce qu'elle soit modifiée par un nouvel appel de fonction. Fig.6-129: Particularités et restrictions : Syntaxe SpCouplePosOffs (SPCP) Le décalage angulaire agit de façon addititive par rapport à un écart de cou‐ plage éventuellement configuré (voir chap. 6.95 " Ecart de couplage de la broche esclave SpCoupleDist, SPCD" à la page 299). 6.98 Attente du décalage angulaire "SpCouplePosOffs_Wait, SPCP_WAIT" 6.98.1 Effet Arrête le programme pièce jusqu'à ce qu'un décalage angulaire programmé d'un groupe de couplage (SPCP ; voir chap. 6.97 "Décalage angulaire en cou‐ plage actif SpCouplePosOffs, SPCP" à la page 300) soit effectivement effectué sur la machine. 6.98.2 Programmation Syntaxe : SpCouplePosOffs_Wait(CP=<Groupe>) Format abrégé : SPCP_WAIT(...) avec <Groupe> Numéro du groupe de couplage. Champs de saisie : 1...4. Valeur entière. Fig.6-130: Syntaxe SpCouplePosOffs_Wait (SPCP_WAIT) 302/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.99 Fenêtre de marche synchrone "SpCoupleSyncWin, SPCS" 6.99.1 Effet Configure pour la fonction "Couplage de broche" la différence de position maxi‐ male admissible entre la valeur de consigne et la valeur réelle d'une broche esclave. ● Mode d'action lors de la création/modification d'un couplage (au début de la phase de synchronisation) : Le programme pièce attend jusqu'à ce que la différence de position se situe au sein de l'intervalle défini. ● Mode d'action lors du couplage : Si la différence de position se situe au sein de l'intervalle défini, le signal de sortie spécifique à la broche "Marche synchrone 1" est émis. Lorsque la fonction n'est pas utilisée pour une broche esclave souhaitée, sa fenêtre de marche synchrone est de +/-1 degré. Pour la surveillance supplémentaire durant un couplage actif, voir la fonction "SpCoupleErrWin", chap. 6.96 "Fenêtre d'erreur de la marche synchrone SpCoupleErrWin, SPCE" à la page 300. 6.99.2 Programmation Syntaxe : SpCoupleSyncWin(S<Num>=<Fenêtre>{,S<Num>=<Fenêtre>}...) Format abrégé : SPCS(...) avec <Num> Numéro de la broche esclave (index de broches). Champs de saisie : 1...8. Valeur entière. <Fenêtre> Différence de position maximale admissible par rapport à la valeur de consigne en degrés. Champs de saisie : 0 à 20. Fig.6-131: Particularités et restrictions : Syntaxe SpCoupleSyncWin (SPCS) La fonction ne doit être programmée qu'avec des broches qui ne font momen‐ tanément pas partie d'un groupe de couplage. 6.100 Attente du mode synchrone "SpCouple_Wait, SPC_WAIT" 6.100.1 Effet Arrête le programme pièce, jusqu'à ce qu'un groupe de couplage ait été crée, reconfiguré ou dissocié avec succès (SPCC ; voir chap. 6.94 "Définir (activer) le groupe de couplage, dissocier (désactiver) le groupe de couplage SpCou‐ pleConfig, SPCC" à la page 298). 6.100.2 Programmation Syntaxe : SpCouple_Wait(CP=<Groupe>) Format abrégé : SPC_WAIT(...) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 303/550 Fonctions CN avec syntaxe de langage standard avec <Groupe> Numéro du groupe de couplage. Champs de saisie : 1...4. Valeur entière. Fig.6-132: Syntaxe SpCouple_Wait (SPC_WAIT) 6.101 Définir/dissocier les groupes de broches "SPG.., SPGALL" 6.101.1 Effet Si la fonction "Broches du canal" est activée (MP 1040 00999 =1), les groupes de broches sont automatiquement préréglés lors de la montée en régrime de la commande. La première broche du canal est membre du premier groupe de broches. Les groupes de broches (désignés également broches parallèles) permettent une programmation simplifiée de plusieurs broches par rapport aux fonctions pour les gammes de vitesse, le déplacement vers la droite/gauche, l'arrêt de la broche et l'orientation de la broche. De ce fait, il n'est pas nécessaire de pro‐ grammer les broches une à une. La fonctionnalité "Groupe de broches" ne doit pas être confondue avec un "Groupe de couplage" de deux ou plusieurs broches as‐ servies en position. Tandis que toutes les broches d'un groupe de broches peuvent tourner à différentes vitesses de rotation, les broches d'un groupe de couplage fonctionnent par principe de manière synchrone. 6.101.2 Programmation Syntaxe : SPG<Groupe>(<Numéros>) Définit quelles broches du canal doivent être regrou‐ pées en tant que groupe de broches dans le canal actuel. SPG<Groupe>(0) Remet le groupe dans le canal actuel au paramétrage de défaut. SPG<Groupe>(-1) Dissocie le groupe de broches correspondant dans le canal actuel. SPGALL (0) Remet tous les groupes dans le canal actuel au para‐ métrage de défaut. avec <Groupe> Numéro du groupe de broches. Champs de saisie : 1 à 4, valeur entière. <Numéros> Numéros séparés par des virgules de toutes les bro‐ ches du canal qui doivent être attribués au groupe de broches correspondant. Champs de saisie : 1...8. Fig.6-133: Syntaxe SPG.. (SPGALL) SPG (<Numéros>) est une abréviation de SPG1 (<Numéros>) Particularités et restrictions : ● En cas d'un transfert de broche (GSP, RSP, DSP), l'attribution change de broche du canal à broche du système. Ce changement d'attribution a un effet direct sur le groupe de broches. 304/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard ● Exemple : 6.102 Les ordres concurrentiels pour les broches individuelles et les groupes de broches programmés dans un même bloc génèrent une erreur d'exécution (exemple : N10 M3 M104). GSP(SSP01, S1, SSP07, S2) Les broches du canal 1 et 2 sont attribuées aux broches du système 1 et 7. SPG1(1,2) Le groupe de broches 1 se compose de S1 et S2. M3 Démarrer S1 et S2 (SSP01 et SSP07) avec rotation à droite. GSP(SSP14,S2) À broche 2 est attribuée la broche du système 14. M4 Démarrer S1 et S2 (SSP01 et SSP14) avec rotation à gauche. RSP(S1) Aucune broche du système n'est plus attribuée à la broche du canal 1 (S1). M3 Démarrer S2 (SSP14) avec rotation à droite. Programmation des broches du système "SSp....." : Générali‐ tés Les fonctions suivantes permettent le pilotage des broches du système. Ces fonctions complètent le pilotage traditionnel des broches via des fonctions au‐ xiliaires. L'abréviation SSp veut dire System Spindle, c'est-à-dire broche du système. 6.103 Programmation des broches du système "SSp....." : Program‐ mation de la vitesse de rotation 6.103.1 Effet Définit une vitesse de rotation pour une ou plusieurs broches du système. 6.103.2 Programmation Syntaxe : SSpSpeed, SSPSPEED, SSPS SSpSpeed(<SSpNr.> | <SSpName>, <Vitesse de rotation>{ ,<SSpNr.> |<SSpName>, <Vitesse de rotation>} ...) avec <SSpNr.> 1..32 <SSpName> SSp01 .. SSp32 ou SSP01 .. SSP32 Fig.6-134: Particularités et restrictions : Syntaxe SSpSpeed (SSPS) ● En réglage de défaut, les vitesses de rotation programmées sont inter‐ prétées en tours/min. ● Si G96 est active, la vitesse de rotation programmée est interprétée en tant que vitesse de coupe en m/min. ● La commande limite la consigne de vitesse de rotation de manière à ce que les limites de la gamme de vitesse active et de la limitation de vitesse de rotation programmée (voir SMin, SMax, SSpMin et SSpMax) soient respectées. ● La vitesse de rotation réglée vaut tant qu'elle n'a pas été écrasée par une nouvelle vitesse de rotation (action modale). Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 305/550 Fonctions CN avec syntaxe de langage standard ● Exemple : En cas de la définition du signal d'interface "qSp_SValueSD", la définition de la vitesse de rotation se fait via la date du système "SysSpCmdData[n]/ Speed". La valeur programmée est ignorée. SSpSpeed(SSp05, 1000, SSp08, 2000) Met la vitesse de rotation de la bro‐ che du système 5 à 1000 et la vi‐ tesse de rotation de la broche du système 8 à 2000 tours/min. 6.104 Programmation des broches du système "SSp....." : Program‐ mation de mouvement 6.104.1 Effet Démarre ou arrête une ou plusieurs broches du système. 6.104.2 Programmation Syntaxe : SSpMove, SSPMOVE, SSPM SSpMove(<NoSSp> | <SSpName>, <Ordre>{ ,<SSpNr.> |<SSpName>, <Or‐ dre>} ...) avec <SSpNr.> 1..32 <SSpName> SSp01 .. SSp32 ou SSP01 .. SSP32 <Ordre> 3 - Rotation de la broche vers la droite 4 - Rotation de la broche vers la gauche 5 - Arrêt de la broche Fig.6-135: Exemple : Syntaxe SSpMove (SSPM) SSpMove(SSP05, 3, SSP08, 5) Démarre la broche du système 5 avec mar‐ che à droite et arrête la broche du système 8. 6.105 Programmation des broches du système "SSp....." : Orienta‐ tion de la broche 6.105.1 Effet Les broches du système programmées se positionnent sur la position angulaire programmée. 6.105.2 Programmation Syntaxe : SSpOri, SSPORI, SSPO SSpOri(<NoSSp> | <SSpName>, <Angle>{ ,<SSpNr.> |<SSpName>, <Angle>} ...) avec <SSpNr.> 1..32 <SSpName> SSp01 .. SSp32 ou SSP01 .. SSP32 <Angle> 0.0 .. 359.9999 Fig.6-136: Syntaxe SSpOri (SSPO) 306/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Particularités et restrictions : Exemple : ● La CN attend l'exécution du mouvement d'orientation. ● Contrairement au mouvement d'orientation avec M19, M119, ..., l'angle doit toujours être programmé. ● Si, dans le même bloc CN, un mouvement défini avec SSpMove est éga‐ lement programmé pour une broche, SSpMove est ignoré (aucun mes‐ sage d'erreur). ● En cas de la définition du signal d'interface "qSp_SValueSD", la définition des positions se fait via la date du système "SysSpCmdData[n]/OriPos". La valeur programmée est ignorée. Oriente la broche du système 5 à 20 de‐ grés et la broche du système 8 à 0 degré. SSpOri(5, 20, 8, 0) 6.106 Programmation des broches du système "SSp....." : Limiter la vitesse de rotation minimale 6.106.1 Effet Limite la vitesse de rotation minimale d'une ou plusieurs broches du système. 6.106.2 Programmation Syntaxe : SSpMin, SSPMIN SSpMin(<NoSSp> | <SSpName>, <Vitesse de rotation>{ ,<SSpNr.> |<SSpName>, <Vitesse de rotation>} ...) avec <SSpNr.> 1..32 <SSpName> SSp01 .. SSp32 ou SSP01 .. SSP32 Fig.6-137: Exemple : Syntaxe SSpMin (SSPMIN) SSpMin(5, 100, 8, 500) Limite la vitesse de rotation minimale de la bro‐ che du système 5 à 100 et la vitesse de rotation minimale de la broche du système 8 à 500 tours/min. SSpMin(5, 0, 8, 0) Supprime la limite inférieure de la vitesse de rotation pour les broches du système 5 et 8. 6.107 Programmation des broches du système "SSp....." : Limiter la vitesse de rotation maximale 6.107.1 Effet Limite la vitesse de rotation maximale d'une ou plusieurs broches du système. 6.107.2 Programmation Syntaxe : SSpMax, SSPMAX SSpMax(<SSpNr.> | <SSpName>, <Vitesse de rotation>{ ,<SSpNr.> |<SSpName>, <Vitesse de rotation>} ...) avec <SSpNr.> 1..32 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 307/550 Fonctions CN avec syntaxe de langage standard <SSpName> SSp01 .. SSp32 ou SSP01 .. SSP32 <Vitesse de rotation> > 0 Limite supérieure de la vitesse de rotation en tours/ min. -1 désactive la limitation de la vitesse de rotation. Fig.6-138: Exemple : Syntaxe SSpMax SSpMax(SSp05, 2000, SSp08, 3000) Limite la vitesse de rotation maximale de la broche du système 5 à 2000 et la vitesse de rotation maximale de la broche du système 8 à 3000 tours/ min. SSpMax(SSp05, -1, SSp08, -1) Supprime la limite supérieure de la vi‐ tesse de rotation pour les broches du système 5 et 8. 6.108 Programmation des broches du système "SSp....." : Changer la gamme de vitesse 6.108.1 Effet Change la gamme de vitesse d'une ou plusieurs broches du système. 6.108.2 Programmation Syntaxe : SSpGear, SSPGEAR SSpGear(<NoSSp> | <SSpName>, <Gamme de vitesse>{ ,<SSpNr.> |<SSpName>, <Gamme de vitesse>} ...) avec <SSpNr.> 1..32 <SSpName> SSp01 .. SSp32 ou SSP01 .. SSP32 <Gamme de vitesse> 1..4 pour les gammes de vitesse 1 à 4. 8 pour la position neutre. Fig.6-139: Particularités et restrictions : Exemple : Syntaxe SSpGear ● La CN attend l'exécution du changement de gamme de vitesse. ● La sélection automatique de la gamme de vitesse est une caractéristique du canal. Pour cette raison, il est impossible de changer entre Automati‐ que et Manuel avec "SSpGear". ● Une sélection automatique de la gamme de vitesse active dans un canal n'est pas affectée par SSpGear. Cela signifie que, en cas de "M40" actif, le prochain mot S programmé procède éventuellement à un changement de gamme de vitesse. SSpGear(SSP05, 4) change pour la broche du système 5 à la 4ème gamme de vitesse. 308/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.109 Programmation des broches du système "SSp....." : Valider/ reprendre la broche réservée 6.109.1 Effet Valide une ou plusieurs broche(s) actuellement réservée(s) par les réglages de mouvement et d'orientation du canal actuel. Les broches validées peuvent être reprises dans le canal actuel. Cette fonctionne n'existe que pour des raisons de symétrie. L'utilisation de la fonction du canal "SpAdmin" est recommandée. 6.109.2 Programmation Syntaxe : SSpAdm, SSPADM SSpAdm(<NoSSp> | <SSpName>, <Mode> { ,<SSpNr.> |<SSpName>, <Mode>} ...) avec <SSpNr.> 1..32 <SSpName> SSp01 .. SSp32 ou SSP01 .. SSP32 <Mode> 1 reprend une broche validée. 0 valide une broche dans certaines conditions. Fig.6-140: Exemple : Syntaxe SSpAdm SSpAdm(SSP05, 0, SSP08, 1) valide la broche du système 5 et reprend la broche du système validée 8. 6.110 Programmation des broches du système "SSp....." : Désactiver la gestion de mouvement des broches pour certains canaux 6.110.1 Effet Désactive la gestion de mouvement des broches d'une broche du système pour certains canaux. Cette fonction a le même effet que le paramètre machine 1040 00070 "Gestion des broches". 6.110.2 Programmation Syntaxe : SSpAdmOff, SSPADMOFF SSpAdmOff(<NoSSp> | <SSpName>, <NoCanal> {, <NoCanal> } ... ) SSpAdmOff(<SSpNr.> | <SSpName> ) avec <SSpNr.> 1..32 <SSpName> SSp01 .. SSp32 ou SSP01 .. SSP32 <NoCanal> 1 .. 12: Numéros du canal. 0: validation pour les ordres de l'interface de bit. Fig.6-141: Particularités et restrictions : ● Syntaxe SSpAdmOff Par dérogation du schéma valable pour les autres fonctions SSp, cette fonction ne peut influencer qu'une broche du système à la fois. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 309/550 Fonctions CN avec syntaxe de langage standard ● Exemple : Un préréglage du canal 0 désactive la gestion de mouvement pour cette broche du système selon le réglage de l'interface bit. SSpAdmOff(SSP05, 1 , 2 , 4) désactive la gestion de mouvement de la broche du système 5 pour les canaux 1, 2 et 4. SSpAdmOff(5) remet la gestion de mouvement pour la broche du système 5 à l'état du MP 1040 00070. 6.111 Programmation des broches du système "SSp....." : Commu‐ tation interface de position/de vitesse de rotation 6.111.1 Effet Commute l'entraînement des broches du système programmées entre le mode d'asservissement en vitesse et le mode d'asservissement en position. 6.111.2 Programmation Syntaxe : SSpMode, SSPMODE SSpMode(<NoSSp> | <SSpName>, <Mode> { ,<SSpNr.> |<SSpName>, <Mo‐ de>} ...) avec <SSpNr.> 1..32 <SSpName> SSp01 .. SSp32 ou SSP01 .. SSP32 <Mode> 1: activer l'interface de position. 0: désactiver l'interface de position. Fig.6-142: Particularités et restrictions : Exemple : Syntaxe SSpMode L'activation de l'interface de position se fait toujours quand la broche est en arrêt. SSpMode(5, 1, 8, 0) active l'interface de position pour la broche du système 5 et désactive l'interface de position pour la broche du système 8. 6.112 Activer le mode axe C pour les broches "SpindleToAxis, STA" 6.112.1 Effet Commute une broche qui est inscrite ● en MP 1001 00001 (Type de fonction d'entraînement) en tant que broche/ axe C et ● en MP 1040 00001 (Sélection du type de broche) en tant que broche SERCOS en mode axe C. Pour des fins de l'usinage, la broche devient ainsi un axe asynchrone. Sur l'écran, elle apparaît en tant qu'axe asynchrone qui se situe dans un pre‐ mier temps sur une position quelconque entre 0 et 359,9999 degrés. 310/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Pour de plus amples informations relatives à la fonction "Transfert d'axe", voir le manuel "Description des fonctions". 6.112.2 Programmation Syntaxe : SpindleToAxis(<PAN>|<PAI>{ ,<PAN>|<PAI>}...) Format abrégé : STA(..) avec <PAN> Nom physique de l'axe. Définit la broche qui doit être commutée en mode axe C. <PAI> Index physique de l'axe. Effet similaire à <PAN>. Fig.6-143: Particularités et restrictions : Exemple : Syntaxe SpindleToAxis (STA) ● Une broche indiquée doit être à l'arrêt. Si cela n'est pas le cas, la com‐ mande génère un message d'erreur et interrompt le programme. ● Les positions d'axe d'un même bloc doivent toujours être programmées suivant l'expression "SpindleToAxis(...)". : N030 STA(CH) : L'axe physique CH (c.à.d. la broche qui porte le nom CH dans le mode axe) est transformé en axe asynchrone. 6.113 Arrondissage des angles avec des splines "SplineCornering, SCO" 6.113.1 Effet La fonction CN modale "Arrondissage des angles avec des splines" arrondit tous les raccords de contour non tangentiels avec une spline. 6.113.2 Programmation Syntaxe : SplineCornering(E<Écart>) "Arrondissage des angles ACTIVÉ" avec indication de la tolérance E maximale admissible. SplineCornering(DEF) "Arrondissage des angles ACTIVÉ" avec tolérance E du MP 7050 00110. SplineCornering(L1=<L1>,L2=<L2>) "Arrondissage des angles ACTIVÉ" avec indication d'un écart angulaire préliminaire ou subséquent l1 ou l2. SplineCornering(0) "Arrondissage des angles DÉSACTIVÉ." Format abrégé : SCO Fig.6-144: Particularités et restrictions : ● Syntaxe SplineCornering (SCO) L'arrondissage se fait dans toutes les coordonnées (jusqu'à 8) d'un canal pour tout type de contour. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 311/550 Fonctions CN avec syntaxe de langage standard ● Les mêmes paramètres machine s'appliquent que pour l'arrondissage cir‐ culaire des angles. 6.114 Définition du type de spline "SplineDef, SDF" 6.114.1 Effet L'IndraMotion MTX supporte les types de spline suivants : ● Type de spline 0 : spline avec programmation de coefficients (coefficients des polynômes du système DAO/FAO), ● Type de spline 1 : courbes spline C1constantes cubiques avec programmation de repères fixes (raccords tangentiels aux points fixes), ● Type de spline 2 : courbes spline C1constantes cubiques avec programmation de repères fixes (raccords à courbure constante aux points fixes), ● Type de spline 3 : courbe spline B avec programmation de points de contrôle (tracé de la courbe près des repères fixes). Le type de spline souhaité est sélectionné et initialisé à l'aide de la fonction "SplineDef" (SDF). Ensuite, la programmation spline peut être activée à l'aide de la fonction "G6". 6.114.2 Programmation Syntaxe : SplineDef(<Id>, {<Membres>}) Initialiser le type de spline. Format abrégé : SDF( ..) avec <Id> Fig.6-145: Nombre entier à 4 chiffres au maximum pour la variante spline. Syntaxe SplineDef (SDF) Chiffre Type de spline Millier Centaine Dizaine Unité Type de spline Paramétrage Calcul des tangentes Degré de lissage 0...3 0: aucun 0: aucun 1...5 1: équidistant 1: Bessel 2: triangulé 2: Akima 3: centripète 3: Rapport à la corde Type de spline 0 0 0 0 1...5 Type de spline 1 1 1...3 0...3 1...5 312/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Chiffre Type de spline Millier Centaine Dizaine Unité Type de spline Paramétrage Calcul des tangentes Degré de lissage 0...3 0: aucun 0: aucun 1...5 1: équidistant 1: Bessel 2: triangulé 2: Akima 3: centripète 3: Rapport à la corde Type de spline 2 2 1...3 0...3 1...5 Type de spline 3 3 1...3 0 1...5 Fig.6-146: Aperçu des types de spline <Membres> Non applicable pour type de spline 0 ! Liste avec les noms des coordonnées/axes qui doivent participer au mouvement spline. Dans <Membres>, les coordonnées/axes non program‐ mé(e)s sont déplacé(e)s linéairement. Il est également possible de programmer des coordon‐ nées d'orientation en tant que spline. Dans ce cas, il suffit d'indiquer sous <Membres> "O" pour l'orientation, ou les coordonnées polaires "phi" et "thêta". Fig.6-147: Exemples : Suite de la syntaxe SplineDef (SDF) N10 SplineDef(5) Initialiser le type de spline 0 avec le degré de lissage 5. : N20 SplineDef(2203,X,Y,Z) : N30 SplineDef(3103,x,y,z,O) : Initialiser le spline de type 2 avec le degré de spline 3 et un paramétrage triangulé. Les coordonnées X, Y et Z sont intéressées. Initialiser le spline de type 3 avec le degré de lissage 3 et un paramétrage équidistant. Les coordonnées x, y et z ainsi que les coordonnées d'orientation sont intéres‐ sées. 6.115 Répartition du parcours programmable "Split, SPLIT" 6.115.1 Effet Divise les blocs de déplacement programmés en plusieurs segments de par‐ cours, s'ils dépassent une certaine longueur. 6.115.2 Programmation Syntaxe : Split({<Mode>}{,<Longueur partielle>}) Format abrégé : SPLIT(...) avec Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 313/550 Fonctions CN avec syntaxe de langage standard <Mode> 0: La fonction n'agit pas. 1: La fonction agit de façon modale. 2: La fonction n'agit que dans le bloc programmé. Rien n'a été programmé : mode d'action comme 0. <Longueur partielle> Pour les blocs linéaires : longueur du parcours partiel. Pour les blocs circulaires : longueur du segment d'arc. Unité de programmation, voir les coordonnées d'axes. Si une <Longueur de segment> n'est pas programmée, alors : La <Longueur partielle> efficace correspond environ à la course maximale qu'il est possible de couvrir en 2 cycles d'interpolation consécutifs en fonction de l'avan‐ ce actuelle. Fig.6-148: Particularités et restrictions : Exemple : Syntaxe Split ● La répartition du parcours programmable ne divise un bloc de déplace‐ ment que lorsque sa longueur dépasse la <Longueur partielle>. ● Si la <Longueur partielle> n'est pas un diviseur entier de la course, le parcours restant est également déplacé séparément. ● Si la répartition du parcours programmable est efficace bloc par bloc (<Mode>=2), un mouvement de déplacement doit être programmé dans le même bloc. : N20 Split(2,10) X100 : Répartition du parcours efficace bloc par bloc N20 AC‐ TIVÉE. Le mouvement de déplacement en N20 est divisé en segments de parcours de 10 mm chacun. : N120 Split(1) : : : Répartition du parcours efficace de façon modale à par‐ tir de N120 ACTIVÉE. Les mouvements de déplace‐ ment à partir de N120 sont divisés en segments de parcours qui peuvent être effectués en environ 2 cycles d'interpolation. : Répartition du parcours efficace de façon modale à par‐ tir de N220 ACTIVÉE. Les mouvements de déplace‐ ment à partir de N220 sont divisés en segments de parcours de 3 mm chacun. N320 Split() Répartition du parcours programmable DÉSACTIVÉE. N220 Split(1,3.0) : : 6.116 Broche : Commutation entre l'interface de position/de vitesse de rotation "SpMode, SPM" 6.116.1 Effet Commute l'entraînement de la broche entre le mode d'asservissement en vi‐ tesse de rotation et le mode d'asservissement en position. 314/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.116.2 Programmation Syntaxe : SpMode(S<Num>=<Mode>{ ,S<Num>=<Mode>}...) Format abrégé : SPM(...) avec <Num> Numéro de la broche (index de broches). Champs de saisie : 1...8. Valeur entière. <Mode> 0: Mode d'asservissement en vitesse de rotation. 1: Mode d'asservissement en position. Fig.6-149: Particularités et restrictions : Exemple : Syntaxe SpMode (SPM) ● L'orientation de la broche est interrompue. ● Une broche en cours de rotation est arrêtée pour un court instant lors de la commutation au mode d'asservissement en position. N60 SPM(S1=1,S2=1) : 1. Commuter la 1ère et la 2ème broche au mode d'as‐ servissement en position. 6.117 Paramétrage de l'orientation statique de l'outil "StatToolOri, STO" 6.117.1 Effet À l'aide de G47(...) ou de G78, les corrections de longueur de l'outil L1, L2 et L3 sont attribuées au directions de coordonnées L1, L2 et L3. Ces directions de coordonnées forment un système de coordonnées et le vecteur de correction pour la longueur de l'outil L dispose dans ce système de coordonnées des composantes L1, L2 et L3. L'ordre "StatToolOri" sert à faire tourner L dans ce système de coordonnées autour des angles d'Euler phi, thêta et psi. Pour cette orientation de l'outil, le vecteur L effectue des rotations comme suit : 6.117.2 ● d'abord autour de l'angle phi pour la direction de coordonnée L3, ● ensuite autour de l'angle thêta pour la direction de coordonnée L2 tournée simultanément, ● et ensuite autour de l'angle psi (ψ) pour la direction de coordonnée L3 tournée simultanément deux fois. Programmation Syntaxe : StatToolOri({<φ>} {,{<ϑ>} {,<ψ>}}) Format abrégé : STO( ..) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 315/550 Fonctions CN avec syntaxe de langage standard avec <φ>,<ϑ>,<ψ> Angles d'Euler absolus en degrés. La programmation AC/IC est permise. Plage de valeurs : 0° ≤ φ < 360°; 0° ≤ ϑ ≤ 180°; 0° ≤ ψ ≤ 360°. Les valeurs en dehors de ces limites sont converties automatiquement en l'intervalle correspondant. Fig.6-150: Particularités et restrictions : Syntaxe StatToolOri (STO) ● L'orientation statique de l'outil est paramétrée par "STO "et activée par "G47" (voir chap. 5.2.21 "Correction de la longueur de l'outil G47, G48" à la page 126). ● Si "G47" est déjà active lors de l'exécution de STO, la modification de l'orientation de l'outil prend immédiatement effet. ● Dans le cas où des désignations de coordonnées n'ont pas eu attribuées via G47(…) ou G78 aux trois corrections de longueur de l'outil L1, L2 et L3, la commande ne tient compte que des coordonnées attribuées pour l'orientation de l'outil et génére un avertissement. 6.118 Déplacement dans le TCS "TCM( , , )" 6.118.1 Effet Mouvement de déplacement linéaire dans le système de coordonnées de la pièce à usiner (TCS), même si la transformation d'axe 2 est active. Il s'agit d'une programmation relative locale, c'est-à-dire l'indication de position programmée est interpretée de manière incrémentale, indépendamment de G90/G91. De plus amples informations relatives à l'utilisation et au paramétrage du "TcsMove" sont données dans le manuel "Description des fonctions". 6.118.2 Programmation Syntaxe : TCM({<ValX>},{<ValY>},{<ValZ>}) (alternativement : TcsMove(,,)) avec <ValX>, <ValY>, <ValZ> Fig.6-151: Exemple : Valeurs à déplacer de manière incrémentale, par rap‐ port au système de coordonnées de la pièce à usiner (TCS). Syntaxe TCM TCM (,,-100) ;Immerger 100 [mm] en direction de l'outil. TCM (,,200) ;Retirer 200 [mm] en direction de l'outil. 6.119 Guidage tangentiel de l'outil "TangTool, TTL" 6.119.1 Effet Guide un axe rotatif ou infini dans un angle réglable le long de la trajectoire programmée sur le plan actif. De cette façon, il est possible de déplacer un outil, à tout moment durant l'intervention, sous l'angle d'attaque requis par rap‐ port à la trajectoire programmée. 316/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Afin de faire tourner l'axe de l'outil vers chaque angle d'attaque nécessaire, la fonction prend en considération une symétrie d'outil éventuelle pour les outils à plusieurs arêtes de coupe. En outre, la commande peut, en cas d'un coude entre deux segments de contour, insérer automatiquement un bloc intermé‐ diaire pour tourner l'axe d'outil de l'angle nécessaire. Pour cette fonction s'applique ce qui suit : ● Lors d'une position à 0 degré de l'axe d'outil, la direction de coupe de défaut pour l'outil est parallèle à la direction de déplacement positive de l'axe primaire du plan actuel. Fig.6-152: ● Position 0 degré de l'axe de rotation de l'outil L'angle d'attaque indique la différence angulaire entre la trajectoire et la direction de coupe de défaut pour l'outil. Il est de 0 degré, lorsque la direction de coupe de défaut pour l'outil suit un tracé tangentiel par rapport à la trajectoire. Fig.6-153: ● Angle d'attaque "TangTool" ne provoque aucun déplacement lorsqu'elle est activée. Un axe d'outil programmé n'est réglé qu'à partir du déplacement suivant. En fonction de l'angle de bloc intermédiaire programmé, il y a soit : ● 6.119.2 – un déplacement préalable d'un bloc intermédiaire pour la rotation de l'outil, soit – un saut au début du bloc sur la position de réglage. Le calcul de la rotation requise de l'axe d'outil pour un angle d'attaque donné sur une trajectoire circulaire s'effectue durant le cycle d'interpola‐ tion. Pour ce type de segments de contours, l'axe de l'outil continue à tourner en cycle d'interpolation autour de l'angle d'attaque actuel calculé. Programmation Syntaxe : TangTool{({TAX{=}<Axe>} {,SYM{=}<s>}{,ANG{=}<a>} {,IA{=}<zsw>}{,PLC{=}<p>})} Guidage tangentiel de l'outil ACTIVÉ. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 317/550 Fonctions CN avec syntaxe de langage standard TangTool() ou Guidage tangentiel de l'outil DÉSACTIVÉ. TangTool(0) Format abrégé : TTL( ..) avec <Axe> Désignation de l'axe sur lequel doit agir le guidage tan‐ gentiel de l'outil. Les éléments suivants sont permis : nom logique ou physique de l'axe ainsi que numéro logique d'axe. Si rien n'a été programmé, MP 7050 00210 est actif. <s> Symétrie d'outil (en règle générale le nombre d'arêtes de coupe). Valeur de saisie : entière, inégale à 0. Un outil avec la symétrie <s> atteint lors d'une rotation de 360 degrés / <s> une position techniquement équi‐ valente. Exemples : outil rectangulaire : <s>= 2, outil carré : <s>= 4. 1: Outil asymétrique ou équipé d'une seule arête de cou‐ pe. >0: Outil symétrique qui possède plusieurs arêtes de coupe situées à la même distance les unes des autres. En cas d'un coude entre segments de contour, l'outil tourne de façon à ce que l'arête de coupe la plus proche puisse se positionner avec l'angle d'attaque par rapport au contour. <0: Lors d'une inversion de direction (coude à 180 degrés), l'outil n'effectue pas de rotation, indépendamment de l'angle d'attaque. Pour le reste, voir ">0". Si rien n'a été programmé, MP 7050 00220 est actif. <a> Angle d'attaque. Plage de valeurs : -180 degrés à +180 degrés. Indique la différence angulaire entre la trajectoire et la direction de coupe par défaut de l'outil. Si rien n'a été programmé, MP 7050 00250 est actif. On y définit si l'angle actuel de l'axe de rotation de l'outil ou la valeur de MP 7050 002540 doit être utilisé(e) en tant qu'angle d'attaque. 318/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard <zsw> Angle de bloc intermédiaire. Plage de valeurs : 0 à 180 degrés. Définit à partir de quel angle de coude entre deux blocs, un bloc intermédiaire est à insérer pour la rotation de l'axe d'outil. En cas d'un angle de coude inférieur à <zsw>, aucun bloc supplémentaire n'est inséré pour la rotation. L'outil saute sur la nouvelle position au début du bloc suivant. Si rien n'a été programmé, MP 7050 00230 est actif. <p> Activer ou désactiver la communication CN-API durant l'exécution d'un bloc intermédiaire. 0: Communication CN-API DÉSACTIVÉE. La CN exécute le bloc intermédiaire sans condition. 1: Communication CN-API ACTIVÉE. L'exécution d'un bloc de rotation est pilotée via la communication CNAPI. Fig.6-154: Exemples : Syntaxe TangTool (TTL) Pour l'axe inscrit dans MP 7050 00210, le guidage tangentiel de l'outil est activé avec les valeurs de paramètre machine correspondantes. TTL : : : : TTL(TAX=C,SYM1,ANG90,IA20,PLC0) : TTL(TAX3,SYM1,ANG90,IA20,PLC0) : TTL(TAX[NAME$],SYM1,ANG90,IA20) : Particularités et restrictions : Programmation avec le nom logique de l'axe. Programmation avec le numéro logi‐ que de l'axe. Programmation avec une variable CPL. ● La fonction "Guidage tangentiel de l'outil" ne doit pas être activée en mê‐ me temps que la fonction "Orientation tangentielle de l'outil" (voir chap. 6.120 "Orientation tangentielle de l'outil TangToolOri, TTO" à la page 318). ● Le "Guidage tangentiel de l'outil" ne doit pas être programmé conjointe‐ ment avec un mouvement de déplacement. 6.120 Orientation tangentielle de l'outil "TangToolOri, TTO" 6.120.1 Effet N'agit qu'en combinaison avec les fonctions "Découpage-poinçon‐ nage" (voir chap. 6.78 "Découpage-poinçonnage Punch, PUN" à la page 281) et "Grignotage" (voir chap. 6.57 "Grignotage Nibble, NIB" à la page 247). Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 319/550 Fonctions CN avec syntaxe de langage standard Si le découpage-poinçonnage/grignotage est activé, cette fonction assure qu'un outil de découpage-poinçonnage/grignotage soit positionné pour chaque course sous un angle réglable par rapport à la trajectoire programmée. Lors d'une course en début de bloc, un bloc pour la rotation de l'outil est – si besoin est – ajouté automatiquement. La commande calcule automatiquement la direction de rotation optimale (che‐ min le plus court). L'axe de rotation est défini de façon fixe via MP 7050 00210. 6.120.2 Programmation Syntaxe : TangToolOri({SYM<s>},{ANG<a>}) ou TangToolOri(1) TangToolOri Orientation tangentielle de l'outil ACTIVÉE. TangToolOri() ou Orientation tangentielle de l'outil DÉSACTIVÉE. TangToolOri(0) Format abrégé : TTO... avec <s> Symétrie d'outil (en règle générale le nombre d'arêtes de coupe). Valeur de saisie : valeur entière, supérieure à 0. Un outil avec la symétrie <s> atteint lors d'une rotation de 360 degrés / <s> une position techniquement équi‐ valente. Exemples : outil rectangulaire : <s>= 2, outil carré : <s>= 4. 1: Outil asymétrique ou équipé d'une seule arête de cou‐ pe. >1: Outil symétrique qui possède plusieurs arêtes de coupe situées à la même distance les unes des autres. SYM non programmée : mode d'action comme SYM1. <a> Angle d|attaque par rapport à la trajectoire program‐ mée. Plage de valeurs : -180 degrés à +180 degrés. 0: L'axe d'outil est positionné à un angle de 0 degré par rapport à la trajectoire programmée. ANG non programmée : mode d'action comme ANG0. Fig.6-155: Particularités et restrictions : ● Syntaxe TangToolOri, TTO La fonction ne doit pas être programmée conjointement avec la fonction "TangTool" (Guidage tangentiel de l'outil, TTL). 320/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Exemple : ● Lorsque la fonction est active, le "Guidage tangentiel de l'outil" (TTL, voir chap. 6.119 "Guidage tangentiel de l'outil TangTool, TTL" à la page 315) n'est pas possible. ● G90 est active (Programmation absolue). ● Plan actif : X/Y ● Axe d'outil : C (modulo 360) ● Position actuelle : X=0, Y=0, C=0 ● Découpage-poinçonnage/Grignotage DÉSACTIVÉ. : N10 TangToolOri(1) Orientation tangentielle de l'outil ACTIVÉE, avec mode d'action similaire à SYN1 et ANG0. N20 G1 G91 X10 Y10 Pas encore d'orientation de l'axe C, car le découpagepoinçonnage/grignotage est désactivé. N30 X10 Y10 Punch(1) Découpage-poinçonnage ACTIVÉ. L'axe C effectue une rotation à 45°. L'axe C effectue une rotation à -90°. N40 Y-10 Suivant calcul modulo : C=270°. N50 Punch(0) Découpage-poinçonnage DÉSACTIVÉ. N60 LEN=30 Nibble(1) Grignotage ACTIVÉ. Longueurs de blocs partiels souhaitées : 30 mm. N70 G2 X114.6 I57.3 J0 Demi-cercle avec longueur d'arc 180 mm. Le bloc est divisé en 6 blocs partiels d'une longueur d'arc de 30 mm chacun. N80 TTO() Orientation tangentielle de l'outil DÉSACTIVÉE. : Fig.6-156: Exemple TangToolOri (TTO) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 321/550 Fonctions CN avec syntaxe de langage standard 6.121 Dégagement de taraudage "TappRet1, TappRet2" 6.121.1 Effet Si la fonction "Taraudage sans mandrin de compensation (G63)" est interom‐ pue (p.ex. remise à zéro, panne de courant) lors de la pénétration du taraud, il est possible avec les fonctions "TappRet1"et "TappRet2" de dégager le taraud du trou en le remontant. La programmation peut se faire manuellement ou dans un programme de pièce/sous-programme (cycle). 6.121.2 Programmation Syntaxe : TappRet1 Commute la/les broche(s) qui, après la remise à zéro (montée en régime de la commande), tourne(nt) en mo‐ de d'asservissement en vitesse de rotation au mode d'asservissement en position. TappRet2 F… Déclenche le mouvement de dégagement. Ceci est fait avec la valeur F programmée. Fig.6-157: Syntaxe TappRet1, TappRet2 G9321 doit être programmée avant le mouvement de dégagement ! Lors de l'application de la fonctionnalité "Dégagement de taraudage", il faut distinguer 2 cas de figure différents : ● Dégagement après la remise à zéro (dégagement automatique) : Les données mémorisées au début du taraudage sont sauvegardées. À l'aide de la fonction "TappRet1", les broches sont commutées en mode asservissement en position. Si "TappRet2" est programmée ensuite, le taraud retourne à sa position initiale programmée en remontant du trou. Seule "TappRet2" doit être programmée conjointement avec l'avance souhaitée (valeur F). ● Dégagement après panne de courant (dégagement manuel) : Les informations de dégagement mémorisées au début du taraudage sont perdues. Les paramètres correspondants doivent être explicitement pro‐ grammés avec "TappRet2". G91 TappRet2 S<Vitesse de rotation> F<Avance> M3/M4 <Axe de taraudage> <Course incrémentale> Condition préalable pour l'utilisa‐ tion de TappRet1/TappRet2 : ● ● Les axes C intéressés doivent être définis en tant qu'axe rotatif infini : – MP 1001 00004 (/AXSP/Dr[1]/AxFun/ModCalc/ENA_ModCalc) – Paramètre SERCOS S-0-0076 = Ob1xxxxxxx. Dans le mode de fonctionnement auxiliaire SERCOS 1 (S-0-0033), le bit 8 pour le changement du mode contrôlé par l'entraînement ne doit pas avoir été posé : S-0-0033 = 0b000001011 ou 0b000001100. Utilisation de sous-programmes pour le dégagement de taraudage : Afin de faciliter l'application de la fonction "Dégagement de taraudage", il est recommandé d'écrire un sous-programme (cycle) d'une part pour le dégage‐ ment automatique et d'autre part pour le dégagement manuel. À l'aide des paramètres machine 3090 00001 (/NCP/SubProg/GFun/Fun[1]/GCode) et 3090 00002 (/NCP/SubProg/GFun/Fun[1]/SubProg), ces sous-programmes peuvent ensuite être assignés à n'importe quel code G libre. 322/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.122 Sélection de broches pour le taraudage sans mandrin de com‐ pensation "TappSp, TSP" 6.122.1 Effet ● Définit quelles sont les broches auxquelles doit se référer la fonction G63. La fonction "TappSp" est efficace jusqu'à ce qu'elle est reprogrammée. Elle reste également efficace après une "Remise à zéro" ! ● 6.122.2 Si "TappSp" n'est pas programmée, G63 se réfère toujours à la 1ère bro‐ che. Programmation Syntaxe : TappSp(CAX<i>) Activer le taraudage pour les différentes broches à l'aide du/des numéro(s) de broche. TappSp(GRP<j>) Activer le taraudage pour toutes les broches d'un grou‐ pe de broches. TappSp(GRP<j>{,CAX<i>}) Activer le taraudage pour toutes les broches d'un grou‐ pe de broches et pour des broches supplémentaires à l'aide du/des numéro(s) de broche. Format abrégé : TSP( ..) avec <i> Numéro de la broche à laquelle se rapporte G63. Plage de valeurs : 1 ... n, n étant le numéro de broche le plus élevé du système (8 au maximum). Nombre en‐ tier. Plusieurs broches sont programmées par plusieurs CAX <i>, séparées par des virgules. <j> Numéro du groupe de broches à laquelle se rapporte G63. Plage de valeurs : 1 ... n, n étant le numéro de groupe de broches le plus élevé du système (4 au maximum). Nombre entier. Fig.6-158: Particularités et restrictions : Exemple : Syntaxe TappSp (TSP) ● Seul un groupe de broches peut être activé pour G63. ● Les numéros de broche et éventuellement 1 groupe de broches peuvent être combinés à volonté. N20 TappSp(CAX2) : N120 TappSp(CAX2,CAX4,CAX7) : Sélectionner pour G63 la broche avec le numéro de broche 2. Sélectionner pour G63 les broches avec les numéros de broche 2, 4 et 7. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 323/550 Fonctions CN avec syntaxe de langage standard Sélectionner pour G63 le groupe de broches avec le numéro 2. N220 TappSp(GRP2) : Sélectionner pour G63 le groupe de broches avec le numéro 3, et sélec‐ tionner également la broche avec le numéro de broche 4. N320 TappSp(GRP3,CAX4) : 6.123 Définition du TCS dans les coordonnées du programme "TcsDef, TCS" 6.123.1 Effet Avec une transformation de 6 axes active, cette fonction génère un système de coordonnées de l'outil TCSp qui peut être décalé et/ou tordu par rapport au dernier TCS actuel. Les valeurs de coordonnées indiquées pour le TCSp sont converties en interne par la CN et stockées dans la mémoire des corrections de l'outil. Le TCSp généré peut être supprimé avec la désactivation de la fonction. Dans ce cas, le dernier TCS actuel est réactivé. 6.123.2 Programmation Syntaxe : 1. Dans la mesure où cela n'a pas encore été fait, activer le type de trans‐ formation d'axe 3333301 (pour la fonction "Coord(...)", chap. 6.24 "Sélectionner la transformation d'axe Coord, CRD" à la page 206). 2. Utiliser la syntaxe indiquée ci-dessous. TcsDef({<Position>},{<Ori‐ Définir et activer la position et l'orientation du TCSp. entation>}) Pour la syntaxe détaillée, voir ci-dessous. TcsDef() ou Supprimer le TCSp et réactiver le dernier TCS actuel. TcsDef(0) Format abrégé : TCS(...) Fig.6-159: Syntaxe détaillée : Syntaxe TcsDef (TCS) TcsDef({<x><px>},{<y><py>},{<z><pz>},{<phi><φ>},{<theta><ϑ>},{<psi><ψ>} ou TcsDef({<x><px>},{<y><py>},{<z><pz>},{O(<φ> ,<ϑ> ,<ψ> )} ou TcsDef({<x><px>},{<y><py>},{<z><pz>},{Ox(<φx>,<ϑx>) Oy(<φy>,<ϑy>)} ou TcsDef({<x><px>},{<y><py>},{<z><pz>},{Ox(<φx>,<ϑx>) Oz(<φz>,<ϑz>)} ou TcsDef({<x><px>},{<y><py>},{<z><pz>},{Oy(<φy>,<ϑy>) Oz(<φz>,<ϑz>)} ou TcsDef({<x><px>},{<y><py>},{<z><pz>},{Ox(<o11>,<o21>,<o31>) Oy(<o12>,<o22>,<o32>)} ou TcsDef({<x><px>},{<y><py>},{<z><pz>},{Ox(<o11>,<o21>,<o31>) Oz(<o13>,<o23>,<o33>)} ou 324/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard TcsDef({<x><px>},{<y><py>},{<z><pz>},{Oy(<o12>,<o22>,<o32>) Oz(<o13>,<o23>,<o33>)} ou TcsDef({<x><px>},{<y><py>},{<z><pz>},{ROTAX(<φu>,<ϑu>) O(<β>)} ou TcsDef({<x><px>},{<y><py>},{<z><pz>},{ROTAX(<ux>,<uy>,<uz>) O(<β>)} avec <x> Nom de coordonnée inscrit dans MP 7080 00010[1]. Valeur par défaut : x <y> Nom de coordonnée inscrit dans MP 7080 00010[2]. Valeur par défaut : y <z> Nom de coordonnée inscrit dans MP 7080 00010[3]. Valeur par défaut : z <px>, <py>, <pz> Coordonnées cartésiennes absolues des adresses d'axe <x>, <y> et <z> par rapport au PCS actuel. Les valeurs définissent l'origine du nouveau TCSp. La programmation AC/IC est permise. <phi> Nom d'angle inscrit dans MP 7080 00010[4]. Valeur par défaut : phi <thêta> Nom d'angle inscrit dans MP 7080 00010[5]. Valeur par défaut : thêta <psi> Nom d'angle inscrit dans MP 7080 00010[6]. Valeur par défaut : psi <φ>,<ϑ>,<ψ> Angle d'Euler absolu en degré, par rapport au PCS actuel. Les valeurs définissent l'orienta‐ tion du nouveau TCSp. La programmation AC/IC est permise. Plage de valeurs : 0° ≤ φ < 360°; 0° ≤ ϑ ≤ 180°; 0° ≤ ψ ≤ 360°. Les valeurs en dehors de la plage sont auto‐ matiquement converties en l'intervalle corres‐ pondant. <φ..>,<ϑ..> Valeurs absolues des angles en degrés. Plage de valeurs : 0° ≤ φ.. < 360°; 0° ≤ ϑ.. ≤ 180°. Si une valeur en dehors de la plage de valeurs est programmée en tant que ϑ.., elle est auto‐ matiquement convertie en l'intervalle indiqué. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 325/550 Fonctions CN avec syntaxe de langage standard Ox(<o11>,<o21>,<o31>) Oy(<o12>,<o22>,<o32>) Oz(<o13>,<o23>,<o33>) Ox(<φx>,<ϑx>) Oy(<φy>,<ϑy>) Oz(<φz>,<ϑz>) Orientation à l'aide de la fonction Ox(..), Oy(..), Oz(..). Ox(..) définit par exemple la direction de la co‐ ordonnée x du TCSp dans le système de coor‐ données de référence PCS. Ceci est valable de manière analogue pour Oy(..) et Oz(..). La direction peut être définie soit à l'aide des angles polaires correspondants <φ..> et <ϑ..>, soit au moyen des composantes cartésiennes des vecteurs colonnes du tenseur d'orientation TCSp. Seule la saisie de cotes absolues est permise. Les valeurs des composantes des vecteurs co‐ lonnes (o..) sont automatiquement standardi‐ sées à 1. ROTAX(<φu>,<ϑu>) Définition de l'axe de rotation à l'aide des an‐ gles polaires (φu,ϑu). ROTAX(<ux>,<uy>,<uz>) Définition de l'angle de rotation à l'aide des composantes cartésiennes <ux>, <uy>, <uz> dans la programmation absolue. Standardisa‐ tion automatique à 1. O(<β> ) Indique en degrés l'ange incrémental <β> du‐ quel le tenseur d'orientation TCSp, à partir du tenseur d'orientation du dernier TCS actuel, doit être déplacé autour de l'axe de rotation. Les valeurs supérieures à 360 degrés sont per‐ mises. Le sens de rotation peut être sélectionné à l'ai‐ de des signes +/-. Fig.6-160: Particularités et restrictions : Syntaxe détaillée TcsDef (TCS) ● Le type de transformation d'axe actif 3333301 est nécessaire. ● Lors d'une reprogrammation de la fonction "Coord(…)" (voir chap. 6.24 "Sélectionner la transformation d'axe Coord, CRD" à la page 206), un TCSp préalablement généré est supprimé automatiquement et le dernier TCS actuel est réactivé. ● Si, lors de la programmation des vecteurs colonnes de tenseur deux vec‐ teurs colonnes sont parallèles ou antiparallèles, le tenseur d'orientation ne peut pas être calculé. Une erreur d'exécution est signalée. 6.124 Fonctions additionnelles pour le taraudage "ThreadSet, TST" 6.124.1 Effet A l'aide de "ThreadSet", il est possible d'adapter temporairement certaines zo‐ nes de G33. La commande masque alors les valeurs statiques enregistrées dans les para‐ mètres machine. "ThreadSet" permet : ● une adaptation de la dynamique et du mouvement de dégagement, 326/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard ● une commutation du mode de fonctionnement de la broche (asservisse‐ ment en vitesse de rotation, asservissement en position), ● l'initialisation d'un signal au niveau de l'interface canal (configurable au sein des signaux "Fonction active" via les paramètres machine). La remise à zéro ou M30 ● annule les réglages masqués par "ThreadSet", ● supprime un signal IF initialisé par "ThreadSet", ● remet la broche principale en mode d'asservissement en vitesse de rota‐ tion, dans la mesure où elle a été auparavant asservie en position par "ThreadSet(SPC1)". Toutes les fonctions partielles décrites ci-dessous peuvent égale‐ ment être programmées conjointement dans un bloc "ThreadSet", séparées par des virgules. 6.124.2 Programmation : Configurer les données de dégagement Syntaxe : ThreadSet(RD(<Valeur HA>,<Valeur NA>{,-1})) Format abrégé : TST(..) avec <Valeur HA> Course de dégagement (incrémentale en mm) en di‐ rection de l'axe primaire du plan actuellement sélec‐ tionné (G17, G18, G19, G20). Cette valeur doit toujours être programmée, mais elle n'est pertinentes que pour les filets longitudinaux et co‐ niques. <Valeur NA> Course de dégagement (incrémentale en mm) en di‐ rection de l'axe secondaire du plan actuellement sélec‐ tionné. Cette valeur doit toujours être programmée, mais elle n'est pertinente que pour les filets plans et coniques. "-1" peut être saisi en option en tant que troisième pa‐ ramètre. -1 Dans ce cas, toutes les données de dégagement des paramètres MP 7050 00645 et MP 7050 00650 sont ré‐ activées. Fig.6-161: 6.124.3 Syntaxe ThreadSet (TST), Configurer les données de dégagement Programmation : Valider le dégagement Syntaxe : ThreadSet(RON<État>) ou TST(..) avec <État> 0: Désactiver le dégagement rapide. 1: Activer le dégagement rapide. Fig.6-162: Syntaxe ThreadSet (TST), Valider le dégagement Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 327/550 Fonctions CN avec syntaxe de langage standard 6.124.4 Programmation : Configurer la dynamique Syntaxe : ThreadSet(DYN({<Saut>},{<Accél>}{,<AccélFrein>})) ou TST(..) avec <Saut> Vitesse de saut max. admissible en mm/min. L'entrée de "-1" réactive MP 7050 00610. <Accél> Accélération en m/s2. L'entrée de "-1" réactive MP 7050 00615. <AccélFrein> Accélération de freinage en m/s2. L'entrée de "-1" réactive MP 7050 00620. Fig.6-163: 6.124.5 Syntaxe ThreadSet (TST), Configurer la dynamique Programmation : Commuter le mode de fonctionnement de la broche Fonction de base Syntaxe : ThreadSet(SPC<État>) ou TST(..) avec <État> 0: Commuter la broche principale en mode d'asservis‐ sement en vitesse de rotation. 1: Commuter la broche principale en mode d'asservis‐ sement en position suivant le réglage dans 7050 00600 [3]. Fig.6-164: Syntaxe ThreadSet (TST), Configurer le mode de fonctionnement de la broche Pour les broches principales, voir chap. 6.54 "Changement de broche princi‐ pale MainSp, MSP" à la page 243. 6.124.6 Programmation : Influencer le signal IF du canal Syntaxe : ThreadSet(TCI<État>) ou TST(..) avec <État >0: supprime le signal IF du canal. 1: définit le signal IF du canal. Fig.6-165: Syntaxe ThreadSet (TST), Influencer le signal IF du canal Quel signal est influencé au niveau de l'interface du canal est con‐ figurable au sein des signaux "Fonction active" via les paramètres machine. 328/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard 6.125 Décalage des coordonnées du programme "Trans, TRS", Dé‐ calage additif des coordonnées du programme "ATrans, ATR" 6.125.1 Effet "Trans" décale le système de coordonnées actif du programme parallèlement aux axes de coordonnées du système de coordonnées actuel de la pièce à usiner. "ATrans" permet des décalages supplémentaires parallèles du système de co‐ ordonnées du programme, dont les effets sont toujours additifs. De ce fait, il est possible d'exécuter un programme pièce sans modification du contour programmé à des endroits quelconques au sein du système de coor‐ données de la pièce à usiner. Les aides à la saisie basées sur le système de coordonnées actif du programme (par ex. décalage du contour programmé, mise à l'échelle, fonction miroir, rotation) sont indépendantes du décalage des coordonnées du programme et ne doivent donc pas être adaptées. Fig.6-166: Décalage des coordonnées du programme, Décalage additif des coor‐ données du programme Pour cette fonction s'applique ce qui suit : La programmation d'un décalage de coordonnées du programme n'entraîne aucun déplacement. 6.125.2 Programmation Syntaxe : Trans(<Coordonnées>) Décalage des coordonnées du programme ACTIVÉ. L'origine du système de coordonnées du programme est initialisé sur les <Coordonnées> programmées du système de coordonnées actif de la pièce à usiner. Plusieurs axes de coordonnées peuvent être program‐ més dans les parenthèses, séparés par des virgules. (exemple : TRS(X100,Y50,Z50)). Trans() ou Trans(0) Format abrégé : TRS(..) Tous les décalages de coordonnées du programme DÉSACTIVÉS. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 329/550 Fonctions CN avec syntaxe de langage standard ATrans(<Coordonnées>) Décalage additif des coordonnées du programme AC‐ TIVÉ. L'origine du système de coordonnées du programme y résultant est initialisé sur les <Coordonnées> program‐ mées du système de coordonnées actif du programme. Plusieurs axes de coordonnées peuvent être program‐ més dans les parenthèses, séparés par des virgules. ATrans() ou Décalage additif des coordonnées du programme DÉS‐ ACTIVÉ. ATrans(0) Format abrégé : ATR(..) Fig.6-167: Exemple : Syntaxe Trans (TRS) et ATrans (ATR) N10 TRS(X10,Y10,Z50) : Mettre l'origine du système de coordonnées du pro‐ gramme à la position X10 Y10 Z50 du système de coordonnées actuel de la pièce à usiner. : : N50 ATR(X20,Y10) : L'origine du système de coordonnées du programme résultant est positionné sur X30 Y20 Z50 par rapport au système de coordonnées initial de la pièce à usiner. : : Décalage additif des coordonnées du programme DÉS‐ ACTIVÉ. L'origine du système de coordonnées du pro‐ gramme est positionné à nouveau sur X10 Y10 Z50 par rapport au système de coordonnées initial de la pièce à usiner. N80 ATR() : : : : Tous les décalages de coordonnées du programme DÉSACTIVÉS. N180 TRS() 6.126 Entraînements virtuels "VirtAxisPos, VAP" 6.126.1 Effet Fixe la position d'axe des axes synchrones virtuels dans le canal actuel. Pour de plus amples informations relatives aux entraînements vir‐ tuels, voir le manuel "Description des fonctions". 6.126.2 Programmation Syntaxe : VirtAxisPos(<Axe 1><Valeur>,<Axe n><Valeur>, ...) Format abrégé : VAP(...) avec <Axe x> Adresse de l'axe virtuel. <Valeur> Information de position pour <Axe x>. Fig.6-168: Syntaxe VirtAxisPos (VAP) 330/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Exemple : Particularités et restrictions : Position de l'axe VX à 150mm. VAP(VX150) La programmation incrémentale locale (IC…) n'est pas permise. 6.127 Reprendre l'axe, attendre le cas échéant "WaitAxis, WAX" 6.127.1 Effet Reprend un axe asynchrone dans le canal appelant. L'axe asynchrone devient ainsi un axe synchrone. L'axe est alors programmable dans le canal actuel via son nom physique ou logique. Pour de plus amples informations relatives à la fonction "Transfert d'axe", voir le manuel "Description des fonctions". 6.127.2 Programmation Syntaxe : WaitAxis(<PAN>|<PAI>,{<LAN>}{,<PAN>|<PAI>,{<LAN>}}...) Format abrégé : WAX(..) avec <PAN> Nom physique de l'axe. Définit l'axe qui doit être repris dans le canal actuel. <PAI> Index physique de l'axe. Effet similaire à <PAN>. <LAN> Nom logique de l'axe. Dans la mesure où celui-ci a été programmé, l'axe à reprendre dans le canal actuel reçoit le nom logique <LAN>. <LAN> doit être défini dans MP 7010 00010 (Désigna‐ tion logique de l'axe) ou MP 7010 00020 (Désignation optionnelle de l'axe). Fig.6-169: Particularités et restrictions : ● Syntaxe WaitAxis (WAX) Dans le cas où un axe à reprendre n'est pas encore à l'arrêt, la préparation de bloc attend l'arrêt de l'axe. Ensuite, l'axe est repris. Contrairement à la fonction "GetAxis" (voir chap. 6.38 " Reprendre l'axe GetAxis, GAX" à la page 223), aucun message d'erreur ou arrêt de pro‐ gramme n'est généré. ● Les positions d'axes dans le même bloc doivent toujours être program‐ mées après WaitAxis(…) et la programmation ne doit s'effectuer que si aucune transformation d'axe n'est active. ● Les axes à reprendre ne doivent être intéressés à aucune zone de sur‐ veillance active (voir chap. 6.2 "Surveillance de zone Area, ARA" à la page 176). Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 331/550 Fonctions CN avec syntaxe de langage standard Exemple : N030 WAX(YP,,ZP,Z) : La préparation de bloc attend le cas échéant l'arrêt des axes physiques YP et ZP. Ensuite, les axes sont repris dans le canal appelant. Tandis que YP est désigné adresse YP également dans le canal appelant, ZP reçoit dans le canal appelant l'adresse Z. 6.128 Écriture des paramètres SERCOS "WriteId, WID" 6.128.1 Effet Inscrit le paramètre d'entraînement SERCOS programmé (S-x-xxxx, P-x-xxxx) dans un ou plusieurs entraînements. Pour les paramètres d'entraînement SERCOS spécifiques au produit (P-xxxxx), il est également possible d'écrire des listes de valeurs complètes avec 16 valeurs au maximum, ou des listes ID avec un maximum de 8 numéros d'identification. Conditions préalables : ● Le paramètre doit être valide et modifiable dans la phase 4 SERCOS. ● La valeur du paramètre se situe dans la plage autorisée. ● L'entraînement est connecté à la commande via l'interface SERCOS ; la communication cyclique entre la commande et l'entraînement est active. L'ordre CPL "SCS" permet à la API de lire les paramètres d'entraî‐ nement SERCOS. AVERTISSEMENT 6.128.2 Les modifications inadaptées ou arbitraires des paramètres d'entraîne‐ ment SERCOS peuvent provoquer des dommages au niveau de la pièce à usiner et/ou la machine, et entraîner des réactions dangereuses et imprévues de la machine. Pour l'utilisation correcte, des informations sur les paramètres d'entraînement SERCOS disponibles dans l'entraînement sont nécessaires. Dans ce contexte, veuillez consulter la documentation concernant l'entraînement. Programmation 1 Syntaxe : Écrire un paramètre dans un ou plusieurs entraînement(s) (pour axes synchro‐ nes) : WriteId(<Par>,<SA1><W1>{,<SAn><Wn>}...) Format abrégé : WID(...) avec <Par> Paramètre de défaut (S-x-xxxx) ou paramètre spécifique au produit (P-x-xxxx). <SA1>...<SAn> Adresse d'axe logique de l'entraînement SERCOS. <W1>...<Wn> Valeur qui doit être écrite dans le <Par>. Fig.6-170: Syntaxe 1 WriteId (WID) 332/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard Exemple : N100 WID(P-0-0500,X10,Y20,Z30) Écrire P-0-0500 : dans l'entraînement de l'axe X : 10 dans l'entraînement de l'axe Y : 20 dans l'entraînement de l'axe Z : 30 6.128.3 Programmation 2 Syntaxe : Écrire un paramètre dans un ou plusieurs entraînement(s) (pour les broches et axes asynchrones) : WriteID(<Par>,DRIVE(<AA1>,<W1>{<AAn>,<Wn>}...)) Format abrégé : WID(... ) avec <Par> Paramètre de défaut (S-x-xxxx) ou paramètre spécifique au produit (P-x-xxxx). <AA1>...<AAn> Index d'axe physique ou nom d'axe physique de l'en‐ traînement SERCOS. Un maximum de 8 entraînements peut être défini via la syntaxe DRIVE(…). <W1>...<Wn> Valeur qui doit être écrite dans le <Par>. Fig.6-171: Exemple : 6.128.4 Syntaxe 2 WriteId (WID) N100 WID(S-0-0104,DRIVE(1,2.22)) Écrire la valeur 2.22 dans S-0-0104 de l'entraînement 1. Programmation 3 Syntaxe : Inscrire les valeurs d'une liste de paramètres dans un entraînement : WriteID(<Par>,LIST(<A1>,W1{,<Wn>}...)) Format abrégé : WID(...) avec <Par> Paramètre spécifique au produit (P-x-xxxx) qui contient une liste de valeurs. (Les paramètres standard (S-x-xxxx) ne sont pas per‐ mis !) <A1>...<An> Index d'axe physique ou nom d'axe physique de l'en‐ traînement SERCOS. <W1>...<Wn> 16 valeurs au maximum qui doivent être écrites dans le <Par>. Fig.6-172: Exemple : 6.128.5 Syntaxe 3 WriteId (WID) N100 WID(P-0-0515, LIST(1, 0.5, 0.2)) Écrire 2 valeurs dans P-0-0515 de l'entraînement 1. Programmation 4 Syntaxe : Écrire les numéros d'identification d'une liste ID dans un entraînement : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 333/550 Fonctions CN avec syntaxe de langage standard WriteID(<Par>,ID_LIST(<A1>,<ID1>{,<Idn>}...)) Format abrégé : WID(...) avec <Par> Paramètre spécifique au produit (P-x-xxxx) qui contient une liste ID. (Les paramètres standard (S-x-xxxx) ne sont pas per‐ mis !) <A1>...<An> Index d'axe physique ou nom d'axe physique de l'en‐ traînement SERCOS. <Id1>...<Idn> 8 numéros d'identification au maximum qui doivent être écrits dans le <Par>. Fig.6-173: Exemple : Particularités et restrictions : Syntaxe 4 WriteId (WID) N100 Écrire 2 numéros d'identification dans WID(P-0-0147,ID_LIST(X,S-0-47,S-0- le paramètre P-0-0417 dans l'entraî‐ 51)) nement de l'axe X. ● La fonction ne doit jamais être programmée lors de l'usinage d'un contour. ● L'écriture des paramètres programmés ne s'effectue qu'après l'immobili‐ sation de l'entraînement correspondant. 6.129 Activer les tableaux de décalage d'origine "ZoTSel, ZOS" 6.129.1 Effet Active un tableau de décalage d'origine (Tableau NPV). Les tableaux NPV sont enregistrés tant que fichiers XML dans le système de fichiers de la commande. 6.129.2 Programmation Syntaxe : ZoTSel({<Chemin>}<Nom du fichier>) Format abrégé : ZOS(..) avec <Chemin> Indication optionnelle du chemin pour le répertoire dans lequel <Nom du fichier> est enregistré. Si aucun chemin n'est indiqué, la recherche est effec‐ tuée sous le chemin "/database". Si <Nom de fichier> ne peut y être trouvé, la commande utilise le chemin de recherche pour sous-programmes afin de rechercher <Nom du fichier> également dans d'autres répertoires. <Nom du fichier> Nom du fichier du tableau NPV avec extension du fichier incluse. Les tableaux ayant les noms standard (ZO<Numé‐ ro>.zot) peuvent être activés directement via le numéro, p.ex. ZoTSel(5) active le tableau ZO5.zot. Fig.6-174: Particularités et restrictions : Syntaxe ZoTSel (ZOS) Lors de d'activation du tableau, la commande peut vérifier de façon optionnelle si la configuration d'axe actuelle du canal correspond au contenu du tableau 334/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard (option "Attribution fixe" ; cette fonction est activée via l'éditeur de tables ou lors de la première génération du tableau). Si elle ne correspond pas au contenu et si l'option "Attribution fixe" est active, le programme est interrompu et un message d'erreur est généré. Pour de plus amples informations relatives à la création et l'édition des tableaux NPV, veuillez consulter le mode d'emploi de la com‐ mande ! Exemple : : N030 ZOS(npvtab.zot) : N130 ZOS(/mnt/np.zot) : Effectue la recherche du tableau NPV "npvtab.zot" d'abord dans le répertoire "/database" ; ensuite, si la recherche a été infructueuse, dans le chemin de recherche pour les sous-programmes. Le premier tableau NPV avec le nom "npvtab.zot" trouvé est activé. Recherche et déclenche le tableau NPV "np.zot" dans le répertoire "/mnt". S'il n'y est pas trouvé, un message d'erreur est généré. 6.130 Diagnostic du profil de vitesse "VREC_START", "VREC_STOP" 6.130.1 Effet Lors du traitement des programmes à surfaces libres avec le profil de guidage G8, de nombreuses grandeurs ont une influence soit directe, soit indirecte, sur le profil de vitesse résultant. Pour une personne externe, il est presque impos‐ sible de déterminer quelle grandeur a, à une position définie dans le programme pièce, une influence dominante sur la vitesse de trajectoire atteinte. En règle générale, seul le savoir-faire d'un expert ou seule la possibilité d'un débogage aide à trouver la cause d'un problème. La fonction VREC_START enregistre, au moment de la préparation des blocs, les données calculées bloc par bloc par le profil de vitesse et ayant une influ‐ cence sur l'évolution de la vitesse. Le nom ainsi que le lieu d'enregistrement (répertoire) du fichier de protocole sont également indiqués lors de l'activation. Le fichier de diagnostic créé peut être évalué hors ligne. À l'aide des données enregistrées, il est possible de déduire les paramètres qui doivent être optimi‐ sés pour atteindre un profil de vitesse plus favorable. Les données suivantes sont enregistrées pour tout bloc : Index de colonne : Titres de colonne : Signification : 1 WayIpo Course d'interpolation (longueur de trajectoire) dans le bloc CN, in‐ diquée en incréments (0,1 μm). 2 F100 Vitesse programmée en incréments/cycle d'interpolation (Valable pour G93 et G94. En cas de G95, la valeur est référée aux tours de la broche.). 3 Fmax Vitesse maximale (limitée), indiquée en incréments/cycle d'interpo‐ lation. 4 AccUp Accélération sur trajectoire maximale (limitée), indiquée en incré‐ ments/cycle d'interpolation2. 5 AccDown Accélération de freinage sur trajectoire maximale (limitée), indiquée en incréments/cycle d'interpolation2. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 335/550 Fonctions CN avec syntaxe de langage standard Index de colonne : Titres de colonne : Signification : 6 Vend Vitesse finale du bloc ou de la rampe de freinage actuel(le), indiquée en incréments/cycle d'interpolation. 7 0Vel yes : Pour le bloc CN : l'attribut que le raccord de blocs suivant doit se faire à v=0. Ledit attribut est par exemple paramétré pour les blocs qui doivent être déplacés avec un arrêt précis. 8 Limitation axes Index d'axes du système de l'axe limitant considérablement la vites‐ se de trajectoire. 9 Index d'axes du système de l'axe limitant considérablement l'accé‐ lération de trajectoire. 10 Index d'axes du système de l'axe limitant considérablement l'accé‐ lération radiale. 11 Index d'axes du système de l'axe limitant considérablement l'accé‐ lération totale (somme des accélérations radiale et de trajectoire). 12 Index d'axes du système de l'axe limitant considérablement le che‐ vauchement de la vitesse et de l'accélération. 13 Look ahead state État de prévisualisation, y compris le nombre des blocs actuellement prévisualisés : 0: Bloc fictif ; aucune prévisualisation. 1: Bloc de déplacement sans prévisualisation, p.ex. en cas d'arrêt précis ; le bloc suivant est un bloc fictif, etc. 2: La prévisualisation réglée suffit pour l'évaluation de la distance de freinage. 3: La prévisualisation réglée suffit pour l'évaluation de la distance de freinage. Mais, un raccord de blocs v=0 a été détecté au sein de la zone de prévisualisation. 14 Insert state État d'insertion de bloc : -: Aucun bloc d'insertion. 1: Bloc d'insertion usuel. 2: First split block (pas de bloc d'insertion). 3: Split block (bloc d'insertion). 4: Last split block (dernier bloc d'insertion). 15 Addr Adresse de mémoire du bloc CN dans la commande. 16 NC-Source Texte source du bloc CN (parties CPL sont dissociées). Fig.6-175: 6.130.2 Structure du fichier d'enregistrement Programmation Syntaxe : VREC_START({Chemin du fi‐ chier/}<Nom du fichier>) Lancer l'enregistrement du diagnostic pour le profil de vitesse. VREC_STOP Terminer l'enregistrement du diagnostic. Fig.6-176: Exemple : Syntaxe VREC_START, VRECSTOP N10 VREC_START(/mnt/VDIAG1.txt) N20 ... 336/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CN avec syntaxe de langage standard N30 ... ... N100 ... N110 VREC_STOP M30 Particularités et restrictions : Si le diagnostic du profil de vitesse est utilisé, il faut veiller à ce que la mémoire suffise pour le fichier de diagnostic. La mémoire requise pour cela est, en règle générale, 3-4 fois supérieure à la mémoire requise pour le segment corres‐ pondant du programme pièce à enregistrer. 6.131 Sous-programmes asynchrones : Définition du comportement de redémarrage "REPOSDEF" 6.131.1 Effet Définit localement (au sein d'un sous-programme asynchrone) l'avance de re‐ démarrage et/ou le point de redémarrage. 6.131.2 Programmation Syntaxe : REPOSDEF( {F<Avance> | OF<Avance>} , {TP<Point>} ) avec F<Avance> Vitesse d'avance pour le mouvement de redémarrage automatique à la fin du sous-programme asynchrone. OF<Avance> Vitesse d'avance optionnelle pour le mouvement de re‐ démarrage automatique à la fin du sous-programme asynchrone. Cette valeur d'avance n'est utilisée que si aucune avan‐ ce active n'est disponible lors du déclenchement du sous-programme asynchrone. TP<Point> 1: point de départ 2: point d'arrivée 3: point d'interruption Fig.6-177: Particularités et restrictions : Syntaxe ● La fonction est prévue pour l'utilisation dans un sous-programme asyn‐ chrone. ● Le point de redémarrage défini préalablement via ASPRTP (voir chap. 6.7 "Sous-programmes asynchrones : connecter ASPSET" à la page 181) pour le sous-programme asynchrone actuellement exécuté rede‐ vient efficace automatiquement à la fin du sous-programme. 6.132 Commutation de la programmation linéaire/spline 6.132.1 Effet La fonction convertit une interpolation linéaire programmée G1 en une pro‐ grammation d'interpolation spline G6. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 337/550 Fonctions CN avec syntaxe de langage standard 6.132.2 Programmation Syntaxe : LinearToSpline(1) Activer. Tous les ordres G1 suivants sont converties en G6. LinearToSpline(0) Désactiver. Tous les ordres G1 suivants restent G1. Le format abrégé de cette fonction est LTS. Fig.6-178: Exemple : Syntaxe Le segment du programme N10 SplineDef(2203,X,Y,Z) LTS(1) N20 G1 a le même effet que N10 SplineDef(2203,X,Y,Z) N20 G6 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 339/550 Fonctions CPL 7 Fonctions CPL 7.1 Valeurs de coordonnées et d'axes 7.1.1 Généralités Le CPL dispose de fonctions qui permettent de rechercher différentes valeurs des coordonnées et des axes. Les fonctions suivantes sont distinguées : ● les fonctions de lecture des positions des coordonnées et des axes (PCS, WCS, MCS, ACS, SPOS, APOS), ● les fonctions de lecture à partir du palpeur de mesure ● les fonctions de lecture des décalages et des positionnements (PCSPROBE, PROBE, PPOS), (AXO, COF, DPC). Les coordonnées interpolées lors de l'exécution du programme sont toujours programmées dans le programme pièce. Les transformations d'axe calculent les valeurs de consigne respectives pour les axes concernés à partir des va‐ leurs des coordonnées actuelles (coordonnées tridimensionnelles et de la machine). De plus amples informations relatives aux sujets "Coordonnées, axes et transformations" sont données dans le manuel "Description des fonctions". Aperçu . 340/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fig.7-1: Aperçu Unités de mesure pour les positions d'axes et de coordonnées fournies Axes linéaires synchrones et coordonnées "mm" ou "pouces" ; d'espace linéaires : en fonction du réglage actuel (G71, G70) dans le canal appelant. Axes rotatifs synchrones et coordonnées "Degrés" d'espace rotatives : Exemple : Axes linéaires asynchrones : "mm" Axes rotatifs asynchrones : "Degrés" Configuration et attribution des noms d'axe aux canaux . . Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 341/550 Fonctions CPL Fig.7-2: 7.1.2 Configuration et attribution des noms d'axe aux canaux Fonctions de lecture des positions des coordonnées et des axes Généralités Il convient de tenir compte : ● Pour les coordonnées tridimensionnelles et de la machine, l'index de co‐ ordonnées est toujours fixe dans le canal. ● Les coordonnées peuvent toutefois être intégrées ou restituées par un canal au moyen des fonctions de transfert d'axe. Ainsi, l'index de coor‐ données des autres coordonnées dans le canal peut changer. La possibilité de définir l'index d'axes du système permet de travailler avec des indices fixes. ● La prédéfinition d'un axe du système non configuré entraîne la génération d'une erreur d'exécution. Les fonctions décrites fonctionnent avec des paramètres similaires, qui, pour cette raison, sont expliqués ci-dessous. 342/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL <Coordonnée> Index ou nom d'une coordonnée : Un nom est interprété en tant que nom de coordonnée. Uniquement dans le cas où aucun nom de coordonnée cor‐ respondant n'existe, il est interprété en tant que nom de canal ou d'axe du système. Un index est interprété selon le <Mode de sélection> indiqué. La programmation d'une coordonnée/d'un axe non configu‐ ré(e) entraîne une erreur d'exécution, si la variable optionnelle ERRNO n'est pas programmée. <Axe> Index ou nom d'un axe : Un nom est interprété en tant que nom d'axe du canal. S'il n'y en a pas, on utilise le nom d'axe du système. Un index est interprété selon le <Mode de sélection> indiqué. La programmation d'un axe non configuré(e) entraîne une er‐ reur d'exécution, si la variable optionnelle ERRNO n'est pas programmée. <Mode de sélection> optionnel : Définit, comment un index programmé sous <Coordonnée> ou <Axe> est interprété : 0: Index d'axes du système 1: Index de coordonnées ou index d'axes du canal (défaut) Si rien n'a été programmé explicitement, on définit <Mode de sélection> = 1. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 343/550 Fonctions CPL <Canal> optionnel : Numéro du canal, uniquement permis pour <Mode de sélec‐ tion> = 1. Si les axes/coordonnées de canaux étrangers doivent être lu(e)s et adressé(e)s à l'aide de leur index ou leur nom, le nu‐ méro du canal auquel l'axe/la coordonnée est actuellement attribué(e) est indiqué dans <Canal>. Si aucun canal n'est indiqué, les coordonnées/axes du canal actuel sont utilisé(e)s. Si un axe du système est adressé (avec nom ou index) et un canal est indiqué en même temps, un message d'erreur est généré, même si la variable ERRNO est programmée. ERRNO Variable CPL programmable à n'importe quel endroit. Avec ERRNO, une erreur d'exécution n'est pas générée en cas d'erreur ; les valeurs de retour sont : 0: Accès OK. -1: Erreur de paramètre. -2: La coordonnée/L'axe n'existe pas. -3: La coordonnée/L'axe est inadmissible dans le canal. -4: L'axe n'est pas une pseudo-coordonnée. -5: Le canal n'existe pas. -6: La fonction ne peut être appelée que dans son canal pro‐ pre. -7: Impossible de lire les données. PCS Fournit la dernière valeur programmée pour une coordonnée. Pour cette fonction s'applique ce qui suit : Syntaxe : Exemples : ● Si le système de coordonnées de la pièce à usiner est commuté entre la programmation de la coordonnée et l'interrogation de la position, la nou‐ velle fournie tient déjà compte du nouveau système de coordonnées de la pièce à usiner. ● Seules les coordonnées du canal correspondant peuvent être interrogées. PCS(<Coordonnée> [,<Type de sélection>]) (Paramètres voir chap. 7.1.2 " Fonctions de lecture des positions des coor‐ données et des axes" à la page 341, Programmation d'ERRNO voir chap. 3.13.5 "Variable ERRNO pour l'analyse des erreurs des fonctions CPL" à la page 60) PCS("X",ERRNO) PCS("X",1) Canal 2 selon l'exemple de configuration (voir Fig. 7-2 "Configuration et attri‐ bution des noms d'axe aux canaux" à la page 341) : 344/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL N1 G0 G90 X2=150 Y2=100 02 X2WERT=PCS(1,ERRNO) 03 IF ERRNO <>0 THEN 04 PRN#(0,"Erreur :",ERRNO) La position absolue de la 1ère coordonnée dans le canal actuel est attribuée à X2WERT (X2WERT = 150). 05 ENDIF N10 G91 X2=10 011 X2WERT=PCS(1,1) La position absolue de la 1ère coordonnée dans le canal actuel est attribuée à X2WERT (X2WERT = 160). N12 X2=5 Y2=10 13 Y2WERT=PCS("Y2",1) La position absolue de l'axe système Y2 est at‐ tribuée à Y2WERT (Y2WERT = 110). 14 X2WERT=PCS("X2") La position absolue de la coordonnée X2 dans le canal actuel est attribuée à X2WERT (X2WERT = 165). 15 XWERT=PCS(1,0) Erreur d'exécution : accès au 1er axe du sys‐ tème dans le canal 2 non autorisé (axe attribué au canal 1). WCS Fournit la position actuelle de la pièce à usiner sans valeurs de correction en ligne pour une coordonnée. Pour cette fonction s'applique ce qui suit : ● Si la valeur fournie doit être déterminée au moment de l'exécution du bloc, un "WAIT" doit être programmé auparavant dans un bloc correspondant (voir également chap. 3.18.2 "Fonctions de synchronisation de la prépa‐ ration du bloc" à la page 73). Sans WAIT, aucune valeur clairement prévisible n'est fournie, car on ne sait pas exactement quel "retard" d'exécution du bloc a été pris dans le traitement de blocs. ● Syntaxe : Lors de l'accès aux valeurs de coordonnées d'un canal étranger, il con‐ vient le cas échéant de prendre des mesures de synchronisation afin de mesurer une position définie. WCS(<Coordonnée> [,<Mode de sélection>[,<Canal>]]) (Paramètres voir chap. 7.1.2 " Fonctions de lecture des positions des coor‐ données et des axes" à la page 341, Programmation d'ERRNO voir chap. 3.13.5 "Variable ERRNO pour l'analyse des erreurs des fonctions CPL" à la page 60) Exemples : WCS("X",ERRNO) WCS("X",1) WCS("X",1,1) Canal 2 selon l'exemple de configuration (voir Fig. 7-2 "Configuration et attri‐ bution des noms d'axe aux canaux" à la page 341) : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 345/550 Fonctions CPL 10 WAIT 20 Z2POS=WCS(3,1,2,ERRNO) 21 IF ERRNO <>0 THEN 22 PRN#(0,"Erreur :",ERRNO) La position interpolée actuelle de la pièce à usiner de la 3ème coordonnée du 2ème canal est attribuée à Z2POS (Axe Z2). 23 ENDIF 30 WAIT 110 YPOS = WCS("Y") La position interpolée actuelle de la pièce à usiner de la coordonnée Y du canal actuel est attribuée à YPOS. 120 XPOS = WCS(1) La position interpolée actuelle de la pièce à usiner de la 1ère coordonnée du canal actuel est attribuée à XPOS. MCS Fournit la position actuelle de la machine (MCS) pour une coordonnée de ma‐ chine sans compensation des erreurs de trajectoire et d'angle. On peut également y accéder via les coordonnées étrangères au canal. Pour cette fonction s'applique ce qui suit : ● Si la valeur fournie doit être déterminée au moment de l'exécution du bloc, un "WAIT" doit être programmé auparavant dans un bloc correspondant (voir également chap. 3.18.2 "Fonctions de synchronisation de la prépa‐ ration du bloc" à la page 73). Sans WAIT, aucune valeur clairement prévisible n'est fournie, car on ne sait pas exactement quel "retard" d'exécution du bloc a été pris dans le traitement de blocs. ● Syntaxe : Lors de l'accès aux valeurs de coordonnées d'un canal étranger, il con‐ vient le cas échéant de prendre des mesures de synchronisation afin de mesurer une position définie. MCS(<Coordonnée> [,<Mode de sélection>[,<Canal>]]) (Paramètres voir chap. 7.1.2 " Fonctions de lecture des positions des coor‐ données et des axes" à la page 341, Programmation d'ERRNO voir chap. 3.13.5 "Variable ERRNO pour l'analyse des erreurs des fonctions CPL" à la page 60) Exemples : MCS("X",ERRNO) MCS("X",1) MCS("X",1,1) Canal 2 selon l'exemple de configuration (voir Fig. 7-2 "Configuration et attri‐ bution des noms d'axe aux canaux" à la page 341) : N10 G0 G90 X2=150 Y2=100 20 WAIT 30 X2WERT=MCS("X2",ERRNO) 31 IF ERRNO <>0 THEN 32 PRN#(0,"Erreur :",ERRNO) 33 ENDIF N40 G91 X2=10 Y2=10 50 WAIT La position de machine interpolée actuelle de la coordonnée X2 est attribuée à X2WERT. 346/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL 60 X2WERT=MCS(1,1) La position de machine interpolée actuelle de la 1ère coordonnée de machine du canal actuel (coordonnée X2) est attribuée à X2WERT. 70 Y2WERT=MCS("Y2",1,2) La position interpolée actuelle de la coordon‐ née Y2 du 2ème canal est attribuée à Y2WERT. 80 XWERT=MCS(1,0) La position d'axe interpolée actuelle du 1er axe du système est attribuée à XWERT. Cet accès n'est permis que si l'axe du système est identique à la coordonnée de machine. ACS Fournit la consigne de position actuelle d'un axe. Les axes peuvent être adressés via leur nom du canal ou leur index du canal. Alternativement, un axe peut être adressé via son nom du système ou son index du système. Pour cette fonction s'applique ce qui suit : ● Le résultat d'ACS correspond toujours à la fonction SPOS. ● Si la valeur fournie doit être déterminée au moment de l'exécution du bloc, un "WAIT" doit être programmé auparavant dans un bloc correspondant (voir également chap. 3.18.2 "Fonctions de synchronisation de la prépa‐ ration du bloc" à la page 73). Sans WAIT, aucune valeur clairement prévisible n'est fournie, car on ne sait pas exactement quel "retard" d'exécution du bloc a été pris dans le traitement de blocs. ● Syntaxe : Lors de l'accès aux valeurs d'axe d'un canal étranger, il convient le cas échéant de prendre des mesures de synchronisation afin de mesurer une position définie. ACS(<Axe> [,<Mode de sélection>[,<Canal>]]) (Paramètres voir chap. 7.1.2 " Fonctions de lecture des positions des coor‐ données et des axes" à la page 341, Programmation d'ERRNO voir chap. 3.13.5 "Variable ERRNO pour l'analyse des erreurs des fonctions CPL" à la page 60) Exemples : ACS("X",ERRNO) ACS("X",1) ACS("X",1,1) Canal 2 selon l'exemple de configuration (voir Fig. 7-2 "Configuration et attri‐ bution des noms d'axe aux canaux" à la page 341) : N10 G0 G90 X2=150 Y2=100 20 WAIT 30 X2WERT=ACS("X2",ERRNO) 31 IF ERRNO <>0 THEN 32 PRN#(0,"Erreur :",ERRNO) 33 ENDIF N40 G91 X2=10 Y2=10 50 WAIT La position axe interpolée actuelle de l'axe du canal X2 est attribuée à X2WERT. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 347/550 Fonctions CPL 60 X2WERT=ACS(1,1) La position d'axe interpolée actuelle du 1er axe de canal du canal actuel (axe X2) est attribuée à X2WERT. 70 Y2WERT=ACS("Y2",1,2) La position d'axe interpolée actuelle de l'axe du canal Y2 du 2ème canal est attribuée à Y2WERT. 80 XWERT=ACS(1,0) La position d'axe interpolée actuelle du 1er axe du système est attribuée à XWERT. SPOS Fournit la consigne de position actuelle d'un axe par rapport au système de coordonnées de l'axe. Tous les axes du système peuvent être adressés via leur nom du système ou leur index du système. Pour cette fonction s'applique ce qui suit : ● SPOS et ACS fournissent toujours des valeurs identiques. ● Si la valeur fournie doit être déterminée au moment de l'exécution du bloc, un "WAIT" doit être programmé auparavant dans un bloc correspondant (voir également chap. 3.18.2 "Fonctions de synchronisation de la prépa‐ ration du bloc" à la page 73). Sans WAIT, aucune valeur clairement prévisible ne sera fournie, car on ne sait pas exactement quel "retard" d'exécution du bloc a été pris dans le traitement de blocs. ● Syntaxe : Lors de l'accès aux valeurs d'axe d'un canal étranger, il convient le cas échéant de prendre des mesures de synchronisation afin de mesurer une position définie. SPOS(<Axe>) Index ou nom d'un axe du système. <Axe> Fig.7-3: La programmation d'un axe non configuré entraîne une erreur d'exécution. Syntaxe SPOS ERRNO n'est pas programmable. Exemple : Canaux selon l'exemple de configuration (voir Fig. 7-2 "Configuration et attri‐ bution des noms d'axe aux canaux" à la page 341). 30 POS1=SPOS(1) : 50 POS5=SPOS("Y2") : La valeur de consigne d'axe actuelle du 1er axe du sys‐ tème (axe X dans le canal 1) est attribuée à la variable POS1. La valeur de consigne d'axe actuelle du 5ème axe du système (axe Y2 dans le canal 2) est attribuée à la va‐ riable POS5. APOS Fournit la position réelle actuelle d'un axe par rapport au système de coordon‐ nées de l'axe. Tous les axes du système peuvent être adressés via leur nom du système ou leur index du système. Pour cette fonction s'applique ce qui suit : 348/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL ● Si la valeur fournie doit être déterminée au moment de l'exécution du bloc, un "WAIT" doit être programmé auparavant dans un bloc correspondant (voir également chap. 3.18.2 "Fonctions de synchronisation de la prépa‐ ration du bloc" à la page 73). Sans WAIT, aucune valeur clairement prévisible n'est fournie, car on ne sait pas exactement quel "retard" d'exécution du bloc a été pris dans le traitement de blocs. ● Syntaxe : Lors de l'accès aux valeurs d'axe d'un canal étranger, il convient le cas échéant de prendre des mesures de synchronisation afin de mesurer une position définie. APOS(<Axe>) <Axe> Index ou nom d'un axe du système. La programmation d'un axe non configuré entraîne une erreur d'exécution. Fig.7-4: Syntaxe SPOS ERRNO n'est pas programmable. Exemple : Canaux selon l'exemple de configuration (voir Fig. 7-2 "Configuration et attri‐ bution des noms d'axe aux canaux" à la page 341) : 30 AKT4=APOS(4) : 50 AKT8=APOS("A") : 7.1.3 La valeur réelle d'axe actuelle du 4ème axe du système (axe X2 dans le canal 2) est attribuée à la variable AKT4. La valeur de consigne d'axe actuelle du 8ème axe sys‐ tème (axe A dans le canal 3) est attribuée à la variable AKT8. Fonctions de lecture à partir du palpeur de mesure PCSPROBE Si un palpeur de mesure actionnant est raccordé aux axes d'un canal et si une mesure a été réalisée, PCSPROBE peut lire la valeur mesurée pour chaque coordonnée. La condition préalable relative à PCSPROBE est que les palpeurs de mesure aient enregistré les données de tous les axes du canal. Les valeurs d'axe en‐ registrées sont converties en coordonnées du programme au moyen de la dernière chaîne de transformation activée. PCSPROBE fournit la valeur pour une coordonnée. Syntaxe : PCSPROBE (<Coordonnée> [,<Mode de sélection>]) (Paramètres voir chap. 7.1.2 " Fonctions de lecture des positions des coor‐ données et des axes" à la page 341, Programmation d'ERRNO voir chap. 3.13.5 "Variable ERRNO pour l'analyse des erreurs des fonctions CPL" à la page 60) PCSPROBE ne peut pas être utilisée conjointement avec la fonc‐ tion "Mesures au vol" "FlyMeas" (FME), étant donné qu'un seul axe est mesuré lors de la "Mesure au vol". Exemple : Canal 1 selon l'exemple de configuration (voir Fig. 7-2 "Configuration et attri‐ bution des noms d'axe aux canaux" à la page 341) : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 349/550 Fonctions CPL N10 G75 X100 Y100 Z50 20 IF SD(9)=1 THEN N30 (MSG, Palpeur de mesure n'a pas été dévié !) 40 GOTO .FEHLER 50 ELSE 60 ZMESS=PCSPROBE(3,ERRNO) 61 IF ERRNO <>0 THEN La valeur de la 3ème coordonnée de la position mesurée est attribuée à la variable "ZMESS". 62 GOTO .Erreur 63 ENDIF 70 ENDIF PROBE Fournit les valeurs d'axe se rapportant au système de coordonnées de l'axe (ASC). Pour cette fonction s'applique ce qui suit : Syntaxe : ● PROBE ne donne accès qu'aux axes du canal concerné. C'est pourquoi aucune position des axes asynchrones ne peut être relevée. ● Seules les compensations de pas de broche et de croix sont prises en compte. ● Le déclenchement du palpeur de mesure dans le canal peut être vérifié à l'aide de la fonction SD(9). ● Lors de la fonction "Mesure sur butée fixe" FsProbe, les valeurs de mesure sont lues via les fonctions PPOS ou PROBE. PROBE (<Axe> [,<Mode de sélection>]) (Paramètre voir chap. 7.1.2 " Fonctions de lecture des positions des coordon‐ nées et des axes" à la page 341 ; ERRNO n'est pas programmable) Exemple : Canal 2 selon l'exemple de configuration (voir Fig. 7-2 "Configuration et attri‐ bution des noms d'axe aux canaux" à la page 341) : N70 G75 Y2 250 80 IF SD(9) = 1 THEN N90 (MSG, Palpeur de mesure n'a pas été dévié !) 100 GOTO .ERREUR 110 ELSE 120 Y2MESS=PROBE(2) La valeur réelle mesurée du 2ème axe du canal (ici : axe Y2 du canal 2) est attribuée à la variable Y2MESS. 130 ENDIF PPOS Fournit la valeur réelle d'axe actuelle d'un axe synchrone au point de commu‐ tation du palpeur de mesure. PPOS tient compte des corrections suivantes : ● Décalages d'origine des axes (G54...G59) ● Corrections d'outil (G48, ED) ● Décalage des coordonnées du programme (Trans, ATrans) 350/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL ● Compensations des erreurs de pas de broche et de croix Les fonctions suivantes ne sont pas prises en compte : ● Transformation d'axe (Coord) ● Transformations de coordonnées (BcsCorr, G152...G159) ● Mise à l'échelle (PoleSet, Mirror, Scale, Rotate) Pour cette fonction s'applique ce qui suit : Syntaxe : ● PROS ne donne accès qu'aux axes du canal concerné. C'est pourquoi aucune position des axes asynchrones ne peut être relevée. ● Sans transformation d'axe ou de coordonnées, la valeur fournie se rap‐ porte au dernier système de coordonnées programmé de la pièce à usiner (WCS). ● Lors de la fonction "Mesure sur butée fixe" FSB, les valeurs de mesure sont lues via les fonctions PPOS ou PROBE. ● Le déclenchement du palpeur de mesure dans le canal peut être vérifié à l'aide de la fonction SD(9). PPOS(<Axe> [,<Mode de sélection>] ) (Paramètres voir chap. 7.1.2 " Fonctions de lecture des positions des coor‐ données et des axes" à la page 341 ; ERRNO n'est pas programmable) Exemple : Canal 3 selon l'exemple de configuration (voir Fig. 7-2 "Configuration et attri‐ bution des noms d'axe aux canaux" à la page 341) : N10 G1 G75 A250 F500 20 IF SD(9) = 1 THEN N30 (MSG, Palpeur de mesure n'a pas été dévié !) 40 GOTO .ERREUR 50 ELSE 60 AMESS = PPOs(1,1) La valeur calculée du 1er axe du canal est at‐ tribuée à la variable AMESS. 70 ENDIF 7.1.4 Fonctions de lecture des décalages et positionnements AXO AXO fournit le décalage actuel G92 pour une coordonnée au moment de la préparation d'un bloc, ce qui signifie que le dernier décalage activé est fourni au moment de l'interprétation du programme. Syntaxe : AXO(<Coordonnée>[,<Mode de sélection>] ) (Paramètres voir chap. 7.1.2 " Fonctions de lecture des positions des coor‐ données et des axes" à la page 341 ; ERRNO n'est pas programmable) AXO ne donne accès qu'aux valeurs de décalage du canal concer‐ né. Les axes asynchrones n'ont pas de décalage G92, c'est pour‐ quoi AXO est inadmissible pour les axes asynchrones. Exemple : Canal 1 selon l'exemple de configuration (voir Fig. 7-2 "Configuration et attri‐ bution des noms d'axe aux canaux" à la page 341) : N10 G1 G90 X100 F1000 N20 G92 X75 Y125 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 351/550 Fonctions CPL 30 XD = AXO("X") Le dernier décalage G92 activé de la coordonnée X du canal actuel est attribué à XD (XD=100-75=25). 40 YD = AXO(2,0) Le dernier décalage G92 activé du 2ème axe du systè‐ me est attribué à YD (YD=200-125=75). 50 X2D = AXO(4,0) Erreur d'exécution, car le 4ème axe du système est at‐ tribué au canal 2. COF Fournit le dernier décalage de contour programmé (Shift) d'une coordonnée. Comme le décalage de contour programmé n'agit que sur les coordonnées du canal actuel, la sélection d'une coordonnée n'existant pas dans le canal actuel génère un message d'erreur. Les valeurs de correction sont indiquées dans l'unité de mesure active du canal actuel, c'est-à-dire en "pouces" pour G70 et en "mm" pour G71. L'unité est toujours "Degrés" pour les axes rotatifs et les coordonnées tridimensionnelles rotatives. Syntaxe : COF(<Coordonnée> [,<Mode de sélection>]) (Paramètres voir chap. 7.1.2 " Fonctions de lecture des positions des coor‐ données et des axes" à la page 341 ; ERRNO n'est pas programmable) Exemples : 10 A=COF(3) : 20 B=COF("X") : 30 C=COF(2,0) : Fournit le dernier décalage de contour programmé de la coordonnée avec le 3ème index de coordonnées dans le canal actif. Fournit le dernier décalage de contour programmé de la coordonnée X dans le canal actif. Fournit le dernier décalage de contour programmé du 2ème axe du système dans le canal actif. Cet accès n'est permis que si l'axe système est identi‐ que à la coordonnée WCS. 100 C=COF(0) : Erreur d'exécution, car 0 n'est pas un index de coor‐ données valide. DPC Fournit les derniers paramètres programmés quant à la correction de position de la pièce à usiner (BCR) pour une coordonnée (valeurs de décalage et angle de rotation).. Comme la correction de position de la pièce à usiner n'agit que sur les coor‐ données du canal actuel, la sélection de coordonnées n'existant pas dans le canal actuel génère un message d'erreur. Les valeurs de correction sont indiquées dans l'unité de mesure active du canal actuel, c'est-à-dire en "pouces" pour G70 et en "mm" pour G71. L'unité est toujours "Degrés" pour les axes rotatifs et les coordonnées tridimensionnelles rotatives. 352/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Syntaxe : DPC(<Coordonnée> [,<Mode de sélection>]) (Paramètres voir chap. 7.1.2 " Fonctions de lecture des positions des coordonnées et des axes" à la page 341 ; ERRNO n'est pas programmable) <Coordonnée> Action supplémentaire des définitions : "1"..."n" ou "Nom" : fournit la valeur de décalage. "0" fournit l'angle de rotation phi. Fig.7-5: Exemples : Syntaxe DPC 10 A=DPC(1) : 15 B=DPC("X") : 20 B=DPC(2) : Fournit la dernière correction de position de la pièce à usiner programmée pour la coordonnée avec le 1er in‐ dex de coordonnées dans le canal. Fournit la dernière correction de position de la pièce à usiner programmée pour l'axe/la coordonnée X dans le canal. Fournit la dernière correction de position de la pièce à usiner programmée pour la coordonnée avec le 2ème index de coordonnées dans le canal. : Fournit la dernière correction de position de la pièce à usiner programmée pour le 2ème axe du système dans le canal actif. 30 ANGLE=DPC(0) Fournit le dernier angle de rotation phi programmé. 25 B=DPC(2,0) : 100 C=DPC(9) : 7.2 Information sur l'axe AXINF 7.2.1 Généralités Erreur d'exécution, car pour 8 axes dans le système, 9 n'est pas un index de coordonnées valide. AXINF L'instruction CPL AXINF fournit un index d'axes du système comme valeur de retour pour un axe du canal ou un axe du système. Les paramètres de saisie peuvent être : ● le nom de l'axe du système, ou ● le nom de l'axe du canal et (en option) l'index du canal, ou ● l'index de l'axe du canal et (en option) l'index du canal. L'ordre AXINF supporte le paramètre ERRNO. Syntaxe : AXINF(<Coordonnée> [, <Mode de sélection> [, <Numéro du canal>]] ) <Axe> Numéro de l'axe du canal ou nom de l'axe : Le nom peut être soit le nom de l'axe du système, soit le nom de l'axe du canal. L'interprétation se fait selon le <Mode de sélection> indiqué. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 353/550 Fonctions CPL <Mode de sélection> optionnel : Définit si un nom programmé est interprété en tant que nom d'axe du système ou nom d'axe du canal : 0: Système 1: Canal (défaut) <Numéro du canal> optionnel : Numéro du canal auquel se réfère l'index d'axe de canal indiqué ou le nom d'axe de canal indiqué. 0: Canal actuel (défaut) Le numéro du canal n'est permis qu'avec le <Mode de sélection> = 1. Si le <Mode de sélection> est mis à 1 et si aucun nu‐ méro de canal n'est programmé, les données du canal actuel sont déterminées. ERRNO Variable CPL Si la variable CPL ERRNO est programmée à un endroit quelconque au sein de la liste des paramètres, l'ordre ne génère aucune erreur d'exécution interne. L'erreur est retournée par une valeur de retour correspondante de la variable. Les valeurs de retour suivantes sont possibles : 0: Accès OK <0: Erreur : pour la description d'erreur, voir chap. 3.13.5 "Variable ERRNO pour l'analyse des erreurs des fonctions CPL" à la page 60. Si la variable ERRNO n'est pas indiquée, une erreur d'exécution interne est automatiquement générée en cas d'une erreur interne d'accès. Fig.7-6: Exemples : Syntaxe AXINF AXINF("VA",0) fournit l'index d'axe de système de l'axe du système "VA". AXINF("Z") fournit l'index d'axe de système de l'axe du canal "Z" dans le canal actuel. AXINF("Y",1,5) fournit l'index d'axe de système de l'axe du canal "Z" dans le canal 5. AXINF(4,1,0,ERRNO) fournit l'index d'axe de système du 4ème axe du canal dans le canal actuel. Le code erreur est retourné dans la variable ERRNO. 7.3 Décalages d'origine 7.3.1 Ordres CPL pour tableaux NPV Généralités Les ordres CPL suivants permettent de lire, créer ou modifier les tableaux de décalage d'origine (tables NPV). 354/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL ZOV ZeroOffsetValue Fournit la somme des dernières valeurs de décalage d'origine programmées et donc efficaces d'une coordonnée de machine (axe) ou, en option, la valeur efficace de chaque banque de décalage d'origine. Syntaxe : ZOV( <Sélection d'axes>[,<Banque NPV>] ) <Sélection d'axes> Nom de la coordonnée de machine (axe), programmé en apostrophes ou index de la coordonnée de machine (axe), valeurs 1..8. <Banque de décalage d'ori‐ gine> Fig.7-7: Exemples : Index de la banque de décalage d'origine, valeurs 1...5. Syntaxe ZOV ZOV("X") fournit la somme de tous les décalages d'origine effica‐ ces (derniers décalages d'origine programmées) pour la coordonnée de machine (axe) X. ZOV(2,3) fournit le décalage d'origine efficace de la 3ème banque de décalage d'origine pour la 2ème coordonnée de ma‐ chine (axe). ZOT ZeroOffsetTable Accès en lecture et en écriture à un tableau de décalage d'origine XML quel‐ conque au sein du système de fichiers de l'IndraMotion MTX. L'accès n'est permis que pour des éléments individuels. Les modifications incrémentales peuvent également être effectuées pendant l'écriture. Syntaxe : ZOT(<Sélection de colonne>,<Code de décalage d'origine>[,[<Banque de décalage d'origine>][,[<Tableau [,<Unité>] [,<Canal>]]]) <Sélection de colonne> Nom de la coordonnée de machine (axe), programmé en apostrophes ou index de colonne dans le tableau. En cas d'accès en écriture, il est possible : <Code de décalage d'origi‐ ne> ● d'écraser la valeur du tableau, ou ● l'entrer cette valeur de manière additive, si la <Sé‐ lection de colonne> commence avec un signe moins. 54: 1. décalage d'origine 55: 2. décalage d'origine 56: 3. décalage d'origine 57: 4. décalage d'origine 58: 5. décalage d'origine 59: 6. décalage d'origine <Banque de décalage d'ori‐ gine> Index de la banque de décalage d'origine (1...5). Valeur par défaut : 1 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 355/550 Fonctions CPL <Tableau> Nom du tableau de décalage d'origine, le cas échéant avec indication absolue ou incrémentale du chemin (le suffixe ".zot" du tableau ne doit pas être programmé). Si aucun chemin n'est indiqué, la recherche est effec‐ tuée au sein du chemin de recherche configuré. Pour les tableaux ayant les noms de défaut ZO1, ZO2 etc., seul l'indice numérique peut être indiqué. Si aucun nom de tableau n'est indiqué, le dernier tableau activé est utilisé. <Unité> 0 ou "MM" : mm 1 ou "INCH" : pouces Lors de l'accès en écriture, la valeur attribuée est inter‐ prétée dans l'unité définie. Lors de l'accès en lecture, la valeur est convertie en l'unité définie. Valeur par défaut : mm <Canal> Attribution des canaux (0..12) Le paramètre <Canal> ne doit être indiqué que si la <Sélection de colonne> est indiquée en tant que nom d'une coordonnée de machine. Si le paramètre <Sélection de colonne> contient un in‐ dex de colonne, un message d'erreur est généré, si <Canal> est indiqué. Les coordonnées du tableau de décalage d'origine étant spécifiques au canal et ayant les mêmes noms peuvent être différenciées à l'aide de l'attribution aux canaux. Valeur par défaut : L'accès à la 1ère colonne se fait avec la <Sélection de colonne>. L'entrée du canal est igno‐ rée. L'accès à la 1ère colonne trouvée se fait avec <Sélec‐ tion de colonne> et <Canal>. Si elle n'existe pas : message d'erreur. ERRNO Variable CPL Si la variable CPL ERRNO est indiquée à un endroit quelconque dans la liste de paramètres, aucune erreur d'exécution n'est générée. L'erreur est retournée par une valeur correspondante de la variable. Les valeurs de retour suivantes sont possibles : 0: Accès OK <0: Erreur (pour la description d'erreur détaillée, voir chap. 3.13.5 "Variable ERRNO pour l'analyse des er‐ reurs des fonctions CPL" à la page 60) Si la variable CPL ERRNO n'est pas indiquée, une er‐ reur d'exécution est générée en cas d'une erreur d'ac‐ cès. Fig.7-8: Syntaxe ZOT 356/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Exemples : ZOT("X",54) Accès au décalage G54 de la coordonnée d'axe/de machine "X" dans le dernier tableau NPV activé du canal. ZOT(2,55,2) Accès au décalage G55.2 de la 2ème coordon‐ née d'axe/de machine enregistrée dans le der‐ nier tableau NPV activé du canal. ZOT(3,57,,"V1") Accès au décalage G57 de la 3ème coordon‐ née d'axe/de machine enregistrée dans le ta‐ bleau NPV "V1.zot". ZOT("Z",58,4,21,1) Accès en pouces au décalage G58.4 de la co‐ ordonnée d'axe/de machine "Z" dans le tableau NPV "ZO21.zot". ZOT("Y",59,5,"/mnt/esmuser/de/HHGENIUS","MM") Accès métrique au décalage G59.5 de la coor‐ donnée d'axe/de machine "Y" dans le tableau "HHGENIUS" du répertoire "/mnt/esmuser/ de". ZOT("Y",56,1,"/mnt/ZOF","MM",2) Accès métrique au décalage G56.1 de la coor‐ donnée d'axe/de machine "Y", allouée au canal 2, dans le tableau "ZOF" du répertoire "/mnt". ZOTCR Crée un tableau de décalage d'origine XML (table NPV) sans blocs de correc‐ tion au sein du système de fichiers de la MTX. Syntaxe : ZOTCR(<Tableau>,<Canal/Définition>) <Tableau> Nom du tableau XML, le cas échéant avec indication de chemin. <Canal/Définition> Numéro du canal ou nom du tableau XML défini, le cas échéant avec indication de chemin. ERRNO Variable CPL Si la variable CPL ERRNO est indiquée à un endroit quelconque dans la liste de paramètres, aucune erreur d'exécution n'est générée. L'erreur est retournée par une valeur correspondante de la variable. Les valeurs de retour suivantes sont possibles : 0: Accès OK <0: Erreur (pour la description d'erreur détaillée, voir chap. 3.13.5 "Variable ERRNO pour l'analyse des er‐ reurs des fonctions CPL" à la page 60) Si la variable CPL ERRNO n'est pas indiquée, une er‐ reur d'exécution est générée en cas d'une erreur d'ac‐ cès. Fig.7-9: Exemple : Syntaxe ZOTCR ZOTCR("/usr/user/zot.tst",1) Création du nouveau tableau "/usr/user/ zot.tst" avec colonnes pour tout axe du premier canal. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 357/550 Fonctions CPL ZOCINS Insertion d'un nouvel axe avant une nouvelle colonne dans le tableau de dé‐ calage d'origine XML. Le nouvel axe contient le même nombre de blocs de correction que le 1er axe du tableau. Les valeurs sont prédéfinies avec 0.0. Syntaxe : ZOCINS(<Tableau>,<Position>,<NomAxe> [,[<TypeAxe>][,[<CanalAxe>][,<CanalPos>]]]) <Tableau> Nom du tableau XML, le cas échéant avec indication de chemin. <Position> Nom de coordonnée ou index de colonne du point d'in‐ sertion. <NomAxe> Nom d'axe de la nouvelle colonne de tableau. <TypeAxe> En option : type d'axe du nouvel axe. 0: Axe linéaire (valeur de défaut) 1: Axe rotatif <CanalAxe> Numéro du nouvel axe. Valeur par défaut : 0 <CanalPos> Nom du canal de la coordonnée au point d'insertion, si un nom de coordonnée a été indiqué, sinon aucune si‐ gnification. ERRNO Variable CPL. Si la variable CPL ERRNO est indiquée à un endroit quelconque dans la liste de paramètres, aucune erreur d'exécution n'est générée. L'erreur est retournée par une valeur correspondante de la variable. Les valeurs de retour suivantes sont possibles : 0: Accès OK. <0: Erreur (pour la description d'erreur détaillée, voir chap. 3.13.5 "Variable ERRNO pour l'analyse des er‐ reurs des fonctions CPL" à la page 60) Si la variable CPL ERRNO n'est pas indiquée, une er‐ reur d'exécution est générée en cas d'une erreur d'ac‐ cès. Fig.7-10: Exemples : Syntaxe ZOCINS ZOCINS("/usr/user/zot.tst","X","Y") Insertion d'un nouvel axe dans le tableau "/usr/user/ zot.tst" avec la désignation de colonne "Y" avant la co‐ lonne de tableau avec la désignation "X". Variante avec nom de l'axe ZOCINS("/ZOT_Trafo.zot","X","U",,1,1) Insertion d'un nouvel axe linéaire (pour canal 1) dans le tableau. "/ZOT_Trafo.zot" avec la désignation de colonne "U" avant la colonne de tableau ayant la désignation "X" du canal 1 ; Une fois cet ordre entré, l'axe avec la désignation "X" et le canal 1 est recherché dans le tableau et remplacé par le nouvel axe linéaire "U" pour canal 1. 358/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Variante avec index de colonne du point d'insertion ZOCINS("/ZOT_Trafo.zot",1,"U",1,,2) Insertion d'un nouvel axe rotatif (pour canal 2) dans le tableau. "/ZOT_Trafo.zot" avec la désignation de colonne "U" dans la colonne de tableau 1. ZOCDEL Suppression d'un axe dans un tableau de décalage d'origine XML. Syntaxe : ZOCDEL(<Tableau>,<Position>[,<Canal>]) <Tableau> Nom du tableau XML, le cas échéant avec indication de chemin. <Position> Nom d'axe ou index de colonne de l'axe à supprimer. <Canal> Numéro de canal de l'axe à supprimer. Valeur par défaut : 0 ERRNO Variable CPL Si la variable CPL ERRNO est indiquée à un endroit quelconque dans la liste de paramètres, aucune erreur d'exécution n'est générée. L'erreur est retournée par une valeur correspondante de la variable. Les valeurs de retour suivantes sont possibles : 0: Accès OK <0: Erreur (pour la description d'erreur détaillée, voir chap. 3.13.5 "Variable ERRNO pour l'analyse des er‐ reurs des fonctions CPL" à la page 60) Si la variable CPL ERRNO n'est pas indiquée, une er‐ reur d'exécution est générée en cas d'une erreur d'ac‐ cès. Fig.7-11: Exemples : Syntaxe ZOCDEL ZOCDEL("/usr/user/zot.tst","X") Suppression de l'axe avec la désignation de colonne "X" dans le tableau "/usr/user/zot.tst". Variante avec nom d'axe de l'axe à supprimer ZOCDEL("/ZOT_Trafo.zot","X",1) Suppression de l'axe avec la désignation de colonne "X" dans le tableau "/ZOT_Trafo.zot". Une fois cet ordre entré, l'axe avec la désignation "X" (en canal 1) est recherché dans le tableau et sup‐ primé. Variante avec index de colonne de l'axe à supprimer ZOCDEL("/ZOT_Trafo.zot",1) Suppression de l'axe avec l'index de colonne 1 dans le tableau "/ZOT_Trafo.zot". Une fois cette instruction été entrée, le premier axe dans le tableau est supprimé. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 359/550 Fonctions CPL 7.4 Corrections d'outil 7.4.1 Correction d'outil Généralités Les ordres CPL suivants donnent accès aux données internes de correction d'outil (correction D) et aux données externes de correction d'outil (correction ED) auxquelles l'API a accès. TCV ToolCorrectionValue Fournit les dernières valeurs de correction d'outil programmées soit comme valeur combinée (correction D + mémoire de correction externe), soit comme valeur unique. Syntaxe : TCV(<Sélection de valeurs>[,<Sélection de correction>]) <Sélection de valeurs> Numéro de la correction D-/ED : 0: Dernière correction D-/ED activée 1 ou "L1" : Longueur de correction L1 2 ou "L2" : Longueur de correction L2 3 ou "L3" : Longueur de correction L3 4 ou "RAD" : Rayon de l'outil/de l'arête de coupe 5 ou "ORI" : Orientation de l'arête de coupe 6 ou "PHI" : Angle d'Euler φ (uniquement correction ED) 7 ou "THE" : Angle d'Euler ϑ (uniquement correction ED) 8 ou "PSI" : Angle d'Euler ψ (uniquement correction ED) <Sélection de correction> 1 ou "D" : Correction D (interne) 2 ou "E" : Correction ED (externe) Valeur par défaut : Somme des corrections D et ED Fig.7-12: Exemples : Syntaxe TCV TCV(0,"D") Fournit la dernière correction D programmée. TCV("L1") Lecture de la somme des valeurs L1 de la dernière cor‐ rection D et ED programmée. TCV(4,1) Lecture du rayon de l'outil de la dernière correction D programmée. TCV(2,"E") Lecture de la longueur L2 de l'outil de la dernière cor‐ rection ED programmée. DCT D-CorrectionTable Accès en lecture et en écriture aux valeurs de correction d'outil dans un tableau de correction D quelconque ainsi qu'aux valeurs de correction externes (cor‐ rection ED). Les modifications incrémentales peuvent également être effec‐ tuées pendant l'écriture. Si la fonction "Effacement de la course restante" est à utiliser, l'ins‐ truction "WAIT" doit être programmée avant toute DCT. 360/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Syntaxe : DCT(<Sélection de valeurs>,<Jeu de données>[,[<Tableau>][,<Unité>]]) <Sélection de valeurs> Numéro de la correction D-/ED : 1 ou "L1" : Longueur de correction L1 2 ou "L2" : Longueur de correction L2 3 ou "L3" : Longueur de correction L3 4 ou "RAD" : Rayon de l'outil/de l'arête de coupe 5 ou "ORI" : Orientation de l'arête de coupe 6 ou "PHI" : Angle d'Euler φ (uniquement correction ED) 7 ou "THE" : Angle d'Euler ϑ (uniquement correction ED) 8 ou "PSI" : Angle d'Euler ψ (uniquement correction ED) La valeur peut être lue ou écrite. En cas d'accès en écriture, il est possible : ● d'écraser la valeur du tableau, ou ● d'additionner la valeur à la valeur du tableau, si <Sélection de valeurs> commence avec un signe moins. Pour Orientation de l'arête de coupe (5 ou "ORI"), une écriture incrémentale n'est pas possible. <Jeu de données> 1..99: pour une correction D 1..16: pour une correction ED <Tableau> Nom du tableau de correction D, le cas échéant, avec indication absolue ou incrémentale du chemin (sans suffixe de tableau ".dct"). Si aucun chemin n'est indiqué, la recherche est effectuée au sein du chemin de recherche configuré. Pour les tableaux ayant les noms de défaut DC1, DC2 etc., seul l'indice numérique doit être indiqué. Si aucun <Tableau> n'est programmée, le dernier ta‐ bleau de correction D sélectionnée est utilisé. 0: Accès à la correction ED du canal actuel. -1: Accès à la correction ED du canal 1. -2: Accès à la correction ED du canal 2. -3 : Accès à la correction ED du canal 3. ... -12: Accès à la correction ED du canal 12. <Unité> 0 ou "MM" : mm (défaut) 1 ou "INCH" : pouces Lors de l'accès en écriture, la valeur attribuée est inter‐ prétée dans l'unité définie. Lors de l'accès en lecture, la valeur est convertie en l'unité définie. Fig.7-13: Syntaxe DCT Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 361/550 Fonctions CPL Exemples : DCT(1,10,"K4") Accès à la valeur de correction "L1" du jeu de données 10 dans le tableau de correction D "K4". DCT("RAD",7) Ecriture incrémentale sur le rayon d'outil du jeu de don‐ nées 7 du dernier tableau activé. DCT("L2",16,0,"INCH") Accès en pouces à la correction "L2" du jeu de données 16 de la correction externe de l'outil. Accès au rayon d'outil pour le bloc de correction 7 du 3ème canal. DCT(4,7,-3) Lors de la lecture/l'écriture des données de correction de l'outil des canaux externes, il faut veiller à ce qu'il n'y ait aucun accès con‐ currentiel de différents canaux. 7.5 Base de données des outils 7.5.1 Base de données DBTAB Peut importer un jeu de données complet ou une structure partielle d'un tableau de base de données des outils dans une variable CPL ou le réexporter de la variable dans le jeu de données. Syntaxe : DBTAB(<TableauBD>,<Key1>,<Key2>[,<ResVar>]) <TableauBD> Nom du tableau de base de données avec structure partielle (chaîne Xpath). Un "." ou "/" peut être utilisé comme caractère de séparation entre les paramètres. <Key1> Clé de base de données 1. <Key1> Clé de base de données 2. <ResVar> Variable du type entier. Si <ResVar> est indiquée, aucune erreur d'exécution n'est générée en cas d'erreur d'accès. Les valeurs de retour suivantes sont possibles : 0: Accès OK. 1: Erreur lors de l'accès. 2: Mémoire insuffisante. 3: Type de variable inadmissible. Si aucune <ResVar> est indiquée, une erreur d'exécu‐ tion est générée en cas d'erreur d'accès. Fig.7-14: Exemple : Syntaxe DBTAB 10 SV.A=DBTAB("DBT1.Rec",1,1) 20 D!=DBTAB("DBT1.Rec.UD.Ed.Geo.L1",1,1) 30 SV.A.UD.Ed.Geo.L1 = 10 40 DBTAB("DBT1.Rec",1,1) = SV.A DBSEA Recherche un jeu de données dans un tableau de base de données des outils. 362/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL La fonction CPL renvoie le titre du premier jeu de données correspondant au critère de recherche. Dans ce cas, la variable <SearchResA renvoie la valeur 1. La recherche des jeux de données commence avec le jeu de données défini via <StartKey1> et <StartKey2>. Si la valeur d'une des deux clés de dé‐ marrage est de -1, la recherche débute par le premier jeu de données dans le tableau de base de données. Syntaxe : DBSEA(<TableauBD>,<StartKey1>,<StartKey2>,<SearchCond>, <SearchRes>, [<ResVar>]) <TableauBD> Nom du tableau de base de données. <StartKey1> Key1 du premier jeu de données. <StartKey2> Key2 du premier jeu de données. <SearchCond> Critère de recherche sous forme de chaîne (voir chap. "DBSEAX" à la page 370). <SearchRes> Résultat de la recherche, variable du type entier. 0: Aucun jeu de données correspondant au critère de recherche n'a été trouvé. 1: Un jeu de données correspondant au critère de re‐ cherche a été trouvé. <ResVar> Variable du type entier. Si <ResVar> est indiquée, aucune erreur d'exécution n'est générée en cas d'erreur d'accès. Les valeurs de retour suivantes sont possibles : 0: Accès OK. 1: Erreur lors de l'accès. 2: Mémoire insuffisante. 3: Type de variable inadmissible. 4: Critère de recherche erroné. Si aucune <ResVar> est indiquée, une erreur d'exécu‐ tion est générée en cas d'erreur d'accès. Fig.7-15: Exemple : Syntaxe DBSEA 10 SD.DBRec.Hd=DBSEA("DBT1",-1,-1,"K1=1",FOUND%) 20 WHILE FOUND%=1 DO 30 SD.DBRec.Hd=DBSEA("DBT1", SD.DBRec.Hd.K1, SD.DBRec.Hd.K2, "K1=1",FOUND%) 40 END La date de système suivante est requise : Programme: <Variable Storage="volatile"> <Name>DBRec</Name> <Type>DBT1Rec_t</Type> </Variable> Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 363/550 Fonctions CPL 7.6 Positionnements (Plan incliné) 7.6.1 Plan incliné Généralités Les ordres CPL suivants permettent l'accès aux tableaux de positionnement. PMV PlaceMentValue Fournit la somme des dernières valeurs de positionnement programmées et donc efficaces pour une coordonnée. Il est également possible de lire la valeur efficace d'une banque de positionnement individuelle. Syntaxe : PMV(<Sélection de coord.>[,<BanquePos.>]) <Sélection de coord.> Index de la coordonnée (1...6) ou désignateur fixe "X", "Y", "Z", "PHI", "THE", "PSI" pour les coordonnées WCS. <BanquePos.> Index de la banque de positionnement (1...5). Fig.7-16: Exemples : Syntaxe PMV PMV("Y") Fournit la somme de tous les positionnements efficaces (derniers positionnements programmés) pour la coor‐ donnée "Y". Du fait des éventuelles torsions, il ne s'agit ici pas uniquement de la somme des banques indivi‐ duelles, mais du décalage résultant sur l'axe "Y" du système de coordonnées de base de la pièce à usiner. PMV(4,4) Fournit l'angle d'Euler PHI du positionnement actif de la 4ème banque. PMT PlaceMentTable Accès en lecture et en écriture à un tableau de positionnement XML quel‐ conque de l'IndraMotion MTX (accès uniquement aux éléments individuels). Les modifications incrémentales peuvent également être effectuées pendant l'écriture. Syntaxe : PMT(<Sélection de coord.>,<CodePos.>[,[<BanquePos.>][,[<Tableau>] [,<Unité>]]]) <Sélection de coord.> Index de la coordonnée (1...6) ou désignateur fixe "X", "Y", "Z", "PHI", "THE", "PSI" pour les coordonnées WCS La valeur peut être lue ou écrite. En cas d'accès en écriture, il est possible : <CodePos.> ● d'écraser la valeur du tableau, ou ● d'additionner la valeur à la valeur du tableau, si <Sélection de coord.> commence avec un signe moins. 154: positionnement 1 155: positionnement 2 156: positionnement 3 157: positionnement 4 158: positionnement 5 159: positionnement 6 364/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL <BanquePos.> Index de la banque de positionnement (1...5). Valeur par défaut : 1 <Tableau> Nom du tableau de positionnement, le cas échéant avec indication absolue ou incrémentale du chemin (le suffixe ".pmt" des tables ne doit pas être programmé). Si aucun chemin n'est indiqué, la recherche est effectuée au sein du chemin de recherche configuré. Pour les tableaux ayant les noms de défaut PM1, PM2 etc. seul l'indice numérique doit être saisi. Si aucun nom de tableau n'est indiqué, le dernier tableau activé est utilisé. <Unité> 0 ou "MM" : mm 1 ou "INCH" : pouces Pour les 3 coordonnées linéaires, la valeur attribuée est interprétée dans l'unité indiquée (en cas d'accès en écriture) ou transformée en l'unité indiquée (en cas d'accès en lecture). Valeur par défaut : mm Fig.7-17: Exemples : Syntaxe PMT PMT("Z",155) Accès au décalage G155 de la coordonnée "Z" dans le dernier tableau de positionnement activé du canal. PMT(5,157,3) Accès à l'angle d'Euler ϑ de G157.3 dans le dernier ta‐ bleau de positionnement activé du canal. PMT("X",154,,"P1") Accès au décalage G154.1 de la coordonnée "X" dans le tableau de positionnement P1. PMT(3,158,4,,1) Accès en pouces au décalage G158.4 de la coordonnée "Z" dans le dernière tableau de positionnement activé du canal. PMT("Y",159,5,"/mnt/esmuser/de/PL5","MM") Accès métrique au décalage de G159.5 de la coordon‐ née "Y" dans le tableau "PL5" du répertoire "/mnt/es‐ muser/de". 7.7 Accès général aux tableaux XML 7.7.1 Tableaux XML XTAB Accès en lecture et en écriture à un tableau XML quelconque. Contrairement aux fonctions spéciales pour les tableaux NPV, de correction D et de positionnement, cette fonction permet également l'accès à toutes les structures partielles d'un tableau dans la mesure où un type de donnée cor‐ respondant a été défini. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 365/550 Fonctions CPL Syntaxe : XTAB(<Tableau>,<Structure partielle>) <Tableau> Nom du tableau XML, le cas échéant avec indication de chemin. <Structure partielle> Structure partielle souhaitée, indiquée en tant qu'ex‐ pression XPATH. Fig.7-18: Exemple : Syntaxe XTAB 10 X!=XTAB( "/database/PM1.pmt","/PMT/set[1]/G154/Corr/Trans/ XWCS") 20 XTAB( "/database/PM1.pmt","/PMT/set[1]/G154/Corr/Trans/ XWCS")=X!+1.0 Incrémenter la valeur dans le tableau de 1. XTABCR Crée un tableau XML sans données au sein du système de fichiers de la MTX. Syntaxe : XTABCR(<Tableau>,<Type>[,<Définition de tableau>]) <Tableau> Nom du tableau XML, le cas échéant avec indication de chemin. <Type> Type de tableau (XML Root-Tag). <Définition de tableau> Nom du tableau XML défini, le cas échéant avec indi‐ cation de chemin. Le <Type> indiqué doit correspondre au type de la <Définition de tableau>. ERRNO Variable CPL. Si la variable CPL ERRNO est indiquée à un endroit quelconque dans la liste de paramètres, aucune erreur d'exécution n'est générée. L'erreur est retournée par une valeur correspondante de la variable. Les types de valeurs de retour suivantes sont possi‐ bles : 0: Accès OK. -1: Erreur de paramètre. -13: Impossible d'écrire les données. -14: Le tableau XML existe. -15: Impossible de trouver le tableau XML. -16: Extension de fichier invalide. -17: Type de tableau invalide. Si la variable CPL ERRNO n'est pas indiquée, une er‐ reur d'exécution est générée en cas d'une erreur d'ac‐ cès. Fig.7-19: Syntaxe XTABCR DBMOVE Déplacement d'un jeu de données au sein d'un tableau de base de données. Syntaxe : DBMOVE(<TableauDB>,<SrcKey1>,<SrcKey2>,<DestKey1>,<DestKey2> [,<Mode>]) <TableauDB> Root-Tag du tableau XML. 366/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL <SrcKey1> 1. Clé du jeu de données source. <SrcKey2> 2. Clé du jeu de données source. <DestKey1> 1. Clé du jeu de données cible. <DestKey2> 2. Clé du jeu de données cible. <Mode> En option (défaut : 0) 0: Le contenu du jeu de données source est décalé dans le jeu de données cible et le contenu du jeu de données source est remis à zéro. 1: Le contenu du jeu de données source est copié dans le jeu de données cible et le contenu du jeu de données source reste inchangé. 2: Les contenus du jeu de données source et du jeu de données cible sont échangés. ERRNO Variable CPL. Si la variable CPL ERRNO est indiquée à un endroit quelconque dans la liste de paramètres, aucune erreur d'exécution n'est générée. L'erreur est retournée par une valeur correspondante de la variable. Les valeurs de retour suivantes sont possibles : 0: Accès OK -1: Erreur de paramètre. -7: Impossible de lire les données -13: Impossible d'écrire les données. -20: Root-Tag erroné. -21: Impossible d'accéder au fichier. -22: Clé non valable. -23: Jeu de données est bloqué. Si la variable CPL ERRNO n'est pas indiquée, une er‐ reur d'exécution est générée en cas d'une erreur d'ac‐ cès. Fig.7-20: Exemple : Syntaxe DBMOVE DBMOVE("/DBT1",1,1,2,2) Le contenu du jeu de données (1,1) est décalé dans le jeu de données (2,2). DBLOAD Peut importer des parties d'un tableau de base de données ou un tableau de base de données complet à partir d'un fichier dans la base de données. Ici, le paramètre <Mode> sert à déterminer si toutes les données du jeu de données ou seules les données spécifiques à l'outil ou à l'endroit sont importées. Syntaxe : DBLOAD(<TableauBD>,<Key1>,<Key2>>,<Nom du fichier>[,<Mode>]) <TableauBD> Root-Tag du tableau de base de données. <Key1> Clé de base de données 1. <Key2> Clé de base de données 2. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 367/550 Fonctions CPL <Mode> Les valeurs suivantes sont possibles pour <Mode> : 0: Toutes les données du jeu de données sont importées. 1: Seules les données spécifiques à l'outil sont importées. 2: Seules les données spécifiques à l'endroit sont impor‐ tées. Si <Mode> n'est pas indiqué, le valeur de défaut 0 est utilisée. ERRNO Variable CPL Si la variable CPL ERRNO est indiquée à un endroit quelconque dans la liste de paramètres, aucune erreur d'exécution n'est générée. L'erreur est retournée par une valeur correspondante de la variable. Les valeurs de retour suivantes sont possibles : 0: Accès OK <0: Erreur (pour la description d'erreur détaillée, voir chap. 3.13.5 "Variable ERRNO pour l'analyse des er‐ reurs des fonctions CPL" à la page 60) Si la variable CPL ERRNO n'est pas indiquée, une er‐ reur d'exécution est générée en cas d'une erreur d'ac‐ cès. Fig.7-21: Exemple : Syntaxe DBLOAD 10 DBLOAD("/DBT1",1,1,"/dbdaten.txt",1,ERRNO) Les données spécifiques à l'outil du jeu de données (1,1) sont importées à partir du fichier "dbdaten.txt". DBSAVE DBSAVE sert à sauvegarder les parties d'un tableau de base de données ou un tableau de base de données complet dans un fichier. Syntaxe : DBSAVE(<TableauBD>,<Key1>,<Key2>,<Nom du fichier>[,<Mode>]) <TableauDB> Root-Tag du tableau XML. <Key1> 1. clé du jeu de données. <Key2> 2. clé du jeu de données. <Nom du fichier> Nom du fichier. 368/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL <Mode> En option (défaut : 0) 0: Les données sont écrites dans le fichier "FileName". Si le fichier existe déjà, le contenu est écrasé. 1: Les données sont annexées au fichier existant "FileNa‐ me". ERRNO Variable CPL. Si la variable CPL ERRNO est indiquée à un endroit quelconque dans la liste de paramètres, aucune erreur d'exécution n'est générée. L'erreur est retournée par une valeur correspondante de la variable. Les valeurs de retour suivantes sont possibles : 0: Accès OK -1: Erreur de paramètre. -7: Impossible de lire les données. -13: Impossible d'écrire les données. -20: Root-Tag erroné. -21: Impossible d'accéder au fichier. -22: Clé non valable. -23: Jeu de données est bloqué. Si la variable CPL ERRNO n'est pas indiquée, une er‐ reur d'exécution est générée en cas d'une erreur d'ac‐ cès. Fig.7-22: Syntaxe DBSAVE Si les deux clés ont la valeur -1, tous les jeux de données sont écrits dans le fichier. Si la 1er clé a une valeur inégale à -1 et la 2ème clé a la valeur -1, tous les jeux de données dont la 1er clé a la valeur indiquée sont écrits dans le fichier. Exemple : DBSAVE("/DBT1",1,1,"/dbdaten.txt") Le contenu du jeu de données (1,1) est sauvegardé dans le fichier "dbdaten.txt". DBTABX Peut importer un jeu de données complet ou la structure partielle d'un tableau de base de données des outils dans une variable CPL ou le réexporter de la variable dans le jeu de données. Ici, le paramètre <Mode> sert à déterminer si toutes les données du jeu de données ou seules les données spécifiques à l'outil ou à l'endroit sont écrites. Syntaxe : DBTABX(<TableauBD>,<Key1>,<Key2>[,<Mode>]) <TableauBD> Nom du tableau de base de données avec structure partielle (chaîne Xpath). Un "." ou "/" peut être utilisé comme caractère de séparation entre les paramètres. <Key1> Clé de base de données 1. <Key2> Clé de base de données 2. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 369/550 Fonctions CPL <Mode> En cas d'accès en écriture, les valeurs suivantes sont possibles pour <Mode> : 0: Toutes les données du jeu de données sont écrites. 1: Seules les données spécifiques à l'outil sont écrites. 2: Seules les données spécifiques à l'endroit sont écrites. Si <Mode> n'est pas indiqué, le valeur de défaut "0" est utilisée. En cas d'accès en lecture, <Mode> n'a pas de signifi‐ cation. ERRNO Variable CPL. Si la variable CPL ERRNO est indiquée à un endroit quelconque dans la liste de paramètres, aucune erreur d'exécution n'est générée. L'erreur est retournée par une valeur correspondante de la variable. Les valeurs de retour suivantes sont possibles : 0: Accès OK <0: Erreur (pour la description d'erreur détaillée, voir chap. 3.13.5 "Variable ERRNO pour l'analyse des er‐ reurs des fonctions CPL" à la page 60) Si la variable CPL ERRNO n'est pas indiquée, une er‐ reur d'exécution est générée en cas d'une erreur d'ac‐ cès. Fig.7-23: Exemple : Syntaxe DBTABX 10 SV.A = DBTABX("DBT1.Rec",1,1) 20 D! = DBTABX("DBT1.Rec.UD.Ed.Geo.L1",1,1) 30 SV.A.UD.Ed.Geo.L1 = 10 40 DBTABX("DBT1.Rec",1,1,1,ERRNO) = SV.A 50 IF ERRNO <> 0 THEN 60 SETERR("Impossible d'écrire le jeu de données de l'outil") 70 ENDIF DBTABXL Peut importer un jeu de données complet ou la structure partielle d'un tableau de base de données des outils dans une variable CPL ou le réexporter de la variable dans le jeu de données. En cas d'accès en lecture, le jeu de données est bloqué ; lors de l'écriture du jeu de données, ce blocage est annulé. Syntaxe : DBTABXL(<TableauBD>,<Key1>,<Key2>[,<Mode>]) <TableauBD> Nom du tableau de base de données avec structure partielle (chaîne Xpath). Un "." ou "/" peut être utilisé comme caractère de séparation entre les paramètres. <Key1> Clé de base de données 1. <Key2> Clé de base de données 2. 370/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL <Mode> En cas d'accès en écriture, le blocage est annulé indépendamment du <Mode>. Les valeurs suivantes sont possibles : 0: Toutes les données du jeu de données sont écrites. 1: Seules les données spécifiques à l'outil sont écrites. 2: Seules les données spécifiques à l'endroit sont écrites. 3: Aucunes données ne sont écrites. Si <Mode> n'est pas indiqué, le valeur de défaut 0 est utilisée en cas de l'accès en écriture. En cas d'accès en lecture, le paramètre <Mode> n'a pas de signification. ERRNO Variable CPL. Si la variable CPL ERRNO est indiquée à un endroit quelconque dans la liste de paramètres, aucune erreur d'exécution n'est générée. L'erreur est retournée par une valeur correspondante de la variable. Les types de valeurs de retour suivantes sont possi‐ bles : 0 : Accès OK <0 : Erreur (pour la description d'erreur détaillée, voir chap. 3.13.5 "Variable ERRNO pour l'analyse des er‐ reurs des fonctions CPL" à la page 60) Si la variable CPL ERRNO n'est pas indiquée, une er‐ reur d'exécution est générée en cas d'une erreur d'ac‐ cès. Fig.7-24: Exemple : Syntaxe DBTABXL 10 SV.A = DBTABXL("DBT1.Rec",1,1) 20 D! = DBTABXL("DBT1.Rec.UD.Ed.Geo.L1",1,1) 30 SV.A.UD.Ed.Geo.L1 = 10 40 DBTABXL("DBT1.Rec",1,1) = SV.A DBSEAX Recherche un ou plusieurs jeu(x) de données dans un tableau de base de données des outils. L'ordre fournit une liste des titres des jeux de données correspondant au critère de recherche. Les titres sont enregistrés dans un ta‐ bleau des données système <HeaderArr> triés par K1 et K2. Le paramètre <ErgSize> sert à définir combien de titres de jeux de données doivent être recherchés au maximum. La valeur de retour de DBSEAX fournit le nombre des jeux de données trouvés. La recherche des jeux de données commence avec le jeu de données défini via <StartKey1> et <StartKey2>. Si la valeur d'une des deux clés de dé‐ marrage est de "-1", la recherche débute par le premier jeu de données dans le tableau de base de données. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 371/550 Fonctions CPL Syntaxe : DBSEAX(<TableauDB>,<StartKey1>,<StartKey2>,<SearchCond>,<HeaderArr>, <ArrSize>) <TableauBD> Nom du tableau de base de données. <StartKey1> Key1 du premier jeu de données. <StartKey2> Key2 du premier jeu de données. <SearchCond> Critère de recherche sous forme de chaîne de caractè‐ res (voir ci-dessous). <HeaderArr> Date du système du type "Titre du jeu de don‐ nées" (p.ex. DBT1Hd_t). Si plusieurs jeux de données sont recherchés, il s'agit d'un tableau. L'indexation du tableau se fait par le comp‐ tage du dernier index contenu dans le SD, p.ex. SD.HdArr[1,1] – Le deuxième index est compté en HdArr. SD.SDArr[1,1].RecArr[1].Hd – L'index de RecArr est compté. <ArrSize> Nombre maximum des titres de jeux de données re‐ cherchés. Attention : <HeaderArr> doit être dimensionné de ma‐ nière à ce que ce nombre de titres puisse être intégrés. ERRNO Variable CPL. Si la variable CPL ERRNO est indiquée à un endroit quelconque dans la liste de paramètres, aucune erreur d'exécution n'est générée. L'erreur est retournée par une valeur correspondante de la variable. Les types de valeurs de retour suivantes sont possi‐ bles : ● 0: Accès OK ● <0: Erreur (pour la description d'erreur détaillée, voir chap. 3.13.5 "Variable ERRNO pour l'analyse des erreurs des fonctions CPL" à la page 60) Si la variable CPL ERRNO n'est pas indiquée, une er‐ reur d'exécution est générée en cas d'une erreur d'ac‐ cès. Fig.7-25: Critère de recherche (<Search‐ Cond>) Syntaxe DBSEAX La syntaxe suivante doit être respectée : ● Une liste de conditions individuelles à satisfaire absolument est prédéfinie. ● Les conditions individuelles sont séparés les unes des autres par ",". ● Une condition individuelle se présente sous la forme : <Nom Tag><Opérateur de comparaison><Valeur> avec – <Opérateur de comparaison> : "=" égal(e) à – ">" supérieur(e) à – ">=" supérieur(e) ou égal(e) à – "<" inférieur(e) à – "<=" inférieur(e) ou égal(e) à – "<>" inégal(e) 372/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL – ● Seuls les éléments suivants sont admissibles en tant qu'opérateur de comparaison pour SKQ : "=" et "<> ", p.ex. SKQ=4711 Une condition individuelle pour un masque de bit se présente sous la for‐ me : <Nom Tag>=<Valeur>:<Masque> par ex. : BQ1=0x307000:0xF0FF00 avec : – <Valeur> : Valeur que les bits pertinents doivent avoir. – <Masque> : Définition des bits pertinents. Les valeurs et les masques sont interprétés : – en tant que chiffre hexadécimal, s'ils commencent par "0x" ou "0X". – en tant que chiffre octal, s'ils commencent par "0". – et dans les autres cas en tant que chiffre décimal. Au sein de <Valeur>, les espaces de tête ou de queue ne sont pas éva‐ lués. Si une chaîne de caractères doit être définie, dans laquelle ces espaces sont importants, la chaîne de caractères partielle doit être mise en apostrophes (par ex. : SKQ=' '). Si on veut utiliser un apostrophe dans une chaîne de caractères partielle mise en apostrophes, celui-ci doivent être précédé du signe "\" (par ex. : SKQ='Achim\'s') Conditions secondaires Exemple : ● Seuls les noms de TAG prédéfinis peuvent être utilisés. ● Seules les interrogations d'égalité sont possibles. K1=1 IKQ2=3 BQ2=0x1:0x1 Exemple : Tous les jeux de données correspondant à un critère de recherche sont à trou‐ ver. Pour cela, la recherche doit être répétée jusqu'à ce que le nombre des jeux de données trouvés est inférieur au nombre maximum des jeux de données recherchés. Pour toute nouvelle recherche, les clés de démarrage doivent être ajustés au dernier jeu de données trouvé. Programme: 10 10 30 31 33 35 37 59 43 46 49 51 53 55 57 61 63 Key1%=-1 Key2%=-1 ARRSIZE%=10 REPEAT FOUND% = DBSEAX("DBT1",KEY1%,KEY2%,"K1>0",SD.HdArr[1], ARRSIZE%,ERRNO) IF ERRNO=0 THEN IF FOUND%>=1 THEN FOR I%= 1 TO FOUND% PRN#(0,Secteur : ",SD.HdArr[I%].K1,", Endroit : ", SD.HdArr[I%].K2) NEXT I% KEY1%= SD.HdArr[FOUND%].K1 KEY2%= SD.HdArr[FOUND%].K2 ENDIF ELSE PRN'(0,"Erreur d'accès à la base de données des outils !") ENDIF UNTIL (FOUND%<ARRSIZE%) OR (ERRNO<>0) La date de système suivante est requise : Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 373/550 Fonctions CPL Programme: <Variable Dimension="10" Storage="volatile"> <Name>HdArr</Name> <Type>DBT1Hd_t</Type> </Variable> 7.8 Mise à l'échelle 7.8.1 Généralités SCL Fournit pour le canal actuel (ici : canal dans lequel le programme avec l'ordre SCL est actif) les derniers paramètres programmés des fonctions PLS, SCL, MIR et ROT(...) (coordonnées polaires, facteurs d'échelle et angles de rotation). Comme PLS, SCL, MIR et ROT(...) n'agissent que sur les coordonnées du canal actif, la sélection d'une coordonnées non existante dans le canal actuel génère un message d'erreur. Les valeurs de position sont indiquées dans l'unité de mesure active du canal actuel, c'est-à-dire en "pouces" pour G70 et en "mm" pour G71. L'unité est toujours "Degrés" pour les axes rotatifs et les coordonnées tridimensionnelles rotatives. Syntaxe : SCL(<Sélection>[,<Coordonnée>[,<Mode de sélection>]]) <Sélection> 0: Dernier angle de rotation programmé du plan principal. 1: Dernier pôle programmé d'un axe de canal. 2: Dernier facteur d'échelle programmé d'un axe de canal. <Coordonnée> Index ou nom d'une coordonnée : Un nom est interprété en tant que nom de coordonnée. Uniquement dans le cas où aucun nom de coordonnée correspondant n'existe, il est interprété en tant que nom de canal ou d'axe du système. Un index est interprété selon le <Mode de sélection> indiqué. La programmation d'une coordonnée/d'un axe non configuré(e) entraîne une erreur d'exécution, si la variable optionnelle ERRNO n'est pas programmée. <Mode de sélection> En option : définit, comment un index programmé sous <Coordonnée> est interprété : 0: Index d'axe du système 1: Index de coordonnée (par défaut) Si aucun <Mode de sélection> n'est pro‐ grammé, l'index est interprété en tant qu'index de coordonnée ! Fig.7-26: Syntaxe SCL 374/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Exemples : Inscrit le dernier angle de rotation pro‐ grammé dans la variable W. 10 W=SCL(0) : Inscrit le pôle de la coordonnée avec le 2ème index de coordonnée du canal dans la variable P. 20 P=SCL(1,2) : Inscrit le facteur d'échelle de la coordon‐ née avec le 2ème index de coordonnée du canal dans la variable F. 30 F=SCL(2,2,1) : Inscrit le facteur d'échelle de la coordon‐ née X du canal actif dans la variable D. 40 D=SCL(2,"X") 7.9 Données système 7.9.1 Données système de types simples MCA Transfère le contenu d'un paramètre individuel MACODA. Cette valeur peut en fonction du type de données - être du type "INTEGER", "FLOAT", "DOU‐ BLE" ou "STRING". La variable dans laquelle la valeur transférée doit être sauvegardée doit être du même type ! Les conflits de type entre la valeur transférée et la variable cibe sont détectés lors de l'exécution du programme est acquittés avec un message d'erreur. Syntaxe : MCA(<Bloc>,<Index>[,<Canal>]) <Bloc> Numéro d'un paramètre MACODA. Un paramètre MA‐ CODA peut comprendre plusieurs paramètres indivi‐ duels MACODA (liste des paramètres). Si un numéro non existant est programmé, une erreur d'exécution est générée. <Index> Index du paramètre individuel MACODA, commençant avec "0". Si un numéro d'index non existant est programmé, une erreur d'exécution est générée. <Canal> Numéro du canal. Si aucun numéro n'est programmé, la fonction du canal où le programme CPL est actuelle‐ ment traité fournit le paramètre individuel MACODA. Si un numéro de canal non existant est programmé, une erreur d'exécution est générée. Fig.7-27: Exemple : Ordre MCA Syntaxe MCA Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 375/550 Fonctions CPL Fig.7-28: Ordre MCA NCF Fournit la syntaxe des fonctions CN programmées à la fin du groupe de fonc‐ tions modales ou du groupe de fonctions auxiliaires de la <Fonction CN>. Tous les groupes de fonctions modales de la commande ainsi que les fonctions au‐ xiliaires, qui sont définies dans les groupes de fonctions auxiliaires, peuvent être interrogés. En option, il est possible - réglable par un paramètre - d'interroger également les états modaux du bloc d'interruption au sein d'un sous-programme asyn‐ chrone. Le bloc d'interruption est ● le bloc précédent du bloc cible sélectionné, si on parle de l'avance des blocs ; ● le bloc CN à partir duquel le saut au sous-programme asynchrone a été effectué, si on parle des sous-programmes asynchrones réguliers. La variable dans laquelle le résultat est à enregistrer doit être de type "Tableau dimensionné". Les conflits de type sont détectés au cours de l'exécution du programme et acquittés par un message d'erreur. Syntaxe : NCF (<Fonction NC>) NCF (<Fonction> [, <Mode> ] ) <Fonction CN> Syntaxe d'une fonction CN ou fonction auxiliaire quel‐ conque Si une syntaxe non existante est programmée, une er‐ reur d'exécution est générée. <Mode> 0 : (défaut) La fonction fournit la dernière fonction programmée. 1: La fonction fournit la fonction active dans le bloc d'in‐ terruption (uniquement en combinaison avec l'avance des blocs et les sous-programmes asynchrones). Fig.7-29: Exemples : Syntaxe NCF 10 DIM A$(4) : 20 A$=NCF("G1") : Dimensionner un tableau pour une chaîne de caractères d'une longueur de 4 caractères au maximum. La syntaxe de la dernière fonction CN programmée du groupe contenant "G1" en tant que syntaxe est attribuée à la variable de chaîne de caractères A$. 376/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL La fonction CN interrogée auparavant est programmée à nouveau. N80 [A$] N10 M3 S1234 T2345 123 DIM A$(4) 20 A$=NCF("M3") La fonction CN interrogée auparavant est programmée à nouveau. N30 [A$] 50 PRN#(0,"',A$,' est actif dans le groupe M3") N30 M5 33 A$=NCF("M3") 34 PRN#(0,"',A$,' est actif dans le groupe M3") N70 M30 La syntaxe de broche de l'IndraMotion MTX est librement configu‐ rable et réglé dans les paramètres machine 1040 00101 et suivants. SCS Permet l'accès en lecture aux paramètres d'entraînement SERCOS du bloc de paramètres actif. Syntaxe : SCS(<Sélection d'axe>,<Type ID>,<ID-Nr>[,<VarRésultat>]) <Sélection d'axe> Index d'axe du système ou nom d'axe du système. <TypeID> Expression STRING. "S" : Paramètre S "P" : Paramètre P <NoID> Numéro du paramètre SERCOS. <VarRésultat> Si <VarRésultat> est indiquée, aucune erreur d'exécu‐ tion n'est générée en cas d'erreur d'accès. La valeur de retour suivante est possible : 0: Accès OK 1: Accès actuellement impossible Si aucune <VarRésultat> n'est indiquée, une erreur d'exécution est générée en cas d'erreur d'accès. <VarRésultat> est une variable entière. Fig.7-30: Syntaxe SCS Le contenu du paramètre est fourni sans unité et calibrage. Les paramètres contenant une liste (plusieurs valeurs séparées par des virgules) ne peuvent pas être lus. Dans ces cas, la commande génère un message d'erreur. Si les données d'entraînement se trouvent dans le télégramme d'entraînement SERCOS, elles sont lues à partir de ce dernier (voir le manuel des paramètres Servodyn-D). Dans tous les autres cas, les données d'entraînement sont lues directement dans l'entraînement. Si d'autres applications accèdent aux données d'entraînement, l'accès à ces données n'est pas possible à cet instant. Dans ce cas d'erreur, il est possible Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 377/550 Fonctions CPL de réagir avec le paramètre <VarRésultat> du programme pièce. Un nouvel accès peut fournir la donnée d'entraînement voulue. Un accès permanent aux données d'entraînement peut bloquer l'accès pour d'autres applications ! Accès aux données POSITION% d'entraîne‐ ment ERREUR % Message d'erreur oui Nouvelle valeur réelle de l'axe i 0 aucun non Ancienne position réelle de l'axe i est conservée 1 CANAL DE SERVICE SER‐ COS EST OCCUPÉ Fig.7-31: Accès aux données d'entraînement À l'aide de l'exploitation de la variable entière ERREUR%, il est possible de réagir au cas d'erreur dans le programme pièce. Exemple : 10 POSITION%=SCS(1,"S",51,ERREUR%) La position réelle du 1er axe est attri‐ buée à la variable entière POSITION %. 12 IF ERREUR% = 0 THEN Exploitation des erreurs 13 REM***Position réelle n'a pas pu être lue correctement*** 14 ELSE 15 REM***Position réelle n'a pas pu être lue*** 16 ENDIF SCSL Certains paramètres SERCOS sont disponibles dans l'entraînement en tant que listes pouvant être lues à l'aide de l'ordre "SCSL". Comme la longueur (mémoire requise) d'une liste est inconnue, les éléments de liste lus sont en‐ registrés dans les fichiers ASCII. Ensuite, les données lues peuvent être exploitées à l'aide des ordres de fichier CPL. De par l'ordre SCSL, le fichier indiqué dans l'ordre est crée, dans la mesure où il n'existe pas encore. Le contenu d'un fichier déjà existant est écrasé. Syntaxe : SCSL(<Index d'axe>,<TypeID>,<NoID>,<Nom du fichier>[,<VarRésultat>]) <Index d'axe> Index d'axe du système ou nom d'axe du système. <TypeID> Expression STRING. "S" : Paramètre S "P" : Paramètre P <NoID> Numéro du paramètre SERCOS. 378/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL <Nom du fichier> Nom du fichier ASCII dans lequel la liste lue doit être enregistrée. <VarRésultat> Variable entière. Si <VarRésultat> est indiquée, aucune erreur d'exécu‐ tion n'est générée en cas d'erreur d'accès. La valeur de retour suivante est possible : 0: Accès OK 1: L'accès à SERCOS est actuellement impossible 2: Accès au fichier erroné. Si aucune <VarRésultat> n'est indiquée, une erreur d'exécution est générée en cas d'erreur d'accès. Fig.7-32: Syntaxe SCSL L'accès aux données d'entraînement peut être impossible à certains moments, quand d'autres applications accèdent aux données d'entraînement. Le para‐ mètre <VarRésultat> permet de réagir à ce cas d'erreur dans le programme pièce. Un nouvel accès peut fournir la donnée d'entraînement voulue. Un accès permanent aux données d'entraînement peut bloquer l'accès pour d'autres applications. SD Lit d'une collection de données système de l'IndraMotion MTX en format en‐ tier. Syntaxe : SD(<Groupe>[,<Index1>[,<Index2>[,<Index3>]]]) La fonction SD fournit les valeurs entières. Groupe Index1 Index2 Index3 Concerne la fonction Description Position d'OVERRIDE active pour le potentiomè‐ tre concerné en pourcent : 2 1 ● Avance 2 2 ● Avance rapide 2 3 ● Broche (≙SD(202,1) ; SD (2,3) = 0, si aucune broche n'est para‐ métrée) 2 4 ● 2. Broche (≙SD(202,2) ; (SD(2,4) = 0, si aucune 2ème broche n'est paramétrée) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 379/550 Fonctions CPL Groupe Index1 Index2 Index3 Concerne la fonction Description Vitesses actives, arrondies au chiffre entier : 5 1 1 ● Avance rapide en mm/min ou pouces/min (valeur à 100%) 5 2 1 ● Avance rapide en mm/min ou pouces/min (valeur à 100%) 5 3 1 ● Vitesse de rotation de la broche en tours/ min ; évaluée avec le potentiomètre (≙SD(205,1,1) ; SD(5,3,1) = 0, si aucune broche n'est para‐ métrée) 5 4 1 ● Vitesse de rotation de la 2éme broche en tours/min ; évaluée avec le potentiomètre ; (≙SD(2051,2) ; SD(5,4,1) = 0, si aucune 2ème broche n'est paramétrée) Dernières vitesses programmées : 5 1 2 ● Avance en unités de saisie par minute 5 3 2 ● Vitesse de rotation de la broche en tours/ min ; évaluée avec le potentiomètre (≙SD(205,2,1) ; SD(5,3,2) = 0, si aucune broche n'est para‐ métrée) 5 4 2 ● Vitesse de rotation de la 2éme broche en tours/min ; évaluée avec le potentiomètre ; (≙SD(205,2,2) ; SD(5,4,2) = 0, si aucune 2ème broche n'est paramétrée) 5 3 3 Vitesse de rotation réelle (≙SD(205,3,1)) 5 4 3 Vitesse de rotation réelle de la 2ème broche (¢SD(205,3,2)) 8 9 Fournit le numéro de canal du canal appelant. G75 Palpeur de mesure activé : SD(9) = 0 (G75 non ac‐ tive) Palpeur de mesure désactivé : SD(9) = 1 (G75 active) FsProbe Mesure sur butée fixe effectuée : SD(9) = 0 (FSB non ac‐ tive) Mesure sur butée fixe non encore SD(9) = 1 effectuée : (FSB active) 380/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Groupe Index1 Index2 10 1,2 1,2,3 Index3 Concerne la fonction Description Index 1 : 1 = no du dernier axe de perçage programmé 2 = no de l'axe de perçage actif Index 2 : 1 = axe sur lequel agit la correction L1 2 = axe sur lequel agit la correction L2 3 = axe sur lequel agit la correction L3 SD(10, i ) = SD(10, i ,3) 11 12 1 1 Axe principal du dernier changement de plan pro‐ grammé 2 1 Axe secondaire du dernier changement de plan programmé 1 2 Axe principal du plan actif 2 2 Axe secondaire du plan actif 1 Sens de rotation (≙SD(212,1,1) : actif de la broche SD(12,1) = 3 rotation à droite de la broche SD(12,1) = 4 rotation à gauche de la broche SD(12,1) = 0 arrêt de la broche SD(12,1) = -1 broche non paramétrée SD(12,1) = 19 orientation de la broche 2 Dernier sens de rotation programmé de la broche (≙SD(212,2,1) ; fonctions comme pour "Sens de rotation actif de la broche") Une inversion active du sens de rotation via un signal d'interface n'est pas prise en compte ! 3 Sens de rotation actif de la broche (2ème broche) (≙SD(212,1,2) ; fonctions comme pour "Sens de rotation actif de la broche") 4 Dernier sens de rotation programmé pour la bro‐ che (2ème broche) (≙SD(212,2,2) ; fonctions comme pour "Sens de rotation actif de la broche") 13 Modes de fonctionnement lors du traitement au moment de l'interprétation : SD(13) = 0 Bloc unique, Pas unique SD(13) = 1 Bloc suivant SD(13) = 2 Bloc de programme SD(13) = 11 Avance de bloc avec bloc suivant (bloc sélectionné non encore interprété). 14 Numéro de la langue nationale active (paramètre machine 6010 00010) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 381/550 Fonctions CPL Groupe Index1 Index2 Index3 15 Concerne la fonction Description Essai sans mouvement SD(15) = 0 : non SD(15) = 1 : oui 20 1, 2 Fournit le nombre des axes synchrones du canal appelant. SD(20,1) = Valeur (valeur par défaut) au moment de la préparation de blocs SD(20,2) = Valeur au moment actif 21 1...n* 1, 2 Fournit le nombre des axes synchrones d'un ca‐ nal : SD(21, <1..n> ,1) = Valeur (valeur par défaut) au moment de la préparation de blocs SD(21, <1..n> ,2) = Valeur au moment actif 1...n = Numéro du canal n = Nombre maximum de canaux 22 1...m ou 1, 2 Fournit le numéro d'axe de canal d'un axe du sys‐ tème du canal appelant ou -1 : Désignation de l'axe du canal SD(22, <m>|String ,2) = Valeur au moment actif SD(22, <1..m>|String ,1) = Valeur (valeur par dé‐ faut) au moment de la préparation de blocs 1..m = Numéro d'axe du système ; m = Nombre maximum d'axes du système Chaîne de caractères = Nom de l'axe du système 23 1...m 1, 2 Fournit le numéro d'axe de système d'un axe du canal du canal appelant ou -1 : ou SD(23, <1..m>|String ,1) = Valeur (valeur par dé‐ faut) au moment de la préparation de blocs Désignation de l'axe du canal SD(23, <1..m>|String ,2) = Valeur au moment ac‐ tif 1..m = Numéro d'axe du canal ; m = Nombre maximum d'axes du canal Chaîne de caractères = Nom de l'axe du canal 24 1...m ou Désignation de l'axe du canal 1...n* 1, 2 Fournit le numéro d'axe de système d'un axe du canal ou -1 : SD(24, <1..m>|String ,<1..n>,1) = Valeur (valeur par défaut) au moment de la préparation de blocs SD(24, <1..m>|String ,<1..n>,2) = Valeur au mo‐ ment actif 1...n = Numéro du canal n = Nombre maximum de canaux 1..m = Numéro d'axe du canal m = Nombre maximum d'axes du canal Chaîne de caractères = Nom de l'axe du canal 382/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Groupe Index1 25 1...m Index2 Index3 Concerne la fonction Fournit le canal d'un axe du système : ou SD(25, <1..m>|String) = Valeur au moment actif Désignation de l'axe du canal 68 1 Description 1..m = Numéro d'axe du système m = Nombre maximum d'axes du système Chaîne de caractères = Nom de l'axe du système 1...8 Trans, ● Somme des derniers décalages program‐ més pour les coordonnées du programme (Trans + ATrans) de l'axe indiqué (index2). ATrans 168 268 2 1...8 ● Somme des décalages actifs pour les co‐ ordonnées du programme (Trans + ATrans) de l'axe indiqué (index2). 1 1...8 ● Valeur du dernier décalage programmé pour les coordonnées du programme (Trans) de l'axe indiqué (index2). 2 1...8 ● Valeur du décalage actif pour les coordon‐ nées du programme (Trans) de l'axe indi‐ qué (index2). 1 1...8 ● Valeur du dernier décalage additif program‐ mé pour les coordonnées du programme (ATrans) de l'axe indiqué (index2). 2 1...8 ● Valeur du décalage actif additif pour les co‐ ordonnées du programme (ATrans) de l'axe indiqué (index2). 77 Fournit le point d'approche actuellement réglé d'un sous-programme asynchrone : 1: point de départ 2: point d'arrivée 3: point d'interruption 131 1 2 TangTool Numéro d'axe de canal de l'axe de rotation Symétrie Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 383/550 Fonctions CPL Groupe Index1 Index2 200 1 1...10 2 1...10 Index3 Concerne la fonction Description Zone de tra‐ ● vail, ● zone morte Nombre de zones actives dans le canal. Indique si la zone i (index2) est active dans le canal : 0: zone i (index2) n'est pas active dans le canal 3 1...10 ● Type de la zone i : 0: type non défini dans le canal 1: zone morte 2: zone de travail 11 1...10 ● Position du centre de la zone i (index2) dans le canal en unités de programmation (pour le 1er axe de la zone). 12 1...10 ● Position du centre de la zone i (index2) dans le canal en unités de programmation (pour le 2ème axe de la zone). 21 1...10 ● Extension de la zone i (index2) dans le ca‐ nal en unités de programmation (pour le 1er axe de la zone). 22 1...10 ● Extension de la zone i (index2) dans le ca‐ nal en unités de programmation (pour le 2ème axe de la zone). Broches 202 1...8 205 1 212 1...8 1...8 = numéro de la broche Anciennes fonctions SD toujours vala‐ bles : Valeur de potentiomètre actuelle SD(2,3), SD(2,4) Consigne de vitesse de rotation (y SD(5,3,1), compris le potentiomètre) SD(5,4,1) 2 Dernière consigne de vitesse de SD(5,3,2), rotation programmée SD(5,4,2) 3 Vitesse de rotation réelle SD(5,3,3), SD(5,4,3) 1 Fonction de mouvement active SD(12,1), SD(12,3) 2 222 1...32 Dernière fonction de mouvement SD(12,2), programmée SD(12,4) 1,2 Fournit le numéro de broche de canal pour une broche de système du canal actif ou -1 : SD(222, <"SSPxx>"|<1..32>, 1) Valeur (valeur par défaut) au moment de la préparation de blocs SD(222, <"SSPxx">|<1..32>, 2) Valeur au mo‐ ment actif "SSP01".."SSP32" ou 1..32 = numéro de la bro‐ che du système 384/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Groupe Index1 Index2 223 1...8 1,2 Index3 Concerne la fonction Description Fournit le numéro de broche de système pour une broche de canal du canal actif ou -1 : SD(223, <"Sx">|<1..8>, 1) Valeur (valeur par dé‐ faut) au moment de la préparation de blocs SD(223, <"Sx">|<1..8>, 2) Valeur au moment ac‐ tif "S1".."S8" ou 1..8 = numéro de la broche du canal 230 1...32 1,2 Fournit le numéro d'axe de système pour une broche de système ou -1 : SD(230, "<SSPxx>"|<1..32>) "SSP01".."SSP32" ou 1..32 = numéro de la bro‐ che du système 231 1...8 1,2 Fournit le numéro d'axe de système pour une broche de canal ou -1 : SD(231, <"Sx">|<1..8>) "S1".."S8" ou 1..8 = numéro de la broche du canal 328 1 PrecProg 2 Dernière distance à l'arête programmée de Pre‐ cProg 581 Couplage d'axes 0 Dernière barrière de précision programmée de PrecProg 1...8(m) m : Numéro d'axe de canal du maître dans le ca‐ nal actuel ● Numéro d'axe de canal m, si l'axe m est un axe maître 0: si aucun axe maître n'a été défini 1...8(s) 0 ● Numéro de l'axe maître par rapport auquel l'axe s est un axe esclave 0: si s n'est pas un axe esclave 1 ● Décalage d'axe esclave programmé en uni‐ tés de programmation 0: si s n'est pas un axe esclave 2 ● Facteur de couplage programmé 0: si s n'est pas un axe esclave 3 ● Décalage d'axe maître programmé en uni‐ tés de programmation. 0: si s n'est pas un axe esclave * Numéro d'un Si le canal indiqué n'est pas actif, les axes de ce canal peuvent déjà être canal : attribués, c'est-à-dire qu'ils sont actuellement actifs dans un autre canal. Malgré tout, les axes attribués appartiennent au canal indiqué. Exem‐ ple : L'axe X2 appartient au canal 2 (non actif) et X2 est actuellement déplacé de manière synchrone dans le canal 1. Dans les deux ordres SD "Nombre d'axes synchrones du canal" de SD(21,2,...) et SD(21,1...), l'axe X2 est pris en compte. Fig.7-33: Syntaxe SD Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 385/550 Fonctions CPL Exemples : : A% contient la position active du potentiomètre d'avan‐ ce en pourcent. 40 B% = SD(5,1,1) B% contient la vitesse d'avance active. 30 A% = SD(2,1) : Exemple de programme : SD (interrogation du palpeur de mesure) N4 G75 X120 60 IF SD(9) = 1 THEN N7 (MSG, Palpeur de mesure n'a pas été dévié.) 80 GOTO .ERREUR 90 ELSE 100 XMESS = PPOS(1) 110 ENDIF Dans l'exemple DS (interrogation du palpeur de mesure), l'axe X est déplacé en direction de la position indiquée. Lorsque la position est atteinte et si le palpeur de mesure n'est pas dévié, un message (ligne N7) est généré et un saut vers le label .ERREUR est effectué. Si le palpeur de mesure est dévié, la position actuelle peut être enregistrée dans XMESS par rapport au système de coordonnées du programme. SDR Lit d'une collection de données système de l'IndraMotion MTX en format réel. Le format d'ordre et l'application correspondent à la fonction DS. Syntaxe : Groupe Index1 SDR(<Groupe>[,<Index1>[,<Index2>]]) Index2 Concerne la Description fonction Positions d'axe de tous les axes d'usinage qui ont été calculés pour l'avance de bloc/la rentrée (index1 = numéro de l'axe). 1 1...8 Si aucune avance de bloc n'est programmée, "0" est renvoyé. Lorsqu'un axe non paramétré ou un axe auxiliaire est adressé, une erreur d'exécution est générée. Position d'OVERRIDE active pour le potentiomètre concerné en pourcent : 2 1 ● Avance 3 ● Broche (SD(2,3)=0, si aucune broche n'est paramétrée) ● 2. Broche (SD(2,4)=0, si aucune 2ème broche n'est para‐ métrée) 4 Vitesses actives, arrondies au chiffre entier : 1 5 2 1 1 ● Avance en unités de saisie ; évaluée avec le potentiomètre (en cas de OvrEna, SD fournit la valeur 100%) 1 ● 2 Dernières vitesses programmées : ● Avance rapide en mm/min ou pouces/min (valeur à 100%) Avance en unités de saisie 386/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Groupe Index1 Index2 Concerne la Description fonction Valeur de potentiomètre actuelle 202 1...8 (anciennes fonctions SDR toujours valables : SDR(2,3), SDR(2,4) 1...8 = numéro de la broche 205 1 1...8 205 2 1...8 205 3 1...8 219 2 68 1 68 2 168 1 168 2 268 1 268 2 Consigne de vitesse de rotation (y compris le potentiomètre) Broches Dernière consigne de vitesse de rotation programmée Vitesse de rotation réelle 1...8 Dernière position de broche programmée à M19 (si M19 n'est pas programmé, 0 est retourné) 1...8 ● Somme des derniers décalages programmés pour les co‐ ordonnées du programme (Trans + ATrans) de l'axe indi‐ qué (index2). 1...8 ● Somme des décalages actifs pour les coordonnées du pro‐ gramme (Trans + ATrans) de l'axe indiqué (index2). ● Valeur du dernier décalage programmé pour les coordon‐ nées du programme (Trans) de l'axe indiqué (index1). ● Valeur du décalage actif pour les coordonnées du pro‐ gramme (Trans) de l'axe indiqué (index2). 1...8 ● Valeur du dernier décalage additif programmé pour les co‐ ordonnées du programme (ATrans) de l'axe indiqué (in‐ dex1). 1...8 ● Valeur du décalage actif additif pour les coordonnées du programme (ATrans) de l'axe indiqué (index2). 1...8 Trans, 1...8 ATrans Dans le sous-programme asynchrone : 77 Nom de la co‐ ordonnée de machine 0 ● Fournit le point d'approche actuel selon ASPRTP/RE‐ POSTP d'une coordonnée de machine dans le bloc d'in‐ terruption. 1 ● Fournit le point de départ d'une coordonnée de machine dans le bloc d'interruption. 2 ● Fournit le point d'arrivée d'une coordonnée de machine dans le bloc d'interruption. 3 ● Fournit le point d'interruption d'une coordonnée de machi‐ ne dans le bloc d'interruption. La position fournie permet, au sein d'un sous-programme asyn‐ chrone, de repositionner les coordonnées à proximité du point d'approche voulu à l'aide de "G76". 131 3 131 4 Guidage tan‐ ● gentiel de ● l'outil 328 328 1 328 2 PrecProg Fournit un angle d'attaque en degrés (index2). Fournit l'angle de bloc intermédiaire en degrés (index2). ● Dernière barrière de précision programmée de PrecProg. ● Dernière barrière de précision programmée de PrecProg. ● Dernière distance à l'arête programmée de PrecProg. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 387/550 Fonctions CPL Groupe Index1 Index2 Concerne la Description fonction m : Numéro d'axe de canal du maître dans le canal actuel. s : Numéro d'axe de canal de l'esclave dans le canal actuel. 581 0 1...8(m) ● 0: si aucun axe maître n'a été défini 0 581 ● 1...8(s) Couplage d'axes 1 581 Numéro d'axe de canal m, si l'axe m est un axe maître Numéro de l'axe maître par rapport auquel l'axe "s" est un axe esclave 0: si "s" n'est pas un axe esclave ● 1...8(s) Décalage d'axe esclave programmé en unités de program‐ mation 0: si "s" n'est pas un axe esclave 581 1...8(s) 2 ● 0: si "s" n'est pas un axe esclave 3 581 Facteur de couplage programmé ● 1...8(s) Décalage d'axe maître programmé en unités de program‐ mation. 0: si "s" n'est pas un axe esclave Fig.7-34: 7.9.2 Syntaxe SDR Données système de types structurés Généralités Les données système de types structurés (abréviation : SD) constituent une catégorie de données dans le système global ayant les caractéristiques sui‐ vantes : ● Les données système individuelles sont enregistrées soit dans la mémoire volatile, soit dans la mémoire non-volatile (données système permanen‐ tes). ● Le nombre, la taille et la structure est définissable librement dans le cadre de la mémoire existante. Les données système permanentes sont initialisées une fois ; les données système volatiles sont initialisées lors de toute montée en régime. Les valeurs peuvent être enregistrées dans un fichier d'initialisation. Si rien n'y est prédéfini, elles sont mises à "0". Les variables structurées "SV" peuvent être remplacées par les données sys‐ tème (SD), mais restent conservées pour des raisons de compatibilité. De plus amples informations relatives à l'utilisation et la définition des données système sont données dans le manuel "Description des fonctions". Accès aux données système L'accès à CPL s'effectue à l'aide d'un mot clé SD. Contrairement à l'adressage XPath (accès standardisé aux données structurées), l'opérateur point "." est utilisé à la place du séparateur "/". Les tableaux sont adressés au moyen de [ ], par ex. : Xpath : /MyArrVar[2,3,4]/Sous-composante CPL : SD.MyArrVar[2,3,4].Sous-composante Exemple : 10 SD.MyChanVar=DBSEA("/dbt1/Rec",-1,-1,"Key1=1",I%) En cas de données système spécifiques au canal, l'index du canal peut être omis, par ex. : 388/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL SD.MyArrVar[,3,4] ou SD.MyChanVar sans [ ] en cas d'un canal SD unidimensionnel. Dans les crochets, on peut librement programmer des expressions CPL four‐ nissant une valeur entière. Les données système ayant les mêmes types de structures peuvent être attri‐ buées réciproquement. Pour les types de base, les règles d'attribution suivantes sont valables : Nom Longueur en octets Description Type IndraLogic CPL Chaîne de caractè‐ char [ ] res (format UTF-8) STRING() STRING IsoLatin1String longueur maximale Chaîne de caractè‐ char [ ] +1 res (format Latin1) STRING() STRING Octet_t 1 Entier de 8 bits si‐ gné SINT INT Short_t 2 Entier de 16 bits si‐ court gné INT INT Int_t 4 Entier de 32 bits si‐ int gné DINT INT UnsignedByte_t 1 Entier de 8 bits non unsigned char signé USINT INT UnsignedShort_t 2 Entier de 16 bits non signé unsignedshort UINT INT UnsignedInt_t 4 Entier de 32 bits non signé unsigned int UDINT INT Float_t 4 Valeur réelle de 32 float bits REAL REAL Double_t 8 Valeur réelle de 64 double bits LREAL DOUBLE Boolean_t 1 vrai, faux, 1, 0 BOOL BOOLEAN Chaîne de caractè‐ 2 * longueur maxi‐ res male+ 1 Fig.7-35: Type C char char Règles d'attribution pour les types de base SDSAVE L'ordre CPL SDSAVE sert à sauvegarder les données système dans un fichier. Il est possible d'indiquer plusieurs éléments racine (adressage xPath) à sau‐ vegarder. SDSAVE SDSAVE(<Nom du fichier>,<Élément racine_1>[,...,<Élément racine_n>]) <Nom du fichier> Chemin de répertoire et nom du fichier cible. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 389/550 Fonctions CPL <Élément racine> Élément racine du groupe de données à sauvegarder. ERRNO Variable CPL. Si la variable CPL ERRNO est indiquée à un endroit quelconque dans la liste de paramètres, aucune erreur d'exécution n'est générée. L'erreur est retournée par une valeur correspondante de la variable. Les valeurs de retour suivantes sont possibles : 0: Accès OK -1: Erreur de paramètre. -10: Fichier cible, y compris chemin, trop long. -13: Impossible d'écrire les données. -20: Root-Tag erroné. -21: Impossible d'accéder au fichier. -35: Erreur interne lors de l'accès aux données systè‐ me. Si la variable CPL ERRNO n'est pas indiquée, une er‐ reur d'exécution est générée en cas d'une erreur d'ac‐ cès. Fig.7-36: Exemple : Syntaxe SDSAVE SDSAVE("cplsave.xml","SysAPrg",ERRNO) La date du système complète"SysAPrg" est sauvegar‐ dée dans le répertoire actuel dans le fichier "cplsa‐ ve.xml". SDLOAD L'ordre CPL SDLOAD sert à extraire les données système à partir d'un fichier. Il est possible d'indiquer plusieurs éléments racine (adressage xPath) à sau‐ vegarder. 390/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL SDLOAD SDLOAD(<Nom du fichier>,<Élément de racine_1>[,...,<Élément de racine_n>]) <Nom du fichier> Chemin de répertoire et nom du fichier cible. <Élément racine> Élément racine du groupe de données à lire. ERRNO Variable CPL. Si la variable CPL ERRNO est indiquée à un endroit quelconque dans la liste de paramètres, aucune erreur d'exécution n'est générée. L'erreur est retournée par une valeur correspondante de la variable. Les valeurs de retour suivantes sont possibles : 0: Accès OK -1: Erreur de paramètre. -7: Impossible de lire les données. -9: Impossible d'accéder au fichier source. -10: Fichier cible, y compris chemin, trop long. -20: Root-Tag erroné. -21: Impossible d'accéder au fichier. -35: Erreur interne lors de l'accès aux données systè‐ me. Si la variable CPL ERRNO n'est pas indiquée, une er‐ reur d'exécution est générée en cas d'une erreur d'ac‐ cès. Fig.7-37: Exemple : Syntaxe SDLOAD SDLOAD("/usrfep/SDDatUsr.xml","DgnUser[1]",ERRNO) La date du système spécifique au client"DgnUser[1]" est importée du fichier "SDDatMTB.xml"im "userfep" (FE‐ PROM d'utilisateur). 7.10 Adresse d'axe variable 7.10.1 Généralités AXP Cette fonction permet d'écrire les programmes pièce et les programmes indé‐ pendamment du plan. Syntaxe AXP(<Numéro d'axe>,<Information sur la course>[,<Type d'axe>]) L'application de la fonction s'effectue dans un bloc CN. Elle doit être mise en crochets "[ ]" et programmée à la place des valeurs d'adresse. <Numéro d'axe> Index de coordonnée de la pièce à usiner ou axe du système Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 391/550 Fonctions CPL <Information sur la course> Variable ou valeur de l'information sur la course. <Type d'axe> En option : Définit comment un index programmé sous <Numéro d'axe> est interprété : 0: Index d'axe du système 1: Index de coordonnée de la pièce à usiner du canal dans lequel le programme est exécuté actuellement. Sans programmation explicite, on définit <Type d'axe> = 1. Fig.7-38: Exemple : Syntaxe AXP Sous-programme : 10 A%=P1% : B%=P2% Transférer le numéro d'axe de P1% et P2% à A% et B%. 20 C=P3:D=P4:RA=P5 Transférer les valeurs de consigne pour G2. 30 E=0 Constante pour pôle à G20. N40 G20 [AXP(A%,E)][AXP(B%,E)] Changement de plan avec G20 ; pôle sur 0,0. N50 G2 [AXP(A%,C)][AXP(B%,D)] Programmation au rayon avec G2. R[RA]] F1000 Définition du plan via A% et B%. Ensuite, changement de plan via G20. À la fin, les axes réalisent un congé avec F1000 déterminé par les variables C et D (point d'arrivée) et RA (rayon). 7.11 Interface API 7.11.1 Généralités BITIF Cette fonction permet l'accès à l'interface numérique entre la CN et l'API : Syntaxe : ● Toutes les entrées et sorties peuvent être lues. ● Les sorties client CPL Ch_Cpl01...16 dans l'interface du canal peuvent également être écrites. BITIF(<SignalBit>[,<Index>[,<Unité IF>]]) avec 392/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL <SignalBit> Décalage de bit ou adresse symbolique. Décalage de bit : 0...31 pour l'interface globale 0...111 pour l'interface du canal 0...95 pour l'interface de l'axe 0...95 pour l'interface de la broche 0...7 pour l'interface à grande vitesse Pour les adresses symboliques, voir le manuel "Inter‐ face API". <Index> Index de l'axe, de la broche ou du canal. Si aucun index n'est programmé, l'élément suivant est utilisé pour l'interrogation : <Unité IF> ● canal actif pour l'interface du canal, ● axe 1 pour l'interface de l'axe, ● broche 1 pour l'interface de la broche. 0 ou QCH : signaux de sortie API, spécifiques au canal 1 ou QAX : signaux de sortie API, spécifiques à l'axe 2 ou QSP : signaux de sortie API, spécifiques à la bro‐ che 3 ou ICH : signaux d'entrée API, spécifiques au canal (y compris les sorties client CPL de la CN) 4 ou IAX : signaux d'entrée API, spécifiques à l'axe 5 ou ISP : signaux d'entrée API, spécifiques à la broche 6 ou QGEN : signaux de sortie API, globaux 7 ou IGEN : signaux d'entrée API, globaux 8 ou QHS : signaux de sortie API, grande vitesse 9 ou IHS : signaux d'entrée API, grande vitesse Fig.7-39: Exemples : Syntaxe BITIF I?=BITIF("QGEN_RESET") Lecture du signal global de sortie "Remise à zéro du système". I?=BITIF("ICH_RESET",1) Lecture du signal d'entrée du canal "Canal re‐ mis à zéro" pour canal 1. I?=BITIF(0,1,"IAX") Lecture du signal d'entrée de l'axe "Point de référence connu" pour axe 1 I?=BITIF(88,2,5) Lecture du signal d'entrée de la broche "Erreur - classe d'état 1" pour broche 2. BITIF("ICH_CPL05")=1 Écriture de la sortie client CPL 5 avec la valeur 1. BITIF(50,1,3)=TRUE BITIF("ICH_CPL02")=FALSE PLC Cette fonction permet l'accès aux opérandes de l'API. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 393/550 Fonctions CPL Syntaxe : PLC(<Type>,<Param. vide>,<Adresse>,<Taille>) avec <Type> 1: entrée (E) 2: sortie (S) 3: marqueur (M) L'accès en lecture est permis pour tous les types. L'accès en écriture au marqueur est permis, si MP 2060 00200 est ajusté à la valeur 5 (= IndraLogic). <Param. vide> (non occupé) <Adresse> Adresse d'octet pertinente dès le début de la zone. La commande vérifie le paramètre conformément à l'API actif. <Taille> Taille du type de données : 1: octet 2: mot 4: mot double Fig.7-40: Exemple : Syntaxe PLC : Lire 30 REM 2 octets à partir de l'entrée 10 40 I% = PLC(1,,10,2) : 7.12 Saisie du temps 7.12.1 Généralités CLOCK Exemple : Lit le temps de système interne de la commande en millisecondes. : 20 WAIT 30 TEMPS DE DÉMARRAGE% = CLOCK N4 G1 X50 Y70 40 WAIT 50 TEMPS FINAL%=CLOCK : DIFF%=TEMPS FINAL%-TEMPS DE DÉMARRAGE% : Avant et après l'exécution du bloc N4, le compteur actuel de la variable "TEMPS DE DÉMARRAGE%" ou "TEMPS FINAL%" est attribué. La différence des con‐ tenus des deux variables sert à déterminer le temps d'exécution du bloc de N4 en millisecondes. Veillez à ce que l'ordre WAIT soit absolument nécessaire pour cela ! DATE Fournit la valeur actuelle pour la date. 394/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Exemple : : 30 A$ = DATE La variable STRING A$ est attribuée à la date sous la forme "JJ.MM". : TIME Fournit la valeur actuelle pour l'heure. Exemple : : 40 B$ = TIME La variable STRING B$ est attribuée à l'heure sous la forme "HH.MM.SS". : Si la fonction DATE/TIME est utilisée plusieurs fois dans un pro‐ gramme, les variables de résultat correspondantes doivent être dimensionnées de manière correspondante. Sinon, la dernière va‐ leur lue de la fonction DATE/TIME est attribuée à toutes les varia‐ bles non dimensionnées contenant le résultat d'une attribution DATE/TIME. 7.13 Erreurs et catégories d'erreur 7.13.1 Généralités GETERR Cette fonction appelle les erreurs actuelles dans un programme CPL. Ceci comprend les éléments, le code erreur actuel, le no. du canal d'erreur et la catégorie d'erreur correspondante. Toute erreur qui se produit est enregistrée - avec ses éléments - dans un ta‐ bleau. Le nombre max. des erreurs que le tableau peut inclure est limité au moyen du dimensionnement (DIM) du paramètre <Code erreur>. La fonction GETERR fournit les valeurs de retour suivantes : Syntaxe : ● -1: La fonction n'a pas pu être effectuée. ● ≥0: Nombre d'erreurs actuelles dans le <Canal>. GETERR(<Canal>,[<Catégorie>],<Code erreur>[,<Nombre>]) <Canal> No. de canal du canal interrogé. -1: Tous les canaux > 0: No. du canal Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 395/550 Fonctions CPL <Catégorie> 0: Tous les avertissements et toutes les erreurs (défaut) 1: Erreurs mineures du système 2: Erreur de réglage ou d'entraînement 3: Erreur d'interpolation 4: Erreur du matériel 5: Erreur ICL 6: Erreur de programme pièce 7: Avertissement quant à la durrée d'exécution 8: Messages AEM : Erreurs 9: Messages AEM : Avertissements 10: Messages AEM : Remarques <Code erreur> Variable de résultat : Tableau entier bidimensionnel avec 3 éléments au mi‐ nimum dans la deuxième dimension (DIM <Code er‐ reur>% (x,3)), valeur de défaut : 0. La fonction fournit les codes erreur actuels du <Canal> dans l'ordre chronologique descendant. Signifcation des 3 éléments de la 2ème dimension : ● <Code erreur>(x,1) : code erreur ● <Code erreur>(x,2) : canal d'erreur (-1 = multicanaux) ● <Code erreur>(x,3) : catégorie d'erreur (si déclaré à l'aide de l'ordre DIM) 0 = catégorie inconnue autres valeurs telles que <Catégorie> Exemple : DIM ERRNO% (100, 3). Fig.7-41: Syntaxe 1 GETERR Seul le nom de la variable, sans dimension ou index, doit être indi‐ qué ! <Nombre> Variable entière (valeur de défaut : 1 ) définit le nombre des erreurs à lire. 1: Valeur de défaut > 0: La validité des valeurs de paramétrage n'est pas con‐ trôlée, autrement dit, si le nombre des données à lire est supérieur à la dimension du tableau, aucune erreur du programme pièce n'est générée. Exemple : <Nombre> =120, mais DIM ERRNO% (100, 3). Dans ce cas, 20 erreurs ne sont pas lues. Fig.7-42: Exemple : Syntaxe 2 GETERR Interroger la dernière erreur du programme pièce dans le canal 2 396/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL 10 DIM ERRN=%(5,3) : REM Tableau entier avec 5 éléments 20 REM Interroger la dernière erreur du programme pièce dans le canal 2 30 CHAN%=2:CATEGORY%=6 40 ERG%=GETERR(CHAN%,CATEGORY%,ERRNO%,1) : Exemple : Exploitation du résultat pour 5 éléments de tableau. 10 DIM ERRNO%(5,3):REM Tableau entier avec 5 éléments 20 CHAN%=2 : CATEGORY%=0 Interroger 25 REM en canal 2 30 ERG%= GETERR(CHAN%, CATEGORY%, ERRNO%, 5) 40 FOR I%= 1 TO ERG% 50 IF ERRNO%(I%,3)=6 THEN 60 PRN#(0, "Erreur du programme pièce : ",ERRNO%(I%,1)) 70 ENDIF 80 NEXT I% Fig.7-43: Exemple Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 397/550 Fonctions CPL Le résultat indiqué dans la fenêtre MSG sont les erreurs du programme pièce 1938 et 1971. La variable Erg% contient la valeur 2. La fonction GETERR permet, entre autres, de saisir l'apparition chronologique d'une ou plusieurs erreur(s) afin de trouver la cause actuelle de l'erreur. 7.14 Couplage NCS 7.14.1 Généralités Les fonctions pour le couplage NCS permettent d'accéder via CPL aux services de processus et de données des interfaces internes NCS. 7.14.2 Valeurs de retour d'erreur possibles pour les fonctions Exemple : Tous les appels d'une fonction fournissent une valeur de retour pour des fins du contrôle et du traitement des erreurs. Cette valeur peut être allouée à une variable entière ou à une variable réelle. ERR_VAR% = MCOPS(...) ERR_VAR% = MCODS(...) ATTENTION Possibilité de réactions erronées du programme ! Si les fonctions ap‐ pelées renvoient un code erreur, cela signifie que les actions éventuel‐ lement pertinentes pour le déroulement du programme n'ont pas été effectuées ou n'ont été effectuées que partiellement. Pour cette raison, nous recommandons vivement de vérifier de manière tech‐ nique, après un appel de fonctions (p.ex. via CASE), si la fonction a pu être effectuée sans erreurs. Le comportement ultérieur du programme dépend alors également du type et de la sévérité de l'erreur survenue. Les valeurs de retour suivantes sont définis : 0: 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: Aucune erreur s'est produite. Le canal indiqué n'existe pas. La fonction ne peut pas être effectuée, car le canal indiqué est actuellement occupé (l'état actuel ne permet pas l'action). La remise à zéro commencée dans le canal indiqué n'est pas encore finie. Le nom de programme indiqué est trop long (actuellement non utilisé). La fonction requiert les points de références. Le programme indiqué n'existe pas ou ne peut pas être exé‐ cuté. La définition de blocs CN bufférisée étant activée, l'écriture dans la mémoire tampon a été interrompue. Une deuxième instance a essayé en même temps d'écrire dans la mémoire tampon. La fonction ne peut pas être effectuée dans le mode de fonc‐ tionnement actuel. Le canal ne peut pas être démarré, car son état n'est pas OPÉRATIONNEL. La fonction ne peut pas être effectuée, car aucun programme n'est sélectionné. Le programme indiqué ne peut pas être sélectionné, car l'état du canal ne le permet pas (p.ex. état du traitement des blocs et de l'interpolateur est "EN COURS"). actuellement non utilisé 398/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 100: 101: 102: 103: Le mode de fonctionnement ne peut pas être changé, car l'état du canal ne le permet pas. Le cible de "Chercher le bloc" n'a pas été trouvé. "Chercher le bloc" n'est pas possible, car l'état du canal est OPÉRATIONNEL, mais le traitement du programme principal a déjà été lancé (p.ex. programme est sur M0). Quant à la définition des décalages d'origines externes, le nombre d'axes est trop large. Quant à la définition des décalages d'origines externes, le nombre des groupes NPV d'axes est trop large. La syntaxe définie est inconnue. Index inadmissible pour la définition d'une correction externe de l'outil. Le nombre des corrections pour la définition d'une correction externe de l'outil est trop large (éventuellement en combinai‐ son avec l'index de correction). Format inadmissible pour la définition d'une correction externe de l'outil. Orientation de l'arête de coupe inadmissible pour la définition d'une correction externe de l'outil. Groupe de correction inadmissible. L'axe contacté n'existe pas. Quant à une définition de bloc CN avec démarrage automati‐ que, une erreur d'exécution a été détectée, p.ex. une erreur de la syntaxe. Lors d'une définition de bloc CN bufférisée, la capacité de la mémoire tampon a été dépassée. La valeur prédéfinie pour le filtre de coordonnées n'est pas correcte. Le numéro Magic du télégramme est faux. La communication NCS est perturbée. La fonction indiquée n'est pas disponible dans cette version du logiciel. Une erreur interne s'est produite (actuellement non utilisé). Si le programme appelant contient également des blocs CN, la pré‐ paration des blocs est en règle générale en avance du traitement de la machine. Si, au moment de la préparation des blocs, un ser‐ vice de processus est appelé via la fonction MCOPS ou MCODS ou si un état de machine est interrogé, les conditions préalables requises pour cela sont éventuellement pas encore remplies. Ce problème ne concerne que les fonctions accédant justement au canal où elles-mêmes sont effectuées. Dans ce cas, utiliser l'ordre "WAIT" dans la ligne avant l'appel de la fonction. Ainsi, la préparation des blocs est arrêtée jusqu'à ce que tous les blocs situés avant "WAIT" soient vraiment traités. 7.14.3 Fonctions disponibles MCODS Appelle via CPL les services de données Motion Control de la NCS. Cela per‐ met d'extraire les états et les données de la CN. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 399/550 Fonctions CPL Toutes les valeurs extraites se réfèrent au moment où le bloc CPL est procédé par le traitement des blocs. Si le programme appelant contient également des blocs CN, la pré‐ paration des blocs est en règle générale en avance du traitement de la machine. Si le déroulement du programme est affecté par les fonctions déterminant les données machine actuelles ou les états de la machine actuels, vous devez éliminer la "Temporisation" entre la préparation des blocs et l'état actuel de la machine. Ceci ne con‐ cerne pourtant que les fonctions accédant justement au canal où elles-mêmes sont effectuées. Dans ce cas, utiliser l'ordre "WAIT" dans la ligne avant l'appel de la fonction. Ainsi, la préparation des blocs est arrêtée jusqu'à ce que tous les blocs situés avant "WAIT" soient vraiment traités. Les fonctions fournissent une valeur de retour (voir chap. 7.14.2 "Valeurs de retour d'erreur possibles pour les fonctions" à la page 397). Syntaxe générale : MCODS(<Type>,<Canal>,<Version>,<Mémoire tampon>,<Taille>,<Numéro de l'axe>,<Numéro d'identification>[,<P1>]) <Type> Expression INTEGER. Indique la fonction à exécuter. Le tableau ci-dessous donne une liste des fonctions disponibles. <Canal> Expression INTEGER. Indique le canal sur lequel la fonction doit agir. <Version> Variable entière ou réelle initialisée (non constante !). Si le contenu de la variable lors de l'appel de la fonction = 0, la fonction déterminée par le <Type> enregistre im‐ médiatement les données demandées dans la <Mé‐ moire tampon>. En outre, la fonction en <Version> fournit une identifi‐ cation de la version des données fournies. Si cette identification de version est toujours contenue dans la variable lors du prochain appel de la fonction, la fonction n'écrit pas immédiatement les données requises, mais seulement après la prochaine modification des données dans la <Mémoire tampon>. De cette manière, une boucle de programme peut con‐ tinuer jusqu'à ce qu'un canal ait atteint un certain état. Ici, vous devez intégrer une condition de dépassement de temps (p.ex. compteur ou laps de temps écoulé) dans cette boucle afin d'éviter les boucles infinies ! <Mémoire tampon> Dans la <Mémoire tampon>, la fonction retourne les va‐ leurs de données demandées. En fonction du type de données, la <Mémoire tampon> doit être un(e) : ● variable simple du type "INTEGER", "REAL", "DOUBLE ;" Fig.7-44: ● variable de tableau du type "INTEGER", "REAL", "DOUBLE" ; ● variable STRING (tableau 1-dimensionnel). Syntaxe 1 MCODS 400/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL En cas des tableaux ou des variables STRING, seul le nom de la variable, sans dimension ou index, doit être indiqué ! <Taille> Expression INTEGER. Définit la dimension de la <Mémoire tampon>. Si la <Mémoire tampon> n'est pas une variable de ta‐ bleau, mais une variable simple du type "INTEGER", "REAL" ou "DOUBLE", paramétrer la valeur de 1 pour <Taille>. <Numéro de l'axe> Expression INTEGER. Indique le numéro d'axe d'un axe du système. <Numéro d'identification> Fig.7-45: Expression INTEGER. Fournit la valeur d'un <Numéro d'identification> à partir du télégramme d'axe cyclique pour tous les axes. Syntaxe 2 MCODS La taille d'une variable de tableau utilisée doit auparavant être dé‐ finie via l'ordre DIM et ne doit pas être dépassée dans le paramètre <Taille> ! <P1> Fig.7-46: Aperçu de la fonction MCODS(...) Paramètre optionnel dépendant du <Type>. Syntaxe 3 MCODS Positions Consigne de position de l'axe voir MCODS(1..) Consigne de position de l'axe voir MCODS(2..) Position réelle de l'axe voir MCODS(35..) Valeurs rélles de l'axe (système de coordonnées de la ma‐ voir MCODS(38..) chine) Poursuite voir MCODS(4..) Valeur programme de l'axe (système de coordonnées du programme) voir MCODS(37..) Positions d'arrivée programmées, y compris les décalages voir MCODS(16..) Positions d'arrivée programmées, sans décalages voir MCODS(23..) Coordonnées d'axe dans l'ACS1 voir MCODS(73..) Coordonnées d'axe dans l'ACS0 voir MCODS(109..) Course restante dans le système de coordonnées de la piè‐ voir MCODS(83..) ce à usiner (WCS) Course restante dans le système de coordonnées de l'axe voir MCODS(85..) (ACS1) Vitesse et vitesse de rotation Avance sur trajectoire voir MCODS(3..) Avance programmée sur trajectoire voir MCODS(24..) Vitesses de déplacement par mode JOG voir MCODS(27..) Consigne de vitesse de rotation de la broche/vitesse de coupe voir MCODS(5..) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 401/550 Fonctions CPL Vitesse réelle de la broche voir MCODS(36..) Vitesse maximale de la broche voir MCODS(19..) Vitesse minimale de la broche voir MCODS(20..) Vitesses programmées de la broche voir MCODS(25..) États État "InPos" voir MCODS(6..) État "Mode test" voir MCODS(29..) État "Point de référence approché" voir MCODS(26..) État "Temporisation active" voir MCODS(39..) État "Fonction auxiliaire avec acquittement obligatoire acti‐ voir MCODS(40..) ve" État "Validation d'enregistrement" voir MCODS(41..) État "Instruction de déplacement" voir MCODS(47..) État "Blocage d'avance" voir MCODS(49..) État SAV et IPO voir MCODS(32..) Potentiomètre Valeur du potentiomètre d'avance voir MCODS(7..) Valeur des potentiomètres de la broche voir MCODS(8..) Valeur des potentiomètres de l'axe voir MCODS(50..) Corrections Numéro de la correction de longueur active voir MCODS(9..) Correction active de la longueur voir MCODS(10..) Numéro actif de la correction du rayon de l'outil voir MCODS(11..) Correction active au rayon de l'outil voir MCODS(12..) Nom du tableau de correction d'outil actif voir MCODS(13..) Nom du tableau NPV d'axe actif voir MCODS(14..) Valeurs NPV d'axe actives voir MCODS(15..) Valeurs actives de la correction externe de l'outil voir MCODS(51..) Valeurs NPV d'axe externes actives voir MCODS(52..) Correcteur d'outil universel actif voir MCODS(54..) Positionnement du jeu de données actif voir MCODS(112..) Chemin et nom du tableau de positionnement actif voir MCODS(113..) Correction de position de la pièce à usiner voir MCODS(114..) Somme des positionnements voir MCODS(115..) Modes de fonctionnement Mode de fonctionnement du canal voir MCODS(31..) Mode de fonctionnement de l'axe voir MCODS(48..) Structure du système 402/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Nombre d'axes d'avance, d'axes auxiliaires, de broches ; types de mouvement, types d'entraînement voir MCODS(34..) Nombre de canaux voir MCODS(44..) Nombre d'axes voir MCODS(45..) Noms d'axe voir MCODS(33..) Noms actifs des axes du canal voir MCODS(59..) Noms des axes du canal (réglage par défaut) voir MCODS(60..) Attribution axe - canal voir MCODS(43..) Attribution de défaut axe - canal voir MCODS(58..) Numéro d'identification issu du télégramme d'axe cyclique voir MCODS(62..) Noms de coordonnées voir MCODS(78..) Nombre de coordonnées voir MCODS(82..) Jeu de données actuel - décalage d'origine voir MCODS(99..) Somme actuelle - décalage d'origine voir MCODS(100..) Noms de coordonnées de la machine voir MCODS(106..) Nombre de coordonnées de la machine voir MCODS(107..) Unités de mesure Unités de mesure des axes (réglage par défaut) voir MCODS(61..) Unité de mesure des axes voir MCODS(53..) Type de programmation (pouces/métrique) voir MCODS(18..) Programmation au diamètre voir MCODS(91..) Fonctions auxiliaires Numéros des groupes de fonctions auxiliaires voir MCODS(94..) Syntaxe active des groupes de fonctions auxiliaires voir MCODS(65..) Broches Fonctions de mouvements des broches voir MCODS(63..) Gammes de vitesse des broches voir MCODS(64..) Attribution des groupes de broches du canal voir MCODS(65..) Sélection automatique ou manuelle de la gamme de vitesse voir MCODS(66..) Information, si la commutation du réducteur est active voir MCODS(67..) Noms des broches voir MCODS(102..) Nombre de broches voir MCODS(103..) Broche - numéro du système voir MCODS(104..) Broche - numéro de l'axe voir MCODS(105..) Position réelle de la broche voir MCODS(108..) Vitesse de rotation de la broche voir MCODS(110..) Puissance de la broche voir MCODS(111..) Entraînement Version du fabricant voir MCODS(55..) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 403/550 Fonctions CPL Type de variateur voir MCODS(56..) Type de moteur voir MCODS(57..) Divers Messages dans le télégramme pièce voir MCODS(28..) Chemin et nom du programme principal voir MCODS(30..) Stratégie de redémarrage et enregistrement des mouve‐ ments en mode JOG voir MCODS(46..) Données spécifiques au client voir MCODS(42..) Arrêt optionnel (activé) voir MCODS(68..) Ignorer bloc (activer) voir MCODS(69..) Resélection automatique du programme active voir MCODS(70..) Fig.7-47: Aperçu de la fonction MCODS Dans les tableaux donnés ci-dessous, quelques constantes INTE‐ GER sont indiquées en tant que paramètres de la syntaxe. Au lieu de ces constantes, vous pouvez également programmer des va‐ riables INTEGER. Dans ce cas pourtant, les valeur indiquées doi‐ vent être affectées à celles-ci lors de l'appel de la fonction. Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Consigne de position de l'axe DOuBLE, MCODS(1,-1,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon>, en ordre ascendant et indépendamment du canal, les consignes de position de tous les axes d'avance et auxiliaires dans le système : Z pour les axes linéaires en mm pour les axes rotatifs en degrés Le "Réglage de la valeur réelle" (p.ex. G92) est pris en compte dans les valeurs. Consigne de position de l'axe INTEGER, MCODS(2,-1,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon>, en ordre ascendant et indépendamment du canal, les consignes de position de tous les axes d'avance et auxiliaires dans le système : Z pour les axes linéaires en 0,0001 mm pour les axes rotatifs en 0,0001 degré Le "Réglage de la valeur réelle" (p.ex. G92) est pris en compte dans les valeurs. Avance sur trajectoire REAL, tableau MCODS(3,<Canal>,<Version>,<Mémoire tampon>,3) 404/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Fournit dans la <Mémoire tampon>, en ordre ascendant, 3 valeurs d'avance ac‐ tuelle sur trajectoire du <Canal> (y compris le potentiomètre d'avance) en mm/ min : Z 1. La consigne de vitesse définie de manière externe pour l'interpolateur. 2. La vitesse réelle de l'interpolateur (=vitesse de trajectoire actuelle). 3. La consigne de vitesse interne de l'interpolateur. Elle peut avoir changé par rapport à celle prédéfinie de manière externe par une application (p.ex. fonction Feed-Adapt). En cas de la programmation de l'avance exprimée in mm/tour (G95), elle fournit l'avance sur trajectoire en mm/min. Poursuite REAL, MCODS(4,-1,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon>, en ordre ascendant, la poursuite de tous les axes du système : pour les axes linéaires en mm Z pour les axes rotatifs en degrés Si le transfert de la poursuite n'est pas supporté par les entraînements (via pa‐ ramètre SERCOS), la valeur 0,0 est retournée. Consigne de vitesse de rota‐ tion de la broche/vitesse de coupe REAL, tableau Fournit dans la <Mémoire tampon>, en ordre ascendant (S ou S1, S2, S3 etc.), les consignes de vitesse de rotation de la broche ou les vitesses de coupe de toutes les broches existant dans le <Canal>. Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit les données des broches du système, sinon les données des broches du canal. Si G196 est active, les vitesses de coupe sont founies en m/min, sinon les consignes de rotation des broches en tours/min. Ceci comprend le potentiomètre, les limitations de la vitesse de rotation (SMin, SMax) et les limitations par la gamme de vitesse. Si aucune broche n'existe, il est alors indiqué 0,0 à l'endroit correspondant dans la <Mémoire tampon>. Z État "InPos" MCODS(5,<Canal>,<Version>,<Mémoire tampon>,<Taille>) INTEGER, MCODS(6,-1,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon>, en ordre ascendant et indépendamment du canal, la valeur 0 ou 1 en tant que signal InPos pour tout Axe d'avance et auxi‐ liaire : Axe est en position : 1 Z Axe n'est pas en position : 0 Une axe est en position, s'il est dans la fenêtre InPos paramétrée (MP 1015 00100) et si aucune instruction de déplacement (voir également MCODS(47...)) n'est applicable. Valeur du potentiomètre d'avance Z REAL MCODS(7,<Canal>,<Version>,<Mémoire tampon>,1) Fournit dans la <Mémoire tampon> la valeur actuelle du potentiomètre d'avance du <Canal> en 1/100 pourcent. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 405/550 Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Valeur des potentiomètres de la broche REAL, tableau Fournit dans la <Mémoire tampon>, en ordre ascendant (S ou S1, S2, S3 etc.), les valeurs actuelles des potentiomètres d'avance en 1/100 pourcent. Z Numéro de la correction de longueur active MCODS(8,<Canal>,<Version>,<Mémoire tampon>,<Taille>) Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit les données des broches du système, sinon les données des broches du canal. INTEGER MCODS(9,<Canal>,<Version>,<Mémoire tampon>,1) Fournit dans la <Mémoire tampon> le numéro de la correction de longueur active dans le <Canal>. S Si aucune correction de longueur n'est active, -1 est retourné. Correction active de la lon‐ gueur REAL MCODS(10,<Canal>,<Version>,<Mémoire tampon>,1) Fournit dans la <Mémoire tampon> la correction de longueur active dans le <Canal> en mm. S Si aucune correction de longueur n'est active, 0,0 est retourné. Numéro actif de la correction du rayon de l'outil INTEGER MCODS(11,<Canal>,<Version>,<Mémoire tampon>,1) Fournit dans la <Mémoire tampon> le numéro de la correction du rayon d'outil actif pour le <Canal>. S Si aucune correction du rayon n'est active, -1 est retourné. Correction active du rayon de l'outil REAL MCODS(12,<Canal>,<Version>,<Mémoire tampon>,1) Fournit dans la <Mémoire tampon> la correction du rayon d'outil active dans le <Canal>. S Si aucune correction du rayon d'outil n'est active, 0,0 est retourné. Nom du tableau de correction d'outil actif CHARAC‐ MCODS(13,<Canal>,<Version>,<Mémoire tampon>,<Taille>) TER, ta‐ bleau Fournit dans la <Mémoire tampon> le nom du tableau de correction d'outil actif dans le <Canal>. S Nom du tableau NPV d'axe actif Si aucun tableau n'est actif, 3 espaces blancs sont retournés en tant que chaîne de caractères. CHARAC‐ MCODS(14,<Canal>,<Version>,<Mémoire tampon>,<Taille>) TER, tableau Fournit dans la <Mémoire tampon> le nom du tableau NPV d'axe actif dans le <Canal>. S Valeurs NPV d'axe actives Si aucun tableau n'est actif, 3 espaces blancs sont retournés en tant que chaîne de caractères. REAL, tableau MCODS(15,<Canal>,<Version>,<Mémoire tampon>,<Taille>) 406/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Fournit dans la <Mémoire tampon> les valeurs NPV actives dans le <Canal> des 3 premières banques pour les coordonnées de la machine, en mm ou en degrés. Si aucun décalage n'est actif, 0,0 est renvoyé. L'ordre suivant est valable : S ● Décalage de la 1ère coordonnée de machine dans la banque 1 ● Décalage de la 2ème coordonnée de machine dans la banque 1 ● Décalage de la nème coordonnée de machine dans la banque 1 ● Décalage de la 1ère coordonnée de machine dans la banque 2 : ● Décalage de la nème coordonnée de machine dans la banque 2 : ● Décalage de la nème coordonnée de machine dans la banque 3 Valeurs pour toutes les 5 banques de décalage sont fournies par la fonction MCODS(99, ...) Positions d'arrivée program‐ mées, y compris les décala‐ ges REAL, MCODS(16,0,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon>, en ordre ascendant et indépendamment du canal, les positions d'arrivée des blocs actifs de tous les axes d'avance et auxi‐ liaires par rapport aux coordonnees de la pièce à usiner : S ● pour les axes linéaires en mm ● pour les axes rotatifs en degrés Toutes les valeurs de décalage sont décomptées. Le "Réglage de la valeur réelle" (p.ex. G92) n'est pas pris en compte dans les valeurs. Type de programmation (pou‐ MCODS(18,<Canal>,<Version>,<Mémoire tampon>,1) INTEGER ces/métrique) Fournit dans la <Mémoire tampon> le mode de programmation des axes existant dans le <Canal> : 0: pouces S 1: métrique 2: degrés 3: aucuns axes n'existent Vitesse maximale de la bro‐ che REAL, ta‐ MCODS(19,<Canal>,<Version>,<Mémoire tampon>,<Taille>) bleau Fournit dans la <Mémoire tampon>, en ordre ascendant (S ou S1, S2, S3 etc.), les vitesses maximales admissibles de la broche, en tours/min. S Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit les données des broches du système, sinon les données des broches du canal. Les limitations de la vitesse de rotation sont prises en compte. Vitesse minimale de la broche REAL, tableau MCODS(20,<Canal>,<Version>,<Mémoire tampon>,<Taille>) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 407/550 Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Fournit dans la <Mémoire tampon>, en ordre ascendant (S ou S1, S2, S3 etc.), les vitesses minimales admissibles de la broche, en tours/min. S Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit les données des broches du système, sinon les données des broches du canal. Les limitations de la vitesse de rotation sont prises en compte. Positions d'arrivée program‐ mées, sans décalages REAL, tableau S Avance programmée sur tra‐ jectoire comme MCODS(16...), mais sans décalages. REAL REAL, MCODS(25,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon>, en ordre ascendant (S ou S1, S2, S3 etc.), les vitesses programmées de la broche en tours/min. S État "Point de référence ap‐ proché" MCODS(24,<Canal>,<Version>,<Mémoire tampon>,1) Fournit dans la <Mémoire tampon> l'avance programmée sur trajectoire du <Ca‐ nal>, exprimée en mm/min. S Vitesse programmée de la broche MCODS(23,0,<Version>,<Mémoire tampon>,<Taille>) Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit les données des broches du système, sinon les données des broches du canal. INTEGER, MCODS(26,-1,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon>, en ordre ascendant et indépendamment du canal, la valeur 0 ou 1 en tant que signal "Point de référence approché" pour tout axe d'avance et auxiliaire : E Point de référence approché : 1 Point de référence non approché : 0 Vitesses de déplacement par mode JOG REAL, MCODS(27,-1,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon>, en ordre ascendant et indépendamment du canal, les vitesses actuelles en mode JOG de tous les axes d'avance et auxiliaires dans le système : E pour les axes linéaires en mm/min pour les axes rotatifs en tours/min Messages dans le télégram‐ me pièce E État "Mode test" E CHARAC‐ MCODS(28,<Canal>,<Version>,<Mémoire tampon>,80) TER, tableau Fournit dans la <Mémoire tampon> les remarques programmées à l'aide de l'or‐ dre MSG dans le <Canal>. INTEGER MCODS(29,0,<Version>,<Mémoire tampon>,1) Fournit dans la <Mémoire tampon> la valeur 1, si le mode test est activé. Sinon 0. 408/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Chemin et nom du programme principal CHARAC‐ MCODS(30,<Canal>,<Version>,<Mémoire tampon>,<Taille>) TER, tableau Fournit dans la <Mémoire tampon> le chemin et le nom du programme principal sélectionné dans le <Canal> en tant que chaîne de caractères. Une valeur existant dans la <Version> est ignorée par la fonction lors de l'appel de celle-ci. Pour les fichiers sauvegardés dans le système de fichiers CN interne, il convient d'indiquer dans <Taille> la valeur 31 (ici, la longueur maximale pour le chemin plus le nom du fichier s'élève à 30 caractères). E Pour les fichiers sauvegardés dans les systèmes de fichiers montés, la <Taille> de la valeur dépend du nombre maximal de caractères supportés par le système de fichier externe pour le chemin et le nom d'un fichier. Mode de fonctionnement du canal INTEGER MCODS(31,<Canal>,<Version>,<Mémoire tampon>,1) Fournit dans la <Mémoire tampon> le mode de fonctionnement actif dans le <ca‐ nal> : 0: Aucun mode de fonctionnement et donc aucun processus n'est actif. 1: Mode JOG. Les axes peuvent être déplacés en mode JOG (+/-). 2: Approcher le point de référence. Les axes peuvent être démarrés à l'aide des signaux Manuel+ / Manuel-. 3: Réservé. 4: Introduction manuelle de données. Les blocs CN séparés peuvent être définis pour l'usinage. 5: Automatique (Bloc suivant). Les programmes pièce sont complètement exé‐ cutés. 6: Automatique (Bloc de programme). Les blocs séparés d'un programme pièce sont exécutés l'un après l'autre. Tout bloc séparé est préparé par Démarrage CN et lancé. E 7: Automatique (Pas séparé). A partir d'un seul bloc CN dans le programme pièce, la CN peut éventuellement générer et programmer plusieurs blocs. Dans ce mode de fonctionnement, Démarrage CN transmet toujours un bloc séparé à l'interpo‐ lateur pour le traitement. 8: Réservé. 9: Réservé. 10: Automatique (Bloc séparé). Tous les blocs générés et préparés à partir d'un bloc CN séparé dans le programme pièce sont transmis par Démarrage CN à l'interpolateur pour traitement. 11: Redémarrer. Les axes peuvent être éloignés manuellement du contour, et rapprochés automatiquement ou manuellement. 12: Débogueur CPL (Mode bloc de programme) : Les blocs séparés, tels qu'ils sont inscrits dans le programme pièce, sont exé‐ cutés individuellement. 13: Débogueur CPL (Mode bloc suivant) : Tous les blocs jusqu'au prochain point d'interruption sont exécutés. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 409/550 Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) État SAV et IPO INTEGER, MCODS(32,<Canal>,<Version>,<Mémoire tampon>,2) tableau Fournit dans la <Mémoire tampon>, à partir du <canal>, ● l'état SAV (Préparation de blocs) et ● l'état de l'interpolateur. Les valeurs suivantes sont définies comme état SAV : 1: Le mode de fonctionnement n'est pas actif. Il est possible de sélectionner un processus. 2: Le mode de fonctionnement est opérationnel. Il est possible de démarrer un processus. 3: Le mode de fonctionnement est actif. Un programme ou un bloc NC est en traitement. 4: Réservé. 5: Réservé. 6: Une erreur s'est produite dans le mode de fonctionnement. Elle ne peut être corrigée que par la remise à zéro ou la désélection du programme. E 7: Réservé. 8: Actuellement, la remise à zéro est exécutée. 9: Un programme est sélectionné et est actuellement en préparation (p.ex. lié). 10: "Effacement de la course restante" a été lancé et n'est pas encore terminé. 11: Le mode de fonctionnement est actif et retraite les mémoires tampon exi‐ stantes. 12: Le mode de fonctionnement est opérationnel. Le processus est au début du programme et peut être lancé. 13: Lors d'une définition de bloc CN bufférisée, tous les blocs sont traités. Attente de la nouvelle valeur par défaut. Les valeurs suivantes sont définies comme état IPO : 1: L'interpolateur est en marche. 2: L'interpolateur s'arrête en raison de l'arrêt de l'avance. 3: L'interpolateur a arrêté les axes. Noms d'axe CHARAC‐ MCODS(33,<Canal>,<Version>,<Mémoire tampon>,<Taille>) TER, tableau 410/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Pour <Canal> = -1, la <Mémoire tampon> fournit, en ordre ascendant et à 9 oc‐ tets, les noms de tous les axes du système, séparés par le signe "0" (octet 0). Pour <Canal> = numéro du canal existant, la <Mémoire tampon> fournit, en ordre ascendant, les noms de tous les axes du canal concerné, séparés par le signe "0" (octet 0). R Les noms comportant moins de 8 caractères sont complétés avec des espaces jusque le nombre de 8 caractères soit atteint. <Taille> indique la capacité de la <Mémoire tampon>. Pour 16 axes, elle peut comporter au maximum (9*16) 144 octets. Pour l'exemple, voir chap. 7.14.4 " Exemples de programmation" à la page 436. Nombre d'axes d'avance, d'axes auxiliaires, de bro‐ ches ; types de mouvement, types d'entraînement MCODS(34,-1,<Version>,<Mémoire tampon>,<Taille>) INTEGER, tableau R Position réelle de l'axe Réservé. Utiliser MCODS(45...) à la place. REAL, MCODS(35,-1,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon>, en ordre ascendant et indépendamment du canal, les positions rélles de tous les axes d'avance et axes auxiliaires qui ont été transmis par un paramètre SERCOS à la CN : pour les axes linéaires en mm Z pour les axes rotatifs en degrés Le "Réglage de la valeur réelle" (p.ex. G92) n'est pas pris en compte dans les valeurs. Vitesse réelle de la broche REAL, tableau Fournit dans la <Mémoire tampon>, en ordre ascendant (S ou S1, S2, S3 etc.), les vitesses de rotation de la broche en tours/min. Si <canal>=-1 ou 0 est trans‐ féré, la <Mémoire tampon> fournit les données des broches du système, sinon les données des broches du canal. Cela comprend les potentiomètres, les limi‐ tations de la vitesse de rotation (SMin, SMax) et les limitations par la gamme de vitesse. Si aucune broche n'existe, il est alors indiqué 0,0 à l'endroit correspon‐ dant dans la <Mémoire tampon>. Z Valeur programme de l'axe (système de coordonnées du programme) MCODS(36,<Canal>,<Version>,<Mémoire tampon>,<Taille>) DOUBLE, MCODS(37,-1,<Version>,<Mémoire tampon>,<Taille>) tableau Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 411/550 Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Fournit dans la <Mémoire tampon>, en ordre ascendant et indépendamment du canal, les consignes de position de l'interpolateur par rapport à la pièce à usiner pour tous les axes d'avance du système : pour les axes linéaires en mm Z pour les axes rotatifs en degrés Le "Réglage de la valeur réelle" (par ex. G92) et le décalage d'origine de l'axe (G54.x …G59.x) ne sont pas pris en compte pour les valeurs. Valeurs rélles de l'axe (systè‐ DOUBLE, MCODS(38,-1,<Version>,<Mémoire tampon>,<Taille>) me de coordonnées de la ma‐ tableau chine) Fournit dans la <Mémoire tampon>, en ordre ascendant et indépendamment du canal, les "valeurs réelles" par rapport au système de coordonnées (cartésien‐ nes) de la machine. Les valeurs sont calculées à partir des positions rélles des axes au moyen de la transformation cinématique en avance spécifique à la machine et spécifiée par canal (transformation d'axe). Si aucune transformation cinématique d'axe n'est programmée, MCODS(38) fournit les valeurs identiques à celles de MCODS(35). Z La condition préalable pour l'application de MCODS(38) est le réglage corres‐ pondant du paramètre machine 9030 00002 qui permet de configurer si et à quelle fréquence les valeurs réelles du système de coordonnées de la machine sont calculées. État "Temporisation active" INTEGER MCODS(39,<Canal>,<Version>,<Mémoire tampon>,1) Fournit dans la <Mémoire tampon> la valeur 1, lorsqu'une temporisation est ac‐ tive dans le <Canal>. Sinon 0. E État "Fonction auxiliaire avec MCODS(40,<Canal>,<Version>,<Mémoire tampon>,1) acquittement obligatoire acti‐ INTEGER ve" Fournit dans la <Mémoire tampon> la valeur 1, si une fonction auxiliaire attend un acquittement dans le <Canal>. Sinon 0. E État "Validation d'enregistre‐ ment" E Données spécifiques au client INTEGER MCODS(41,<Canal>,<Version>,<Mémoire tampon>,1) Fournit dans la <Mémoire tampon> la valeur 1, si le signal d'entrée CN "Blocage d'enregistrement" est initialisé dans le <canal>. Sinon 0. MCODS(42,<Canal>,<Version>,<Mémoire tampon>,<Taille>,<P1>) Fournit dans la <Mémoire tampon> les données spécifiques au client issues du <Canal>. E Dans <P1>, une valeur INTEGER de la plage allant de 0 à 65535 peut être trans‐ mise au serveur du client lors de l'appel de fonction pour la sélection de certaines données. La fonction est prévue pour les développements spécifiques au client au niveau du "noyau CN". Attribution axe - canal INTEGER, MCODS(43,-1,<Version>,<Mémoire tampon>,<Taille>) tableau 412/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Fournit dans la <Mémoire tampon>, les informations suivantes pour tout axe du système : ≥0: Numéro de canal de l'axe synchrone E -1: L'axe est asynchrone -2: L'axe est une broche -3: L'axe n'est pas défini Nombre de canaux INTEGER, MCODS(44,-1,<Version>,<Mémoire tampon>,3) tableau Fournit dans la <Mémoire tampon>, en ordre ascendant, R Nombre d'axes ● le nombre des canaux utilisateurs utilisables ● le nombres de canaux sur l'interface ● le nombre de tous les canaux internes et externes INTEGER, MCODS(45,-1,<Version>,<Mémoire tampon>,3) tableau Fournit dans la <Mémoire tampon>, en ordre ascendant, R Stratégie de redémarrage et enregistrement des mouve‐ ments en mode JOG ● l'index maximal des axes du système. Il est requis pour le ponçage par tous les axes. S'il n'y a pas de lacunes, il s'agit du nombre d'entraînements dis‐ ponibles dans le système. ● l'index maximal des axes dans le système. Il est requis par exemple pour la taille de l'interface d'axe. S'il n'y a pas de lacunes, il s'agit du nombre d'axes disponibles dans le système. ● le nombre maximal de broches dans le système. Il est requis par exemple pour la taille de l'interface de broche. INTEGER, MCODS(46,<Canal>,<Version>,<Mémoire tampon>,3) tableau Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 413/550 Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Fournit dans la <Mémoire tampon>, en ordre ascendant pour le <canal> indiqué, ● le mode de fonctionnement de redémarrage ● le point de redémarrage ● l'état d'enregistrement des mouvements JOG En tant que mode de fonctionnement de redémarrage, les valeurs suivantes sont possibles : 1: redémarrage automatique 2: redémarrage avec bloc séparé E 3: redémarrage manuel Pour le point de redémarrage : 1: redémarrage vers le point de départ 2: redémarrage vers le point d'arrivée 3: redémarrage vers le point de l'interruption Pour l'état d'enregistrement : 0: enregistrement non actif 1: enregistrement actif État "Instruction de déplace‐ ment" INTEGER, MCODS(47,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Pour <Canal> = -1, la <Mémoire tampon> fournit, en ordre ascendant, les noms de tous les axes du système. Pour <Canal> = numéro du canal existant, la <Mémoire tampon> fournit, en ordre ascendant, les signaux d'instruction de déplacement de tous les axes du canal indiqué et ensuite de tous les axes asynchrones. Z Instruction de déplacement initialisée : 1 Instruction de déplacement non initialisée : 0 Une instruction de déplacement est toujours initialisée dès qu'un axe doit exé‐ cuter un mouvement de déplacement défini manuellement ou dans le programme pièce. Mode de fonctionnement de l'axe INTEGER, MCODS(48,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau 414/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Pour <Canal> = -1, la <Mémoire tampon> fournit, en ordre ascendant, les modes de fonctionnement de tous les axes du système. Pour <Canal> = numéro du canal existant, la <Mémoire tampon> fournit, en ordre ascendant, les modes de fonctionnement de tous les axes du canal indiqué et ensuite de tous les axes asynchrones. Valeurs de retour possibles pour les modes de fonctionnement : 0: Aucun mode de fonctionnement et donc aucun processus n'est actif. 1: Mode JOG. Les axes peuvent être déplacés en mode JOG (+/-). 2: Approcher le point de référence. Les axes peuvent être démarrés à l'aide des signaux Manuel+ / Manuel-. 3: Réservé. 4: Introduction manuelle de données. Les blocs CN séparés peuvent être définis pour l'usinage. 5: Automatique (Bloc suivant). Les programmes pièce sont complètement exé‐ cutés. E 6: Automatique (Bloc de programme). Les blocs séparés d'un programme pièce sont exécutés l'un après l'autre. Tout bloc séparé est préparé par Démarrage CN et lancé. 7: Automatique (Pas séparé). A partir d'un seul bloc CN dans le programme pièce, la CN peut éventuellement générer et programmer plusieurs blocs. Dans ce mode de fonctionnement, Démarrage CN transmet toujours un bloc séparé à l'interpo‐ lateur pour le traitement. 8: Réservé. 9: Réservé. 10: Automatique (Bloc séparé). Tous les blocs générés et préparés à partir d'un bloc CN séparé dans le programme pièce sont transmis par Démarrage CN à l'interpolateur pour traitement. 11: Redémarrer. Les axes peuvent être éloignés manuellement du contour, et rapprochés automatiquement ou manuellement. État "Blocage d'avance" INTEGER, MCODS(49,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Pour <Canal> = -1, la <Mémoire tampon> fournit, en ordre ascendant, les signaux des blocages d'avance de tous les axes du système. Pour <Canal> = numéro du canal existant, la <Mémoire tampon> fournit, en ordre ascendant, les blocages d'avance de tous les axes du canal indiqué et ensuite de tous les axes asynchrones. E 1: Blocage d'avance actif 0: Blocage d'avance non actif Valeur des potentiomètres de l'axe REAL, tableau MCODS(50,<Canal>,<Version>,<Mémoire tampon>,<Taille>) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 415/550 Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Pour <Canal> = -1, la <Mémoire tampon> fournit, en ordre ascendant, les valeurs des potentiomètres de tous les axes du système (en 0,01 pourcent). Pour <Canal> = numéro du canal existant, la <Mémoire tampon> fournit, en ordre ascendant, pour chaque axe dans le canal indiqué la valeur du potentiomètre du canal et ensuite les valeurs des potentiomètres de tous les axes asynchrones (en 0,01 pourcent). E Valeurs actives de la correc‐ tion externe de l'outil REAL, MCODS(51,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> les valeurs de la correction externe de l'outil qui sont actives dans le <Canal>. S Ordre : correction du rayon, correction de la longueur Si aucune correction externe de l'outil n'est active, 0,0 est renvoyé. Valeurs NPV d'axe externes actives REAL, MCODS(52,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> les valeurs NPV d'axe externes actives dans le <Canal>. S Ordre : 1. axe logique, … 8. axe logique Si aucun décalage externe n'est actif, 0,0 est renvoyé. Unité de mesure des axes INTEGER, MCODS(53,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Pour <Canal> = -1, la <Mémoire tampon> fournit, en ordre ascendant, les unités de mesure (métriques, pouces, degrés) de tous les axes du système. Pour <Canal> = numéro du canal existant, la <Mémoire tampon> fournit, en ordre ascendant, l'unité de mesure de tout axe du canal indiqué et ensuite de tous les axes asynchrones. En cas d'axes asynchrones linéaires, l'interface d'axe définit l'unité de mesure dans les modes de fonctionnement des axes "JOG" et "Approche du point de référence". Si aucun mode de fonctionnement d'axe n'est défini, les valeurs "métriques" sont fournies. E En cas d'axes synchrones linéaires, l'interface d'axe définit l'unité de mesure dans les modes de fonctionnement des canaux "JOG" et "Approche du point de réfé‐ rence". Dans les autres modes de fonctionnement, elle dépend de l'unité de mesure du canal (métrique/pouce – G70/G71). En cas d'axes rotatifs et de broches, les valeurs sont fournies en degrés, en cas d'axes Hirth à programmation de place, en une unité de mesure correspondante. Valeurs de retour possibles pour les unités de mesure : 0: pouces 1: métrique 2: degrés 3: axe n'existe pas 4: axe Hirth à programmation de place 416/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Correcteur d'outil universel actif REAL, MCODS(54,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> les valeurs actives dans le <Canal> du cor‐ recteur d'outil universel. Ordre : S ● Correction de rayon ● Correction de longueur L3 ● Correction de longueur L1 ● Correction de longueur L2 ● Orientation de l'arête de coupe ● Mode de correction Les modes de correction suivants sont définis : 0: Aucune correction 1: Outil de perçage 2: Outil de fraisage 3: Outil de tournage 4: Outil d'équerrage Si aucun correcteur d'outil universel n'est actif, 0,0 est renvoyé. Version du fabricant CHARAC‐ MCODS(55,-1,<Version>,<Mémoire tampon>,<Taille>,<Numéro d'axe>) TER, tableau Édite la version du fabricant de l'entraînement. La sélection d'axe s'effectue dans le paramètre <Numéro de l'axe> par l'indication de l'axe du système. (No 0 fournit également le 1er axe). La version du fabricant correspond au paramètre SER‐ COS S-0-0030. Dans le paramètre <Mémoire tampon>, un tableau de 40 carac‐ tères au maximum est fourni. R Type de variateur CHARAC‐ MCODS(56,-1,<Version>,<Mémoire tampon>,<Taille>,<Numéro d'axe>) TER, tableau Indique le type de variateur de l'entraînement. La sélection d'axe s'effectue dans le paramètre <Numéro de l'axe> par l'indication de l'axe du système (No 0 fournit également le 1er axe). Le type du variateur correspond au paramètre SERCOS S-0-0140. Dans le paramètre <Mémoire tampon>, un tableau de 40 caractères au maximum est fourni. R Type de moteur CHARAC‐ MCODS(57,-1,<Version>,<Mémoire tampon>,<Taille>,<Numéro d'axe>) TER, tableau R Indique le type du moteur de l'entraînement. La sélection d'axe s'effectue dans le paramètre <Numéro de l'axe> par l'indication de l'axe du système. (No 0 fournit également le 1er axe). Le type de moteur correspond au paramètre SERCOS S-0-0141. Dans le paramètre <mémoire tampon>, un tableau de 40 caractères au maximum est fourni. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 417/550 Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Attribution de défaut axe - ca‐ MCODS(58,-1,<Version>,<Mémoire tampon>,<Taille>) INTEGER nal Fournit dans la <Mémoire tampon> l'attribution de défaut suivante pour tout axe du système : .0: Numéro de canal de l'axe synchrone -1: L'axe est asynchrone R -2: L'axe est une broche -3: L'axe n'est pas défini Pour 16 axes, la <Mémoire tampon> doit avoir la <Taille> 16 (INTEGER). Noms actifs des axes du canal CHARAC‐ MCODS(59,<Canal>,<Version>,<Mémoire tampon>,<Taille>) TER, tableau Pour <Canal> = -1, la <Mémoire tampon> fournit, en ordre ascendant et à 9 oc‐ tets, les noms de tous les axes actifs du canal, séparés par le signe "0" (octet 0). Pour <Canal> = numéro du canal existant, la <Mémoire tampon> fournit, en ordre ascendant, les noms de tous les axes du canal concerné, séparés par le signe "0" (octet 0). E Les noms comportant moins de 8 caractères sont complétés avec des espaces jusque le nombre de 8 caractères soit atteint. <Taille> indique la capacité de la <Mémoire tampon>. Pour 16 axes, elle peut comporter au maximum (9*16) 144 octets. Pour l'exemple, voir chap. 7.14.4 " Exemples de programmation" à la page 436. Noms des axes du canal (ré‐ glage par défaut) CHARAC‐ MCODS(60,<Canal>,<Version>,<Mémoire tampon>,<Taille>) TER, tableau Pour <Canal> = -1, la <Mémoire tampon> fournit, en ordre ascendant et à 9 oc‐ tets, les noms de tous les axes du canal (dans le réglage de défaut), séparés par le signe "0" (octet 0). Pour <Canal> = numéro du canal existant, la <Mémoire tampon> fournit, en ordre ascendant, les noms de tous les axes du canal concerné, séparés par le signe "0" (octet 0). R Les noms comportant moins de 8 caractères sont complétés avec des espaces jusque le nombre de 8 caractères soit atteint. <Taille> indique la capacité de la <Mémoire tampon>. Pour 16 axes, elle peut comporter au maximum (9*16) 144 octets. Pour l'exemple, voir chap. 7.14.4 " Exemples de programmation" à la page 436. Unités de mesure des axes (réglage par défaut) INTEGER, MCODS(61,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau 418/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Pour <Canal> = -1, la <Mémoire tampon> fournit les unités de mesure (métrique, pouces, degrés) de tous les axes du système dans le réglage de défaut. Pour <Canal> = numéro du canal existant, la <Mémoire tampon> fournit les unités de mesure (métrique, pouces, degrés) de tous les axes dans le canal indiqué dans le réglage de défaut. R ● En cas d'axes linéaires asynchrones, les valeurs "métriques" sont fournies. ● En cas d'axes linéaires synchrones, l'unité de mesure dépend de l'état de mise en service après le montée en régime (paramètre machine 7060 00010) : "métrique/pouces" (G70/G71) ● En cas d'axes rotatifs, les valeurs sont fournies en degrés, en cas d'axes Hirth à programmation de place, en une unité de mesure correspondante.. Valeurs de retour possibles pour les unités de mesure : 0: pouces 1: métrique 2: degrés 3: axe n'existe pas 4: axe Hirth à programmation de place Pour 16 axes, la <Mémoire tampon> doit avoir la <Taille > 16 (INTEGER). Numéro d'identification issu INTEGER, MCODS(62,-1,<Version>,<Mémoire tampon>,<Taille>,<Numéro d'identifica‐ du télégramme d'axe cyclique tableau tion>) Fournit la valeur d'un <Numéro d'identification> à partir du télégramme d'axe cy‐ clique pour tous les axes. Si le <Numéro d'identification> n'est pas contenu dans le télégramme cyclique, la valeur NCS_MCO_NOT_IN_CYCL_AT_C (-2147483648) est indiquée. Z La valeur est "INTEGER" en calibrage SERCOS. Pour 16 axes, la <Mémoire tampon> doit avoir la <Taille > 16 (INTEGER). Fonctions de mouvements des broches INTEGER, MCODS(63,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit les fonctions de mouvement des broches. Codage des fonctions de mouvement : 0: Broche non définie 1: Rotation vers la droite sans réfrigérant 2: Rotation vers la droite avec réfrigérant E 3: Rotation vers la gauche sans réfrigérant 4: Rotation vers la gauche avec réfrigérant 5: Arrêt de la broche 6: Orientation de la broche Pour 32 broches p.ex., la <Mémoire tampon> doit avoir la <Taille> 32 (INTEGER). Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit les données des broches du système, sinon les données des broches du canal. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 419/550 Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Gammes de vitesse des bro‐ INTEGER, MCODS(64,<Canal>,<Version>,<Mémoire tampon>,<Taille>) ches tableau Fournit les grammes de vitesse des broches. Codage des gammes de vitesse : 40: Sélection automatique de la gamme de vitesse 41: Gamme de vitesse 1 42: Gamme de vitesse 2 E 43: Gamme de vitesse 3 44: Gamme de vitesse 4 48: Débrayer la gamme de vitesse Pour 32 broches p.ex., la <Mémoire tampon> doit avoir la <Taille> 32 (INTEGER). Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit les données des broches du système, sinon les données des broches du canal. Attribution des groupes de broches du canal INTEGER, MCODS(65,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit l'attribution des groupes de broches du canal. Attribution de groupes : 0: Aucun groupe actif E 1 .. 4: Numéro de groupe Pour 8 broches du canal p.ex., la <Mémoire tampon> doit avoir la <Taille> 8 (INTEGER). Si <Canal>= -1 est transféré, la <Mémoire tampon> fournit les données du canal actif, sinon les données du canal sélectionné. Sélection automatique ou ma‐ INTEGER, MCODS(66,<Canal>,<Version>,<Mémoire tampon>,<Taille>) nuelle de la gamme de vitesse tableau Fournit la sélection automatique ou manuelle de la gamme de vitesse : 0: manuelle E 1: automatique Pour 32 broches p.ex., la <Mémoire tampon> doit avoir la <Taille> 32 (INTEGER). Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit les données des broches du système, sinon les données des broches du canal. Information, si la commutation INTEGER, MCODS(67,<Canal>,<Version>,<Mémoire tampon>,<Taille>) du réducteur est active tableau Fournit l'information, si la commutation du réducteur : 0: Commutation du réducteur désactivée E 1: Commutation du réducteur activée Pour 32 broches p.ex., la <Mémoire tampon> doit avoir la <Taille> 32 (INTEGER). Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit les données des broches du système, sinon les données des broches du canal. 420/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Ignorer bloc (activer) INTEGER, MCODS(68,<Canal>,<Version>,<Mémoire tampon>,2) tableau Fournit dans la <Mémoire tampon> l'état du signal de sortie CN Ignorer bloc (ac‐ tiver) et le signal d'entrée Ignorer bloc du <Canal>. E Arrêt optionnel (activé) INTEGER, MCODS(69,<Canal>,<Version>,<Mémoire tampon>,2) tableau Fournit dans la <Mémoire tampon> l'état du signal de sortie CN Arrêt optionnel activé et le signal d'entrée Arrêt optionnel du <Canal>. E Resélection automatique du programme active INTEGER MCODS(70,<Canal>,<Version>,<Mémoire tampon>,1) Fournit dans la <Mémoire tampon>, si resélection automatique du programme est paramétrée dans le canal indiqué : l 0: Fonction n'est pas paramétrée 1: Fonction est paramétrée Coordonnées de la pièce à usiner REAL, tableau Fournit dans la <Mémoire tampon> les valeurs des coordonnées de la pièce à usiner (WCS) pour le canal indiqué : d'abord toutes les coordonnées tridimen‐ sionnelles, ensuite les pseudo-coordonnées du canal. Z Valeurs de consigne des co‐ ordonnées de base REAL, MCODS(72,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> les valeur de consigne des coordonnées de base (WCS) pour le canal indiqué : d'abord toutes les coordonnées tridimension‐ nelles, ensuite les pseudo-coordonnées du canal. Z Coordonnées d'axe dans l'ACS1 MCODS(71,<Canal>,<Version>,<Mémoire tampon>,<Taille>) REAL, MCODS(73,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> les valeurs des coordonnées d'axe (ACS1) pour le canal indiqué. Z Canal = -1 : toutes les coordonnées d'axe 0< Canal ≤ Canal max. : données du canal défini Coordonnées de machine REAL, MCODS(74,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> les valeurs des coordonnées de machine (MCS) pour le canal indiqué. Z Canal = -1 : toutes les coordonnées d'axe 0< Canal ≤ Canal max. : données du canal défini Valeurs réelles des coordon‐ nées de base Z REAL, MCODS(75,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> les valeur réelles des coordonnées de base (BCS) pour le canal indiqué : d'abord toutes les coordonnées tridimensionnelles, ensuite les pseudo-coordonnées du canal. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 421/550 Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Points d'arrivée programmés des coordonnées REAL, ta‐ MCODS(76,<Canal>,<Version>,<Mémoire tampon>,<Taille>) bleau Fournit dans <Mémoire tampon> les points d'arrivée programmés des coordon‐ nées pour le canal indiqué : d'abord toutes les coordonnées tridimensionnelles, ensuite les pseudo-coordonnées du canal. S Points d'arrivée des coordon‐ REAL, ta‐ MCODS(77,<Canal>,<Version>,<Mémoire tampon>,<Taille>) nées bleau Fournit dans la <Mémoire tampon> les points d'arrivée des coordonnées pour le canal indiqué, y compris les décalages : d'abord toutes les coordonnées tridi‐ mensionnelles, ensuite les pseudo-coordonnées du canal. S Noms de coordonnées CHARAC‐ MCODS(78,<Canal>,<Version>,<Mémoire tampon>,<Taille>) TER, tableau Fournit dans la <Mémoire tampon> les noms des coordonnées actives pour le canal indiqué : d'abord toutes les coordonnées tridimensionnelles, ensuite les pseudo-coordonnées du canal. E État INPOS des coordonnées INTEGER, MCODS(79,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> l'état INPOS des coordonnées pour le canal indiqué : d'abord toutes les coordonnées tridimensionnelles, ensuite les pseudocoordonnées du canal. Z Pour une coordonnée tridimensionnelle, le statut est constitué à partir de la liaison ET des signaux d'axes. État de référence des coor‐ données INTEGER, MCODS(80,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> l'état de point de référence des coordon‐ nées pour le canal indiqué : d'abord toutes les coordonnées tridimensionnelles, ensuite les pseudo-coordonnées du canal. E Pour une coordonnée tridimensionnelle, le statut est constitué à partir de la liaison ET des signaux d'axes. Unité de mesure des coordon‐ INTEGER, MCODS(81,<Canal>,<Version>,<Mémoire tampon>,<Taille>) nées tableau Fournit dans la <Mémoire tampon> les unités de mesure des coordonnées pour le canal indiqué : d'abord toutes les coordonnées tridimensionnelles, ensuite les pseudo-coordonnées du canal. Valeurs de retour possibles pour les unités de mesure : E 0: pouces 1: métrique 2: degrés 3: coordonnée n'existe pas Nombre de coordonnées INTEGER, MCODS(82,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau 422/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Fournit dans la <Mémoire tampon> en 3 éléments le nombre de coordonnées/ d'axes pour le canal indiqué : 1. valeur : nombre total des axes du canal E 2. valeur : nombre de coordonnées tridimensionnelles + nombre de pseudo-co‐ ordonnées du canal 3. valeur : nombre de peudo-coordonnées du canal Course restante des coordon‐ nées dans le système de co‐ ordonnées de la pièce à usi‐ ner (WCS) REAL, tableau Fournit dans la <Mémoire tampon> les courses restantes des coordonnées de la pièce à usiner (WCS) pour le canal indiqué : d'abord toutes les coordonnées tridimensionnelles, ensuite les pseudo-coordonnées du canal. Z Course restante des axes dans le système de coordon‐ nées de l'axe (ACS1) Z Etats d'attente du canal MCODS(83,<Canal>,<Version>,<Mémoire tampon>,<Taille>) REAL, MCODS(85,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> les courses restantes des axes dans le sys‐ tèmes des coordonnées de l'axe (ACS1) pour le canal indiqué. INTEGER MCODS(87,<Canal>,<Version>,<Mémoire tampon>1) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 423/550 Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Fournit dans la <Mémoire tampon> les états d'attente d'un canal. Si un canal passe à un état d'attente, les raisons pour cela sont indiquées par cette fonction. Les états d'attente actifs sont codés en bit. Les constantes suivantes définissent les bits correspondants de la première va‐ leur entière, en commençant avec la valeur la plus inférieure : 0: Temporisation 1: Fonction auxiliaire avec acquittement obligatoire 2: Blocage d'enregistrement 3: Avance dans le canal égale à 0 4: Arrêt du programme avec M0/M1 5: Arrêt d'avance dans le canal E 6: Blocage d'avance dans le canal ou dans un axe du canal 7: Blocage d'enregistrement défini par le client 8: Arrêt de mouvement synchronisé entre canaux (ASTOP, ...) 9: Attente d'axe durant l'échange d'axes (G511) 10: Attente de la variable permanente (WPV) 11: Attente du signal d'interface au moment actif (WAITA, ...) 12: Attente de signal d'interface (WAIT(BITIF...)) ou d'une durée fixée (WAIT(,TEMPS%)) lors de la préparation de blocs 13: Service de données Motion Control (MCODS(...)) 14: Attente de la position INPOS des axes du canal Voir l'exemple sous chap. 7.14.4 " Exemples de programmation" à la page 436. Valeurs de correction en ligne (WCS) REAL, MCODS(89,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> les valeurs de la correction en ligne (WCS) pour le canal indiqué : d'abord toutes les coordonnées tridimensionnelles, ensuite les pseudo-coordonnées du canal. E État de la correction en ligne INTEGER, MCODS(90,<Canal>,<Version>,<Mémoire tampon>,<Taille>) (WCS) tableau Fournit dans la <Mémoire tampon> l'état actuel de la correction en ligne (WCS) pour le canal indiqué : d'abord toutes les coordonnées tridimensionnelles, ensuite les pseudo-coordonnées du canal. E 0: Correction en ligne désactivée 1: Correction en ligne activée Programmation au diamètre INTEGER, MCODS(91,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau 424/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Fournit dans la <Mémoire tampon> la valeur 1 pour les axes à programmation au diamètre. Si la valeur Ncs_MCoNoChannel_C (-1) a été définie en tant que canal, les va‐ leurs de tous les axes du système sont fournies. S Si un numéro du canal a été défini, les valeurs de tous les axes du canal sont fournies. Coordonnées de base de la pointe d'outil (BCSTcp) REAL, MCODS(92,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit,si la correction de rayon 3D est active, dans la <Mémoire tampon> les valeurs de consigne de la pointe d'outil dans le système de coordonnées de base (BCS Tcp) : d'abord les coordonnées tridimensionnelles, ensuite les pseudo-co‐ ordonnées du canal indiqué. Z Si la correction de rayon 3D est désactivée, les valeurs sont identiques à celles de MCODS(72,...). Numéros des groupes de fonctions auxiliaires CHARAC‐ MCODS(94,<Canal>,<Version>,<IDGroupe>,<Taille>,<Syntaxe>) TER, tableau Fournit dans <IDGroupe> les numéros de groupe de fonctions auxiliaires pour les fonctions auxiliaires indiquées dans la <Syntaxe> du canal indiqué. Z Syntaxe active des groupes de fonctions auxiliaires <Syntaxe> contient les fonctions auxiliaires séparées par des espaces et se ter‐ minant en CHR$(0), voir "Exemple :" à la page 428. CHARAC‐ MCODS(95,<Canal>,<Version>,<Syntaxe>,<Taille>,<IDGroupe>) TER, tableau Fournit dans <Syntaxe> la syntaxe active pour le numéro de groupe de fonctions auxiliaires indiqué dans <IDGroupe> du canal indiqué. Z Jeu de données actif - déca‐ lage d'origine Dans <IDGroupe>, un tableau des numéros des groupes de fonctions auxiliaires souhaités, se terminant en CHR$(0), est transmis (voir l'exemple ci-dessous). DOUBLE, MCODS(99,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 425/550 Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Fournit dans la <Mémoire tampon> le jeu de données actif pour le décalage d'origine des coordonnées de machine. Pour toute coordonnée, cinq valeurs DOUBLE sont fournies pour les valeurs de décalage actives des banques NPV 1...5. Si aucun décalage n'est actif, 0,0 est renvoyé. La sauvegarde des données dans la <Mémoire tampon> se fait comme suit : E Somme des décalages d'ori‐ gine ● Décalage de la 1ère coordonnée, banque 1 ● Décalage de la 1ère coordonnée, banque 2 ● ... ● Décalage de la 1ère coordonnée, banque 5 ● Décalage de la nème coordonnée, banque 1 ● ... ● Décalage de la nème coordonnée, banque 5 DOUBLE, MCODS(100,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> la somme des décalages d'origine actives pour les coordonnées de machine. Pour toute coordonnée, une valeur DOUBLE est fournie. E Si aucun décalage n'est actif, 0,0 est renvoyé. Points d'arrivée des coordon‐ nées d'axe REAL, MCODS(101,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> les points d'arrivée des coordonnées d'axe (ACS) pour le canal indiqué : S 0 < Canal ≤ Canal max. : données du canal défini Noms des broches CHARAC‐ MCODS(102,<Canal>,<Version>,<Mémoire tampon>,<Taille>) TER, tableau Fournit dans la <Mémoire tampon> les noms des broches actives pour le canal indiqué. Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit les don‐ nées des broches du système, sinon les données des broches du canal. E Nombre de broches INTEGER MCODS(103,<Canal>,<Version>,<Mémoire tampon>,<Taille>) Fournit dans la <Mémoire tampon> le nombre de broches pour le canal indiqué. Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit les données des broches du système, sinon les données des broches du canal. E Broche - numéro du système INTEGER, MCODS(104,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> en ordre ascendant (S ou S1, S2, S3 etc.) les numéros de système des broches (numéro de la broche du système). Si <Ca‐ nal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit les données des broches du système, sinon les données des broches du canal. E Broche - numéro de l'axe INTEGER, MCODS(105,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau 426/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Fournit dans la <Mémoire tampon>, en ordre ascendant (S ou S1, S2, S3 etc.), les numéros d'axe des broches. Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit les données des broches du système, sinon les données des broches du canal. E Noms de coordonnées de la machine CHARAC‐ MCODS(106,<Canal>,<Version>,<Mémoire tampon>,<Taille>) TER, ta‐ bleau Fournit dans la <Mémoire tampon> les noms des coordonnées de machine ac‐ tives pour le canal indiqué : d'abord toutes les coordonnées tridimensionnelles, ensuite les pseudo-coordonnées du canal dans le système de coordonnées de la machine. E Nombre de coordonnées de la INTEGER, MCODS(107,<Canal>,<Version>,<Mémoire tampon>,<Taille>) machine tableau Fournit dans la <Mémoire tampon>, en 3 éléments, le nombre de coordonnées/ d'axes pour le canal indiqué. 1. valeur : nombre total des axes du canal E 2. valeur : nombre de coordonnées tridimensionnelles + nombre de pseudo-co‐ ordonnées du canal dans le système de coordonnées de la machine 3. valeur : nombre de pseudo-coordonnées du canal dans le système de coor‐ données de la machine Position réelle de la broche REAL, Fournit dans la <Mémoire tampon> la position réelle des broches actives pour le canal indiqué. Z Coordonnées d'axe dans l'ACS0 MCODS(108,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit la position réelle des broches du système, sinon la position réelle des broches du canal. REAL, MCODS(109,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> les valeurs des coordonnées d'axe (ACS0) pour le canal indiqué. Z Canal = -1 : toutes les coordonnées d'axe 0< Canal ≤ Canal max. : données du canal défini Vitesse de rotation de la bro‐ che DOUBLE, MCODS(110,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> les couples réel et maximal (valeur en pour‐ cent [%]) des broches actives pour le canal indiqué. Z Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit le couple des broches du système, sinon le couple des broches du canal. Ainsi, deux valeurs sont transférées par broche. Voir également la documentation "Commande CN standard", chapitre "Affichage technologique". Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 427/550 Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Puissance de la broche INTEGER, MCODS(111,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau Fournit dans la <Mémoire tampon> les puissances réelle et maximale (valeur en watts [W]) des broches actives pour le canal indiqué. Si <Canal>= -1 ou 0 est transféré, la <Mémoire tampon> fournit la puissance des broches du système, sinon la performance des broches du canal. Z Ainsi, deux valeurs sont transférées par broche. Voir également la documentation "Commande CN standard", chapitre "Affichage technologique". Positionnement du jeu de don‐ DOUBLE, MCODS(112,<Canal>,<Version>,<Mémoire tampon>,<Taille>) nées actif tableau Fournit dans la <Mémoire tampon> le jeu de données actif des positionnements. Six valeurs DOUBLE sont fournies respectivement par plan ou par banque. Si aucun positionnement n'est actif, 0,0 est retourné. Donc, un total de 30 valeurs DOUBLE est transféré. La sauvegarde des données dans la <Mémoire tampon> se fait comme suit : E Banque 1 [X, Y, Z, phi, thêta, psi] Banque 2 [X, Y, Z, phi, thêta, psi] ... Banque 5 [X, Y, Z, phi, thêta, psi] Chemin et nom du tableau de positionnement actif CHARAC‐ MCODS(113,<Canal>,<Version>,<Mémoire tampon>,<Taille>) TER, tableau Fournit dans la <Mémoire tampon> le nom du tableau de positionnement actif dans le <Canal>. S Si aucun tableau n'est actif, 3 espaces blancs sont retournés en tant que chaîne de caractères. Correction de la position de la DOUBLE, MCODS(114,<Canal>,<Version>,<Mémoire tampon>,<Taille>) pièce à usiner tableau Fournit dans la <Mémoire tampon> la correction de position de la pièce à usiner active dans le <Canal>. Six valeurs DOUBLE sont fournies : E [Décalage Xw, décalage Yw, décalage Zw, phi, thêta, psi]. Si aucune correction de la position de la pièce à usiner n'est active, 0,0 est ren‐ voyé. Somme des positionnements DOUBLE, MCODS(115,<Canal>,<Version>,<Mémoire tampon>,<Taille>) tableau 428/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Fonction fournit / REFRESH 1) <Mémoire Syntaxe / description tampon> est du type 2) Fournit dans la <Mémoire tampon> la somme des positionnements actifs dans le <Canal> et de la correction de position de la pièce à usiner. Six valeurs DOUBLE sont fournies : E [Décalage Xw, décalage Yw, décalage Zw, phi, thêta, psi]. Si aucune correction de position de la pièce à usiner et aucun positionnement ne sont actifs, 0,0 est renvoyé. 1) Les données que la commande met à disposition de façon cyclique sont identifiées par "Z". Les données que la commande met à disposition après chaque fin de bloc sont identifiées par "S". Les données que la commande fournit à intervalles irréguliers, suite à une modification, sont identifiées par "E". Les données que la commande fournit immédiatement après la demande sont identifiées par "I". Les données qui ne sont jamais modifiées (il suffit de les demander une fois) sont identifiées par "R". 2) Indique le type de variable requis (INTEGER, REAL, DOUBLE, CHARACTER) pour la <Mémoire tampon>. Si ce n'est pas une variable simple, mais une variable de tableau, qui est nécessaire, le complément "tableau " est indiqué après le type de variable. Fig.7-48: Exemple : Fonctions diverses et syntaxe Fonctions auxiliaires Programme: : N10 M3 S1234 T5678 WAIT 10 DIM GROUPID$(64) 15 DIM SYNTAX$(256) 17 ERSION=0 18 CHAN%=1 20 REM Trouver les numéros de groupe M3 et T 25 SYNTAX$="T M3" +CHR$ 30 ERR_VAR%=MCODS (94,CHAN%,VERSION,GROUPID$,64,SYNTAX$) 31 PRN#(0,"94 Erreur :",ERR_VAR%) 32 PRN#(0,"T M3:",ACS(MID$(GROUPID$,1,1)) ACS(MID$(GROUPID$,2,1))) 33 REM Extraire groupes 2 et 1 36 GROUPID$=CHR$(2)+CHR$(1)+CHR$(0): 37 REM Extraire groupes 2 et 1 50 VEDRSION=0 58 CHAN%=1 60 ERR_VAR%=MCODS(95,CHAN%,VERSION,SYNTAX$,256,GROUPID$) 65 PRN#(0,"95 Erreur :",ERR_VAR%) 70 RN#(0,"Groupe 2 1 : ", SYNTAX$) 71 REM SYNTAX$ contient p.ex. "S1234 M3" MCOPS Appelle via CPL les services de processus Motion Control de la NCS. Cela permet de commander les canaux de la CN. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 429/550 Fonctions CPL Syntaxe générale : MCOPS(<Fct>,<Canal>[[,[<P1>][,[<P2>],[<P3>]]],<P4>]) <Fct> Expression INTEGER. Indique la fonction à exécuter. Toutes les fonctions disponibles sont décrites dans le tableau donné ci-dessous : <Canal> Expression INTEGER. Indique le canal sur lequel la fonction doit agir. <P1> ... <P4> Paramètres optionnels dépendant de <Fct>. Les suc‐ cessions de virgules sont admissibles, mais aucune virgule ne soit se trouver devant une parenthèse fer‐ mante. Fig.7-49: Syntaxe MCOPS Dans les tableaux donnés ci-dessous, quelques constantes INTE‐ GER sont indiquées en tant que paramètres de la syntaxe. Au lieu de ces constantes, vous pouvez également programmer des va‐ riables INTEGER. Dans ce cas pourtant, les valeur indiquées doi‐ vent être affectées à celles-ci lors de l'appel de la fonction. Effet Syntaxe / description Effacement de la course restante : MCOPS(1,<Canal>) Déclenche "Effacement de la course restante" dans le <Canal> programmé : ● Après le déclenchement de la fonction "Effacement de la course restante", tous les blocs CN préparés, y compris le reste du bloc actuel, sont rejetés et traités à neuf. Les blocs CPL ou les pièces CPL ne sont pas pris en compte. Exemple : La variable CPL POS a disposé de la valeur 10 pour la préparation. Le mot CN X[POS] est interprété après "Effacement de la course restante" comme X10, bien que à ce moment POS puisse avoir une valeur tout à fait différente. Les valeurs de correction éventuellement modifiées sont prises en compte. ● Sur l'écran, le point d'arrivée affiché est initialisé sur la position actuelle, ce qui supprime en même temps la course restante affichée. Le <Canal> passe ensuite à l'état "CN prête" (signal d'entrée API iCh_NCReady). ● Après Démarrage CN (signal de sortie API qCh_NCStart), le programme est repris à partir du point d'interruption, compte tenu des nouvelles valeurs de correction. Exemple pour l'utilisation de MCOPS(1,<canal>) : après une modification des tableaux de correction, si les nouvelles valeurs doivent également être valables pour des blocs déjà préparés. Remise à zéro : MCOPS(2,<Canal>[,<Type de remise à zéro>]) 430/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Effet Syntaxe / description Déclenche la "Remise à zéro" dans le <Canal> programmé. Pour déclencher la remise à zéro : <Canal> = -2 ● Le canal n'accepte pas à priori de nouveaux ordres, tels que par exemple la sé‐ lection d'un programme ou la commutation du mode de fonctionnement. ● L'interpolateur est arrêté. ● Les ordres exécutes pour le canal et non encore traités sont rejetés. ● Le programme principal est désélectionné. ● Les paramètres machine modifiés qui ne nécessitent pas la montée en régime sont repris, tels que par exemple le paramètre machine 1020 00001 (commutateur fin de course logiciel). ● Les erreurs et avertissements déclenchés par ce canal sont annulés. ● L'interpolateur est redémarré. ● L'état de mise en service pour la remise à zéro (paramètre machine 7060 00020) est repris, c'est à dire les états modaux correspondants sont activés. ● Le canal émet le signal d'interface 0.2 "Remise à zéro exécutée" et accepte à nouveau de nouveaux ordres. ● <Type de remise à zéro> : Expression INTEGER. Définit le comportement de la fonction. La liste ci-dessous contient tous les sché‐ mas de comportement définis. Un numéro d'identification est affecté à chaque schéma. Pour régler un schéma particulier, le numéro d'indentification corres‐ pondant doit être indiqué dans le <Type de remise à zéro>. Si plusieurs schémas de comportement doivent être combinés, la somme de tous les numéros d'iden‐ tification correspondants doit être transmise à la fonction en <Type de remise à zéro>. Jusqu'à présent, la liste ne contient qu'un élément : Numéro d'identification : 2: La resélection automatique de programme est supprimée, si elle est active. Exemple : ERR_VAR=MCOPS(2,2,2) Remise à zéro dans le 2ème canal sans resélection automatique du programme Chercher bloc : MCOPS(3,<Canal>[,[<Bloc de départ>][,<Bloc d'arrivée>]]) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 431/550 Fonctions CPL Effet Syntaxe / description Déclenche "Chercher bloc" dans le programme principal sélectionné, mais non encore démarré pour le <Canal> programmé : ● <Bloc de départ> et <Bloc d'arrivée> sont transmis en tant qu'expressions STRING. Lors de la recherche du <Bloc de départ> et du <Bloc d'arrivée>, les conventions suivantes sont valables : – Les espaces, <Tab>, <LF> au début d'un bloc CN sont ignorés. – Si le <Bloc de départ> ou le <Bloc d'arrivée> commencent par un chiffre et si l'expression n'est pas trouvée dans le programme dans lequel la recher‐ che est effectué, le système cherche à nouveau l'expression, mais cette foisci avec le caractère "N" précédé. De cette façon, p.ex. "50" trouve également le bloc "N50X100". – Si le <Bloc de départ> ou le <Bloc d'arrivée> se terminent en un chiffre, l'expression n'est trouvée dans le programme dans lequel la recherche est effectuée que si ce premier chiffre n'est pas suivi par un autre chiffre. Exemple : "G1X10" ne trouve pas le bloc CN "G1X100". – Si le <Bloc de départ> ou le <Bloc d'arrivée> se terminent en une lettre, l'expression n'est trouvée dans le programme dans lequel la recherche est effectuée que si cette lettre est suivi par un espace. Exemple : "50A" trouve le bloc CN "50A =1", mais pas le bloc "50A=1". ● Le traitement commence avec le <Bloc de départ> et finit avec le <Bloc d'arrivée>. Si le <Bloc de départ> manque ou ne peut pas être trouvé, l'usinage commence au début du programme. Si le <Bloc d'arrivée> manque ou ne peut pas être trouvé, l'usinage arrête le traitement à la fin du programme. ● L'état CN passe à PRÊTE. Exemple : ERR_VAR=MCOPS(3,2,"N50","N100)" Déclenche "Chercher bloc" dans le canal 2. Le programme principal doit être traité de N50 à N100 compris. Sélectionner un programme ou une MCOPS(4,<Canal>[[,[<Chaîne de caractères>][,[<Bloc de départ>],[<Bloc d'arri‐ chaîne de charactères pour l'intro‐ vée>]]],<Mode de sélection>]) duction manuelle de données : 432/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Effet Syntaxe / description Sélectionne dans le <Canal> programmé un programme pour le traitement ou une chaîne de caractères pour le traitement en mode de fonctionnement "Introduction ma‐ nuelle de données". Pour le <Mode de sélection> = 32768 prédéfinitions sont possibles pour les sous-pro‐ grammes asynchrones. Ils peuvent être connectés, désactivés, réactivés, supprimés et lancés. ● <Chaîne de caractères> : Expression STRING. Suivant le <Mode de sélection>, le système interprète le paramètre en tant que – nom de chemin (y compris nom du programme pièce) d'un programme pièce à sélectionner (100 caractères au maximum), ou – si 32 est indiqué dans le <Mode de sélection> : bloc CN (taille max. de 512 octets, y compris l'octet final 0) qui doit être traité en mode "Introduction manuelle de données", ou – si 32+4096 est indiqué dans le <Mode de sélection> : plusieurs blocs CN qui doivent être traités en mode "Introduction manuelle de données". Plusieurs blocs CN sont séparés par NewLine ("\n", Hex 0x0A). La taille maximale de tous les blocs CN ne doivent pas dépasser 4096 octets, y compris l'octet final 0. – ● si 32768 est indiqué dans le <Mode de sélection> : le nom ou le nom de chemin est indiqué pour l'ordre "SETINT" pour les sous-programmes asyn‐ chrones. Le <Bloc de départ> et le <Bloc d'arrivée> définissent les blocs de départ et d'ar‐ rivé dans le programme pièce pour le traitement. Utilisation comme pour MCOPS(3,..). Si le système interprète la <Chaîne de caractères> en tant qu'in‐ troduction manuelle de données, le <Bloc de départ> et le <Bloc d'arrivée> sont ignorés. Quant aux définitions pour les sous-programmes asynchrones (<Mode de sélec‐ tion>= 32768), le numéro (1 ≤ numéro ≤ 8) est indiqué en tant qu'expression STRING (p.ex. "1") et l'ordre est indiqué dans le <Bloc d'arrivée>. Les ordres pour les sous-programmes asynchrones sont : "SETINT" Connecter "DISABLE" Désactiver "ENABLE" Réactiver "CLRINT" Supprimer "START" Lancer ● <Mode de sélection> : Expression INTEGER. Définit le comportement de la fonc‐ tion. La liste ci-dessous contient tous les schémas de comportement définis. Un numéro d'identification est affecté à chaque schéma. Pour régler un schéma par‐ ticulier, ce numéro d'indentification doit être transmis dans <Mode de sélection>. Si plusieurs schémas de comportement doivent être combinés, la somme de tous les numéros d'identification correspondant doit être transmise à la fonction en <Mode de sélection>. Si le <Mode de sélection> 2 (Attendre jusqu'à ce que l'état CN passe à PRÊTE) est défini et si le programme à sélectionner n'existe pas ou n'est pas exécutable, le message d'erreur 6 est renvoyé. Dans tous les autres cas, il n'est pas vérifié, si le programme est exécutable. La fonction fournit 0 (aucune d'erreur n'est sur‐ venue). Seule la liaison subséquente génère l'erreur d'exécution correspondante. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 433/550 Fonctions CPL Effet Syntaxe / description 1 Le système effectue une exécution de liaison lors de la sélection. Si elle n'existe pas encore, un ta‐ bleau de liaison est générée pour le programme principal sélectionné. Les tableaux de liaison sont requis, si les appels de sous-programmes ou les instructions CPL existent dans le programme. 2 Le système n'acquitte l'autorisation d'une sélec‐ tion qu'une fois l'état CN passé à PRÊTE. Nor‐ malement, la sélection est aquittée sans attente de l'état CN PRÊTE. 32 Le système interprète la <Chaîne de caractères> comme un bloc d'introduction manuelle. Voir éga‐ lement le numéro d'identification 128. 64 Avant que la fonction ne sélectionne le program‐ me indiqué ou le bloc d'introduction manuelle indiqué, un programme actif ou une introduction manuelle de données active est désélection‐ né(e). 128 Un bloc d'introduction manuelle est lancé immé‐ diatement. On distingue 2 cas : ● Le <Canal> n'est pas actif : le bloc est traité en tant que bloc d'introduc‐ tion manuelle normal. ● Le <Canal> est déjà actif : le bloc est immédiatement traité en tant que fonction de commutation. Concernant les restrictions, voir le numéro d'identification 1024. 256 Condition préalable afin de déplacer les axes en mode de fonctionnement "JOG" ou si des mou‐ vements doivent être effectués dans le mode de fonctionnement "JOG en coordonnées de la piè‐ ce à usiner". 512 Condition préalable pour démarrer les axes en mode de fonctionnement "Approche du point de référence". 1024 Fonction de commutation. Agit en combinaison avec le numéro d'identification 128. Un bloc d'in‐ troduction manuelle est traité en parallèle avec le <Canal>. Dans les blocs d'introduction manuelle pourtant, seuls les fonctions auxiliaires et les mouvements d'axes asynchrones sont admissi‐ bles. 2048 Un programme déjà actif est révoqué par le nou‐ veau programme sélectionné. De ce fait, tous les états modaux sont conservés. En cas d'introduc‐ tion manuelle des données, l'ancienne chaîne de caractères est révoquée par la nouvelle. 434/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Effet Syntaxe / description 4096 La définition de blocs CN bufférisée agit en com‐ binaison avec le numéro d'identification 32. Tan‐ dis que les blocs précédents sont encore traités, de nouveaux blocs peuvent déjà être définis. 32768 Ce drapeau permet de piloter les sous-program‐ mes asynchrones (voir <Bloc de départ> et <Bloc d'arrivée>). Exemple : ERR_VAR=MCOPS(4,1,"sekt.cnc","N50","N100",1) Sélection de programme de "sekt.cnc" dans le canal 1, y compris la recherche de blocs et la liaison. ERR_VAR=MCOPS(4,1,/usr/"user/p1.cnc") Sélection de programme de" p1.cnc" dans le canal 1, sans recherche de blocs et liaison. ERR_VAR=MCOPS(4,1,"F1000G1X500",,,32) Sélectionne dans le canal 1 le bloc "F1000G1X500" en mode Introduction manuelle de données. Désélection du programme : MCOPS(5,<Canal>,<Mode de désélection>) Sélectionne dans le <Canal> programmé un programme préalablement sélectionné ou un bloc d'introduction manuelle préalablement sélectionné. ● <Mode de désélection> : Expression INTEGER. Définit le comportement de la fonction. La liste ci-dessous contient tous les schémas de comportement définis. Un nu‐ méro d'identification est affecté à chaque schéma. Pour régler un schéma parti‐ culier, le numéro d'indentification correspondant doit être indiqué dans le <Mode de désélection>. Si plusieurs schémas de comportement doivent être combinés, la somme de tous les numéros d'identification correspondants doit être transmise à la fonction en <Mode de désélection>. Jusqu'à présent, la liste ne contient qu'un numéro d'identification : 2: Si la resélection automatique de programme est active, elle peut être supprimée par la valeur 2 dans cette désélection de programme. Exemple : ERR_VAR=MCOPS(5,2,2) Désélection de programme dans le canal 2 sans resélection automatique du programme. Lancer le programme : MCOPS(6,<Canal>) Désélectionne dans le <Canal> programmé un programme préalablement sélectionné ou un bloc d'introduction manuelle préalablement sélectionné. Définir le mode de fonctionnement : MCOPS(7,<Canal>,<Mode de fonctionnement>) Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 435/550 Fonctions CPL Effet Syntaxe / description Définit un mode de fonctionnement dans le <Canal> programmé. ● 1 <Mode de fonctionnement> : Expression INTEGER. Définit le mode de fonction‐ nement à sélectionner. Mode JOG : Les axes peuvent être déplacés en mode JOG (+/-). Voir également MCOPS(4..) sous <Mode de sélection> : numéro d'identification 256. 2 Approche du point de référence : Les axes peuvent être démarrés à l'aide des si‐ gnaux "Manuel+" / "Manuel-". Voir également MCOPS(4..) sous <Mode de sélection> : numéro d'identification 512. 4 Introduction manuelle de données : Les blocs CN séparés peuvent être définis pour l'usinage. 5 Automatique (Bloc suivant) : Les programmes pièce sont complètement exé‐ cutés. 6 Automatique (Bloc programmé) : Les blocs séparés d'un programme pièce sont exécutés l'un après l'autre. Tout bloc séparé est préparé par Démarrage CN et lancé. 7 Automatique (Pas unique) : A partir d'un seul bloc CN dans le programme pièce, la CN peut éventuellement générer et pro‐ grammer plusieurs blocs. Dans ce mode de fonc‐ tionnement, Démarrage CN transmet toujours un bloc séparé à l'interpolateur pour le traitement. 10 Automatique (Bloc unique) : Tous les blocs générés et préparés à partir d'un bloc CN séparé dans le programme pièce sont transmis par Démarrage CN à l'interpolateur pour traitement. 11 Redémarrage : Les axes peuvent être éloignés manuellement du contour, et rapprochés automatiquement ou ma‐ nuellement. 12 Débogueur CPL : Les blocs séparés, tels qu'ils sont inscrits dans le programme pièce, sont exécutés individuelle‐ ment. 13 Débogueur CPL : Tous les blocs jusqu'au prochain point d'interrup‐ tion sont exécutés. 14 Mode JOG : Mouvement en coordonnées de la pièce à usiner. 436/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Effet Syntaxe / description La modification du mode de fonctionnement n'est possible que dans les conditions sui‐ vantes : ● le signal d'interface du canal "qCh_OpModePlc" (mode de fonctionnement de l'API) ne doit pas être initialisé. ● aucun programme ou bloc n'est sélectionné au niveau de la CN. - ou la commutation ne doit être effectuée qu'entre les modes de fonctionnement au‐ tomatiques, Bloc suivant, Bloc de programme, Pas séparé ou Bloc séparé. Exemple : ERR_VAR=MCOPS(7,2,5) Changement du mode de fonctionnement dans le 2ème canal en mode automatique (Bloc suivant). Modifier la stratégie de redémarra‐ ge : MCOPS(8,<Canal>,<Comment>,<Vers où>) Définit la stratégie de redémarrage dans le <Canal> programmé. ● <Comment> : Expression INTEGER. Indique si le 1: Redémarrage automatique 2: Redémarrage avec bloc séparé, ou 3: Redémarrage manuel est souhaité. ● <Vers où> : Expression INTEGER. indique si lors du redémarrage, le déplacement s'effectue 1: vers le point de départ, 2: vers le point d'arrivée, ou 3: vers le point d'interruption. Terminer l'enregistrement de redé‐ marrage : MCOPS(9,<Canal>) Termine l'enregistrement de redémarrage dans le <Canal> programmé. Les mouve‐ ments en mode JOG ne sont alors plus enregistrés. Fig.7-50: 7.14.4 Syntaxe MCOPS Exemples de programmation Exemple 1 : Demander immédiatement l'état SAV et l'état d'interpolation du canal 2 10 DIM BUF%(2) Créer un tableau. 20 VERSION=0 Fournir immédiatement les don‐ nées. 30 ERR_VAR%=MCODS(32,2,VERSION,BUF%, 2) Appel de fonction. L'état SAV est inscrit dans BUF%(1), l'état IPO dans BUF%(2). VERSION contient le numéro de version actuel des données (important pour exemple 2). Beispiel 2: Warten, bis SAV-Zustand von Kanal 2 auf "Inaktiv" wechselt <Code von Beispiel 1> Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 437/550 Fonctions CPL Programme: . 10 20 30 40 Exemple 3 : INAKTIV = 1 WHILE BUF%(1) <> INAKTIV DO ERR_VAR% = MCODS(32,2,VERSION,BUF%,2) END Affichage des noms d'axe dans la fenêtre MSG Programme: : 30 VERSION=0 40 DIM AXNAME$(512) 50 REM Appeler tous les noms d'axe 60 ERR=MCODS(33,-1,VERSION,AXNAME$,512) 70 IF ERR=0 THEN 80 REM Déterminer le nombre d'axes 90 DIM AXNMB%(3) 100 VERSION=0 110 ERR=MCODS(45,-1,VERSION,AXNMB%,3) 120 ANZ=AXNMB%(2) 130 ENDIF 140 IF ERR<>0 THEN 150 PRN#(0,"Erreur survenue : ",ERR) 160 ELSE 170 REM Affichage des noms d'axe 180 FOR I%=0 TO (ANZ-1) 190 NAME$=MID$(AXNAME$,I%*9+1,8) 200 IF ASC(NAME$)<>0 THEN 210 REM Nom d'axe est défini 220 PRN#(0,I%+1,". Nom d'axe : ",NAME$) 230 ENDIF 240 NEXT 250 ENDIF N260 M30 Exemple 4 : Canal/État d'attente Programme: 10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 200 210 220 230 240 250 260 270 M30 CHAN%=1 VERSION%=0 STATES%=0 ERR=MCODS(87,CHAN%,VERSION%,STATES%,1) IF ERR=0 THEN MASKE%=1 WHILE MASKE% <= STATES% DO CASE (STATES% AND MASKE%) OF LABEL 1:PRN#(0,"Temporisation") LABEL 2:PRN#(0,"Fonction auxiliaire avec acquittement obligatoire") LABEL 4:PRN#(0,"Blocage d'enregistrement") LABEL 8:PRN#(0,"Avance dans le canal égale à 0") LABEL 16:PRN#(0,"Arrêt du programme avec M0/M1") LABEL 32:PRN#(0,"Arrêt d'avance dans le canal") LABEL 64:PRN#(0,"Blocage d'avance dans le canal ou dans un axe de canal") LABEL 128:PRN#(0,"Blocage d'enregistrement défini par le client") LABEL 256:PRN#(0,"Arrêt de mouvement synchronisé entre canaux (ASTOP, ...)") LABEL 512:PRN#(0,"Attente d'axe durant le remplacement des axes (G511)") LABEL 1024:PRN#(0,"Attente de la variable permanente (WPV)") LABEL 2048:PRN#(0,"Attente du signal d'interface au moment actif (WAITA, ...)") LABEL 4096:PRN#(0,"Attente du signal IF (WAIT(BITIF(...))) ou") PRN#(0," (WAIT(,ZEIT%)) dans la préparation de bloc") LABEL 8192:PRN#(0,"Service de données Motion Control (MCODS(...))") ENDCASE MASKE%=MASKE%*2 END ENDIF Exemple 5 : Attribution axe - canal 438/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Programme: 10 REM Le programme interroge le nombre d'axes du système 15 REM et les numéros d'axes des axes du canal. Avec ces 20 REM informations, les axes du canal sont d'abord déplacés sur 30 REM position 0 et ensuite sur position <Numéro du 40 REM canal>. 50 CHAN%=SD(8) : REM Numéro de canal 60 IDCHAX%=43 : REM Type de fonction pour l'affectation axe - canal 70 IDMAXAX%=45 : REM Type de fonction pour nombre d'axes 80 DIM BUF%(16) : REM Mémoire tampon pour l'affectation axe - canal 90 SIZE%=16 100 ANZ%=0 : REM Index max. des axes du système 120 REM Déterminer les axes de canal du canal actif 130 VERSION=0 140 ERR=MCODS(IDCHAX%,CHAN%,VERSION,BUF%,SIZE%) 150 IF ERR=0 THEN 160 VERSION=0 170 ERR=MCODS(IDMAXAX%,CHAN%,VERSION,ANZ%,1) 180 IF ERR=0 THEN 190 FOR I%=1 TO ANZ% 200 IF BUF%(I%) = CHAN% THEN N210 F1000 [AXP(I%,0,0)]; Déplacer les axes du canal sur 0 220 ENDIF 230 NEXT 240 FOR I%=1 TO ANZ% 250 IF BUF%(I%) = CHAN% THEN N260 M0 N270 WAIT N280 F1000 [AXP(I%,CHAN%,0)]; Déplacer les axes canal sur CHAN% 290 ENDIF 300 NEXT 310 ENDIF 330 ENDIF N310 M30 7.15 Traitement des chaînes de caractères 7.15.1 Généralités Pour traiter des chaînes de caractères (STRINGS) dans CPL, celles-ci doivent être enregistrées dans un tableau unidimensionnel ( ARRAY) de variables CHARACTER indexées. Chaque variable CHARACTER dans ce tableau est adressée au moyen d'un index et peut contenir exactement 1 caractère. Les ordres CPL MID$, LEN, INSTR, ASC, STR$, VAL et TRIM$ sont disponibles pour le traitement des chaînes de caractères. 7.15.2 Dimensionnement des chaînes de caractères DIM Pour créer un tableau, il faut indexer une variable CHARACTER à l'aide de l'instruction DIM. De cette manière, il est possible de créer des tableaux de caractères d'une capacité maximale de 1024 caractères (plage de valeurs de l'index : 1 à 1024). Si la plage de valeurs n'est pas respectée, le message d'erreur "LIMITE DE TABLEAU INVALIDE" est émis. Exemple : 1 DIM VWX$(14) En l'occurrence, le tableau VWX$ composé de 14 variables CHARACTER in‐ dividuelles est créé. Il est ainsi possible d'enregistrer dans VWX$ des chaînes de caractères ayant une longueur maximale de 14 caractères. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 439/550 Fonctions CPL Exemple : 7.15.3 1 DIM ABC$(1) Tableau pour une chaîne de caractères ayant une lon‐ gueur maximale de 1 caractère. 2 DIM BCDE$(10) Tableau pour une chaîne de caractères ayant une lon‐ gueur maximale de 10 caractères. Lire les caractères dans une chaîne de caractères MID$ Cette fonction extrait des parties d'une expression STRING. Le résultat peut être transmis à une variable CHARACTER dimensionnée ou non dimension‐ née : ● Une variable CHARACTER dimensionnée contient le STRING partiel complet déterminé par l'ordre MID. ● Une variable CHARACTER non dimensionnée contient uniquement l'adresse de départ et la longueur du STRING partiel déterminé. Si l'ex‐ pression STRING, à partir de laquelle le STRING partiel a été extrait, la variable CHARACTER non dimensionnée est également modifiée de ma‐ nière correspondante. Si un enchaînement a lieu au sein de l'ordre MID (p. ex. MID$(A$+B$,2,3)), le résultat ne doit être attribué qu'à un seul tableau. Syntaxe : MID$ (<Expression STR>,<Point de départ>[,<Nombre de caractères>]) <Expression STR> Expression STRING à partir de laquelle les parties doi‐ vent être extraites. <Point de départ> Détermine la position au sein du tableau <Expression STRING> à partir de laquelle les caractères doivent être extraits. <Nombre de caractères> Détermine le nombre de caractères qui sont extraits. Si le <Nombre de caractères> n'est pas programmé, tous les caractères jusqu'à la fin du tableau sont extraits. Fig.7-51: Syntaxe MIDS$ La plage de valeurs pour le 2ème et le 3ème paramètre inclut des valeurs en‐ tières entre 1 et 1024. Si la plage de valeurs n'est pas respectée, le message d'erreur "Paramètre invalide" est émis. Si une partie du tableau qui n'est pas encore affectée est accédée, "NUL" est renvoyé. Exemple : Programme: 1 2 3 4 5 6 7 8 7.15.4 DIM A$(10 DIM B$(5) A$="ABCDEFGHIJ" B$=MID$(A$,2,5) C$=MID$(A$,2,5) REM Les variables B$ ont C$ le même contenu : BCDEF A$="QRSTUVWXYZ" REM La variable B$ a le contenu : BCDEF La variable C$ a le contenu : RSTUV Modification des chaînes de caractères MID$ L'instruction MID$ écrase des parties d'un tableau de caractères. 440/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Syntaxe : MID$ (<Tableau>,<Point de départ>[,<Nombre de caractères>]) <Tableau> Tableau de caractères dans quelques parties doivent être écrasées. <Point de départ> Détermine la position au sein du <Tableau> à partir de laquelle des caractères doivent être extraits. La valeur du <Point de départ> peut dépasser le nombre de com‐ posantes affectées jusqu'à présent (longueur) de 1 au maximum. <Nombre de caractères> Détermine le nombre de caractères qui sont extraits. Si le <Nombre de caractères> n'est pas programmé, tous les caractères affectés sont entrés dans le <Tableau> dans la mesure où le dimensionnement du tableau le permet. Fig.7-52: MID$ - Modification des chaînes de caractères La plage de valeurs pour le 2ème et le 3ème paramètre va de 1 à 1024. Si la plage de valeurs n'est pas respectée, le message d'erreur "PARAMÈTRE IN‐ VALIDE" est émis. Exemple : 1 DIM A$(10) 2 A$="ABC" Longueur de A$ est 3. 3 MID$(A$,4,3)="DEF" Les composantes 4 à 6 du tableau sont écrites. Cela est permis, car les trois premières composantes sont déjà affectées. Exemple : 1 DIM A$(10) 2 A$="ABC" Longueur de A$ est 3. 3 MID$(A$,5,3)="DEF" On tente d'écrire les composantes 5 à 7 du tableau. Cela entraîne toutefois l'émission du message d'erreur "TABLEAU NON AFFECTÉ", car la 4ème com‐ posante n'a pas encore été affectée. Si plus de caractères sont affectés que permis par la longueur maximale du tableau, ces caractères sont rejetés. 7.15.5 Longueur d'une chaîne de caractères LEN Syntaxe : LEN (<Expression STRING>) Fournit le nombre de caractères d'une <Expression STRING>. Le résultat est une valeur INTEGER. Si l'<Expression STRING> est vide, LEN renvoie la valeur 0. Si l'<Expression STRING> n'est pas définie, LEN renvoie la valeur -1. Exemple : 1 DIM XYZ$(10) 2 XYZ$="ABC" 3 I%=LEN(XYZ$) La variable INTEGER I% a la valeur 3. 4 XYZ$=" “ 5 J%=LEN(XYZ$) La variable INTEGER J% a la valeur 0. 6 XYZ$=NUL 7 K%=LEN(XYZ$) La variable INTEGER K% a la valeur -1 Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 441/550 Fonctions CPL 7.15.6 Recherche d'une chaîne de caractères INSTR Syntaxe : INSTR (<Chaîne de caractères>,<Expression STRING>[,<Point de dé‐ part>]) Parcourt une <Expression STRING> à partir du <Point de départ> après une <Chaîne de caractères> et indique la position du premier caractère de la <Chaîne de caractères> trouvée dans l'<Expression STRING> en tant que va‐ leur INTEGER. Si la <Chaîne de caractères> n'est pas trouvée, la valeur 0 est affichée. La <Chaîne de caractères> peut être programmée comme expression STRING. La plage de valeurs pour le le 3ème paramètre va de 1 à 1024. Si la plage de valeurs n'est pas respectée, le message d'erreur "PARAMÈTRE INVALIDE" est affiché. Exemple : 1 DIM A$(8) 2 DIM B$(16) 3 A$="A" : MID$(A$,2)="UVWXYZ" 4 B$="ABCDEF UVWXYZ GH" 7.15.7 5 POS1%=INSTR(MID$(A$,2),B$,4) La variable INTEGER POS1% a la va‐ leur 8. 6 POS2%=INSTR(MID$(A$,2,4),B$,10) La variable INTEGER POS2% a la va‐ leur 0. 7 POS3%=INSTR(MID$(A$,2),B$) La variable INTEGER POS3% a la va‐ leur 8. Chaînes de caractères et nombres ASC Syntaxe : ASC(<Chaîne de caractères) Donne le nombre ordinal du premier caractère (code ASCII) de la <Chaîne de caractères> comme valeur INTEGER. Si la <Chaîne de caractères> est vide ou n'est pas définie, ASC renvoie -1. La <Chaîne de caractères> doit être une expression STRING. ASC est l'inversion de CHR$. Exemple : 10 DIM A$(1) 20 A$ = "ABC" 30 B$ = "BCD" 40 I% = ASC(A$) La variable INTEGER I% a la valeur 65. 50 J% = ASC(B$) La variable INTEGER J% a la valeur 66. 60 A$ = "" 70 K% = ASC(A$) La variable INTEGER K% a la valeur -1. 80 A$ = NUL 90 L% = ASC(A$) La variable INTEGER L% a la valeur -1. CHR$ CHR$ est l'inversion d'ASC. 442/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Syntaxe : CHR$(<Expression INTEGER>) Transforme l'<Expression INTEGER> en le caractère ASCII correspondant. Dans l'annexe de ce manuel, vous trouverez toutes les valeurs décimales des caractères ASCII dans le tableau "Jeu de caractères ASCII". Exemple : 10 DIM A$(1) 20 I% = 65 40 A$ = CHR$(I%) La variable STRING A$ a la valeur 65. STR$ Syntaxe : STR$ ([<Chaîne de caractères de format>,]<Valeur>) Transforme l'expression numérique <Valeur> en une chaîne de caractères qui ne peut être affectée qu'à un seul tableau. L'affectation à une variable STRING entraîne une erreur de durée d'exécution. La <Valeur> peut être une expression REAL ou INTEGER simple ou double précision. Si la <Chaîne de caractères de format> est programmée, la chaîne de carac‐ tères peut être éditée de manière formatée. Les chiffres sont représentés par les "#" et les points décimaux par ".". Si aucune <Chaîne de caractères de format> n'est programmée, l'affichage se fait dans le format standard. Formats standard : Exemple : Nombre INTEGER 9 chiffres Nombre REAL simple précision 4 chiffres avant et 3 chiffres après la virgule Nombre REAL double précision 9 chiffres avant et 6 chiffres après la virgule 10 DIM A$(50) 20 DIM B$(21) 30 A$=STR$("Chiffre=##.###",(37/3) Contenu du tableau A$ : "nombre = 12.333 " 40 B$=STR$(2.5) Contenu du tableau B$ : "2.500" VAL Syntaxe : VAL(<Expression STRING>) Fournit la valeur numérique de l'<Expression STRING>. Si un autre caractère qu'un espace de tête, les caractères de tête "+" ou "-", les chiffres 0 à 9 et le point décimal "." est compris dans la chaîne de caractères, la transformation est réalisée jusqu'à ce (autre) caractère. Les espaces de tête sont, comme les zéros de tête, ignorés pour la création des valeurs. Si aucun des caractères mentionnés ci-dessus n'apparaît, "NUL" est renvoyé. Si un point décimal est compris dans la chaîne de caractères, le résultat ne doit être affecté qu'à une variable REAL ou à une variable REAL double précision. Dans ce cas, une affectation à une variable INTEGER entraîne l'émission du message d'erreur "AFFECTATION INVALIDE". Exemple : 1 I% = VAL("1.23DE") 2 K% = VAL("123DE") 3 J% = VAL("ABC") 4 R = VAL("-1.23DE") 5 Z = VAL("+ 000001234TEST4365") Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 443/550 Fonctions CPL 6 X = VAL("ABC1.23DE") 7 D! = VAL("1234567.234567") La ligne 1 déclenche un message d'erreur, car l'attribution doit se faire à une variable INTEGER. La valeur de la variable INTEGER K% est de 123. Les chiffres 1,2,3 sont convertis en un nombre INTEGER. Le caractère "D" interrompt la conversion, car il ne peut pas faire partie d'un nombre INTEGER. Les caractères suivants ne sont pas traités. La valeur de la variable INTEGER"J%" est NUL ; la variable n'est pas affectée. Le caractère "A" interrompt le traitement de l'<Expression STRING>. La valeur de la variable REAL "R" est de -1,23. Le caractère "-" est reconnu comme signe du nombre REAL. Le chiffre 1, le caractère ".", les chiffres 2 et 3 sont convertis en un nombre REAL. Le caractère "D" interrompt la conversion, car il ne peut pas faire partie d'un nombre REAL. Le caractère "E" ne sera pas traité. La valeur de la variable REAL "Z" est 1234. Le caractère "+" est reconnu comme signe pour le nombre REAL. Les espaces de queue sont, comme les zéros de tête, ignorés pour la création des valeurs. Les chiffres 1, 2, 3 et 4 sont convertis en un nombre REAL. Le caractère "T" interrompt la conversion, car il ne peut pas faire partie d'un nombre REAL. Les caractères restants ne sont pas traités. La variable REAL "X" est NUL, autrement dit elle n'est pas affectée. La recon‐ naissance du caractère "A" entraîne une interruption de la conversion. La valeur de la variable REAL double précision "D!" est 1234567.234567. 7.15.8 Suppression d'espaces de tête ou de queue TRIM$ Syntaxe : TRIM$(<Chaîne de caractères>) TRIM$(<Chaîne de caractères> ,"L") TRIM$(<Chaîne de caractères> ,"R") Lors de l'attribution d'une plage du tableau à une variable STRING ou à un tableau, "TRIM$()" fournit une chaîne de caractères sans espace de tête (→ Index L) ou de queue (→ Index R). La fonction "TRIM" sans index masque aussi bien les espaces de tête que les espaces de queue. Si un enchaînement a lieu au sein de l'ordre TRIM (par ex. TRIM$(A$+B$)), le résultat ne doit être attribué qu'à un seul tableau. Exemple : 1 A$ = " ABCDEF " 2 B$ = TRIM$(A$,"L") 3 C$ = TRIM$(A$,"R") 4 D$ = TRIM$(A$) 5 PRN#(1,">",A$,"<") 6 PRN#(1,">",B$,"<") 7 PRN#(1,">",C$,"<") 8 PRN#(1,">",D$,"<") mène dans le fichier avec le numéro logique 1, ouvert pour l'édition, aux lignes suivantes : > ABCDEF < >ABCDEF < > ABCDEF< 444/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL >ABCDEF< 7.15.9 Exemples de programmation Il est possible d'attribuer une expression STRING à une variable STRING. Exemple : Programmation des variables STRING (sans dimensionnement préalable) 1 A$="ABCDE" 2 B$=CHR$(10) En cas d'accès en lecture, il est possible d'accéder à des parties de la variable STRING au moyen de l'ordre MID$ : 1 A$="ABCDEFGHIJKLMN" 2 B$=MID$(A$,2,1) 3 C$=MID$(A$,4,4) Les programmations suivantes entraînent des erreurs : 4 MID$(A$,1,4)="ABCD" 4 A$=MID$(A$,1,3) + MID$(A$,4,1) 4 A$=B$ + A$ Pour le traitement subséquent d'un tableau dimensionné, il est nécessaire d'accéder à un caractère ou à plusieurs caractères se succédant. Ce n'est qu'ainsi qu'il est possible d'affecter un tableau ou une partie du tableau à une variable STRING ou à un autre tableau. L'accès en lecture et en écriture à une partie du tableau est effectué via l'ordre MID$. Si seul le nom du tableau est indiqué, l'ensemble du tableau est adressé. Exemple : Lecture d'un tableau Si on veut accéder au <n>ème caractère du tableau, procéder de la manière suivante (n est inférieur ou égal à la longueur du tableau et au nombre de ca‐ ractères du tableau) : 1 DIM VWX$(13) 2 VWX$="TEST TEST TES" 3 A$ = MID$(VWX$,12,1) 4 I%=12 5 A$=MID$(VWX$,I%,1) Le 12ème caractère ("E") du tableau VWX$ est affecté à la variable STRING A$. Exemples : Ecriture d'un champ de caractères Si le contenu d'une variable STRING doit être transmis au tableau ou à une partie du tableau, il faut modifier l'affectation. Exemple : Ecriture partielle d'un tableau 1 DIM XYZ$(15) 2 B$="ABCDE" 3 MID$(XYZ$,1,5)=B$ 4 MID$(XYZ$,6,5)=B$ Le contenu de la variable STRING B$ est affecté aux caractères 1 à 10 du tableau XYZ$. La programmation suivante entraînera le message d'erreur "TABLEAU NON AFFECTÉ", car les caractères 1 à 5 du tableau ne sont pas encore affectés : 1 DIM XYZ$(15) 2 B$="ABCDE" Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 445/550 Fonctions CPL 4 MID$(XYZ$,6,5)=B$ Exemple : Ecriture partielle d'un tableau 1 DIM XYZ$(100) 2 B$="ABCDE" 3 MID$(XYZ$,1,10)=B$ Contenu de la variable STRING B$ : "ABCDE" Contenu de la variable de ta‐ "ABCDE" bleau XYZ$ : La variable de tableau a la longueur 5. Les 95 caractères restants ne sont pas occupés. Si la longueur de la variable STRING est inférieure au tableau, le tableau XYZ $ n'est alors écrit que sur la longueur de la variable STRING. En cas d'affec‐ tation du tableau à une variable STRING, ce n'est pas l'ensemble du tableau déterminé par l'instruction DIM qui est affecté, mais uniquement la plage écrite auparavant (→ Longueur du tableau). Exemple : 1 DIM XYZ$(100) 3 MID$(XYZ$,1,10)="ABCDE" 4 MID$(XYZ$,6,3)="T" Après le bloc 3, le contenu de la variable de tableau XYZ$ est : "ABCDE". La variable de tableau a la longueur 5. Les 95 caractères restants ne sont pas occupés et ne sont donc pas pris en compte pour la longueur. Après le bloc 4, le contenu de la variable de tableau XYZ$ est : "ABCDET". La variable de tableau a maintenant la longueur 6. Les 94 caractères restants ne sont pas occupés et ne sont donc pas pris en compte pour la longueur. Exemple : Effacement d'un tableau 1 DIM XYZ$(100) 3 MID$(XYZ$,1,10)="1234567890" 4 MID$(XYZ$,3,3)="T" Après le bloc 3, le contenu de la variable de tableauXYZ$ est "1234567890". La variable de tableau a la longueur 10. Après le bloc 4, le contenu de la variable de tableau XYZ$ est "12T4567890". La variable de tableau a la longueur 10. Le caractère "3" est écrasé par "T". Les caractères "4" et "5" sont conservés. Exemple : Accès interdit au tableau 1 DIM XYZ$(100) 3 MID$(XYZ$,1,6)="ABCDEF" 5 MID$(XYZ$,9,5)="TESTE" Après le bloc 3, le contenu de la variable de tableau XYZ$ est "ABCDEF". La variable de tableau a la longueur 6. Après le bloc 5, on a tenté d'affecter une constante aux composantes 9 à 13 du tableau. Cela entraîne toutefois l'émission du message d'erreur "TABLEAU NON AFFECTÉ", car la 7ème et la 8ème composante n'ont pas encore été affectées. 446/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL Si on veut accéder au tableau complet, il suffit d'indiquer le nom de variable. 7.15.10 Affectation d'une expression STRING à un tableau Si l'expression STRING contient moins de caractères que la plage sélectionnée du tableau, la plage restante est considérée comme non occupée. Cette plage restante n'est pas prise en compte pour la longueur du tableau. Exemple : 1 DIM XYZ$(16) 2 XYZ$=" " Contenu du tableau XYZ$ : " " Longueur du tableau XYZ$ : 1 Si, lors de l'attribution, la longueur de l'expression STRING dépasse la longueur maximale du tableau, les caractères en excédent son rejetés. Exemple : 1 DIM XYZ$(3) 2 XYZ$="ABCDEF" Contenu du tableau XYZ$ : "ABC" Longueur du tableau XYZ$ : 3 ---> Longueur maximale Exemple 1 DIM XYZ$(16) 2 A$="DAS " 3 B$="IST EIN TEST" 4 C$="UN U" 5 MID$(XYZ$,1,4)=A$ CONTENU DU TABLEAU Programme: ----------------------------------------------------------------| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |10 |11 |12 |13 |14 |15 |16 | ----------------------------------------------------------------| | | | | | | | | | | | | | | | | | D | A | S | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ----------------------------------------------------------------| Longueur = 4 | Zone non affectée | 6 MID$(XYZ$,5,6)=B$ CONTENU DU TABLEAU Programme: ----------------------------------------------------------------| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |10 |11 |12 |13 |14 |15 |16 | ----------------------------------------------------------------| | | | | | | | | | | | | | | | | | D | A | S | | I | S | T | | E | I | | | | | | | | | | | | | | | | | | | | | | | | ----------------------------------------------------------------| Longueur = 10 |Zone non affectée 7 MID$(XYZ$,5,12)=B$ CONTENU DU TABLEAU Programme: ----------------------------------------------------------------| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |10 |11 |12 |13 |14 |15 |16 | ----------------------------------------------------------------| | | | | | | | | | | | | | | | | Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 447/550 Fonctions CPL | D | A | S | | I | S | T | | E | I | N | | T | E | S | T | | | | | | | | | | | | | | | | | | ----------------------------------------------------------------| Longueur= 16 ; Zone est complètement affectée | 8 MID$(XYZ$,9,8)=C$ CONTENU DU TABLEAU Programme: ----------------------------------------------------------------| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |10 |11 |12 |13 |14 |15 |16 | ----------------------------------------------------------------| | | | | | | | | | | | | | | | | | D | A | S | | I | S | T | | E | I | N | | T | E | S | T | | | | | | | | | | | | | | | | | | ----------------------------------------------------------------| Longueur= 16 ; Zone est complètement affectée | 9 XYZ$=MID$(XYZ$,1,4) CONTENU DU TABLEAU Programme: ----------------------------------------------------------------| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |10 |11 |12 |13 |14 |15 |16 | ----------------------------------------------------------------| | | | | | | | | | | | | | | | | | D | A | S | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ----------------------------------------------------------------| Longueur = 4 | Zone non affectée | Le tableau est coupé. 7.15.11 Comparaisons des expressions STRING Exemple : Il est également possible de comparer les expressions STRING, c'est-à-dire les constantes STRING, les variables STRING et les tableaux les uns avec les autres. 1 DIM A$(10) 2 DIM B$(15) 3 A$="ANTON" 4 B$= "WILLI" 5 C$="ABCDE" 6 D$="VWXYZ" 7 IF A$ < B$ THEN ... 8 IF MID$(A$,2,3) = MID$(B$,1,3) THEN ... 9 Z?=A$ <> "TESTE" 10 IF "A" <= "C" THEN ... 11 IF C$ > D$ THEN ... 12 IF A$ = C$ THEN ... 13 IF "TE" < MID$(D$,2,2) THEN ... Les contenus des expressions STRING sont contrôlés en ce qui concerne l'or‐ dre alphabétique selon le codage des caractères ASCII. 448/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL 7.15.12 Enchaînement des expressions STRING L'enchaînement de plusieurs expressions STRING peut être effectué à l'aide du signe "+". Le résultat doit être affecté à un tableau. La profondeur d'imbri‐ cation pour l'enchaînement des expressions STRING est de 3. Si elle est dépassée, le message d'erreur "ERREUR D'EXÉCUTION 2153 – IMBRICA‐ TION TROP PROFONDE" est émis. Exemple : Enchaînement également au sein des ordres CPL 1 DIM A$(3) 2 DIM B$(3) 3 A$ = "ABC" 4 B$ = "DEF" 5 C$ = "GH" 6 D$ = "JKL" 7 OPENW(1,"P2",130,"TEST ENCHAÎNEMENT",10) 8 PRN#(1,A$+B$) 9 PRN#(1,A$+C$) 10 PRN#(1,C$+D$) 11 PRN#(1,A$+C$+"TEST") 12 PRN#(1,"UVW"+"XYZ") 13 CLOSE(1) Contenu du fichier P2 : Exemple : ABCDEF <LF> ABCGH <LF> GHJKL <LF> ABCGHTEST <LF> UVWXYZ <LF><ETX><LF> Enchaînement des textes via les expressions STRING 10 DIM A$(100) 20 DIM B$(100) 30 DIM C$(10) 40 DIM D$(20) 51 DIM E$(30) 52 DIM F$(30) 53 DIM G$(30) 54 DIM H$(30) 55 DIM I$(30) 60 A$="DAS " 70 B$="IST EIN TEST" 80 MID$(C$,1,6)=A$ + B$ 90 MID$(D$,1,10)=MID$(A$,1,1) + MID$(B$,1,2) 92 E$=A$ + MID$(B$,1) 93 X$="ABC" 94 Y$="DE" Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 449/550 Fonctions CPL 95 F$=X$ + Y$ 96 G$=X$ + A$ 97 H$=X$ + A$ + "TEST" 98 I$="TES" + "T1" Contenu de A$ : "DAS " Longueur 4 Contenu de B$ : "IST EIN TEST" Longueur 12 Contenu de C$ : "DAS IS" Longueur 6 Contenu de D$ : "DIS" Longueur 3 Contenu de E$ : "DAS IST EIN TEST" Longueur 16 Contenu de F$ : "ABCDE" Longueur 5 Contenu de G$ : "ABCDAS " Longueur 7 Contenu de H$ : "ABCDAS TEST" Longueur 11 Contenu de I$ : "TEST1" Longueur 5 La programmation suivante entraîne des erreurs : 1 DIM A$(3):A$ = "ABC":B$ = "CD":C$ = "EF" 2 D$ = A$ + B$ 3 D$ = B$ + C$ 4 D$ = A$ + B$ + "TEST" Affectation non permise à une variable STRING non dimensionnée 5 D$ = "TEST" + "TEST1" Exemple : STR$ 1 DIM A$(50) : DIM B$(21) 2 A$ = STR$("A$ = ##.###",(37/3)) : B$ = STR$(2.5) Contenu du tableau "A$ = 12.333"; A$ : Exemple : Tableau B$ : " 2.500" VAL 1 DIM FOLGE$(20) : FOLGE$="X-WERT -0001.234 MM" 2 XR=VAL(MID$(FOLGE$,7)) : Z%=VAL(MID$(FOLGE$,7,6)) 3 Y%=VAL(MID$(FOLGE$,15,5)) : X%=VAL(MID$(FOLGE$,18)) Contenu de la variable REAL XR : -1.234 Contenu de la variable INTEGER -1 Z% : Contenu de la variable INTEGER 34 Y% : Contenu de la variable INTEGER NUL X% : Exemple : LEN 1 DIM Z$(10) 2 Z$ = "TEST" 3 S$ = "TEST" 4 A% = LEN("TEST") 5 B% = LEN(Z$) 450/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL 6 C% = LEN(S$) 7 D% = LEN("TEST"+Z$+S$) Exemple : Contenu de la variable INTEGER A% : 4 Contenu de la variable INTEGER B% : 4 Contenu de la variable INTEGER C% : 4 Contenu de la variable INTEGER D% : 12 Ordre MID$ avec accès en lecture 10 DIM A$(4) 20 DIM B$(10) 30 DIM C$(10) 40 DIM D$(10) 50 DIM E$(10) 55 DIM F$(10) 60 A$ = "ABCD" Exemple : 70 B$ = MID$(A$,2,2) --> B$ = "BC" 80 C$ = MID$(A$,2,5) --> C$ = "BCD" 95 E$ = MID$(A$,5,1) --> E$ = NUL 97 F$ = MID$(A$,2) --> F$ = "BCD" 98 F$ = MID$(F$,1,1) --> F$ = "B" Ordre MID$ avec accès en écriture 10 DIM A$(4) 20 DIM B$(10) 30 DIM C$(10) 40 DIM D$(10) 60 A$ = "ABCD" 70 B$ = "1234567890" 80 C$ = "EFGHIJKLMN" Exemple : 85 D$ = A$ --> D$ = "ABCD" 90 MID$(D$,2,3) = B$ --> D$ = "A123" 95 MID$(D$,5,1) = C$ --> D$ = "A123E" 97 MID$(D$,4) = B$ --> D$ = "A121234567" TRIM$ 1 DIM XYZ$(16) 2 XYZ$ = "XWERT = 0.123 " 3 A$ = MID$(XYZ$,8) 4 B$ = TRIM$(MID$(XYZ$,8)) 5 C$ = TRIM$(MID$(XYZ$,8),"L") Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 451/550 Fonctions CPL 6 D$ = TRIM$(MID$(XYZ$,8),"R") Contenu de la variable STRING A " 0.123 " $: Contenu de la variable STRING B "0.123" $: Contenu de la variable STRING C "0.123 " $: Contenu de la variable STRING D " 0.123" $: 7.16 Traitement de données 7.16.1 Explication Un fichier est un conteneur recelant des données. Au cours d'un programme CPL, les données peuvent être extraites des fichiers ou archivées dans les fichiers. Ainsi il est p.ex. possible d'enregistrer d'abord les valeurs mesurées pour les afficher plus tard ou pour les sortir sur une imprimante. Au sein de la CN, les données sont administrées dans le système de fichiers. Elles sont ar‐ chivées de manière organisée dans une structure hiérarchique. L'accès aux différentes données s'effectue via des chemins de répertoires. Il est possible d'administrer les fichiers sous des différents modes de fonctionnement. Pour avoir accès en lecture ou en écriture aux données, le fichier correspondant doit toujours d'abord être ouvert (voir les ordres OPENW, OPENR) ; aussitôt que l'accès aux données n'est plus nécessaire, le fichier est fermé (voir l'ordre CLOSE). 7.16.2 Noms de fichier Les conventions suivantes doivent être respectées pour les noms de fichiers : ● La longueur maximale est de 30 caractères. Il n'est pas différencié entre le nom et l'extension possible du nom de fichier. Toutes les lettres, les chiffres et les caractères spéciaux "." et "_" sont admissibles. Les noms de fichier des programmes pièce peuvent avoir une longueur maximale de 28 caractères, étant donné que la CN génère un fichier lors de la liaison dont le nom se compose du nom de fichier initial plus 2 autres caractères. Le caractère spécial "$" ne doit être utilisé que pour les fichiers générés en interne. Les noms de fichier externes (via l'interface utilisateur, DNC) ne doivent pas contenir un "$". ● On distingue entré les minuscules et les majuscules. Exemples : Noms de fichier P123456789.PRG P12_Daten_Dial P12_DATEN_DIAL ● Les noms de fichier "." et ".." sont interdits, étant donné qu'ils sont déjà utilisés en interne. ● Au sein d'un répertoire, les noms de fichier doivent être univoques. Il est cependant possible que, dans des répertoires différents, les fichiers por‐ tent le même nom. 452/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL 7.16.3 Structure de fichier séquentielle Un fichier séquentiel contient une séquence de composantes (Enregistre‐ ments) pouvant avoir une longueur variable. Si un certain enregistrement est cherché dans un fichier séquentiel, le fichier doit être parcouru dès le début pour cet enregistrement. Un accès direct n'est pas possible. Si la longueur d'un enregistrement dans un fichier séquentiel est modifiée, tous les enregistre‐ ments suivants doivent être déplacés. Contrairement aux fichiers aléatoires, les fichiers séquentiels contiennent des enregistrements ayant des longueurs différentes (longueur maximale : 1024 caractères). La fin d'un enregistrement est identifiée par un <LF> ne faisant pas partie de la longueur. Après le dernier enregistrement d'un fichier, un <ETX><LF> est inséré présentant un pointeur EOF. Un pointeur EOF est un indicateur de la fin des données utilisables (<ETX>) dans un fichier. 7.16.4 Structure de fichier aléatoire Un fichier aléatoire possède des composantes (Enregistrements) avec une longueur fixe, définissable. Un accès direct libre à un composante quelconque du fichier est ainsi possible. La répartition du fichier aléatoire dans les enre‐ gistrements de longueur fixe permet l'accès direct à un certain enregistrement. Les données sont archivées, comme pour les fichiers séquentiels, en tant que caractères ASCII. Ceci permet non seulement l'accès habituel avec l'éditeur, mais également d'archiver et d'extraire les fichiers aléatoires. Le fichier aléatoire présente l'avantage d'un accès plus rapide aux données nécessaires. En plus, les fichiers d'un enregistrement peuvent être traités et/ ou modifiés sans que la structure du reste du fichier ne doive être modifiée. Les enregistrements qui ne sont pas remplis complètement avec des données, sont remplis d'espaces (→ Blanks) jusqu'à ce que la longueur définie soit atteinte. Si on tente d'insérer une variable STRING dans un fichier aléatoire dont la longueur est supérieure à la longueur de l'enregistrement, l'enregistrement est rempli des premiers caractères de la variable STRING jusqu'à ce que la lon‐ gueur définie soit atteinte ; le reste des caractères est rejeté. Lors de la lecture du fichier, la fin du fichier est reconnue par "EOF". Les ins‐ tructions REWRITE et CLOSE sont utilisées de la même manière que pour les fichier séquentiels. Un accès séquentiel à un fichier aléatoire est également possible. 7.16.5 Ouverture d'un fichier Généralités Afin de pouvoir accéder à un fichier dans un programme CPL à l'aide des ins‐ tructions pour le traitement du fichier, ce fichier doit d'abord être ouvert pour le programme CPL. Les instructions suivantes ont cette fonction. OPENW, OPENR L'instruction pour l'ouverture d'un fichier dépend du mode d'accès souhaité : ● acccès en écriture : OPENW ● accès en lecture : OPENR Si le fichier à ouvrir n'existe pas encore, il est créé lors de l'ouverture et l'espace mémoire défini est réservé. Il est possible d'ouvrir des fichiers en lecture qui sont déjà ouverts pour l'accès en écriture ; pour cela, utiliser l'instruction "OPENR". Un fichier ouvert ne peut cependant pas être ouvert encore une fois pour l'écriture. Description de l'application | Rexroth IndraMotion MTX Electric Drives | Bosch Rexroth AG and Controls 453/550 Fonctions CPL Pour l'ouverture d'un fichier aléatoire, un paramètre supplémentaire est intro‐ duit qui définit la longueur des enregistrements dans le fichier en octets (1 octet = longueur d'un caractère). Pour le reste, la structure de l'instruction correspond à celle du fichier séquentiel. Le pointeur du fichier est placé, après une instruction OPENR, sur le premier enregistrement sur lequel l'accès en lecture est possible. Le pointeur du fichier est placé, après une instruction OPENW, sur le pointeur EOF, donc derrière le dernier enregistrement du fichier. Syntaxe : OPENW(<n>,<Nom du progr>,<Longueur>[,<Commentaire au progr>] [,<Longueur d'enregistrement>]) OPENR(<n>,<Nom du progr>[,<Longueur d'enregistrement>]) <n> Numéro logique avec lequel le fichier peut être adressé. Seules les valeurs de 1 à 9 peuvent être sélectionnées. Le numéro logique doit être programmé en tant qu'ex‐ pression INTEGER. Un numéro logique ne doit pas être attribué simultanément pour la lecture et l'écriture d'un fichier. Un maximum de 9 fichiers peut être ouverts en même temps. Si la plage de valeurs n'est pas respectée, le message d'erreur "NUMÉRO LOGIQUE INVALIDE" est affiché. <Nom du progr> Doit être programmé en tant qu'expression STRING. Le STRING doit contenir au moins le nom du fichier (30 caractères au maximum avec l'extension du nom de fi‐ chier incluse). L'indication du nom de fichier avec le chemin complet mis en tête est permise. <Longueur> Longueur réservée lors de la création du fichier en oc‐ tets. Une longueur minimale de 130 octets est requise, étant donné que, lors de l'écriture, au moins 1 enregis‐ trement (= 130 caractères) est créé et sauvegardé dans le fichier. En cas de non-respect, le message d'erreur "LONGUEUR DE FICHIER INADMISSIBLE" est affi‐ ché. <Commentaire au progr> Pour la programmation du paramètre "Commentaire au programme", seule une expression STRING est permi‐ se. <Longueur d'enregistre‐ ment> Nombre d'octets d'un enregistrement ; plage de va‐ leurs : 1..1024. Si la plage de valeurs n'est pas respec‐ tée, le message d'erreur "LONGUEUR DE COMPO‐ SANTE INADMISSIBLE" est affiché. Fig.7-53: Exemple : Syntaxe pour l'acces en lecteure et en écriture 50 OPENW(1,"P500",1024,"Ceci est mon meilleur programme") 40 A$="P500" : B1$="Ceci est mon meilleur programme" 50 OPENW(9,A$,1024,B1$) 50 OPENW(7,"PDaten_Mes.DAT",1024,"Archiver les données de mesure") Exemple : Lors de l'ouverture du fichier en écriture, il est vérifié si la structure aléatoire est encore maintenue. Si la structure a été détruite via l'éditeur, le message d'erreur "LONGUEUR DE COMPOSANTE INADMISSIBLE" est affiché. 10 OPENW(2,"P200",1024,10) 454/550 Bosch Rexroth AG | Electric Drives and Controls Rexroth IndraMotion MTX | Description de l'application Fonctions CPL 20 FOR I% = 1 TO 3 30 PRN#(2,"TESTE") 40 NEXT I% 50 CLOSE(2) Résultat : "P2" TESTE <LF> TESTE <LF> TESTE