Omron TJ1-MC16, TJ1-MC04 User Manual

Cat. No. I52E-FR-03
Trajexia motion control system
TJ1-MC04 TJ1-M C1 6
MANUEL DE PROGRAMMATION
Remarques importantes
Les produits Omron sont conçus pour être utilisés par un utilisateur qualifié, en respectant les procédures appropriées et uniquement aux fins précisées dans le présent document. Les conventions suivantes sont utilisées dans ce manuel pour indiquer et catégoriser les précautions de sécurité. Lisez toujours attentivement les informations fournies. Le non-respect de ces précautions peut entraîner des blessures ou des dégâts matériels.
Définition des informations de sécurité
DANGER
Indique une situation dangereuse qui, si elle n’est pas évitée, peut entraîner des blessures graves ou mortelles.
AVERTISSEMENT
Indique une situation potentiellement dangereuse qui, si elle n’est pas évitée, peut provoquer des blessures graves ou mortelles.
/i
Attention
Indique une situation potentiellement dangereuse qui, si elle n’est pas évitée, risque d’entraîner des blessures mineures ou modérées, ou des dégâts matériels.
Marques et droits d’auteur
PROFIBUS est une marque déposée de PROFIBUS International. MECHATROLINK est une marque déposée de Yaskawa Corporation. DeviceNet est une marque déposée de Open DeviceNet Vendor Assoc Inc.
Révision 3.0
CIP est une marque déposée de Open DeviceNet Vendor Assoc Inc. Trajexia est une marque déposée d’Omron. Motion Perfect est une marque déposée de Trio Motion Technology Ltd.
MANUEL DE PROGRAMMATION 2
© OMRON, 2007
Tous droits réservés. Aucune partie du présent manuel ne peut être reproduite, stockée dans un système de restitution ou transmise, par quelque moyen que ce soit (mécanique, électronique, photocopie, enregistrement ou autre) sans l’accord écrit préalable d’Omron. Toute responsabilité concernant les brevets est exclue eu égard à l’utilisation des informa­tions fournies dans le présent manuel. De plus, dans un souci d’améliorer la qualité de ses produits, Omron se réserve le droit de modifier toute information contenue dans le présent manuel sans avis préalable. Toutes les mesures de précaution ont été prises lors de la pré­paration du présent manuel. Omron n’assume toutefois aucune responsabilité quant aux erreurs ou omissions éventuelles. En outre, Omron exclut toute responsabilité quant aux dommages résultant de l’utilisation des informations fournies dans le présent manuel.
À propos de ce manuel
Nom Cat. No. Sommaire
Le présent manuel décrit l’installation et l’utilisation du système de contrôle d’axes Trajexia. Veuillez lire attentivement ce manuel et tous les manuels repris dans le tableau suivant et vous assurer d’avoir bien compris les informations qu’ils contiennent avant d’essayer d’installer ou d’utiliser les cartes de contrôle d’axes Trajexia. Veillez à lire les consignes fournies dans la section suivante.
/i
Nom Cat. No. Sommaire
Système de contrôle d’axes Trajexia ­GUIDE DE DÉMARRAGE RAPIDE
Système de contrôle d’axes Trajexia - MANUEL DE RÉFÉ­RENCE DU MATÉRIEL
Système de contrôle d’axes Trajexia ­MANUEL DE PROGRAMMATION
Manuel du servodriver de série Sigma-II
Manuel du servodriver de série JUNMA
Révision 3.0
Manuel JUSP-NS115 SIEP C71080001 Décrit l’installation et l’utilisa-
I50E Fournit des informations
permettant de se familiariser avec le système Trajexia et décrit une configuration de test visant à déplacer un seul axe via MECHATROLINK-II.
I51E Décrit l’installation et les
caractéristiques matérielles des cartes Trajexia. Explique également la philosophie du système Trajexia.
I52E
SIEP S800000 15
TOEP-C71080603 01-OY Décrit l’installation et l’utilisa-
Décrit les commandes BASIC à utiliser pour programmer le système Trajexia, explique les protocoles de communication et le logiciel Trajexia Tools, fournit des exemples pratiques et des informations de résolu­tion des problèmes.
Décrit l’installation et l’utilisation des servodrivers Sigma-II.
tion des servodrivers JUNMA.
tion du module d’application MECHATROLINK-II.
Manuel des servodrivers Sigma-III avec interface MECHATROLINK-II
Variateur V7 TOEP C71060605 02-OY Décrit l’installation et l’utilisa-
Variateur F7Z TOE S616-55 1-OY Décrit l’installation et l’utilisa-
Variateur G7 TOE S616-60 Décrit l’installation et l’utilisa-
Interface MECHATROLINK SI-T pour variateurs G7 et F7
Interface MECHATROLINK ST-T/V7 pour variateurs V7
Modules d’E/S MECHATRO­LINK
Commandes de communica­tion SYSMAC série CS/CJ
SIEP S800000 11 Décrit l’installation et l’utilisa-
tion des servodrivers Sigma­III avec une interface MECHATROLINK.
tion des variateurs V7.
tion des variateurs F7Z.
tion des variateurs G7.
SIBP-C730600-08 Décrit l’installation et l’utilisa-
tion des interfaces MECHA­TROLINK pour les variateurs G7 et F7.
SIBP-C730600-03
SIE C887-5
W342 Décrit le protocole de com-
Décrit l’installation et l’utilisation des interfaces MECHATRO­LINK pour les variateurs V7.
Décrit l’installation et l’utilisation des modules d’entrées et de sorties MECHATROLINK et du répéteur MECHATROLINK-II.
munication FINS et les com­mandes FINS.
AVERTISSEMENT
L’utilisateur qui ne lit pas et ne comprend pas les informations fournies dans le présent manuel s’expose à des blessures graves, voire mortelles, et risque d’endommager le produit. Veuillez lire chaque section dans son intégralité et vous assurer d’avoir compris les informations fournies avant d’exécuter les procédures ou les opérations indiquées.
MANUEL DE PROGRAMMATION 3
Fonctions prises en charge par les versions
Lors du développement du système Trajexia, de nouvelles fonctionnalités ont été ajoutées à la carte de contrôle après sa mise sur le marché. Ces fonctionnalités sont mises en œuvre dans le firmware et/ou dans le FPGA de la carte de contrôle. Le tableau ci-dessous présente les fonctionnalités concernées en fonction de la version du firmware et du FPGA du TJ1-MC__.
/i
Fonctionnalité Version du firmware
du TJ1-MC__
Prise en charge complète de la carte TJ1-FL02
Prise en charge des com­mandes BASIC FINS_COMMS
Prise en charge de la carte TJ1-DRT
Prise en charge des cartes TJ1-MC04 et TJ1-ML04
1.6509 21 et ultérieure
1.6509 Toutes les versions
1.6509 Toutes les versions
1.6607 21 et ultérieure
Version du FPGA du TJ1-MC__
Vérification la version du firmware et du FPGA du TJ1-MC__
Connectez le TJ1-MC__ au logiciel Trajexia Tools. Consultez le Manuel de programmation. Ouvrez la fenêtre de terminal et tapez les commandes suivantes :
Tapez
PRINT VERSION dans la fenêtre de terminal. Le paramètre de version
renvoie le numéro de version actuel du firmware pour le contrôleur d’axes. Tapez
PRINT FPGA_VERSION SLOT(-1)
dans la fenêtre du terminal.
Ce paramètre renvoie le numéro de version actuel du FPGA pour le TJ1-MC__.
Révision 3.0
MANUEL DE PROGRAMMATION 4

Sommaire

1 Avertissements et précautions de sécurité..............................................................................................................................................16
1.1 Public visé.......................................................................................................................................................................................................................................16
1.2 Précautions générales ....................................................................................................................................................................................................................16
1.3 Précautions de sécurité ..................................................................................................................................................................................................................16
1.4 Précautions liées à l’environnement d’utilisation ............................................................................................................................................................................17
1.5 Précautions en matière d’application..............................................................................................................................................................................................18
1.6 Précautions à prendre lors du montage de cartes..........................................................................................................................................................................21
2 Système Trajexia.........................................................................................................................................................................................22
2.1 Introduction .....................................................................................................................................................................................................................................22
2.1.1 Matériel Trajexia ...............................................................................................................................................................................................................23
2.1.2 Présent manuel ................................................................................................................................................................................................................23
2.2 Programmation BASIC multitâche ..................................................................................................................................................................................................23
2.3 Programmation BASIC ...................................................................................................................................................................................................................24
2.3.1 Instructions liées aux axes, au système et aux tâches.....................................................................................................................................................24
2.3.2 Zones mémoire.................................................................................................................................................................................................................24
2.3.3 Structure des données et variables ..................................................................................................................................................................................25
2.3.4 Spécifications mathématiques..........................................................................................................................................................................................27
2.4 Exécution de mouvement ...............................................................................................................................................................................................................28
2.4.1 Générateur de mouvement...............................................................................................................................................................................................28
2.4.2 Séquençage .....................................................................................................................................................................................................................29
2.4.3 Chargement de mouvement .............................................................................................................................................................................................29
2.5 Interface de ligne de commande ....................................................................................................................................................................................................30
2.6 Programmes BASIC .......................................................................................................................................................................................................................30
2.6.1 Gestion des programmes .................................................................................................................................................................................................30
2.6.2 Compilation de programmes ............................................................................................................................................................................................31
2.6.3 Exécution de programmes................................................................................................................................................................................................31
3 Commandes BASIC ....................................................................................................................................................................................33
3.1 Catégories ......................................................................................................................................................................................................................................33
3.1.1 Commandes d’axe............................................................................................................................................................................................................33
3.1.2 Paramètres d’axe .............................................................................................................................................................................................................34
3.1.3 Commandes et paramètres de communication ...............................................................................................................................................................36
3.1.4 Constantes .......................................................................................................................................................................................................................36
3.1.5 Commandes, fonctions et paramètres d’E/S ...................................................................................................................................................................36
3.1.6 Fonctions et opérandes mathématiques ..........................................................................................................................................................................37
Révision 3.0
MANUEL DE PROGRAMMATION 5
3.1.7 Commandes de programme.............................................................................................................................................................................................37
3.1.8 Commandes de contrôle de programme ..........................................................................................................................................................................38
3.1.9 Paramètres et modificateurs d’emplacement ..................................................................................................................................................................38
3.1.10 Commandes et fonctions système ...................................................................................................................................................................................38
Sommaire
Révision 3.0
3.1.11 Paramètres système.........................................................................................................................................................................................................39
3.1.12 Commandes et paramètres de tâche ..............................................................................................................................................................................40
3.2 Toutes les commandes BASIC.......................................................................................................................................................................................................41
3.2.1 + (addition) .......................................................................................................................................................................................................................41
3.2.2 - (soustraction)..................................................................................................................................................................................................................41
3.2.3 * (multiplication)................................................................................................................................................................................................................41
3.2.4 / (division) .........................................................................................................................................................................................................................41
3.2.5 ^ (puissance) ....................................................................................................................................................................................................................42
3.2.6 = (égal à) ..........................................................................................................................................................................................................................42
3.2.7 = (attribution) ....................................................................................................................................................................................................................42
3.2.8 <> (différent de) ................................................................................................................................................................................................................42
3.2.9 > (supérieur à) ..................................................................................................................................................................................................................43
3.2.10 >= (supérieur ou égal à) ...................................................................................................................................................................................................43
3.2.11 < (inférieur à) ....................................................................................................................................................................................................................43
3.2.12 <= (inférieur ou égal à) .....................................................................................................................................................................................................43
3.2.13 $ (entrée hexadécimale)...................................................................................................................................................................................................44
3.2.14 ' (champ de commentaire)................................................................................................................................................................................................44
3.2.15 : (séparateur d’instructions) ..............................................................................................................................................................................................44
3.2.16 #........................................................................................................................................................................................................................................44
3.2.17 ABS ..................................................................................................................................................................................................................................45
3.2.18 ACC..................................................................................................................................................................................................................................45
3.2.19 ACCEL..............................................................................................................................................................................................................................45
3.2.20 ACOS ...............................................................................................................................................................................................................................45
3.2.21 ADD_DAC ........................................................................................................................................................................................................................46
3.2.22 ADDAX .............................................................................................................................................................................................................................46
3.2.23 ADDAX_AXIS...................................................................................................................................................................................................................47
3.2.24 AIN....................................................................................................................................................................................................................................47
3.2.25 AND..................................................................................................................................................................................................................................47
3.2.26 AOUT................................................................................................................................................................................................................................48
3.2.27 ASIN .................................................................................................................................................................................................................................48
3.2.28 ATAN................................................................................................................................................................................................................................48
3.2.29 ATAN2..............................................................................................................................................................................................................................48
3.2.30 ATYPE..............................................................................................................................................................................................................................49
3.2.31 AUTORUN........................................................................................................................................................................................................................49
3.2.32 AXIS .................................................................................................................................................................................................................................49
3.2.33 AXIS_DISPLAY ................................................................................................................................................................................................................50
3.2.34 AXIS_ENABLE .................................................................................................................................................................................................................50
3.2.35 AXISSTATUS ...................................................................................................................................................................................................................50
3.2.36 B_SPLINE ........................................................................................................................................................................................................................51
3.2.37 BASE................................................................................................................................................................................................................................51
MANUEL DE PROGRAMMATION 6
Sommaire
Révision 3.0
3.2.38 BASICERROR..................................................................................................................................................................................................................52
3.2.39 BATTERY_LOW...............................................................................................................................................................................................................53
3.2.40 BREAK_RESET ...............................................................................................................................................................................................................53
3.2.41 CAM..................................................................................................................................................................................................................................53
3.2.42 CAMBOX ..........................................................................................................................................................................................................................55
3.2.43 CANCEL ...........................................................................................................................................................................................................................56
3.2.44 CHECKSUM .....................................................................................................................................................................................................................56
3.2.45 CHR..................................................................................................................................................................................................................................56
3.2.46 CLEAR..............................................................................................................................................................................................................................57
3.2.47 CLEAR_BIT ......................................................................................................................................................................................................................57
3.2.48 CLEAR_PARAMS ............................................................................................................................................................................................................57
3.2.49 CLOSE_WIN ....................................................................................................................................................................................................................57
3.2.50 CLUTCH_RATE ...............................................................................................................................................................................................................57
3.2.51 COMMSERROR...............................................................................................................................................................................................................58
3.2.52 COMMSTYPE ..................................................................................................................................................................................................................58
3.2.53 COMPILE .........................................................................................................................................................................................................................58
3.2.54 CONNECT........................................................................................................................................................................................................................59
3.2.55 CONSTANT......................................................................................................................................................................................................................59
3.2.56 CONTROL ........................................................................................................................................................................................................................59
3.2.57 COPY ...............................................................................................................................................................................................................................60
3.2.58 COS..................................................................................................................................................................................................................................60
3.2.59 CREEP .............................................................................................................................................................................................................................60
3.2.60 D_GAIN ............................................................................................................................................................................................................................60
3.2.61 D_ZONE_MAX .................................................................................................................................................................................................................61
3.2.62 D_ZONE_MIN ..................................................................................................................................................................................................................61
3.2.63 DAC ..................................................................................................................................................................................................................................61
3.2.64 DAC_OUT ........................................................................................................................................................................................................................61
3.2.65 DAC_SCALE ....................................................................................................................................................................................................................61
3.2.66 DATE ................................................................................................................................................................................................................................62
3.2.67 DATE$ ..............................................................................................................................................................................................................................62
3.2.68 DATUM.............................................................................................................................................................................................................................62
3.2.69 DATUM_IN .......................................................................................................................................................................................................................63
3.2.70 DAY ..................................................................................................................................................................................................................................64
3.2.71 DAY$ ................................................................................................................................................................................................................................64
3.2.72 DECEL..............................................................................................................................................................................................................................64
3.2.73 DEFPOS...........................................................................................................................................................................................................................64
3.2.74 DEL...................................................................................................................................................................................................................................65
3.2.75 DEMAND_EDGES ...........................................................................................................................................................................................................65
3.2.76 DEVICENET .....................................................................................................................................................................................................................65
3.2.77 DIR ...................................................................................................................................................................................................................................67
MANUEL DE PROGRAMMATION 7
Sommaire
Révision 3.0
3.2.78 DISABLE_GROUP ...........................................................................................................................................................................................................67
3.2.79 DISPLAY ..........................................................................................................................................................................................................................67
3.2.80 DPOS ...............................................................................................................................................................................................................................68
3.2.81 DRIVE_ALARM ................................................................................................................................................................................................................68
3.2.82 DRIVE_CLEAR.................................................................................................................................................................................................................69
3.2.83 DRIVE_CONTROL ...........................................................................................................................................................................................................69
3.2.84 DRIVE_INPUTS ...............................................................................................................................................................................................................70
3.2.85 DRIVE_MONITOR............................................................................................................................................................................................................70
3.2.86 DRIVE_READ...................................................................................................................................................................................................................71
3.2.87 DRIVE_RESET.................................................................................................................................................................................................................71
3.2.88 DRIVE_STATUS ..............................................................................................................................................................................................................72
3.2.89 DRIVE_WRITE .................................................................................................................................................................................................................73
3.2.90 EDIT .................................................................................................................................................................................................................................73
3.2.91 ELSE ................................................................................................................................................................................................................................73
3.2.92 ELSEIF .............................................................................................................................................................................................................................73
3.2.93 ENCODER........................................................................................................................................................................................................................74
3.2.94 ENCODER_BITS..............................................................................................................................................................................................................74
3.2.95 ENCODER_CONTROL ....................................................................................................................................................................................................74
3.2.96 ENCODER_ID ..................................................................................................................................................................................................................75
3.2.97 ENCODER_RATIO...........................................................................................................................................................................................................75
3.2.98 ENCODER_READ............................................................................................................................................................................................................75
3.2.99 ENCODER_STATUS .......................................................................................................................................................................................................76
3.2.100 ENCODER_TURNS .........................................................................................................................................................................................................76
3.2.101 ENCODER_WRITE ..........................................................................................................................................................................................................76
3.2.102 ENDIF...............................................................................................................................................................................................................................76
3.2.103 ENDMOVE .......................................................................................................................................................................................................................77
3.2.104 EPROM ............................................................................................................................................................................................................................77
3.2.105 ERROR_AXIS ..................................................................................................................................................................................................................77
3.2.106 ERROR_LINE...................................................................................................................................................................................................................77
3.2.107 ERRORMASK ..................................................................................................................................................................................................................78
3.2.108 ETHERNET ......................................................................................................................................................................................................................78
3.2.109 EX.....................................................................................................................................................................................................................................79
3.2.110 EXP ..................................................................................................................................................................................................................................79
3.2.111 FALSE ..............................................................................................................................................................................................................................79
3.2.112 FAST_JOG.......................................................................................................................................................................................................................79
3.2.113 FASTDEC.........................................................................................................................................................................................................................80
3.2.114 FE.....................................................................................................................................................................................................................................80
3.2.115 FE_LATCH .......................................................................................................................................................................................................................80
3.2.116 FE_LIMIT..........................................................................................................................................................................................................................80
3.2.117 FE_LIMIT_MODE .............................................................................................................................................................................................................81
MANUEL DE PROGRAMMATION 8
Sommaire
Révision 3.0
3.2.118 FE_RANGE ......................................................................................................................................................................................................................81
3.2.119 FHOLD_IN........................................................................................................................................................................................................................81
3.2.120 FHSPEED.........................................................................................................................................................................................................................82
3.2.121 FINS_COMMS..................................................................................................................................................................................................................82
3.2.122 FLAG ................................................................................................................................................................................................................................84
3.2.123 FLAGS..............................................................................................................................................................................................................................84
3.2.124 FOR..TO..STEP..NEXT ....................................................................................................................................................................................................85
3.2.125 FORWARD .......................................................................................................................................................................................................................86
3.2.126 FPGA_VERSION..............................................................................................................................................................................................................86
3.2.127 FRAC................................................................................................................................................................................................................................86
3.2.128 FRAME.............................................................................................................................................................................................................................86
3.2.129 FREE................................................................................................................................................................................................................................87
3.2.130 FS_LIMIT..........................................................................................................................................................................................................................87
3.2.131 FWD_IN............................................................................................................................................................................................................................87
3.2.132 FWD_JOG ........................................................................................................................................................................................................................88
3.2.133 GET ..................................................................................................................................................................................................................................88
3.2.134 GLOBAL ...........................................................................................................................................................................................................................89
3.2.135 GOSUB..RETURN............................................................................................................................................................................................................89
3.2.136 GOTO ...............................................................................................................................................................................................................................89
3.2.137 HALT ................................................................................................................................................................................................................................90
3.2.138 HEX ..................................................................................................................................................................................................................................90
3.2.139 HLM_COMMAND .............................................................................................................................................................................................................90
3.2.140 HLM_READ ......................................................................................................................................................................................................................91
3.2.141 HLM_STATUS..................................................................................................................................................................................................................92
3.2.142 HLM_TIMEOUT................................................................................................................................................................................................................93
3.2.143 HLM_WRITE ....................................................................................................................................................................................................................94
3.2.144 HLS_NODE ......................................................................................................................................................................................................................95
3.2.145 HW_PSWITCH .................................................................................................................................................................................................................95
3.2.146 I_GAIN..............................................................................................................................................................................................................................96
3.2.147 IDLE..................................................................................................................................................................................................................................96
3.2.148 IEEE_IN............................................................................................................................................................................................................................96
3.2.149 IEEE_OUT........................................................................................................................................................................................................................96
3.2.150 IF..THEN..ELSE..ENDIF...................................................................................................................................................................................................97
3.2.151 IN......................................................................................................................................................................................................................................97
3.2.152 INDEVICE.........................................................................................................................................................................................................................98
3.2.153 INITIALISE........................................................................................................................................................................................................................98
3.2.154 INPUT...............................................................................................................................................................................................................................99
3.2.155 INT....................................................................................................................................................................................................................................99
3.2.156 INVERT_IN.......................................................................................................................................................................................................................99
3.2.157 INVERT_STEP...............................................................................................................................................................................................................100
MANUEL DE PROGRAMMATION 9
Sommaire
Révision 3.0
3.2.158 INVERTER_COMMAND ................................................................................................................................................................................................100
3.2.159 INVERTER_READ .........................................................................................................................................................................................................101
3.2.160 INVERTER_WRITE........................................................................................................................................................................................................102
3.2.161 JOGSPEED....................................................................................................................................................................................................................103
3.2.162 KEY ................................................................................................................................................................................................................................103
3.2.163 LAST_AXIS ....................................................................................................................................................................................................................104
3.2.164 LINKAX...........................................................................................................................................................................................................................104
3.2.165 LINPUT...........................................................................................................................................................................................................................104
3.2.166 LIST................................................................................................................................................................................................................................105
3.2.167 LIST_GLOBAL................................................................................................................................................................................................................105
3.2.168 LN...................................................................................................................................................................................................................................106
3.2.169 LOCK..............................................................................................................................................................................................................................106
3.2.170 MARK .............................................................................................................................................................................................................................106
3.2.171 MARKB...........................................................................................................................................................................................................................107
3.2.172 MECHATROLINK ...........................................................................................................................................................................................................107
3.2.173 MERGE ..........................................................................................................................................................................................................................108
3.2.174 MHELICAL......................................................................................................................................................................................................................109
3.2.175 MOD ...............................................................................................................................................................................................................................109
3.2.176 MOTION_ERROR ..........................................................................................................................................................................................................109
3.2.177 MOVE .............................................................................................................................................................................................................................110
3.2.178 MOVEABS......................................................................................................................................................................................................................111
3.2.179 MOVECIRC ....................................................................................................................................................................................................................112
3.2.180 MOVELINK .....................................................................................................................................................................................................................114
3.2.181 MOVEMODIFY ...............................................................................................................................................................................................................115
3.2.182 MPOS .............................................................................................................................................................................................................................116
3.2.183 MSPEED ........................................................................................................................................................................................................................116
3.2.184 MTYPE ...........................................................................................................................................................................................................................116
3.2.185 NAIO...............................................................................................................................................................................................................................117
3.2.186 NEG_OFFSET................................................................................................................................................................................................................117
3.2.187 NEW ...............................................................................................................................................................................................................................117
3.2.188 NEXT..............................................................................................................................................................................................................................117
3.2.189 NIO .................................................................................................................................................................................................................................117
3.2.190 NOT ................................................................................................................................................................................................................................118
3.2.191 NTYPE............................................................................................................................................................................................................................118
3.2.192 OFF ................................................................................................................................................................................................................................118
3.2.193 OFFPOS.........................................................................................................................................................................................................................118
3.2.194 ON ..................................................................................................................................................................................................................................119
3.2.195 ON.. GOSUB ..................................................................................................................................................................................................................119
3.2.196 ON.. GOTO.....................................................................................................................................................................................................................119
3.2.197 OP ..................................................................................................................................................................................................................................119
MANUEL DE PROGRAMMATION 10
Sommaire
Révision 3.0
3.2.198 OPEN_WIN ....................................................................................................................................................................................................................120
3.2.199 OR ..................................................................................................................................................................................................................................120
3.2.200 OUTDEVICE...................................................................................................................................................................................................................121
3.2.201 OUTLIMIT.......................................................................................................................................................................................................................121
3.2.202 OV_GAIN........................................................................................................................................................................................................................121
3.2.203 P_GAIN ..........................................................................................................................................................................................................................122
3.2.204 PI ....................................................................................................................................................................................................................................122
3.2.205 PMOVE...........................................................................................................................................................................................................................122
3.2.206 POS_OFFSET................................................................................................................................................................................................................123
3.2.207 POWER_UP ...................................................................................................................................................................................................................123
3.2.208 PRINT.............................................................................................................................................................................................................................123
3.2.209 PROC .............................................................................................................................................................................................................................124
3.2.210 PROC_STATUS .............................................................................................................................................................................................................124
3.2.211 PROCESS ......................................................................................................................................................................................................................125
3.2.212 PROCNUMBER..............................................................................................................................................................................................................125
3.2.213 PROFIBUS .....................................................................................................................................................................................................................125
3.2.214 PSWITCH .......................................................................................................................................................................................................................126
3.2.215 RAPIDSTOP...................................................................................................................................................................................................................127
3.2.216 READ_BIT......................................................................................................................................................................................................................127
3.2.217 REG_POS ......................................................................................................................................................................................................................128
3.2.218 REG_POSB....................................................................................................................................................................................................................128
3.2.219 REGIST ..........................................................................................................................................................................................................................128
3.2.220 REMAIN..........................................................................................................................................................................................................................130
3.2.221 REMOTE_ERROR .........................................................................................................................................................................................................130
3.2.222 RENAME ........................................................................................................................................................................................................................130
3.2.223 REP_DIST ......................................................................................................................................................................................................................131
3.2.224 REP_OPTION ................................................................................................................................................................................................................131
3.2.225 REPEAT..UNTIL.............................................................................................................................................................................................................131
3.2.226 RESET............................................................................................................................................................................................................................132
3.2.227 RETURN.........................................................................................................................................................................................................................132
3.2.228 REV_IN...........................................................................................................................................................................................................................132
3.2.229 REV_JOG.......................................................................................................................................................................................................................133
3.2.230 REVERSE ......................................................................................................................................................................................................................133
3.2.231 RS_LIMIT .......................................................................................................................................................................................................................133
3.2.232 RUN................................................................................................................................................................................................................................133
3.2.233 RUN_ERROR.................................................................................................................................................................................................................134
3.2.234 RUNTYPE ......................................................................................................................................................................................................................134
3.2.235 S_REF............................................................................................................................................................................................................................135
3.2.236 S_REF_OUT ..................................................................................................................................................................................................................135
3.2.237 SCOPE ...........................................................................................................................................................................................................................136
MANUEL DE PROGRAMMATION 11
Sommaire
Révision 3.0
3.2.238 SCOPE_POS .................................................................................................................................................................................................................137
3.2.239 SELECT..........................................................................................................................................................................................................................137
3.2.240 SERVO ...........................................................................................................................................................................................................................137
3.2.241 SERVO_PERIOD ...........................................................................................................................................................................................................137
3.2.242 SET_BIT .........................................................................................................................................................................................................................138
3.2.243 SETCOM ........................................................................................................................................................................................................................138
3.2.244 SGN................................................................................................................................................................................................................................139
3.2.245 SIN..................................................................................................................................................................................................................................139
3.2.246 SLOT ..............................................................................................................................................................................................................................139
3.2.247 SPEED ...........................................................................................................................................................................................................................139
3.2.248 SQR................................................................................................................................................................................................................................140
3.2.249 SRAMP...........................................................................................................................................................................................................................140
3.2.250 STEP ..............................................................................................................................................................................................................................140
3.2.251 STEP_RATIO .................................................................................................................................................................................................................140
3.2.252 STEPLINE ......................................................................................................................................................................................................................141
3.2.253 STOP..............................................................................................................................................................................................................................141
3.2.254 SYSTEM_ERROR..........................................................................................................................................................................................................142
3.2.255 T_REF ............................................................................................................................................................................................................................142
3.2.256 TABLE ............................................................................................................................................................................................................................143
3.2.257 TABLEVALUES..............................................................................................................................................................................................................143
3.2.258 TAN ................................................................................................................................................................................................................................144
3.2.259 THEN..............................................................................................................................................................................................................................144
3.2.260 TICKS .............................................................................................................................................................................................................................144
3.2.261 TIME...............................................................................................................................................................................................................................144
3.2.262 TIME$.............................................................................................................................................................................................................................145
3.2.263 TO...................................................................................................................................................................................................................................145
3.2.264 TRANS_DPOS ...............................................................................................................................................................................................................145
3.2.265 TRIGGER .......................................................................................................................................................................................................................145
3.2.266 TROFF............................................................................................................................................................................................................................145
3.2.267 TRON .............................................................................................................................................................................................................................146
3.2.268 TRUE..............................................................................................................................................................................................................................146
3.2.269 TSIZE .............................................................................................................................................................................................................................146
3.2.270 UNITS.............................................................................................................................................................................................................................147
3.2.271 UNLOCK.........................................................................................................................................................................................................................147
3.2.272 UNTIL .............................................................................................................................................................................................................................147
3.2.273 VERIFY...........................................................................................................................................................................................................................147
3.2.274 VERSION .......................................................................................................................................................................................................................147
3.2.275 VFF_GAIN......................................................................................................................................................................................................................148
3.2.276 VP_SPEED.....................................................................................................................................................................................................................148
3.2.277 VR...................................................................................................................................................................................................................................148
MANUEL DE PROGRAMMATION 12
Sommaire
3.2.278 VRSTRING .....................................................................................................................................................................................................................149
3.2.279 WA..................................................................................................................................................................................................................................149
3.2.280 WAIT IDLE......................................................................................................................................................................................................................150
3.2.281 WAIT LOADED...............................................................................................................................................................................................................150
3.2.282 WAIT UNTIL ...................................................................................................................................................................................................................150
3.2.283 WDOG ............................................................................................................................................................................................................................151
3.2.284 WHILE...WEND ..............................................................................................................................................................................................................151
3.2.285 XOR................................................................................................................................................................................................................................152
4 Protocoles de communication.................................................................................................................................................................153
4.1 Interfaces disponibles ...................................................................................................................................................................................................................153
4.2 Ethernet ........................................................................................................................................................................................................................................153
4.2.1 Communication directe entre Trajexia et l’ordinateur .....................................................................................................................................................154
4.2.2 Communication à distance avec Trajexia.......................................................................................................................................................................155
4.2.3 Protocole Trajexia Tools.................................................................................................................................................................................................156
4.2.4 Protocole serveur FINS .................................................................................................................................................................................................156
4.2.5 Protocole client FINS......................................................................................................................................................................................................158
4.3 Protocole série..............................................................................................................................................................................................................................158
4.3.1 Maître Host Link ............................................................................................................................................................................................................158
4.3.2 Esclave Host Link ...........................................................................................................................................................................................................163
4.3.3 Protocole défini par l’utilisateur ......................................................................................................................................................................................165
4.4 PROFIBUS ...................................................................................................................................................................................................................................167
4.4.1 Introduction.....................................................................................................................................................................................................................167
4.4.2 Paramétrage de la communication.................................................................................................................................................................................167
4.4.3 État de communication ...................................................................................................................................................................................................172
4.5 DeviceNet .....................................................................................................................................................................................................................................173
4.5.1 Introduction.....................................................................................................................................................................................................................173
4.5.2 Paramétrage de la communication.................................................................................................................................................................................173
4.5.3 État de communication ...................................................................................................................................................................................................178
4.6 MECHATROLINK-II ......................................................................................................................................................................................................................179
5 Interface Trajexia Tools............................................................................................................................................................................ 180
5.1 Introduction ...................................................................................................................................................................................................................................180
5.2 Caractéristiques et connexions.....................................................................................................................................................................................................180
5.2.1 Caractéristiques de l’ordinateur......................................................................................................................................................................................180
5.2.2 Installation du logiciel Trajexia Tools..............................................................................................................................................................................181
Révision 3.0
MANUEL DE PROGRAMMATION 13
5.2.3 Connexion au TJ1-MC__................................................................................................................................................................................................186
5.3 Projets...........................................................................................................................................................................................................................................191
5.3.1 Projets Trajexia Tools.....................................................................................................................................................................................................191
5.3.2 Fenêtre Check project (Vérifier un projet) .....................................................................................................................................................................192
5.4 Fenêtre de l’application Trajexia Tools .........................................................................................................................................................................................194
Sommaire
5.4.1 Panneau de commande .................................................................................................................................................................................................194
5.4.2 Barre de menus..............................................................................................................................................................................................................194
5.4.3 Barre d’outils...................................................................................................................................................................................................................195
5.5 Description des menus ................................................................................................................................................................................................................196
5.5.1 Menu Project (Projet)......................................................................................................................................................................................................196
5.5.2 Menu Controller (Contrôleur)..........................................................................................................................................................................................198
5.5.3 Menu Program (Programme)..........................................................................................................................................................................................203
5.5.4 Menu Tools (Outils) ........................................................................................................................................................................................................205
5.5.5 Menu Options .................................................................................................................................................................................................................221
5.5.6 Menu Window (Fenêtre) .................................................................................................................................................................................................224
5.5.7 Menu Help (Aide)............................................................................................................................................................................................................224
6 Exemples et conseils................................................................................................................................................................................ 225
6.1 Procédures ...................................................................................................................................................................................................................................225
6.1.1 Programme Startup (Démarrage) ..................................................................................................................................................................................225
6.1.2 Paramètres de gain .......................................................................................................................................................................................................229
6.1.3 Réglage du paramètre d’axe UNITS et du taux de réduction.........................................................................................................................................239
6.1.4 Mappage des entrées et sorties de servodriver .............................................................................................................................................................251
6.1.5 Recherche d’origine........................................................................................................................................................................................................253
6.1.6 Enregistrement ...............................................................................................................................................................................................................259
6.1.7 Traçabilité et surveillance...............................................................................................................................................................................................269
6.2 Exemples pratiques ......................................................................................................................................................................................................................279
6.2.1 Programme SHELL .......................................................................................................................................................................................................279
6.2.2 Programme d’initialisation .............................................................................................................................................................................................283
6.2.3 Programme d’axe simple ...............................................................................................................................................................................................286
6.2.4 Position avec détection de produit .................................................................................................................................................................................287
6.2.5 Position sur une grille ....................................................................................................................................................................................................289
6.2.6 Programme d’alimentation de sacs ...............................................................................................................................................................................291
6.2.7 Table CAM dans un programme ...................................................................................................................................................................................293
6.2.8 Programme pour cisaille volante ...................................................................................................................................................................................295
6.2.9 Programme de correction ..............................................................................................................................................................................................298
7 Résolution des problèmes.......................................................................................................................................................................300
7.1 Tension et outils d’analyse ...........................................................................................................................................................................................................300
7.2 Carte TJ1-MC__ ...........................................................................................................................................................................................................................300
7.2.1 Erreurs système .............................................................................................................................................................................................................300
Révision 3.0
MANUEL DE PROGRAMMATION 14
7.2.2 Erreurs d’axe ..................................................................................................................................................................................................................300
7.2.3 Erreurs de carte..............................................................................................................................................................................................................301
7.2.4 Erreurs de configuration .................................................................................................................................................................................................302
7.2.5 Remplacer la batterie .....................................................................................................................................................................................................302
7.3 Carte TJ1-PRT..............................................................................................................................................................................................................................302
Sommaire
7.3.1 Erreurs système .............................................................................................................................................................................................................302
7.3.2 Problèmes de communication de données d’E/S...........................................................................................................................................................303
7.4 Carte TJ1-DRT .............................................................................................................................................................................................................................304
7.4.1 Erreurs système .............................................................................................................................................................................................................304
7.4.2 Problèmes de communication de données d’E/S...........................................................................................................................................................304
7.5 Carte TJ1-ML__............................................................................................................................................................................................................................304
7.5.1 Erreurs système .............................................................................................................................................................................................................304
7.5.2 Erreurs de bus................................................................................................................................................................................................................304
7.6 Carte TJ1-FL02.............................................................................................................................................................................................................................305
7.6.1 Erreurs système .............................................................................................................................................................................................................305
Révision 3.0
MANUEL DE PROGRAMMATION 15
Avertissements et précautions de sécurité
1 Avertissements et précautions de sécurité

1.1 Public visé

Ce manuel est destiné au personnel disposant d’une connaissance des systèmes électriques (ingénieur électricien ou équivalent) et en charge de la conception, de l’installation et de la gestion des systèmes et des installations d’automatisation.
AVERTISSEMENT Ne court-circuitez jamais les bornes positives et négatives des batte­ries, ne chargez jamais les batteries, ne les démontez pas, ne les déformez pas par l’application d’une force importante et ne les jetez jamais au feu. Les batteries risquent d’exploser, de brûler ou de couler.

1.2 Précautions générales

L’utilisateur doit se servir du produit conformément aux caractéristiques de performances décrites dans le présent manuel. Avant d’utiliser ce produit dans des conditions non décrites dans ce manuel ou d’appliquer le produit à des systèmes de contrôle nucléaire, des systèmes ferroviaires, des systèmes aéronautiques, des véhicules, des équipements de sûreté, des usines pétrochimiques et d’autres systèmes, machines et équipements susceptibles d’avoir des conséquences graves pour la vie et la propriété d’autrui en cas d’utilisation inadéquate, demandez conseil à votre revendeur Omron.

1.3 Précautions de sécurité

AVERTISSEMENT
N’essayez pas de démonter la carte et ne touchez pas aux compo­sants internes lorsque l’appareil est sous tension. Cela peut provoquer une décharge électrique.
AVERTISSEMENT Ne touchez jamais les bornes ou borniers pendant que le système est sous tension.
Révision 3.0
Cela peut provoquer une décharge électrique.
AVERTISSEMENT Des mesures de sécurité doivent être prises par le client pour garantir la sécurité dans le cas de signaux incorrects, manquants ou anormaux dus à une rupture des lignes de signaux, à des inter­ruptions momentanées de l’alimentation ou à d’autres causes. Le non-respect de cet avertissement pourrait provoquer des acci­dents graves.
AVERTISSEMENT Des circuits d’arrêt d’urgence, des circuits de verrouillage, des limi­teurs et des mesures de sécurité similaires doivent être fournis par le client en tant que circuits externes (c’est-à-dire, extérieurs au con­trôleur d’axes Trajexia). Le non-respect de cet avertissement pourrait provoquer des acci­dents graves.
AVERTISSEMENT Lorsque la sortie 24 Vc.c. (alimentation d’E/S du TJ1) est surchar­gée ou court-circuitée, il peut y avoir une baisse de tension entraî­nant une désactivation des sorties. Pour se prémunir contre ce type de problème, des mesures de sécurité externes doivent être prises pour assurer la sécurité du système.
MANUEL DE PROGRAMMATION 16
Avertissements et précautions de sécurité
Révision 3.0
AVERTISSEMENT Les sorties TJ1 se désactivent en cas de surcharge des transistors de sortie (protection). Pour se prémunir contre ce type de pro­blème, des mesures de sécurité externes doivent être prises pour assurer la sécurité du système.
AVERTISSEMENT Le TJ1 désactive le WDOG lorsque la fonction d’autodiagnostic détecte une erreur. Pour se prémunir contre ce type d’erreur, des mesures de sécurité externes doivent être prises pour assurer la sécurité du système.
AVERTISSEMENT Prévoyez des mesures de sécurité pour les circuits externes (exté­rieurs au contrôleur d’axes Trajexia, également appelé « TJ1 ») afin de garantir la sécurité du système si une anomalie se produit à la suite d’un dysfonctionnement du TJ1 ou d’un autre facteur externe affectant le fonctionnement du TJ1. Le non-respect de cet avertissement pourrait provoquer des acci­dents graves.
AVERTISSEMENT N’essayez jamais de démonter, de réparer ou de modifier les cartes. Vous risquez de provoquer un dysfonctionnement, un incendie ou une décharge électrique.
Attention
Assurez-vous de la sécurité de la carte de destination avant de transfé­rer un programme vers une autre carte ou de modifier la mémoire. Si vous exécutez l’une de ces opérations sans vérifier la sécurité, vous risquez de vous blesser.
Attention Les programmes utilisateur écrits sur la carte de contrôle d’axes ne sont pas automatiquement sauvegardés dans la mémoire flash du TJ1 (fonction de mémoire flash).
Attention Prêtez particulièrement attention à la polarité (+/-) lors du raccor­dement de l’alimentation c.c. En effet, un raccordement incorrect risque de faire dysfonctionner le système.
Attention Serrez les vis du bornier de la carte d’alimentation en respectant le couple spécifié dans le présent manuel. Des vis mal serrées risquent de provoquer un incendie ou un dys­fonctionnement.

1.4 Précautions liées à l’environnement d’utilisation

Attention
N’utilisez pas la carte dans l’un des endroits suivants : À défaut, vous risquez de provoquer un dysfonctionnement, une décharge électrique ou un incendie.
- Endroits exposés à la lumière directe du soleil.
- Endroits soumis à des températures ou des taux d’humidité en dehors des valeurs indiquées dans les spécifications.
- Endroits soumis à la condensation due à des variations impor­tantes de température.
- Endroits en contact avec des gaz corrosifs ou inflammables.
- Endroits soumis à la poussière (en particulier, la limaille de fer) ou au contact de sels.
- Endroits soumis à l’exposition d’eau, d’huile ou de produits chimiques.
- Endroits soumis à des chocs ou à des vibrations importantes.
MANUEL DE PROGRAMMATION 17
Avertissements et précautions de sécurité
Attention
Prenez les mesures qui s’imposent lors de l’installation des systè­mes dans les endroits suivants. Des mesures inadaptées et insuffisantes risquent d’entraîner un dysfonctionnement.
- Endroits soumis à de l’électricité statique ou à d’autres formes de parasites.
- Endroits soumis à des champs électromagnétiques intenses.
- Endroits susceptibles d’être exposés à de la radioactivité.
- Endroits à proximité de sources d’alimentation.
Attention L’environnement d’utilisation du système TJ1 peut affecter forte­ment sa longévité et sa fiabilité. Un environnement d’utilisation hostile peut provoquer des dys­fonctionnements, des défaillances et d’autres problèmes imprévi­sibles au niveau du système TJ1. Au moment de l’installation, assurez-vous que l’environnement d’utili­sation est conforme aux conditions spécifiées et qu’il présente toujours les mêmes conditions tout au long de la durée de vie du système.

1.5 Précautions en matière d’application

AVERTISSEMENT
Ne démarrez pas le système avant d’avoir vérifié que les axes sont présents et qu’ils sont du type approprié. Le nombre d’axes flexibles change si des erreurs réseau MECHA­TROLINK-II se produisent lors du démarrage ou en cas de modifi­cation de la configuration du réseau MECHATROLINK-II.
Révision 3.0
AVERTISSEMENT Vérifiez le fonctionnement du programme utilisateur avant de l’exécuter sur la carte. Le non-respect de cet avertissement risque de provoquer un fonc­tionnement inattendu.
Attention Utilisez toujours la tension d’alimentation indiquée dans le présent manuel. Une tension incorrecte peut provoquer des dysfonctionnements ou un incendie.
Attention Prenez les mesures qui s’imposent pour vous assurer que la puis­sance indiquée est conforme à la tension et à la fréquence nomina­les. Soyez particulièrement prudent aux endroits où l’alimentation électrique est instable. Une alimentation électrique incorrecte peut provoquer des dys­fonctionnements.
Attention Installez des disjoncteurs externes et prenez également d’autres mesures de sécurité contre les courts-circuits dans le câblage externe. Des mesures de sécurité insuffisantes contre les courts-circuits peuvent provoquer un incendie.
Attention N’appliquez jamais une tension supérieure à la tension nominale d’entrée aux cartes d’entrées. Une tension excessive peut provoquer un incendie.
MANUEL DE PROGRAMMATION 18
Avertissements et précautions de sécurité
Attention
N’appliquez pas de tension et ne connectez pas de charges aux car­tes de sorties qui dépassent la capacité maximale de commutation. Une tension ou une charge excessive peut provoquer un incendie.
Attention Pendant les essais de tension de régime, débranchez la prise de terre fonctionnelle. À défaut, le système pourrait subir une surchauffe.
Attention Effectuez toujours une mise à la terre de classe 3 (100Ω ou moins) lors de l’installation des cartes. L’absence de connexion à la terre de classe 3 peut provoquer une décharge électrique.
Attention Mettez toujours le système hors tension avant de tenter d’effectuer l’une des opérations suivantes. À défaut, vous risquez de provoquer un dysfonctionnement ou de recevoir une décharge électrique.
- Montage ou démontage de cartes d’extension, de cartes UC ou d’autres cartes.
- Assemblage des cartes.
- Réglage des interrupteurs DIP et des commutateurs rotatifs.
- Connexion des câbles.
- Branchement ou débranchement des connecteurs.
Attention Assurez-vous que toutes les vis de montage, de borne et de connec­teur de câble sont serrées au couple prescrit dans le présent manuel. Un serrage avec un couple incorrect peut provoquer des dysfonc­tionnements.
Attention Laissez l’étiquette de protection contre la poussière sur la carte pendant le câblage. À défaut, vous risquez de provoquer un dysfonctionnement.
Attention Lorsque le câblage est terminé, enlevez l’étiquette de protection contre la poussière pour assurer une bonne dissipation de la chaleur. Si vous laissez cette étiquette, vous risquez de provoquer un dysfonctionnement.
Attention Utilisez des bornes serties pour le câblage. Ne raccordez pas directement de fils toronnés nus à des bornes. Le raccordement de fils toronnés nus peut provoquer un incendie.
Attention Vérifiez encore une fois tout le câblage avant de procéder à la mise sous tension. Un câblage incorrect peut provoquer une surchauffe.
Attention
Révision 3.0
Effectuez correctement les connexions. Un câblage incorrect peut provoquer une surchauffe.
MANUEL DE PROGRAMMATION 19
Avertissements et précautions de sécurité
Attention
Installez la carte uniquement après avoir complètement vérifié le bornier.
Attention
Vérifiez que les borniers, les câbles d’extension et les autres éléments avec systèmes de verrouillage sont bien connectés. Un verrouillage incorrect peut provoquer un dysfonctionnement.
Attention Assurez-vous que le système ne sera pas perturbé avant d’en modifier le mode de fonctionnement. Le non-respect de cette précaution peut engendrer un fonctionne­ment intempestif.
Attention Reprenez l’exploitation uniquement après avoir transféré dans la nouvelle UC le contenu du VR et de la mémoire table néces­saire pour l’exploitation. Le non-respect de cette précaution peut engendrer un fonctionne­ment intempestif.
Attention Lorsque vous remplacez des pièces, vérifiez que les caractéristi­ques nominales des pièces neuves sont correctes. Une différence risque de provoquer un dysfonctionnement ou une surchauffe.
Attention Avant de toucher le système, touchez d’abord un objet métallique relié à la terre afin de vous décharger de toute électricité statique qui aurait pu s’accumuler. Le non-respect de cette consigne peut provoquer un dysfonction­nement ou des dommages.
Attention Les câbles UTP ne sont pas blindés. Dans des environnements exposés aux parasites, utilisez un système équipé d’un câble blindé à paire torsadée (STP) et de concentrateurs correspondant à un environnement FA. Ne placez pas de câbles à paire torsadée avec des lignes haute tension. Ne placez pas de câbles à paire torsadée à proximité d’appareils générant des parasites. Ne placez pas de câbles à paire torsadée dans des endroits expo­sés à un taux d’humidité élevé. Ne placez pas de câbles à paire torsadée dans des endroits expo­sés à une présence excessive de poussière et de salissure, à des traces d’huile ou à d’autres contaminants.
Attention Utilisez les câbles de raccordement dédiés spécifiés dans les manuels d’utilisation pour connecter les cartes. L’utilisation de câbles informatiques RS-232C disponibles dans le commerce risque de provoquer des pannes des périphériques externes ou de la carte de contrôle d’axes.
Révision 3.0
Attention Ne tirez pas sur les câbles et ne les pliez pas au-delà des limites qu’ils peuvent normalement supporter. Vous pourriez en effet cas­ser les câbles.
MANUEL DE PROGRAMMATION 20
Avertissements et précautions de sécurité
Attention
Les sorties peuvent rester activées à la suite d’un dysfonctionne­ment au niveau des sorties de transistor intégrées ou d’autres circuits internes. Pour se prémunir contre ce type de problème, des mesures de sécurité externes doivent être prises pour assurer la sécurité du système.
Attention Le TJ1 démarre en mode RUN à sa mise sous tension et lorsqu’un programme BASIC est défini en mode d’exécution automatique (Auto Run).
1.6 Précautions à prendre lors du montage de cartes
Attention
Installez la carte correctement. Toute installation incorrecte de la carte peut provoquer un dys­fonctionnement.
Attention Veillez à placer la carte de terminaison fournie avec le TJ1-MC__ sur la carte située la plus à droite. Le TJ1 ne fonctionnera pas correctement en cas de montage incorrect de la carte de terminaison.
Révision 3.0
MANUEL DE PROGRAMMATION 21
Système Trajexia
2 Système Trajexia

2.1 Introduction

Trajexia est la plate-forme de contrôle d’axes d’Omron qui procure les performances et la convivialité d’un système de contrôle d’axes dédié.
Trajexia est un système modulaire autonome qui offre une souplesse et une évolutivité optimales. Au cœur de Trajexia, on retrouve le nouveau coordinateur multitâche TJ1. Optimisé par un DSP 32 bits, il peut effectuer des tâches de contrôle d’axes telles que la came électronique (e-cam), le réducteur électronique (e-gearbox), le contrôle d’enregistrement et l’interpolation, le tout à l’aide de commandes de contrôle simples.
Trajexia permet de contrôler jusqu’à 16 axes sur le bus d’axes MECHATROLINK-II ou un contrôle analogique ou par impulsions classique avec un contrôle indépendant de la position, de la vitesse ou du couple de chaque axe. Par ailleurs, son puissant jeu d’instructions d’axe permet une programmation intuitive et aisée.
Vous disposez d’un vaste choix de variateurs et de servodrivers rotatifs, linéaires et à entraînement direct, qui se classent aux meilleures places de leur catégorie. Enfin, le système est extensible jusqu’à 16 axes et 8 variateurs et modules d’E/S.
IHM série NS
E/S numérique
Hostlink
MECHATROLINK-II
Fig. 1
API série CJ CX-One
Trajexia Tools
Ethernet
Maître
PROFIBUS-DP
Maître
DEVICENET
Révision 3.0
MANUEL DE PROGRAMMATION 22
Système Trajexia
2.1.1 Matériel Trajexia
Le matériel Trajexia est décrit dans le Manuel de référence du matériel Trajexia. Il est recommandé de commencer par lire ce Manuel de référence du matériel. Le système Trajexia présente les avantages suivants :
Connectivité directe via Ethernet
Le port Ethernet intégré de Trajexia permet d’établir une connexion directe et rapide vers des ordinateurs, des API, des IHM et d’autres périphériques. En outre, il fournit un accès complet aux drivers via un bus de contrôle d’axes MECHATROLINK-II. Ce connecteur autorise la transmission de messages explicites via Ethernet et MECHATROLINK-II afin de garantir la transparence totale jusqu’au niveau de l’actionneur. Il permet enfin de configurer un accès à distance.
Préservation de votre savoir-faire
La méthode de cryptage de Trajexia garantit la protection et la confidentialité de votre précieux savoir-faire.
Port série et E/S locales
Un port série fournit la connectivité directe aux API, IHM et autres périphériques de terrain Omron. Des entrées/sorties sont librement configurables (16 entrées et 8 sorties) sur le contrôleur, ce qui vous permet de personnaliser Trajexia en fonction de votre équipement.
Maître MECHATROLINK-II
Le maître MECHATROLINK-II permet de contrôler un maximum de 16 servos, variateurs ou E/S, tout en assurant une transparence complète sur l’ensemble du système. MECHATROLINK-II offre la vitesse de communication et la précision temporelle essentielles pour garantir un parfait contrôle des axes des servos. Le temps de cycle de contrôle d’axes peut être réglé sur différentes valeurs : 0,5 ms, 1 ms ou 2 ms.
Drivers et variateurs
Vous disposez d’un vaste choix de variateurs et de servodrivers rotatifs, linéaires et à entraînement direct, qui répondent à tous vos besoins en termes de compacité, de performances et de fiabilité. Les variateurs raccordés au réseau MECHATROLINK-II sont pilotés au même rythme de cycle de mise à jour que les servos.
E/S déportées
Les E/S du bus de contrôle d’axes MECHATROLINK-II permettent d’étendre le système tout en regroupant les périphériques sur un seul bus de contrôle d’axes.
PROFIBUS-DP
L’esclave PROFIBUS-DP permet d’établir la connexion avec le réseau PROFIBUS sur la machine.
DeviceNet
L’esclave DeviceNet permet d’établir la connexion avec le réseau DeviceNet sur la machine.
2.1.2 Présent manuel
Ce Manuel de programmation fournit des informations dédiées relatives aux éléments suivants :
Description et utilisation des commandes BASIC
Protocoles de communication nécessaires pour le système Trajexia
Description et utilisation des éléments de l’interface Trajexia Tools
Exemples de programmes et recommandations relatives à la programmation
Résolution des problèmes et recherche de pannes

2.2 Programmation BASIC multitâche

TJ1-FL02 (carte d’axe flexible)
La carte TJ1-FL02 assure un contrôle intégral de deux actionneurs via une sortie analogique ou un train d’impulsions. Le module prend en charge les
Révision 3.0
principaux protocoles de codeur absolu afin d’établir la connexion d’un codeur externe au système.
MANUEL DE PROGRAMMATION 23
Les cartes TJ1-MC__ (cartes de contrôle d’axes) proposent une version multitâche du langage de programmation BASIC. Le langage de contrôle d’axes repose essentiellement sur des commandes BASIC à jetons et les programmes sont compilés dans le format à jetons avant d’être exécutés.
Système Trajexia
La configuration et l’utilisation du multitâche sont très simples. En outre, le multitâche permet de programmer des machines très complexes. Le TJ1-MC__ bénéficie ainsi d’un avantage significatif par rapport aux systèmes monotâche équivalents. En effet, le multitâche permet de créer des applications modulaires dans lesquelles il est possible de regrouper les processus liés logiquement dans un même programme de tâche, ce qui simplifie l’architecture et la conception du code. Le TJ1-MC__ peut contenir jusqu’à 14 programmes si la taille de la mémoire l’autorise. L’exécution des programmes est déterminée par l’utilisateur à l’aide de commandes BASIC. Les commandes, fonctions et paramètres BASIC présentés dans cette section figurent au chapitre 3.

2.3 Programmation BASIC

Le langage BASIC est constitué, entre autres, de commandes, de fonctions et de paramètres. Ces instructions BASIC représentent les unités élémentaires fournies pour contrôler le fonctionnement du TJ1-MC__. Une commande est un mot reconnu par le processeur qui permet d’effectuer une action donnée, mais qui ne renvoie aucune valeur. Par exemple, PRINT est un mot reconnu qui entraîne l’impression de la valeur des fonctions ou variables qui suivent sur un périphérique de sortie donné. Une fonction est un mot reconnu par le processeur qui permet d’effectuer une action donnée et qui renvoie une valeur liée à cette action. Par exemple, prend la valeur du paramètre correspondant et renvoie sa valeur absolue,
PRINT
ABS(-1)
pour générer
qui peut être utilisée par une autre fonction ou commande. Ainsi, renvoie la valeur 1, qui peut être utilisée par la commande une chaîne à transmettre à un périphérique donné, par exemple. Un paramètre est un mot reconnu par le processeur qui contient une valeur donnée. Cette valeur peut être lue et écrite, si elle n’est pas en lecture seule. Les paramètres servent à déterminer et à surveiller le comportement du système. Par exemple, ACCEL détermine le taux d’accélération d’un mouvement pour un axe donné.
2.3.1 Instructions liées aux axes, au système et aux tâches
Les commandes, fonctions et paramètres concernent les axes, les tâches
Révision 3.0
en cours d’exécution ou le système en général.
ABS
Instructions liées aux axes
Les commandes de contrôle d’axes et les paramètres d’axe s’appliquent à un ou plusieurs axes. Les paramètres d’axe déterminent et contrôlent la réaction d’un axe face aux commandes fournies et à l’environnement extérieur. Chaque axe comporte un jeu de paramètres, de sorte que tous les axes puissent travailler indépendamment les uns des autres. Les commandes de contrôle d’axes permettent de contrôler simultanément un ou plusieurs axes, chaque axe présentant un comportement qui lui est propre. À chaque démarrage, les valeurs par défaut des paramètres d’axe sont rétablies. Les commandes et paramètres fonctionnent sur un ou plusieurs axes de base spécifiés par la commande BASE, qui sert à modifier ce groupe d’axes de base. Chaque tâche est associée à un groupe donné qui peut être modifié à tout moment. L’axe de base par défaut est 0. Il est également possible de programmer des commandes ou des paramètres d’axe individuel afin de travailler sur un axe de base temporaire. Pour cela, il suffit
AXIS
d’inclure la fonction de l’axe. Un axe de base temporaire n’est valable que pour la commande ou le paramètre qui précède
en tant que modificateur de la commande dépendante
AXIS
.
Instructions liées aux tâches
Les paramètres de tâche ne concernent qu’une seule tâche. Ils permettent de contrôler la tâche, par exemple à des fins de traitement des erreurs. Le modificateur
PROC
Si La commande utilisée avec le modificateur
n’est pas spécifié, c’est la tâche actuelle qui est prise en compte.
PROC
BASE
permet d’accéder au paramètre d’une tâche donnée.
(voir ci-dessus) est spécifique d’une tâche et peut être
PROC
.
Instructions liées au système
Ces instructions concernent les fonctionnalités liées à l’ensemble du système. Il s’agit essentiellement de toutes les instructions n’appartenant pas aux deux premiers groupes.
2.3.2 Zones mémoire
Trois zones mémoire principales sont identifiables sur la carte de contrôle d’axes Trajexia :
Mémoire E/S
Mémoire VR
Mémoire TABLE
MANUEL DE PROGRAMMATION 24
Système Trajexia
Mémoire E/S
La mémoire E/S sert à stocker l’état des périphériques d’entrée et de sortie connectés au système Trajexia. Elle est divisée en deux zones secondaires : une pour la mémoire E/S numérique et une autre pour la mémoire E/S analogique. La mémoire E/S numérique contient l’état d’entrée et de sortie des périphériques d’E/S numériques. Sa capacité est de 256 bits (points d’entrée) pour les entrées et de 256 bits (points de sortie) pour les sorties. Les entrées de cette mémoire sont accessibles à l’aide de la commande
OUT
sont accessibles à l’aide de la commande La mémoire E/S analogique contient les valeurs d’entrée et de sortie des périphériques d’E/S analogiques. Sa capacité est de 36 canaux d’entrée et de 36 canaux de sortie. Les canaux d’entrée analogiques sont accessibles à l’aide de la commande accessibles à l’aide de la commande
AIN
, tandis que les canaux de sortie analogiques sont
AOUT
.
.
IN
, tandis que les sorties
Mémoire VR
La mémoire VR est généralement utilisée si des données ou des valeurs doivent être définies de manière globale, c’est-à-dire qu’elles doivent être accessibles simultanément à partir de tous les programmes du projet. La taille de cette mémoire est de 1024 emplacements avec des indices de 0 à 1023. L’adresse d’un emplacement mémoire est définie à l’aide de la macro où
x
correspond à l’indice de l’emplacement mémoire VR. La mémoire VR est
accessible en lecture et en écriture. L’écriture est effectuée en réalisant une
=
affectation mathématique à l’aide de la commande Le contenu de cette mémoire est placé dans la mémoire RAM alimentée par batterie et est préservé lors de la mise sous tension. La mémoire VR est également préservée lors du remplacement de la batterie, si cette opération est effectuée rapidement.
dans le programme.
VR(x)
Mémoire TABLE
La mémoire TABLE est généralement utilisée si des données ou des valeurs doivent être définies de manière globale, c’est-à-dire qu’elles doivent être accessibles simultanément à partir de tous les programmes du projet. La mémoire VR est utilisée à des fins similaires pour définir plusieurs données et valeurs globales. Toutefois, la mémoire TABLE est utilisée pour des volumes de données globales
Révision 3.0
plus importants et qui doivent également être disposés dans un ordre spécifique. Par conséquent, la mémoire TABLE sert généralement à stocker des données TABLE, des profils de mouvement, des données de journalisation, etc. Certaines
commandes BASIC qui fournissent ce type et cette taille de données (
CAM, CAMBOX
leurs résultats. La taille de cette mémoire est de 64000 emplacements avec des indices de 0 à 63999. La mémoire TABLE est également accessible en lecture et en écriture, mais le mode d’accès diffère pour ces deux opérations. Pour pouvoir être lu, un emplacement donné de la mémoire TABLE doit d’abord être défini et écrit à l’aide de la commande premier emplacement de la mémoire TABLE à définir, et correspondent aux valeurs écrites dans la mémoire TABLE aux indices x, x+1, etc. Une fois défini et écrit, l’emplacement de la mémoire TABLE peut être lu à l’aide de la commande TABLE. Toute tentative de lecture d’un emplacement mémoire TABLE non défini entraîne une erreur signalée par le TJ1-MC__. Le contenu de la mémoire TABLE placé dans la mémoire RAM alimentée par batterie et est préservé lors de la mise sous tension. La mémoire TABLE est également préservée lors du remplacement de la batterie, si cette opération est effectuée rapidement.
, etc.) nécessitent l’utilisation de la mémoire TABLE pour écrire
TABLE(x, valeur1, valeur2,…)
TABLE(x)
, où x correspond à l’indice de l’emplacement mémoire
, où x correspond à l’indice du
valeur1, valeur2
SCOPE
,
, etc.,
2.3.3 Structure des données et variables
Les programmes BASIC peuvent stocker des données numériques dans
,
différents types de variables. Certaines variables contiennent des fonctions prédéfinies, comme les paramètres liés aux axes et au système, tandis que d’autres variables peuvent être définies en fonction des besoins du programmeur. Cette section explique les variables TABLE, globales et locales du TJ1-MC__. Elle décrit également l’utilisation des labels.
Variables TABLE
La mémoire TABLE est une structure tabulaire qui contient une série de nombres. Ces nombres servent, par exemple, à spécifier des positions dans le profil pour une commande CAM ou CAMBOX. Ils peuvent également être utilisés pour stocker des données pour une utilisation ultérieure, par exemple pour stocker des paramètres servant à définir une pièce à traiter. Les variables TABLE sont communes à toutes les tâches du TJ1-MC__. Ainsi, les valeurs écrites dans la mémoire TABLE à partir d’une tâche peuvent être lues sur les autres tâches. Les valeurs TABLE peuvent être écrites et lues à l’aide de la commande TABLE. La longueur maximale du tableau est de 64 000 éléments, de TABLE(0) à TABLE(63999). Le tableau TABLE est initialisé jusqu’à l’élément défini le plus élevé.
MANUEL DE PROGRAMMATION 25
Système Trajexia
Variables globales
Définies dans la mémoire VR, les variables globales sont communes à toutes les tâches du TJ1-MC__. Ainsi, si un programme exécuté sur la tâche 2 définit VR(25) sur une valeur donnée, tout autre programme exécuté sur une autre tâche peut lire cette valeur à partir de VR(25). Cela peut s’avérer utile pour synchroniser plusieurs tâches, mais vous devez rester prudent afin d’éviter que plusieurs programmes n’écrivent simultanément dans la même variable. Le contrôleur contient 1024 variables globales, VR(0) à VR(1023). Les variables
VR
sont lues et écrites à l’aide de la commande
.
Les données TABLE et VR sont accessibles à partir des différentes tâches en cours d’exécution. En cas d’utilisa­tion de variables VR ou TABLE, veillez à n’utiliser qu’une seule tâche pour écrire dans une variable spécifique. Vous éviterez ainsi les problèmes liés à l’écriture inatten­due de deux tâches de programme dans une variable.
Variables locales
Des variables nommées, ou variables locales, peuvent être déclarées dans des programmes. Il s’agit de variables locales à la tâche, ce qui signifie que plusieurs programmes exécutés sur des tâches différentes peuvent utiliser le même nom de variable, mais leurs valeurs peuvent être différentes. Les variables locales ne peuvent pas être lues à partir des tâches, à l’exception de celle dans laquelle elles sont déclarées. Les variables locales sont toujours effacées au lancement d’un programme. Il est possible de les effacer à l’aide de la commande CLEAR ou RESET. Un maximum de 255 variables locales peuvent être déclarées. Seuls les 16 premiers caractères du nom sont importants. Les variables locales non définies renvoient la valeur zéro. Il est impossible de déclarer des variables locales dans la ligne de commande.
Utilisation des variables et des labels
Chaque tâche possède ses propres labels et variables locaux. Prenons par exemple les deux programmes suivants :
/i
start:
FOR a = 1 to 100
MOVE(a) WAIT IDLE
NEXT a
GOTO start
Lorsqu’ils sont exécutés sur des tâches différentes, ces deux programmes possèdent leur propre version de la variable a et du label start. Si vous souhaitez conserver des données communes entre plusieurs programmes, vous devez utiliser des variables VR. Si le volume des données à conserver est important, vous pouvez utiliser la mémoire TABLE. Pour qu’un programme soit plus lisible lors de l’utilisation d’une variable VR globale, deux approches sont possibles. La première consiste à utiliser une variable locale nommée en tant que constante de la variable VR. Toutefois, la variable constante locale doit être déclarée dans chaque programme à l’aide de la variable VR globale. En fonction de cette approche, l’exemple ci-dessous indique comment utiliser la variable VR(3) afin qu’elle contienne un paramètre de longueur (length) commun à plusieurs programmes :
/i
start:
GOSUB Initial VR(length) = x ... ...
start:
a = 0 REPEAT
a = a + 1 PRINT a
UNTIL a = 300
GOTO start
start:
GOSUB Initial MOVE(VR(length)) PRINT(VR(length)) ...
Labels
Les programmes BASIC sont exécutés dans l’ordre décroissant via les lignes. Des labels peuvent être utilisés pour modifier ce flux d’exécution à l’aide des
Révision 3.0
commandes BASIC correspondre à la première instruction d’une ligne et doit se terminer par le signe deux-points (:). Un label peut être une chaîne de caractères de longueur indéfinie,
GOTO
et
GOSUB
. Pour pouvoir être défini, un label doit
Initial: length = 3 RETURN
La seconde approche est plus lisible et utilise la commande GLOBAL pour déclarer le nom en tant que référence à l’une des variables VR globales. Ce nom peut ensuite être utilisé à partir du programme qui contient la
Initial:
length = 3 RETURN
mais seuls les 15 premiers caractères sont importants.
MANUEL DE PROGRAMMATION 26
Système Trajexia
définition GLOBAL et tous les autres programmes. N’oubliez pas que le programme qui contient la définition GLOBAL doit être exécuté avant que le nom soit utilisé dans d’autres programmes. Il est recommandé de définir des noms globaux dans le programme de démarrage. En fonction de cette approche, l’exemple ci-dessus se présente comme suit :
/i
'Déclaration dans le programme de démarrage GLOBAL length, 3
'Dans les autres programmes exécutés aprčs le programme de démarrage
start:
length = x ... ...
start:
MOVE(length) PRINT(length) ...
2.3.4 Spécifications mathématiques
Format des nombres
Le TJ1-MC__ prend en charge deux formats principaux pour les valeurs numériques : virgule flottante à simple précision et nombre entier à simple précision. Le format virgule flottante simple précision correspond à une valeur de 32 bits en interne. Elle comporte un champ d’exposant de 8 bits, un bit de signe et un champ de fraction de 23 bits avec la valeur 1 implicite en tant que 24ème bit. Les nombres à virgule flottante doivent être compris dans la plage de ±5,9×10 Les nombres entiers sont essentiellement des nombres à virgule flottante avec un exposant zéro, ce qui implique qu’ils correspondent à 24 bits. La plage de nombres entiers est comprise entre -16 777 216 et 16 777 215. Les valeurs numériques non comprises dans cette plage sont des nombres à virgule flottante.
Tous les calculs mathématiques sont effectués au format
Révision 3.0
virgule flottante. Ainsi, pour les calculs impliquant des valeurs élevées, la précision des résultats risque d’être limitée. L’utilisateur doit tenir compte de ce fait lors du développement de l’application de contrôle d’axes.
39
à ±3,4×1038.
Format hexadécimal
Le TJ1-MC__ prend en charge l’affectation et l’impression de valeurs hexadécimales. Un nombre hexadécimal est entré en lui ajoutant le caractère $ comme préfixe. La plage valide s’étend de -0x0 à 0xFFFFFF. Exemple :
>> VR(0) = $FF >> PRINT VR(0)
255.0000
Il est possible d’afficher une valeur au format hexadécimal à l’aide de la fonction
HEX
. Les valeurs négatives entraînent des valeurs hexadécimales à complément 2
(24 bits). La plage valide s’étend de
>> TABLE(0,-10,65536) >> PRINT HEX(TABLE(0)),HEX(TABLE(1)) FFFFF6 10000
8 388 608 à 16 777 215. Exemple :
Positionnement
En ce qui concerne le positionnement, le TJ1-MC__ effectue un arrondi si la distance fractionnaire du front du codeur dépasse la valeur 0,9. Sinon, la fraction est arrondie vers le bas. La position mesurée et la position demandée internes des axes, représentées par les paramètres d’axe
MPOS
et
DPOS
, possèdent
des compteurs 32 bits.
Comparaison à virgule flottante
Afin d’éviter les résultats de comparaison inattendus, la fonction de comparaison considère que des valeurs séparées par un faible écart sont égales. Par conséquent, deux valeurs dont l’écart est inférieur à 1,19×10
6
sont considérées comme étant égales.
Ordre de priorité
L’ordre de priorité des opérateurs est indiqué ci-dessous :
1. Moins unaire, NOT
2. ^
3. / *
4. MOD
5. + -
6. = <> > >= <= <
7. AND OR XOR
8. Gauche à droite
MANUEL DE PROGRAMMATION 27
Système Trajexia
Pour garantir l’ordre de priorité des différents opérateurs, il est recommandé d’utiliser des parenthèses.

2.4 Exécution de mouvement

Chaque tâche du TJ1-MC__ est associée à un ensemble de tampons qui contiennent les informations provenant des commandes de mouvement fournies.
2.4.1 Générateur de mouvement
Le générateur de mouvement comporte deux tampons de mouvement pour chaque axe. Un tampon, appelé MTYPE, contient le mouvement réel, c’est-à-dire le mouvement actuellement exécuté sur l’axe. L’autre tampon, appelé NTYPE, contient le mouvement suivant, exécuté après le mouvement réel. Pour obtenir des informations détaillées, reportez-vous au chapitre 2.8 « Tampons de contrôle » du Manuel de référence du matériel.
Les programmes BASIC sont distincts du programme du générateur de mouvement, qui contrôle les mouvements des axes. Le générateur de mouvement dispose de fonctions distinctes pour chaque axe. Ainsi, il est possible de programmer chaque axe en fonction de paramètres d’axe qui lui sont propres (par exemple, vitesse, accélération) et de le déplacer de manière indépendante et simultanée. Par ailleurs, des commandes spéciales permettent de relier des axes. Lors du traitement d’une commande de mouvement, le générateur de mouvement attend que le mouvement soit terminé et que le tampon de l’axe soit vide, puis charge les informations sur le mouvement suivant dans les tampons.
Révision 3.0
MANUEL DE PROGRAMMATION 28
Système Trajexia
Si les tampons de tâches sont saturés, l’exécution du programme est interrompue jusqu’à ce que les tampons soient à nouveau disponibles. Ce principe concerne éga­lement la tâche de ligne de commande et aucune com­mande ne peut être générée pendant cette période. Le cas échéant, Trajexia Tools se déconnecte. Le para­mètre de tâche PMOVE prend la valeur TRUE si les tam­pons de tâches sont saturés et la valeur FALSE lorsque ces tampons sont à nouveau disponibles.
2.4.2 Séquençage
À chaque interruption du cycle de servo (voir la section 2.6.3), le générateur de mouvement examine les tampons NTYPE pour déterminer leur disponibilité. Si un tampon est disponible, il contrôle les tampons de tâches pour savoir si un mouvement est en attente de chargement. Si un mouvement peut être chargé, les données correspondant à tous les axes spécifiés sont chargées des tampons de tâches vers les tampons NTYPE et les tampons de tâches correspondants sont marqués comme inactifs. Ce processus est appelé « séquençage ».
Fig. 2
Tampons de tâches
Tâche 1
MOVECIRC(..) AXIS(0) FORWARD AXIS(1)
Tâche 2 Tâche 3
MOVE(..) AXIS(0)
Tampons de mouvement
Axe
Mouvement suivant (NTYPE)
Mouvement suivant (NTYPE)
Générateur
de mouvement
Séquençage
012
MOVE (1)
MOVECIRC (4)
FORWARD (10)
MOVECIRC (4)
IDLE (0)
IDLE (0)
Chargement de mouvement
2.4.3 Chargement de mouvement
Une fois le séquençage terminé, les tampons pour déterminer si des mouvements peuvent être chargés. Si les tampons
MTYPE
des tampons
NTYPE
sont marqués comme inactifs. Ce processus est appelé
requis sont disponibles, le mouvement est chargé
NTYPE
vers les tampons
« chargement de mouvement ». Si les tampons un mouvement valide, celui-ci est traité. Une fois le mouvement terminé, les tampons
Révision 3.0
MANUEL DE PROGRAMMATION 29
MTYPE
sont marqués comme inactifs.
MTYPE
MTYPE
sont contrôlés
, puis les tampons
MTYPE
contiennent
Système Trajexia
2.5 Interface de ligne de commande
L’interface de ligne de commande fournit une interface directe permettant d’exécuter des commandes et d’accéder aux paramètres sur le système. Utilisez la fenêtre de terminal de Trajexia Tools lorsque le TJ1-MC__ est connecté. Pour plus d’informations, reportez-vous à la section 5.5.4. Le TJ1-MC__ place dans un tampon les 10 dernières commandes transmises par la ligne de commande. Appuyez sur la touche Haut ou Bas du clavier pour faire défiler le contenu du tampon et réexécuter une commande.

2.6 Programmes BASIC

Le TJ1-MC__ peut stocker jusqu’à 14 programmes en mémoire, sous réserve de ne pas dépasser la capacité de la mémoire. Le TJ1-MC__ prend en charge les instructions de gestion de fichiers simples pour gérer les fichiers programmes à l’instar du système de fichiers DOS sur un ordinateur. Le progiciel Trajexia Tools sert à stocker et à charger des programmes avec un ordinateur à des fins d’archivage, d’impression et de modification. Il intègre également des fonctions de surveillance et de débogage du contrôleur. Reportez-vous au chapitre 5.
2.6.1 Gestion des programmes
Trajexia Tools crée automatiquement un projet contenant les programmes à utiliser pour une application. Les programmes du projet sont conservés sur le contrôleur et sur l’ordinateur. Lors de la création ou de la modification d’un programme, Trajexia Tools modifie les deux copies afin qu’il existe toujours une sauvegarde précise en dehors du contrôleur. Trajexia Tools vérifie que les deux versions du projet sont identiques à l’aide d’un contrôle de redondance cyclique. En cas de différence, Trajexia Tools autorise la copie de la version TJ1-MC__ vers le disque ou inversement. Les programmes stockés sur l’ordinateur sont au format de fichiers texte ASCII. Par conséquent, il est possible de les afficher, de les modifier et de les copier à l’aide d’un simple éditeur de texte. Les programmes sources sont conservés sur le TJ1-MC__ dans un format à jetons. Ainsi, la taille des programmes
Révision 3.0
sur le TJ1-MC__ est inférieure à celle des programmes sur l’ordinateur.
Les programmes du TJ1-MC__ sont placés dans la mémoire RAM alimentée par batterie et sont préservés lors de coupures d’alimentation. Ce principe est similaire aux mémoires VR et TABLE. Le contenu de la mémoire RAM des programmes est préservé tant que la batterie est dans le TJ1-MC__. Les programmes sont également préservés lors du remplacement de la batterie, si cette opération est effectuée rapidement. Pour conserver les programmes sans la batterie pendant une période prolongée, les programmes actuels doivent être copiés dans la mémoire flash du contrôleur à l’aide de la commande puis lus lors de la mise sous tension (paramètre système
POWER_UP
EPROM
).
,
Commandes des programmes
Le TJ1-MC__ propose plusieurs commandes BASIC permettant de créer, de manipuler et de supprimer des programmes. Toutefois, l’utilisation de ces commandes n’est généralement pas requise dans les programmes, car Trajexia Tools fournit des boutons permettant également d’effectuer ces opérations.
/i
Com­mande
SELECT Sélectionne un programme à des fins de modification, de suppression, etc.
NEW Supprime le programme actuel, un programme donné ou tous
DIR Affiche le contenu du répertoire de l’ensemble des programmes.
COPY Duplique un programme donné.
RENAME Renomme un programme donné.
DEL Supprime le programme actuel ou un programme donné.
LIST Affiche le programme actuel ou un programme donné.
Fonction
les programmes.
Stockage des programmes
MANUEL DE PROGRAMMATION 30
Système Trajexia
2.6.2 Compilation de programmes
Le système TJ1-MC__ compile automatiquement les programmes. Il n’est dès lors généralement pas nécessaire de forcer le TJ1-MC__ à compiler les programmes. Toutefois, il est possible de compiler les programmes via le menu Program (Programme) de Trajexia Tools. Le système TJ1-MC__ compile automatiquement un programme dans les cas suivants :
Le programme sélectionné est compilé avant son exécution s’il a été modifié.
Le programme sélectionné est compilé s’il a été modifié avant de sélectionner un autre programme.
Le programme sélectionné est compilé à l’aide de la commande COMPILE.
La syntaxe et la structure d’un programme sont contrôlées lors de la compilation. En cas d’échec de la compilation, un message s’affiche et aucun code programme n’est généré. Une crois rouge s’affiche dans l’arborescence Trajexia Tools. Il est impossible d’exécuter un programme si des erreurs de compilation se produisent. Dans ce cas, les erreurs doivent être corrigées et le programme recompilé. Le processus de compilation implique également les opérations suivantes :
Suppression des commentaires.
Compilation des nombres dans le format de processeur interne.
Conversion des expressions au format RPN (Reverse Polish Notation) à des fins d’exécution.
Précalcul des emplacements des variables.
Calcul et incorporation des destinations de structure en boucle.
Le processus de compilation nécessitant de la mémoire libre, des erreurs de compilation inattendues peuvent se produire en cas d’insuffisance de la mémoire libre.
Révision 3.0
2.6.3 Exécution de programmes
Le timing de l’exécution des différentes tâches et du rafraîchissement des E/S du TJ1-MC__ varie en fonction du cycle servo du système. Ce cycle est déterminé par le paramètre système
SERVO_PERIOD
. Pour le TJ1-MC__,
le cycle servo est égal à 0,5, 1,0 ou 2,0 ms.
Rafraîchissement d’E/S
L’état des E/S du TJ1-MC__ est rafraîchi au début de chaque cycle servo.
L’état capturé des entrées numériques est transféré à la variable
d’entrée système IN. Il s’agit du statut capturé lors du cycle servo précédent.
Les sorties analogiques sont mises à jour pour les références de vitesse.
Les sorties numériques sont mises à jour en fonction de l’état de la
variable de sortie système OP.
L’état des entrées numériques est capturé.
Aucun traitement automatique des signaux d’E/S n’a lieu, sauf pour l’enregistrement. Ainsi, toutes les actions doivent être programmées dans les programmes BASIC.
Commandes correspondantes
Trajexia Tools permet d’exécuter, de mettre en pause et d’arrêter les programmes de différentes manières, à l’aide de boutons présents sur le panneau de commande et dans les fenêtres de modification. Les commandes ci-dessous peuvent être fournies dans la ligne de commande à des fins de contrôle de l’exécution.
/i
Commande Fonction
RUN Exécute le programme actuel ou un programme donné,
éventuellement pour un numéro de tâche spécifique.
STOP Arrête le programme actuel ou un programme donné.
HALT Arrête tous les programmes du système.
PROCESS Affiche toutes les tâches en cours d’exécution.
MANUEL DE PROGRAMMATION 31
Système Trajexia
L’utilisateur peut définir la priorité de tâche selon laquelle le programme BASIC doit être exécuté. Lorsqu’un programme utilisateur est exécuté sans allocation de tâche explicite, il prend automatiquement la priorité de tâche la plus élevée disponible.
Définition de programmes pour exécution au démarrage
Il est possible de définir les programmes pour qu’ils soient exécutés automatiquement en fonction de priorités différentes lors de la mise sous tension. Si nécessaire, l’ordinateur peut rester connecté en tant qu’interface opérateur ou peut être supprimé, auquel cas les programmes sont exécutés en mode autonome. Dans Trajexia Tools, les programmes sont définis pour être exécutés automatiquement au démarrage à l’aide de l’option Set Power Up Mode... (Définir le mode au démarrage...) du menu Program (Programme). Cette opération permet de déterminer l’exécution automatique et la priorité d’un programme. Elle peut également être effectuée à l’aide de la commande BASIC RUNTYPE. Vous pouvez consulter l’état actuel à l’aide de la commande DIR. Pour plus d’informations sur le contrôle de programme, le multitâche et les cycles, reportez-vous aux sections 2.2 et 2.3 du Manuel de référence du matériel Trajexia.
Révision 3.0
MANUEL DE PROGRAMMATION 32
Commandes BASIC
3 Commandes BASIC

3.1 Catégories

Cette section répertorie toutes les commandes BASIC classées par catégories. Ces catégories sont les suivantes :
Commandes d’axe
Paramètres d’axe
Commandes et paramètres de communication
Constantes
Commandes, fonctions et paramètres d’E/S
Fonctions et opérandes mathématiques
Commandes de programme
Commandes de contrôle de programme
Paramètres et modificateurs d’emplacement
Commandes et fonctions système
Paramètres système
Commandes et paramètres de tâche
Ces listes ne servent qu’à titre de référence rapide. La section suivante fournit la description détaillée des commandes par ordre alphabétique.
3.1.1 Commandes d’axe
/i
Nom Description
ACC Modifie simultanément les paramètres ACCEL et DECEL.
ADD_DAC Additionne la valeur DAC d’un axe à la sortie analogique de l’axe
de base.
ADDAX Définit un lien vers un axe superposé. Tous les mouvements
de position demandée pour l’axe superposé sont ajoutés aux mou­vements en cours d’exécution.
B_SPLINE Développe le profil stocké dans la mémoire TABLE à l’aide
Révision 3.0
de la fonction mathématique B-spline.
Nom Description
BASE Sert à définir l’axe de base auquel les commandes et paramètres
sont appliqués.
CAM Déplace un axe en fonction des valeurs d’un profil de mouvement
stocké dans le tableau des variables TABLE.
CAMBOX Déplace un axe en fonction des valeurs d’un profil de mouvement
stocké dans le tableau des variables TABLE. Le mouvement est lié au mouvement mesuré d’un autre axe afin de constituer un réduc­teur électronique logiciel à variation continue.
CANCEL Annule le mouvement sur un axe.
CONNECT Relie la position demandée d’un axe aux mouvements mesurés
de l’axe spécifié pour l’argument axe_pilotage afin de produire un réducteur électronique.
DATUM
DEFPOS Définit la position actuelle en tant que nouvelle position absolue.
DISABLE_GROUP Regroupe les axes à des fins de désactivation d’erreur.
DRIVE_ALARM Surveille l’alarme actuelle.
DRIVE_CLEAR Efface l’état d’alarme du servodriver.
DRIVE_READ Lit le paramètre spécifié du servodriver.
DRIVE_RESET Réinitialise le servodriver.
DRIVE_WRITE Écrit une valeur donnée dans le paramètre spécifié du servodriver.
ENCODER_READ Lit un paramètre du codeur absolu EnDat.
ENCODER_WRITE Écrit dans un paramètre du codeur absolu EnDat.
FORWARD Déplace un axe selon un mouvement continu vers l’avant
HW_PSWITCH Active et désactive le commutateur matériel sur la sortie 0 de
MECHATROLINK Initialise le bus MECHATROLINK-II et effectue différentes opéra-
MHELICAL
Effectue l’une des 7 séquences de recherche d’origine afin de placer un axe sur une position absolue ou de réinitialiser une erreur de mouvement.
et la vitesse définie dans le paramètre SPEED.
la carte TJ1-FL02 lorsque des positions prédéfinies sont atteintes.
tions sur les stations MECHATROLINK-II reliées au bus.
Interpole 3 axes orthogonaux en fonction d’un mouvement hélicoïdal.
MANUEL DE PROGRAMMATION 33
Commandes BASIC
Nom Description
MOVE Déplace un ou plusieurs axes en fonction de la vitesse, de l’accélé-
ration et de la décélération demandées vers la position spécifiée en tant qu’incrément à partir de la position actuelle.
MOVEABS Déplace un ou plusieurs axes en fonction de la vitesse, de l’accélé-
ration et de la décélération demandées vers la position spécifiée en tant que position absolue.
MOVECIRC Interpole 2 axes orthogonaux en fonction d’un arc circulaire.
MOVELINK Crée un mouvement linéaire sur l’axe de base lié via un réducteur
électronique logiciel vers la position mesurée d’un axe de liaison.
MOVEMODIFY
RAPIDSTOP Annule le mouvement actuel sur tous les axes.
REGIST Capture une position d’axe en cas de détection d’une entrée d’enre-
REVERSE Déplace un axe selon un mouvement continu vers l’arrière
STEP_RATIO Définit le rapport de la sortie du moteur à pas d’axe.
Modifie la position finale absolue du mouvement linéaire d’axe simple actuel (
MOVE
ou
MOVEABS
gistrement ou du repère Z sur le codeur.
et la vitesse définie dans le paramètre SPEED.
).
3.1.2 Paramètres d’axe
/i
Nom Description
ACCEL Contient le taux d’accélération de l’axe.
ADDAX_AXIS Contient le numéro de l’axe auquel l’axe de base est actuelle-
ment relié par la commande ADDAX.
ATYPE Contient le type d’axe.
AXIS_DISPLAY Sélectionne les informations représentées par les voyants
situés sur le capot avant de la carte TJ1-FL02.
AXIS_ENABLE
Révision 3.0
AXISSTATUS Contient l’état de l’axe.
CLOSE_WIN Définit la fin de la fenêtre dans laquelle un repère d’enregistre-
Active et désactive un axe spécifique indépendamment de l’autre axe.
ment est attendu.
Nom Description
CLUTCH_RATE Définit la modification du rapport de connexion en cas d’utilisa-
tion de la commande CONNECT.
CREEP Contient la vitesse lente sous charge.
D_GAIN Contient le gain de contrôle dérivé.
DAC_SCALE Définit l’échelle et la polarité appliquées aux valeurs DAC.
DATUM_IN Contient le numéro de l’entrée à utiliser comme entrée d’origine.
DECEL Contient le taux de décélération de l’axe.
DEMAND_EDGES Contient la valeur actuelle du paramètre d’axe DPOS pour
les fronts du codeur.
DPOS Contient la position demandée générée par les commandes
de déplacement.
DRIVE_CONTROL Sélectionne les données à surveiller à l’aide du paramètre
DRIVE_MONITOR pour les axes connectés via le bus MECHA-
TROLINK-II. En ce qui concerne les axes connectés via la carte TJ1-FL02, le paramètre DRIVE_CONTROL définit les sorties de la carte TJ1-FL02.
DRIVE_INPUTS
DRIVE_MONITOR
DRIVE_STATUS Contient l’état actuel du servodriver.
ENCODER Contient une copie brute du registre matériel du codeur.
ENCODER_BITS Définit le nombre de bits pour le codeur absolu connecté
ENCODER_CONTROL Détermine le mode de fonctionnement du codeur absolu EnDat.
ENCODER_ID Renvoie la valeur d’ID du codeur absolu connecté à la carte
ENCODER_RATIO
ENCODER_STATUS Renvoie l’état du codeur absolu Tamagawa.
ENCODER_TURNS Renvoie le nombre de multitours du codeur absolu.
ENDMOVE Contient la position de la fin du mouvement actuel.
Contient les données d’E/S du driver connecté au bus MECHA­TROLINK-II. Les données sont mises à jour à chaque cycle servo.
Surveille les données du servodriver connecté au bus MECHA­TROLINK-II. Les données sont mises à jour à chaque cycle servo.
à la carte TJ1-FL02.
TJ1-FL02.
Définit la valeur d’échelle pour les impulsions de codeur entrantes.
MANUEL DE PROGRAMMATION 34
Commandes BASIC
Nom Description
ERRORMASK Contient la valeur de masque qui détermine si le paramètre
MOTION_ERROR se produit en fonction de l’état de l’axe.
FAST_JOG
FASTDEC Définit le rapport rampe/décélération zéro lorsqu’un fin de
FE Contient l’erreur suivante.
FE_LATCH Contient la valeur FE qui a entraîné l’axe à placer le contrôleur
FE_LIMIT Contient l’erreur suivante maximale autorisée.
FE_LIMIT_MODE Définit comment FE influence l’état MOTION_ERROR.
FE_RANGE Contient la limite de plage d’avertissement d’erreur suivante.
FHOLD_IN
FHSPEED Contient la vitesse de maintien d’alimentation.
FS_LIMIT Contient la position absolue de la limite logicielle avant.
FWD_IN
FWD_JOG
I_GAIN Contient le gain de contrôle intégral.
INVERT_STEP Commute un variateur matériel sur le circuit de sortie de moteur
JOGSPEED Définit la vitesse de pas à pas (jog).
LINKAX Contient le numéro de l’axe de liaison lors d’un mouvement lié.
MARK Détecte l’événement d’enregistrement principal sur une entrée
MARKB Détecte l’événement d’enregistrement secondaire sur une
MERGE Correspond à un commutateur logiciel permettant d’activer
Révision 3.0
MPOS Correspond à la position de l’axe mesurée par le codeur.
Contient le numéro de l’entrée à utiliser comme entrée de jog rapide.
course ou une position d’axe est atteinte.
àl’état MOTION_ERROR.
Contient le numéro de l’entrée à utiliser comme entrée de maintien d’alimentation.
Contient le numéro de l’entrée à utiliser comme entrée de limite avant.
Contient le numéro de l’entrée à utiliser comme entrée de jog avant.
à pas.
d’enregistrement.
entrée d’enregistrement.
ou de désactiver la fusion de mouvements consécutifs.
Nom Description
MSPEED Représente la modification de la position mesurée au cours
du dernier cycle servo.
MTYPE Contient le type de mouvement en cours d’exécution.
NTYPE Contient le type de mouvement dans le tampon de mouvement
suivant.
OFFPOS Contient un décalage à appliquer à la position demandée sans
aucun autre impact sur le mouvement.
OPEN_WIN Définit le début de la fenêtre dans laquelle un repère d’enregis-
trement est attendu.
OUTLIMIT Contient la limite restreignant la sortie de référence de vitesse
issue de la carte TJ1-MC__.
OV_GAIN Contient le gain de contrôle de vitesse de sortie.
P_GAIN Contient le gain de contrôle proportionnel.
REG_POS Contient la position à laquelle un événement d’enregistrement
s’est produit.
REG_POSB Contient la position à laquelle l’événement d’enregistrement
secondaire s’est produit.
REMAIN
REMOTE_ERROR Renvoie le nombre d’erreurs sur la connexion MECHATRO-
REP_DIST Contient ou définit la distance de répétition.
REP_OPTION Contrôle l’application du paramètre d’axe REP_DIST.
REV_IN
REV_JOG
RS_LIMIT Contient la position absolue de la limite logicielle arrière.
S_REF Contient la valeur de référence de vitesse appliquée lorsque
S_REF_OUT Contient la valeur de référence de vitesse appliquée au servo-
SERVO
Correspond à la distance restante jusqu’à la fin du mouvement actuel.
LINK-II du servodriver.
Contient le numéro de l’entrée à utiliser comme entrée de limite arrière.
Contient le numéro de l’entrée à utiliser comme entrée de jog arrière.
l’axe est en boucle ouverte.
driver pour la boucle ouverte et fermée.
Détermine si l’axe pivote en contrôle servo ou en boucle ouverte.
MANUEL DE PROGRAMMATION 35
Commandes BASIC
Nom Description
SPEED Contient la vitesse demandée exprimée en unités/s.
SRAMP Contient le facteur de courbe en S.
T_REF
TRANS_DPOS Contient la position demandée de l’axe à la sortie de transfor-
UNITS Contient le facteur de conversion d’unités.
VERIFY Sélectionne différents modes de fonctionnement sur un axe
VFF_GAIN Contient le gain de contrôle de réaction de vitesse.
VP_SPEED Contient la vitesse du profil de vitesse.
Contient la valeur de référence de couple appliquée au servomoteur.
mation de trame.
de sortie moteur à pas.
3.1.3 Commandes et paramètres de communication
/i
Nom Description
FINS_COMMS Envoie les commandes FINS Lecture de mémoire et Écriture
de la mémoire à un serveur FINS donné.
HLM_COMMAND Exécute une commande Host Link spécifique sur l’esclave.
HLM_READ Lit les données de l’esclave Host Link dans le tableau de varia-
bles VR ou TABLE.
HLM_STATUS Représente l’état de la dernière commande du maître Host Link.
HLM_TIMEOUT Définit le délai de temporisation du maître Host Link.
HLM_WRITE Écrit des données sur l’esclave Host Link à partir du tableau
de variables VR ou TABLE.
HLS_NODE Définit le numéro de carte esclave pour le protocole esclave
Host Link.
SETCOM Définit les communications série.
Révision 3.0
3.1.4 Constantes
/i
Nom Description
FALSE Correspond à la valeur numérique 0.
OFF Correspond à la valeur numérique 0.
ON Correspond à la valeur numérique 1.
PI Correspond à la valeur numérique 3,1416.
TRUE Correspond à la valeur numérique -1.
3.1.5 Commandes, fonctions et paramètres d’E/S
/i
Nom Description
GET Attend la réception d’un caractère et affecte à la variable le code
ASCII du caractère.
IN Renvoie la valeur des entrées numériques.
INDEVICE Définit le périphérique d’entrée par défaut.
INPUT Attend la réception d’une chaîne et affecte la valeur numérique
à la variable.
KEY Renvoie la valeur TRUE ou FALSE en fonction de la réception
d’un caractère.
LINPUT
OP Définit une ou plusieurs sorties ou renvoie l’état des
OUTDEVICE Définit le périphérique de sortie par défaut.
PRINT Envoie une série de caractères à un port série.
PSWITCH Active une sortie lorsqu’une position prédéfinie est atteinte et
Attend la réception d’une chaîne et la place dans des variables VR.
24 premières sorties.
désactive la sortie lorsqu’une seconde position est atteinte.
MANUEL DE PROGRAMMATION 36
Commandes BASIC
3.1.6 Fonctions et opérandes mathématiques
/i
Nom Description
+ (ADDITION) Additionne deux expressions.
- (SOUSTRACTION) Soustrait deux expressions.
* (MULTIPLICATION) Multiplie deux expressions.
/ (DIVISION) Divise deux expressions.
^ (PUISSANCE) Applique la puissance d’une expression à l’autre expression.
= (ÉGAL À) Vérifie deux expressions pour déterminer si elles sont égales.
= (ATTRIBUTION) Affecte une expression à une variable.
<> (DIFFÉRENT DE)
> (SUPÉRIEUR À)
>= (SUPÉRIEUR OU ÉGAL À)
< (INFÉRIEUR À)
<= (INFÉRIEUR OU ÉGAL À)
ABS Renvoie la valeur absolue d’une expression.
ACOS Renvoie le cosinus inverse d’une expression.
AND Effectue une opération AND (ET) sur les bits correspondants
ASIN Renvoie le sinus inverse d’une expression.
ATAN Renvoie la tangente inverse d’une expression.
ATAN2 Renvoie la tangente inverse du nombre complexe non nul
COS Renvoie le cosinus d’une expression.
Révision 3.0
EXP Renvoie la valeur exponentielle d’une expression.
FRAC Renvoie la fraction d’une expression.
Vérifie deux expressions pour déterminer si elles sont différentes.
Vérifie deux expressions pour déterminer si l’expression de gauche est supérieure à l’expression de droite.
Vérifie deux expressions pour déterminer si l’expression de gauche est supérieure ou égale à l’expression de droite.
Vérifie deux expressions pour déterminer si l’expression de gauche est inférieure à l’expression de droite.
Vérifie deux expressions pour déterminer si l’expression de gauche est inférieure ou égale à l’expression de droite.
des éléments entiers de deux expressions.
obtenu par deux expressions.
Nom Description
IEEE_IN Renvoie le nombre à virgule flottante au format IEEE, repré-
senté par 4 octets.
IEEE_OUT
INT Renvoie l’élément entier d’une expression.
LN Renvoie le logarithme naturel d’une expression.
MOD Renvoie le module de deux expressions.
NOT Effectue une opération NOT (NON) sur les bits correspondants
OR Effectue une opération OR (OU) entre les bits correspondants
SGN Renvoie le signe d’une expression.
SIN Renvoie le sinus d’une expression.
SQR Renvoie la racine carrée d’une expression.
TAN Renvoie la tangente d’une expression.
XOR Effectue une opération XOR (OU exclusif) entre les bits corres-
Renvoie l’octet extrait du nombre à virgule flottante au format IEEE.
de l’élément entier de l’expression.
des éléments entiers de deux expressions.
pondants des éléments entiers de deux expressions.
3.1.7 Commandes de programme
/i
Nom Description
' (CHAMP DE COMMENTAIRE)
: (SÉPARATEUR D’INSTRUCTIONS)
AUTORUN Démarre tous les programmes définis pour être exécutés
COMPILE Compile le programme actuel.
COPY Copie dans un nouveau programme un programme existant
DEL Supprime un programme du contrôleur d’axes.
Permet d’insérer une ligne sans l’exécuter.
Permet d’insérer d’autres instructions sur une ligne.
au démarrage.
dans le contrôleur d’axes.
MANUEL DE PROGRAMMATION 37
Commandes BASIC
Nom Description
DIR
EDIT
EPROM
LIST
NEW
PROCESS
RENAME
RUN
RUNTYPE
SELECT
STEPLINE
STOP
TROFF
TRON
Affiche la liste des programmes contenus dans le contrôleur d’axes, leur taille et leur commande RUNTYPE sur la sortie standard.
Permet de modifier un programme à l’aide d’un terminal VT100.
Stocke un programme dans la mémoire flash.
Affiche le programme sur la sortie standard.
Supprime toutes les lignes du programme dans le contrôleur d’axes.
Renvoie l’état d’exécution et le numéro de chaque tâche actuelle.
Modifie le nom d’un programme dans le contrôleur d’axes.
Exécute un programme.
Détermine si un programme est exécuté au démarrage et spécifie la tâche concernée.
Spécifie le programme actuel.
Exécute une ligne d’un programme.
Interrompt l’exécution du programme.
Interrompt un traçage à la ligne actuelle et reprend l’exécution nor­male du programme.
Crée un point d’interruption dans un programme.
Nom Description
ON.. GOSUB ou ON.. GOTO
REPEAT..UNTIL Crée une boucle permettant de répéter un segment de pro-
WHILE...WEND Crée une boucle permettant de répéter un segment de pro-
Permet de créer un saut conditionnel vers un label.
gramme jusqu’à ce que la condition soit « TRUE », page 146.
gramme jusqu’à ce que la condition soit FALSE.
3.1.9 Paramètres et modificateurs d’emplacement
/i
Nom Description
COMMSTYPE
FPGA_VERSION Renvoie la version FPGA de la carte numéro_carte dans
SLOT Correspond à un modificateur spécifiant le numéro d’emplace-
Contient le type de carte insérée dans un emplacement de contrôleur.
un système de contrôleur.
ment de la carte.
3.1.10 Commandes et fonctions système
/i
3.1.8 Commandes de contrôle de programme
/i
Nom Description
FOR..TO..STEP..NEXT Crée une boucle permettant de répéter un segment de pro-
gramme en fonction d’une variable d’augmentation/diminution.
GOSUB..RETURN Passe à une sous-routine à la ligne située juste après le label.
L’exécution du programme reprend à l’instruction suivante après la fourniture d’une commande « RETURN », page 132.
GOTO Passe à la ligne contenant le label.
Révision 3.0
IF..THEN..ELSE..ENDIF
Contrôle le flux du programme d’après les résultats de la condition.
Nom Description
$ (ENTRÉE HEXADÉCIMALE)
AXIS Définit l’axe pour une commande, une lecture de paramètre
BASICERROR Sert à exécuter une routine spécifique lorsqu’une erreur se pro-
CLEAR
CLEAR_BIT Efface le bit spécifié de la variable VR donnée.
CLEAR_PARAMS Rétablit les valeurs par défaut de l’ensemble des paramètres
CONSTANT Déclare une constante à utiliser dans un programme BASIC.
Affecte un nombre hexadécimal à une variable.
d’axe ou l’affectation à un axe spécifique.
duit dans une commande BASIC.
Efface toutes les variables globales et locales de la tâche actuelle.
et des variables en mémoire flash EPROM.
MANUEL DE PROGRAMMATION 38
Commandes BASIC
Nom Description
DATE$ Affiche la date du jour sous la forme d’une chaîne.
DAY$ Affiche le jour actuel sous la forme d’une chaîne.
DEVICENET Configure la carte TJ1-DRT (esclave DeviceNet) pour l’échange
de données ou renvoie l’état d’échange de données de la carte TJ1-DRT.
ETHERNET Lit et définit divers paramètres du port Ethernet TJ1-MC__.
EX Remet le contrôleur à zéro.
FLAG Lit et définit une banque de 32 bits.
FLAGS Lit et définit des drapeaux (FLAGS) en tant que bloc.
FREE Renvoie la capacité de mémoire disponible.
GLOBAL Déclare une référence à une variable VR.
HALT
INITIALISE Rétablit les valeurs par défaut de tous les axes et paramètres.
INVERT_IN Inverse les canaux d’entrée 0 à 31 dans le logiciel.
INVERTER_COMMAND Lit les E/S et efface l’alarme du variateur de fréquence.
INVERTER_READ Lit la référence de paramètre, d’alarme, de vitesse et de couple
INVERTER_WRITE Écrit la référence de paramètre, de vitesse et de couple
LIST_GLOBAL Affiche toutes les variables GLOBAL et CONSTANT.
LOCK Empêche l’affichage et la modification des programmes.
PROFIBUS Configure la carte TJ1-PRT (esclave PROFIBUS-DP) pour
READ_BIT Renvoie la valeur du bit spécifié dans la variable VR donnée.
RESET Réinitialise toutes les variables locales d’une tâche.
SCOPE Programme le système pour stocker automatiquement jusqu’à
Révision 3.0
SET_BIT Définit le bit spécifié dans la variable VR donnée sur un.
Arrête l’exécution de tous les programmes en cours d’exécution.
du variateur de fréquence.
du variateur de fréquence.
l’échange de données d’E/S avec le maître et renvoie l’état de la carte TJ1-PRT.
4 paramètres à chaque période d’échantillonnage dans le tableau de variables TABLE.
Nom Description
TABL E Écrit et lit les données dans le tableau de variables TABLE.
TABLEVALUES Renvoie la liste de valeurs provenant de la mémoire TABLE.
TIME$ Affiche l’heure actuelle sous la forme d’une chaîne.
TRIGGER Démarre une commande SCOPE déjà définie.
VR Écrit et lit les données dans les variables globales (VR).
VRSTRING
WA Suspend l’exécution du programme pendant la durée spécifiée
WAIT IDLE
WAIT LOADED Suspend l’exécution du programme jusqu’à ce que l’axe
WAIT UNTIL
Combine des valeurs de mémoire VR afin de pouvoir les afficher sous la forme d’une chaîne.
(en millisecondes).
Suspend l’exécution du programme jusqu’à ce que l’axe de base ait terminé son mouvement en cours et tout mouvement en tampon.
de base n’ait plus aucun mouvement en tampon, hormis le mouvement en cours.
Évalue la condition de manière répétée jusqu’à ce qu’elle soit
TRUE
.
3.1.11 Paramètres système
/i
Nom Description
AIN Contient la valeur du canal analogique.
AOUT Contient la valeur du canal analogique.
BATTERY_LOW Renvoie l’état actuel de la batterie.
CHECKSUM Contient la somme de contrôle pour les programmes
en mémoire RAM.
COMMSERROR Contient toutes les erreurs de communication qui se sont pro-
duites depuis la dernière initialisation.
CONTROL Contient le type de TJ1-MC__ dans le système.
D_ZONE_MAX Contrôle la sortie DAC avec la valeur d’erreur suivante.
D_ZONE_MIN Contrôle la sortie DAC avec la valeur d’erreur suivante.
MANUEL DE PROGRAMMATION 39
Commandes BASIC
Nom Description
DATE
DAY
DISPLAY
ERROR_AXIS
FRAME
LAST_AXIS Contient le numéro du dernier axe traité par le système.
MOTION_ERROR Contient un drapeau d’erreur pour les erreurs de contrôle d’axe.
NAIO Renvoie le nombre de canaux analogiques connectés au bus
NEG_OFFSET Applique un décalage négatif au signal DAC à partir de la bou-
NIO
POWER_UP
POS_OFFSET Applique un décalage positif au signal DAC à partir de la boucle
SCOPE_POS Contient la position TABLE actuelle à laquelle la commande
Règle ou renvoie la date du jour contenue par l’horloge temps réel.
Définit ou renvoie le jour actuel.
Détermine les canaux d’E/S à afficher sur les voyants en face avant.
Contient le numéro de l’axe à l’origine de l’erreur de mouvement.
Spécifie la trame d’exploitation pour les transformations de trame.
MECHATROLINK-II.
cle servo.
Contient le nombre d’entrées et de sorties connectées au système.
Détermine si des programmes doivent être lus dans la mémoire flash EPROM lors de la mise sous tension ou de la réinitialisation.
servo.
SCOPE stocke son premier paramètre.
3.1.12 Commandes et paramètres de tâche
/i
Nom Description
ERROR_LINE Contient le numéro de la ligne à l’origine de la dernière erreur
de programme BASIC.
PMOVE Contient l’état des tampons de tâches.
PROC Permet d’accéder à un paramètre de processus à partir d’un pro-
cessus spécifique.
PROC_STATUS Renvoie l’état du processus spécifié.
PROCNUMBER Contient le numéro de la tâche dans laquelle le programme
sélectionné est en cours d’exécution.
RUN_ERROR Contient le numéro de la dernière erreur BASIC qui s’est pro-
duite sur la tâche spécifiée.
TICKS Contient le nombre actuel d’impulsions d’horloge de tâche.
SERVO_PERIOD Définit le cycle servo de la carte TJ1-MC__.
SYSTEM_ERROR Contient les erreurs système qui se sont produites depuis
la dernière initialisation.
TIME Renvoie l’heure actuelle contenue par l’horloge temps réel.
TSIZE Renvoie la taille de la table actuellement définie.
VERSION Renvoie le numéro de version du micrologiciel du contrôleur.
WDOG Spécifie le commutateur logiciel qui active les servodrivers.
Révision 3.0
MANUEL DE PROGRAMMATION 40
Commandes BASIC

3.2 Toutes les commandes BASIC

3.2.1 + (addition)
/i
Type Fonction mathématique
Syntaxe expression1 + expression2
Description L’opérateur + additionne deux expressions.
Arguments expression1
Expression BASIC valide.
expression2
Expression BASIC valide.
Exemple result = 4 + 3
Attribue la valeur 7 à la variable result.
Voir aussi N/A
3.2.2 - (soustraction)
/i
Type Fonction mathématique
Syntaxe expression1 - expression2
Description L’opérateur – soustrait expression2 de expression1.
Arguments expression1
Expression BASIC valide.
expression2
Expression BASIC valide.
Exemple result = 10 – 2
Attribue la valeur 8 à la variable result.
Voir aussi N/A
3.2.3 * (multiplication)
/i
Type Fonction mathématique
Syntaxe expression1 * expression2
Description L’opérateur * multiplie deux expressions.
Arguments expression1
Expression BASIC valide.
expression2
Expression BASIC valide.
Exemple result = 3 * 7
Attribue la valeur 21 à la variable result.
Voir aussi N/A
3.2.4 / (division)
/i
Type Fonction mathématique
Syntaxe expression1 / expression2
Description L’opérateur / divise expression1 par expression2.
Arguments expression1
Expression BASIC valide.
expression2
Expression BASIC valide.
Exemple result = 11 / 4
Attribue la valeur 2,75 à la variable result.
Voir aussi N/A
Révision 3.0
MANUEL DE PROGRAMMATION 41
Commandes BASIC
3.2.5 ^ (puissance)
/i
Type Fonction mathématique
Syntaxe expression_1 ^ expression_2
Description L’opérateur de puissance ^ élève expression_1 à la puissance
expression_2. Cette opération utilise des algorithmes à virgule flottante et peut entraîner de faibles écarts pour les calculs à nombres entiers.
Arguments expression_1
Expression BASIC.
expression_2
Expression BASIC.
Exemple result = 2^5
Attribue la valeur 32 à la variable result.
Voir aussi N/A
3.2.6 = (égal à)
/i
Type Fonction mathématique
Syntaxe expression1 = expression2
Description L’opérateur = renvoie la valeur TRUE si expression1 est égal
à expression2 ; sinon, renvoie la valeur FALSE.
Arguments expression1
Expression BASIC valide.
expression2
Expression BASIC valide.
Exemple IF a = 10 THEN GOTO label1
Si la variable a contient une valeur égale à 10, l’exécution du programme passe au label label1. Sinon, elle passe à l’instruction suivante.
3.2.7 = (attribution)
/i
Type Fonction mathématique
Syntaxe variable = expression
Description L’opérateur = attribue la valeur de l’expression à la variable.
Arguments variable
Nom de la variable.
expression
Expression BASIC valide.
Exemple var = 18
Attribue la valeur 18 à la variable var.
Voir aussi N/A
3.2.8 <> (différent de)
/i
Type Fonction mathématique
Syntaxe expression1 <> expression2
Description L’opérateur <> renvoie la valeur TRUE si expression1 n’est pas égal
à expression2 ; sinon, renvoie la valeur FALSE.
Arguments expression1
Expression BASIC valide.
expression2
Expression BASIC valide.
Exemple IF a <> 10 THEN GOTO label1
Si la variable a contient une valeur différente de 10, l’exécution du pro­gramme passe au label label1. Sinon, elle passe à l’instruction suivante.
Voir aussi N/A
Voir aussi N/A
Révision 3.0
MANUEL DE PROGRAMMATION 42
Commandes BASIC
3.2.9 > (supérieur à)
/i
Type Fonction mathématique
Syntaxe expression1 > expression2
Description L’opérateur > renvoie la valeur TRUE si expression1 est supérieur
à expression2 ; sinon, renvoie la valeur FALSE.
Arguments expression1
Expression BASIC valide.
expression2
Expression BASIC valide.
Exemple IF a > 10 THEN GOTO label1
Si la variable a contient une valeur supérieure à 10, l’exécution du pro­gramme passe au label label1. Sinon, elle passe à l’instruction suivante.
Voir aussi N/A
3.2.10 >= (supérieur ou égal à)
/i
Type Fonction mathématique
Syntaxe expression1 >= expression2
Description L’opérateur >= renvoie la valeur TRUE si expression1 est supérieur ou égal
à expression2 ; sinon, renvoie la valeur FALSE.
3.2.11 < (inférieur à)
/i
Type Fonction mathématique
Syntaxe expression1 < expression2
Description L’opérateur < renvoie la valeur TRUE si expression1 est inférieur
à expression2 ; sinon, renvoie la valeur FALSE.
Arguments expression1
Expression BASIC valide.
expression2
Expression BASIC valide.
Exemple IF a < 10 THEN GOTO label1
Si la variable a contient une valeur inférieure à 10, l’exécution du programme passe au label label1. Sinon, elle passe à l’instruction suivante.
Voir aussi N/A
3.2.12 <= (inférieur ou égal à)
/i
Type Fonction mathématique
Syntaxe expression1 <= expression2
Description L’opérateur <= renvoie la valeur TRUE si expression1 est inférieur ou égal
à expression2 ; sinon, renvoie la valeur FALSE.
Arguments expression1
Expression BASIC valide.
expression2
Expression BASIC valide.
Exemple IF a >=10 THEN GOTO label1
Si la variablea contient une valeur supérieure ou égale à 10, l’exécution du programme passe au label
Voir aussi N/A
Révision 3.0
label1
. Sinon, elle passe à l’instruction suivante.
Arguments expression1
Expression BASIC valide.
expression2
Expression BASIC valide.
Exemple IF a <= 10 THEN GOTO label1
Si la variablea contient une valeur inférieure ou égale à 10, l’exécution du programme passe au label
Voir aussi N/A
label1
. Sinon, elle passe à l’instruction suivante.
MANUEL DE PROGRAMMATION 43
Commandes BASIC
3.2.13 $ (entrée hexadécimale)
/i
Type Commande système
Syntaxe $nbre_hex
Description La commande $ convertit le nombre qui suit au format hexadécimal.
Arguments •nbre_hex
Nombre hexadécimal (constitué des caractères 0 à 9 et A à F). La valeur de l’argument nbre_hex est comprise entre 0 et FFFFFF.
Exemple >>TABLE(0,$F,$ABCD)
>>print TABLE(0),TABLE(1)
15.0000 43981.0000
Voir aussi HEX (PRINT)
3.2.14 ' (champ de commentaire)
/i
Type Commande de programme
Syntaxe '
Description ' signale tous les éléments qui suivent sur une ligne en tant que commentaire,
au lieu de code programme. Un commentaire n’est pas exécuté lors de l’exé­cution du programme. Vous pouvez utiliser ' au début d’une ligne ou après une instruction valide.
Arguments N/A
Exemple ' Cette ligne n’est pas imprimée
PRINT "Start"
Voir aussi N/A
3.2.15 : (séparateur d’instructions)
/i
Type Commande de programme
Syntaxe :
Description Le séparateur d’instructions : permet de séparer plusieurs instructions BASIC
sur une ligne. Vous pouvez l’utiliser dans la ligne de commande et dans les programmes.
Arguments N/A
Exemple PRINT "THIS LINE" : GET low : PRINT "DOES THREE THINGS"
Voir aussi N/A
3.2.16 #
/i
Type Caractère spécial
Syntaxe #
Description Le symbole # sert à spécifier le canal de communication à utiliser pour
les commandes d’entrée/sortie série. Remarque : les canaux de communication supérieurs à 3 ne sont utilisés que lors de l’exécution du logiciel Trajexia Tools.
Arguments N/A
Exemple PRINT #1,"RS232"
PRINT #2,"Port 2"
Exemple IF KEY #1 THEN GET #1,k
Vérifie le clavier sur le port RS232.
Voir aussi N/A
Révision 3.0
MANUEL DE PROGRAMMATION 44
Commandes BASIC
3.2.17 ABS
/i
Type Fonction mathématique
Syntaxe ABS(expression)
Description La fonction ABS renvoie la valeur absolue d’une expression.
Arguments expression
Expression BASIC valide.
Exemple
Voir aussi N/A
IF ABS(A) > 100 THEN PRINT "A n’est pas compris dans la plage –100 ... 100"
3.2.18 ACC
/i
Type Commande d’axe
Syntaxe ACC(taux)
Description Définit simultanément l’accélération et la décélération.
Cette commande permet de régler rapidement ACCEL et DECEL. Il est tou­tefois recommandé de régler les taux d’accélération et de décélération à l’aide des paramètres d’axe ACCEL et DECEL.
Arguments •taux
Taux d’accélération exprimé en unités/s2. Vous pouvez définir les unités à l’aide du paramètre d’axe UNITS.
Exemple ACC(100)
Règle ACCEL et DECEL sur 100 unités/s
Voir aussi ACCEL, DECEL, UNITS
2
.
3.2.19 ACCEL
/i
Type Paramètre d’axe
Syntaxe ACCEL = expression
Description Le paramètre d’axe ACCEL contient le taux d’accélération d’un axe.
Ce taux est exprimé en unités/s ou égale à zéro.
Arguments N/A
Exemple BASE(0)
ACCEL = 100 ' Règle le taux d’accélération PRINT "Taux d’acceleration : ";ACCEL;" mm/s/s" ACCEL AXIS(2) = 100 ' Règle le taux d’accélération de l’axe (2)
Voir aussi ACCEL, DECEL, UNITS
2
. La valeur de ce paramètre doit être positive
3.2.20 ACOS
/i
Type Fonction mathématique
Syntaxe ACOS(expression)
Description La fonction ACOS renvoie le cosinus inverse d’une expression. La valeur
de l’expression doit être comprise entre –1 et 1. Le résultat en radians est compris entre 0 et Pi. Les valeurs d’entrée en dehors de la plage renvoient 0.
Arguments expression
Expression BASIC valide.
Exemple >> PRINT ACOS(-1)
3.1416
Voir aussi N/A
Révision 3.0
MANUEL DE PROGRAMMATION 45
Commandes BASIC
3.2.21 ADD_DAC
/i
Type Commande d’axe
Syntaxe ADD_DAC(axe)
Description La commande ADD_DAC peut fournir un double contrôle de retour en per-
mettant d’utiliser un codeur secondaire sur l’axe servo. Cette commande per­met d’additionner la sortie de 2 boucles servo afin de déterminer la référence de vitesse transmise au servodriver. Cette commande est généralement utilisée dans des applications telles qu’un dispositif d’alimentation à rouleaux où un codeur secondaire est requis pour compenser le glissement. Pour utiliser ment être reliés à un axe commun sur lequel les mouvements requis sont exécu­tés. En règle générale, pour réaliser cet objectif, les mouvements sont exécutés sur l’un des deux axes et la commande générer la position demandée correspondante ( Les gains de boucle servo doivent être définis pour les deux axes. Les sorties de boucle servo sont additionnées afin de déterminer la référence de vitesse de l’axe servo. Utilisez ADD_DAC est valable sur l’axe de base par défaut (réglé avec BASE), sauf si la commande AXIS est utilisée pour spécifier un axe de base temporaire. Remarque :
1. N’oubliez pas que les gains de boucle de contrôle doivent être déterminés
2. Réglez le paramètre
Arguments axe
Révision 3.0
ADD_DAC
avec soin pour les deux axes. En effet, les gains ne sont pas identiques, car des codeurs distincts sont utilisés avec des résolutions différentes.
Axe à partir duquel la sortie de référence de vitesse doit être additionnée à l’axe de base. Définissez l’argument sur la valeur -1 pour annuler la liaison et rétablir le fonctionnement normal.
, les deux axes avec retour physique doivent nécessaire-
ADD_DAC(-1)
OUTLIMIT
sur la même valeur pour les deux axes reliés.
ADDAX
pour annuler la liaison.
ou
CONNECT
DPOS
) pour les deux axes.
est utilisée pour
Exemple BASE(0)
OUTLIMIT AXIS(1) = 15000 ADD_DAC(1) AXIS(0) ADDAX(0) AXIS(1) WDOG = ON SERVO AXIS(0) = ON SERVO AXIS(1) = ON ' Exécute des mouvements sur l’axe 0
Cet exemple illustre le contrôle de l’axe de servodriver 0 avec double contrôle de retour à l’aide des axes 0 et 1.
Exemple BASE(0)
OUTLIMIT AXIS(1) = 15000 ADD_DAC(1) AXIS(0) ADDAX(0) AXIS(1) WDOG = ON SERVO = OFF S_REF = 0 BASE(1) SERVO = ON ' Exécute des mouvements sur l’axe 1
Cet exemple illustre le contrôle de l’axe de servodriver 0 uniquement à l’aide du retour de codeur sur l’axe 1.
Voir aussi AXIS, ADDAX, OUTLIMIT
3.2.22 ADDAX
/i
Type Commande d’axe
Syntaxe ADDAX(axe)
Description La commande ADDAX récupère les changements de la position demandée
par rapport à l’axe superposé défini par l’argument d’axe et les ajoute au mou­vement en cours sur l’axe pour lequel la commande est générée. Dès que la commande ADDAX est générée, la liaison entre les deux axes est préservée jusqu’à ce qu’elle soit interrompue. Utilisez ADDAX(-1) pour annu­ler la liaison d’axes. ADDAX permet à un axe d’effectuer les mouvements spécifiés pour 2 axes additionnés. Il est possible de combiner plus de deux axes en appliquant la commande ADDAX à l’axe superposé. ADDAX est valable sur l’axe de base par défaut (réglé avec BASE), sauf si la commande AXIS est utilisée pour spécifier un axe de base temporaire.
MANUEL DE PROGRAMMATION 46
Commandes BASIC
Arguments axe
Axe à définir comme axe superposé. Définissez l’argument sur la valeur ­1 pour annuler la liaison et rétablir le fonctionnement normal.
Exemple FORWARD ' Définit le mouvement continu
ADDAX(2) ' Ajoute l’axe 2 pour correction REPEAT GOSUB getoffset ' Obtient le décalage à appliquer MOVE(offset) AXIS(2) UNTIL IN(2) = ON ' Jusqu’à ce que la correction soit effectuée
Des pièces sont placées sur une courroie à déplacement continu et sont récoltées en aval de la ligne. Un système de détection indique si une pièce est devant ou der­rière sa position nominale et détermine le décalage correspondant. Dans cet exemple, l’axe 0 correspond à l’axe de base. Il exécute un mouvement avant continu et un mouvement superposé sur l’axe 2 est utilisé pour appliquer des décalages en fonction du décalage calculé dans une sous-routine.
Voir aussi AXIS, OUTLIMIT
AVERTISSEMENT N’oubliez pas que la génération de plusieurs commandes dans un système peut créer une boucle dangereuse lorsqu’un axe est relié à un autre, et inversement, par exemple. Cette situa­tion peut rendre le système instable.
3.2.23 ADDAX_AXIS
/i
Type Paramètre d’axe (en lecture seule)
ADDAX
3.2.24 AIN
/i
Type Paramètre système
Syntaxe AIN(canal_analogique)
Description Des canaux d’entrée analogiques +/-10 V sont fournis en connectant des
modules JEPMC-AN2900 au bus MECHATROLINK-II. Remarque : la valeur d’entrée analogique est contrôlée pour garantir qu’elle est supérieure à zéro, même si elle doit toujours être positive. Ce contrôle permet de détecter la présence de parasites sur le signal entrant, qui risque de rendre la valeur négative et d’entraîner une erreur. En effet, une vitesse négative n’est valide pour aucun type de mouvement, à l’exception de FORWARD et REVERSE.
Arguments canal_analogique
Numéro du canal d’entrée analogique (0 à 31).
Exemple MOVE(-5000)
REPEAT
a=AIN(1) IF a<0 THEN a=0 SPEED=a*0.25
UNTIL MTYPE=0
La vitesse d’une ligne de production est déterminée par le taux d’alimentation des matériaux. Cette alimentation est effectuée via une disposition en boucle passive intégrée à un dispositif de détection de hauteur par ultrasons. La sor­tie du capteur à ultrasons est comprise dans la plage 0 V à 4 V, la sortie étant égale à 4 V lorsque la boucle est la plus longue.
Voir aussi N/A
Syntaxe ADDAX_AXIS
Description Le paramètre d’axe ADDAX_AXIS renvoie le numéro de l’axe auquel l’axe
de base est actuellement relié par la commande ADDAX.
Arguments N/A
Exemple >> BASE(0)
Révision 3.0
Voir aussi ADDAX, AXIS
>> ADDAX(2) >> PRINT ADDAX_AXIS
2.0000
3.2.25 AND
/i
Type Opération mathématique
Syntaxe expression1 AND expression2
MANUEL DE PROGRAMMATION 47
Commandes BASIC
Description L’opérateur AND effectue la fonction logique AND (ET) sur les bits correspon-
dants des éléments entiers de deux expressions BASIC valides. La fonction logique AND entre deux bits est définie comme suit :
0 AND 0 = 0 0 AND 1 = 0 1 AND 0 = 0 1 AND 1 = 1
Arguments expression1
Expression BASIC valide.
expression2
Expression BASIC valide.
Exemple VR(0) = 10 AND (2,1*9)
Les parenthèses sont évaluées en premier lieu, mais seul l’élément entier du résultat, 18, est utilisé pour l’opération AND. Par conséquent, cette expression est équivalente à la suivante :
VR(0) = 10 AND 18 La fonction AND étant un opérateur de bits, l’action binaire est la suivante : 01010 AND 10010 = 00010
Par conséquent, VR(0) contient la valeur 2.
Exemple IF MPOS AXIS(0) > 0 AND MPOS AXIS(1) > 0 THEN GOTO cycle1
Voir aussi N/A
3.2.26 AOUT
/i
Type Paramètre système
Syntaxe AOUT(canal_analogique)
Description Cette commande définit la valeur de sortie des canaux de sortie analogiques
+/-10 V fournis en connectant des modules JEPMC-AN2910 au bus MECHA­TROLINK-II. La plage de la valeur définie est [–32 000, 32 000] pour la plage de tension [–10 V, 10 V].
Arguments canal_analogique
Numéro du canal de sortie analogique (0 à 31).
Exemple Pas d’exemple.
Révision 3.0
Voir aussi N/A
3.2.27 ASIN
/i
Type Fonction mathématique
Syntaxe ASIN(expression)
Description La fonction ASIN renvoie le sinus inverse de l’argument. La valeur de l’argu-
ment doit être comprise entre -1 et 1. Le résultat en radians est compris entre
-Pi/2 et Pi/2. Les valeurs d’entrée en dehors de cette plage renvoient 0.
Arguments expression
Expression BASIC valide.
Exemple >> PRINT ASIN(-1)
-1.5708
Voir aussi N/A
3.2.28 ATAN
/i
Type Fonction mathématique
Syntaxe ATAN(expression)
Description La fonction ATAN renvoie la tangente inverse de l’argument. expression peut
avoir n’importe quelle valeur. La valeur du résultat est exprimée en radians et est comprise entre -Pi/2 et Pi/2.
Arguments expression
Expression BASIC valide.
Exemple >> PRINT ATAN(1)
0.7854
Voir aussi N/A
3.2.29 ATAN2
/i
Type Fonction mathématique
Syntaxe ATAN2(expression1,expression2)
MANUEL DE PROGRAMMATION 48
Commandes BASIC
Description La fonction ATAN2 renvoie la tangente inverse du nombre complexe non nul
(expression2, expression1), qui équivaut à l’angle entre le point correspon- dant à la coordonnée (expression1, expression2) et l’axe des X. Si expression2 >= 0, le résultat est égal à la valeur de ATAN(expression1 / expression2). La valeur du résultat exprimée en radians est comprise entre -
Pi et Pi.
Arguments expression1
Expression BASIC valide.
expression2
Expression BASIC valide.
Exemple >> PRINT ATAN2(0,1)
0.0000
Voir aussi N/A
3.2.30 ATYPE
/i
Type Paramètre d’axe
Syntaxe ATYPE = valeur
Description Le paramètre d’axe ATYPE définit le type de l’axe. Les valeurs valides varient
en fonction du module TJ1 auquel le servodriver contrôlant l’axe est con­necté. Consultez le tableau ci-après. Les paramètres ATYPE sont définis par le système au démarrage. En ce qui concerne les axes contrôlés par les ser­vodrivers connectés au système via le bus MECHATROLINK-II, la valeur ATYPE par défaut est 41 (Mechatro Vitesse). En ce qui concerne les axes contrôlés par les servodrivers connectés au système via la carte TJ1-FL02, la valeur ATYPE par défaut est 44 (Axe flexible Servo).
Type AXIS Valeur ATYPE Carte TJ1 applicable
Mechatro Position 40 TJ1-ML__ (carte maître
MECHATROLINK-II)
Mechatro Vitesse 41 TJ1-ML__
Mechatro Couple 42 TJ1-ML__
Axe flexible Sortie moteur à pas 43 TJ1-FL02
Axe flexible Servo 44 TJ1-FL02
Axe flexible Sortie codeur 45 TJ1-FL02
Axe flexible Tamagawa absolu 46 TJ1-FL02
Axe flexible EnDat absolu 47 TJ1-FL02
Axe flexible SSI absolu 48 TJ1-FL02
3.2.31 AUTORUN
/i
Type Commande de programme
Syntaxe AUTORUN
Description La commande AUTORUN démarre tous les programmes définis pour être
exécutés au démarrage.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi RUNTYPE
Arguments N/A
Exemple ATYPE AXIS(1) = 45
Cette commande définit l’axe 1 comme axe de sortie du codeur (axe flexible).
Voir aussi AXIS
/i
Révision 3.0
Type AXIS Valeur ATYPE Carte TJ1 applicable
Virtuel 0 Toutes
3.2.32 AXIS
/i
Type Commande système
Syntaxe AXIS(numéro_axe)
MANUEL DE PROGRAMMATION 49
Commandes BASIC
Description Le modificateur AXIS définit l’axe pour une commande de mouvement simple
ou une opération de lecture/écriture de paramètre d’axe pour un axe spécifi­que. La commande AXIS n’est valable que pour la commande ou la ligne de programme dans laquelle elle est programmée. Utilisez la commande BASE pour modifier l’axe de base pour toutes les lignes de commande suivantes.
Arguments •numéro_axe
Expression BASIC valide qui spécifie le numéro d’axe.
Exemple BASE(0)
PRINT VP_SPEED AXIS(2)
Exemple MOVE(300) AXIS(0)
Exemple REPDIST AXIS(1) = 100
Voir aussi BASE
3.2.33 AXIS_DISPLAY
/i
Type Paramètre d’axe
Syntaxe AXIS_DISPLAY = valeur
Description Le paramètre d’axe AXIS_DISPLAY permet l’affichage de différentes
données sur les voyants situés sur le capot avant de la carte TJ1-FL02. Les voyants concernés par ce paramètre sont deux voyants jaunes indiquant l’état de l’axe. Au démarrage de chaque axe, la valeur par défaut de ce para­mètre est 0. Le tableau ci-dessous répertorie les valeurs valides.
Arguments N/A
Exemple AXIS_DISPLAY AXIS(2) = 2
Cette commande affiche l’état des sorties OUT 0 et OUT 1 allouées à l’axe 2.
Voir aussi N/A
/i
Valeur AXIS_DISPLAY 0 1 2 3
A0 REG 0 AUX IN OUT 0 CODEUR A
Révision 3.0
A1 REG 1 CODEUR Z OUT 1 CODEUR B
B0 REG 0 AUX IN OUT 0 CODEUR A
Valeur AXIS_DISPLAY 0 1 2 3
B1 REG 1 CODEUR Z OUT 1 CODEUR B
3.2.34 AXIS_ENABLE
/i
Type Paramètre d’axe
Syntaxe AXIS_ENABLE = ON/OFF
Description
Arguments N/A
Exemple AXIS_ENABLE AXIS(3) = OFF
Voir aussi AXIS, DISABLE_GROUP
Le paramètre d’axe indépendamment des autres axes. Ce paramètre peut être activé ou désactivé pour chaque axe individuel. La valeur par défaut au démarrage correspond à ON (activé) pour tous les axes. L’axe est activé si AXIS_ENABLE est activé pour cet axe et si du paramètre AXIS_ENABLE désactive la sortie de servodriver vers le moteur. Pour l’axe flexible Axe servo, la valeur OFF du paramètre AXIS_ENABLE impose la valeur 0 aux deux sorties de tension. Pour les axes flexibles Sortie moteur à pas et Sortie codeur, la valeur OFF du paramètre AXIS_ENABLE bloque la génération d’impulsions sur les sorties.
Cette commande désactive l’axe 3 indépendamment des autres axes du système.
WDOG
AXIS_ENABLE
est activé. Pour les axes MECHATROLINK-II, la valeur OFF
sert à activer ou désactiver un axe spécifique
3.2.35 AXISSTATUS
/i
Type Paramètre d’axe (en lecture seule)
Syntaxe AXISSTATUS
Description Le paramètre d’axe AXISSTATUS contient l’état d’un axe. Le tableau ci-après
répertorie les valeurs du paramètre d’axe AXISSTATUS. Le paramètre AXISSTATUS est utilisé dans le cadre du traitement des erreurs de contrôle d’axes de la carte.
Arguments N/A
Exemple IF (AXISSTATUS AND 16) > 0 THEN PRINT "Limite avant"
Voir aussi AXIS, ERRORMASK
MANUEL DE PROGRAMMATION 50
Commandes BASIC
/i
Numéro de bit
0– 1
1 Avertissement d’erreur suivante 2 w
2
3 Alarme du servodriver 8 m
4 Limite avant 16 f
5 Limite arrière 32 r
6 Référencement 64 d
7 Entrée de maintien d’alimentation 128 h
8 Limite d’erreur suivante 256 e
9 Limite avant logicielle 512 x
10 Limite arrière logicielle 1024 y
11 Annulation du mouvement 2048 c
12 Survitesse de la sortie codeur 4096 o
Description Valeur Caractère (utilisé dans
Trajexia Tools)
Erreur de communication du servodriver
4a
3.2.36 B_SPLINE
/i
Arguments •type
Réservé pour une extension ultérieure. Toujours régler sur la valeur 1.
entrée_données
Emplacement de la zone TABLE qui stocke le profil source.
entrée_nombre
Nombre de points du profil source.
sortie_données
Emplacement de la zone TABLE où le profil étendu sera stocké.
taux_extension
Taux d’extension. Par exemple, si le profil source correspond à 100 points et que taux_extension est défini sur 10, le profil qui en résulte comporte 1 000 points (100 x 10).
Exemple Pas d’exemple.
Voir aussi N/A
3.2.37 BASE
/i
Type Commande d’axe
Syntaxe BASE
BASE(axe_1 [ ,axe_2 [ , axe_3 [ , axe_4 [ , axe_...]]]]) BA BA(axe_1 [ ,axe_2 [ , axe_3 [ , axe_4 [ , axe_...]]]])
Type Commande d’axe
Syntaxe B_SPLINE(type, entrée_données, entrée_nombre, sortie_données,
taux_extension)
Description Étend un profil existant stocké dans la zone TABLE à l’aide de la fonction
mathématique B-spline en fonction d’un facteur d’extension configurable, vers une autre zone de TABLE. Il est recommandé d’utiliser cette commande lorsque le profil CAM source est trop court et doit être extrapolé en un nombre de points plus important.
Révision 3.0
MANUEL DE PROGRAMMATION 51
Commandes BASIC
Description La commande BASE sert à définir l’axe de base par défaut ou un groupe de
séquence d’axes spécifique. Toutes les commandes de contrôle d’axes et les paramètres d’axe ultérieurs s’appliquent à l’axe de base ou au groupe d’axes spécifié, sauf si la commande AXIS est utilisée pour spécifier un axe de base temporaire. L’axe de base est valable jusqu’à ce qu’il soit modifié par BASE. Chaque processus BASIC peut comporter un groupe d’axes spécifique et cha­que programme peut définir un groupe d’axes de manière indépendante. Utilisez
PROC
le modificateur Le groupement d’ordre manière explicite. Cet ordre est utilisé à des fins d’interpolation dans des mouve­ments circulaires et linéaires multiaxes. La valeur par défaut du groupe d’axes de base est (0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15) au démarrage ou au début de l’exécution d’un programme sur une tâche. Si aucun argument n’est spécifié, la commande
Remarque : si la commande BASE ne spécifie pas tous les axes, elle rensei­gne automatiquement les valeurs restantes. Elle complète d’abord les axes restants à partir de la dernière valeur déclarée, puis complète les axes res­tants de la séquence. Ainsi, BASE(2,6,10) définit le tableau interne de 16 axes sur :
2,6,10,11,12,13,14,15,0,1,3,4,5,7,8,9.
Arguments La commande peut comporter jusqu’à 16 arguments.
axe_n
Numéro de l’axe défini en tant qu’axe de base et axes suivants du groupe pour les mouvements multiaxes.
Exemple BASE(1)
UNITS = 2000 ' Définit le facteur de conversion d’unités pour l’axe 1 SPEED = 100 ' Règle la vitesse de l’axe 1 ACCEL = 5000 ' Règle le taux d’accélération de l’axe 1 BASE(2) UNITS = 2000 ' Définit le facteur de conversion d’unités pour l’axe 2 SPEED = 125 ' Règle la vitesse de l’axe 2 ACCEL = 10000 ' Règle le taux d’accélération de l’axe 2
Il est possible de programmer chaque axe en fonction d’une vitesse, d’une accélération et d’autres paramètres spécifiques.
pour accéder au paramètre d’une tâche donnée.
BASE
peut être défini en attribuant l’ordre des axes de
BASE
renvoie le groupement d’ordre de base actuel.
Exemple BASE(0)
MOVE(100,-23.1,1250)
Dans cet exemple, les axes 0, 1 et 2 se déplacent vers les positions spéci­fiées à la vitesse et au taux d’accélération définis pour l’axe 0. BASE(0) défi­nit l’axe 0 en tant qu’axe de base, qui détermine les trois axes utilisés par MOVE, ainsi que la vitesse et le taux d’accélération.
Exemple >> BASE(0,2,1)
Dans la ligne de commande, l’ordre du groupe de base peut être affiché en tapant BASE.
Exemple >> RUN "PROGRAM",3
>> BASE PROC(3)(0,2,1)
Utilisez le modificateur PROC pour afficher l’ordre du groupe de base d’une tâche donnée.
Exemple >> BASE(2)
>> PRINT BASE
2.0000
L’impression de BASE renvoie l’axe de base sélectionné.
Voir aussi AXIS
3.2.38 BASICERROR
/i
Type Commande système
Syntaxe BASICERROR
Description La commande BASICERROR sert à exécuter une routine lorsqu’une erreur
d’exécution se produit dans un programme. BASICERROR ne peut être uti­lisé que dans le cadre d’une commande ON ... GOSUB ou ON ... GOTO. Cette commande doit obligatoirement être exécutée une fois dans le pro­gramme BASIC. Si plusieurs commandes sont utilisées, seule la dernière commande exécutée est valable.
Arguments N/A
Révision 3.0
MANUEL DE PROGRAMMATION 52
Commandes BASIC
Exemple ON BASICERROR GOTO error_routine
... no_error = 1 STOP
error_routine:
IF no_error = 0 THEN
PRINT "L’erreur ";RUN_ERROR[0];
PRINT " s’est produite a la ligne ";ERROR_LINE[0] ENDIF STOP
Dans cet exemple, la routine d’erreur est exécutée si une erreur se produit dans une commande BASIC. La présence de l’instruction IF permet d’empêcher le déclenchement de la routine d’erreur lorsque le programme s’arrête normalement.
Voir aussi ERROR_LINE, ON, RUN_ERROR.
3.2.39 BATTERY_LOW
/i
Type Paramètre système (en lecture seule)
Syntaxe BATTERY_LOW
Description Ce paramètre renvoie l’état actuel de la batterie. Si BATTERY_LOW=ON,
la batterie doit être remplacée. Si BATTERY_LOW=OFF, l’état de la batterie est satisfaisant.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
Révision 3.0
3.2.40 BREAK_RESET
/i
Type Commande système
Syntaxe BREAK_RESET "nom_programme"
Description Commande utilisée par Trajexia Tools pour supprimer tous les points d’inter-
ruption du programme spécifié.
Arguments nom_programme
Nom du programme dont vous souhaitez supprimer tous les points d’interruption.
Exemple BREAK_RESET "testsimple"
Supprime tous les points d’interruption du programme testsimple.
Voir aussi N/A
3.2.41 CAM
/i
Type Commande d’axe
Syntaxe CAM(point_départ, point_fin, multiplicateur_table, distance)
Description La commande CAM sert à générer le mouvement d’un axe en fonction d’un
profil de position stocké dans le tableau de variables TABLE. Les valeurs TABLE sont des positions absolues par rapport au point de départ et sont spécifiées dans les fronts du codeur. Le tableau TABLE est spécifié à l’aide de la commande TABLE. Le mouvement peut être défini à l’aide d’un nombre de points compris entre 2 et 64000. Le TJ1-MC__ passe en permanence d’une valeur à l’autre du tableau TABLE afin de permettre à un nombre de points de définir un profil constant. Il est possible d’exécuter simultanément plusieurs commandes CAM en utilisant des valeurs identiques ou qui se chevauchent dans le tableau TABLE. Le profil TABLE est traversé une fois. CAM exige que l’élément de début du tableau TABLE ait la valeur zéro. L’argument de distance et les paramètres SPEED et ACCEL déterminent la vitesse de déplacement dans le tableau TABLE. Pour suivre précisément le profil CAM, la valeur du paramètre ACCEL de l’axe doit être au moins 1 000 fois plus grande que celle du paramètre SPEED. CAM est valable sur l’axe de base par défaut (réglé avec BASE), sauf si la commande AXIS est utilisée pour spécifier un axe de base temporaire.
MANUEL DE PROGRAMMATION 53
Commandes BASIC
Arguments point_départ
Adresse du premier élément du tableau TABLE à utiliser. La définition du point de départ permet au tableau TABLE de contenir plusieurs profils et/ou d’autres informations.
point_fin
Adresse du dernier élément du tableau TABLE.
multiplicateur_table
La valeur du multiplicateur Table sert à définir l’échelle des valeurs stockées dans TABLE. Les valeurs Table étant spécifiées dans les fronts du codeur, utilisez cet argument pour définir les valeurs du facteur de conversion d’unités, par exemple (défini par le paramètre UNITS).
•distance
Facteur exprimé en unités utilisateur qui détermine la vitesse de mouve­ment dans la table. La durée d’exécution de CAM varie en fonction de la vitesse d’axe actuelle et de la distance. Par exemple, supposons que le système est programmé en mm, que la vitesse est réglée sur 10 mm/s et que le taux d’accélération est suffisamment élevé. Si une distance de 100 mm est spécifiée, l’exécution de CAM prend 10 secondes. Le paramètre SPEED de l’axe de base permet de modifier la vitesse de mouvement en cas d’utilisation du mouvement CAM.
Remarque : lors de l’exécution de la commande est défini sur la fin du mouvement précédent.
Exemple Supposons qu’un mouvement doive respecter l’équation de position t(x) =
x*25 + 10000(1-cos(x)). Dans ce cas, x est exprimé en degrés. Cet exemple correspond à un tableau TABLE qui fournit une oscillation simple superposée à une vitesse constante. Pour charger le tableau TABLE et le parcourir de manière continue, le code suivant doit être utilisé.
GOSUB camtable loop: CAM(1,19,1,200) GOTO loop
La sous-routine camtable charge les données de la table inférieure dans le tableau TABLE.
Voir aussi ACCEL, AXIS, CAMBOX, SPEED, TABLE.
CAM
, le paramètre
ENDMOVE
Position TABLE Degré Valeur
100
2 20 1103
3 40 3340
4 60 6500
5 80 10263
6 100 14236
7 120 18000
8 140 21160
9 160 23396
10 180 24500
11 200 24396
12 220 23160
13 240 21000
14 260 18236
15 280 15263
16 300 12500
17 320 10340
18 340 9103
19 360 9000
/i
Révision 3.0
MANUEL DE PROGRAMMATION 54
Commandes BASIC
3.2.42 CAMBOX
/i
Type Commande d’axe
Syntaxe CAMBOX(point_départ, point_fin, multiplicateur_table, distance_liaison,
axe_liaison [ , option_liaison [ , position_liaison ]])
Révision 3.0
Description
La commande profil de position stocké dans le tableau de variables TABLE. Le mouvement est lié au mouvement mesuré d’un autre axe afin de constituer un réducteur électro­nique logiciel à variation continue. Les valeurs TABLE sont des positions abso­lues par rapport au point de départ et sont spécifiées dans les fronts du codeur. Le tableau TABLE est spécifié à l’aide de la commande TABLE. Le mouve­ment peut être défini à l’aide d’un nombre de points compris entre 2 et 64000. La définition du point de départ permet au tableau TABLE de contenir plu­sieurs profils et/ou d’autres informations. Le TJ1-MC__ passe en perma­nence d’une valeur à l’autre du tableau TABLE afin de permettre à un nombre de points de définir un profil constant. Il est possible d’exécuter simultané­ment plusieurs commandes CAMBOX en utilisant des valeurs identiques ou qui se chevauchent dans le tableau TABLE. La commande CAMBOX exige que l’élément de début du tableau TABLE ait la valeur zéro. Notez également que la commande CAMBOX permet de tra­verser le tableau TABLE vers l’arrière ou vers l’avant, en fonction du sens de l’axe maître. L’argument option_liaison sert à spécifier différentes options pour démarrer la commande et spécifier une commande CAM continue. Par exemple, si option_liaison a la valeur 4, la commande CAMBOX fonctionne comme une commande CAM «physique». CAMBOX est valable sur l’axe de base par défaut (réglé avec BASE), sauf si la commande AXIS est utilisée pour spécifier un axe de base temporaire. Remarque : lors de l’exécution de la commande CAMBOX, le paramètre
ENDMOVE est défini sur la fin du mouvement précédent. Le paramètre d’axe REMAIN contient le reste de la distance sur l’axe de liaison.
CAMBOX
sert à générer le mouvement d’un axe en fonction d’un
Arguments point_départ
Adresse du premier élément du tableau TABLE à utiliser.
point_fin
Adresse du dernier élément du tableau TABLE.
multiplicateur_table
La valeur du multiplicateur Table sert à définir l’échelle des valeurs stoc­kées dans TABLE. Les valeurs TABLE étant spécifiées dans les fronts du codeur, utilisez cet argument pour définir les valeurs du facteur de conversion d’unités, par exemple (défini par le paramètre UNITS).
distance_liaison
Distance en unités utilisateur que l’axe de liaison doit parcourir pour ter­miner le mouvement de sortie spécifié. La valeur de la distance de liaison doit être positive.
axe_liaison
Axe à lier.
option_liaison
Consultez le tableau ci-dessous.
position_liaison Position absolue de démarrage de la commande CAMBOX lorsque option_liaison est défini sur 2.
Exemple Pas d’exemple.
Voir aussi AXIS, CAM, REP_OPTION, TABLE
/i
Valeur option_liaison
1 La liaison démarre lorsque l’événement d’enregistrement se produit
2 La liaison démarre à une position absolue de l’axe de liaison
4 Répétition automatique de la commande CAMBOX de manière bidi-
5 Combinaison des options 1 et 4.
6 Combinaison des options 2 et 4.
Description
sur l’axe de liaison.
(voir position_liaison).
rectionnelle. Cette option est annulée en définissant le bit 1 du para­mètre REP_OPTION (REP_OPTION = REP_OPTION OR 2).
MANUEL DE PROGRAMMATION 55
Commandes BASIC
3.2.43 CANCEL
/i
Type Commande d’axe
Syntaxe CANCEL[(1)]
CA[(1)]
Description La commande CANCEL annule le mouvement actuel d’un axe. Les mouve-
ments à profil de vitesse (FORWARD, REVERSE, MOVE, MOVEABS, MOVECIRC, MHELICAL et MOVEMODIFY) sont décélérés au taux de décé­lération défini par le paramètre DECEL avant d’être arrêtés. Les autres mou­vements sont immédiatement arrêtés. La commande CANCEL annule le contenu du tampon de mouvement actuel (MTYPE). La commande CANCEL(1) annule le contenu du tampon de mou­vement suivant (NTYPE) sans perturber le mouvement actuel du tampon
MTYPE. CANCEL est valable sur l’axe de base par défaut (réglé avec BASE), sauf
si la commande AXIS est utilisée pour spécifier un axe de base temporaire. Remarque :
La commande cution. Si d’autres mouvements sont mis en tampon, ils sont chargés.
Lors de la décélération du mouvement actuel, les commandes CANCEL supplémentaires sont ignorées.
La commande CANCEL(1) annule uniquement le mouvement en tampon actuel. Tous les mouvements stockés dans les tampons de tâches sig­nalés par la variable PMOVE peuvent être chargés dans le tampon dès que le mouvement en tampon est annulé.
Arguments N/A
Exemple FORWARD
WA(10000) CANCEL
CANCEL
annule uniquement le mouvement en cours d’exé-
3.2.44 CHECKSUM
/i
Type Paramètre système (en lecture seule)
Syntaxe CHECKSUM
Description Le paramètre CHECKSUM contient la somme de contrôle des programmes
en mémoire RAM. Au démarrage, la somme de contrôle est recalculée et comparée à la valeur stockée précédente. Le programme n’est pas exécuté si la somme de contrôle est incorrecte.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
3.2.45 CHR
/i
Type Commande d’E/S
Syntaxe CHR(x)
Description La commande CHR sert à envoyer des caractères ASCII référen-
cés par un nombre. PRINT CHR(x); équivaut à PUT(x) dans d’autres versions du langage BASIC.
Arguments •x
Expression BASIC.
Exemple >>PRINT CHR(65);
A
Voir aussi N/A
Exemple MOVE(1000)
MOVEABS(3000) CANCEL ' Annule le mouvement vers 3000 et passe à 4000. MOVEABS(4000)
Notez que, dans ce cas, il est recommandé d’utiliser la commande
Révision 3.0
Voir aussi AXIS, MTYPE, NTYPE, PMOVE, RAPIDSTOP
pour modifier les points de fin de mouvements.
MOVEMODIFY
MANUEL DE PROGRAMMATION 56
Commandes BASIC
3.2.46 CLEAR
/i
Type Commande système
Syntaxe CLEAR
Description La commande CLEAR remet à zéro toutes les variables VR globales. Si vous
l’utilisez dans un programme, elle réinitialise également les variables locales de la tâche actuelle.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi RESET, VR
3.2.47 CLEAR_BIT
/i
Type Commande système
Syntaxe CLEAR_BIT(numéro_bit, numéro_vr)
Description La commande CLEAR_BIT remet à zéro le bit spécifié dans la variable VR
spécifiée. Les valeurs des autres bits de la variable sont préservées.
Arguments numéro_bit
Numéro du bit à réinitialiser. Plage : 0 - 23.
•numéro_vr
Numéro de la variable VR dont le bit doit être remis à zéro. Plage : 0 - 1023.
Exemple Pas d’exemple.
Voir aussi READ_BIT, SET_BIT, VR.
3.2.48 CLEAR_PARAMS
/i
Type Commande système
Révision 3.0
Syntaxe CLEAR_PARAMS
Description Rétablit les valeurs par défaut de l’ensemble des variables et des paramètres
en mémoire flash EPROM. La commande CLEAR_PARAM ne peut pas être exécutée si le contrôleur est verrouillé.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
3.2.49 CLOSE_WIN
/i
Type Paramètre d’axe
Syntaxe CLOSE_WIN
CW
Description Le paramètre d’axe CLOSE_WIN définit la fin de la fenêtre dans ou en dehors
de laquelle un repère d’enregistrement est attendu. La valeur est exprimée en unités utilisateur.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXIS, OPEN_WIN, REGIST, UNITS.
3.2.50 CLUTCH_RATE
/i
Type Paramètre d’axe
Syntaxe CLUTCH_RATE
Description Le paramètre d’axe CLUTCH_RATE définit le changement de rapport
de connexion en cas d’utilisation de la commande CONNECT. Le taux est défini en tant que montant du rapport par seconde. La valeur par défaut est élevée (1000000) afin de garantir la compatibilité avec les cartes TJ1-MC__ antérieures. Remarque : L’opération qui utilise la commande ministe pour la position. Si nécessaire, utilisez plutôt la commande pour éviter toute différence de phase inutile entre l’axe de base et l’axe lié.
CLUTCH_RATE
n’est pas déter-
MOVELINK
Arguments N/A
MANUEL DE PROGRAMMATION 57
Commandes BASIC
Exemple CLUTCH_RATE = 4
Ce paramètre indique que lors de la génération de la commande la connexion complète est atteinte en une seconde.
Voir aussi AXIS, CONNECT, MOVELINK.
CONNECT(4,1)
3.2.51 COMMSERROR
/i
Type Paramètre système (en lecture seule)
Syntaxe COMMSERROR
Description Le paramètre COMMSERROR contient les erreurs de communication
qui se sont produites depuis la dernière initialisation. Le tableau ci-dessous répertorie les bits de la commande COMMSERROR.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
/i
Bit Description Emplacement de l’erreur
8 Port 1 - Données Rx prêtes Port série 1
9 Port 1 - Engorgement Rx Port série 1
10 Port 1 - Erreur de parité Port série 1
3.2.52 COMMSTYPE
,
/i
Type Paramètre d’emplacement
Syntaxe COMMSTYPE SLOT(numéro_carte)
Description Ce paramètre renvoie le type de carte installée dans un contrôleur.
Le tableau ci-dessous répertorie les valeurs renvoyées.
Arguments numéro_carte
La plage de numéros de carte va de 0 à 6, 0 correspondant à la carte située directement à droite de la carte TJ1-MC__.
Exemple Pas d’exemple.
Voir aussi N/A
/i
Valeur renvoyée
0 Carte non utilisée
31 TJ1-ML__
33 TJ1-FL02
34 TJ1-PRT
35 TJ1-DRT
Description
11 Port 1 - Erreur de trame Rx Port série 1
12 Port 2 - Données Rx prêtes Port série 2
13 Port 2 - Engorgement Rx Port série 2
14 Port 2 - Erreur de parité Port série 2
15 Port 2 - Erreur de trame Rx Port série 2
Révision 3.0
3.2.53 COMPILE
/i
Type Commande de programme
Syntaxe COMPILE
Description La commande COMPILE force la compilation du programme actuel en code
intermédiaire. Un programme est automatiquement compilé par le logiciel système avant son exécution ou lors de la sélection d’un autre programme.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
MANUEL DE PROGRAMMATION 58
Commandes BASIC
3.2.54 CONNECT
/i
Type Commande d’axe
Syntaxe CONNECT(rapport, axe_pilotage)
CO(rapport, axe_pilotage)
Description La commande CONNECTE relie la position demandée de l’axe de base
aux mouvements mesurés de l’axe spécifié par l’argument axe_pilotage afin de produire un réducteur électronique. Il est possible de modifier le rapport à tout moment en exécutant une autre commande CONNECT sur le même axe. Pour modifier l’axe de pilotage, la commande CONNECT doit d’abord être annulée. La commande CON-
NECT est ignorée si elle porte sur un autre axe de pilotage. La commande CONNECT peut être annulée à l’aide de la commande CANCEL ou RAPIDS­TOP. Le paramètre d’axe CLUTCH_RATE peut servir à définir un taux de
changement de connexion spécifique. CONNECT est valable sur l’axe de base par défaut (réglé avec BASE), sauf si la commande AXIS est utilisée pour spécifier un axe de base temporaire.
Arguments •rapport
Rapport de connexion du réducteur. Le rapport est spécifié en tant que rapport de fronts de codeur (pas en unités). Il contient le nombre de fronts que l’axe de base doit déplacer par pas de front de l’axe de pilotage. La valeur de rapport peut être positive ou négative et est exprimée par une résolution de fraction 16 bits.
axe_pilotage
Axe maître qui pilote l’axe de base.
Exemple Dans une alimentation de presse, un rouleau doit pivoter à une vitesse cor-
respondant à un quart du taux mesuré à partir d’un codeur installé sur le transporteur à courroie. Le rouleau est connecté à l’axe 0. Un canal d’entrée surveille les impulsions du codeur à partir du transporteur et constitue l’axe 1. Vous pouvez utiliser le code suivant :
BASE(1) SERVO = OFF ' Cet axe sert à surveiller le transporteur BASE(0) SERVO = ON
Révision 3.0
Voir aussi AXIS, CANCEL, CLUTCH_RATE, CONNECT, RAPIDSTOP.
CONNECT(0.25,1)
3.2.55 CONSTANT
/i
Type Commande système
Syntaxe CONSTANT "nom", valeur
Description Déclare le nom en tant que constante à utiliser dans le programme qui con-
tient la définition CONSTANT et tous les autres programmes du projet Tra­jexia Tools. Remarque : le programme qui contient la définition CONSTANT doit être exé­cuté avant que le nom soit utilisé dans d’autres programmes. En outre, seul ce programme doit être exécuté lors de l’exécution de CONSTANT. À défaut, une erreur programme s’affiche et le programme s’interrompt lors de la tenta­tive d’exécution de cette commande. Pour accélérer le démarrage, il est éga­lement recommandé que le programme soit le seul processus en cours d’exécution lors de la mise sous tension. Une fois la définition CONSTANT déclarée, la déclaration reste active jusqu’à la prochaine réinitialisation du TJ1-MC__ par un cycle de mise hors/sous ten­sion ou par l’exécution de la commande EX. Il est possible de déclarer un maximum de 128 définitions CONSTANT.
Arguments •nom
Nom défini par l’utilisateur contenant des caractères alphanumériques minuscules, des chiffres ou des traits de soulignement (_).
valeur
Valeur attribuée à l’argument nom.
Exemple CONSTANT "nak",$15
CONSTANT "start_button",5 IF IN(start_button)=ON THEN OP(led1,ON) IF key_char=nak THEN GOSUB no_ack_received
Voir aussi N/A
3.2.56 CONTROL
/i
Type Paramètre système (en lecture seule)
Syntaxe CONTROL
Description Le paramètre CONTROL contient le type de TJ1-MC__ dans le système.
La valeur de ce paramètre système est 262 pour le TJ1-MC__.
MANUEL DE PROGRAMMATION 59
Commandes BASIC
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
3.2.57 COPY
/i
Type Commande de programme
Syntaxe COPY nom_programme nom_nouveau_programme
Description La commande COPY copie un programme existant du contrôleur dans un
nouveau programme portant le nom spécifié. Le nom du programme peut être spécifié sans guillemets. Remarque : cette commande est mise en œuvre pour un terminal hors con­nexion (VT100). Dans Trajexia Tools, l’utilisateur peut sélectionner la com­mande dans le menu Program (Programme).
Arguments nom_programme
Nom du programme à copier.
nom_nouveau_programme
Nom à attribuer au nouveau programme.
Exemple >> COPY "prog" "nouveauprog"
Voir aussi DEL, NEW, RENAME.
3.2.59 CREEP
/i
Type Paramètre d’axe
Syntaxe CREEP
Description Le paramètre d’axe CREEP contient la vitesse lente sous charge de l’axe.
Cette vitesse est utilisée pour la partie lente d’une séquence de recherche d’origine. La valeur de CREEP doit être positive ou égale à zéro. La vitesse sous charge lente est exprimée en unités avec le facteur de con­version d’unités UNITS. Par exemple, si ce facteur est défini sur le nombre de fronts du codeur/cm, la vitesse est réglée en centimètres.
Arguments N/A
Exemple BASE(2)
CREEP = 10 SPEED = 500 DATUM(4) CREEP AXIS(1) = 10 SPEED AXIS(1) = 500 DATUM(4) AXIS(1)
Voir aussi AXIS, DATUM, UNITS.
3.2.60 D_GAIN
3.2.58 COS
/i
Type Fonction mathématique
Syntaxe COS(expression)
Description La fonction COS renvoie le cosinus d’une expression. Les valeurs d’entrée
sont exprimées en radians. Il peut s’agir de n’importe quelle valeur. La valeur du résultat est comprise entre -1 et 1.
Arguments expression
Expression BASIC valide.
Révision 3.0
Exemple >> PRINT COS(0)
1.0000
Voir aussi N/A
/i
Type Paramètre d’axe
Syntaxe D_GAIN
Description Le paramètre d’axe D_GAIN contient le gain dérivé de l’axe. La contribution
de sortie dérivée est calculée en multipliant le changement de l’erreur sui­vante par D_GAIN. La valeur par défaut est 0. Ajoutez le gain dérivé à un système pour obtenir une réponse plus souple et pour pouvoir utiliser un gain proportionnel plus élevé. Une valeur élevée peut entraîner une oscillation. Remarque : le gain servo ne doit être modifié que lorsque
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXIS, I_GAIN, OV_GAIN, P_GAIN, VFF_GAIN.
SERVO
est réglé sur OFF.
MANUEL DE PROGRAMMATION 60
Commandes BASIC
3.2.61 D_ZONE_MAX
/i
Type Paramètre système
Syntaxe D_ZONE_MAX=valeur
Description Ce paramètre est utilisé avec D_ZONE_MIN pour forcer la sortie DAC
sur zéro lorsque le mouvement demandé est terminé et que la magnitude de l’erreur suivante est inférieure à la valeur D_ZONE_MIN. La boucle servo est réactivée lorsque l’erreur suivante dépasse la valeur D_ZONE_MAX ou lorsqu’un nouveau mouvement est démarré.
Arguments N/A
Exemple D_ZONE_MIN=3
D_ZONE_MAX=10
En fonction des deux paramètres ci-dessus, la sortie DAC est forcée sur zéro lorsque le mouvement est terminé et que l’erreur suivante est inférieure à 3. La boucle servo est réactivée lorsqu’un mouvement est redémarré ou si l’erreur suivante dépasse la valeur 10.
Voir aussi D_ZONE_MIN.
3.2.62 D_ZONE_MIN
/i
Type Paramètre système
Syntaxe D_ZONE_MIN=valeur
Description Ce paramètre est utilisé avec D_ZONE_MAX pour forcer la sortie DAC
sur zéro lorsque le mouvement demandé est terminé et que la magnitude de l’erreur suivante est inférieure à la valeur D_ZONE_MIN. La boucle servo est réactivée lorsque l’erreur suivante dépasse la valeur D_ZONE_MAX ou lorsqu’un nouveau mouvement est démarré.
Arguments N/A
Exemple D_ZONE_MIN=3
D_ZONE_MAX=10
Révision 3.0
En fonction des deux paramètres ci-dessus, la sortie DAC est forcée sur zéro lorsque le mouvement est terminé et que l’erreur suivante est inférieure à 3. La boucle servo est réactivée lorsqu’un mouvement est redémarré ou si l’erreur suivante dépasse la valeur 10.
Voir aussi D_ZONE_MAX.
3.2.63 DAC
Voir S_REF.
3.2.64 DAC_OUT
Voir S_REF_OUT.
3.2.65 DAC_SCALE
/i
Type Paramètre d’axe
Syntaxe DAC_SCALE
Description Ce paramètre poursuit deux objectifs :
1. Il est défini sur la valeur 16 au démarrage des axes intégrés du système. Cette opération met à l’échelle les valeurs appliquées à la résolution supérieure DAC afin que les gains requis pour l’axe soient similaires à ceux requis pour les autres contrôleurs.
2. DAC_SCALE peut être défini sur une valeur négative (-16) afin d’inverser la polarité du signal de sortie DAC. Lorsque le servo est dés­activé, la magnitude de DAC_SCALE n’a pas d’importance car la ten­sion appliquée est contrôlée par le paramètre DAC. La polarité est toutefois inversée par DAC_SCALE.
Arguments N/A
Exemple DAC_SCALE AXIS(3)=-16
Voir aussi DAC, S_REF.
MANUEL DE PROGRAMMATION 61
Commandes BASIC
3.2.66 DATE
/i
Type Paramètre système
Syntaxe DATE
Description
Arguments N/A
Exemple DATE=20:10:05
Exemple >>PRINT DATE
Voir aussi N/A
Règle ou renvoie la date du jour contenue par l’horloge temps réel de Trajexia. La date peut être entrée au format JJ:MM:AA ou JJ:MM:AAAA.
ou
DATE=20:10:2005
36956
Cette commande affiche le nombre représentant la date du jour. Il s’agit du nombre de jours écoulés depuis le 1er janvier 1900, cette date correspondant à la valeur 1.
3.2.67 DATE$
/i
Type Commande système
Syntaxe DATE$
3.2.68 DATUM
/i
Type Commande d’axe
Syntaxe DATUM(séquence)
Description
Arguments séquence
Exemple Pas d’exemple.
Voir aussi ACCEL, AXIS, AXISSTATUS, CREEP, DATUM_IN, DECEL,
La commande tionner un axe sur une position absolue et de réinitialiser les erreurs suivantes. DATUM utilise la vitesse lente sous charge et la vitesse demandée dans le cadre de la recherche d’origine. La vitesse lente sous charge des séquences est définie à l’aide du paramètre d’axe CREEP, tandis que la vitesse deman- dée est définie à l’aide du paramètre d’axe SPEED. Le numéro d’entrée de commutateur de référence, utilisé pour les séquences 3 à 6, est défini par le paramètre DATUM_IN. DATUM est valable sur l’axe de base par défaut (réglé avec BASE), sauf si la commande AXIS est utilisée pour spécifier un axe de base temporaire. Remarque : l’entrée d’origine réglée à l’aide du paramètre entrée faible active, c’est-à-dire que le commutateur d’origine est réglé lorsque l’entrée est désactivée. Les entrées de maintien d’alimentation, de jog avant et arrière et de limite avant et arrière sont également des entrées faibles actives. Les entrées faibles actives servent à activer le câblage de sécurité.
Consultez le tableau ci-dessous.
MOTION_ERROR, SPEED.
DATUM
effectue l’une des 6 recherches d’origine afin de posi-
DATUM_IN
est une
Description Affiche la date du jour JJ/MM/AA en tant que chaîne sur le port. Une descrip-
tion d’année à 2 chiffres est fournie.
Arguments N/A
Exemple PRINT #1,DATE$
Cette commande affiche la date au format donné, par exemple : 20/10/05
Voir aussi N/A
Révision 3.0
MANUEL DE PROGRAMMATION 62
Commandes BASIC
/i
Valeur de séquence
0 La commande DATUM(0) acquitte l’erreur de mouvement. La position actuel-
1 L’axe se déplace vers l’avant à la vitesse lente sous charge jusqu’à ce
2 L’axe se déplace vers l’arrière à la vitesse lente sous charge jusqu’à ce
3 L’axe se déplace vers l’avant à la vitesse demandée jusqu’à ce que le com-
4 L’axe se déplace vers l’arrière à la vitesse demandée jusqu’à ce que le com-
5 L’axe se déplace vers l’avant à la vitesse demandée jusqu’à ce que le com-
Révision 3.0
Description
lement mesurée est définie en tant que position demandée (ce qui s’avère particulièrement utile sur les axes de moteur à pas avec vérification de la posi­tion). DATUM(0) acquitte également l’erreur suivante qui dépasse la condition FE_LIMIT dans le registre AXISSTATUS pour tous les axes. Cette commande met à zéro les bits pour AXXISSTATUS : Bit 1 : Avertissement d’erreur suivante. Bit 2 : Erreur de communication du driver déporté. Bit 3 : Erreur du driver déporté. Bit 8 : Limite d’erreur suivante dépassée. Bit 11 : Annulation du mouvement.
Il est impossible d’effacer l’état si la cause du problème est toujours présente.
que le repère Z soit atteint. La position demandée est alors remise à zéro et la position mesurée est corrigée afin de maintenir l’erreur suivante.
que le repère Z soit atteint. La position demandée est alors remise à zéro et la position mesurée est corrigée afin de maintenir l’erreur suivante.
mutateur de référence soit atteint. L’axe se déplace ensuite vers l’arrière à la vitesse lente sous charge jusqu’à ce que le commutateur de référence soit réi­nitialisé. La position demandée est alors remise à zéro et la position mesurée est corrigée afin de maintenir l’erreur suivante.
mutateur de référence soit atteint. L’axe se déplace ensuite vers l’avant à la vitesse lente sous charge jusqu’à ce que le commutateur de référence soit réi­nitialisé. La position demandée est alors remise à zéro et la position mesurée est corrigée afin de maintenir l’erreur suivante.
mutateur de référence soit atteint. L’axe se déplace ensuite vers l’arrière à la vitesse lente sous charge jusqu’à ce que le commutateur de référence soit réinitialisé. L’axe continue à la vitesse lente sous charge jusqu’à ce que le repère Z du codeur soit atteint. La position demandée est alors remise à zéro et la position mesurée est corrigée afin de maintenir l’erreur suivante.
Valeur de séquence
6 L’axe se déplace vers l’arrière à la vitesse demandée jusqu’à ce que le com-
Description
mutateur de référence soit atteint. L’axe se déplace ensuite vers l’avant à la vitesse lente sous charge jusqu’à ce que le commutateur de référence soit réinitialisé. L’axe continue à la vitesse lente sous charge jusqu’à ce que le repère Z du codeur soit atteint. La position demandée est alors remise à zéro et la position mesurée est corrigée afin de maintenir l’erreur suivante.
3.2.69 DATUM_IN
/i
Type Paramètre d’axe
Syntaxe DATUM_IN
DAT_IN
Description
Sigma II Entrée 28 : CN1-40
Sigma III Entrée 28 : CN1-13
Le paramètre d’axe entrée de commutateur de référence pour la commande valide est comprise entre 0 et 31. Les valeurs 0 à 15 correspondent aux entrées physiques du connecteur d’E/S du TJ1-MC__. Elles sont communes à tous les axes. Les valeurs 16 à 27 correspondent aux entrées logicielles pouvant être librement utilisées dans des programmes et des commandes tels que IN et OP. Il s’agit égale­ment d’entrées communes à tous les axes. Les valeurs 28 à 31 sont directement mappées sur les entrées de driver présentes sur le connecteur CN1. Elles sont uni­ques à chaque axe. Le mappage entre les entrées de driver et les entrées 28 à 31 varie en fonction de la valeur du paramètre de servodriver Pn81E. La valeur recom­mandée du paramètre Pn81E est 0x4321, avec le mappage ci-dessous : Remarque : l’entrée d’origine est une entrée faible active, c’est-à-dire que le commutateur d’origine est réglé lorsque l’entrée est désactivée. Les entrées de maintien d’alimentation, de jog avant et arrière et de limite avant et arrière sont également des entrées faibles actives. Les entrées faibles actives servent à activer le câblage de sécurité.
Entrée 29 : CN1-41
Entrée 30 : CN1-42
Entrée 31 : CN1-43
Entrée 29 : CN1-7
Entrée 30 : CN1-8
Entrée 31 : CN1-9
DATUM_IN
contient le numéro de l’entrée à utiliser comme
DATUM
. La plage d’entrées
MANUEL DE PROGRAMMATION 63
Commandes BASIC
Junma Entrée 26 : CN1-2
Entrée 27 : CN1-1
Pour plus d’informations sur le réglage du paramètre de driver Pn81E, consultez le manuel correspondant au servodriver. Par défaut, le paramètre est réglé sur la valeur -1 (aucune entrée sélectionnée).
Arguments N/A
Exemple DATUM_IN AXIS(0) = 5
Voir aussi AXIS, DATUM.
3.2.70 DAY
/i
Type Paramètre système
Syntaxe DAY
Description Renvoie le jour actuel sous la forme d’un chiffre de 0 à 6, 0 correspondant
au dimanche. DAY peut être réglé par affectation.
Arguments N/A
Exemple >>DAY=3
>>? DAY
3.0000
Voir aussi N/A
3.2.71 DAY$
/i
Type Commande système
Syntaxe DAY$
Description Affiche le jour actuel sous la forme d’une chaîne.
Arguments N/A
Exemple >>DAY=3
Révision 3.0
Voir aussi N/A
>>? DAY$ Mercredi
3.2.72 DECEL
/i
Type Paramètre d’axe
Syntaxe DECEL
Description
Arguments N/A
Exemple DECEL = 100 ' Règle le taux de décélération
Voir aussi ACCEL, AXIS, UNITS.
Le paramètre d’axe exprimé en unités/s
PRINT " Le taux de deceleration est ";DECEL;" mm/s/s"
DECEL
2
contient le taux de décélération d’un axe. Ce taux est
. La valeur de ce paramètre doit être positive ou égale à zéro.
3.2.73 DEFPOS
/i
Type Commande d’axe
Syntaxe DEFPOS(pos_1 [ , pos_2 [ , pos_3 [ , pos_4 [, ...]]]])
DP(pos_1 [ , pos_2 [ , pos_3 [ , pos_4 [, ...]]]])
Description La commande DEFPOS définit la position demandée actuelle (DPOS) en tant
que nouvelle position absolue. La position mesurée (MPOS) est modifiée en conséquence afin de conserver l’erreur suivante. La commande DEFPOS est généralement utilisée après une séquence de recherche d’origine (voir commande DATUM), car cette opération remet la position actuelle à zéro. DEFPOS peut être utilisé à tout moment. Il est également possible d’utiliser le paramètre d’axe OFFPOS, qui sert à effectuer un ajustement relatif de la position actuelle. DEFPOS est valable sur l’axe de base par défaut (réglé avec BASE), sauf si la commande AXIS est utilisée pour spécifier un axe de base temporaire. Remarque : les changements de la position d’axe effectués à l’aide de DEF­POS ou OFFPOS sont appliqués lors de la mise à jour suivante du servo. Cela constitue une source potentielle de problème lorsqu’un mouvement est initié dans le même cycle servo que DEFPOS ou OFFPOS. L’exemple ci-dessous indique comment utiliser le paramètre OFFPOS afin d’éviter ce problème. Les commandes DEFPOS sont converties en interne en décalages de position OFFPOS. Le problème peut ainsi être facilement contourné en effectuant la programmation suivante :
DEFPOS(100) : WAIT UNTIL OFFPOS = 0 : MOVEABS(0)
MANUEL DE PROGRAMMATION 64
Commandes BASIC
Arguments La commande peut comporter jusqu’à 16 arguments.
pos_n
Position absolue de l’axe (base + n) exprimée en unités utilisateur. Reportez­vous à la commande
Exemple BASE(2)
DATUM(5) BASE(1) DATUM(4) WAIT IDLE DEFPOS(-1000,-3500)
La dernière ligne définit la position actuelle sur (-1000,-3500) en unités utilisa­teur. La position actuelle aurait été réinitialisée sur (0,0) par les deux com­mandes DATUM.
Voir aussi AXIS, DATUM, DPOS, OFFPOS, MPOS, UNITS.
BASE
pour connaître le regroupement des axes.
3.2.74 DEL
/i
Type Commande de programme
Syntaxe DEL [nom_programme]
RM [nom_programme]
Description La commande DEL supprime un programme du contrôleur. Si aucun nom
de programme n’est spécifié, la commande DEL permet de supprimer le pro­gramme actuellement sélectionné (à l’aide de SELECT). Le nom du pro­gramme peut également être spécifié sans guillemets. DEL ALL supprime tous les programmes. La commande DEL peut également être utilisée pour supprimer la table : DEL "TABLE". Le nom "TABLE" doit être placé entre guillemets. Remarque : cette commande est mise en œuvre pour un terminal hors con­nexion (VT100). Dans Trajexia Tools, l’utilisateur peut sélectionner la com­mande dans le menu Program (Programme).
Arguments nom_programme
Nom du programme à supprimer.
Exemple >> DEL ancienprog
Révision 3.0
Voir aussi COPY, NEW, RENAME, SELECT, TA BLE.
3.2.75 DEMAND_EDGES
/i
Type Paramètre d’axe (en lecture seule)
Syntaxe DEMAND_EDGES
Description Le paramètre d’axe DEMAND_EDGES contient la valeur actuelle du paramè-
tre d’axe DPOS, exprimée en unités de front du codeur.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXIS, DPOS.
3.2.76 DEVICENET
/i
Type Commande système
Syntaxe DEVICENET(numéro_carte, 2, 1, sorties_début_VR, nbre_sorties,
entrées_début_VR, nbre_entrées) DEVICENET(numéro_carte, 4, 0)
Description La fonction 2 de DEVICENET configure la carte TJ1-DRT pour l’échange
de données avec la carte maître DeviceNet et définit les zones de la mémoire VR où l’échange d’E/S a lieu. La fonction 4 de DEVICENET renvoie l’état d’échange des données de la carte TJ1-DRT. Reportez-vous au tableau ci­après pour obtenir la description des bits dans l’état d’échange des données.
Arguments numéro_carte
Indique le numéro de la carte TJ1-DRT dans le système Trajexia.
sorties_début_VR
Adresse de début de la mémoire VR du contrôleur où les données de sortie du maître DeviceNet sont stockées.
nbre_sorties
Nombre de mots de sortie du maître DeviceNet en mémoire VR.
entrées_début_VR
Adresse de début de la mémoire VR du contrôleur où les données d’entrée du maître DeviceNet sont stockées.
nbre_entrées
Nombre de mots d’entrée au maître DeviceNet en mémoire VR.
MANUEL DE PROGRAMMATION 65
Commandes BASIC
Exemple DEVICENET (0,2,1,10,16,150,31)
Dans cet exemple, la carte TJ1-DRT est configurée pour échanger des don­nées avec le maître DeviceNet en fonction de 16 mots de sortie (envoyés par le maître) situés aux adresses VR(10) à VR(25) et de 31 mots d’entrée (envoyés au maître) situés aux adresses VR(150) à VR(180).
Voir aussi N/A
/i
Bit Valeur Description
00
1
1 0 Pas de connexion d’E/S DeviceNet
1 Connexion d’E/S DeviceNet en cours d’exécution
2 0 Variables VR mises à jour dans la plage de données de sortie
1 Variables VR pas encore mises à jour dans la plage de données
3 0 Taille de connexion d’E/S DeviceNet correspondant à la commande
1 Taille de connexion d’E/S DeviceNet ne correspondant pas à la com-
4-7 0 Toujours zéro
8 0 Alimentation réseau OK
1 Panne d’alimentation réseau
9 0 Pas de BUSOFF
1BUSOFF
10 0 Pas d’erreur de duplication de l’adresse de nœud
1 Erreur de duplication de l’adresse de nœud
Commande
Commande
de sortie
DEVICENET (numéro_carte, 2,…)
mande DEVICENET (numéro_carte, 2,…)
DEVICENET (numéro_carte, 2, ...)
DEVICENET (numéro_carte, 2, ...)
pas encore exécutée
exécutée sans erreur
Révision 3.0
MANUEL DE PROGRAMMATION 66
Commandes BASIC
3.2.77 DIR
/i
Type Commande de programme
Syntaxe DIR
LS
Description La commande DIR affiche la liste des programmes contenus dans le contrô-
leur, la taille de la mémoire et la commande RUNTYPE. DIR affiche égale­ment la taille de la mémoire disponible, le mode de mise sous tension et le programme actuellement sélectionné du contrôleur.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi FREE, POWER_UP, PROCESS, RUNTYPE, SELECT.
3.2.78 DISABLE_GROUP
/i
Type Commande d’axe
Syntaxe DISABLE_GROUP(-1)
DISABLE_GROUP(axe_1 [, axe_2 [, ...]] )
Description Cette commande sert à regrouper des axes à des fins de désactivation
d’erreur. Si un groupe d’axes est défini, lorsqu’une erreur se produit sur un axe, les paramètres AXIS_ENABLE et SERVO sont désactivés (OFF) pour tous les axes. Il est possible de définir plusieurs groupes, mais un axe ne peut pas appartenir à plus d’un groupe. Tous les groupes peuvent être effacés à l’aide de la commande DISABLE_GROUP(-1).
Arguments axe_n
Expression BASIC évaluée sur un numéro d’axe.
Exemple DISABLE_GROUP(-1)
DISABLE_GROUP(0,1,2,3) DISABLE_GROUP(4,5,6,7) WDOG=ON STOP enable_b: FOR ax=4 TO 7
AXIS_ENABLE AXIS(ax)=ON
NEXT ax
Un système de 8 axes nécessite que l’exécution des axes 4 à 7 se poursuit en cas d’erreur des axes 0 à 3 et inversement. Les axes sont regroupés à l’aide de la commande DISABLE_GROUP. Remarque : à utiliser avec MECHATROLINK-II uniquement.
Voir aussi N/A
3.2.79 DISPLAY
/i
Type Paramètre système
Syntaxe DISPLAY=valeur
Description Détermine les canaux d’E/S à afficher sur les voyants en face avant. Le para-
mètre DISPLAY peut être utilisé pour sélectionner la banque d’E/S à afficher. Le tableau ci-dessous répertorie les valeurs possibles.
Arguments N/A
Exemple DISPLAY=5
Affiche les sorties 8 à 15.
Voir aussi N/A
/i
Valeur Description
0 Entrées 0 à 7 (par défaut)
1 Entrées 8 à 15
Révision 3.0
2 Entrées 16 à 23
3 Entrées 24 à 31
MANUEL DE PROGRAMMATION 67
Commandes BASIC
Valeur Description
4 Sorties 0 à 7 (non utilisé sur Trajexia)
5 Sorties 8 à 15
6 Sorties 16 à 23
7 Sorties 24 à 31
3.2.80 DPOS
/i
Type Paramètre d’axe (en lecture seule)
Syntaxe DPOS
Description
Arguments N/A
Exemple >> PRINT DPOS AXIS(0)
Voir aussi AXIS, DPOS, DEFPOS, DEMAND_EDGES, FE, MPOS, REP_DIST,
Le paramètre d’axe utilisateur, générée par les commandes de déplacement dans le contrôle servo. Lorsque le contrôleur est en boucle ouverte ( (
MPOS
) est copiée dans
La plage de la position demandée est déterminée par les paramètres d’axe REP_DIST et REP_OPTION. Il est possible d’ajuster la valeur sans effectuer de mouvement à l’aide de la commande DEFPOS ou du paramètre d’axe
OFFPOS. DPOS est remis à zéro au démarrage.
34.0000
La ligne ci-dessus renvoie la position demandée en unités utilisateur.
REP_OPTION, OFFPOS, UNITS.
DPOS
contient la position demandée exprimée en unités
SERVO=OFF
DPOS
afin de conserver une erreur suivante 0.
), la position mesurée
3.2.81 DRIVE_ALARM
/i
Type Commande d’axe
Syntaxe DRIVE_ALARM(VR)
Description
Arguments •VR
Exemple IF NOT DRIVE_ALARM(10) AXIS(2) THEN
La commande DRIVE_ALARM lit l’alarme actuelle du servodriver connecté au système Trajexia via MECHATROLINK-II. En cas d’exécution réussie, la com­mande renvoie la valeur -1 et la stocke dans l’emplacement de mémoire VR spéci­fié par le paramètre VR. Si la commande ne peut pas être exécutée, la valeur 0 est renvoyée. La commande est exécutée sur le driver de l’axe de base défini par BASE. Il est possible de modifier l’axe de base à l’aide du modificateur AXIS, comme pour l’ensemble des autres commandes et paramètres d’axe. Cette commande attend la réponse de l’axe. Son exécution peut être lente et variable dans le temps. N’utilisez pas cette commande si vous souhaitez obtenir une réponse rapide.
Valeur d’alarme stockée à l’adresse VR en cas d’exécution réussie.
PRINT "Echec de lecture de l’alarme pour le servodriver" ELSE IF VR(10) = 0 THEN
PRINT "Servodriver OK"
ELSE
PRINT "Code d’alarme servo : "; VR(10) ENDIF ENDIF
Cet exemple lit une alarme du servodriver qui pilote l’axe 2 et affiche ces informations pour l’utilisateur.
Voir aussi N/A
Révision 3.0
MANUEL DE PROGRAMMATION 68
Commandes BASIC
3.2.82 DRIVE_CLEAR
/i
Type Commande d’axe
Syntaxe DRIVE_CLEAR
Description La commande DRIVE_CLEAR efface l’état d’alarme du servodriver connecté
via le bus MECHATROLINK-II. Elle ne peut pas effacer tous les états d’alarme possibles. En effet, certaines alarmes ne peuvent être annulées qu’en mettant le système hors tension (TJ1-MC__ et servodriver) puis en le remettant sous tension.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi DRIVE_STATUS.
Attention
Assurez-vous qu’aucune console de paramétrage ou qu’aucun logiciel informatique n’est connecté au servodriver lors de l’exécu­tion de cette commande. À défaut, la tâche du programme sera mise en pause jusqu’à ce que la connexion entre l’autre périphéri­que et le servodriver soit désactivée.
Exemple DRIVE_CONTROL AXIS(2) = 256
Dans cet exemple, la sortie 0 est activée pour l’axe 2 connecté à l’aide de la carte TJ1-FL02.
Voir aussi N/A
/i
Code Description
2 Erreur suivante (valeur FE réelle en cas d’utilisation de ATYPE = 40)
8 Vitesse de retour (avec Atype = 41 Cartes = Vitesse max./40000000H, avec autres
cartes Atype = unités de référence/s)
9 Vitesse de commande (unités identiques à la vitesse de retour)
10 Vitesse cible (unités identiques à la vitesse de retour)
11 Couple (force) de référence (avec Atype = 42 Cartes = Couple max./40000000H,
avec autres cartes Atype = % du couple nominal)
14
15
Moniteur sélectionné avec Pn813.0, utile pour surveiller les moniteurs servo (Unxxx)
Moniteur sélectionné avec Pn813.1, utile pour surveiller les moniteurs servo (Unxxx)
3.2.83 DRIVE_CONTROL
/i
Type Paramètre d’axe
Syntaxe DRIVE_CONTROL
Description Lorsqu’il est appliqué à un axe contrôlé par le servodriver connecté au sys-
tème via le bus MECHATROLINK-II, ce paramètre sélectionne les données à surveiller par DRIVE_MONITOR en fonction du tableau ci-dessous. Si un servodriver est connecté pour l’axe à l’aide de la carte TJ1-FL02, ce paramè­tre définit les sorties de cette dernière. Réglez le bit 8 de ce paramètre afin
Révision 3.0
Arguments N/A
MANUEL DE PROGRAMMATION 69
d’activer la sortie 0 d’un axe. Réglez le bit 9 de ce paramètre afin d’activer la sortie 1 d’un axe. N’oubliez pas que les mêmes sorties sont utilisées par la commande HW_PSWITCH.
Commandes BASIC
3.2.84 DRIVE_INPUTS
/i
Type Paramètre d’axe
Syntaxe DRIVE_INPUTS
Description Ce paramètre surveille l’état des entrées du servodriver connecté via le bus
MECHATROLINK-II. La valeur du paramètre est rafraîchie à chaque cycle SERVO_PERIOD. Il s’agit d’un mot par bit. Reportez-vous au tableau ci-des­sous pour connaître la description des bits. Paramétrage recommandé : Pn81E=4321 et Pn511=654x.
Arguments N/A
Exemple Toutes les entrées peuvent être contrôlées dans ce mot comme suit
(servodriver Sigma-II) :
CN1-40 DRIVE_INPUTS bit 12 CN1-41 DRIVE_INPUTS bit 13 CN1-42 DRIVE_INPUTS bit 14 CN1-43 DRIVE_INPUTS bit 15 CN1-44 DRIVE_INPUTS bit 06 CN1-45 DRIVE_INPUTS bit 07 CN1-46 DRIVE_INPUTS bit 08
Exemple Toutes les entrées peuvent être contrôlées dans ce mot comme suit
(servodriver Junma) :
CN1-1 DRIVE_INPUTS bit 6 CN1-2 DRIVE_INPUTS bit 2
CN1-3 DRIVE_INPUTS bit 1 CN1-4 DRIVE_INPUTS bit 0
Voir aussi N/A
/i
Numéro de bit
0P_OT P_OT
1N_OT N_OT
Révision 3.0
2 Signal DEC (sélectionné avec Pn511.0) /DEC
3 Codeur phase A N/C
Description (Sigma-II) Description (Junma)
Numéro de bit
4 Codeur phase B N/C
5 Codeur phase C N/C
6 Signal EXT1 (sélectionné avec Pn511.1) /EXT1
7 Signal EXT2 (sélectionné avec Pn511.2) N/C
8 Signal EXT3 (sélectionné avec Pn511.3) N/C
9 Sortie de frein BRK /BK
10 Réservé E_STP
11 Réservé N /C
12 IO12 (signal d’entrée CN1 sélectionné dans
13 IO13 (signal d’entrée CN1 sélectionné dans
14 IO14 (signal d’entrée CN1 sélectionné dans
15 IO15 (signal d’entrée CN1 sélectionné dans
Description (Sigma-II) Description (Junma)
N/C
Pn81E.0)
N/C
Pn81E.1)
N/C
Pn81E.2)
N/C
Pn81E.3)
3.2.85 DRIVE_MONITOR
/i
Type Paramètre d’axe
Syntaxe DRIVE_MONITOR
Description Ce paramètre contient les données surveillées du servodriver connecté
au système via le bus MECHATROLINK-II. Les données à surveiller sont sélectionnées à l’aide de DRIVE_CONTROL et peuvent être affichées dans l’oscilloscope Trajexia Tools ou utilisées dans un programme. Les données surveillées sont rafraîchies à chaque cycle SERVO_PERIOD.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
MANUEL DE PROGRAMMATION 70
Commandes BASIC
3.2.86 DRIVE_READ
/i
Type Commande d’axe
Syntaxe DRIVE_READ(paramètre,taille,VR)
Description La commande DRIVE_READ lit le paramètre spécifié du servodriver connecté
au système Trajexia via le bus MECHATROLINK-II. En cas d’exécution réus­sie, cette commande renvoie la valeur -1 et stocke la valeur lue dans l’empla­cement de mémoire VR spécifié par le paramètre VR. Si la commande ne peut pas être exécutée, la valeur 0 est renvoyée. La commande est exécutée sur le driver de l’axe de base défini avec BASE. Il est possible de modifier l’axe à l’aide du modificateur AXIS, comme pour l’ensemble des autres com­mandes et paramètres d’axe. Remarque : cette commande attend la réponse de l’axe. Son exécution peut dès lors être lente et variable dans le temps. N’utilisez pas cette commande avec d’autres commandes nécessitant une exécution rapide. Remarque : l’exécution de DRIVE_READ désactive temporairement l’affi­chage du panneau avant du servodriver. Remarque : en cas d’exécution réussie, la commande DRIVE_READ renvoie la valeur -1. Cette valeur est également renvoyée sans paramètre si le numéro du paramètre n’existe pas ou présente une taille incorrecte.
Arguments paramètre
Numéro du paramètre à lire. Les numéros des paramètres sont au format hexadécimal. Consultez le manuel du servodriver pour connaître le for­mat des données.
taille
Pour la plupart des paramètres, la taille est de 2 octets. Toutefois, certains paramètres spéciaux peuvent avoir une longueur de 4 octets. Consultez le manuel du servodriver pour connaître la taille de chaque paramètre.
•VR
Adresse VR où le paramètre lu est stocké en cas d’exécution réussie.
Attention
Assurez-vous qu’aucune console de paramétrage ou qu’aucun logiciel informatique n’est connecté au servodriver lors de l’exécu­tion de cette commande. À défaut, la tâche du programme sera mise en pause jusqu’à ce que la connexion entre l’autre périphéri­que et le servodriver soit désactivée.
3.2.87 DRIVE_RESET
/i
Type Commande d’axe
Syntaxe DRIVE_RESET
Description La commande DRIVE_RESET réinitialise le servodriver connecté via le bus
MECHATROLINK-II.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
Attention
Assurez-vous qu’aucune console de paramétrage ou qu’aucun logiciel informatique n’est connecté au servodriver lors de l’exécu­tion de cette commande. À défaut, la tâche du programme sera mise en pause jusqu’à ce que la connexion entre l’autre périphéri­que et le servodriver soit désactivée.
Exemple IF DRIVE_READ($100,2,1) THEN
PRINT "Gain de boucle de vitesse : ";VR(1) ELSE
Révision 3.0
Voir aussi DRIVE_WRITE, HEX, $ (ENTRÉE HEXADÉCIMALE).
PRINT "Impossible de lire le gain de boucle de vitesse" ENDIF
MANUEL DE PROGRAMMATION 71
Commandes BASIC
3.2.88 DRIVE_STATUS
/i
Type Paramètre d’axe (en lecture seule)
Syntaxe DRIVE_STATUS
Description Pour les axes MECHATROLINK-II, ce paramètre est réglé à partir du champ
STATUS de la trame de communication MECHATROLINK-II et est rafraîchi à chaque cycle servo. Ces bits s’affichent dans la fenêtre de configuration des drivers intelligents de Trajexia Tools. Ils peuvent être utilisés dans des programmes. Le tableau ci-dessous décrit chaque bit. (Remarque : seuls les bits correspondant aux axes MECHATROLINK-II sont répertoriés.) Pour obtenir l’explication détaillée de ces bits d’état, reportez-vous au manuel MECHATROLINK-II. Pour les axes flexibles, ce paramètre stocke l’état des entrées d’enregistre­ment et auxiliaires, ainsi que la sélection d’enregistrement. Le second tableau ci-après décrit chaque bit. (Remarque : seuls les bits correspondant aux axes flexibles sont répertoriés.)
Arguments N/A
Exemple PRINT DRIVE_STATUS AXIS(4)
Cette commande affiche la valeur actuelle de la commande DRIVE_STATUS pour l’axe (4).
Exemple BASE(3)
ATYPE = 44 IF (DRIVE_STATUS AND 32)= 32 THEN PRINT "Entree REG 0 activee pour axe(3)"
ENDIF
Bit Description (MECHATROLINK-II)
5 Verrouillage machine
6 Position initiale
7 En position/vitesse
8 Sortie terminée
9 Limite de couple
10 Verrouillage terminé
11 Dans la plage/limite de vitesse
/i
Bit Description (axe flexible)
0MARK
1 MARKB
2 REG 0 - Valeur actuelle sélectionnée
3 REG 1 - Valeur actuelle sélectionnée
4 AUX IN - Valeur actuelle
5 REG 0 - Valeur actuelle
6 REG 1 - Valeur actuelle
Voir aussi AXIS, MARK, MARKB, REGIST.
/i
Bit Description (MECHATROLINK-II)
0 Alarme
1 Avertissement
2Prêt
Révision 3.0
3 Servo activé
4 Sous tension
MANUEL DE PROGRAMMATION 72
Commandes BASIC
3.2.89 DRIVE_WRITE
/i
Type Commande d’axe
Syntaxe DRIVE_WRITE(paramètre, taille, valeur [,mode])
Description
Arguments paramètre
La commande du servodriver connecté via le bus MECHATROLINK-II. En cas d’exécution réus­sie, cette commande renvoie la valeur -1. Si la commande ne peut pas être exécu­tée, la valeur 0 est renvoyée. La commande est exécutée sur le driver de l’axe de base défini avec
AXIS
, comme pour l’ensemble des autres commandes et paramètres d’axe. Pour certains paramètres, le driver doit être mis hors tension puis remis sous tension. La commande Remarque : cette commande attend la réponse de l’axe. Son exécution peut dès lors être lente et variable dans le temps. N’utilisez pas cette commande avec d’autres commandes nécessitant une exécution rapide. Remarque : l’exécution de DRIVE_WRITE désactive temporairement l’affi­chage du panneau avant du servodriver. Remarque : en cas d’exécution réussie, la commande DRIVE_WRITE renvoie la valeur -1. Cette valeur est également renvoyée sans paramètre si le numéro du paramètre n’existe pas ou présente une taille incorrecte.
Numéro du paramètre dans lequel l’écriture doit être effectuée. Les numéros des paramètres sont au format hexadécimal. Consultez le manuel du servodriver pour connaître le format des données.
taille
Pour la plupart des paramètres, la taille est de 2 octets. Toutefois, certains paramètres spéciaux peuvent avoir une longueur de 4 octets. Consultez le manuel du servodriver pour connaître la taille de chaque paramètre.
valeur
Valeur à écrire dans le paramètre du driver.
•mode
Mode d’écriture. Valeurs possibles : 0 (ou ignoré) - écriture et stockage en mémoire RAM ; 1 - écriture et stockage en mémoire EPROM.
DRIVE_WRITE
BASE
. Il est possible de modifier l’axe à l’aide du modificateur
DRIVE_RESET
effectue une écriture dans le paramètre spécifié
peut être utilisée à cette fin.
Voir aussi DRIVE_READ, DRIVE_RESET, $ (ENTRÉE HEXADÉCIMALE)
Attention
Assurez-vous qu’aucune console de paramétrage ou qu’aucun logiciel informatique n’est connecté au servodriver lors de l’exécu­tion de cette commande. À défaut, la tâche du programme sera mise en pause jusqu’à ce que la connexion entre l’autre périphéri­que et le servodriver soit désactivée.
3.2.90 EDIT
/i
Type Commande de programme
Syntaxe EDIT [ numéro_ligne ]
ED [ numéro_ligne ]
Description La commande EDIT démarre l’éditeur intégré à l’écran qui permet de modifier
un programme du contrôleur à l’aide d’un terminal VT100. Le programme actuellement sélectionné peut être modifié. Les commandes de l’éditeur sont les suivantes : Cette commande est mise en œuvre pour un terminal hors connexion (VT100). Dans Trajexia Tools, l’utilisateur peut sélectionner la commande dans le menu Program (Programme).
Quit Editor (Quitter l’éditeur) : [CTRL] K et D
Delete Line (Supprimer la ligne) : [CTRL] Y
Arguments numéro_ligne
Numéro de la ligne à laquelle la modification doit commencer.
Exemple Pas d’exemple.
Voir aussi SELECT.
3.2.91 ELSE
Exemple IF DRIVE_WRITE($100,2,90) THEN
Révision 3.0
PRINT "Nouveau gain de boucle de vitesse : 90"
ELSE
PRINT "Impossible d’ecrire le gain de boucle de vitesse en memoire RAM"
ENDIF
Voir IF..THEN..ELSE..ENDIF.
3.2.92 ELSEIF
Voir IF..THEN..ELSE..ENDIF.
MANUEL DE PROGRAMMATION 73
Commandes BASIC
3.2.93 ENCODER
/i
Type Paramètre d’axe (en lecture seule)
Syntaxe ENCODER
Description Le paramètre d’axe ENCODER contient une copie brute du codeur.
Le paramètre d’axe MPOS contient automatiquement la position mesurée calculée à partir de la valeur ENCODER. Des dépassements et des décala­ges sont ainsi possibles.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXIS, MPOS.
3.2.94 ENCODER_BITS
/i
Type Paramètre d’axe
Syntaxe ENCODER_BITS = valeur
Description Ce paramètre d’axe configure l’interface pour le nombre de bits de codeur
pour les axes flexibles de codeur absolu SSI et EnDat. Ce paramètre ne con­cerne que les axes dont la valeur ATYPE correspond à 47 ou 48. Lorsque ce paramètre est appliqué à l’axe flexible de codeur absolu EnDat, les bits 0 à 7 doivent être définis sur le nombre total de bits de codeur. Les bits 8 à 14 doivent être définis sur le nombre de bits multitours à utiliser. Lorsque ce paramètre est appliqué à l’axe flexible de codeur absolu SSI, les bits 0 à 5 doivent être définis sur le nombre total de bits de codeur. Le bit 6 doit correspondre à 1 pour le fonctionnement binaire et à 0 pour le code Gray. Remarque : en cas d’utilisation d’un axe flexible de codeur absolu, il est essen­tiel de définir ce paramètre pour l’axe avant de régler le paramètre ATYPE.
Arguments N/A
Exemple ENCODER_BITS = 25 + (256 * 12)
ATYPE = 47
Révision 3.0
Dans cet exemple, un codeur EnDat 25 bits est utilisé, 12 bits servant pour la valeur multitours et 13 bits par rotation.
Exemple ENCODER_BITS = 12 + (64 * 1)
ATYPE = 48
Dans cet exemple, un codeur SSI 12 bits est utilisé (4096 positions par rotation), avec le type de sortie binaire.
Voir aussi AXIS.
3.2.95 ENCODER_CONTROL
/i
Type Paramètre d’axe
Syntaxe ENCODER_CONTROL = valeur
Description Le paramètre ENCODER_CONTROL ne concerne que l’axe flexible de
codeur absolu EnDat avec la valeur ATYPE 47. Il détermine le mode selon lequel le codeur EnDat renvoie sa position. Le codeur peut être réglé pour renvoyer sa position de manière cyclique ou pour fonctionner en mode de lecture/écriture de paramètre. Après l’initialisation, le paramétrage par défaut correspond au mode d’envoi de position cyclique. Pour plus d’informations, consultez les caractéristiques de l’interface du codeur absolu EnDat.
Arguments N/A
Exemple ENCODER_CONTROL AXIS(1) = 0
Cette commande définit le mode d’envoi de position cyclique.
Exemple ENCODER_CONTROL AXIS(1) = 1
Cette commande définit le mode de lecture/écriture de paramètre.
Voir aussi AXIS, ENCODER, ENCODER_BITS.
MANUEL DE PROGRAMMATION 74
Commandes BASIC
3.2.96 ENCODER_ID
/i
Type Paramètre d’axe (en lecture seule)
Syntaxe ENCODER_ID
Description Ce paramètre renvoie la valeur d’ID d’un codeur absolu pour l’axe.
Ce paramètre ne concerne que l’axe flexible Tamagawa absolu dont la valeur ATYPE correspond à 46. Il renvoie le paramètre ENID du codeur, qui a la valeur 17. Pour plus d’informa­tions, consultez les caractéristiques de l’interface du codeur absolu Tamagawa. S’il est appliqué à un axe dont la valeur ATYPE est différente de 46, ce para­mètre renvoie la valeur 0.
Arguments N/A
Exemple >>PRINT ENCODER_ID AXIS (1)
17.0000
Cette commande affiche la valeur d’ID de codeur absolu pour l’axe 1.
Voir aussi AXIS, ENCODER, ENCODER_BITS.
3.2.97 ENCODER_RATIO
/i
Type Paramètre d’axe
Syntaxe ENCODER_RATIO(dénominateur,numérateur)
Description Permet de mettre à l’échelle le compteur de codeur entrant en fonction
d’un nombre non entier, à l’aide de l’équation suivante :
MPOS = (numérateur)/(dénominateur) x entrée fronts de codeur Contrairement au paramètre UNITS, ENCODER_RATIO influence MOVE­CIRC et CAMBOX.
Remarque : il est recommandé de ne pas définir de taux élevés car ils entraî­nent une perte de résolution ou réduisent la fluidité du mouvement. Le compteur de codeur physique réel constitue la résolution de base de l’axe et l’utilisation de cette commande risque de diminuer le positionnement précis
Révision 3.0
par le contrôleur d’axes. Remarque : ENCODER_RATIO ne remplace pas UNITS. Utilisez ENCODER_RATIO qu’en cas d’absolue nécessité. Pour toutes les autres opérations de mise à l’échelle d’axe, utilisez UNITS.
Arguments dénominateur
Nombre compris entre 0 et 16777215 qui sert à définir le dénominateur dans l’équation ci-dessus.
numérateur
Nombre compris entre 0 et 16777215 qui sert à définir le numérateur dans l’équation ci-dessus.
Exemple ENCODER_RATIO(8192,7200)
UNITS=20
Une table rotative comporte un servomoteur directement connecté à son cen­tre de rotation. Un codeur est placé à l’arrière du servomoteur et renvoie une valeur de 8 192 unités par tour. L’application exige que la table soit étalonnée en degrés, de sorte qu’un degré corresponde à un nombre entier d’unités.
Voir aussi N/A
3.2.98 ENCODER_READ
/i
Type Commande d’axe
Syntaxe ENCODER_READ(adresse)
Description La commande ENCODER_READ ne concerne que l’axe flexible de codeur
absolu EnDat avec la valeur ATYPE 47. Elle renvoie un paramètre de codeur 16 bits stocké à l’adresse indiquée. Les bits 8 à 15 de l’adresse représentent les paramètres de champ MRS EnDat et les bits 0 à 7 constituent le décalage dans le bloc MRS EnDat. En cas d’erreur CRC, cette commande renvoie la valeur -1. Pour plus d’informations, consultez les caractéristiques de l’inter­face du codeur absolu EnDat.
Arguments adresse
Spécifie le champ MRS à lire.
Exemple VR(100) = ENCODER_READ($A10D) AXIS(7)
Cette commande lit le nombre de bits de codeur et place cette valeur dans l’emplacement de mémoire VR(10).
Voir aussi AXIS, ENCODER, ENCODER_BITS.
MANUEL DE PROGRAMMATION 75
Commandes BASIC
3.2.99 ENCODER_STATUS
/i
Type Paramètre d’axe (en lecture seule)
Syntaxe ENCODER_STATUS
Description Ce paramètre renvoie l’état du codeur absolu Tamagawa.
Ce paramètre ne concerne que l’axe flexible de codeur absolu Tamagawa avec la valeur ATYPE 46. Il renvoie le champ d’état SF et le champ d’erreur de codeur ALMC. Le champ SF contient un bit de 0 à 7, tandis que le champ ALMC contient un bit de 8 à 15. Pour plus d’informations, consultez les carac­téristiques de l’interface du codeur absolu Tamagawa. S’il est appliqué à un axe dont la valeur ATYPE est différente de 46, ce para­mètre renvoie la valeur 0.
Arguments N/A
Exemple PRINT (ENCODER_STATUS AXIS (1) AND 255)
Cette commande affiche le champ SF du codeur absolu Tamagawa pour l’axe 1.
Voir aussi AXIS, ENCODER, ENCODER_BITS.
3.2.100 ENCODER_TURNS
/i
Type Paramètre d’axe (en lecture seule)
Syntaxe ENCODER_TURNS
Description Le paramètre ENCODER_TURNS renvoie le nombre de multitours du codeur.
Ce paramètre ne concerne que l’axe flexible de codeur absolu Tamagawa avec la valeur ATYPE 46 et l’axe flexible de codeur absolu EnDat avec la valeur ATYPE 47. Les données multitours ne sont pas automatiquement appliquées au paramètre d’axe
MPOS
après l’initialisation. En effet, le programmeur de l’application doit les
appliquer à partir du programme à l’aide de la commande S’il est appliqué à un axe dont la valeur ATYPE est différente de 46 ou 47, ce paramètre renvoie la valeur 0.
OFFPOS
ou
DEFPOS
3.2.101 ENCODER_WRITE
/i
Type Commande d’axe
Syntaxe ENCODER_WRITE(adresse, valeur)
Description La commande ENCODER_WRITE ne concerne que l’axe flexible de codeur
absolu EnDat avec la valeur ATYPE 47. Elle effectue une écriture dans le paramètre de codeur spécifié par l’adresse. Les bits 8 à 15 de l’adresse représentent les paramètres de champ MRS EnDat et les bits 0 à 7 consti­tuent le décalage dans le bloc MRS EnDat. En cas d’erreur CRC, cette com­mande renvoie la valeur -1. L’écriture sur l’adresse 0 exécute une fonction de réinitialisation du codeur. Pour plus d’informations, consultez les caracté­ristiques de l’interface du codeur absolu EnDat. Pour écrire correctement un paramètre de codeur à l’aide de cette commande, le paramètre ENCODER_WRITE doit être défini sur la valeur 1, qui correspond au mode de lecture/écriture de paramètre du codeur.
Arguments adresse
Spécifie le champ MRS dans lequel l’écriture doit être effectuée.
valeur
Expression BASIC.
Exemple Pas d’exemple.
Voir aussi AXIS, ENCODER, ENCODER_BITS, ENCODER_CONTROL.
3.2.102 ENDIF
Voir IF..THEN..ELSE..ENDIF.
.
Arguments N/A
Révision 3.0
Exemple PRINT ENCODER_TURNS AXIS (1)
Cette commande affiche le nombre de multitours du codeur absolu pour l’axe 1.
Voir aussi AXIS, ENCODER, ENCODER_BITS.
MANUEL DE PROGRAMMATION 76
Commandes BASIC
3.2.103 ENDMOVE
/i
Type Paramètre d’axe
Syntaxe ENDMOVE
Description Le paramètre d’axe ENDMOVE contient la position de la fin du mouvement
actuel, exprimée en unités utilisateur. Si le paramètre d’axe SERVO est activé, le paramètre ENDMOVE peut être écrit pour produire un changement d’étape de la position demandée (DPOS). Remarque : la position mesurée n’étant pas modifiée à l’origine, la limite d’erreur suivante (FE_LIMIT) doit être prise en compte. Si la variation de la position demandée est trop importante, la limite est dépassée.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXIS, DPOS, FE_LIMIT, UNITS.
3.2.104 EPROM
/i
Type Commande de programme
Syntaxe EPROM
Description
Arguments N/A
Exemple Pas d’exemple.
Voir aussi POWER_UP, RUNTYPE.
La commande sauvegardée par batterie du TJ1-MC__, dans la mémoire flash EPROM. Le paramètre système POWER_UP détermine si les programmes stockés dans la mémoire flash EPROM sont copiés dans la mémoire RAM au démarrage. Remarque : Dans Trajexia Tools, cette commande est disponible sous la forme d’un bouton dans le panneau de commande. En outre, des écrans con­textuels invitent à écrire les données de programme dans la mémoire flash.
EPROM
stocke les programmes BASIC de la mémoire RAM
3.2.105 ERROR_AXIS
/i
Type Paramètre système (en lecture seule)
Syntaxe ERROR_AXIS
Description Le paramètre d’axe ERROR_AXIS contient le numéro de l’axe qui a entraîné
l’erreur de mouvement. Une erreur de mouvement se produit lorsque l’état AXISSTATUS d’un axe correspond au paramètre ERRORMASK. Dans ce cas, le commutateur d’activation (WDOG) se désactive, le paramètre MOTION_ERROR prend la valeur 1 et le paramètre ERROR_AXIS contient le numéro du premier axe sur lequel l’erreur s’est produite.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXISSTATUS, ERRORMASK, MOTION_ERROR, WDOG.
3.2.106 ERROR_LINE
/i
Type Paramètre de tâche (en lecture seule)
Syntaxe ERROR_LINE
Description Le paramètre ERROR_LINE contient le numéro de la ligne qui a entraîné
la dernière erreur d’exécution BASIC dans la tâche de programme. Cette valeur n’est valide que si le paramètre BASICERROR a la valeur TRUE. Chaque tâche est associée à un paramètre Utilisez le modificateur
PROC
Si
Arguments N/A
Exemple >> PRINT ERROR_LINE PROC(4)
23.0000
Voir aussi BASICERROR, PROC, RUN_ERROR.
n’est pas spécifié, c’est la tâche actuelle qui est prise en compte.
PROC
pour accéder au paramètre d’une tâche donnée.
ERROR_LINE
spécifique.
Révision 3.0
MANUEL DE PROGRAMMATION 77
Commandes BASIC
3.2.107 ERRORMASK
/i
Type Paramètre d’axe
Syntaxe ERRORMASK
Description Le paramètre d’axe ERRORMASK contient une valeur de masque définie bit
par bit par AND avec le paramètre d’axe AXISSTATUS à chaque cycle servo afin de détecter la présence d’une erreur de mouvement. Lorsqu’une erreur de mouvement se produit, le commutateur d’activation (WDOG) se désactive, le paramètre MOTION_ERROR prend la valeur 1 et le paramètre ERROR_AXIS contient le numéro du premier axe sur lequel l’erreur s’est produite. Consultez le paramètre AXISVALUES pour les allocations de bit d’état. La valeur par défaut du paramètre ERRORMASK est 268.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXIS, AXISSTATUS, MOTION_ERROR, WDOG.
Attention
L’utilisateur est chargé de définir les cas dans lesquels une erreur de mouvement est générée. Pour une utilisation en toute sécurité, il est fortement recommandé de générer une erreur de mouve­ment lorsque l’erreur suivante dépasse sa limite dans tous les cas. Pour ce faire, réglez le bit 8 du paramètre
ERRORMASK.
3.2.108 ETHERNET
/i
Type Commande système
Syntaxe ETHERNET(fonction, numéro_carte, paramètre [,valeurs])
Description La commande ETHERNET sert à lire et à définir certaines fonctions de com-
munication Ethernet. Elle doit être entrée dans la ligne de commande lorsque Trajexia Tools est en mode déconnecté via le port série 0. Remarque : pour activer les nouveaux paramètres, vous devez effectuer un cycle de mise hors/sous tension du système Trajexia.
Arguments •fonction
0 = lecture, 1 = écriture.
numéro_carte
-1.
paramètre
0 = adresse IP ; 2 = masque de sous-réseau ; 3 = adresse MAC ; 8 = passerelle ; 11 = cache ARP (en lecture seule).
valeurs
Paramètre obligatoire pour une écriture.
Exemple ETHERNET(1,-1,0,192,200,185,2)
Règle l’adresse IP du système Trajexia sur 192.200.185.002.
Voir aussi N/A
Révision 3.0
MANUEL DE PROGRAMMATION 78
Commandes BASIC
3.2.109 EX
/i
Type Commande système
Syntaxe EX[(option)]
Description Réinitialise le contrôleur comme s’il s’agissait d’une mise sous tension.
La commande EX permet d’effectuer deux types de réinitialisation. EX sans argument ou EX(0) effectue une réinitialisation logicielle du contrôleur. EX(1) effectue une réinitialisation matérielle du contrôleur.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
3.2.110 EXP
/i
Type Fonction mathématique
Syntaxe EXP(expression)
Description La fonction EXP renvoie la valeur exponentielle d’une expression.
Arguments expression
Expression BASIC valide.
Exemple >> print exp(1.0)
2.7183
Voir aussi N/A
3.2.111 FALSE
/i
Type Constante (en lecture seule)
Syntaxe FALSE
Description La constante FALSE renvoie la valeur numérique 0.
Arguments N/A
Exemple test:
res = IN(0) OR IN(2) IF res = FALSE THEN PRINT "Entrees desactivees" ENDIF
Voir aussi N/A
3.2.112 FAST_JOG
/i
Type Paramètre d’axe
Syntaxe FAST_JOG
Description Le paramètre d’axe FAST_JOG contient le numéro de l’entrée à utiliser
comme entrée de jog rapide. Ce numéro est compris entre 0 et 7. Par défaut, le paramètre est réglé sur -1 (aucune entrée sélectionnée). L’entrée de jog rapide détermine la vitesse pas à pas entre deux vitesses. Si l’entrée de jog rapide est définie, la vitesse fournie par le paramètre d’axe SPEED est utilisée comme vitesse pas à pas. Si l’entrée n’est pas définie, c’est la vitesse fournie par le paramètre d’axe JOGSPEED qui est utilisée. Remarque : cette entrée est une entrée faible active.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXIS, FWD_JOG, JOGSPEED, REV_JOG, SPEED.
Révision 3.0
MANUEL DE PROGRAMMATION 79
Commandes BASIC
3.2.113 FASTDEC
/i
Type Paramètre d’axe
Syntaxe FASTDEC
Description La valeur par défaut de ce paramètre est zéro. Si une valeur non nulle
est définie pour le paramètre FASTDEC, l’axe se dirige vers zéro à ce taux de décélération lorsqu’un fin de course ou une position d’axe est atteinte.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
3.2.114 FE
/i
Type Paramètre d’axe (en lecture seule)
Syntaxe FE
Description Le paramètre d’axe FE contient l’erreur de position exprimée en unités utilisa-
teur. Cette erreur est calculée en soustrayant la position mesurée (paramètre d’axe MPOS) de la position demandée (paramètre d’axe DPOS). La valeur de l’erreur suivante peut être consultée à l’aide des paramètres d’axe FE_LIMIT et FE_RANGE.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXIS, DPOS, FE_LIMIT, FE_RANGE, MPOS, UNITS.
3.2.115 FE_LATCH
/i
Type Paramètre d’axe (en lecture seule)
Syntaxe FE_LATCH
Description Contient la valeur FE initiale qui a entraîné l’axe à placer le contrôleur à l’état
MOTION_ERROR. Cette valeur n’est définie que si FE dépasse FE_LIMIT et si le paramètre SERVO est défini sur 0. FE_LATCH est remis à 0 lorsque le paramètre SERVO de l’axe reprend la valeur 1.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
3.2.116 FE_LIMIT
/i
Type Paramètre d’axe
Syntaxe FE_LIMIT
Description Le paramètre d’axe FE_LIMIT contient la limite maximale d’erreur suivante
exprimée en unités utilisateur. Lorsque cette limite est atteinte, le bit 8 du paramètre AXISSTATUS de l’axe est activé. Si le paramètre ERRORMASK est correctement défini, une erreur de mouvement est générée. Cette limite fait office de protection contre les états d’erreur, comme un verrouillage mécanique, une perte de retour du codeur, etc.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXIS, AXISSTATUS, ERRORMASK, FE, FE_RANGE, UNITS.
Révision 3.0
MANUEL DE PROGRAMMATION 80
Commandes BASIC
3.2.117 FE_LIMIT_MODE
/i
Type Paramètre d’axe
Syntaxe FE_LIMIT_MODE=valeur
Description Lorsque ce paramètre est défini sur 0, l’axe entraîne directement une
erreur MOTION_ERROR lorsque FE dépasse la valeur FE_LIMIT. Si FE_LIMIT_MODE a la valeur 1, l’axe ne génère une erreur MOTION_ERROR que si FE dépasse la valeur FE_LIMIT pendant deux cycles servo consécutifs. Autrement dit, le paramètre est ignoré si la valeur FE_LIMIT est dépassée dans un seul cycle servo. La valeur par défaut du paramètre FE_LIMIT_MODE est 0.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
3.2.118 FE_RANGE
/i
Type Paramètre d’axe
Syntaxe FE_RANGE
Description Le paramètre d’axe FE_RANGE contient la limite de la plage d’avertissement
d’erreur suivante exprimée en unités utilisateur. Si l’erreur suivante dépasse cette valeur pour un axe servo, le bit 1 du paramètre d’axe AXISSTATUS s’active. Cette plage fait office de première indication des états d’erreur de l’applica­tion (à comparer à FE_LIMIT).
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXIS, AXISSTATUS, ERRORMASK, FE, UNITS.
3.2.119 FHOLD_IN
/i
Type Paramètre d’axe
Syntaxe FHOLD_IN
FH_IN
Description
Sigma II Entrée 28 : CN1-40
Sigma III Entrée 28 : CN1-13
Junma Entrée 26 : CN1-2
Le paramètre d’axe entrée de maintien d’alimentation. La plage d’entrées valide est comprise entre 0 et 31. Les valeurs 0 à 15 correspondent aux entrées physiques du connecteur d’E/S du TJ1-MC__. Elles sont communes à tous les axes. Les valeurs 16 à 27 correspondent aux entrées logicielles pouvant être librement utilisées dans des programmes et des commandes tels que IN et OP. Il s’agit également d’entrées communes à tous les axes. Les valeurs 28 à 31 sont directement mappées sur les entrées de driver présentes sur le connecteur CN1. Elles sont uniques à cha­que axe. Le mappage entre les entrées de driver et les entrées 28 à 31 varie en fonction de la valeur du paramètre de servodriver Pn81E. La valeur recomman­dée du paramètre Pn81E est 0x4321, avec le mappage ci-dessous. Par défaut, le paramètre est réglé sur la valeur -1 (aucune entrée sélectionnée). Remarque : cette entrée est une entrée faible active.
Entrée 29 : CN1-41
Entrée 30 : CN1-42
Entrée 31 : CN1-43
Entrée 29 : CN1-7
Entrée 30 : CN1-8
Entrée 31 : CN1-9
Entrée 27 : CN1-1
Pour plus d’informations sur le réglage du paramètre de driver Pn81E, consul­tez le manuel correspondant au servodriver. Par défaut, le paramètre est réglé sur la valeur -1 (aucune entrée sélectionnée).
FHOLD_IN
contient le numéro de l’entrée à utiliser comme
Révision 3.0
MANUEL DE PROGRAMMATION 81
Commandes BASIC
Si un numéro d’entrée est défini et que l’entrée de maintien d’alimentation s’active, la vitesse de mouvement de l’axe prend la valeur définie dans le paramètre d’axe FHSPEED. Le mouvement actuel n’est pas annulé. En outre, le bit 7 du paramètre AXISSTATUS est activé. Lorsque l’entrée est réinitialisée, le mouvement en cours lors de l’activation de l’entrée reprend à la vitesse programmée. Remarque : cette fonction n’est valable que pour des mouvements à vitesse contrôlée. Les mouvements dont la vitesse n’est pas contrôlée (CAMBOX, CONNECT et MOVELINK) ne sont pas concernés.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXIS, AXISSTATUS, UNITS.
3.2.120 FHSPEED
/i
Type Paramètre d’axe
Syntaxe FHSPEED
Description Le paramètre d’axe FHSPEED contient la vitesse de maintien d’alimentation.
Il peut être défini sur une valeur exprimée en unités/s utilisateur à laquelle l’axe se déplace lorsque l’entrée de maintien d’alimentation s’active. Le mou­vement actuel n’est pas annulé. La valeur du paramètre FHSPEED doit être positive ou égale à zéro. Sa valeur par défaut est 0. Remarque : cette fonction n’est valable que pour des mouvements à vitesse contrôlée. Les mouvements dont la vitesse n’est pas contrôlée (CAMBOX, CONNECT et MOVELINK) ne sont pas concernés.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXIS, AXISSTATUS, FHOLD_IN, UNITS.
3.2.121 FINS_COMMS
/i
Type Commande de communication
Syntaxe FINS_COMMS(type, réseau, nœud, carte, zone_distante,
décalage_distant, longueur, zone_locale, décalage_local, temporisation [, IP1, IP2, IP3, IP4])
Description
FINS (Factory Interface Network Service) est un protocole de communication propriétaire d’Omron. Un sous-ensemble de ce protocole a été mis en œuvre dans le système Trajexia. Le protocole FINS a été mis en œuvre afin de permet­tre des communications transparentes avec les autres périphériques (API, IHM, etc.) et logiciels d’Omron (CX-Drive, CX-Server, etc.). Pour plus d’informations sur le protocole de communication FINS, consultez la section 4.2.4, ainsi que le Manuel de référence des commandes de communication (réf. cat. W342-E1), sections 3 et 5. Intégrant des fonctions client FINS, le système Trajexia peut initier les com­munications FINS avec des périphériques esclaves FINS à l’aide de la com­mande FINS_COMMS. Les commandes FINS 0101 (lecture de mémoire) et FINS 0102 (écriture de la mémoire) sont mises en œuvre. Grâce à FINS 0101, la mémoire peut être lue à partir des autres périphériques disposant de la fonction de serveur FINS. FINS 0102 peut servir à écrire des données sur les périphériques disposant de la fonction de serveur FINS. Cette commande renvoie l’une des valeurs ci-dessous en fonction du résultat de l’exécution :
-1 : Exécution de la commande réussie. 0 : Échec de la commande. 1 : Requête non envoyée car le client ou le protocole FINS est occupé. 2 : Un ou plusieurs paramètres de requête ne sont pas valides. 3 : Zone de mémoire source non valide. 4 : Requête envoyée, mais le serveur distant n’a pas envoyé de réponse
dans le délai de temporisation.
5 : Code de réponse d’erreur envoyé par le serveur distant.
Révision 3.0
MANUEL DE PROGRAMMATION 82
Commandes BASIC
Arguments •type
Type de commande FINS. La valeur 0 indique FINS 0101 (lecture de la mémoire à partir du serveur FINS distant). La valeur 1 indique FINS 0102 (écriture de la mémoire sur le serveur distant).
réseau
Réseau de destination. Pour plus d’informations, consultez le Manuel de référence des commandes de communication (réf. cat. W342-E1), section 3.
•nœud
Nœud du serveur FINS de destination. Pour plus d’informations, consultez le Manuel de référence des commandes de communication (réf. cat. W342-E1), section 3.
carte
Numéro de carte du serveur FINS de destination. Pour plus d’informa­tions, consultez le Manuel de référence des commandes de communica­tion (réf. cat. W342-E1), section 3.
zone_distante
Zone de mémoire accédée sur le serveur FINS de destination. Plage : 128 à 255. Cette zone doit correspondre à l’une des valeurs suivantes si la destination est un autre système Trajexia : 0xB0 (valeur VR entière), 0x82 (valeur TABLE entière) ou 0xC2 (valeur TABLE flottante).
décalage_distant
Décalage de mémoire sur le serveur FINS de destination. Plage : 0 à 65535. Cette plage est restreinte aux adresses TABLE ou VR maximum si la destination est un autre système Trajexia.
longueur
Nombre d’éléments à transférer. La plage varie en fonction de la longueur de trame FINS et des fonctions du client et du serveur distant. Pour un sys­tème Trajexia, la plage est comprise entre 1 et 700 valeurs entières ou entre 1 et 350 valeurs à virgule flottante.
zone_locale
Zone de mémoire (source) locale. Cette zone doit correspondre à l’une des valeurs suivantes si la destination est un autre système Trajexia : 0x00 (valeur VR entière), 0x01 (valeur TABLE entière) ou 0x02 (valeur TABLE flottante).
décalage_local
Décalage de la première valeur dans la zone de mémoire (source) locale. La plage varie en fonction de la taille de tableau VR ou TABLE et de la valeur de l’argument de longueur.
temporisation
Temps d’attente (en millisecondes) d’une réponse envoyée par le ser­veur FINS de destination avant l’expiration du délai imparti.
IP1, IP2, IP3, IP4
Paramètres facultatifs qui déterminent l’adresse IP du serveur (de desti­nation) distant. Ces arguments doivent être utilisés si le système Trajexia et le serveur FINS de destination ne sont pas situés sur le même réseau.
Exemple Un système Trajexia et un API OMRON CJ1 muni d’une carte Ethernet
CJ1W-ETN11 sont connectés au même réseau. L’adresse IP du système Trajexia est 192.168.0.5, tandis que celle de la carte Ethernet de l’API est 192.168.0.12. Lorsque vous exécutez la commande FINS_COMMS(0,0,12,0,$82, 1000,20,0,500,5000,192,168,0,12), 20 mots (longueur=20) de la zone mémoire DM de l’API (zone_distante=$82) sont lus, en commençant par DM1000 (décalage_distant=1000), et sont écrits dans la mémoire VR Trajexia au format entier (zone_locale=0), en commençant par VR(500) (décalage_local=500). Ainsi, les valeurs de la plage de mémoire API DM1000 à DM1019 sont placées dans la mémoire Trajexia VR(500) à VR(519). Le délai de temporisation est défini sur 5 secondes. Lorsque vous exécutez la commande FINS_COMMS(1,0,12,0,$80, 50,10,0,300,3000,192,168,0,12), 10 mots (longueur=10) de la mémoire VR de Trajexia, sous la forme de nombres entiers (zone_locale=0), en commen­çant par VR(300) (décalage_local=300) sont écrits dans la zone CIO de l’API (zone_distante=$80), en commençant par CIO50 (décalage_distant=50). Ainsi, les valeurs de la plage de mémoire Trajexia VR(300) à VR(309) sont placés dans la mémoire CIO50 à CIO59 de l’API. Le délai de temporisation est défini sur 3 secondes.
Voir aussi N/A
Révision 3.0
MANUEL DE PROGRAMMATION 83
Commandes BASIC
3.2.122 FLAG
/i
Type Commande système
Syntaxe FLAG(numéro_drapeau [,valeur])
Description La commande FLAG sert à définir et à lire une banque de 32 bits de drapeau.
Elle peut être utilisée avec un ou deux paramètres. Si un paramètre est spéci­fié, l’état du bit de drapeau donné est renvoyé. Si deux paramètres sont spé­cifiés, le drapeau donné est défini sur la valeur du second paramètre. La commande FLAG assure la compatibilité avec les contrôleurs antérieurs. Son utilisation n’est pas recommandée pour les nouveaux programmes.
Arguments numéro_drapeau
Numéro de drapeau, dont la valeur est comprise entre 0 et 31.
valeur
Si cet attribut est spécifié, il s’agit de l’état à définir pour le drapeau donné (ON ou OFF). Cette valeur peut également correspondre à 1 ou à 0.
Exemple FLAG(27,ON)
Active le bit de drapeau 27.
Voir aussi N/A
3.2.123 FLAGS
/i
Type Commande système
Syntaxe FLAGS([valeur])
Description Lit et définit des drapeaux (FLAGS) en tant que bloc. La commande FLAGS
assure la compatibilité avec les contrôleurs antérieurs. Son utilisation n’est pas recommandée pour les nouveaux programmes. Les 32 bits de drapeau peuvent être lus avec FLAGS et définis avec FLAGS(valeur).
Arguments valeur
Équivalent décimal du schéma de bit en fonction duquel les drapeaux doivent être définis. Consultez le tableau ci-dessous.
Exemple FLAGS(146) ' 2 + 16 + 128
Active les drapeaux 1, 4 et 7 et désactive tous les autres.
Exemple IF (FLAGS and 8) <>0 then GOSUB somewhere
Teste si le drapeau 3 est activé.
Voir aussi N/A
/i
Numéro de bit Valeur décimale
01
12
24
38
416
532
664
7128
Révision 3.0
MANUEL DE PROGRAMMATION 84
Commandes BASIC
3.2.124 FOR..TO..STEP..NEXT
/i
Type Commande de contrôle de programme
Syntaxe FOR variable = début TO fin [STEP incrément]
commandes NEXT variable
Description La boucle FOR ... NEXT permet de répéter le segment de programme entre
les instructions FOR et NEXT un certain nombre de fois. Lors de l’activation de cette boucle, la variable est initialisée sur la valeur de début et le bloc de commandes est alors exécuté. Lorsque la commande NEXT est atteinte, la variable est augmentée en fonction de l’incrément spéci­fié après STEP. La valeur STEP peut être positive ou négative. Si elle n’est pas spécifiée, la valeur 1 est utilisée. Tant que la variable est inférieure ou égale à la fin, le bloc de commandes est exécuté de manière répétée. Dès que la variable est supérieure à la fin, l’exécution du programme se poursuit après l’instruction NEXT. Remarque : les instructions FOR ... NEXT peuvent être imbriquées dans un maximum de 8 niveaux dans un programme BASIC.
Arguments variable
Expression BASIC.
•début
Expression BASIC.
•fin
Expression BASIC.
incrément
Expression BASIC.
commandes
Une ou plusieurs commandes BASIC.
Exemple loop:
FOR dist = 5 TO -5 STEP -0.25
MOVEABS(dist) GOSUB pick_up
NEXT dist
L’incrément STEP peut être positif ou négatif.
Exemple loop1:
FOR l1 = 1 TO 8 loop2:
FOR l2 = 1 TO 6
MOVEABS(l1*100,l2*100) GOSUB 1000
NEXT l2
NEXT l1
Les instructions FOR..TO..STEP..NEXT peuvent être imbriquées (maximum 8 niveaux) à condition que les commandes FOR et NEXT internes soient situées dans la boucle FOR..TO..STEP..NEXT externe.
Voir aussi REPEAT..UNTIL, WHILE...WEND.
Exemple FOR opnum = 8 TO 13
OP(opnum,ON) NEXT opnum
Cette boucle active les sorties 8 à 13.
Révision 3.0
MANUEL DE PROGRAMMATION 85
Commandes BASIC
3.2.125 FORWARD
/i
Type Commande d’axe
Syntaxe FORWARD
FO
Description La commande FORWARD déplace un axe selon un mouvement continu vers
l’avant et la vitesse définie dans le paramètre d’axe SPEED. Le taux d’accélé­ration est défini par le paramètre d’axe ACCEL.
FORWARD
si la commande Remarque : le mouvement vers l’avant peut être interrompu en exécutant la commande
Arguments N/A
Exemple start:
FORWARD WAIT UNTIL IN(0) = ON ' Attente du signal d’arrêt CANCEL
Voir aussi AXIS, CANCEL, RAPIDSTOP, REVERSE, UNITS.
est valable sur l’axe de base par défaut (réglé avec
AXIS
est utilisée pour spécifier un axe de base temporaire.
CANCEL
ou
RAPIDSTOP
ou lorsque la limite avant est atteinte.
BASE
3.2.126 FPGA_VERSION
/i
Type Paramètre d’emplacement
Syntaxe FPGA_VERSION SLOT(numéro_carte)
Description Ce paramètre renvoie la version FPGA de la carte numéro_carte dans un sys-
tème de contrôleur.
Arguments •numéro_carte
La plage de numéros de carte va de -1 à 6 (dont 0), -1 correspondant à TJ1-MC__ et 0 à la carte située directement à droite du TJ1-MC__.
Exemple N/A
Voir aussi N/A
Révision 3.0
), sauf
3.2.127 FRAC
/i
Type Fonction mathématique
Syntaxe FRAC(expression)
Description La fonction FRAC renvoie la fraction d’une expression.
Arguments expression
Expression BASIC valide.
Exemple >> PRINT FRAC(1.234)
0.2340
Voir aussi N/A
3.2.128 FRAME
/i
Type Paramètre système
Syntaxe FRAME=valeur
Description
Arguments N/A
Exemple FRAME=1
Voir aussi N/A
Ce paramètre sert à spécifier la trame à utiliser dans le cadre de transformations de trame. Les transformations de trame permettent de spécifier des mouve­ments dans une trame de référence à coordonnées multiaxe pour lesquels il n’y a pas de correspondance avec les axes. Prenons l’exemple d’un bras robotisé SCARA avec axes angulaires. Pour que l’extrémité du bras robotisé puisse effectuer des mouvements en ligne droite en coordonnées X-Y, les moteurs doivent se déplacer selon un schéma déterminé par la géométrie du robot. Les transformations de trame permettant d’effectuer ces fonctions doivent être compilées à partir d’un code source en langage C et chargées dans le logiciel système du contrôleur. Pour obtenir de l’aide, contactez Omron. Un système machine peut être spécifié avec plusieurs trames différentes. La trame active est spécifiée à l’aide du paramètre système FRAME. La valeur par défaut du paramètre FRAME est 0, ce qui correspond à une transformation un à un.
MANUEL DE PROGRAMMATION 86
Commandes BASIC
3.2.129 FREE
/i
Type Fonction système
Syntaxe FREE
Description La fonction FREE renvoie la quantité restante de mémoire disponible
pour les programmes utilisateur et les éléments du tableau TABLE. Remarque : chaque ligne occupe un minimum de 4 caractères (octets) en mémoire. Cela correspond à la longueur de la ligne actuelle, à celle de la ligne précédente, au nombre d’espaces au début de la ligne et à un seul jeton de commande. Les commandes supplémentaires nécessitent un octet par jeton ; la plupart des autres données sont stockées au format ASCII. Le TJ1-MC__ compile les programmes avant leur exécution. Par conséquent, l’exécution d’un programme exige le double de la mémoire.
Arguments N/A
Exemple >> PRINT FREE
47104.0000
Voir aussi N/A
3.2.130 FS_LIMIT
/i
Type Paramètre d’axe
Syntaxe FS_LIMIT
FSLIMIT
Description Le paramètre d’axe FS_LIMIT contient la position absolue de la limite logi-
cielle avant exprimée en unités utilisateur. Il est possible de définir une limite logicielle pour le mouvement avant à l’aide du programme afin de déterminer la plage de travail de la machine. Une fois la limite atteinte, le TJ1-MC__ décélère jusqu’à 0, puis annule le mouvement. Le bit 9 du paramètre d’axe AXISSTATUS s’active lorsque la position d’axe est supérieure à FS_LIMIT.
Arguments N/A
Révision 3.0
Exemple Pas d’exemple.
Voir aussi AXIS, AXISSTATUS, UNITS.
3.2.131 FWD_IN
/i
Type Paramètre d’axe
Syntaxe FWD_IN
Description
Sigma II Entrée 28 : CN1-40
Sigma III Entrée 28 : CN1-13
Junma Entrée 26 : CN1-2
Arguments N/A
Le paramètre d’axe comme entrée de limite avant. La plage d’entrées valide est comprise entre 0 et 31. Les valeurs 0 à 15 correspondent aux entrées physi­ques du connecteur d’E/S du TJ1-MC__. Elles sont communes à tous les axes. Les valeurs 16 à 27 correspondent aux entrées logi­cielles pouvant être librement utilisées dans des programmes et des commandes tels que IN et OP. Il s’agit également d’entrées commu­nes à tous les axes. Les valeurs 28 à 31 sont directement mappées sur les entrées de driver présentes sur le connecteur CN1. Elles sont uniques à chaque axe. Le mappage entre les entrées de driver et les entrées 28 à 31 varie en fonction de la valeur du paramètre de servo­driver Pn81E. La valeur recommandée du paramètre Pn81E est 0x4321, avec le mappage ci-dessous : Le mouvement avant éventuel de l’axe est interrompu si un numéro d’entrée est défini et que la limite est atteinte. Le bit 4 de AXISSTATUS est également activé. Remarque : cette entrée est une entrée faible active.
Entrée 29 : CN1-41
Entrée 30 : CN1-42
Entrée 31 : CN1-43
Entrée 29 : CN1-7
Entrée 30 : CN1-8
Entrée 31 : CN1-9
Entrée 27 : CN1-1
Pour plus d’informations sur le réglage du paramètre de driver Pn81E, consultez le manuel correspondant au servodriver. Par défaut, le paramètre est réglé sur la valeur -1 (aucune entrée sélectionnée).
FWD_IN
contient le numéro de l’entrée à utiliser
MANUEL DE PROGRAMMATION 87
Commandes BASIC
Exemple Pas d’exemple.
Voir aussi AXIS, AXISSTATUS REV_IN.
3.2.132 FWD_JOG
/i
Type Paramètre d’axe
Syntaxe FWD_JOG
Description Le paramètre d’axe FWD_JOG contient le numéro de l’entrée à uti-
liser comme entrée de jog avant. L’entrée peut être définie sur une valeur de 0 à 7. Par défaut, le paramètre est réglé sur -1 (aucune entrée sélectionnée). Remarque : cette entrée est une entrée faible active.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi AXIS, FAST_JOG, JOGSPEED, REV_JOG.
3.2.133 GET
/i
Type Commande d’E/S
Syntaxe GET [#n,] variable
Exemple GET#5, k
Cette ligne stocke le caractère ASCII reçu sur le canal 5 du port Trajexia Tools dans la variable k.
Voir aussi INDEVICE INDEVICE, INPUT, KEY, LINPUT.
/i
Numéro du périphérique d’entrée
0 Port de programmation 0
1 Port série RS-232C 1
2 Port série RS-422A/485 2
5 Port Trajexia Tools 0, canal utilisateur 5
6 Port Trajexia Tools 0, canal utilisateur 6
7 Port Trajexia Tools 0, canal utilisateur 7
Description
Description La commande GET attribue à une variable le code ASCII d’un caractère reçu.
Si le tampon du port série est vide, l’exécution du programme est interrompue jusqu’à la réception d’un caractère. Lors de l’utilisation de Trajexia Tools, les canaux 5 à 7 sont des canaux logiques superposés sur le port de programmation 0. Remarque : le canal 0 est réservé pour la connexion à Trajexia Tools et/ou à l’interface de ligne de commande. Notez que ce canal peut poser des pro­blèmes pour cette fonction.
Arguments •n
Révision 3.0
Périphérique d’entrée spécifié. Si cet argument n’est pas spécifié, c’est le port déterminé par
variable
Nom de la variable qui doit recevoir le code ASCII.
INDEVICE
qui est utilisé. Consultez le tableau ci-dessous.
MANUEL DE PROGRAMMATION 88
Commandes BASIC
3.2.134 GLOBAL
/i
Type Commande système
Syntaxe GLOBAL "nom", numéro_vr
Description Déclare le nom en tant que référence à une variable VR globale.
Ce nom peut être utilisé dans le programme qui contient la défini­tion GLOBAL et dans tous les autres programmes du projet Tra­jexia Tools 2. Remarque : le programme qui contient la définition GLOBAL doit être exécuté avant que le nom soit utilisé dans d’autres program­mes. En outre, seul ce programme doit être exécuté lors de l’exé­cution de GLOBAL. À défaut, une erreur programme s’affiche et le programme s’interrompt lors de la tentative d’exécution de cette commande. Pour accélérer le démarrage, il est également recommandé que le programme soit le seul processus en cours d’exécution lors de la mise sous tension. Une fois la définition GLOBAL déclarée, la déclaration reste active jusqu’à la prochaine réinitialisation du TJ1-MC__ par un cycle de mise hors/sous tension ou par l’exécution de la commande EX. Dans les programmes qui utilisent la commande GLOBAL définie, l’argument nom a la même signification que VR(numéro_vr). N’utilisez pas la syntaxe suivante : VR(nom). Il est possible de déclarer un maximum de 128 définitions
Arguments •nom
Nom défini par l’utilisateur contenant des caractères alpha­numériques minuscules, des chiffres ou des traits de souligne­ment (_).
•numéro_vr
Numéro de la variable VR à associer à l’argument nom.
Exemple GLOBAL "pas_vis",12
GLOBAL "rapport1",534 rapport1 = 3.56 pas_vis = 23.0 PRINT pas_vis, rapport1
Voir aussi N/A
Révision 3.0
GLOBAL
3.2.135 GOSUB..RETURN
/i
Type Commande de contrôle de programme
Syntaxe GOSUB label
... RETURN
Description La structure GOSUB active un saut de sous-routine. GOSUB stocke la posi-
tion de la ligne après la commande GOSUB avant de passer au label spécifié. Lorsque l’instruction RETURN est atteinte, l’exécution du programme revient à la position stockée. Remarque : les sous-routines de chaque tâche peuvent être imbriquées jusqu’à 8 niveaux.
Arguments label
Label valide présent dans le programme. Un label non valide génère une erreur de compilation avant l’exécution. Un label peut être une chaîne de caractères de longueur indéfinie, mais seuls les 15 premiers caractères sont importants.
Exemple main:
GOSUB routine GOTO main
.
Voir aussi GOTO
routine:
PRINT "Position mesuree=";MPOS;CHR(13); RETURN
3.2.136 GOTO
/i
Type Commande de contrôle de programme
Syntaxe GOTO label
Description La structure GOTO active un saut d’exécution de programme. GOTO fait pas-
ser l’exécution du programme à la ligne du programme qui contient le label.
MANUEL DE PROGRAMMATION 89
Commandes BASIC
Arguments label
Label valide présent dans le programme. Un label non valide génère une erreur de compilation avant l’exécution. Un label peut être une chaîne de caractères de longueur indéfinie, mais seuls les 15 premiers caractères sont importants.
Exemple loop:
PRINT "Position mesuree = ";MPOS;CHR(13); GOTO loop
Voir aussi GOSUB..RETURN
3.2.137 HALT
/i
Type Commande système
Syntaxe HALT
Description La commande HALT arrête l’exécution de toutes les tâches de programme
en cours d’exécution. Cette commande peut être utilisée dans la ligne de commande et dans les programmes. Utilisez la commande STOP pour arrêter une seule tâche de programme.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi PROCESS, STOP.
3.2.138 HEX
/i
Type Commande d’E/S
Syntaxe HEX
Description Cette commande est utilisée dans une instruction PRINT pour afficher
un nombre au format hexadécimal.
Arguments N/A
Révision 3.0
Exemple PRINT#5,HEX(IN(8,16))
3.2.139 HLM_COMMAND
/i
Type Commande de communication
Syntaxe HLM_COMMAND(commande, port [ , nœud [ , zone_mc/mode
[ , décalage_mc ]]])
Description
Arguments commande
La commande Link spécifique sur un ou sur tous les esclaves Host Link sur le port sélectionné. L’exécution du programme est interrompue jusqu’à la réception de la chaîne de réponse ou jusqu’à l’expiration du délai de temporisation. Le délai de tem­porisation est déterminé à l’aide du paramètre HLM_TIMEOUT. L’état du transfert peut être surveillé à l’aide du paramètre HLM_STATUS. Remarques :
En cas d’utilisation de
Host Link à l’aide de la commande
Les commandes de maître Host Link doivent être exécutées à partir d’une
seule tâche de programme afin d’éviter tout problème lié au multitâche.
Sélection de l’opération Host Link à effectuer. Consultez le premier tableau ci-après.
•port
Port série spécifié. 1 = port série RS-232C 1 ; port série RS-422A 2.
nœud (pour HLM_MREAD, HLM_TEST, HLM_ABORT et HLM_STWR)
Numéro du nœud esclave auquel la commande Host Link doit être envoyée. Plage : [0, 31].
mode (pour HLM_STWR)
Mode de fonctionnement de la carte UC spécifiée. 0 = mode PROGRAM ; 2 = mode MONITOR ; 3 = mode RUN.
zone_mc (pour HLM_MREAD)
Zone mémoire du TJ1-MC__ dans laquelle les données à envoyer sont lues. Consultez le second tableau ci-après.
décalage_mc (pour HLM_MREAD)
Adresse de la zone mémoire du TJ1-MC__ dans laquelle les données sont lues. Plage de variables VR : [0, 1023]. Plage de variables TABLE : [0, 63999].
HLM_COMMAND
HLM_READ
effectue une opération de commande Host
, veillez à configurer le protocole maître
SETCOM
.
Voir aussi N/A
MANUEL DE PROGRAMMATION 90
Commandes BASIC
Exemple HLM_COMMAND(HLM_MREAD,1,12,MC_VR,233)
Cette commande lit le code du modèle de carte UC de l’esclave Host Link avec l’adresse de nœud 12 connecté au port RS-232C. Le résultat est écrit dans VR(233). Si l’esclave connecté est un ordinateur C200HX, la variable VR(233) contient la valeur 12 (hexadécimal) après une exécution réussie.
Exemple HLM_COMMAND(HLM_TEST,2,23)
PRINT HLM_STATUS PORT(2)
Cette commande vérifie la communication Host Link avec l’esclave Host Link (nœud 23) connecté au port RS-422A. La communication est fonctionnelle si le paramètre HLM_STATUS contient la valeur 0.
Exemple HLM_COMMAND(HLM_INIT,2)
HLM_COMMAND(HLM_ABORT,2,4) Ces deux commandes effectuent les opérations Host Link INITIALIZE et ABORT sur le port RS-422A 2. L’esclave est associé au numéro de nœud 4.
Exemple HLM_COMMAND(HLM_STWR,2,0,2)
Lorsque des données sont écrites sur un ordinateur via Host Link, la carte UC ne peut pas être en mode RUN. La commande HLM_COMMAND peut être utilisée pour activer le mode MONITOR. L’esclave est associé à l’adresse de nœud 0 et est connecté au port RS-232C.
Voir aussi HLM_READ, HLM_COMMAND, HLM_STATUS, HLM_TIMEOUT,
HLS_NODE, HLM_WRITE, SETCOM.
/i
Valeur de com­mande
HLM_MREAD
(ou valeur 0)
HLM_TEST
(ou valeur 1)
HLM_ABORT
Révision 3.0
(ou valeur 2)
Description
Exécute la commande Host Link MODEL READ (MM) pour lire le code du modèle de carte UC. Le résultat est écrit dans la variable TJ1-MC__ spécifiée par les arguments zone_mc et décalage_mc.
Exécute la commande Host Link TEST (TS) pour vérifier la communica­tion en envoyant la chaîne « MCW151 TEST STRING » et en contrôlant la chaîne renvoyée en écho. Consultez le paramètre HLM_STATUS pour connaître le résultat.
Exécute la commande Host Link ABORT (XZ) pour interrompre la com­mande Host Link en cours de traitement. La commande ABORT ne reçoit pas de réponse.
Valeur de com­mande
HLM_INIT
(ou valeur 3)
HLM_STWR
(ou valeur 4)
/i
Valeur zone_mc
MC_TABLE
(ou valeur 8)
MC_VR
(ou valeur 9)
Description
Exécute la commande Host Link de contrôle de la transmission de toutes les cartes esclaves.
Exécute la commande Host Link STATUS WRITE (SC) pour modifier le mode de fonctionnement de la carte UC.
Zone de données
Tableau de variables TABLE
Tableau de variables globales (VR)
INITIALIZE (**
) pour initialiser la procédure
3.2.140 HLM_READ
/i
Type Commande de communication
Syntaxe HLM_READ(port, nœud, zone_pc, décalage_pc, longueur, zone_mc,
décalage_mc)
Description La commande HLM_READ lit les donnés d’un esclave Host Link en envoyant
au port série une chaîne de commande Host Link qui contient le nœud spéci­fié de l’esclave. Les données de réponse reçues sont écrites dans des varia­bles VR ou TABLE. Chaque mot des données est transféré dans une variable. La longueur de données maximale est de 30 mots (transfert de trame simple). L’exécution du programme est interrompue jusqu’à la réception de la chaîne de réponse ou jusqu’à l’expiration du délai de temporisation. Le délai de tem­porisation est déterminé à l’aide du paramètre HLM_TIMEOUT. L’état du transfert peut être surveillé à l’aide du paramètre HLM_STATUS. Remarques :
En cas d’utilisation de HLM_READ, veillez à configurer le protocole maî-
tre Host Link à l’aide de la commande SETCOM.
Les commandes de maître Host Link doivent être exécutées à partir d’une
seule tâche de programme afin d’éviter tout problème lié au multitâche.
MANUEL DE PROGRAMMATION 91
Commandes BASIC
Arguments •port
Port série spécifié. 1 = port série RS-232C 1 ; port série RS-422A 2.
•nœud
Numéro du nœud esclave auquel la commande Host Link doit être envoyée. Plage : [0, 31].
zone_pc
Zone de mémoire PC sélectionnée pour la commande Host Link. Consultez le premier tableau ci-après.
décalage_pc
Adresse de la zone mémoire PC dans laquelle les données sont lues. Plage : [0, 9999].
longueur
Nombre de mots de données à transférer. Plage : [1, 30].
zone_mc
Zone mémoire du TJ1-MC__ dans laquelle les données à envoyer sont lues. Consultez le second tableau ci-après.
décalage_mc
Adresse de la zone mémoire du TJ1-MC__ dans laquelle les données doivent être écrites. Plage de variables VR : [0, 1023]. Plage de variables TABLE : [0, 63999].
Exemple HLM_READ(2,17,PLC_DM,120,20,MC_TABLE,4000)
Cet exemple indique comment lire 20 mots à partir des adresses de zone DM 120 à 139 de l’ordinateur vers les adresses TABLE 4000 à 4019 de la carte TJ1-MC__. L’ordinateur est associé à l’adresse de nœud esclave 17 et connecté au port RS-422A.
Voir aussi HLM_COMMAND, HLM_STATUS, HLM_TIMEOUT, HLS_NODE,
HLM_WRITE, SETCOM.
/i
Valeur zone_pc Zone de données Commande Host Link
PLC_DM
(ou valeur 0)
PLC_IR
(ou valeur 1)
PLC_LR
Révision 3.0
(ou valeur 2)
Zone DM RD
Zone CIO/IR RR
Zone LR RL
Valeur zone_pc Zone de données Commande Host Link
PLC_HR
(ou valeur 3)
PLC_AR
(ou valeur 4)
PLC_EM
(ou valeur 6)
/i
Valeur zone_mc Zone de données
MC_TABLE
(ou valeur 8)
MC_VR
(ou valeur 9)
Zone HR RH
Zone AR RJ
Zone EM RE
Tableau de variables TABLE
Tableau de variables globales (VR)
3.2.141 HLM_STATUS
/i
Type Paramètre de communication
Syntaxe HLM_STATUS PORT(n)
Description Le paramètre HLM_STATUS contient l’état de la dernière commande maître
Host Link envoyée au port spécifié. Il indique l’état pour les commandes HLM_READ, HLM_WRITE et HLM_COMMAND. Le tableau ci-dessous répertorie les bits d’état. Le paramètre valeur est différente de 0, l’action appropriée (nouvelle tentative ou arrêt d’urgence, par exemple) doit être programmée dans le programme utilisateur BASIC. Chaque port comporte un paramètre requis pour spécifier le port.
Arguments •n
Port série spécifié. 1 = port série RS-232C 1 ; port série RS-422A 2.
Exemple >> HLM_WRITE(1,28,PLC_EM,50,25,MC_VR,200)
>> PRINT HEX(HLM_STATUS PORT(1)) 1
La carte UC est apparemment en mode RUN et n’accepte pas l’opération d’écriture.
HLM_STATUS
a la valeur 0 si aucun problème ne s’est produit. Si la
HLM_STATUS
. Le modificateur
PORT
est
MANUEL DE PROGRAMMATION 92
Commandes BASIC
Exemple >> HLM_COMMAND(HLM_TEST,2,0)
>> PRINT HLM_STATUS PORT(2)
256.0000
Une erreur d’expiration du délai s’est produite.
Voir aussi HLM_READ, HLM_COMMAND, HLM_TIMEOUT, HLS_NODE,
HLM_WRITE, SETCOM.
/i
Bit Nom Description
0 - 7 Code de fin Il s’agit du code de fin défini par l’esclave Host Link (problème
lié à la chaîne de commande envoyée) ou d’un code de fin défini en raison d’un problème détecté par le maître Host Link (problème lié à la chaîne de réponse reçue).
8 Erreur d’expira-
tion du délai
9 Commande
non reconnue
Une erreur d’expiration du délai se produit si aucune réponse n’a été reçue pendant le délai de temporisation. Cette erreur indique que la communication a été interrompue.
Cet état indique que l’esclave n’a pas reconnu la commande et a renvoyé une réponse IC.
3.2.142 HLM_TIMEOUT
/i
Type Paramètre de communication
Syntaxe HLM_TIMEOUT
Description Le paramètre HLM_TIMEOUT spécifie la durée de temporisation
fixe pour le protocole maître Host Link pour les deux ports série. Une erreur d’expiration de délai se produit lorsque le temps néces­saire à l’envoi de la commande et à la réception de la réponse de l’esclave est plus long que le temps spécifié par ce paramètre. Ce paramètre s’applique aux commandes
HLM_COMMAND
et les cycles servo.
Arguments N/A
Exemple >> HLM_TIMEOUT=2000
Si le cycle servo du TJ1-MC__ est défini sur 500 ms (SERVO_PERIOD=500), le délai de temporisation du maître Host Link est réglé sur 1 s pour les deux ports série.
Voir aussi HLM_READ, HLM_COMMAND, HLM_STATUS, HLS_NODE,
HLM_WRITE, SETCOM SERVO_PERIOD.
. Le paramètre
HLM_READ, HLM_WRITE
HLM_TIMEOUT
est spécifié dans
Révision 3.0
MANUEL DE PROGRAMMATION 93
Commandes BASIC
3.2.143 HLM_WRITE
/i
Type Commande de communication
Syntaxe HLM_WRITE(port, nœud, zone_pc, décalage_pc, longueur, zone_mc,
décalage_mc)
Description La commande HLM_WRITE écrit les donnés du TJ1-MC__ sur un esclave
Host Link en envoyant au port série une chaîne de commande Host Link qui contient le nœud spécifié de l’esclave. Les données de réponse reçues sont écrites à partir des variables VR ou TABLE. Chaque variable définit le mot ou les données à transférer. La longueur de données maximale est de 29 mots (transfert de trame simple). L’exécution du programme est interrompue jusqu’à la réception de la chaîne de réponse ou jusqu’à l’expiration du délai de temporisation. Le délai de tem­porisation est déterminé à l’aide du paramètre HLM_TIMEOUT. L’état du transfert peut être surveillé à l’aide du paramètre HLM_STATUS. Remarques :
En cas d’utilisation de HLM_WRITE, veillez à configurer le protocole maître Host Link à l’aide de la commande SETCOM.
Les commandes de maître Host Link doivent être exécutées à partir d’une seule tâche de programme afin d’éviter tout problème lié au multitâche.
Arguments •port
Port série spécifié. 1 = port série RS-232C 1 ; port série RS-422A 2.
•nœud
Numéro du nœud esclave auquel la commande Host Link doit être envoyée. Plage : [0, 31].
zone_pc
Zone de mémoire PC sélectionnée pour la commande Host Link. Consultez le premier tableau ci-après.
décalage_pc
Adresse de la zone mémoire du PC dans laquelle les données doivent être écrites. Plage : [0, 9999].
longueur
Nombre de mots de données à transférer. Plage : [1, 29].
•zone_mc
Zone mémoire du TJ1-MC__ dans laquelle les données à envoyer sont lues. Consultez le second tableau ci-après.
décalage_mc
Adresse de la zone mémoire du TJ1-MC__ dans laquelle les données sont lues. Plage de variables VR : [0, 1023]. Plage de variables TABLE : [0, 63999].
Exemple HLM_WRITE(1,28,PLC_EM,50,25,MC_VR,200)
Cet exemple indique comment écrire 25 mots à partir des adresses VR 200 à 224 du TJ1-MC__ vers les adresses de la zone EM 50 à 74 de l’ordinateur. L’ordinateur est associé à l’adresse de nœud esclave 28 et connecté au port RS-232C.
Voir aussi HLM_READ, HLM_COMMAND, HLM_STATUS, HLM_TIMEOUT,
HLS_NODE, SETCOM.
/i
Valeur zone_pc Zone de données Commande Host Link
Révision 3.0
PLC_DM
(ou valeur 0)
PLC_IR
(ou valeur 1)
PLC_LR
(ou valeur 2)
Zone DM RD
Zone CIO/IR RR
Zone LR RL
MANUEL DE PROGRAMMATION 94
Commandes BASIC
Valeur zone_pc Zone de données Commande Host Link
PLC_HR
(ou valeur 3)
PLC_AR
(ou valeur 4)
PLC_EM
(ou valeur 6)
/i
Valeur zone_mc Zone de données
MC_TABLE
(ou valeur 8)
MC_VR
(ou valeur 9)
Zone HR RH
Zone AR RJ
Zone EM RE
Tableau de variables TABLE
Tableau de variables globales (VR)
3.2.144 HLS_NODE
/i
Type Paramètre de communication
Syntaxe HLS_NODE
Description Le paramètre HLS_NODE définit le numéro de carte esclave pour le proto-
cole esclave Host Link. Le TJ1-MC__ ne répond qu’aux chaînes de com­mande maître Host Link dont le numéro de carte correspond à celui spécifié par ce paramètre. La plage de valeurs valides pour ce paramètre est [0, 31]. La valeur par défaut est 0.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
Révision 3.0
3.2.145 HW_PSWITCH
/i
Type Commande d’axe
Syntaxe HW_PSWITCH(mode, sens, état_sortie, début_table, fin_table)
Description
Arguments •mode
Exemple HW_PSWITCH(1, 1, ON, 21, 50)
Exemple HW_PSWITCH(0)
La commande mesurée prédéfinie est atteinte. Elle désactive la sortie si une autre position mesu­rée est atteinte. Les positions sont définies dans une séquence dans la mémoire TABLE pour la plage
HW_PSWITCH
Ce paramètre ne concerne que les axes flexibles dont la valeur ATYPE correspond à 43, 44 ou 45. La commande peut être utilisée avec un ou cinq paramètres. Un seul paramètre est nécessaire pour désactiver le commutateur ou pour effacer la file d’attente FIFO. Les cinq paramètres sont nécessaires pour activer le commutateur. Une fois la file d’attente FIFO chargée et la séquence des positions lue, si la même séquence doit être réexécutée, la file d’attente FIFO doit être effacée avant d’exécuter la commande
0 = désactiver le commutateur ; 1 = activer et charger la file d’attente FIFO ; 2 = effacer la file d’attente FIFO.
sens
0 = décroissant ; 1 = croissant.
état_sortie
État de sortie à définir dans la première position de la file d’attente FIFO (ON ou OFF).
début_table
Adresse de table de début de la séquence.
fin_table
Adresse de table de fin de la séquence.
Cette commande charge la file d’attente FIFO avec 30 positions, stockées dans la mémoire TABLE commençant par la position stockée dans puis désactivée et activée lorsque les positions suivantes de la séquence sont atteintes, jusqu’à ce que la position stockée dans
Cette commande désactive le commutateur s’il était activé, sans effacer la file d’attente FIFO.
HW_PSWITCH
début_table
, ces positions sont stockées dans la file d’attente FIFO.
active la sortie OUT 0 pour l’axe lorsque la position
à
fin_table
HW_PSWITCH
TABLE(21)
. Lors de l’exécution de la commande
avec les mêmes paramètres.
TABLE(21)
est atteinte, la sortie OUT 0 est activée,
, dans l’ordre croissant. Lorsque
TABLE(50)
soit atteinte.
MANUEL DE PROGRAMMATION 95
Commandes BASIC
Exemple HW_PSWITCH(2)
Cette commande efface la file d’attente FIFO si elle était chargée.
Voir aussi AXIS
3.2.146 I_GAIN
/i
Type Paramètre d’axe
Syntaxe I_GAIN
Description Le paramètre d’axe I_GAIN contient le gain intégral de l’axe. La contribution
de sortie intégrale est calculée en multipliant la somme des erreurs suivantes par la valeur du paramètre I_GAIN. La valeur par défaut est 0. L’ajout d’un gain intégral à un système servo diminue les risques d’erreur de positionnement au repos ou en mouvement continu. Il peut générer ou augmenter l’excès et les oscillations. Par conséquent, il ne convient que pour les systèmes travaillant à vitesse constante et avec de faibles accélérations. Remarque : pour éviter toute instabilité, les gains de servo ne doivent être modifiés que si SERVO est réglé sur OFF.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi D_GAIN, I_GAIN, OV_GAIN, P_GAIN, VFF_GAIN.
3.2.147 IDLE
Voir WAIT IDLE.
3.2.148 IEEE_IN
/i
Type Fonction mathématique
Syntaxe IEEE_IN(octet0,octet1,octet2,octet3)
Description La fonction IEEE_IN renvoie le nombre à virgule flottante représenté
par 4 octets, généralement reçus via une liaison de communication.
Arguments octet0 - octet3
Combinaison de valeurs 8 bits représentant un nombre à virgule flottante IEEE valide.
Exemple VR(20) = IEEE_IN(b0,b1,b2,b3)
Voir aussi N/A
3.2.149 IEEE_OUT
/i
Type Fonction mathématique
Syntaxe octet_n = IEEE_OUT(valeur, n)
Description
Arguments valeur
La fonction à virgule flottante pour une transmission via un système de bus. Cette fonction est généralement appelée 4 fois pour extraire les octets les uns après les autres. Remarque : L’octet 0 représente l’octet haut du format à virgule flottante IEEE 32 bits.
•n
IEEE_OUT
Variable ou paramètre BASIC à virgule flottante.
Numéro de l’octet (0 à 3) à extraire.
renvoie un seul octet au format IEEE extrait de la valeur
Exemple V=MPOS AXIS(2)
octet0 = IEEE_OUT(V, 0) octet1 = IEEE_OUT(V, 1) octet2 = IEEE_OUT(V, 2)
Révision 3.0
Voir aussi N/A
octet3 = IEEE_OUT(V, 3)
MANUEL DE PROGRAMMATION 96
Commandes BASIC
3.2.150 IF..THEN..ELSE..ENDIF
/i
Type Commande de contrôle de programme
Syntaxe IF condition_1 THEN commandes {ELSEIF condition_i THEN comman-
des} [ ELSE commandes ] ENDIF IF condition_1 THEN commandes
Description Cette structure contrôle le flux du programme d’après les résultats de la con-
dition. Si la condition est TRUE, les commandes qui suivent THEN sont exé- cutées jusqu’à ELSEIF, ELSE ou ENDIF. Si la condition est FALSE et que la commande d’une sous-structure ELSEIF suivante est TRUE, les commandes de cette sous-structure sont exécutées. Si toutes les conditions sont FALSE, les commandes qui suivent ELSE sont exécutées ou le programme reprend à la ligne après ENDIF si aucune instruction ELSE n’est fournie. L’instruction ENDIF sert à marquer la fin du bloc de conditions. Remarque : il est possible d’imbriquer les séquences sans limite. Pour obtenir une structure aucune instruction après utiliser
ENDIF
.
Arguments condition_i
Expression logique.
commandes
Une ou plusieurs commandes BASIC.
Exemple IF MPOS > (0.22 * VR(0)) THEN GOTO exceeds_length
Exemple IF IN(0) = ON THEN
count = count + 1 PRINT "IMPULSIONS = ";count fail = 0 ELSE fail = fail + 1 ENDIF
THEN
IF..THEN
. Une construction à ligne unique ne peut pas
IF..THEN..ELSE..ENDIF
multiligne, il ne peut y avoir
Exemple IF IN(stop)=ON THEN
OP(8,ON) VR(cycle_flag)=0 ELSEIF IN(start_cycle)=ON THEN VR(cycle_flag)=1 ELSEIF IN(step1)=ON THEN VR(cycle_flag)=99 ENDIF
Exemple IF key_char=$31 THEN
GOSUB char_1 ELSEIF key_char=$32 THEN GOSUB char_2 ELSEIF key_char=$33 THEN GOSUB char_3 ELSE PRINT "Caractere inconnu" ENDIF
Voir aussi N/A
3.2.151 IN
/i
Type Fonction d’E/S
Syntaxe IN(numéro_entrée [ ,numéro_dernière_entrée ])
IN
Description La fonction IN renvoie la valeur des entrées numériques.
IN(numéro_entrée, numéro_dernière_entrée)
du groupe d’entrées. Les deux arguments doivent être inférieurs à 24.
Si la valeur numéro_entrée de la fonction IN(numéro_entrée)
est inférieure à 32, c’est la valeur du canal spécifié qui est renvoyée.
IN (sans argument) renvoie la somme binaire des 24 premières entrées (comme IN(0,23)).
renvoie la somme binaire
Révision 3.0
MANUEL DE PROGRAMMATION 97
Commandes BASIC
Arguments numéro_entrée
Numéro de l’entrée pour laquelle une valeur doit être renvoyée. Valeur : nombre entier compris entre 0 et 31.
numéro_dernière_entrée Numéro de la dernière entrée pour laquelle une valeur doit être ren­voyée. Valeur : nombre entier compris entre 0 et 31.
Exemple Les lignes ci-dessous peuvent être utilisées pour se déplacer vers la position
définie sur une roue codeuse multipliée par un facteur donné. La roue codeuse est connectée aux entrées 4, 5, 6 et 7 et fournit la sortie dans BCD.
moveloop: MOVEABS(IN(4,7)*1.5467)
WAIT IDLE GOTO moveloop
La commande MOVEABS est construite comme suit : Étape1: IN(4,7) obtient un nombre entre 0 et 15. Étape 2 : Le nombre est multiplié par 1,5467 afin d’obtenir la distance requise. Étape 3 : Un mouvement absolu est effectué vers cette position.
Exemple Dans cet exemple, une entrée unique est testée :
test: WAIT UNTIL IN(4)=ON ' Convoyeur en position sur ON
GOSUB place
Voir aussi OP.
3.2.152 INDEVICE
/i
Type Paramètre d’E/S
Syntaxe INDEVICE
Description Le paramètre INDEVICE définit le périphérique d’entrée par défaut. Ce péri-
phérique est sélectionné pour les commandes d’entrée lorsque l’option #n est omise. Le paramètre INDEVICE est spécifique de la tâche. Le tableau ci-des­sous répertorie les valeurs prises en charge.
/i
Valeur Description
0 Port de programmation 0 (par défaut)
1 Port série RS-232C 1
2 Port série RS-422A/485 2
5 Port Trajexia Tools 0, canal utilisateur 5
6 Port Trajexia Tools 0, canal utilisateur 6
7 Port Trajexia Tools 0, canal utilisateur 7
3.2.153 INITIALISE
/i
Type Commande système
Syntaxe INITIALISE
Description Rétablit les valeurs par défaut de tous les paramètres d’axe, système et de
processus. Les paramètres sont également remis à zéro à chaque mise sous tension du contrôleur ou à l’exécution d’une commande EX (réinitialisation logicielle). Dans Trajexia Tools, l’option Reset the controller... (Réinitialiser le contrôleur) du menu Controller (Contrôleur) permet d’effectuer une action similaire à la commande EX.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi •EX
Arguments N/A
Exemple Pas d’exemple.
Révision 3.0
Voir aussi GETGET, INPUT, LINPUT, KEY.
MANUEL DE PROGRAMMATION 98
Commandes BASIC
3.2.154 INPUT
/i
Type Commande d’E/S
Syntaxe INPUT [ #n ], variable { , variable }
Description La commande INPUT attribue des valeurs numériques de chaîne d’entrée
aux variables spécifiées. Il est possible de demander plusieurs valeurs de chaîne d’entrée sur une ligne en les séparant par des virgules ou sur plu­sieurs lignes séparées par un retour chariot. L’exécution du programme est interrompue jusqu’à ce que la chaîne se termine par un retour chariot après l’attribution de la dernière variable. Si la chaîne n’est pas valide, un message d’erreur s’affiche et la tâche est répétée. Le nombre maximal d’entrées sur une ligne est illimité et varie en fonction de la longueur de la ligne. Lors de l’utilisation de Trajexia Tools, les canaux 5 à 7 sont des canaux logi­ques superposés sur le port de programmation RS-232C 0. Remarque : le canal 0 est réservé pour la connexion à Trajexia Tools et/ou à l’interface de ligne de commande. Notez que ce canal peut poser des pro­blèmes pour cette fonction.
Arguments •n
Périphérique d’entrée spécifié. Si cet argument n’est pas spécifié, c’est le port déterminé par INDEVICE qui est utilisé.
variable
Variable de destination de l’écriture.
Exemple Soit le programme suivant qui permet de recevoir des données du terminal.
INPUT#5, num PRINT#5, "NOMBRE DE LOTS=";num[0]
Voici une réponse possible du terminal :
123<CR> NOMBRE DE LOTS=123
Voir aussi INDEVICE, GET, LINPUT, KEY
Révision 3.0
3.2.155 INT
/i
Type Fonction mathématique
Syntaxe INT(expression)
Description La fonction INT renvoie l’élément entier d’une expression.
Remarque : pour arrondir un nombre positif à la valeur entière la plus proche, utilisez la fonction INT de la valeur additionnée de 0,5. De même, pour arron­dir une valeur négative, soustrayez 0,5 de la valeur avant d’appliquer INT.
Arguments expression
Expression BASIC valide.
Exemple >> PRINT INT(1.79)
1.0000
Voir aussi N/A
3.2.156 INVERT_IN
/i
Type Commande système
Syntaxe INVERT_IN(entrée,ON/OFF)
Description La commande INVERT_IN permet d’inverser les canaux d’entrée 0 à 31
de manière individuelle dans le logiciel. Cette opération est importante car les canaux d’entrée peuvent être définis pour activer des fonctions telles que le maintien d’alimentation. La fonction INVERT_IN active ou désactive l’inversion d’un canal. Elle ne peut être appliquée qu’aux entrées 0 à 31.
Arguments •entrée
Expression BASIC.
Exemple >>? IN(3)
0.0000 >>INVERT_IN(3,ON) >>? IN(3)
1.0000
Voir aussi N/A
MANUEL DE PROGRAMMATION 99
Commandes BASIC
3.2.157 INVERT_STEP
/i
Type Paramètre d’axe
Syntaxe INVERT_STEP
Description Le paramètre INVERT_STEP sert à commuter un variateur matériel sur le cir-
cuit de sortie d’impulsions de moteur à pas. Cette opération peut s’avérer nécessaire pour connecter des drivers de moteur à pas. Selon la logique électronique inhérente au générateur d’impulsions du moteur à pas Trajexia, le front FALLING de la sortie de pas correspond au front actif qui entraîne le mouvement du moteur. Cela convient pour la plupart des variateurs de moteur à pas. Le paramètre INVERT_STEP=ON permet de convertir le front RISING du signal de pas en front actif. INVERT_STEP doit être activé avant d’activer le contrôleur avec WDOG=ON. Le réglage par défaut est OFF. Remarque : en cas de réglage incorrect, un moteur à pas risque de perdre sa position d’un pas lors du changement de sens.
Arguments N/A
Exemple Pas d’exemple.
Voir aussi N/A
3.2.158 INVERTER_COMMAND
/i
Type Commande système
Syntaxe INVERTER_COMMAND(module, station, 7, signaux_fonctionnement)
INVERTER_COMMAND(module, station, 1, numéro_alarme)
Description
Arguments module
Exemple Pas d’exemple.
La commande du variateur de fréquence connecté au système via le bus MECHATROLINK-II. La commande INVERTER_COMMAND permet d’effectuer deux fonctions :
1 : Effacer une alarme.
7 : Contrôler les signaux de fonctionnement.
Pour utiliser un variateur via MECHATROLINK-II, vous devez définir la com­mande et la référence avec l’option de communication suivante :
Variateur MV/V7 : N3=3 ; N4=9.
Variateur F7/G7 : B1-01=3 ; B1-02=3.
Assurez-vous que le micrologiciel du variateur prend en charge la carte MECHATROLINK-II. La commande renvoie la valeur -1 si elle réussit ou 0 si elle échoue. La commande envoyée au variateur correspond aux bits indiqués au tableau ci-dessous.
Numéro de la carte TJ1-ML__ à laquelle le variateur est connecté.
•station
Numéro de station MECHATROLINK-II du variateur.
numéro_alarme
Numéro de l’alarme. Consultez le manuel du variateur.
signaux_fonctionnement
Valeurs en bits qui contrôle les signaux de fonctionnement. Consultez le tableau ci-dessous.
INVERTER_COMMAND
contrôle les entrées et acquitte l’alarme
Voir aussi N/A
Révision 3.0
/i
Bit Valeur Commande Description
0 Hex 1 Fonctionnement avant
MANUEL DE PROGRAMMATION 100
Loading...