Vous êtes sur la page 1sur 405

Cat. No.

W394-FR1-06

Variablen: Vor Druckbeginn bitte entfernen!!!

Automates programmables

Cat. No. W394-FR1-06


Srie SYSMAC CS Srie SYSMAC CJ
CS1G/H-CPU -EV1 CJ1G-CPU
CS1G/H-CPU H CJ1G/H-CPU H
CS1D-CPU H CJ1M-CPU
CS1D-CPU S

Automates programmables
MANUEL DE PROGRAMMATION

MANUEL DE PROGRAMMATION
Prsentation
1 Fonctionnement de l'UC
OMRON Electronics S.a.r.l. BELGIQUE SUISSE 2 Programmation
14, rue de Lisbonne Omron Electronics N.V./S.A. Omron Electronics AG
93110 ROSNY SOUS BOIS Stationsstraat 24, B-1702 Groot-Bijgaarden Sennweidstrasse 44, CH-6312 Steinhausen 3 Fonction des instructions
FRANCE Tl : +32 (0) 2 466 24 80 Tl. : +41 (0) 41 748 13 13
Fax : +32 (0) 2 466 06 87 Fax : +41 (0) 41 748 13 45 4 Tches
Tl. : + 33 1 56 63 70 00 www.omron.be www.omron.ch
Fax : + 33 1 48 55 90 86 Romanel Tl. : +41 (0) 21 643 75 75
www.omron.fr

Advanced Industrial Automation


Remarque : les caractristiques techniques du produit peuvent tre modifies sans pravis.
Cat. No. W394-FR1-06
Srie SYSMAC CS
CS1G/H-CPU@@-EV1
CS1G/H-CPU@@H
CS1D-CPU@@H
CS1D-CPU@@S
Srie SYSMAC CJ
CJ1G-CPU@@
CJ1G/H-CPU@@H
CJ1M-CPU@@
Automates programmables
Manuel de programmation
Rvision : dcembre 2003
iv
Avis :
Les produits OMRON sont conus pour tre utiliss par un oprateur qualifi,
en respectant les procdures appropries et uniquement aux fins prcises
dans ce document.
Les conventions suivantes sont utilises dans ce manuel pour indiquer et
catgoriser les consignes de scurit. Respectez toujours les informations
fournies. Le non-respect de ces consignes peut entraner des blessures ou
des dgts matriels.

!ATTENTION DANGER Indique un danger imminent qui, s'il n'est pas vit, peut provoquer des
blessures graves ou mortelles.

!AVERTISSEMENT Indique un danger potentiel qui, s'il n'est pas vit, peut provoquer des
blessures graves ou mortelles.

!Attention Indique un danger potentiel qui, s'il n'est pas vit, peut provoquer des
blessures moins graves ou endommager des biens.

Rfrences des produits OMRON


Tous les produits OMRON sont crits en majuscules dans le prsent manuel.
Le mot carte porte galement une majuscule lorsqu'il fait rfrence un
produit OMRON, sous forme de nom propre ou de nom commun.
L'abrviation Ch qui apparat sur certains affichages et sur certains
produits OMRON signifie souvent mot .
L'abrviation API signifie Automate programmable. PC est toutefois
utilis dans certains affichages de priphrique de programmation et signifie
Programmable Controller.

Aide visuelle
Les intituls suivants apparaissent dans la colonne gauche du manuel pour
vous aider localiser diffrents types d'informations.
Remarque Dsigne des informations particulirement intressantes pour une utilisation
efficace du produit.

1,2,3... 1. Indique la prsence d'une liste telle que des procdures ou des listes de
contrles, etc.

OMRON, 2001
Tous droits rservs. Aucune partie de cette publication ne peut tre reproduite, stocke dans un systme de mmoire ou
transmise, sous quelque forme ou par quelque moyen mcanique, lectronique, photocopie, enregistrement que ce soit, sans
l'accord crit pralable d'OMRON.
L'utilisation des informations contenues ci-aprs n'entrane aucune responsabilit. De plus, dans un souci d'amliorer sans
cesse la qualit de ses produits, OMRON se rserve le droit de modifier toute information contenue dans le prsent manuel
sans pravis. Malgr tout le soin apport l'laboration de ce manuel, OMRON dcline toute responsabilit quant aux erreurs
et omissions qui pourraient s'y trouver. Enfin, OMRON dcline toute responsabilit concernant tout dommage rsultant de
l'utilisation des informations contenues dans le prsent manuel.

v
Version des UCs srie CS/CJ
Version des Afin de grer les UCs de la srie CS/CJ en fonction de leurs diffrences de
fonctionnalits dues leurs mises niveau, nous avons introduit la notion de
cartes version de carte . Cela s'applique aux UCs CS1-H, CJ1-H, CJ1M et CS1D.
Notation des versions de Le numro de version apparat droite du numro de lot sur la plaque
carte sur les produits signaltique des produits concerns par ce mode de gestion des versions,
comme illustr ci-dessous.
UC srie CS/CJ Plaque signaltique du produit
OMRON CS1H-CPU67H

UC

N de lot Version de carte


Exemple pour la version
de carte 2.0

Lot N 031001 0000 Ver.2.0

OMRON Corporation FABRIQU AU JAPON

La version des UCs CS1-H, CJ1-H et CJ1M ( l'exception des modles


conomiques) fabriques avant le 4 novembre 2003 n'est pas indique
sur l'UC (l'emplacement rserv ce numro, illustr ci-dessus, est vide).
Les UC CS1-H, CJ1-H et CJ1M, ainsi que les UC CS1D pour systmes
UC seule, commencent la version 2.0.
Les UC CS1D des systmes d'UC en duplex commencent la version 1.1.
Les UC pour lesquelles aucun numro de version n'est fourni sont
appeles UC pr-ver. @.@, telles que UC pr-ver. 2.0 et UC pr-ver. 1.1.
Vrification des versions Vous pouvez utiliser CX-Programmer version 4.0 pour contrler la version de
de carte avec un logiciel carte en appliquant l'une des deux mthodes suivantes.
de prise en charge
A l'aide des informations de l'API
A l'aide des informations sur la fabrication de la carte (cette mthode
peut aussi tre utilise pour les cartes d'E/S spciales et les cartes
rseau.)
Remarque CX-Programmer version 3.3 ou antrieure ne permet pas de vrifier les
versions de carte.
Informations de l'API
Si vous connaissez le type de priphrique et le type d'UC, slectionnez-
les dans la bote de dialogue Change PLC, connectez-vous en ligne, puis
slectionnez PLC - Edit - Information dans les menus.
Si vous ne connaissez pas le type de priphrique ni le type d'UC, mais
que vous tes connect directement l'UC sur une ligne srie,
slectionnez PLC - Auto Online pour passer en ligne, puis slectionnez
PLC - Edit - Information dans les menus.
Dans les deux cas, la bote de dialogue PLC Information s'affiche.

vi
Version de carte

Utilisez l'affichage ci-dessus pour vrifier la version de l'UC.


Informations sur la fabrication de la carte
Dans la fentre IO Table, cliquez avec le bouton droit et slectionnez Unit
Manufacturing information - CPU Unit.

La bote de dialogue Unit Manufacturing information suivante s'affiche

Version de carte

Utilisez l'affichage ci-dessus pour vrifier la version de l'UC connecte en


ligne.

vii
Utilisation des tiquettes Les tiquettes de version suivantes sont fournies avec l'UC.
de version de carte
Vers. 2.0 Vers.

Vers. 2.0 Vers.

Vous pouvez utiliser ces


tiquettes pour grer les
diffrences entre les fonctions
disponibles sur les diffrentes
cartes.
Collez l'tiquette approprie
l'avant de la carte pour indiquer la
version actuellement utilise.

Ces tiquettes peuvent tre attaches l'avant des UCs antrieures afin de
diffrencier les versions d'UC.

Notation des versions Dans ce manuel, la version d'une UC est indique comme dans le tableau ci-
de carte dessous.
Plaque signaltique du UC sans numro de version Cartes avec numro de version
produit (Ver. @.@)

Lot N XXXXXX XXXX


Lot N XXXXXX XXXX Ver. @ .@
OMRON Corporation FABRIQU
AU JAPON OMRON Corporation FABRIQU
AU JAPON

Signification
Dsignation d'UC UC pr-ver. 2.0 CS1-H UC CS1H-CPU67H Ver. @.@
individuelles
(par exemple,
CS1H-CPU67H)
Dsignation de groupes UC pr-ver. 2.0 CS1-H UC CS1-H Ver. @.@
d'UC (par exemple,
UC CS1H)
Dsignation d'une srie UC pr-ver. 2.0 srie CS UC srie CS Ver. @.@
d'UC (par exemple, les
UC srie CS)

viii
Numros de version et de lot
Srie Modle Date de fabrication
Avant Sept. 2003 Oct. 2003 Nov. 2003 Dc. 2003 Aprs
Srie UC CS1 CS1@-CPU@@
CS
Pas de numro de
version

UC CS1-V1 s CS1@-CPU@@-V1
Pas de numro de
version

UC CS1-H CS1@-CPU@@H
UC s Ver. 2.0
UC pr-ver. 2.0.
(N lot 031105 indiqu)

UC UC pour CS1D-CPU@@H
CS1D systme
UC en UC pr-ver. 1.1. UC Ver.1.1
duplex (N lot : 031120 indiqu)

UC pour CS1D-CPU@@S
systme
UC seule UC Ver. 2.0
(N lot 031215 indiqu)

Srie UC CJ1 CJ1G-CPU@@


CJ
UC pr-ver. 2.0.

UC CJ1-H CJ1@-CPU@@H
UC s Ver. 2.0
UC pr-ver. 2.0.
(N lot 031105 indiqu)

UC CJ1M except CJ1M-CPU@@


modles
conomiques UC pr-ver. 2.0. UC s Ver. 2.0
(N lot 031105 indiqu)

UC CJ1M modles CJ1M-CPU11/21


conomiques
Carte Ver. 2.0
(N lot 031002 indiqu)

Logi- CX-Programmer WS02-CXPC1-EV@


ciel de
sup- Ver.3.2 Ver.3.3 Ver.4.0
port

ix
Fonction prise en charge par la version
UC CS1-H (CS1@-CPU@@H)
Fonction Version de carte
UC pr-ver. 2.0. UC Ver. 2.0
Tlchargement de tches individuelles --- OK
Protection de lecture amliore grce aux mots de passe --- OK
Protection en criture partir de commandes FINS envoyes aux UCs --- OK
via le rseau
Connexions au rseau en ligne sans table d'E/S --- OK
Communications via 8 niveaux de rseau maximum --- OK
Connexion en ligne aux API via les IHM srie NS OK partir du numro OK
de lot 030201
Paramtrage des mots du premier emplacement OK jusqu' 8 groupes OK jusqu' 64 groupes
Transferts automatiques sous alimentation sans fichier de paramtres --- OK
Dtection automatique de la mthode d'affectation d'E/S lors du --- ---
transfert automatique la mise sous tension
Heures de dbut/fin de fonctionnement --- OK
Nouvelles MILH, MILR, MILC --- OK
instructions pour =DT, <>DT, <DT, <=DT, >DT, >=DT --- OK
l'application
BCMP2 --- OK
GRY OK partir du numro OK
de lot 030201
TPO --- OK
DSW, TKY, HKY, MTR, 7SEG --- OK
EXPLT, EGATR, ESATR, ECHRD, ECHWR --- OK
Lecture/criture de cartes rseau avec IORD/IOWR OK partir du numro OK
de lot 030418
PRV2 --- ---

x
UC CS1D
Fonction UC CS1D pour systme UC en duplex UC CS1D pour
(CS1D-CPU@@H) systme d'UC
seule
(CS1D-CPU@@S)
UC pr-ver. 1.1. UC Ver. 1.1 UC Ver. 2.0
Fonctions sur UC en duplex OK OK ---
les UC CS1D Remplacement de la carte en OK OK OK
uniquement ligne
Cartes d'alimentation doubles OK OK OK
Carte Controller Link double OK OK OK
Carte Ethernet double --- OK OK
Tlchargement de tches individuelles --- --- OK
Protection de lecture amliore grce aux --- --- OK
mots de passe
Protection en criture partir de commandes --- --- OK
FINS envoyes aux UCs via le rseau
Connexions au rseau en ligne sans table --- --- OK
d'E/S
Communications via 8 niveaux de rseau --- --- OK
maximum
Connexion en ligne aux API via les IHM --- --- OK
srie NS
Paramtrage des mots du premier --- --- OK jusqu'
emplacement 64 groupes
Transferts automatiques sous alimentation --- --- OK
sans fichier de paramtres
Dtection automatique de la mthode --- --- ---
d'affectation d'E/S lors du transfert
automatique la mise sous tension
Heures de dbut/fin de fonctionnement --- OK OK
Nouvelles MILH, MILR, MILC --- --- OK
instructions =DT, <>DT, <DT, <=DT, >DT, --- --- OK
pour >=DT
l'application
BCMP2 --- --- OK
GRY --- --- OK
TPO --- --- OK
DSW, TKY, HKY, MTR, 7SEG --- --- OK
EXPLT, EGATR, ESATR, --- --- OK
ECHRD, ECHWR
Lecture/criture de cartes --- --- OK
rseau avec IORD/IOWR
PRV2 --- --- ---

xi
UC CJ1-H/CJ1M
Fonction UC CJ1-H UC CJ1M, UC CJ1M,
(CJ1@-CPU@@H) except modles conomiques modles
(CJ1M-CPU@@) conomiques
(CJ1M-
CPU11/21)
UC pr-ver. UC Ver. 2.0 UC pr-ver. UC Ver. 2.0 UC Ver. 2.0
2.0. 2.0.
Tlchargement de tches --- OK --- OK OK
individuelles
Protection de lecture amliore --- OK --- OK OK
grce aux mots de passe
Protection en criture partir --- OK --- OK OK
de commandes FINS envoyes
aux UCs via le rseau
Connexions au rseau en ligne OK, mais OK OK, mais OK OK
sans table d'E/S uniquement si uniquement si
l'affectation de l'affectation de
tables d'E/S est tables d'E/S est
active sous active sous
tension tension
Communications via 8 niveaux OK jusqu' OK jusqu' OK jusqu' OK jusqu' OK jusqu'
de rseau maximum 8 groupes 64 groupes 8 groupes 64 groupes 64 groupes
Connexion en ligne aux API via OK partir du OK OK partir du OK OK
les IHM srie NS numro de lot numro de lot
030201 030201
Paramtrage des mots du --- OK --- OK OK
premier emplacement
Transferts automatiques sous --- OK --- OK OK
alimentation sans fichier de
paramtres
Dtection automatique de la --- OK --- OK OK
mthode d'affectation d'E/S lors
du transfert automatique la
mise sous tension
Heures de dbut/fin de --- OK --- OK OK
fonctionnement
Nouvelles MILH, MILR, MILC --- OK --- OK OK
instruc- =DT, <>DT, <DT, --- OK --- OK OK
tions pour <=DT, >DT, >=DT
l'applica-
tion BCMP2 --- OK OK OK OK
GRY OK partir du OK OK partir du OK OK
numro de lot numro de lot
030201 030201
TPO --- OK --- OK OK
DSW, TKY, HKY, --- OK --- OK OK
MTR, 7SEG
EXPLT, EGATR, --- OK --- OK OK
ESATR, ECHRD,
ECHWR
Lecture/criture de --- OK --- OK OK
cartes rseau avec
IORD/IOWR
PRV2 --- --- --- OK, mais OK, mais
uniquement uniquement
pour les pour les
modles avec modles avec
E/S intgres E/S intgres

xii
Numros de version et priphriques de programmation
Il faut utiliser CX-Programmer version 4.0 ou ultrieure pour permettre
l'utilisation des fonctions ajoutes pour l'UC Ver. 2.0. Les tableaux suivants
montrent la relation entre les versions de la carte et les versions de CX-
Programmer.
Numros de version et priphriques de programmation
UC Fonctions CX-Programmer Console
Ver. 3.2 Ver. 3.3 Ver. 4.0 de pro-
ou ant- ou ult- gramma-
rieure rieure tion
UC CJ1M, modles Fonctions ajoutes Nouvelles fonctions --- --- OK Pas de
conomiques, pour la version 2.0 de utilises restrictions
carte ver. 2.0 la carte Nouvelles fonctions non --- OK OK
utilises
UC CS1-H, CJ1-H et Fonctions ajoutes Nouvelles fonctions --- --- OK
CJ1M except modles pour la version 2.0 de utilises
conomiques, la carte Nouvelles fonctions non OK OK OK
carte Ver. 2.0 utilises
UC CS1D pour systme Fonctions ajoutes Nouvelles fonctions --- --- OK
UC seule, carte ver. 2.0 pour la version 2.0 de utilises
la carte Nouvelles fonctions non
utilises
UC CS1D pour systme Fonctions ajoutes Nouvelles fonctions --- --- OK
UC en duplex, pour la version 1.1 de utilises
carte ver. 1 la carte Nouvelles fonctions non OK OK OK
utilises

Remarque Comme indiqu ci-dessus, il n'est pas ncessaire d'effectuer une mise
niveau vers CX-Programmer 4.0 tant que les fonctions ajoutes pour les
cartes version 2.0 ou 1.1 ne sont pas utilises.
Rglage du type de La version de la carte n'affecte pas le rglage effectu pour le type de
priphrique priphrique avec CX-Programmer. Slectionnez le type de priphrique
comme illustr dans le tableau suivant sans tenir compte de la version de
l'UC.
Srie Groupe d'UC Modle d'UC Rglage du type de priphrique
dans CX-Programmer Ver. 4.0 ou
ultrieure
Srie CS UC CS1-H CS1G-CPU@@H CS1G-H
CS1H-CPU@@H CS1H-H
UC CS1D pour systmes d'UC en duplex CS1D-CPU@@H CS1D-H (ou CS1H-H)
UC CS1D pour systmes UC seule CS1D-CPU@@S CS1D-S
Srie CJ UC CJ1-H CJ1G-CPU@@H CJ1G-H
CJ1H-CPU@@H CJ1H-H
UC CJ1M CJ1M-CPU@@ CJ1M

xiii
Rsolution des problmes dus aux versions des cartes dans CX-Programmer
Problme Cause Solution
Vous avez essay d'utiliser Vrifiez le programme ou
CX-Programmer version 4.0 ou remplacez l'UC tlcharge
ultrieure pour tlcharger vers par une UC version 2.0 ou
des UC pr-ver 2.0 un ultrieure.
programme contenant des
instructions prises en charge
Aprs l'affichage du message ci-dessus, une erreur de uniquement par des UC Version
compilation apparat dans l'onglet Compile de la 2.0 ou ultrieure.
fentre Output.
Vous avez essay d'utiliser Vrifiez les paramtres dans la
CX-Programmer 4.0 ou suprieur configuration de l'API ou
pour tlcharger vers des UC remplacez l'UC tlcharge
pr-ver 2.0 une configuration de par une UC version 2.0 ou
l'API contenant des paramtres ultrieure.
pris en charge uniquement par
des UC Version 2.0 ou ultrieure
(c.--d. non dfinies sur leurs
valeurs par dfaut).
???? apparat dans un programme transfr d'un Vous avez utilis CX-Program- Il est impossible de
API vers CX-Programmer. mer 3.3 ou infrieur pour tl- tlcharger les nouvelles
charger un programme conte- instructions l'aide de
nant des instructions prises en CX-Programmer 3.3 ou
charge uniquement par les UC infrieur. Utilisez CX-
version 2.0 ou ultrieure partir Programmer version 4.0 ou
d'une UC version 2.0 ou ult- ultrieure.
rieure.

xiv
SOMMARE
PRECAUTIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xix
1 Public vis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx
2 Prcautions gnrales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx
3 Prcautions en matire de scurit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx
4 Prcautions lies l'environnement d'utilisation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxii
5 Prcautions en matire d'application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxii
6 Conformit aux directives CE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvi

CHAPITRE 1
Fonctionnement de l'UC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1-1 Configuration initiale (UC CS1 uniquement) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1-2 Utilisation de l'horloge interne (UC CS1 uniquement). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1-3 Structure interne de l'UC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1-4 Modes de fonctionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1-5 Programmes et tches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1-6 Description des tches. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

CHAPITRE 2
Programmation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2-1 Concepts de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2-2 Prcautions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
2-3 Vrification des programmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

CHAPITRE 3
Fonction des instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
3-1 Instructions d'entre des squence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
3-2 Instructions de sortie des squences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3-3 Instructions de commande des squences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
3-4 Instructions de temporisation et de compteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
3-5 Instructions de comparaison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
3-6 Instructions de dplacement de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
3-7 Instructions de dcalage de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
3-8 Instructions d'incrmentation/dcrmentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
3-9 Instructions mathmatiques symboles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
3-10 Instructions de conversion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
3-11 Instructions logiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
3-12 Instructions mathmatiques spciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
3-13 Instructions mathmatiques virgule flottante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
3-14 Instructions virgule flottante double prcision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
3-15 Instructions de traitement de donnes de tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
3-16 Instructions de contrle de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
3-17 Instructions de sous-programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
3-18 Instructions de traitement d'interruption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
3-19 Instructions de compteur grande vitesse et de sortie d'impulsion
(CJ1M-CPU21/22/23 uniquement) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
3-20 Instructions de pas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
3-21 Instructions des cartes d'E/S standard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
3-22 Instructions de communications srie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
3-23 Instructions rseaux. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
3-24 Instructions de mmoire de fichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
3-25 Instructions d'affichage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

xv
SOMMAIRE
3-26 Instructions de temporisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
3-27 Instructions de dbogage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
3-28 Instructions de diagnostic d'erreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
3-29 Autres instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
3-30 Instructions de programmation de bloc. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
3-31 Instructions de traitement des chanes de texte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
3-32 Instructions de contrle des tches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

CHAPITRE 4
Tches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
4-1 Caractristiques des tches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
4-2 Utilisation de tches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
4-3 Tche d'interruption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
4-4 Fonctionnement du priphrique de programmation pour les tches . . . . . . . . . . . . . . . . . . 187

CHAPITRE 5
Fonctions de mmoire de fichiers . . . . . . . . . . . . . . . . . . . . . 189
5-1 Mmoire de fichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
5-2 Traitement des fichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
5-3 Utilisation de la mmoire de fichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240

CHAPITRE 6
Fonctions avances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
6-1 Temps de cycle et traitement grande vitesse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
6-2 Registres d'index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
6-3 Communications en srie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
6-4 Modification du mode de mise jour de la PV de temporisation/compteur. . . . . . . . . . . . . 291
6-5 Utilisation d'une interruption programme comme temporisation de haute prcision
(CJ1M uniquement) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
6-6 Paramtres du dmarrage et maintenance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
6-7 Fonctions de diagnostic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
6-8 Modes de traitement UC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
6-9 Mode prioritaire du traitement des priphriques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
6-10 Fonctionnement sans batterie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
6-11 Autres fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330

CHAPITRE 7
Transfert du programme, essais de fonctionnement
et dbogage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
7-1 Transfert du programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
7-2 Essais de fonctionnement et dbogage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334

Appendices
A Tableaux de comparaison des API : API srie CJ, srie CS, C200HG/HE/HX,
CQM1H, CVM1 et srie CV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
B Modifications par rapport aux systmes Host Link prcdents . . . . . . . . . . . . . . . . . . . . . . 367

Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
Historique des rvisions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
xvi
A propos de ce manuel :
Ce manuel dcrit la programmation des UC pour les automates programmables (API) srie CS/CJ et
comprend les chapitres prsents la page suivante. Les sries CS et CJ sont subdivises comme
illustr dans le tableau suivant.
Carte Srie CS Srie CJ
UC UC CS1-H : CS1H-CPU@@H UC CJ1-H : CJ1H-CPU@@H
CS1G-CPU@@H CJ1G-CPU@@H
UC CS1 : CS1H-CPU@@-EV1 UC CJ1 : CJ1G-CPU@@-EV1
CS1G-CPU@@-EV1 UC CJAM : CJ1M-CPU@@
UC CS1D :
UC CS1D pour systme double UC :
CS1D-CPU@@H
UC CS1D pour systme simple UC :
CS1D-CPU@@S
UC de process CS1D :
CS1D-CPU@@P
Cartes d'E/S Cartes d'E/S standard srie CS Cartes d'E/S standard srie CJ
standard
Cartes d'E/S Cartes d'E/S spciales srie CS Cartes d'E/S spciales srie CJ
spciales
Cartes rseau Cartes rseau srie CS Cartes rseau srie CJ
Cartes Cartes d'alimentation srie CS Cartes d'alimentation srie CJ
d'alimentation

Veuillez lire ce manuel et tous les manuels rpertoris dans le tableau suivant et vous assurer d'avoir
bien compris les informations qu'ils contiennent avant d'essayer d'installer ou d'utiliser des UC srie
CJ dans un systme API.
Ce manuel contient les chapitres suivants :
Chapitre 1 dcrit la structure et le fonctionnement de base de l'UC ;
Chapitre 2 dcrit les informations de base ncessaires pour crire, vrifier et saisir des programmes ;
Chapitre 3 dcrit les instructions utiliser pour crire des programmes utilisateur ;
Chapitre 4 dcrit le fonctionnement des tches ;
Chapitre 5 dcrit les fonctions utilises pour grer la mmoire de fichiers ;
Chapitre 6 fournit des informations plus dtailles sur les fonctions avances : traitement grande
vitesse/temps de cycle, registres d'index, communications srie, dmarrage et maintenance,
diagnostic et dbogage, priphriques de programmation et temps de rponse d'entre de la carte
d'E/S standard CJ ;
Chapitre 7 dcrit les processus utiliss pour transfrer le programme vers l'UC ainsi que les fonctions
utiliser pour tester et dboguer le programme.
Les Annexes fournissent une comparaison des sries CS/CJ, et indiquent les restrictions d'utilisation
des cartes d'E/S spciales C200H ainsi que les modifications apportes aux systmes Host Link.

xvii
A propos de ce manuel, suite
Nom N cat. Table des matires
Srie SYSMAC CS/CJ W394 Ce manuel dcrit la programmation et les autres
CS1G/H-CPU@@-EV1, CS1G/H-CPU@@H, modes d'utilisation des fonctions des API srie
CS1D-CPU@@H, CS1D-CPU@@S, CJ1G-CPU@@, CS/CJ. (Ce manuel)
CJ1G/H-CPU@@H, CJ1M-CPU@@
Manuel de programmation des automates programmables
Srie SYSMAC CS W339 Prsente les grandes lignes et dcrit la conception,
CS1G/H-CPU@@-EV1, CS1G/H-CPU@@H l'installation, la maintenance et autres oprations de
Manuel d'utilisation des automates programmables base des API srie CS.
Srie SYSMAC CJ W393 Prsente les grandes lignes et dcrit la conception,
CJ1G-CPU@@, CJ1G/H-CPU@@H, CJ1M-CPU@@ l'installation, la maintenance et autres oprations de
Manuel d'utilisation des automates programmables base des API srie CS.
Srie SYSMAC CJ W395 Dcrit les fonctions des E/S intgres des UC
CJ1M-CPU21/22/23 CJ1M.
Manuel d'utilisation des fonctions E/S intgres
Srie SYSMAC CS W405 Prsente les grandes lignes et dcrit la conception,
UC CS1D-CPU@@H l'installation, la maintenance et autres oprations
UC CS1D-CPU@@S standard d'un systme duplex bas sur les UC
Carte duplex CS1D-DPL01 CS1D.
Carte d'alimentation CS1D-PA207R
Manuel d'utilisation du systme duplex
Srie SYSMAC CS/CJ W340 Dcrit les instructions de programmation du schma
CS1G/H-CPU@@-EV1, CS1G/H-CPU@@H, contact pris en charge par les API srie CS/CJ.
CS1D-CPU@@H, CS1D-CPU@@S, CJ1G-CPU@@,
CJ1G/H-CPU@@H, CJ1M-CPU@@Manuel de rfrence des
instructions des automates programmables
Srie SYSMAC CS/CJ W341 Fournit des informations sur la programmation et
CQM1H-PRO01-E, C200H-PRO27-E, CQM1-PRO01-E l'utilisation des API srie CS/CJ l'aide d'une
Manuel d'utilisation des consoles de programmation console de programmation.
Srie SYSMAC CS/CJ W342 Dcrit la srie C (Host Link) et les commandes de
CS1G/H-CPU@@-EV1, CS1G/H-CPU@@H, communication FINS utilises avec les API srie
CS1D-CPU@@H, CS1D-CPU@@S, CJ1G-CPU@@, CS/CJ.
CJ1G/H-CPU@@H, CJ1M-CPU@@, CS1W-SCB21-V1/41-V1,
CS1W-SCU21-V1, CJ1W-SCU21/41
Manuel de rfrence des commandes de communication
SYSMAC WS02-CXP@@-E W414 Fournit des informations sur l'utilisation du
Manuel d'utilisation du CX-Programmer version 3.@ CX-Programmer, un priphrique de
SYSMAC WS02-CXP@@-E W425 programmation qui prend en charge les API srie
Manuel d'utilisation du CX-Programmer version 4.@ CS/CJ et CX-Net prsent dans CX-Programmer.
Srie SYSMAC CS/CJ W336 Dcrit l'utilisation des cartes de communications
CS1W-SCB21-V1/41-V1, CS1W-SCU21-V1, srie en vue d'effectuer des communications
CJ1W-SCU21/41 srie avec des priphriques externes, y compris
Manuel d'utilisation des cartes de communications srie l'utilisation des protocoles systme standards des
produits OMRON.
SYSMAC WS02-PSTC1-E W344 Dcrit l'utilisation du CX-Protocol pour crer des
Manuel d'utilisation du CX-Protocol macros protocole en tant que squences de
communication pour communiquer avec des
priphriques externes.

!AVERTISSEMENT Une lecture partielle ou une mauvaise comprhension des informations contenues
dans ce manuel peut provoquer des dysfonctionnements ou endommager les appa-
reils, et prsente des risques de blessures corporelles voire un danger de mort. Veuillez
lire attentivement chaque chapitre dans son intgralit. Il est essentiel de bien com-
prendre les informations de chaque chapitre et des chapitres qui lui sont associs avant
d'entamer toute procdure ou opration.

xviii
PRECAUTIONS
Ce chapitre prsente les prcautions gnrales prendre lors de l'utilisation des automates programmables (API) sries CS/
CJ et des priphriques associs.
Les informations contenues dans cette section sont importantes pour garantir une utilisation fiable et sans danger
des automates programmables. Avant d'essayer de configurer ou de faire fonctionner un systme d'API, vous devez
lire cette section et comprendre les informations qu'elle renferme.

1 Public vis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx
2 Prcautions gnrales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx
3 Prcautions en matire de scurit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xx
4 Prcautions lies l'environnement d'utilisation. . . . . . . . . . . . . . . . . . . . . . . xxii
5 Prcautions en matire d'application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxii
6 Conformit aux directives CE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvi
6-1 Directives applicables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvi
6-2 Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvi
6-3 Conformit aux directives CE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxvii
6-4 Mthodes de rduction des parasites des sorties relais. . . . . . . . . . . xxvii

xix
Public vis 1

1 Public vis
Ce manuel est destin aux personnes suivantes, qui doivent avoir des
connaissances en matire de systmes lectriques (ingnieur lectricien ou
quivalent).
Personnel charg d'installer des systmes d'automatisme.
Personnel charg de concevoir des systmes d'automatisme.
Personnel charg de la gestion de sites et de systmes d'automatisme.

2 Prcautions gnrales
L'utilisateur doit se servir du produit conformment aux spcifications de
performances nonces dans les manuels d'utilisation.
Avant d'utiliser ce produit dans des conditions non dcrites dans ce manuel ou
d'appliquer le produit des systmes de contrle nuclaire, des systmes
ferroviaires, des systmes aronautiques, des vhicules, des systmes de
combustion, des quipements mdicaux, des machines de jeu, des
quipements de scurit et d'autres systmes, machines et quipements
susceptibles d'avoir des consquences graves sur la vie et la proprit d'autrui
en cas d'utilisation inadquate, demandez conseil votre revendeur OMRON.
Vrifiez que les caractristiques nominales et les performances du produit
sont suffisantes pour les systmes, machines et quipements, et n'oubliez
pas de munir les systmes, machines et quipements de doubles
mcanismes de scurit.
Ce manuel fournit des informations sur la programmation et l'utilisation de la
carte. Vous devez absolument lire ce manuel avant d'essayer d'utiliser la carte
et le conserver porte de main pour toute rfrence ultrieure pendant le
fonctionnement du systme.
!AVERTISSEMENT Il est extrmement important qu'un API et toutes les cartes API soient utiliss
aux fins prvues et dans les conditions spcifies, en particulier lorsqu'il s'agit
d'applications susceptibles d'affecter directement ou indirectement la vie de
l'homme. Avant d'utiliser un systme d'API dans le cadre des applications
mentionnes ci-dessus, vous devez imprativement consulter votre
reprsentant OMRON.

3 Prcautions en matire de scurit


!AVERTISSEMENT L'UC met jour les E/S mme lorsque le programme est l'arrt (c'est--dire,
mme en mode PROGRAM). Contrlez les conditions de scurit avant de
modifier l'tat de toute partie de mmoire rserve aux cartes d'E/S, aux
cartes d'E/S spciales ou aux cartes rseau. Tout changement des donnes
assignes une carte risque de provoquer un fonctionnement inattendu des
charges connectes la carte. Chacune des oprations suivantes peut
provoquer un changement de l'tat de la mmoire.
Transfert de donnes de la mmoire E/S vers l'UC depuis un priphrique
de programmation.
Modification des valeurs actuelles de la mmoire depuis un priphrique
de programmation.
Configuration/rinitialisation force des bits depuis un priphrique de
programmation.
Transfert de fichiers de la mmoire E/S partir d'une carte mmoire ou
de la mmoire de fichiers EM vers l'UC.
Transfert de la mmoire E/S depuis un ordinateur hte ou un autre API
sur un rseau.
!AVERTISSEMENT N'essayez jamais de dmonter une carte alors qu'elle est sous tension. Vous
pourriez en effet recevoir une dcharge lectrique.

xx
Prcautions en matire de scurit 3

!AVERTISSEMENT Ne touchez jamais les bornes ou borniers pendant que le systme est sous
tension. Vous pourriez en effet recevoir une dcharge lectrique.
!AVERTISSEMENT N'essayez jamais de dmonter, de rparer ou de modifier une unit
quelconque sous peine de provoquer un dysfonctionnement, un incendie ou
une dcharge lectrique.
!AVERTISSEMENT Prvoyez des mesures de scurit pour les circuits externes (extrieurs
l'automate programmable), y compris dans les articles suivants, afin de
garantir la scurit du systme si une anomalie intervient la suite d'un
dysfonctionnement de l'API ou d'un autre facteur externe affectant le
fonctionnement de l'API. Le non-respect de cet avertissement pourrait
provoquer des accidents graves.
Des circuits d'arrt d'urgence, des circuits verrouillage, des
interrupteurs de fin de course et autres mesures de scurit similaires
doivent tre utiliss avec tous les circuits de contrle externes.
L'API dsactive toutes les sorties lorsque sa fonction de diagnostic
automatique dtecte une erreur ou qu'une instruction d'alarme de
dfaillance grave (FALS) est excute. Pour viter de telles erreurs, des
mesures de scurit externes doivent tre prises pour assurer la scurit
du systme.
Les sorties de l'API peuvent rester sur ON ou sur OFF en raison de
l'encrassement ou de la surchauffe des relais de sortie ou de la
destruction des transistors de sortie. Pour se prmunir contre ce type de
problmes, des mesures de scurit externes doivent tre prises pour
assurer la scurit du systme.
Lorsque la sortie de 24 Vc.c. (alimentation lectrique de service de l'API)
est surcharge ou court-circuite, il peut y avoir une baisse de tension
entranant une dsactivation des sorties. Pour se prmunir contre ce type
de problmes, des mesures de scurit externes doivent tre prises pour
assurer la scurit du systme.

!Attention Vrifiez la scurit avant de transfrer des fichiers de donnes stocks dans
la mmoire de fichiers (carte mmoire ou mmoire de fichiers EM) vers la
zone E/S (CIO) de l'UC l'aide d'un outil priphrique. Sinon, les
priphriques relis la carte de sortie risquent de connatre des
dysfonctionnements indpendamment du mode d'opration de l'UC.

!Attention Des mesures de scurit doivent tre prises par le client pour garantir la
scurit dans le cas de signaux incorrects, manquants ou anormaux dus
une rupture des lignes de signaux, des interruptions momentanes de
l'alimentation ou d'autres causes. Un fonctionnement anormal pourrait
provoquer des accidents graves.

!Attention Les UC CS1-H, CJ1-H, CJ1M et CS1D enregistrent automatiquement le


programme utilisateur ainsi que les donnes des paramtres dans la mmoire
flash lorsque ces donnes sont crites sur l'UC. Cependant, la mmoire E/S
(y compris les zones DM, EM et HR) n'est pas sauvegarde dans la mmoire
flash. Il est possible de conserver les zones DM, EM et HR en cas
d'interruption d'alimentation grce une batterie. En cas d'erreur de batterie,
il se pourrait que le contenu de ces zones ne soit pas exact aprs une
interruption d'alimentation. Si le contenu des zones DM, EM et HR sert
contrler les sorties externes, vitez des sorties inadquates chaque fois que
le drapeau d'erreur de batterie (A40204) est activ.

!Attention N'excutez une dition en ligne qu'aprs vous tre assur que cette opration
n'aura pas d'effets nfastes par suite de l'allongement du temps de cycle.
Sinon, les signaux d'entre risquent d'tre illisibles.

!Attention Assurez-vous de la scurit du nud de destination avant de transfrer un


programme vers un autre nud ou de modifier le contenu de la zone de
mmoire E/S. Excuter l'une de ces oprations sans vrifier la scurit risque
de provoquer des blessures.
xxi
Prcautions lies l'environnement d'utilisation 4

!Attention Serrez les vis du bornier de la carte d'alimentation c.a. en respectant le


couple spcifi dans le manuel d'utilisation. Des vis mal serres risquent de
provoquer une surchauffe ou un dysfonctionnement.

!Attention Ne touchez pas la carte d'alimentation alors qu'elle est sous tension ou juste
aprs la mise hors tension. Elle risque d'tre chaude et de vous brler.

!Attention Faites attention lorsque vous connectez des ordinateurs personnels ou


d'autres priphriques un API sur lequel est monte une unit non isole
(CS1W-CLK12/52(-V1) ou CS1W-ETN01) connecte une alimentation
externe. Si le ct 24 V de l'alimentation externe est raccord la terre et que
le ct 0 V de l'appareil priphrique l'est aussi, vous produirez un court-
circuit. Lorsque vous connectez un appareil priphrique ce type d'API,
vous pouvez soit raccorder la terre le ct 0 V de l'alimentation externe, soit
ne pas raccorder du tout la terre l'alimentation externe.

4 Prcautions lies l'environnement d'utilisation


!Attention N'utilisez pas le systme de contrle dans les endroits suivants :

Endroits exposs la lumire directe du soleil.


Endroits soumis des tempratures ou des taux d'humidit en dehors
des valeurs indiques dans les spcifications.
Endroits soumis la condensation due des variations importantes de
tempratures.
Endroits en contact avec des gaz corrosifs ou inflammables.
Endroits soumis la poussire (en particulier, la limaille de fer) ou au
contact de sels.
Endroits o l'on utilise de l'eau, de l'huile ou des produits chimiques.
Endroits soumis des chocs ou des vibrations importantes.

!Attention Prenez les mesures de protection appropries et suffisantes lorsque vous


installez des systmes dans les endroits suivants :

Endroits soumis l'lectricit statique ou d'autres formes de parasites.


Endroits soumis des champs lectromagntiques intenses.
Endroits susceptibles d'tre exposs la radioactivit.
Endroits proches de sources d'alimentation.

!Attention L'environnement d'utilisation du systme d'API peut affecter fortement sa


longvit et sa fiabilit. Un environnement d'utilisation hostile peut provoquer
des dysfonctionnements, des dfaillances et d'autres problmes imprvisibles
au niveau du systme API. Vrifiez bien qu'au moment de l'installation,
l'environnement d'utilisation est conforme aux conditions spcifies et qu'il
prsente toujours les mmes conditions tout au long de la dure de vie du
systme.

5 Prcautions en matire d'application


Observez les prcautions suivantes lorsque vous utilisez le systme API.
Vous devez utiliser CX-Programmer (logiciel de programmation qui
fonctionne sous Windows) si vous devez programmer plusieurs tches.
La console de programmation peut uniquement tre utilise pour
programmer une seule tche cyclique et des tches d'interruption. Elle
peut toutefois tre utilise pour diter des programmes multitches crs
initialement avec CX-Programmer.

xxii
Prcautions en matire d'application 5

!AVERTISSEMENT Suivez toujours ces prcautions. Le non-respect des prcautions suivantes


pourrait entraner des blessures graves, voire mortelles.
Effectuez toujours une mise la terre de 100 ou moins lors de
l'installation des cartes. L'absence d'une mise la terre de 100 ou
moins risque de provoquer des dcharges lectriques.
Une mise la terre de 100 ou moins doit tre installe lors du court-
circuitage des bornes GR et LG sur la carte d'alimentation.
Mettez toujours l'API hors tension avant de tenter d'effectuer l'une des
oprations suivantes. Si vous ne le faites pas, vous risquez de provoquer
un dysfonctionnement ou de recevoir une dcharge lectrique.
Montage ou dmontage des cartes d'alimentation, des cartes d'E/S,
des UC ou des autres cartes.
Assemblage des cartes.
Rglage des interrupteurs DIO et autres commutateurs rotatifs.
Connexion des cbles ou cblage du systme.
Connexion ou dconnexion des connecteurs.

!Attention Le non-respect des prcautions suivantes peut provoquer un dysfonctionne-


ment de l'API ou du systme ou endommager l'API ou les cartes API. Suivez
toujours ces prcautions.

Les donnes du programme utilisateur et de la zone de paramtre des


UC CS1-H, CS1D, CJ1-H et CJ1M sont sauvegardes dans la mmoire
flash intgre. Le voyant BKUP s'allume sur le devant de l'UC pendant
que l'opration de sauvegarde est en cours. Ne pas mettre l'UC hors
tension lorsque le voyant BKUP est allum. Les donnes ne seront pas
sauvegardes si l'alimentation est coupe.
Lorsque vous utilisez une UC CS1 srie CS la premire fois, installez la
batterie CS1W-BAT1 fournie avec la carte et effacez toutes les zones de
mmoire partir d'un priphrique de programmation avant de
commencer programmer. Lorsque vous utilisez l'horloge interne, mettez
le systme sous tension aprs avoir install la batterie et rglez l'horloge
partir d'un priphrique de programmation ou l'aide de l'instruction
DATE(735). L'horloge ne dmarrera pas tant que l'heure n'aura pas t
rgle.
Lorsque l'UC sort de l'usine, l'API est configur de manire ce que l'UC
dmarre dans le mode de fonctionnement rgl sur le commutateur de
mode de la console de programmation. Lorsque aucune console de
programmation n'est connecte, une UC CS1 srie CS dmarrera en
mode PROGRAM mais une UC CS1-H, CS1D, CJ1, CJ1-H ou CJ1M
dmarrera en mode RUN et commencera fonctionner immdiatement.
Que ce soit exprs ou pas, vitez de lancer le fonctionnement sans tre
sr de sa scurit.
Lorsque vous crez un fichier AUTOEXEC.IOM depuis un priphrique
de programmation (console de programmation ou CX-Programmer) pour
transfrer automatiquement des donnes au dmarrage, configurez la
premire adresse en criture sur D20000 et assurez-vous que la taille
des donnes crites n'excde pas la taille de la zone DM. Lorsque le
fichier de donnes est lu depuis la carte mmoire au dmarrage, les
donnes sont crites sur l'UC en commenant par l'adresse D20000 et
ce, mme si une autre adresse a t configure lors de la cration du
fichier AUTOEXEC.IOM. De plus, si la zone DM est sature (ce qui est
possible lorsque CX-Programmer est utilis), les donnes restantes sont
crites sur la zone EM.

xxiii
Prcautions en matire d'application 5

Mettez toujours l'API sous tension avant de brancher le systme de


contrle. Si l'API est mis sous tension aprs le systme de contrle, des
erreurs temporaires risquent de se produire au niveau des signaux du
systme de contrle car les bornes de sortie des cartes de sorties c.c. et
des autres cartes sont momentanment actives lors de la mise sous
tension de l'API.
Des mesures de scurit doivent tre prises par le client pour garantir la
scurit dans le cas o les sorties de cartes de sorties restent sur ON la
suite d'un dysfonctionnement interne qui peut survenir au niveau des
relais, des transistors et des autres lments.
Des mesures de scurit doivent tre prises par le client pour garantir la
scurit dans le cas de signaux incorrects, manquants ou anormaux dus
une rupture des lignes de signaux, des interruptions momentanes de
l'alimentation ou d'autres causes.
Des circuits verrouillage, des interrupteurs de fin de course et des
mesures de scurit similaires dans les circuits externes (c'est--dire,
extrieurs l'automate programmable) doivent tre fournis par le client.
Ne dbranchez pas l'API pendant le transfert de donnes. Plus
particulirement, ne dbranchez pas l'alimentation lors de la lecture ou de
l'criture d'une carte mmoire. De mme, ne retirez pas la carte mmoire
lorsque le voyant BUSY est allum. Pour retirer une carte mmoire,
appuyez d'abord sur le commutateur d'alimentation de la carte mmoire
et attendez que le voyant BUSY s'teigne avant de la retirer.
Si le bit de maintien E/S est sur ON, les sorties de l'API ne sont pas
dsactives et conservent leur tat prcdent lorsque l'API passe du
mode RUN ou MONITOR au mode PROGRAM. Assurez-vous que les
charges externes ne produisent pas de situations dangereuses lorsque
ceci survient. (Lorsque le fonctionnement s'arrte la suite d'une erreur
fatale, y compris celles dues l'instruction FALS(007), toutes les sorties
de la carte de sortie passent OFF et seul l'tat des sorties internes est
conserv.)
Le contenu des zones DM, EM et HR de l'UC est sauvegard grce une
batterie. Si la tension de la batterie diminue, ces donnes risquent d'tre
perdues. Utilisez des contre-mesures dans le programme en utilisant le
drapeau d'erreur de batterie (A40204) pour rinitialiser les donnes ou
pour prendre d'autres dispositions en cas de diminution de la tension de
la batterie.
Si la tension d'alimentation est de 200 240 Vc.a. avec un API srie CS,
enlevez toujours le cavalier mtallique des borniers slecteurs de tension
sur la carte d'alimentation (except pour les cartes d'alimentation
caractristiques techniques tendues). Si le cavalier mtallique n'est pas
enlev et que l'alimentation est de 200 240 Vc.a., le produit sera dtruit.
Utilisez toujours la tension d'alimentation spcifie dans les manuels
d'utilisation. Une tension incorrecte peut provoquer un dysfonctionnement
ou une surchauffe.
Prenez les mesures appropries pour vous assurer que l'alimentation
indique est conforme la tension et la frquence nominales. Faire
particulirement attention aux lieux o l'alimentation lectrique est instable.
Une alimentation incorrecte peut provoquer un dysfonctionnement.
Installez des disjoncteurs externes et prenez d'autres mesures de
scurit contre d'ventuels courts-circuits au niveau du cblage externe.
Des mesures de scurit insuffisantes contre les courts-circuits peuvent
provoquer une surchauffe.
N'appliquez jamais une tension suprieure la tension nominale d'entre
aux cartes d'entres. Une tension excessive peut provoquer une
surchauffe.
N'appliquez pas de tension et ne connectez pas de charges aux cartes de
sorties qui dpassent la capacit maximale de commutation. Une tension
excessive peut provoquer une surchauffe.
Pendant les essais de tension de rgime, dbranchez la prise de terre
fonctionnelle. Sinon, le systme pourrait subir une surchauffe.
xxiv
Prcautions en matire d'application 5

Installez la carte correctement, comme indiqu dans les manuels


d'utilisation. Une installation incorrecte de la carte peut provoquer un
dysfonctionnement.
Dans le cas des API srie CS, assurez-vous que toutes les vis de
montage de la carte et du rack arrire sont serres au couple spcifi
dans les manuels correspondants. Un serrage un couple incorrect peut
provoquer un dysfonctionnement.
Assurez-vous que toutes les vis des bornes et des connecteurs de cble
sont serres au couple spcifi dans les manuels correspondants. Un
serrage un couple incorrect peut provoquer un dysfonctionnement.
Laissez l'tiquette sur la carte pendant le cblage. Le retrait de l'tiquette
peut provoquer un dysfonctionnement si les corps trangers pntrent
dans la carte.
Lorsque le cblage est termin, enlevez l'tiquette pour assurer une
bonne dissipation de la chaleur. Laisser l'tiquette peut provoquer un
dysfonctionnement.
Utilisez des bornes serties pour effectuer le cblage. Ne pas raccorder
directement des fils toronns nus des bornes. Le raccordement de fils
multibrins nus peut provoquer une surchauffe.
Cblez correctement toutes les connexions.
Vrifiez deux fois le cblage et les paramtres d'interrupteur avant de
mettre l'API sous tension. Un cblage incorrect peut provoquer une
surchauffe.
Installez les units uniquement aprs avoir compltement vrifi les
borniers et les connecteurs.
Vrifiez que les borniers, les cartes mmoire, les cbles d'extension et
autres lments avec priphriques de verrouillage sont bien connects
Un verrouillage incorrect peut provoquer un dysfonctionnement.
Vrifiez les paramtres des interrupteurs, le contenu de la zone DM et
d'autres prparatifs avant de commencer utiliser la carte. Commencer
utiliser la carte sans les rglages ou les donnes appropris peut
provoquer un fonctionnement inattendu.
Vrifiez le fonctionnement correct du programme utilisateur avant de
l'excuter sur la carte. Ne pas vrifier le programme peut provoquer un
fonctionnement inattendu.
Assurez-vous que le systme ne sera pas perturb avant de lancer l'une
des oprations suivantes. Sans cela, le systme risque de fonctionner de
faon imprvisible.
Modification du mode de fonctionnement de l'API.
Configuration/rinitialisation force d'un bit en mmoire.
Modification de la valeur actuelle d'un mot ou d'une valeur dfinie dans
la mmoire.
Ne tirez pas sur les cbles et ne les pliez pas au-del des limites qu'ils
peuvent normalement supporter. Sinon, vous risquez de casser les
cbles.
Ne posez aucun objet sur les cbles ou les lignes lectriques. Vous
pourriez en effet casser les cbles.
Ne pas utiliser les cbles RS-232C pour ordinateurs disponibles dans le
commerce. Toujours utiliser les cbles rpertoris dans ce manuel ou
assembler un cble en respectant les caractristiques techniques du
manuel. L'utilisation de cbles disponibles dans le commerce risque
d'endommager les priphriques externes ou l'UC.
Ne connectez jamais la broche 6 (alimentation 5 V) du port RS-232C de
l'UC un autre priphrique qu'un adaptateur NT-AL001 ou CJ1W-CIF11.
Cela pourrait endommager le priphrique externe ou l'UC.
Lorsque vous remplacez des pices, vrifiez que les caractristiques
nominales des pices neuves sont correctes. Une diffrence risque de
provoquer un dysfonctionnement ou une surchauffe.

xxv
Conformit aux directives CE 6

Avant de toucher une carte, touchez d'abord un objet mtallique reli la


terre afin de vous dcharger de toute l'lectricit statique qui a pu
s'accumuler. Le non-respect de cette rgle peut provoquer un
dysfonctionnement ou des dommages.
Lors du transport ou du stockage des cartes, couvrez-les d'un matriau
antistatique pour les protger contre l'lectricit statique et maintenez la
temprature de stockage approprie.
Ne touchez pas les cartes circuit ou les composants monts avec vos
mains nues. Des fils pointus et d'autres parties des cartes peuvent causer
des blessures en cas de manipulation incorrecte.
Ne court-circuitez pas les bornes de la batterie et prenez garde de ne pas
charger, dmonter, chauffer ou incinrer la batterie. Ne soumettez pas la
batterie des chocs importants. Le non-respect de ces consignes peut
provoquer une fuite, une rupture, une gnration de chaleur ou l'ignition
de la batterie. Dbarrassez-vous des batteries qui sont tombes sur le sol
ou qui ont t soumises des chocs excessifs. Le liquide des batteries
qui ont t soumises des chocs risque de s'couler lors de l'utilisation
de la batterie.
Les normes UL exigent que les batteries soient remplaces seulement
par des techniciens expriments. Ne permettez pas des personnes
non qualifies de les remplacer.
Sur une UC srie CJ, les cliquets du haut et du bas de la carte
d'alimentation, de l'UC, des cartes d'E/S, des cartes d'E/S spciales et
des cartes rseau doivent tre compltement verrouills (jusqu' ce qu'ils
soient bien en place). L'unit ne fonctionnera pas correctement si les
cliquets ne sont pas bien en place.
Dans le cas d'un API srie CJ, connectez toujours la plaque d'extrmit
l'unit, l'extrme droite de l'API. Sans cette plaque, l'API ne fonctionnera
pas correctement.
Un fonctionnement inattendu peut survenir si des tableaux de liaison de
donnes ou des paramtres inappropris sont configurs. Mme si les
donnes de liaison des donnes et les paramtres corrects ont t
dfinis, assurez-vous que le systme de contrle ne risque pas d'tre
endommag avant de lancer ou d'interrompre les liaisons de donnes.
Les cartes rseau redmarrent lorsque les tableaux de routage sont
transfrs depuis un priphrique de programmation vers l'UC. Le
redmarrage de ces cartes est ncessaire pour lire et activer les nouveaux
tableaux de routage. Assurez-vous que le systme ne risque pas d'tre
endommag avant de permettre la rinitialisation des cartes rseau.

6 Conformit aux directives CE


6-1 Directives applicables
Directives relatives la compatibilit lectromagntique (CEM)
Directive relative aux basses tensions
6-2 Concepts
Directives sur la CEM
Les appareils OMRON qui sont en conformit avec les directives CE
respectent galement les normes de la CEM correspondantes ce qui facilite
leur intgration dans d'autres dispositifs ou dans une machine. Les produits
commercialiss ont fait l'objet d'un contrle de conformit avec les normes de
la CEM (voir la remarque suivante). C'est au client qu'il appartient de
s'assurer que les produits sont en conformit avec les normes du systme
qu'il utilise.
Les performances lies la CEM des dispositifs OMRON qui sont en
conformit avec les directives CE varient selon la configuration, le cblage et
d'autres particularits de l'quipement et du panneau de commande sur
lesquels sont installs les dispositifs OMRON. Le client doit ds lors effectuer

xxvi
Conformit aux directives CE 6

un contrle final pour s'assurer que les dispositifs et l'ensemble de la machine


sont en conformit avec les normes de la CEM.
Remarque Les normes CEM (Compatibilit lectromagntique) d'application sont les
suivantes :
EMS (Electromagnetic Susceptibility, susceptibilit lectromagntique) :
Srie CS : EN61131-2 et EN61000-6-2
Srie CJ : EN61000-6-2
(Electromagnetic Interference, interfrence lectromagntique) :
EN61000-6-4
(Emission de radiations : rglementation 10 m)
Directive sur la basse tension
Assurez-vous toujours que les dispositifs qui fonctionnent des tensions
comprises entre 50 et 1 000 Vc.a. et 75 1 500 Vc.c. respectent les normes
de scurit requises pour l'API (EN61131-2).

6-3 Conformit aux directives CE


Les API srie CS/CJ sont conformes aux directives CE. Pour garantir que la
machine ou le dispositif sur lequel est utilis l'API srie CS/CJ respecte les
directives CE, l'API doit tre install comme suit :
1,2,3... 1. L'API srie CS/CJ doit tre install dans un panneau de commande.
2. Pour les alimentations c.c. connectes des cartes d'alimentation c.c. et
des cartes d'E/S, utilisez une isolation renforce ou double.
3. Les API srie CJ conformes aux directives CE respectent galement la
norme d'mission commune (EN61000-6-4). Les caractristiques des
radiations (rglementations de 10 m) peuvent varier en fonction de la
configuration du panneau de commande utilis, des autres priphriques
connects celui-ci, du cblage et d'autres facteurs. Vous devez ds lors
vous assurer que l'ensemble de la machine ou de l'quipement est
conforme aux dispositions des directives CE.

6-4 Mthodes de rduction des parasites des sorties relais


Les API srie CJ sont conformes aux normes relatives aux missions
communes (EN61000-6-4) des directives sur la CEM. Cependant, il est
possible que les parasites gnrs par la commutation de la sortie relais ne
respectent pas ces normes. Dans ce cas, vous devez connecter un filtre
antiparasite au ct charge ou prendre d'autres mesures spcifiques
l'extrieur de l'API
Les contre-mesures prises pour tre en conformit avec les normes varient
en fonction des priphriques qui sont du ct charge, du cblage, de la
configuration des machines, etc. Les exemples suivants dcrivent des contre-
mesures permettant de rduire les parasites gnrs.

Contre-mesures
(Pour plus de dtails, reportez-vous la norme EN61000-6-4.)
Les contre-mesures sont inutiles si la frquence de commutation de la charge
de l'ensemble du systme - API inclus - est infrieure 5 fois par minute.
Des contre-mesures sont obligatoires si la frquence de commutation de la
charge pour l'ensemble du systme - API inclus - est suprieure 5 fois par
minute.

xxvii
Conformit aux directives CE 6

Exemples de contre-mesures
En cas de commutation d'une charge inductive, connectez un limiteur de
tension, des diodes, etc. en parallle avec la charge ou le contact, comme
illustr ci-dessous.
Circuit Courant Caractristique Elment requis
c.a. c.c.
Mthode CR Oui Oui Si la charge est un relais ou un La capacit du condensateur doit tre de
solnode, il y a un dcalage entre 1 0,5 F pour un courant de contact de
l'ouverture du circuit et la rinitialisation 1 A et la rsistance du condensateur doit
C de la charge. tre de 0,5 1 pour une tension de
inductive

Alimen-
Charge

tation Si la tension d'alimentation est de 24 contact de 1 V. Toutefois, ces valeurs


R ou 48 V, placez le limiteur de tension en peuvent varier en fonction de la charge et
parallle avec la charge. Si la tension des caractristiques du relais. Ces
d'alimentation est comprise entre 100 valeurs doivent tre choisies partir
et 200 V, placez le limiteur entre les d'exprimentations en tenant compte du
contacts. fait que la capacit supprime la dcharge
tincelles lorsque les contacts sont
spars et que la rsistance limite le
courant qui circule dans la charge lorsque
le circuit est nouveau ferm.
La rigidit dilectrique du condensateur
doit tre comprise entre 200 et 300 V. S'il
s'agit d'un circuit c.a., utilisez un
condensateur sans polarit.
Non Oui La diode connecte en parallle avec la La valeur de la rigidit dilectrique
Mthode avec diode
charge transforme l'nergie accumule inverse de la diode doit tre au moins 10
par la bobine en courant, qui circule fois plus grande que la valeur de la
alors dans la bobine afin d'tre converti tension du circuit. Le courant direct de la
inductive
Charge

en chaleur par la rsistance de la diode doit tre suprieur ou gal au


Alimen- charge inductive. courant de la charge.
tation
Le dcalage entre l'ouverture du circuit La valeur de la rigidit dilectrique
et la rinitialisation de la charge, qui est inverse de la diode peut tre deux ou trois
provoqu par cette mthode, est plus fois plus grande que la tension
long que celui obtenu par la mthode d'alimentation si le limiteur de tension est
CR. appliqu des circuits lectroniques
prsentant de faibles tensions de circuit.
Oui Oui La mthode du varistor empche ---
Mthode varistor
d'appliquer une tension leve entre
les contacts grce la caractristique
de tension constante du varistor. Il y a
inductive
Charge

un dcalage entre l'ouverture du circuit


Alimen- et la rinitialisation de la charge.
tation Si la tension d'alimentation est de 24
ou 48 V, placez le varistor en parallle
avec la charge. Si la tension
d'alimentation est comprise entre 100
et 200 V, placez-le entre les contacts.

Lorsque vous commutez une charge avec un courant lev induit tel qu'une
lampe incandescence, supprimez le courant induit comme illustr ci-
dessous.
Contre-mesure 1 Contre-mesure 2

R
SORTIE SORTIE
R
COM COM

Fourniture d'un courant Fourniture d'une rsistance


d'obscurit d'environ un tiers de limitation
de la valeur nominale via
une lampe incandescence.

xxviii
CHAPITRE 1
Fonctionnement de l'UC

Ce chapitre dcrit la structure et le fonctionnement de base de l'UC.

1-1 Configuration initiale (UC CS1 uniquement) . . . . . . . . . . . . . . . . . . . . . . . . . 2


1-2 Utilisation de l'horloge interne (UC CS1 uniquement). . . . . . . . . . . . . . . . . . 5
1-3 Structure interne de l'UC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1-3-1 Prsentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1-3-2 Diagramme des blocs de la mmoire de l'UC. . . . . . . . . . . . . . . . . . 7
1-4 Modes de fonctionnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1-4-1 Description des modes de fonctionnement . . . . . . . . . . . . . . . . . . . . 8
1-4-2 Initialisation de la mmoire E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1-4-3 Mode de dmarrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1-5 Programmes et tches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1-6 Description des tches. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1
Configuration initiale (UC CS1 uniquement) Chapitre 1-1

1-1 Configuration initiale (UC CS1 uniquement)


Installation de la batterie Avant d'utiliser l'UC CS1, vous devez installer la batterie dans l'UC en
respectant la procdure suivante.

1,2,3... 1. Insrez un tournevis plat dans le petit trou du bas du compartiment de la


batterie et tirez le couvercle vers le haut pour l'ouvrir.

2
Configuration initiale (UC CS1 uniquement) Chapitre 1-1

2. Tenez la batterie, le cble vers l'extrieur, et insrez-la dans le compartiment.

Compartiment de la batterie

3. Branchez le connecteur de la batterie dans la borne du connecteur de


batterie. Connectez le fil rouge dans le bornier du haut et le fil blanc dans le
bornier du bas. Il y a deux borniers de connecteur de batterie ; connectez la
batterie dans l'un des deux. Peu importe celui que vous utilisez.

Rouge

Blanc
Bornes de raccordement de la batterie
(Utiliser l'un des deux borniers.)

4. Pliez le cble et fermez le couvercle.

3
Configuration initiale (UC CS1 uniquement) Chapitre 1-1

Effacement de la mmoire Aprs avoir install la batterie, effacez la mmoire grce la fonction
d'effacement de la mmoire afin d'initialiser la mmoire RAM de l'UC.
Console de programmation
A partir d'une console de programmation, procdez comme suit :

Affichage initial SET NOT RESET MON 0 0 (ou 1 ) MON

Remarque Lorsque vous effacez la mmoire partir d'une console de programmation,


vous ne pouvez pas spcifier plus d'une tche cyclique. Vous pouvez spcifier
une tche cyclique et une tche d'interruption, ou une tche cyclique et pas
de tche d'interruption. Consultez le Manuel de fonctionnement pour plus
d'informations sur l'effacement de la mmoire. Consultez CHAPITRE 1
Fonctionnement de l'UC et CHAPITRE 4 Tches pour plus d'informations sur
les tches.
CX-Programmer
Il est galement possible d'effacer la mmoire partir de CX-Programmer.
Veuillez vous reporter au Manuel d'utilisation de CX-Programmer pour de plus
amples informations sur les procdures actuelles.

Erreurs d'effacement Aprs avoir effac la mmoire, effacez toutes les erreurs de l'UC, y compris
les erreurs de tension de batterie faible.
Console de programmation
A partir d'une console de programmation, procdez comme suit :

Affichage initial FUN MON MON

(L'erreur affiche sera efface.)

MON

(Revient l'affichage initial.)

CX-Programmer
Il est galement possible d'effacer les erreurs partir de CX-Programmer.
Veuillez vous reporter au Manuel d'utilisation de CX-Programmer pour de plus
amples informations sur les procdures actuelles.
Remarque Lorsqu'une carte interne est monte, il se peut qu'une erreur de table de
routage de la carte interne apparaisse toujours, mme aprs avoir annul
l'erreur l'aide de CX-Programmer. (A42407 sera sur ON pour une carte de
communications srie.) Si cela se produit, remettez l'appareil sous tension ou
redmarrez la carte interne, puis annulez une nouvelle fois l'erreur.

4
Utilisation de l'horloge interne (UC CS1 uniquement) Chapitre 1-2

1-2 Utilisation de l'horloge interne (UC CS1 uniquement)


Lorsque la batterie est installe dans l'UC srie CS, les paramtres de l'horloge
interne de l'UC sont les suivants : anne 00, mois 01, jour 01 (00-01-01),
00 heure, 00 minute, 00 seconde (00:00:00) et Dimanche (SUN).
Pour utiliser l'horloge interne, mettez le systme sous tension aprs avoir install
la batterie et 1) utilisez un priphrique de programmation (console de
programmation ou CX-Programmer) pour dfinir l'heure, 2) excutez l'instruction
CLOCK ADJUSTMENT (DATE) ou 3) envoyez une commande FINS pour lancer
l'horloge interne partir de l'heure et la date actuelle correcte.
Vous trouverez ci-dessous la procdure d'utilisation de la console de
programmation pour rgler l'horloge interne.
Squence des oprations

Affichage initial FUN SHIFT MON 0 CHG Donnes WRITE

Spcifier : Anne Mois Jour Heure Min. Sec.

5
Structure interne de l'UC Chapitre 1-3

1-3 Structure interne de l'UC


1-3-1 Prsentation
Le diagramme suivant dcrit la structure interne de l'UC.
UC Tche 1 Le programme est divis en
tches, lesquelles
sont excutes dans l'ordre
Tche 2 des numros de tche.

Programme
utilisateur Tche n

Carte de La mmoire E/S, la configuration de l'API,


Accs les programmes et la zone EM
mmoire peuvent tre enregistrs dans des fichiers.

Sauve-
garde Mmoire E/S
automa-
tique
Mmoire de
fichiers EM
Sauve-
garde Configuration
Mmoire automa- de l'API et
flash tique
autres
paramtres :
Connecteur DIP
(UC CS1-H, CS1D, CJ1-H
ou CJ1M uniquement)

Le programme utilisateur Le programme utilisateur est cr partir de 288 tches de programme


maximum, y compris les tches d'interruption. Les tches sont transfres
vers l'UC partir du logiciel de programmation CX-Programmer.
Il existe deux types de tche : une tche cyclique, excute une fois par cycle
(maximum 32), et une tche d'interruption, excute uniquement lorsque se
produisent les conditions d'interruption (maximum 256). Les tches cycliques
sont excutes dans l'ordre numrique.

Remarque 1. Dans le cas d'une UC CS1-H, CJ1-H, CJ1M ou CS1D, les tches
d'interruption peuvent tre excutes de manire cyclique, comme les tches
cycliques. On les appelle alors des tches cycliques extra . Le nombre total
de tches pouvant tre excutes de manire cyclique doit tre de maximum
288.
2. Avec CX-Programmer, utilisez la version 2.1 ou suprieure pour une UC CS1-
H ou CJ1-H et la version 3.0 ou suprieure pour une UC CJ1M (except pour
les modles conomiques) ou l'UC CS1D pour les systmes d'UC en duplex.
Lorsque vous utilisez une UC CJ1M bas de gamme (CJ1M-CPU11/CPU21),
utilisez la version 3.3 ou suprieure de CX-Programmer. Si vous utilisez une
UC CS1-H, CJ1-H CJ1M ou CS1D version 2.0 ou suprieure, utilisez CX-
Programmer version 4.0 ou suprieure.
Les instructions du programme sont lues et crites dans la mmoire E/S et sont
excutes en commenant par le haut du programme. Lorsque toutes les
tches cycliques sont excutes, les E/S de toutes les units sont mises jour
et le cycle recommence en dbutant au numro de tche cyclique le plus bas.
Consultez le chapitre sur le fonctionnement de l'UC dans le Manuel
d'utilisation de la srie CS/CJ pour plus de dtails sur la mise jour d'E/S.

6
Structure interne de l'UC Chapitre 1-3

Mmoire E/S La mmoire E/S est la zone RAM utilise pour lire et crire partir du
programme utilisateur. Elle comprend une zone efface lors de la mise sous
et hors tension et une autre zone qui conserve les donnes.
La mmoire E/S est galement dcoupe en deux zones : une qui change
les donnes avec toutes les units et l'autre rserve l'usage interne. Les
donnes sont changes avec toutes les units une fois par cycle d'excution
du programme et lorsque des instructions spcifiques sont envoyes.

Configuration de l'API La configuration de l'API permet de dfinir plusieurs paramtres initiaux ou


autres grce aux interrupteurs du logiciel.

Interrupteurs DIP Les interrupteurs DIP permettent de dfinir des paramtres initiaux ou autres
via les interrupteurs matriels.

Cartes mmoire Les cartes mmoire sont utilises, en cas de ncessit, pour stocker des
donnes telles que les programmes, les donnes de mmoire E/S, la
configuration de l'API et les commentaires d'E/S crs par les priphriques
de programmation. Il est possible d'crire les programmes et les diffrents
paramtres du systme automatiquement partir de la carte mmoire lors de
la mise sous tension (transfert automatique au dmarrage).

Mmoire flash (UC CS1-H, Avec une CU CS1-H, CJ1-H, CJ1M ou CS1D, les donnes du programme
CS1D, CJ1-H ou CJ1M utilisateur et de la zone des paramtres, telles que la configuration de l'API,
uniquement) sont automatiquement sauvegardes dans la mmoire flash intgre chaque
fois que l'utilisateur crit des donnes vers l'UC. Ceci permet un
fonctionnement sans batterie sans utiliser la carte mmoire. La mmoire E/S,
ainsi que la majorit de la zone DM, ne sont pas sauvegardes sans batterie.

1-3-2 Diagramme des blocs de la mmoire de l'UC


La mmoire de l'UC (RAM) est forme des blocs suivants, dans le cas de la
srie CS/CJ :
La zone des paramtres (configuration de l'API, table d'E/S enregistres,
tableau de routage et paramtres des cartes rseau)
Zones de mmoire E/S
Le programme utilisateur
Les donnes de la zone des paramtres et des zones de mmoire E/S sont
sauvegardes grce une batterie (srie CS : CS1W-BAT01, CJ1-H :
CPM2A-BAT01) et seront perdues si la tension de la batterie est trop faible.
Cependant, les UC CS1-H, CJ1-H, CJ1M ou CS1D disposent d'une mmoire
flash intgre pour la sauvegarde des donnes. Les donnes du programme
utilisateur et de la zone de paramtres sont automatiquement sauvegardes
dans la mmoire flash intgre chaque fois que l'utilisateur crit des donnes
vers l'UC partir d'un priphrique de programmation (CX-Programmer ou la
console de programmation) : transfert de donnes, dition en ligne, transfert
partir de la carte mmoire, etc. Ainsi, les donnes du programme utilisateur
et de la zone de paramtres ne seront jamais perdues, mme si la batterie
tombait en panne.

7
Modes de fonctionnement Chapitre 1-4

UC

RAM intgre

Zone de mmoire d'E/S

Mmoire flash Lecteur 1 : Mmoire de


(UC CS1-H, CS1D, CJ1-H fichier EM (Voir remarque 2.)
ou CJ1M uniquement)
Sauvegarde
Programme utilisateur Ecriture Programme utilisateur
auto Batterie
Une batterie neuve a une dure de vie de cinq ans
maximum une temprature ambiante de 25 C

Lecteur 0 : Carte
mmoire
Ecriture (mmoire Flash)
auto
Zone de paramtres Zone de paramtres
(Voir remarque 1.)
Mmoire de fichier

Automatiquement sauvegarde dans la mmoire flash lors de


l'criture de donnes pour le programme utilisateur ou les
paramtres partir d'un priphrique de programmation.

Remarque 1. La zone de paramtres et le programme utilisateur (c--d la mmoire


utilisateur) peuvent tre protgs en criture en dfinissant ON la broche 1
de l'interrupteur DIP sur la face avant de l'UC.
2. La mmoire de fichiers EM fait partie de la zone EM convertie en mmoire de
fichiers dans la configuration de l'API. Toutes les banques EM, de la banque
spcifie jusqu' la fin de la zone EM, ne peuvent tre utilises que comme
mmoire de fichiers pour le stockage de donnes et de fichiers programmes.
3. Veillez installer la batterie fournie (CS1W-BAT01) avant d'utiliser l'UC CS1
pour la premire fois. Lorsque la batterie est installe, utilisez un priphrique
de programmation pour effacer la mmoire RAM de l'API (zone de paramtre,
zone de mmoire E/S et programme utilisateur).
4. Une batterie est installe sur les UC CS1-H, CJ1, CJ1-H, CJ1M ou CS1D en
usine. Dans ce cas, il n'est pas ncessaire d'effacer la mmoire ou rgler
l'heure.
5. Le voyant BKUP l'avant de l'UC s'allume lorsque des donnes sont crites
dans la mmoire flash. Ne mettez pas l'UC hors tension tant que la
sauvegarde n'est pas termine (c--d tant que le voyant BKUP n'est pas
teint). Consultez la section 6-6-11 Mmoire flash pour plus d'informations.

1-4 Modes de fonctionnement


1-4-1 Description des modes de fonctionnement
L'UC dispose des modes de fonctionnement suivants. Ces modes contrlent
tout le programme utilisateur et sont communs toutes les tches.
Mode PROGRAM L'excution du programme s'arrte en mode PROGRAM et le voyant RUN
n'est pas allum. Ce mode est utilis lors de l'dition du programme ou
d'autres oprations de prparation telles que :
l'enregistrement de la table d'E/S
la modification de la configuration de l'API et d'autres paramtres

8
Modes de fonctionnement Chapitre 1-4

le transfert et le contrle des programmes


la configuration et la rinitialisation force des bits pour vrifier le cblage
et l'affectation des bits.
Dans ce mode, aucune tche cyclique et d'interruption ne s'excute (INI),
elles s'arrtent. Voir la section 1-6 Description des tches pour plus de dtails
sur les tches.
La mise jour d'E/S s'effectue en mode PROGRAM. Consultez le Manuel de
fonctionnement pour plus d'informations sur la mise jour d'E/S.

!AVERTISSEMENT L'UC met jour les E/S mme lorsque le programme est l'arrt (c'est--dire,
mme en mode PROGRAM). Contrlez les conditions de scurit avant de
modifier l'tat de toute partie de mmoire rserve aux cartes d'E/S, aux
cartes d'E/S spciales ou cartes rseau. Tout changement des donnes
assignes une carte risque de provoquer un fonctionnement inattendu des
charges connectes la carte. Chacune des oprations suivantes peut
provoquer un changement de l'tat de la mmoire.

Transfert de donnes de la mmoire E/S vers l'UC depuis un priphrique


de programmation.
Modification des valeurs actuelles de la mmoire depuis un priphrique
de programmation.
Configuration/rinitialisation force des bits depuis un priphrique de
programmation.
Transfert de fichiers de la mmoire E/S partir d'une carte mmoire ou
de la mmoire de fichiers EM vers l'UC.
Transfert de la mmoire E/S depuis un ordinateur hte ou un autre API
sur un rseau.
Mode MONITOR Lorsque le programme s'excute en mode MONITOR, il est possible d'effectuer
les oprations suivantes via les priphriques de programmation. Le voyant RUN
est allum. Ce mode est utilis pour effectuer des tests ou d'autres rglages.
Edition en ligne
Reconfiguration et rinitialisation des bits
Changement des valeurs de la mmoire E/S
Dans ce mode, les tches cycliques qui doivent tre excutes au dmarrage
(voir remarque) et celles excutables par TKON(820) seront excutes
lorsque l'excution du programme atteindra leur numro de tche. Les tches
d'interruption seront excutes si les conditions d'interruption se prsentent.
Remarque Les tches excutes au dmarrage sont spcifies dans les proprits du
programme partir de CX-Programmer.
Mode RUN Ce mode est utilis pour l'excution normale du programme. Le voyant RUN
est allum. Certaines oprations du priphrique de programmation telles
que l'dition en ligne, la configuration et la rinitialisation forces ainsi que le
changement des valeurs de la mmoire E/S sont dsactives dans ce mode.
Par contre, d'autres oprations du priphrique de programmation telles que
la surveillance de l'tat de l'excution du programme (surveillance des
programmes et de la mmoire E/S) sont actives.
Utilisez ce mode pour le fonctionnement normal du systme. L'excution des
tches est la mme qu'en mode MONITOR.
Consultez Modes d'utilisation de l'UC 10-2 dans le Manuel d'utilisation pour plus
de dtails sur les oprations disponibles avec chaque mode de fonctionnement.

9
Modes de fonctionnement Chapitre 1-4

1-4-2 Initialisation de la mmoire E/S


Le tableau suivant prsente les zones de donnes qui seront effaces lorsque
le mode de fonctionnement est commut du mode PROGRAM au mode RUN/
MONITOR ou vice-versa.
Modification du mode Zones non- Zones conserves
conserves (Remarque 2)
(Remarque 1)
RUN/MONITOR PROGRAM Effac (Remarque 3.) Conserv
PROGRAM RUN/MONITOR Effac (Remarque 3.) Conserv
RUN MONITOR Conserv Conserv

Remarque 1. Zones non-conserves : zone CIO, zone de travail, valeurs actuelles de


temporisation, drapeaux de fin de temporisation, registres d'index, registres
de donnes, drapeaux des tches et drapeaux de conditions.
(L'tat de certaines adresses de la zone auxiliaire sont conserves et d'autres
sont effaces.)
2. Zones conserves : zone de maintien, zone DM, zone EM, valeurs actuelles
du compteur et drapeaux de fin de compteur.
3. Les donnes dans la mmoire E/S seront conserves tant que le bit de
maintien IOM (050012) est ON. Lorsque le bit de maintien (A50012) est ON
et que le fonctionnement s'arrte cause d'une erreur fatale (y compris
FALS(007)), le contenu de la mmoire E/S est conserv mais les sorties des
cartes de sorties passeront toutes OFF.

10
Modes de fonctionnement Chapitre 1-4

1-4-3 Mode de dmarrage


Consultez le Manuel d'utilisation pour plus de dtails sur le rglage du mode
de dmarrage de l'UC.
Remarque Dans le cas des UC CJ1, CS1-H, CJ1-H, CJ1M ou CS1D, l'UC dmarrera en
mode RUN si aucune console de programmation n'est connecte. Ce phno-
mne est contraire au fonctionnement par dfaut d'une UC CS1 puisque l'UC
dmarre en mode PROGRAM par dfaut si aucune console de programmation
n'est connecte.
Conditions UC CS1 UC CS1-H, CJ1-H,
CJ1M ou CS1D
uniquement
La configuration de l'API est telle que le Mode PROGRAM Mode RUN
dmarrage doit se faire en fonction du
mode dfini sur la console de
programmation, mais aucune console
de programmation n'est connecte.

Mise sous tension

Dfini dans L'UC dmarrera dans le


la configuration de l'API Non mode dfini dans la
selon le mode de la console configuration de l'API.
de program-
mation ?

Oui

L'UC dmarrera dans le


Console de Oui mode dfini dans la
programmation console de programmation.
connecte ?

Non

UC CS1-H, CJ1-H ou CJ1M :


UC dmarre en mode RUN.
UC CS1 : UC dmarre en
mode PROGRAM.

11
Programmes et tches Chapitre 1-5

1-5 Programmes et tches


Les tches prcisent l'ordre et les conditions d'interruption dans lesquelles les
programmes individuels seront excuts. Elles sont regroupes en deux
types :

1,2,3... 1. les tches excutes de manire squentielle, appeles tches cycliques,


2. les tches excutes par des conditions d'interruption, appeles tches
d'interruption.
Remarque Dans le cas des UC CS1-H, CJ1-H, CJ1M ou CS1D, les tches d'interruption
peuvent tre excutes de manire cyclique, comme les tches cycliques. On
les appelle alors des tches cycliques extra .
Les programmes affects aux tches cycliques sont excuts par ordre de
numro de tche et les E/S sont mises jour une fois par cycle, lorsque
toutes les tches ont t excutes (ou plutt, uniquement les tches dont
l'tat est excutable ). Si une condition d'interruption se prsente au cours
du traitement des tches cycliques, la tche cyclique sera interrompue et le
programme affect cette tche d'interruption sera excut.
Consultez le chapitre sur le fonctionnement de l'UC dans le Manuel d'utilisation
de la srie CS/CJ pour plus d'informations sur la mise jour d'E/S.
Programme A

Tche Allocation
cyclique 0 La condition
d'interruption
Programme B
prend effet
Tche
d'interrupt

Tche Allocation
cyclique 1

Programme C

Allocation

Tche Programme D
cyclique n
Allocation

Mise jour d'E/S

Dans l'exemple ci-dessus, la programmation s'effectuera dans l'ordre suivant :


dmarrage de A, B, reste de A, C, puis D. Cela suppose que la condition
d'interruption de la tche d'interruption 100 a t tablie lors de l'excution du
programme A. Lorsque le programme B est compltement excut, le
systme reprend l'excution du programme A l o il s'tait arrt.
Avec les anciens API d'OMRON, un programme continu est form de
plusieurs parties continues. Les programmes affects chaque tche sont
des programmes uniques qui se terminent par une instruction END, comme le
programme unique des anciens API.

12
Programmes et tches Chapitre 1-5

Les tches cycliques prsentent notamment l'avantage suivant : elles peuvent


tre actives (tat excutable) et dsactives (tat en attente) par les
instructions de contrle des tches. Cela signifie que plusieurs composants
du programme peuvent tre rassembls pour former une tche et que seuls
des programmes spcifiques (tches) peuvent ensuite tre excuts selon les
besoins du modle ou du traitement du produit ralis (commutation des
tapes du programme). Ce systme permet d'amliorer nettement les
performances (temps de cycle) car seuls les programmes ncessaires sont
excuts.
Systme antrieur Srie CS/CJ

Tche 1

Un seul sous-
programme continu
Allocation

Les tches peuvent tre


Tche 2 places dans un tat non
excutable (en attente)

Tche 3

Mise jour d'E/S


Mise jour d'E/S

Une tche qui a t excute sera excute lors des cycles suivants et une
tche mise en attente le restera lors des cycles suivants, sauf si elle est
nouveau excute partir d'une autre tche.
Remarque Contrairement aux anciens programmes, qui pouvaient tre compars la
lecture d'une liste droulante, les tches peuvent tre compares la lecture
d'une srie de cartes individuelles.
Chaque carte est lue dans un ordre prdfini, en commenant par le plus
petit chiffre.
Chaque carte reoit l'tat actif ou inactif et les cartes inactives sont
ignores. (Les cartes sont actives ou dsactives par les instructions de
contrle des tches.)

13
Description des tches Chapitre 1-6

Une carte dfinie comme active restera active et sera lue lors des squen-
ces suivantes. Une carte dfinie comme dsactive restera dsactive et
sera passe jusqu' ce qu'elle soit ractive par une autre carte.
Programme antrieur : Programme srie CS/CJ :
comme une liste comme une srie de cartes qui peut tre
droulante active ou dsactive par d'autres cartes.

Activ Dsactiv

1-6 Description des tches


Les tches sont regroupes en deux types :
1,2,3... 1. Tches cycliques (maximum 32)
Ces tches sont excutes une fois par cycle si elles sont excutables. Si
ncessaire, il est possible de dsactiver l'excution des tches cycliques.
2. Tches d'interruption
Ces tches sont excutes lorsqu'une interruption se produit, qu'une tche
cyclique soit ou non excute. Les tches d'interruption (voir remarques 1 et
2) sont regroupes sous les quatre types suivants (cinq types, si l'on compte
les tches cycliques extra pour les UC CS1-H, CJ1-H, CJ1M ou CS1D) :
a. Tche d'interruption de mise hors tension (pas prise en charge par les
UC CS1D pour les systmes d'UC en duplex) :
excute lorsque l'alimentation est interrompue. (1 max.)
b. Tche d'interruption programme (pas prise en charge par les UC
CS1D pour les systmes d'UC en duplex) :
excute intervalles prcis. (2 max.)
c. Tche d'interruption d'E/S (pas prise en charge par les UC CJ1 ou
CS1D pour les systmes d'UC en duplex) :
excute lorsque l'entre de la carte d'entre d'interruption passe
ON (32 max.)
d. Tche d'interruption externe (non prise en charge par les UC CJ1 ou
CS1D pour systmes d'UC en duplex) :
excute (256 max.) suite la demande d'une carte d'E/S
spciales, une carte rseau ou une carte interne (Srie CS
uniquement).
e. Tche cyclique supplmentaire (prise en charge uniquement par les
UC CS1-H, CJ1-H, CJ1M et CS1D) :
Tches d'interruption traites comme des tches cycliques. Les
tches cycliques extra sont excutes une fois dans chaque cycle
tant qu'elles ont l'tat excutable.
Avec CX-Programmer, il est possible de crer et de contrler jusqu'
288 tches avec 288 programmes (jusqu' 32 tches cycliques et 256 tches
d'interruption).

14
Description des tches Chapitre 1-6

Remarque 1. Les UC CJ1 ne prennent actuellement pas en charge les tches d'interruption
d'E/S et externes. Le nombre maximal de tches pour une UC CJ1 est donc
de 35, c--d 32 tches cycliques et 3 tches d'interruption. Le nombre total de
programmes pouvant tre crs et grs est galement de 35.
2. Les UC CS1D ne prennent en charge aucune tche d'interruption.
Cependant, avec les UC CS1D, vous pouvez utiliser les tches d'interruption
en tant que tches cycliques extra.
Le rapport entre le nombre de programmes allous une tche est de 1:1. Ce
rapport est dtermin dans CX-Programmer, dans les diffrents paramtres de
proprits du programme.

Tche cyclique 0

Tche d'interruption 5

Tches excutes dans


l'ordre croissant des
numros. Tche cyclique 1
Une interruption
se produit

Tche cyclique 2

Rem Les drapeaux de condition (ER, >, =, etc.) et les conditions


d'instruction (verrouillage ON, etc.) sont remis zro au
dbut de chaque tche.

Mise jour d'E/S

Traitement des
priphriques

Structure du programme Il est possible de crer et d'affecter des sous-programmes standard aux
tches si vous en avez besoin pour crer des programmes. Cela signifie qu'il
est possible de crer des programmes dans des modules (composants
standard) et de dboguer des tches de manire individuelle.

15
Description des tches Chapitre 1-6

Sous-programmes standard

Programme utilisateur ABC Programme utilisateur ABD


Tche 1 (A) Tche 1 (A)

Tche 2 (B) Tche 2 (B)

Tche 3 (C) Tche 3 (D)

Lors de la cration de programmes modulaires, vous pouvez prciser des


adresses l'aide de symboles afin de faciliter la standardisation.

16
Description des tches Chapitre 1-6

Etat excutable et en Les instructions TASK ON et TASK OFF (TKON(820) et TKOF(821)) peuvent
attente tre excutes en une seule tche afin de pouvoir attribuer une autre tche
l'tat excutable ou en attente.
Les instructions qui se trouvent dans des tches mise en attente ne seront
pas excutes mais l'tat d'E/S sera conserv. Lorsqu'une tche rcupre
son tat excutable, les instructions seront excutes avec l'tat d'E/S qui
avait t conserv.
Exemple : Programmation l'aide d'une tche de contrle
Dans cet exemple, la tche 0 est une tche de contrle excute d'abord au
dbut de l'opration. Les autres tches peuvent tre dfinies partir de CX-
Programmer (mais pas d'une console de programmation) de manire ce
qu'elles dmarrent, ou non, au dbut de l'opration.
Lorsque l'excution du programme a commenc, il est possible de contrler
les tches grce aux instructions TKON(820) et TKOF(821).
Tche 0
Programme

Tche 0 (tche de contrle)

Tche 1

Tche 2

Tche 3

Exemple : La tche 0 est configure de manire tre excute au dbut de l'opration


(dfini dans les proprits du programme partir du CX-Programmer).
La tche 1 est excutable lorsque a est sur ON.
La tche 1 est mise en attente lorsque b est sur ON.
Les tches 2 et 3 sont excutables lorsque c est sur ON.
Les tches 2 et 3 sont mises en attente lorsque d est sur ON.

Dmarrer Mettre tche 1 en


tche 1 lorsque attente lorsque b
a est sur ON. Tche 0 est sur ON.
Tche 0 Tche 0

Tche 1 Tche 1 Tche 1

Tche 2 Tche 2 Tche 2

Tche 3 Tche 3 Tche 3


Dmarrer
tches 2 et 3
lorsque c est Mettre
sur ON. tches 2 et 3
Tche 0 Tche 0 en attente Tche 0
lorsque d est
Tche 1 Tche 1 sur ON. Tche 1

Tche 2 Tche 2 Tche 2

Tche 3 Tche 3 Tche 3

17
Description des tches Chapitre 1-6

Exemple : chaque tche est contrle par une autre tche


Dans cet exemple, chaque tche est contrle par une autre tche.
Program Programme pour la tche

Tche 0

Tche 1

Tche 2
Programme pour la tche 1

Exemple : La tche 1 est configure pour tre excute sans


condition au dbut de l'opration.
Tche 1 excutable lorsque a est sur ON.
Tche 1 mise en attente lorsque b est sur ON.
Tche 2 excutable lorsque c est sur ON et que
tche 1 a t excute.

Dmarrer
tche 1 Mettre
lorsque a tche 1 en
Tche 0 est sur ON. Tche 0 attente Tche 0
lorsque b
Tche 1 Tche 1 est sur ON. Tche 1

Tche 2 Tche 2 Tche 2

Si tche 1 excute

Dmarrer
Remarque TKOF(821) peut tre utilis dans une tche tche 2
pour la mettre en attente. lorsque c Tche 0
est sur
ON. Tche 1

Tche 2

18
Description des tches Chapitre 1-6

Temps d'excution des Lorsqu'une tche est en attente, les instructions de cette tche ne sont pas
tches excutes ; le temps d'excution de l'instruction OFF n'est donc pas ajout au
temps de cycle.
Remarque A partir de l, les instructions qui se trouvent dans une tche en attente
peuvent tre compares aux instructions qui se trouvent dans une partie de
programme saute (JMP-JME).
Etant donn que les instructions se trouvant dans une tche non excute
n'augmentent pas le temps de cycle, il est possible d'amliorer de manire
significative les performances globales du systme en scindant le systme en
une tche de contrle globale et des tches individuelles excutes
uniquement lorsque cela s'avrera ncessaire.

La plupart des
instructions sont Tche 0
excutes. (Les Les instructions
instructions des sont excutes
Tche 1
sous-programmes uniquement
et des sauts sont lorsque cela est
excutes Tche 2
uniquement lorsque ncessaire.
cela est ncessaire.) Tche 3

19
Description des tches Chapitre 1-6

20
CHAPITRE 2
Programmation

Ce chapitre dcrit les informations de base ncessaires pour crire, vrifier et entrer des programmes.

2-1 Concepts de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22


2-1-1 Programmes et tches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2-1-2 Informations de base concernant les instructions . . . . . . . . . . . . . . . 23
2-1-3 Emplacement de l'instruction et conditions d'excution. . . . . . . . . . 25
2-1-4 Adressage des zones de mmoire E/S . . . . . . . . . . . . . . . . . . . . . . . 26
2-1-5 Spcification des oprandes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2-1-6 Formats de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2-1-7 Variations des instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2-1-8 Conditions d'excution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2-1-9 Temporisation des instructions d'E/S . . . . . . . . . . . . . . . . . . . . . . . . 39
2-1-10 Programmation de la mise jour . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2-1-11 Capacit de programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
2-1-12 Concepts de base de programmation du schma contact . . . . . . . . . 44
2-1-13 Insertion de mnmoniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2-1-14 Exemples de programmes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2-2 Prcautions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
2-2-1 Drapeaux de condition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
2-2-2 Sections de programmes spciales . . . . . . . . . . . . . . . . . . . . . . . . . . 62
2-3 Vrification des programmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
2-3-1 Erreurs lors de l'entre de priphriques de programmation . . . . . . 66
2-3-2 Vrification du programme par CX-Programmer. . . . . . . . . . . . . . . 66
2-3-3 Vrification de l'excution du programme . . . . . . . . . . . . . . . . . . . . 68
2-3-4 Vrification des erreurs fatales : . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

21
Concepts de base Chapitre 2-1

2-1 Concepts de base


2-1-1 Programmes et tches
Les API srie CS/CJ excutent les programmes du schma contact inclus
dans les tches. Le programme de schma contact de chaque tche se
termine par une instruction END(001), comme dans le cas des API
traditionnels.
Les tches servent dterminer l'ordre d'excution des programmes de
schma contact ainsi que les conditions d'interruption d'excution.

Programme A

Affect
Tche
cyclique 1 Condition d'interruption
remplie.
Tche
d'inter-
ruption Programme B
Affect
Chaque programme
de schma contact se
termine par une
instruction END(001).

Tche
cyclique n Programme C
Affect

Rafrachissement d'E/S

Ce chapitre dcrit les concepts de base ncessaires l'criture de


programmes dans la srie CS/CJ. Consultez le CHAPITRE 4 Tchespour
plus d'informations sur les tches et leur relation avec les programmes de
schma contact.
Remarque Tches et priphriques de programmation
Les tches sont gres de la manire dcrite ci-aprs sur les priphriques
de programmation. Consultez 4-4 Fonctionnement du priphrique de
programmation pour les tches ainsi que le Manuel d'utilisation des consoles
de programmation srie CS/CJ (W341) et le Manuel d'utilisation de CX-
Programmer pour plus de dtails.
CX-Programmer
CX-Programmer sert attribuer des types de tches et des numros de
tches aux programmes individuels.
Console de programmation
L'accs et l'dition des programmes se font sur une console de
programmation en spcifiant CT00 CT31 pour les tches cycliques et IT00
IT25 pour les tches d'interruption. Lors de l'effacement de la mmoire avec
une console de programmation, seule la tche cyclique 0 (CT00) peut tre
rcrite dans un nouveau programme. Utilisez CX-Programmer pour crer
des tches cycliques de 1 31 (CT01 CT31).

22
Concepts de base Chapitre 2-1

2-1-2 Informations de base concernant les instructions


Un programme, c'est une suite d'instructions. Le diagramme suivant prsente
la structure conceptuelle des entres et sorties d'une instruction.

Flux logique (P.F., condition Flux logique (P.F., condition


d'excution) d'excution)*1
Condition d'instruction Instruction
Condition d'instruction*2

Drapeaux Drapeau

*1 : Instructions d'entre uniquement.


Oprandes Oprandes *2 : Pas de sortie pour toutes
(sources) (destinations) les instructions.

Mmoire

Flux d'alimentation
Le flux d'alimentation est la condition d'excution utilise pour contrler
l'excution et les instructions lorsque les programmes s'excutent
normalement. Dans un schma contact, le flux d'alimentation reprsente l'tat
de la condition d'excution.

Instructions d'entre Les instructions de chargement indiquent un dpart logique et sortent la


condition d'excution.
Sort la condition
d'excution.

Les instructions intermdiaires entrent le flux d'alimentation en tant que


condition d'excution et le sortent vers une instruction intermdiaire ou de
sortie.
Sort la condition
d'excution.

=
D00000
#1215

Instructions de sortie Les instructions de sortie excutent toutes les fonctions et utilisent le flux
d'alimentation comme condition d'excution.
Flux logique LD
Flux logique pour
l'instruction de
sortie

Bloc d'entre Bloc de sortie

Conditions d'instruction
Les conditions d'instruction sont des conditions spciales lies l'excution
gnrale des instructions fournies par les instructions suivantes. Le niveau de
priorit des conditions d'instruction est suprieur celui du flux d'alimentation
lorsqu'il s'agit de dcider si une instruction doit tre excute ou non. Il se
peut qu'une instruction ne doive plus tre excute ou qu'elle agisse
diffremment en fonction des conditions d'instruction. Les conditions

23
Concepts de base Chapitre 2-1

d'instruction sont redfinies (annules) au dbut de chaque tche, c--d


qu'elles sont redfinies lorsque l'on passe une autre tche.
Les instructions suivantes sont utilises par deux pour dfinir et annuler
certaines conditions d'instruction. Ces instructions groupes doivent se
trouver dans la mme tche.
Condition Description Dfinition de Annulation de
d'instruction l'instruction l'instruction
Verrouill Un verrouillage dsactive une partie du programme. Les conditions IL(002) ILC(003)
spciales, telles la dsactivation (OFF) des bits de sortie, la
rinitialisation des temporisations et le maintien des compteurs
fonctionnent toujours.
Excution de Met fin une boucle FOR(512) NEXT(513) pendant l'excution. BREAK(514) NEXT(513)
BREAK(514) (Empche l'excution de toutes les instructions tant qu'il n'y a pas
d'instruction NEXT(513)).
Excute un saut de JMP0(515) JME0(516) JMP0(515) JME0(516)
Excution d'un Excute un bloc de programmes de BPRG(096) BEND(801). BPRG(096) BEND(801)
programme de bloc

Drapeaux
Dans ce contexte, un drapeau est un bit qui sert d'interface entre des
instructions.
Drapeaux d'entre Drapeaux de sortie
Drapeaux de diffrenciation Drapeaux de diffrenciation
Drapeaux de rsultat de diffrenciation. Les tats Drapeaux de rsultat de diffrenciation. Les tats de ces
de ces drapeaux sont envoys automatiquement drapeaux sont reus automatiquement de l'instruction pour
l'instruction pour toutes les instructions de sortie toutes les instructions d'entre haut/bas diffrencies et pour
haut/bas diffrencies et pour les instructions l'instruction UP(521)/DOWN(522).
DIFU(013)/DIFD(014). Drapeaux de condition
Drapeau de retenue (CY) Il s'agit des drapeaux Toujours ON/OFF ainsi que des drapeaux
Le drapeau de retenue sert d'oprande non mis jour par le rsultat de l'excution d'une instruction. Dans
spcifie pour les instructions de dcalage de les programmes utilisateur, ces drapeaux peuvent tre spcifis
donnes et les instructions d'addition/soustraction. par des tiquettes telles que ER, CY, >, =, A1, A0 plutt que par
Drapeaux pour instructions spciales des adresses.
Il s'agit des drapeaux d'apprentissage pour les Drapeaux pour instructions spciales
instructions FPD(269) et les communications Il s'agit des drapeaux d'instruction de carte mmoire et des
rseau actives par drapeaux. drapeaux d'excution termine MSG(046).

Oprandes
Les oprandes spcifient les paramtres des instructions prdfinies (cases
des schmas de contact) utiliss pour prciser le contenu ou les constantes
de la zone de mmoire E/S. Il est possible d'excuter une instruction en
entrant une adresse ou une constante comme oprande. Les oprandes sont
classes dans trois groupes : source, destination ou numro.
Exemple

S (source) N (numro)

D (destination)

Types d'oprandes Symbole de Description


l'oprande
Source Prcise l'adresse des donnes lire S Oprande Oprande source autre que les
ou une constante. source donnes de contrle (C)
C Donnes de Donnes composes dans une op-
contrle rande source dont la signification dif-
fre en fonction de l'tat du bit.
Destination Prcise l'adresse laquelle seront D (R) ---
(rsultats) crites les donnes.
Numro Prcise un numro particulier utilis N ---
dans l'instruction, comme par
exemple, un numro de saut ou de
sous-programme.

24
Concepts de base Chapitre 2-1

Remarque On peut galement distinguer les oprandes en les appelant premire


oprande, seconde oprande, etc. en commenant par le haut de
l'instruction.

Premire oprande
Seconde

2-1-3 Emplacement de l'instruction et conditions d'excution


Le tableau suivant montre les diffrents emplacements possibles pour les
instructions. Les instructions sont rparties en deux groupes : celles pour
lesquelles les conditions d'excution sont obligatoires, et les autres. Voir
CHAPITRE 3 Fonction des instructions pour plus de dtails sur les diffrentes
instructions.
Type d'instruction Emplacement Condition Diagramme Exemples
possible d'excution
Instructions Dpart logique Connecte Non obligatoire. LD, LD TST(350),
d'entre (instructions de directement la LD > (et autres
chargement) barre de bus instructions de
gauche ou se comparaison de
trouve au dbut symboles)
d'un bloc
d'instructions.
Instructions Entre un dpart Obligatoire. AND, OR, AND
intermdiaires logique et une TEST(350), AND
instruction de > (et autres
sortie. instructions de
comparaison de
symboles ADD),
UP(521),
DOWN(522),
NOT(520), etc.
Instructions de sortie Connectes Obligatoire. La plupart des
directement la instructions
barre de bus comprenant OUT
droite. et MOV(021).
Non obligatoire. END(001),
JME(005),
FOR(512),
ILC(003), etc.

Note 1. Il existe un autre groupe d'instructions qui excutent une srie


d'instructions mnmoniques bases sur une seule entre. On les appelle
les instructions de programmes de bloc. Consultez le Manuel de rfrence
des instructions pour les UC srie CS/CJ pour plus de dtails sur ces
programmes de bloc.
2. Si une instruction qui a besoin d'une condition d'excution est directement
connecte la barre de bus gauche sans instruction de dpart logique, le
systme affichera une erreur de programme lorsqu'il contrlera le
programme sur un priphrique de programmation (CX-Programmer ou
une console de programmation).

25
Concepts de base Chapitre 2-1

2-1-4 Adressage des zones de mmoire E/S


Adresses bits
@@@@ @@

Numro de bit (00 15)


Indique l'adresse du mot.
Exemple : L'adresse du bit 03 du mot 0001 de la zone CIO est illustre ci-
dessous. Dans ce manuel, l'adresse est fournie sous la forme
CIO 000103 .
0001 03

Numro de bit (03)


Adresse mot : 0001
Bit : CIO 000103
Mot

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
0000
0001
0002

Adresses mots
@@@@

Indique l'adresse du mot


Exemple : L'adresse des bit 00 15 du mot 0010 de la zone CIO est illustre
ci-dessous. Dans ce manuel, l'adresse est fournie sous la forme
CIO 00010 .
0010

Adresse mot
Les adresses des zones DM et EM commencent par les prfixes D ou
E , comme illustr pour l'adresse D00200.
D00200

Adresse mot

26
Concepts de base Chapitre 2-1

Exemple : L'adresse du mot 2000 dans la banque actuelle de Mmoire de


donnes tendue (EM) est la suivante :
E00200

Adresse mot
L'adresse du mot 2000 dans la banque 1 de Mmoire de donnes tendue
(EM) est la suivante :
E1_00200

Adresse mot
Numro de banque

2-1-5 Spcification des oprandes


Oprande Description Notation Exemples
d'applications
Spcification Les numros de mot et de bit sont spcifis 0001 02 0001
des adresses directement pour spcifier un bit (bits d'entre). 02
bits @@@@ @@
Numro de bit (02)
Numro de
bit (00 15) Numro de mot : 0001
Indique l'adresse du mot.
Remarque Les mmes adresses sont utilises pour
accder aux drapeaux de fin de
temporisation/compteur et aux valeurs
actuelles. Il n'existe galement qu'une
seule adresse pour un drapeau de tche.

Spcification Le numro de mot est spcifi directement 0003 MOV 0003


des adresses pour spcifier le mot 16 bits. D00200
mots Numro de mot : 0003
@@@@
D00200
Indique l'adresse du mot.
Numro de mot : 00200

27
Concepts de base Chapitre 2-1

Oprande Description Notation Exemples


d'applications
Spcification Le dcalage par rapport au dbut de la zone
des adresses est spcifi. Le contenu de l'adresse sera trait
DM/EM comme une donne BCD (0000 32767) pour
indirectes en spcifier l'adresse du mot dans la mmoire de
mode binaire donnes (DM) ou la mmoire de donnes
tendue (EM). Ajoutez le symbole @ au dbut
pour spcifier une adresse indirecte en mode
binaire.
@D@@@@@

Contenu 00000 32767


(0000 Hex 7FFF
Hex dans BIN)
D

1) D00000 D32767 sont spcifis si @D00300 MOV #0001


@D(@@@@@) contient 0000 hex. 7FFF @00300
hex. (00000 32 767). 0100 Contenu
Binaire : 256

Spcifie D00256.

Ajoute le symbole @.

2) E0 _00000 E0 _32767 de la banque 0 @D00300


dans la mmoire de donnes tendue
(EM) sont spcifis si @D(@@@@@) 8001 Contenu
contient 8000 hex. FFFF hex. (32768 Binaire : 32769
65 535).
Spcifie E0 00001.

3) E@_00000 E@_32767 dans la banque @E1_00200 MOV #0001


spcifie sont spcifis si @E@_@@@@@ @E1_00200
contient 0000 hex. 7FFF hex. (00000 0101 Contenu
32 767). Binaire : 257

Spcifie E1_00257.

4) E(@+1)_00000 E(@+1)_32767 dans la @E1_00200


banque suivant la banque spcifie @ sont
spcifis si @E@_@@@@@ contient 8002 Contenu
8000 hex. FFFF hex. (32768 65 535). Binaire : 32770

Spcifie E2_00002.

Remarque Lorsque vous spcifiez une adresse indirecte en mode binaire, vous devez traiter les zones
de mmoire de donnes (DM) et de mmoire de donnes tendue (EM) (banques 0 C)
comme une srie d'adresses. Si le contenu d'une adresse comprenant le symbole @
dpasse 32 767, le systme considrera que l'adresse de la mmoire de donnes tendue
(EM) et continuera partir de 00000 dans la banque 0.
Exemple : Si le mot de la mmoire de donnes (DM) contient 32 768, le systme spcifiera E_100000
dans la banque 0 de la mmoire de donnes tendue (EM).
Remarque Si le numro de banque de la mmoire de donnes tendue (EM) spcifi est n et que le
contenu du mot dpasse 32 767, le systme supposera que l'adresse est une adresse de la
mmoire de donnes tendue et continuera partir de 00000 dans la banque N+1.
Exemple : Si la banque 2 de la mmoire de donnes tendue (EM) contient 32 768, le systme
spcifiera E3_00000 dans la banque 3 de la mmoire de donnes tendue (EM).

28
Concepts de base Chapitre 2-1

Oprande Description Notation Exemples


d'applications
Spcification Le dcalage par rapport au dbut de la zone est *D00200 MOV #0001
des adresses spcifi. Le contenu de l'adresse sera trait comme *D00200
DM/EM une donne BCD (0000 9999) pour spcifier Table des
0100 matires
indirectes en l'adresse du mot dans la mmoire de donnes (DM)
mode BCD ou la mmoire de donnes tendue (EM). Ajoutez
un astrisque (*) au dbut pour spcifier une
adresse indirecte en mode BCD. Spcifie D0100

*D@@@@@ Ajoutez un astrisque (*).

Table des 00000 9999


matires (BCD)

Oprande Description Notation Exemples d'applications


Spcification Un registre d'index (IR) ou un registre de donnes IR0 MOVR 000102 IRO
directe d'un (DR) peut tre directement spcifi en spcifiant IR@ Sauvegarde l'adresse mmoire de l'API
registre (@ : 0 15) ou DR@ (@ : 0 15). pour CIO 0010 dans IR0.
IR1 MOVR 00010 IR1
Sauvegarde l'adresse mmoire de l'API
pour CIO 0010 dans IR1.
Spcification Adresse Le bit ou le mot de l'adresse mmoire de ,IR0 LD ,IR0
d'une indirecte l'API contenu dans IR@ sera spcifi. Charge le bit avec l'adresse mmoire de
adresse (sans Spcifiez ,IR@ pour spcifier les bits et l'API dans IR0.
indirecte dcalage) les mots pour les oprandes de MOV #0001 ,IR1
l'aide d'un l'instruction. ,IR1 Sauvegarde #0001 dans le mot avec la
registre mmoire de l'API dans IR1.
Dcalage Le bit ou le mot de l'adresse mmoire de +5,IR0 LD + 5 ,IR0
constant l'API contenu dans IR@ + ou la Charge le bit avec l'adresse mmoire de
constante est spcifi. l'API dans IR0 + 5.
Spcifiez +/ constant ,IR@. Les MOV #0001 +31 ,IR1
dcalages constants peuvent aller de +31,IR1 Sauvegarde #0001 dans le mot avec la
2048 +2047 (dcimales). Le dcalage mmoire de l'API dans IR1 + 31
est converti en donnes binaires lors de
l'excution de l'instruction.
Dcalage Le bit ou le mot de l'adresse mmoire de DR0 ,IR0 LD DR0 ,IR0
DR l'API contenu dans IR@ + le contenu de Charge le bit avec l'adresse mmoire de
DR@ est spcifi. l'API dans IR0 + la valeur dans DR0.
Spcifiez DR@ ,IR@. Le contenu de DR MOV #0001 DR0 ,IR1
(registre de donnes) est trait comme Sauvegarde #0001 dans le mot avec la
des donnes binaires signes. Le DR0 ,IR1 mmoire de l'API dans IR1 + la valeur
contenu de l'IR@ recevra un dcalage dans DR0.
ngatif si la valeur binaire signe est
ngative.
Auto-incr- Le contenu de IR@ est incrment de 1 ,IR0 ++ LD ,IR0 ++
mentation ou 2 aprs le rfrencement la valeur Incrmente le contenu d'IR0 de 2 aprs
comme adresse mmoire de l'API. le chargement du bit avec l'adresse
+1 : Spcifiez ,IR@+ mmoire de l'API dans IR0.
+2 : Spcifiez ,IR@ + + MOV #0001 ,IR1 +
,IR1 + Incrmente le contenu d'IR0 d'1 aprs le
stockage de #0001 dans le mot avec
l'adresse mmoire de l'API dans IR1.
Auto- Le contenu de IR@ est dcrment de 1 , IR0 LD ,- - IR0
dcrmen- ou 2 aprs le rfrencement de la valeur Lorsque le contenu d'IR0 a t
tation comme adresse mmoire de l'API. dcrment de 2, le bit avec l'adresse
1 : Spcifiez ,-IR@ mmoire de l'API dans IR0 est charg.
+ MOV #0001 ,-IR1
-2 : Spcifiez , IR@ ,IR1 Lorsque le contenu d'IR1 est
dcrment d'1, #0001 est stock dans
le mot avec l'adresse mmoire de l'API
dans IR1.

29
Concepts de base Chapitre 2-1

Donnes Oprande Formulaire de Symbole Intervalle Exemple d'application


donnes
Constante Toutes les Binaires non # De #0000 ---
16 bits donnes binaires signes #FFFF
ou un intervalle Dcimales De 32 768 ---
limit de signes +32 767
donnes binaires
Dcimales non & (Voir De &0 &65535 ---
signes remarque.)
Toutes les BCD # De #0000 ---
donnes BCD ou #9999
un intervalle
limit de
donnes BCD
Constante Toutes les Binaires non # De #00000000 ---
32 bits donnes binaires signes #FFFFFFFF
ou un intervalle Binaires signes + De -2 147 483 ---
limit de 648 +2 147 483
donnes binaires 647
Dcimales non & (Voir De &0 ---
signes remarque.) &429467295
Toutes les BCD # De #00000000 ---
donnes BCD ou #99999999
un intervalle
limit de
donnes BCD
Chane de Description Symbole Exemples ---
texte Les donnes chanes de texte sont --- 'ABCDE' MOV$ D00100 D00200
stockes en ASCII (un octet, sauf
pour les caractres spciaux), dans D00100 41 42
'A' 'B'
l'ordre suivant : de l'octet le plus D00101 43 44
'C' 'D'
gauche l'octet le plus droite et du 'E' NUL D00102 45 00
mot le plus droite (le plus petit) au
mot le plus gauche.
41 42 D00200 41 42
00 hex. (code NUL) est stock dans
43 44 D00201 43 44
l'octet le plus droite du dernier mot
45 00 D00202 45 00
si le nombre de caractres est
impair.
0000 hex. (2 codes NUL) est stock 'ABCD'
dans l'octet vacant le plus gauche
et le plus droite du dernier mot + 1 'A' 'B'
si le nombre de caractres est pair. 'C' 'D'
NUL NUL

41 42
43 44
00 00
Les caractres ASCII pouvant tre utiliss dans une chane de texte sont les caractres alphanumriques,
Katakana et les symboles (sauf pour les caractres spciaux). Le tableau suivant prsente les caractres
accepts.

Remarque Notation en dcimales non signes uniquement si elles sont utilises pour
CX-Programmer.

30
Concepts de base Chapitre 2-1

Caractres ASCII
Bits 0 3 Bits 4 7
Binaire 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
hex. 0 1 2 3 4 5 6 7 8 9 A B C D E F
0000 0 Espace 0 @ P ` p 0 @ P
0001 1 ! 1 A Q a q ! 1 A Q
0010 2 2 B R b r 2 B R
0011 3 # 3 C S c s # 3 C S
0100 4 $ 4 D T d t $ 4 D T
0101 5 % 5 E U e u % 5 E U
0110 6 & 6 F V f v & 6 F V
0111 7 ' 7 G W g w ' 7 G W
1000 8 ( 8 H X h x ( 8 H X
1001 9 ) 9 I Y i y ) 9 I Y
1010 A * : J Z j z * : J Z
1011 B + ; K [ k { + ; K [
1100 C , < L \ l | , < L \
1101 D - = M ] m } - = M ]
1110 E . > N ^ n ~ . > N ^
1111 F / ? O _ o / ? O _

31
Concepts de base Chapitre 2-1

2-1-6 Formats de donnes


Le tableau suivant prsente les formats de donnes pris en charge par la
srie CS CJ.
Type de Format de donnes Dcimal 4 chiffres
donnes hexadci-
maux
Binaires 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 De 0 65 0000 FFFF
non 535
signes
Binaire 215 214 213 212 211 210 29 28 27 26 25 24 23 22 21 20
Dcimal 3276816384 8192 4092 2048 1024 512 256 128 64 12 16 8 4 2 1

Hex. 23 22 21 20 23 22 21 20 23 22 21 20 23 22 21 20

Binaires 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 De -32 De 8000


signes 768 +32 7FFF
767
Binaire 215 214 213 212 211 210 29 28 27 26 25 24 23 22 21 20
Dcimal 3276816384 8192 4092 2048 1024 512 256 128 64 12 16 8 4 2 1

Hex. 23 22 21 20 23 22 21 20 23 22 21 20 23 22 21 20

Bit de signe : 0 : positif, 1 :

BCD 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 De 0 De 0000
(Binary 9999 9999
Coded
Decimal - Binaire 23 22 21 20 23 22 21 20 23 22 21 20 23 22 21 20
dcimales
codes Dcimal
binaires) 09 09 09 09

32
Concepts de base Chapitre 2-1

Type de Format de donnes Dcimal 4 chiffres


donnes hexadci-
maux
Virgule 31 30 29 23 22 21 20 19 18 17 3 2 1 0 --- ---
dcimale
flottante
simple
prcision Signe de Exposant Mantisse
mantisse Binaire

Valeur = (-1)Signe x 1.[Mantisse] x 2Exposant


Signe (bit 31) 1 : ngatif ou 0 : positif
Mantisse Les 23 bits entre le 00 et le bit 22 contiennent la
mantisse, c'est--dire la portion au-dessous du point
dcimal dans 1.@@@....., en binaire.
Exposant Les 8 bits compris entre les bits 23 et 30 contiennent
l'exposant. L'exposant est exprim en binaire sous la
forme 127 plus n dans 2n.
Remarque Ce format, conforme aux normes IEEE754 concernant les donnes virgule flottante
double prcision, est utilis uniquement avec les instructions qui convertissent ou
calculent des donnes virgule flottante. Il peut tre utilis pour la configuration ou
le contrle partir de l'cran d'dition et de surveillance de la mmoire E/S sur
le CX-Programmer (non pris en charge par les consoles de programmation).
Les utilisateurs n'ont pas besoin de connatre ce format. Il leur suffit de savoir que
le formatage occupe quatre mots.

Virgule --- ---


dcimale 63 62 61 52 51 50 49 48 47 46 3 2 1 0
flottante
double
prcision
Signe de la Exposant Mantisse
mantisse Binaire

Valeur = (-1)Signe x 1.[Mantisse] x 2Exposant


Signe (bit 63) 1 : ngatif ou 0 : positif
Mantisse Les 52 bits entre le 00 et le bit 51 contiennent la
mantisse, c'est--dire la portion au-dessous du point
dcimal dans 1.@@@....., en binaire.
Exposant Les 11 bits compris entre les bits 52 et 62
contiennent l'exposant. L'exposant est exprim en
binaire sous la forme 1023 plus n dans 2n.
Remarque Ce format, conforme aux normes IEEE754 concernant les donnes virgule flottante
double prcision, sert uniquement avec les instructions qui convertissent ou calculent des
donnes virgule flottante. Il peut tre utilis pour la configuration ou le contrle partir
de l'cran d'dition et de surveillance de la mmoire E/S sur le CX-Programmer (non pris
en charge par les consoles de programmation). Les utilisateurs n'ont pas besoin de
connatre ce format. Il leur suffit de savoir que le formatage occupe quatre mots.

Donnes binaires signes


Dans le cas des donnes binaires signes, le bit le plus gauche indique le
signe des donnes binaires 16 bits. La valeur est exprime par 4 chiffres
hexadcimaux.
Nombres positifs : Une valeur est positive ou nulle si le bit le plus gauche
est 0 (OFF). En 4 chiffres hexadcimaux, cela correspond 0000
7FFF hex..
Nombres ngatifs : Une valeur est ngative si le bit le plus gauche est 1
(ON). En 4 chiffres hexadcimaux, cela correspond 8000 FFFF hex.
L'absolu de la valeur ngative (dcimale) est exprim sous la forme d'un
complment 2.
Exemple : Pour traiter 19 en dcimales comme valeur binaire signe, on
soustrait 0013 hex. (la valeur absolue de 19) de FFFF hex., puis on ajoute
0001 hex. pour atteindre FFED hex.

33
Concepts de base Chapitre 2-1

F F F F
1111 1111 1111 1111

Vrai nombre 0 0 1 3
0000 0000 0001 0011
)

F F E C
1111 1111 1110 1100

0 0 0 1
0000 0000 0000 0001
+)

Complment deux F F E D
1111 1111 1110 1101

Complments
Gnralement, le complment de base x fait rfrence un nombre obtenus
lorsque tous les chiffres d'un nombre donn sont soustraits de x 1, puis que
l'on ajoute 1 au chiffre le plus droite. (Exemple : le complment dix de 7556
est 9999 7556 + 1 = 2444.) Un complment permet d'exprimer une
soustraction et d'autres fonctions telles que l'addition.
Exemple : 8954 7556 = 1398, 8954 + (le complment dix de 7556) = 8954
+ 2444 = 11 398. Si vous ne connaissez pas le bit le plus gauche, le rsultat
de la soustraction est 1398.
Complments deux
Un complment deux est un complment de base deux. Dans ce cas-ci, nous
soustrayons tous les chiffres de 1 (2 1 = 1) et ajoutons un.
Exemple : le complment deux du nombre binaire 1101 est 1111 (F hex.)
1101 (D hex.) + 1 (1 hex.) = 0011 (3 hex.). La ligne suivante prsente cette
valeur exprime par 4 chiffres hexadcimaux.
Le complment deux b hex. de a hex. est FFFF hex. a hex. + 0001 hex. =
b hex.. Pour dterminer le complment deux b hex. de a hex. , utilisez
b hex. = 10 000 hex. a hex..
Exemple : pour dterminer le complment deux de 3039 hex., utilisez 10
000 hex. 3030 hex. = CFC7 hex..
De mme, utilisez a hex. = 10000 hex. b hex. pour dterminer la valeur
a hex. partir du complment deux b hex..
Exemple : pour dterminer le complment deux de 3039 hex., utilisez 10
000 hex. 3030 hex. = CFC7 hex..
La srie CS/CJ possde deux instructions : NEG(160)(2'S COMPLEMENT)
et NEGL(161) (DOUBLE 2'S COMPLEMENT). Elles peuvent servir
dterminer le complment deux partir du vrai nombre ou dterminer le
vrai nombre partir du complment deux.
Donnes BCD signes
Les donnes BCD signes sont un format de donnes spcial permettant
d'exprimer des nombres ngatifs en BCD. Mme si ce format se trouve dans
certaines applications, il n'est pas rigoureusement dfini et dpend de
l'application spcifique. La srie CS/CJ prend en charge les instructions
suivantes pour convertir les formats de donnes : SIGNED BCD-TO-
BINARY : BINS(470), DOUBLE SIGNED BCD-TO-BINARY : BISL(472),
SIGNED BINARY-TO-BCD : BCDS(471) et DOUBLE SIGNED BINARY-TO-

34
Concepts de base Chapitre 2-1

BCD : BDSL(473). Consultez le Manuel de rfrence des instructions pour les


automates programmables srie CS/CJ (W340) pour plus d'informations.
Dcimal hex.adcimal Binaire BCD
0 0 0000 0000
1 1 0001 0001
2 2 0010 0010
3 3 0011 0011
4 4 0100 0100
5 5 0101 0101
6 6 0110 0110
7 7 0111 0111
8 8 1000 1000
9 9 1001 1001
10 A 1010 0001 0000
11 B 1011 0001 0001
12 C 1100 0001 0010
13 D 1101 0001 0011
14 E 1110 0001 0100
15 F 1111 0001 0101
16 10 10000 0001 0110

Dcimal Binaire non sign Binaire sign (4 chiffres


(4 chiffres hexadcimaux)
hexadcimaux)
+65 535 FFFF Impossible exprimer.
+65 534 FFFE
. .
. .
. .
+32 769 8001
+32 768 8000
+32 767 7FFF 7FFF
+32 766 7FFE 7FFE
. .
. .
. .
+2 0002 0002
+1 0001 0001
0 0000 0000
1 Impossible exprimer. FFFF
2 FFFE
.
.
.
32 767 8001
32 768 8000

35
Concepts de base Chapitre 2-1

2-1-7 Variations des instructions


Les variations suivantes sont disponibles pour les instructions, afin de
diffrencier les conditions d'excution et de mettre jour les donnes lors de
l'excution de l'instruction (mise jour immdiate).
Variation Symbole Description
Diffrenciation ON @ L'instruction fait la diffrenciation lorsque la
condition d'excution passe ON.
OFF % L'instruction fait la diffrenciation lorsque la
condition d'excution passe OFF.
Mise jour immdiate ! Met jour les donnes dans la zone E/S
spcifie par les oprandes ou les mots de la
carte d'E/S spciales lors de l'excution de
l'instruction.
(La mise jour immdiate n'est pas prise en
charge par les UC CS1D pour les systmes
d'UC en duplex.)

Instruction (mnmonique)
Variation de diffrenciation
Variation de mise jour
immdiate

2-1-8 Conditions d'excution


La srie CS/CJ contient les types d'instructions standard et spciales
suivantes :
instructions non diffrencies excutes lors de chaque cycle
instructions diffrencies excutes une seule fois
Instructions non diffrencies
Instructions de sortie pour lesquelles les conditions d'excution doivent tre
excutes une fois par cycle pendant que la condition d'excution est valide
(ON ou OFF).
Exemple

Instruction de sortie
non diffrencie

Instructions d'entre qui crent des dparts logiques et instructions


intermdiaires qui lisent l'tat des bits, effectuent des comparaisons, testent
les bits ou effectuent d'autres types de traitement chaque cycle. Si les
rsultats sont ON, le flux d'alimentation est envoy (c--d, la condition
d'excution passe ON).
Exemple
Instruction d'entre non diffrencie

36
Concepts de base Chapitre 2-1

Instructions diffrencies l'entre


Instructions diffrencies par le haut (instruction prcde de @)
Instructions de sortie : L'instruction n'est excute que pendant le cycle
au cours duquel la condition d'excution passe ON (OFF ON) et n'est
pas excute lors des cycles suivants.
Exemple

(@) Instruction d'entre


diffrencie par le haut @MOV

Excute l'instruction MOV une fois


lorsque CIO 000102 passe de OFF ON.

Instructions d'entre (dparts logiques et instructions intermdiai-


res) : L'instruction lit l'tat des bits, effectue des comparaisons, teste des
bits ou effectue d'autres types de traitement lors de chaque cycle ; elle
enverra une condition d'excution ON (flux d'alimentation) lorsque les
rsultats passeront de OFF ON. La condition d'excution passera
OFF lors du cycle suivant.
Exemple
Instruction d'entre diffrencie par le haut

Condition d'excution ON cre pour


un seul cycle lorsque CIO 00103
passe de OFF ON.

Instructions d'entre (dparts logiques et instructions intermdi-


aires) : L'instruction lit l'tat des bits, effectue des comparaisons, teste
des bits ou effectue d'autres types de traitement lors de chaque cycle ;
elle enverra une condition d'excution OFF (arrt du flux d'alimentation)
lorsque les rsultats passeront de OFF ON. La condition d'excution
passera ON lors du cycle suivant.
Exemple
0001
Instruction d'entre diffrencie par le haut 03

Condition d'excution OFF cre pour un


seul cycle lorsque CIO 00103 passe de
OFF ON.

Instructions diffrencies par le bas (instruction prcde de %)


Instructions de sortie : L'instruction n'est excute que pendant le cycle
au cours duquel la condition d'excution passe OFF (ON OFF) et
n'est pas excute lors des cycles suivants.

Exemple
(%) Instruction
diffrencie par le bas %SET

Excute l'instruction SET une fois lorsque


CIO 000102 passe de ON OFF.

37
Concepts de base Chapitre 2-1

Instructions d'entre (dparts logiques et instructions intermdi-


aires) : L'instruction lit l'tat des bits, effectue des comparaisons, teste
des bits ou effectue d'autres types de traitement lors de chaque cycle ;
elle enverra la condition d'excution (flux d'alimentation) lorsque les rsul-
tats passeront de ON OFF. La condition d'excution passera OFF lors
du cycle suivant.
Exemple
Instruction diffrencie par le bas

Passera ON lorsque le CIO 000103 basculera de


ON OFF et passera OFF aprs un cycle.

Remarque Contrairement aux instructions diffrencies par le haut, la


variation (%) de diffrenciation par le bas ne peut tre ajoute
qu'aux instructions LD, AND, OR, SET et RSET. Pour excuter la
diffrenciation par le bas avec d'autres instructions, combinez les
instructions une instruction DIFD ou DOWN. NOT ne peut tre
ajout aux instructions que si vous utilisez une UC CS1-H, CJ1-H,
CJ1M ou CS1D.
Instructions d'entre (dparts logiques et instructions intermdi-
aires) : L'instruction lit l'tat des bits, effectue des comparaisons, teste
des bits ou effectue d'autres types de traitement lors de chaque cycle ;
elle enverra une condition d'excution OFF (arrt du flux d'alimentation)
lorsque les rsultats passeront de ON OFF. La condition d'excution
passera ON lors du cycle suivant.
Exemple
Instruction d'entre diffrencie par le bas 0001
03

Condition d'excution OFF cre pour un


seul cycle lorsque CIO 00103 passe de
ON OFF.

38
Concepts de base Chapitre 2-1

2-1-9 Temporisation des instructions d'E/S


Le graphique suivant prsente les diffrentes phases de fonctionnement des
instructions individuelles qui utilisent un programme ne contenant que des
instructions LD et OUT.

Entre
A B1 lue
Entre
lue
A B2 Entre
lue

A B3 Entre
Entre lue
lue
A B4 Entre
! lue
A B5 Entre
! lue
A B6 Entre
lue
Entre Entre lue
A B7
lue
!
A B8 Entre
! lue
A B9 Entre
! lue

A B10
! !

A B11
! !
A B12
!

Traitement
UC
Instruction Rafrachissement d'E/S
excute.

Instructions diffrencies
Une instruction diffrencie contient un drapeau interne signalant l'tat de
la valeur prcdente (ON ou OFF). Au dbut du fonctionnement, les
drapeaux de la valeur prcdente des instructions diffrencies par le
haut (DIFU et @) sont dfinis sur ON et ceux des instructions
diffrencies par le bas (DIFD et %) sont dfinis sur OFF. Cela permet
d'viter que les rsultats de la diffrenciation ne soient envoys
accidentellement au dbut de l'opration.
Une instruction diffrencie par le haut (DIFU ou @) n'enverra ON que
lorsque la condition d'excution sera sur ON et que le drapeau de la
valeur prcdente sera sur OFF.

39
Concepts de base Chapitre 2-1

Utilisation dans Interlocks (instructions IL ILC)


Dans l'exemple suivant, le drapeau de la valeur prcdente de l'instruction
diffrencie garde la valeur verrouille prcdente et n'enverra pas de rsul-
tat diffrenci au point A car la valeur ne sera pas mise jour tant que le ver-
rouillage sera activ.

0000
00
(002)
IL

0000
01
(013)
DIFU 001000

(003)
ILC

IL est en cours IL est en cours


d'excution d'excution

Utilisation dans les sauts (instructions JMP JME) : Comme dans le


cas des verrouillages, le drapeau de la valeur prcdente d'une
instruction diffrencie ne change pas si une instruction est saute. La
valeur prcdente est donc maintenue. Les instructions diffrencies par
le haut et par le bas n'enverront la condition d'excution que si l'tat de
l'entre a chang par rapport l'tat indiqu dans le drapeau de la valeur
prcdente.
Remarque a) N'utilisez pas le drapeau Toujours ON ou A20011 (drapeau
du premier cycle) comme bit d'entre pour une instruction
diffrencie par le haut. L'instruction ne sera jamais excute.
b) N'utilisez pas le drapeau Toujours OFF comme bit d'entre
pour une instruction de diffrenciation par le bas. L'instruction
ne sera jamais excute.

40
Concepts de base Chapitre 2-1

2-1-10 Programmation de la mise jour


Pour mettre jour les E/S externes, vous pouvez utiliser l'une des mthodes
suivantes :
Mise jour cyclique
Mise jour immdiate (instruction spcifie !, instruction IORF)
Consultez le chapitre sur le fonctionnement de l'UC dans le Manuel
d'utilisation de la srie CS/CJ pour plus de dtails sur la mise jour d'E/S.

Mise jour cyclique


Chaque programme affect une tche cyclique prte ou une tche
rpondant la condition d'interruption sera excut depuis l'adresse de dbut
du programme jusqu' l'instruction END(001). Lorsque toutes ces tches
auront t excutes (tches cycliques prtes ou tches rpondant la
condition d'interruption), la mise jour cyclique commence la mise jour de
tous les points E/S en mme temps.
Remarque Les programmes peuvent tre excuts dans plusieurs tches. Les E/S seront
mises jour aprs la dernire instruction END(001) dans les programmes
affects au nombre le plus lev (parmi toutes les tches cycliques prtes) et
elles ne seront pas mises jour aprs l'instruction END(001) dans les
programmes affects d'autres tches cycliques.

Haut
15 0
! LD 000101 CIO 0001
Cartes
15 0 16 bits
! OUT 000209 CIO 0002

END

Haut 15 0
CIO 0003 Cartes
! MOV 0003 15 0 16 bits
CIO 0004
END

Mise jour cyclique


(traitement par lot)
Mise jour d'E/S Toutes les donnes relles

Excutez une instruction IORF pour tous les mots ncessaires avant
l'instruction END(001) si la mise jour d'E/S est ncessaire dans d'autres
tches.

Mise jour immdiate


Instructions avec variation Les E/S sont mises jour comme expliqu dans le tableau ci-dessous
de mise jour (!) lorsqu'une instruction est excute si un bit d'E/S rel est spcifi comme
oprande.
Cartes Donnes mises jour
Cartes d'E/S standard C200H Les E/S des 16 bits contenant le bit
(srie CS uniquement) seront mises jour.
Cartes d'E/S standard CJ

41
Concepts de base Chapitre 2-1

Si une oprande mot est spcifie pour une instruction, les 16 bits
spcifis des E/S seront mis jour.
Les entres de l'oprande d'entre ou de l'oprande source seront mises
jour juste avant l'excution d'une instruction.
Les sorties de l'oprande de sortie ou de l'oprande de destination (D)
seront mise jour juste aprs l'excution d'une instruction.
Ajoutez un point d'exclamation (!) (option de mise jour immdiate) devant
l'instruction.
Remarque La mise jour immdiate n'est pas prise en charge par les UC CS1D pour
systmes d'UC en duplex, mais par contre elles prennent en charge la mise
jour pour les instructions IORF(097) et DLNK(226).
Cartes mises jour pour l'instruction I/O REFRESH
Emplacement Rack UC ou rack d'extension E/S
(mais pas les racks esclaves SYSMAC BUS)
Cartes Cartes d'E/S Cartes d'E/S standard Mises jour
standard srie CS/CJ
Cartes d'E/S standard Mises jour
C200H (voir remarque.)
Cartes d'E/S haute densit Pas de mise jour
groupe 2 C200H (voir
remarque.)
Cartes d'E/S spciales Pas de mise jour

Remarque Les cartes d'E/S C200H ne peuvent pas tre montes sur les API srie CJ.

Haut
. Rafrachissement immdiat
. 15 0
. Entre
!LD 000101 CIO 0001
. Cartes
. 16 bits
. 15 0
!OUT 000209 Sortie
. CIO 0002
.
.
END

Haut
. Rafrachis-
. sement d'E/S 15 0
. S
!MOV 0003 CIO 0003
. 0004 Cartes
. 16 bits
. 15 0
END D
CIO 0004

Rafrachissement cyclique
(traitement par lots)
Rafrachissement d'E/S Toutes les E/S relles

42
Concepts de base Chapitre 2-1

Cartes mises jour pour Il existe une instruction spciale, I/O REFRESH (IORF(097)) qui met jour
les instructions IORF(097) toutes les donnes d'E/S relles d'une plage de mots spcifie. Grce cette
ou DLNK(226) instruction, toutes les donnes relles, ou uniquement celles de la plage
spcifie, peuvent tre mises jour pendant un cycle. IORF peut galement
servir mettre jour les mots affects aux cartes d'E/S spciales.
Une autre instruction, CPU BUS UNIT REFRESH (DLNK(226)) permet de
mettre jour tous les mots affects aux cartes rseau des zones CIO et DM
ainsi que d'effectuer une mise jour spciale de la carte (mise jour des
liaisons de donnes). DLNK(226) n'est prise en charge que par les UC CS1-
H, CJ1-H, CJ1M ou CS1D.
Cartes mises jour pour les instructions IORF(097)
Emplace- Rack UC ou rack d'extension E/S (mais pas les racks esclaves
ment SYSMAC BUS)
Cartes Cartes d'E/S Cartes d'E/S standard srie Mises jour
standard CS/CJ
Cartes d'E/S Mises jour
standard C200H
Cartes d'E/S haute densit Mises jour
groupe 2 C200H
Cartes d'E/S spciales Mises jour
Cartes rseau Pas mises jour

A B
R1
A B
R1 C E

C E D
A E D
R2
R2

Cartes mises jour pour DLNK(226)


Emplace- Rack UC ou rack d'extension E/S (mais pas les racks esclaves
ment SYSMAC BUS)
Cartes Cartes d'E/S standard Pas mises jour
Cartes d'E/S spciales Pas mises jour
Cartes rseau Mises jour
Mots affects la carte dans la zone CIO
Mots affects la carte dans la zone DM
Mise jour spciale pour la carte (liaisons de
donnes pour les cartes Controller Link ou
SYSMAC Link ou E/S dportes pour les
cartes DeviceNet)

Mots affects dans


la zone CIO et DM
et toute mise jour
spciale

DLNK
Cartes rseau
(numro d'unit F)
#F

43
Concepts de base Chapitre 2-1

2-1-11 Capacit de programme


Le tableau suivant prsente les capacits maximales du programme des UC
srie CS/CJ de tous les programmes utilisateurs (c--d, la capacit totale de
toutes les tches). La capacit est exprime en nombre maximal de pas. Il ne
faut absolument pas dpasser la capacit du programme. En cas de tentative
de dpassement, l'criture du programme sera dsactive.
Chaque instruction prend de 1 7 pas. Consultez 10-5 Temps d'excution
des instructions et nombre de pas dans le Manuel d'utilisation afin de
connatre le nombre de pas spcifiques de chaque instruction. (La longueur
de chaque instruction augmentera de 1 si vous utilisez une oprande deux
fois plus longue.)
Srie UC Capacit max. du Points E/S
programme
Srie CS CS1H-CPU67H/CPU67-E 250 Kpas 5 120
CS1D-CPU67H 250 Kpas
CS1D-CPU67S 250 Kpas
CS1H-CPU66H/CPU66-E 120 Kpas
CS1H-CPU65H/CPU65-E 60 Kpas
CS1D-CPU65H 60 Kpas
CS1D-CPU65S 60 Kpas
CS1H-CPU64H/CPU64-E 30 Kpas
CS1H-CPU63H/CPU63-E 20 Kpas
CS1G-CPU45H/CPU45-E 60 Kpas
CS1G-CPU44H/CPU44-E 30 Kpas 1 280
CS1D-CPU44S 30 Kpas
CS1G-CPU43H/CPU43-E 20 Kpas 960
CS1G-CPU42H/CPU42-E 10 Kpas
CS1D-CPU42S 10 Kpas
Srie CJ CJ1H-CPU66H 120 Kpas 2 560
CJ1H-CPU65H 60 Kpas
CJ1G-CPU45H/CPU45 60 Kpas 1 280
CJ1G-CPU44H/CPU44 30 Kpas
CJ1G-CPU43H 20 Kpas 960
CJ1G-CPU42H 10 Kpas
CJ1M-CPU23/CPU13 20 Kpas 640
CJ1M-CPU22/CPU12 10 Kpas 320
CJ1M-CPU11/CPU21 5 K pas 160

Remarque La capacit du programme des API srie CJ est mesure en pas tandis que
la capacit de mmoire des anciens API OMRON, tels que ceux des sries
C200HX/HG/HE et CV, tait mesure en mots. Consultez les informations la
fin du chapitre 10-5 Temps d'excution des instructions et nombre de pas
dans le Manuel d'utilisation de votre API pour connatre les lignes directrices
de la conversion des capacits des programmes par rapport aux anciens API
d'OMRON.

2-1-12 Concepts de base de programmation du schma contact


Les instructions sont excutes dans l'ordre tabli dans la mmoire (ordre
mnmonique). Les concepts de base de programmation ainsi que l'ordre
d'excution doivent tre respects.

44
Concepts de base Chapitre 2-1

Structure gnrale du Un schma contact comprend les lments suivants : des barres de bus gauche
schma contact et droite, des lignes de connexions, des bits d'entre, des bits de sortie et des
instructions spciales. Un programme consiste en une ou plusieurs quations
logiques. Une quation logique est une unit qui peut tre partage lorsque le
bus est spar horizontalement. En forme mnmonique, une quation logique
est l'ensemble des instructions allant de l'instruction LD/LD NOT l'instruction de
sortie situe juste avant les instructions LD/LD NOT suivantes. Une quation
logique d'un programme consiste en un bloc d'instructions qui commence par
une instruction LD/LD NOT indiquant un dpart logique.

Bit d'entre Instruction Bit de sortie


spciale
Barre de Ligne de Ligne de terminaison
bus gauche connexion
Segments
Blocs d'instruction

Mnmonique Un programme mnmonique est une srie d'instructions de schma contact


exprimes sous la forme mnmonique. Il possde des adresses de programmes
et chaque adresse de programme correspond une instruction. Les adresses de
programmes sont formes de six chiffres, la premire tant 000000.
Exemple

Adresse de programme Instruction (mnmonique) Oprande


000000 LD 000000
000001 AND 000001
000002 LD 000002
000003 AND NOT 000003
000004 LD NOT 000100
000005 AND 000101
000006 OR LD
000007 AND LD
000008 OUT 000200
000009 END

45
Concepts de base Chapitre 2-1

Concepts de base du schma contact


1,2,3... 1. Lorsque les API excutent les schmas contacts, la circulation des si-
gnaux (flux d'alimentation) se fait toujours de gauche droite. Vous ne
pouvez pas utiliser de programmation pour laquelle il faut un flux d'alimen-
tation de droite gauche. Par consquent, le dbit est diffrent de celui
des circuits faits de relais de commandes cbles. Par exemple, lorsque le
circuit a est implment dans un programme API, l'alimentation passe
comme si les diodes entre parenthses taient insres et que la
bobine R2 ne pouvait pas tre active avec le contact D inclus. L'ordre rel
d'excution est indiqu sur la droite sous forme mnmonique. Pour obtenir
cette opration sans les diodes imaginaires, il faut rcrire le circuit. Le flux
d'alimentation du circuit b ne peut pas tre non plus programm direc-
tement et doit tre rcrit.
Circuit "a"
Circulation (6) Ordre d'excution (mnmonique)
A (1) des signaux B (7)
((5)) (1) LD A (6) AND B
R1
(2) LD C (7) OUT R1
C (2) ((3)) D (4)
(3) OUT TR0 (8) LD TR0
((8)) (4) AND D (9) AND E
E (9) (10) (5) OR LD (10) OUT R2
R2

Circuit " b"

A B
R1
E

C D
R2

Dans le circuit a , la bobine R2 ne peut tre active si le contact D est


inclus.
Dans le circuit b , le contact E inclus ne peut tre rcrit dans un
schma contact. Le programme doit tre rcrit.
2. Le nombre de bits d'E/S, de bits de travail, de temporisations et d'autres
bits d'entres est illimit. Cependant, les quations logiques doivent rester
aussi claires et simples que possible, mme si cela implique l'utilisation de
plus de bits d'entre afin qu'elles soient plus faciles comprendre et
grer.
3. Le nombre de bits d'entre pouvant tre connects aux quations logiques
srie ou parallles est illimit.
4. Vous pouvez connecter deux ou plusieurs bits de sortie en parallle.

0000 0000
00 05
TIM 0000 #0100

0002
00

46
Concepts de base Chapitre 2-1

5. Les bits de sortie peuvent galement servir de bits d'entre.

0002
00

0002
00

Restrictions
1,2,3... 1. Un schma contact doit tre ferm de manire ce que les signaux (flux
d'alimentation) passent de la barre de bus gauche la barre de bus droite.
Une erreur d'quation logique se produira si le programme n'est pas ferm
(mais le programme peut tre excut).

2. Les bits de sortie, les temporisations, les compteurs et les autres


instructions de sortie ne peuvent tre connects directement la barre de
bus gauche. Si l'un de ces lments est connect directement la barre
de bus gauche, la vrification du programme par un priphrique de
programmation mentionnera une erreur d'quation logique. (Le
programme peut s'excuter mais les instructions Out et MOV(021) ne
seront pas excutes.)
La condition d'entre doit tre satisfaite.

MOV

Insrez un bit de travail NF ou un drapeau de condition ON (drapeau


Toujours ON) si l'entre doit rester sur ON en permanence.

Bit de travail inutilis

ON (drapeau toujours ON)


MOV

47
Concepts de base Chapitre 2-1

3. Un bit d'entre doit toujours tre insr avant, et jamais aprs, une
instruction de sortie telle qu'un bit de sortie. Si vous l'insrez avant une
instruction de sortie, la vrification du programme par un priphrique de
programmation affichera une erreur d'emplacement.

0000 0000 0002 0000


00 03 01 04

0000 0002
01 01

4. Un mme bit de sortie ne peut tre programm qu'une seule fois dans une
instruction de sortie. Les instructions d'un schma contact sont excutes
dans l'ordre depuis l'quation logique suprieure, en un seul cycle. Par
consquent, le rsultat de l'instruction de sortie des quations logiques
infrieures se refltera en fin de compte dans le bit de sortie et les rsultats de
toutes les instructions prcdentes contrlant le mme bit seront rcrits.
(Bit de sortie)
0000
00

(Bit de sortie)
0000
00

5. Un bit d'entre ne peut pas tre utilis dans une instruction de SORTIE
(OUT).

(Bit d'entre)
0000
00

6. Une instruction END(001) doit tre insre la fin du programme dans


chaque tche.
Si un programme ne contenant pas d'instruction END(001) dmarre, une
erreur de programme No End Instruction s'affiche, le voyant ERR/ALM
sur la face avant de l'UC s'allume et le programme n'est pas excut.
Si un programme contient plus d'une instruction END(001), il sera excut
uniquement jusqu' la premire instruction END(001).

48
Concepts de base Chapitre 2-1

Les programmes de dbogage fonctionneront mieux si une instruction


END(001) est insre plusieurs points de rupture entre les quations
logiques squentielles et que l'instruction END(001) du milieu est
supprime aprs la vrification du programme.

Tche (programme) Tche (programme)


000000
000000 000001
000001
END

Ne sera pas excut.


END END

Tche (programme) Tche (programme)


000000 000000
000001 000001

END
Ne sera pas excut.
END
END

Tche (programme) Tche (programme)


000000 000000
000001 000001

END END

2-1-13 Insertion de mnmoniques


Un dpart logique est effectu grce une instruction LD/LD NOT. La zone
comprise entre le dpart logique et l'instruction situe juste avant l'instruction
LD/LD NOT suivante est considre comme un seul bloc d'instructions.
Crez une seule quation logique constitue de deux blocs d'instructions
l'aide d'une instruction AND LD sur AND les blocs ou l'aide d'une instruction
OR LD sur OR les blocs. L'exemple suivant illustre une quation logique
complexe qui permet d'expliquer la procdure d'insertion de mnmoniques
(rsum et ordre des quations logiques).

49
Concepts de base Chapitre 2-1

1,2,3... 1. Commencez par sparer l'quation logique en petits blocs de (a) (f).

0000 0000 0000 0000 0000 0000 0005


00 01 02 03 04 05 00

0010 0010 0000


00 01 06

0005
00

(a) 0000 0000


00 01

(e) 0000 0000


04 05
(b) 0010 0010 (d) 0000 0000
00 01 02 03
(5)
(f) 0000
06
(1)
(c) 0005
00
(4)

(3)
(2)

50
Concepts de base Chapitre 2-1

Programmer les blocs du haut vers le bas, puis de gauche droite.

(a) 0000 0000 (b) 0010 0010


00 01 00 01

(1)
LD 000000 LD 001000
AND 000001 AND 001001

OR LD

(2)

(c) 0005 (c) 0000 0000


00 04 05
(3)
(5)
OR 000500 LD 000004
AND 000005

(4)
(a) 0000 0000 (f) 0000
02 03 06

AND 000002 OR 000006


AND NOT 000003

AND LD

0005
00

OUT 000500

Adresse Instruction Oprande

(a) 000200 LD 000000


000201 AND 000001 (1) (2)
(b) 000202 LD 001000
000203 AND 001001 (3)
000204 OR LD --- (5)
(c) 000205 OR 000500
000206 AND 000002
(d)
000207 AND NOT 000003
000208 LD 000004
(e)
000209 AND 000005 (4)
(f) 000210 OR 000006
000211 AND LD ---
000212 SORTIE 000500

51
Concepts de base Chapitre 2-1

2-1-14 Exemples de programmes


1,2,3... 1. Equations logiques parallles/srie
0000 0000 0000 0000 0002
00 01 02 03 00 Instruction Oprandes
LD 000000
0002 a
00 AND 000001
OR 000200
AND 000002
a b
AND NOT 000003 b
Bloc A Bloc B SORTIE 000200

Programmez l'instruction parallle dans le bloc A, puis dans le bloc B.

2. Equations logiques srie/parallles


0000 0000 0000 0000 0002
00 01 02 03 01 Instruction Oprandes
LD 000000
0002
AND NOT 000001 a
01
LD 000002
0000 AND 000003
04
OR 000201 b
OR 000004
a b AND LD ---
Bloc A Bloc B SORTIE 000201

Sparez le segment en deux blocs, A et B, et programmez-les chacun


individuellement.
Reliez les blocs A et B avec un AND LD.
Programmez le bloc A.

Instruction Oprandes
b1
Bloc B1 LD NOT 000000
0000 0000 0000 0000 0002 AND 000001 a
00 01 02 03 02
LD 000002
AND NOT 000003 b1
0000 0002
04 02
LD NOT 000004
AND 000202 b2
b2 OR LD --- b1 + b 2
Bloc B2 AND LD --- ab
SORTIE 000202
a b
Bloc A Bloc B

Programmez le bloc B1, puis programmez le bloc B2.


Reliez les blocs B1 et B2 avec un OR LD, puis les blocs A et B avec un
AND LD.

52
Concepts de base Chapitre 2-1

3. Exemples de connexion srie dans une quation logique srie

a1 b1
Instruction Oprandes
Bloc A1 Bloc B1 LD 000000
0000 0000 0000 0000 0002 a1
00 01 04 05 03 AND NOT 000001
LD NOT 000002
0000 0002 0002 0002
a2
02 03 06 07
AND 000003
OR LD --- a1 + a 2
LD 000004
b1
a2 b2 AND 000005
Bloc A2 Bloc B2 LD 000006
b2
a b AND 000007
Bloc A Bloc B OR LD --- b1 + b 2
AND LD --- ab
SORTIE 000203

Programmez le bloc A1, programmez le bloc A2, puis connectez les


blocs A1 et A2 avec un OR LD.
Programmez B1 et B2 de la mme faon.

Connectez les blocs A et B avec un AND LD.

Rptez l'opration pour tous les blocs A n prsents.

0005
00

a b c n

Bloc A Bloc B Bloc C Bloc n

53
Concepts de base Chapitre 2-1

4. Equations logiques complexes


0000 0000
0000 0000 0002 Instruction Oprande 00 01
00 01 04
LD 000000 0000 0000
000001 02 03
0000
02
0000
03
LD
LD 000002
AND Z
0000 0000 000003 Z
04 05
OR LD ---
Le schma ci-dessus est bas sur le schma suivant.
AND LD --- 0000
0000 0000 00 Z
06 07 LD 000004
AND 000005
OR LD --- Vous pouvez crire un programme plus simple en
LD 000006 le rcrivant comme indiqu ci-aprs.
AND 000007 0000 0000 0000
02 03 00
OR LD ---
SORTIE 000204
0000
01

b
Instruction Oprande
Bloc
0000 0000 0000 0002 LD 000000 a
00 01 02 04
LD NOT 000001 b
a d
AND 000002
Bloc Bloc LD 000003
0000 0000 0000
c
03 04 05 AND NOT 000004
LD 000005 d
c
LD 000006
0000 0000
06 07 AND NOT 000007
Bloc e
OR LD ---
e
AND LD --- d+e
OR LD --- (d + e) c
Bloc
AND LD --- (d + e) c + b
Vous pouvez rcrire le segment ci-dessus comme
indiqu ci-aprs : SORTIE 000205 ((d + e) c + b) a

0000 0000 0000 0002


00 01 02 05

0000 0000 0000 0000


00 03 04 05

0000 0000 0000 0000 0000


00 03 04 06 07

54
Concepts de base Chapitre 2-1

Entre de rinitialisation Instruction Oprande


0000 0000 LD 000000
00 03 H00000
OR 000001
OR 000002
0000 OR H00000
01
Entre TIM 0001 #0100 10 s AND NOT 000003
d'erreur SORTIE H00000
0000 0002
02 T0001 06 TIM 0001
0100
Erreur affiche AND T0001
H00000
SORTIE 000206
Si un bit de maintien est utilis, l'tat ON/OFF sera
conserv en mmoire, mme en cas de mise hors
tension, et le signal d'erreur restera actif la
prochaine mise sous tension.

5. Equations logiques auxquelles il faut faire attention ou devant tre


rcrites
Instructions OR et OL LD
Dans le cas d'une instruction OR ou OR NOT, un OR est pris en compte avec
les rsultats de la logique du schma contact depuis l'instruction LD ou
LD NOT jusqu' l'instruction OR ou OR NOT. Ainsi, il est possible de rcrire
les quations logiques afin que l'instruction OR LD ne soit pas obligatoire.

0000 0002 0000 0002 0002


00 07 01 07 07

0000 0002 0000


01 07 00

Exemple : Une instruction OR LD sera ncessaire si les quations logiques sont


programmes comme illustr, sans modification. Il est possible de supprimer
quelques tapes en rcrivant les quations logiques comme illustr.
Drivations de l'instruction de sortie
Un bit TR sera ncessaire si une drivation se trouve devant une instruction
AND ou AND NOT. Le bit TR ne sera pas ncessaire si la drivation se trouve
un point connect directement aux instructions de sortie ; l'instruction AND
ou AND NOT ou les instructions de sortie peuvent se poursuivre comme si de
rien n'tait.
Instruction de sortie 1
0000 0000 0002 0000 0002
00 TR0 01 08 00 09

0002 0000 0002


09 01 08

Instruction de sortie 2

Exemple : Une instruction de sortie TR0 de bit de stockage temporaire et une


instruction de chargement (LD) sont ncessaires au point de drivation si les
quations logiques sont programmes sans modification. Il est possible de
supprimer quelques tapes en rcrivant les quations logiques.

55
Concepts de base Chapitre 2-1

Ordre d'excution mnmonique


Les API excutent les schmas contacts dans l'ordre de saisie des
mnmoniques ; il se peut donc que les instructions ne fonctionnent pas
comme prvu, en fonction de la manire dont sont crites les quations
logiques. Pensez toujours l'ordre d'excution mnmonique lorsque vous
crivez les schmas contacts.

0000 0010 0000 0010 0002


00 00 00 00 10

0010 0002 0000 0010


00 10 00 00

Exemple : Dans le schma ci-dessus, CIO 000210 ne peut tre envoy. En


rcrivant l'quation logique comme illustr ci-dessus, il est possible de faire
passer CIO 000210 ON pour un cycle.
Equations logiques devant tre rcrites
Les API excutent les instructions dans l'ordre de saisie des mnmoniques
de manire ce que la circulation des signaux (flux d'alimentation) se fasse
de gauche droite dans le schma contact. Il n'est pas possible de
programmer des dbits de puissance de droite gauche.

0000 0000 0002 0000 0000 0000 0002


00 03 11 01 02 03 11

0000 TR0 0000 0000


01 02 00

0000 0002 0000 0000 0002


04 12 01 04 12

Exemple : Le programme peut tre crit comme dans le schma de gauche


o TR0 reoit la drivation. Dans le schma de droite, les quations logiques
reoivent la mme valeur et le schma est plus facile comprendre. Par
consquent, nous conseillons de rcrire les quations logiques de gauche
dans les quations logiques de droite.
Rcrivez les quations logiques de gauche ci-dessous. Elles ne peuvent pas
tre excutes.
Les flches indiquent la circulation des signaux (flux d'alimentation) lorsque
les quations logiques sont des relais de contrle.
A B
R1
A B
R1 C E

C E D
A E D
R2
R2

56
Prcautions Chapitre 2-2

2-2 Prcautions
2-2-1 Drapeaux de condition
Utilisation des drapeaux Les drapeaux de conditions sont partags par toutes les instructions et
de condition changeront au cours d'un cycle en fonction des rsultats de l'excution de
chaque instruction. Par consquent, veillez utiliser les drapeaux de
condition sur une sortie drive avec les mmes conditions d'excution
directement aprs une instruction afin de reflter les rsultats de l'excution
de l'instruction. Ne connectez jamais un drapeau de condition directement
la barre de bus car il pourrait reflter les rsultats d'excution d'autres
instructions.
Exemple : Utilisation des rsultats d'excution de l'instruction A

Utilisation correcte
Mnmonique
Instruction A
Instruction Oprande
LD a
Reflte les rsultats Instruction A
Drapeau de de l'excution de
condition l'instruction A AND =
Exemple : = Instruction B
Instruction B

La mme condition d'excution (a) sert aux instructions A et B pour excuter


l'instruction B en fonction des rsultats d'excution de l'instruction A. Dans ce
cas, l'instruction B ne sera excute en fonction du drapeau de condition que
si l'instruction A est excute.

Utilisation incorrecte

Segment prcdent

Instruction A

Reflte les rsultats de l'excution


du segment prcdent si
Drapeau de condition l'instruction A n'est pas excute.
Exemple : =
Instruction B

Si le drapeau de condition est connect directement la barre de bus


gauche, l'instruction B sera excute en fonction des rsultats d'excution
d'une quation logique prcdente si l'instruction A n'est pas excute.
Remarque Les drapeaux de condition sont utiliss par toutes les instructions au sein d'un
seul programme (tche) mais ils sont effacs lorsque la tche change. Par
consquent, les rsultats d'excution de la tche prcdente ne seront pas
reflts dans les tches ultrieures. Etant donn que les drapeaux de
condition sont partags par toutes les instructions, veillez absolument ce
qu'ils n'interfrent pas les uns avec les autres dans un mme schma contact.
Les schmas ci-aprs sont des exemples.

57
Prcautions Chapitre 2-2

Utilisation des rsultats d'excution dans les entres NF et NO


Les drapeaux de condition prennent les rsultats d'excution de l'instruction B,
comme illustr dans l'exemple ci-dessous, mme si les bits d'entre NF et NO
sont excuts partir de la mme drivation de sortie.

Instruction A

Utilisation
incorrecte Reflte les rsultats de
l'excution de l'instruction A
Drapeau de condition
Exemple : =
Instruction B

Reflte les rsultats de


Drapeau de condition l'excution de l'instruction B.
Exemple : =

Veillez ce que chaque rsultat ne soit pris qu'une seule fois par une instruction
de sortie afin de garantir que les rsultats d'excution de l'instruction B ne seront
pas repris.

Instruction A
Reflte les rsultats de
l'excution de l'instruction A

Drapeau de condition
Utilisation Exemple : =
correcte

Reflte les rsultats de


Drapeau de condition l'excution de l'instruction A
Exemple : =

Instruction B

58
Prcautions Chapitre 2-2

Exemple : L'exemple suivant dplacera #0200 vers D00200 si D00100 contient


#0010 et dplacera #0300 vers D00300 si D00100 ne contient pas #0010.

Utilisa-
tion Reflte les rsultats de
incor- l'excution de CMP.
recte

(1)

Reflte les rsultats de


l'excution de MOV.

(2)

Le drapeau d'galit passera ON si D00100 de l'quation logique ci-dessus


contient #0010. #0200 sera dplac vers D00200 pour l'instruction (1), mais
ensuite le drapeau d'galit passera OFF car les donnes source #0200 ne
sont pas 0000 hex. L'instruction MOV (2) sera ensuite excute et #0300 sera
dplac vers D00300. Il faudra donc insrer une quation logique, comme
illustr ci-dessous, afin d'viter que les rsultats de la premire instruction
MOVE ne soient repris.

Utilisation
correcte

Reflte les rsultats


de l'excution de CMP.

59
Prcautions Chapitre 2-2

Utilisation des rsultats d'excution d'instructions diffrencies


Dans le cas des instructions diffrencies, les rsultats d'excution sont
reflts dans les drapeaux de condition uniquement si la condition
d'excution est rencontre. Les rsultats d'une quation logique prcdente
(plutt que les rsultats d'excution de l'instruction diffrencie) seront
reflts dans les drapeaux de condition du cycle suivant. Par consquent,
vous devez connatre l'action ralise par les drapeaux de conditions dans le
cycle suivant s'il faut utiliser les rsultats d'excution des instructions
diffrencies.
Dans l'exemple suivant, les instructions A et B ne seront excutes que si la
condition d'excution C se prsente, mais le problme suivant se posera si
l'instruction B reprend les rsultats d'excution de l'instruction A. Si la
condition d'excution C reste ON dans le cycle suivant l'excution de
l'instruction A, l'instruction B s'excutera de manire imprvue (par la
condition d'excution) lorsque le drapeau de condition passera de OFF ON,
suite aux rsultats en provenance d'une quation logique prcdent.

Segment prcdent
Utilisation
incorrecte
Instruction A

Reflte les rsultats de l'excution de l'instruction A


lorsque la condition d'excution est remplie.
Reflte les rsultats de l'excution d'un segment
Exemple de drapeau prcdent dans le cycle suivant.
de condition : =
Instruction B

Dans ce cas, les instructions A et B ne sont pas des instructions


diffrencies, l'instruction DIFU (de DIFD) est utilise leur place, comme
illustr ci-dessous, et les instructions A et B sont toutes deux diffrencies par
le haut (ou par le bas) et excutes pour un seul cycle.

Segment prcdent

Utilisation
correcte

Instruction A

Reflte les rsultats de l'excution


Exemple de drapeau de l'instruction A
de condition : =
Instruction B

Remarque Les UC CS1-H, CJ1-H, CJ1M ou CS1D prennent en charge les instructions
de sauvegarde et de chargement de l'tat des drapeaux de condition
(CCS(282) et CCL(283)). Elles peuvent tre utilises pour accder aux
drapeaux de condition d'autres emplacements dans une mme tche ou
dans une tche diffrente.
Conditions principales pour faire passer les drapeaux de condition ON
Drapeau d'erreur
Le drapeau ER passera ON dans certaines conditions, comme par exemple
lorsque les donnes oprandes d'une instruction ne sont pas correctes.
L'instruction ne sera pas excute lorsque le drapeau ER passera ON.
60
Prcautions Chapitre 2-2

Lorsque le drapeau ER est ON, l'tat des autres drapeaux de condition tels
que <, >, OF et UF ne changera pas et l'tat des drapeaux = et N changera
d'une instruction l'autre.
Consultez les descriptions de chaque instruction dans le Manuel de rfrence
des instructions pour les automates programmables srie CS/CJ pour
connatre les conditions qui font passer le drapeau ER ON. Soyez prudent
car certaines instructions feront passer le drapeau ER OFF quelles que
soient les conditions.
Remarque Les paramtres de la configuration de l'API spcifiant quand une erreur
d'instruction se produit dterminent si le fonctionnement doit s'arrter lorsque
le drapeau ER passe ON. Selon la valeur par dfaut, le fonctionnement se
poursuivra lorsque le drapeau ER passera ON. Si le systme spcifie
Arrter le fonctionnement lorsque le drapeau ER passe ON et que le
fonctionnement s'arrte (comme s'il s'agissait d'une erreur de programme),
l'adresse du programme au point auquel s'est arrt le fonctionnement sera
sauvegarde en A298 et A299. En mme temps, A29508 passera ON.
Drapeau d'galit
Le drapeau d'galit est un drapeau temporaire pour toutes les instructions,
sauf quand les rsultats des comparaisons sont gaux (=). Il est dfini
automatiquement par le systme et sera modifi. Une instruction peut faire
passer le drapeau d'galit OFF (ON) aprs qu'une instruction prcdente
l'a fait passer ON (OFF). Par exemple, le drapeau d'galit passera ON
lorsque l'instruction MOV, ou toute autre instruction de dplacement, fera
passer 0000 hex. comme donnes source, mais il sera OFF tout le reste du
temps. Mme si une instruction fait passer le drapeau d'galit ON,
l'instruction de dplacement s'excutera immdiatement et le drapeau
d'galit passera ON ou OFF en fonction de la valeur des donnes source
de l'instruction (0000 hex. ou non).
Drapeau de retenue (CY)
Le drapeau de retenue sert pour les instructions de dcalage, les instructions
d'addition et de soustraction avec entre de retenue, les emprunts et les
retenues d'instruction d'addition et de soustraction ainsi que pour les
instructions de cartes d'E/S spciales, les instructions PID et les
instructions FPD. Veuillez prendre note des prcautions suivantes.
Note 1. Le drapeau de retenue peut rester sur ON (OFF) tant donn les rsultats
d'excution d'une certaine instruction, puis servir dans une autre
instruction (une instruction d'addition et de soustraction avec instruction de
retenue ou de dcalage). N'oubliez pas d'effacer le drapeau de retenue si
ncessaire.
2. Le drapeau de retenue peut passer ON (OFF) cause des rsultats
d'excution d'une certaine instruction et repasser OFF (ON) dans une
autre instruction. Veillez ce que les rsultats corrects soient reflts dans
le drapeau de retenue lorsque vous l'utilisez.
Drapeaux infrieur et suprieur
Les drapeaux < et > sont utiliss dans les instructions de comparaison ainsi que
dans les instructions LMT, BAND, ZONE, PID et autres.
Le drapeau < ou > peut tre mis sur OFF (ON) par une autre instruction mme s'il
est mis sur ON (OFF) suite aux rsultats d'excution d'une certaine instruction.
Drapeau ngatif
Le drapeau N (ngatif) est ON lorsque le bit le plus gauche du mot des
rsultats d'excution de l'instruction est 1 pour certaines instructions et il
est OFF sans condition pour les autres instructions.
Spcification d'oprandes pour plusieurs mots
Dans le cas des API srie CS/CJ, une instruction sera excute telle qu'elle
est crite mme si une oprande exigeant plusieurs mots a t spcifie et
que donc tous les mots de cette oprande ne se trouvent pas dans la mme
zone. Dans ce cas, les mots seront pris dans l'ordre des adresses mmoire
de l'API. Le drapeau d'erreur ne passera pas ON.

61
Prcautions Chapitre 2-2

Prenons comme exemple les rsultats de l'excution d'un transfert par bloc
avec XFER(070) si 20 mots sont spcifis pour le transfert, en commenant
W500. Dans ce cas, la zone de travail, qui se termine W511, sera
dpasse, mais l'instruction sera excute sans faire passer le drapeau
d'erreur ON. Dans les adresses mmoire de l'API, les valeurs actuelles des
temporisations sont maintenues en mmoire aprs la zone de travail. Par
consquent, lors de l'instruction suivante, W500 W511 seront transfrs
vers D00000 D00011 et les valeurs actuelles de T0000 T0007 seront
transfres vers D00012 D00019.
Remarque Consultez l'annexe Plan de la mmoire des adresses mmoire de l'API pour
les adresses mmoire de l'API spcifiques.

W500
jusqu' Transf- jusqu' jusqu'
jusqu'
&20 Nombre de mots r.
W511
Premier mot source T0000
jusqu' jusqu' jusqu' jusqu'
Premier mot destination

2-2-2 Sections de programmes spciales


Les programmes de la srie CS/CJ contiennent des sections de programmes
spciales qui contrlent les conditions des instructions. Vous avez le choix entre
les sections de programmes spciales suivantes.
Section de programme Instructions Condition d'instruction Etat
Sous-programme Instructions SBS, SBN et Le sous-programme est La section du sous-
RET excut. programme comprise entre
les instructions SBN et RET
est excute.
Section IL - ILC Instructions IL et ILC La section est verrouille Les bits de sortie passent
sur ON et les temporisations
Section de squence Instructions STEP S et sont rinitialises. Les autres
chelonne instructions STEP instructions ne seront pas
excutes et l'tat prcdent
sera maintenu.
Boucle FOR-NEXT Instructions FOR et NEXT Rupture en cours. En boucles
Section JMP0 JME0 Instructions JMP0 et JME0 Saut
Section de programmes de Instructions BPRG et BEND Le programme de bloc Le programme de bloc repris
bloc s'excute. dans les mnmoniques entre
les instructions BPRG et
BEND est excut.

Combinaisons d'instructions
Le tableau suivant illustre le type d'instruction spciale qui peut tre utilis
dans d'autres sections de programmes.
Sous- Section IL - Section de Boucle Section Section de
programme ILC squence FOR-NEXT JMP0 JME0 programmes
chelonne de bloc
Sous-programme Impossible Impossible Impossible Impossible Impossible Impossible
IL - ILC OK Impossible Impossible OK OK Impossible
Section de Impossible OK Impossible Impossible OK Impossible
squence
chelonne
Boucle FOR- OK OK Impossible OK OK Impossible
NEXT
JMP0 JME0 OK OK Impossible Impossible Impossible Impossible
Section de OK OK OK Impossible OK Impossible
programmes de
bloc

62
Prcautions Chapitre 2-2

Remarque Les instructions qui prcisent des zones de programmes ne peuvent tre
utilises pour des programmes dans d'autres tches. Consultez la section 4-2-2
Limites des instructions relatives aux tches pour plus de dtails.

Sous-programmes Rassemblez tous les sous-programmes juste avant l'instruction END(001)


dans tous les programmes mais aprs la programmation des lments autres
que les sous-programmes. (Un sous-programme ne peut donc pas tre plac
dans une squence chelonne, un programme de bloc, une section FOR
NEXT ou une section JMP0 JME0.) Si un programme autre qu'un sous-
programme est plac aprs un sous-programme (SBN RET), ce programme
ne sera pas excut.
Programme

Sous-programme

Programme

Sous-programme

Instructions non Les instructions suivantes ne peuvent pas tre places dans un sous-
disponibles dans les programme.
sous-programmes Fonction Mnmonique Instruction
Contrle de processus pas STEP(008) Dfinit la section de
pas squence chelonne
SNXT(009) Passe travers les tapes
de la squence
chelonne

Remarque Sections du programme de bloc


Un sous-programme peut inclure une section de programme de bloc. Cependant,
si l'tat du programme de bloc est WAIT lorsque l'excution revient du sous-
programme vers le programme principal, la section de programme de bloc
gardera l'tat WAIT la prochaine fois qu'elle sera appele.

63
Prcautions Chapitre 2-2

Instructions non
disponibles dans les Fonction Mnmonique Instruction
sections de squence
Commandes des FOR(512), NEXT(513) et FOR, NEXT et BREAK LOOP
chelonne squences BREAK(514)
END(001) END
IL(002) et ILC(003) INTERLOCK et INTERLOCK
CLEAR
JMP(004) et JME(005) JUMP et JUMP END
CJP(510) et CJPN(511) CONDITIONAL JUMP et
CONDITIONAL JUMP NOT
JMP0(515) et JME0(516) MULTIPLE JUMP et
MULTIPLE JUMP END
Sous-programmes SBN(092) et RET(093) SUBROUTINE ENTRY et
SUBROUTINE RETURN
Programmes de IF(802) (NOT), ELSE(803) et Instructions de drivation
bloc IEND(804)
BPRG(096) et BEND(801) BLOCK PROGRAM BEGIN/
END
EXIT(806) (NOT) CONDITIONAL BLOCK EXIT
(NOT)
LOOP(809) et LEND(810) Loop Control
(NOT)
WAIT(805) (NOT) ONE CYCLE WAIT (NOT)
TIMW(813) TIMER WAIT
TMHW(815) HIGH-SPEED TIMER WAIT
CNTW(814) COUNTER WAIT
BPPS(811) et BPRS(812) BLOCK PROGRAM PAUSE et
RESTART

Note 1. Une section de schma contact chelonn peut tre utilise dans une
section verrouille (entre IL et ILC). La section de squence chelonne
sera compltement rinitialise lorsque le verrouillage passera ON.
2. Une section de schma contact chelonne peut tre utilise entre les
instructions MULTIPLE JUMP (JMP0) et MULTIPLE JUMP END (JME0).

64
Prcautions Chapitre 2-2

Instructions non Les instructions suivantes ne peuvent pas tre places dans des sections de
disponibles dans les programmes de bloc.
sections de programmes Classement par fonction Mnmonique Instruction
de bloc
Commandes des FOR(512), NEXT(513) et FOR, NEXT et BREAK
squences BREAK(514) LOOP
END(001) END
IL(002) et ILC(003) INTERLOCK et
INTERLOCK CLEAR
JMP0(515) et JME0(516) MULTIPLE JUMP et
MULTIPLE JUMP END
Entre de squence UP(521) CONDITION ON
DOWN(522) CONDITION OFF
Sortie de squence DIFU DIFFERENTIATE UP
DIFD DIFFERENTIATE DOWN
KEEP KEEP
OUT OUTPUT
OUT NOT OUTPUT NOT
Temporisation/compteur TIM TIMER
TIMH HIGH-SPEED TIMER
TMHH(540) ONE-MS TIMER
TTIM(087) ACCUMULATIVE TIMER
TIML(542) LONG TIMER
MTIM(543) MULTI-OUTPUT TIMER
CNT COUNTER
CNTR REVERSIBLE COUNTER
Sous-programmes SBN(092) et RET(093) SUBROUTINE ENTRY et
SUBROUTINE RETURN
Dcalage de donnes SFT SHIFT
Contrle de schma STEP(008) et SNXT(009) STEP DEFINE et STEP
contact pas pas START
Contrles des donnes PID PID CONTROL
Programme de bloc BPRG(096) BLOCK PROGRAM
BEGIN
Diagnostic des problmes FPD(269) FAILURE POINT
DETECTION

Note 1. Les programmes de bloc peuvent tre utiliss dans une section de schma
contact chelonne.
2. Un schma contact pas pas peut tre utilis dans une section verrouille
(entre IL et ILC). La section du programme de bloc ne sera pas excute
si le verrouillage est ON.
3. Une section de programme de bloc peut tre utilise entre les instructions
MULTIPLE JUMP (JMP0) et MULTIPLE JUMP END (JME0).
4. Une instruction JUMP (JMP) et une instructions CONDITIONAL JUMP (CJP/
CJPN) peuvent tre utilises dans une section de programmes de bloc. Les
instructions JUMP (JMP) et JUMP END (JME) ainsi que les instructions
CONDITIONAL JUMP (CJP/CJPN) et JUMP END (JME) ne peuvent pas tre
utilises dans la section de programmes de bloc sauf si elles sont groupes
par paire. Le programme ne s'excutera pas correctement sauf si ces
instructions sont groupes par paire.

65
Vrification des programmes Chapitre 2-3

2-3 Vrification des programmes


Les programmes de la srie CS/CJ peuvent tre vrifis aux niveaux
suivants :
vrification l'entre lors du fonctionnement l'entre de la console de
programmation ;
vrification du programme par CX-Programmer ;
vrification des instructions pendant l'excution ;
vrification des erreurs fatales (erreurs de programme) pendant l'excution.
2-3-1 Erreurs lors de l'entre de priphriques de programmation
Console de programmation
La console de programmation affichera les erreurs aux points suivants lors de
l'entre.
Erreur affiche Cause
CHK MEM La broche 1 de l'interrupteur DIP de l'UC est ON
(protection en criture).
IO No. ERR Une entre d'E/S illgale a t tente.

CX-Programmer
Le programme sera automatiquement vrifi par CX-Programmer aux moments
suivants.
Moment Contenu vrifi
A l'insertion de Saisies des instructions, saisies des oprandes et modles de
schmas contacts programmation
Lors du charge- Toutes les oprandes de toutes les instructions et tous les modles
ment de fichiers de programmation
Lors du tlchar- Modles pris en charge par la srie CS/CJ et toutes les oprandes
gement de fichiers de toutes les instructions
Pendant l'dition Capacit, etc.
en ligne

Les rsultats des vrifications sont envoys dans l'onglet texte de la fentre
Output. De mme, la barre de bus gauche des sections de programmes
illgales s'affichera en rouge dans la prsentation du schma.
2-3-2 Vrification du programme par CX-Programmer
Les erreurs dtectes lors de la vrification du programme par CX-Programmer
sont reprises dans le tableau suivant.
CX-Programmer ne vrifie pas les erreurs de plage des oprandes dont l'adresse
est indirecte dans les instructions. Les erreurs d'adressage indirect seront
dtectes lors de la vrification de l'excution du programme et le drapeau ER
passera ON, comme dcrit dans le paragraphe suivant. Consultez le Manuel de
rfrence des instructions pour les automates programmables srie CS/CJ
(W340) pour plus de dtails.
Lors de la vrification du programme par CX-Programmer, l'oprateur peut
prciser le niveau A, B ou C de vrification (en fonction de la gravit de l'erreur),
ou mme un niveau de vrification personnalis.
Zone Vrification
Donnes illgales : Emplacements des instructions
schma contact Lignes d'E/S
Connexions
Achvement des instructions et du fonctionnement
Prise en charge Instructions et oprandes prises en charge par l'API
d'instructions par Variations d'instructions (NOT, !, @ et %)
l'API
Intgrit du code de l'objet

66
Vrification des programmes Chapitre 2-3

Zone Vrification
Plages des Plages des zones des oprandes
oprandes Types des donnes d'oprandes
Vrification de l'accs aux mots en lecture seule
Vrification de la plage des oprandes, y compris :
constantes (#, &, +, )
codes de commandes
vrification des limites des zones pour les oprandes
plusieurs mots
vrification des relations de taille pour les oprandes
plusieurs mots
chevauchement des plages d'oprandes
affectations de plusieurs mots
oprandes double longueur
vrification des limites des zones pour les dcalages
Capacit du Nombre de pas
programme pour les Capacit gnrale
API
Nombre de tches
Syntaxe Vrification des appels pour les instructions par paire
ILILC
JMPJME, CJP/CJPN-JME
SBSSBNRET, MCROSBNRET
STEPSNXT
BPRGBEND
IFIEND
LOOPLEND
Emplacement de programmation limit pour BPRGBEND
Emplacement de programmation limit pour SBN-RET
Emplacement de programmation limit pour STEP-SNXT
Emplacement de programmation limit pour FOR-NEXT
Emplacement de programmation limit pour les tches
d'interruption
Emplacement de programmation obligatoire pour
BPRGBEND
Emplacement de programmation obligatoire pour FOR-NEXT
Imbrication illgale
Instruction END(001)
Cohrence des numros
Structure du Dpassements de piles
schma contact
Duplication des Duplique la vrification des rsultats
rsultats Par bit
Par mot
Instructions de temporisation/compteur
Longs mots (de 2 ou 4 mots)
Mots affects plusieurs fois
Plages de dbut/fin
Numros de l'instruction FAL
Instructions comprenant plusieurs oprandes de sortie
Tches Vrifie les tches devant commencer au dbut du
fonctionnement
Affectation du programme des tches

Remarque La duplication des rsultats n'est pas vrifie entre les tches ; elle ne l'est
qu'au sein des tches individuelles.

67
Vrification des programmes Chapitre 2-3

Oprandes plusieurs Les limites des zones de mmoire des oprandes plusieurs mots sont
mots vrifies pour la vrification du programme, comme illustr dans le tableau
suivant.
CX-Programmer Consoles de
programmation
CX-Programmer offre les fonctionnalits suivantes pour les Vrifies lorsque les
oprandes plusieurs mots qui dpassent une limite de zone programmes sont
de mmoire. installs, c--d que
Impossible de transfrer le programme vers l'UC. les oprandes qui
dpassent une limite
Impossible de lire le programme partir de l'UC. de zone de mmoire
Des erreurs de compilation sont gnres pour la ne peuvent pas tre
vrification du programme. crites.
Lors de la programmation hors ligne, des messages
d'avertissement apparatront l'cran.
Des messages d'avertissement apparatront l'cran lors
de l'dition en ligne en mode PROGRAM ou MONITOR.

2-3-3 Vrification de l'excution du programme


Les vrifications concernant l'emplacement des instructions et des oprandes
sont effectues sur les instructions lors de la saisie partir des priphriques
de programmation (y compris les consoles de programmation) ainsi que
pendant les vrifications de programmes partir des priphriques de
programmation (except les consoles de programmation). Cependant, il ne
s'agit pas de vrifications finales.
Les vrifications suivantes sont effectues lors de l'excution de l'instruction.
Type d'erreur Drapeau passant ON en cas Arrt/poursuiste du fonctionnement
d'erreur
1. Erreur de traitement de Drapeau ER Dans la configuration de l'API, vous pouvez
l'instruction Le drapeau d'erreur de traitement dfinir un paramtre de faon prciser si le
d'instruction (A29508) passera aussi fonctionnement doit s'arrter ou continuer en
ON s'il est spcifi qu'il faut arrter le cas d'erreur de traitement d'instruction. Par
fonctionnement lorsqu'une erreur se dfaut, le fonctionnement continuera.
produit. Une erreur de programme sera gnre et le
fonctionnement s'arrtera uniquement si Arrter
le fonctionnement a t spcifi.
2. Erreur d'accs Drapeau AER Dans la configuration de l'API, vous pouvez
Le drapeau d'erreur d'accs (A29510) dfinir un paramtre de faon prciser si le
passera aussi ON s'il est spcifi qu'il fonctionnement doit s'arrter ou continuer en
faut arrter le fonctionnement cas d'erreur d'accs. Par dfaut, le
lorsqu'une erreur se produit. fonctionnement continuera.
Une erreur de programme sera gnre et le
fonctionnement s'arrtera uniquement si Arrter
le fonctionnement a t spcifi.
3. Erreur d'instruction illgale Drapeau d'erreur d'instruction illgale (Erreur de programme) fatale
(A29514)
4. Erreur de dpassement de Drapeau d'erreur de dpassement MU (Erreur de programme) fatale
la MU (mmoire utilisateur)

Erreurs de traitement d'instruction


Une erreur de traitement d'instruction se produira si des donnes incorrectes
ont t fournies lors de l'excution d'une instruction ou si quelqu'un a essay
d'excuter une instruction en dehors d'une tche. Dans ce cas-ci, les
donnes obligatoires au dbut du traitement de l'instruction ont t vrifies.
Le rsultat est le suivants : l'instruction n'avait pas t excute, le drapeau
ER (d'erreur) est pass ON et les drapeaux EQ et N sont conservs ou mis
sur OFF en fonction de l'instruction.
Le drapeau ER (d'erreur) passera OFF si l'instruction (except les
instructions d'entre) se termine normalement. Les conditions faisant passer
le drapeau ER ON varient en fonction de chaque instruction. Consultez les
descriptions de chaque instruction dans le Manuel de rfrence des
instructions pour les automates programmables srie CS/CJ (W340) pour
plus de dtails.

68
Vrification des programmes Chapitre 2-3

Si dans la configuration de l'API, Erreurs d'instruction est programm sur


Arrter le fonctionnement, le fonctionnement s'arrtera (erreur fatale) et le
drapeau d'erreur de traitement d'instruction (A29508) passera ON si une
erreur de traitement d'instruction se produit et que le drapeau ER passe ON.
Erreurs d'accs illgal
Les erreurs d'accs illgal indiquent qu'il y a eu un accs une mauvaise
zone d'une des manires suivantes lors de l'accs l'adresse spcifiant
l'oprande de l'instruction.
a. Lecture ou criture d'une zone de paramtres
b. Lecture dans une zone de mmoire non monte (voir remarque)
c. Ecriture dans une zone EM spcifie comme mmoire de fichiers EM
d. Ecriture dans une zone de lecture seule
e. La valeur spcifie dans une adresse DM/EM indirecte en mode BCD
n'tait pas une donne BCD (par exemple, *D000001 contient #A000).
Le traitement d'instruction se poursuivra et le drapeau d'erreur (drapeau ER)
ne passera pas ON si une erreur d'accs se produit, mais c'est le drapeau
d'erreur d'accs (AER) qui passera ON.
Remarque Une erreur d'accs se produira pour les raisons suivantes :
lorsqu'une adresse EM spcifie dpasse 32767 (exemple : E32768)
pour la banque actuelle ;
la banque finale (exemple : C) est spcifie pour une adresse EM
indirecte en mode BIN et le mot spcifi contient 8000 FFFF hex.
(exemple : @EC_00001 contient #8000) ;
la banque actuelle (exemple : C) est spcifie pour une adresse EM
indirecte en mode BIN et le mot spcifi contient 8000 FFFF hex.
(exemple : @EC_00001 contient #8000) ;
un registre d'index (IR) contenant l'adresse de mmoire interne d'un
bit est utilis en tant qu'adresse de mot ou un IR contenant l'adresse
de mmoire interne d'un mot est utilis en tant qu'adresse de bit.
Si dans la configuration de l'API, Erreurs d'instruction est programm sur
Arrter le fonctionnement, le fonctionnement s'arrtera (erreur fatale) et le
drapeau d'erreur d'accs illgal (A29510) passera ON si une erreur
d'accs illgal se produit et que le drapeau AER passe ON.
Remarque Le drapeau d'erreur d'accs (AER) ne sera pas effac aprs l'excution d'une
tche. Si Poursuivre le fonctionnement a t choisi pour Erreurs d'instruction,
ce drapeau peut tre surveill jusqu' l'instruction END(001) afin de vrifier si
une erreur d'accs illgal s'est produite dans le programme de tches. (L'tat
du drapeau AER final, aprs l'excution de tout le programme utilisateur, sera
surveill si ce drapeau est surveill par une console de programmation.)
Autres erreurs
Erreurs d'instruction illgale
Les erreurs d'instruction illgale indiquent qu'a eu lieu une tentative
d'excution des donnes d'instruction autres que celles dfinies dans le
systme. Cette erreur ne doit normalement pas se produire tant que le
programme est cr sur un priphrique de programmation srie CS/CJ (y
compris les consoles de programmation).
Dans le cas fort peu probable o cette erreur se produirait, elle serait traite
comme une erreur de programme : le fonctionnement s'arrtera (erreur fatale)
et le drapeau d'instruction illgale (A29514) passera ON.
Erreur de dpassement de la MU (mmoire utilisateur)
Les erreurs de dpassement de MU indiquent qu'a eu lieu une tentative
d'excution de donnes d'instruction stockes au-del de la dernire adresse
dans la mmoire utilisateur (MU) dfinie comme zone de stockage du
programme. Cette erreur ne doit normalement pas se produire tant que le
programme est cr sur un priphrique de programmation srie CS/CJ (y
compris les consoles de programmation).

69
Vrification des programmes Chapitre 2-3

Dans le cas fort peu probable o cette erreur se produirait, elle serait traite
comme une erreur de programme : le fonctionnement s'arrtera (erreur fatale)
et le drapeau de dpassement de la MU (A29515) passera ON.

2-3-4 Vrification des erreurs fatales :


Les erreurs suivantes sont des erreurs de programme fatales ; si l'une d'entre
elles se produit, l'UC s'arrtera. Lorsque le fonctionnement s'arrte suite
une erreur de programme, le numro de tche auquel s'est arrt le
fonctionnement est sauvegard en A294 et l'adresse du programme est
sauvegarde en A298 et A299. Cette information permet de dterminer la
cause de l'erreur de programme.
Adresse Description Donnes stockes
A294 Le type de tche ainsi que le numro de tche Tche cyclique : 0000 001F hex. (tches cycliques
auquel le fonctionnement s'est arrt sera 0 31)
stock ici si le fonctionnement s'arrte suite Tche d'interruption : 8000 80FF hex. (tches
une erreur de programme. d'interruption 0 255)
FFFF hex. sera stock si aucune tche cyclique
active ne fait partie d'un cycle, c--d, aucune
tche cyclique ne doit tre excute.
A298/A299 L'adresse de programme au point auquel le A298 : Partie la plus droite de l'adresse de programme
fonctionnement s'est arrt sera stocke ici en A299 : Partie la plus gauche de l'adresse de programme
binaire si le fonctionnement s'arrte cause
d'une erreur de programme.
Si l'instruction END(001) manque (A29511 est
ON), c'est l'adresse o devait se trouver
END(001) qui sera stocke.
En cas d'erreur d'excution de tche (A29512
est ON), FFFFFFFF hex. sera stock en
A298/A299.

Remarque Si le drapeau d'erreur ou le drapeau d'erreur d'accs passe ON, l'erreur


sera traite comme une erreur de programme et pourra servir arrter le
fonctionnement de l'UC. Dfinissez le fonctionnement des erreurs de
programme dans la configuration de l'API.

70
Vrification des programmes Chapitre 2-3

Erreur de programme Description Drapeaux associs :


Pas d'instruction END Le programme ne contient pas Le drapeau No END (A29511) passe
d'instruction END. ON.
Erreur lors de l'excution de la tche Aucune tche n'est prte dans le cycle. Le drapeau d'erreur de tches (29512)
Aucun programme n'est affect une passe ON.
tche.
Le numro de tche d'interruption
correspondant n'est pas prsent mme
si la condition d'excution de la tche
d'interruption a t rencontre.
Erreur de traitement d'instruction Lors de la tentative d'excution d'une Le drapeau ER et le drapeau d'erreur
(Drapeau ER sur ON) et dans la instruction, de mauvaises valeurs de de traitement d'instruction (A29508)
configuration de l'API, Arrter le donnes ont t fournies dans passent ON si, dans la configuration
fonctionnement a t dfini en cas l'oprande. de l'API, Arrter le fonctionnement a
d'erreurs d'instruction. t dfini en cas d'erreurs d'instruction.
Erreur d'accs illgal (Drapeau AER Lecture ou criture d'une zone de Le drapeau AER et le drapeau d'erreur
sur ON) et dans la configuration de paramtres d'accs illgal (A29510) passent ON
l'API, Arrter le fonctionnement a t Lecture dans une zone de mmoire si, dans la configuration de l'API,
dfini en cas d'erreurs d'instruction. non monte (voir remarque) Arrter le fonctionnement a t dfini
en cas d'erreurs d'instruction.
Ecriture dans une zone EM spcifie
comme mmoire de fichiers EM
Ecriture dans une zone de lecture
seule
La valeur spcifie dans une adresse
DM/EM indirecte en mode BCD n'tait
pas une donne BCD.
Erreur BCD de DM/EM indirecte et La valeur spcifie dans une adresse Le drapeau AER et le drapeau d'erreur
dans la configuration de l'API, Arrter le DM/EM indirecte en mode BCD n'tait BCD de DM/EM indirecte (A29509)
fonctionnement a t dfini en cas pas une donne BCD. passent ON si, dans la configuration
d'erreurs d'instruction. de l'API, Arrter le fonctionnement a
t dfini en cas d'erreurs d'instruction.
Erreur de dpassement d'adresse de Pendant l'dition en ligne, plus de Le drapeau d'erreur de dpassement
diffrenciation 131 071 instructions diffrencies ont de diffrenciation (A29513) passe
t insres ou supprimes. ON.
Erreur de dpassement de MU Une tentative a eu lieu pour excuter Le drapeau de dpassement de MU
(mmoire utilisateur) des donnes d'instruction stockes au- (mmoire utilisateur) (A29516) passe
del de la dernire adresse dans la ON.
mmoire utilisateur (MU) dfinie
comme zone de stockage du
programme.
Erreur d'instruction illgale Une tentative d'excution d'une Le drapeau d'instruction illgale
instruction qui ne peut tre excute a (A29514) passe ON.
eu lieu.

71
Vrification des programmes Chapitre 2-3

72
CHAPITRE 3
Fonction des instructions

Cette section dcrit les instructions que vous pouvez utiliser pour crire des programmes utilisateur.

3-1 Instructions d'entre des squence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74


3-2 Instructions de sortie des squences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3-3 Instructions de commande des squences. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
3-4 Instructions de temporisation et de compteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
3-5 Instructions de comparaison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
3-6 Instructions de dplacement de donnes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
3-7 Instructions de dcalage de donnes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
3-8 Instructions d'incrmentation/dcrmentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
3-9 Instructions mathmatiques symboles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
3-10 Instructions de conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
3-11 Instructions logiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
3-12 Instructions mathmatiques spciales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
3-13 Instructions mathmatiques virgule flottante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
3-14 Instructions virgule flottante double prcision. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
3-15 Instructions de traitement de donnes de tableaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
3-16 Instructions de contrle de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
3-17 Instructions de sous-programme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
3-18 Instructions de traitement d'interruption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
3-19 Instructions de compteur grande vitesse et de sortie d'impulsion (CJ1M-CPU21/22/23 uniquement) . . 132
3-20 Instructions de pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
3-21 Instructions des cartes d'E/S standard. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
3-22 Instructions de communications srie. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
3-23 Instructions rseaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
3-24 Instructions de mmoire de fichiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
3-25 Instructions d'affichage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
3-26 Instructions de temporisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
3-27 Instructions de dbogage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
3-28 Instructions de diagnostic d'erreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
3-29 Autres instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
3-30 Instructions de programmation de bloc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
3-31 Instructions de traitement des chanes de texte. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
3-32 Instructions de contrle des tches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

73
Instructions d'entre des squence Chapitre 3-1

3-1 Instructions d'entre des squence


*1
: non prise en charge par les UC CS1D pour les systmes d'UC en duplex.
*2 : prise en charge par les UC CS1-H, CJ1-H, CJ1M et CS1D seulement.
*3
: prise en charge par les UC CS1-H, CJ1-H et CJ1M uniquement.
Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
LOAD Barre Indique un dpart logique et cre une condition d'excution ON/OFF Dmarrage de la
LD de bus fonde sur l'tat ON/OFF du bit d'oprande spcifi. logique
@LD Non obligatoire
%LD
!LD*1
!@LD*1
Point
!%LD*1 de dpart
du bloc

LOAD NOT Indique un dpart logique et cre une condition d'excution ON/OFF Dmarrage de la
Barre fonde sur l'tat ON/OFF inverse du bit d'oprande spcifi. logique
LD NOT de bus
@LD NOT*2 Non obligatoire
%LD NOT*2
!LD NOT*1
!@LD NOT*3
!%LD NOT*3 Point de
dpart
du bloc

AND Effectue un AND logique de l'tat du bit d'oprande spcifi et de la En continu sur
AND condition d'excution courante. l'quation logique
@AND Obligatoire
%AND
!AND*1
!@AND*1
!%AND*1
AND NOT Inverse l'tat du bit d'oprande spcifi et contient un AND logique En continu sur
AND NOT avec la condition d'excution courante. l'quation logique
@AND NOT*2 Obligatoire
%AND NOT*2
!AND NOT*1
!@AND NOT*3
!%AND NOT*3
OR Barre de Effectue un OR logique de l'tat ON/OFF du bit d'oprande spcifi et En continu sur
OR bus de la condition d'excution courante. l'quation logique
@OR Obligatoire
%OR
!OR*1
!@OR*1
!%OR*1
OR NOT Barre de bus Inverse l'tat du bit d'oprande spcifi et contient un OR logique avec En continu sur
OR NOT la condition d'excution courante. l'quation logique
@OR NOT*2 Obligatoire
%OR NOT*2
!OR NOT*1
!@OR NOT*3
!%OR NOT*3

74
Instructions d'entre des squence Chapitre 3-1

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
AND LOAD Bloc logique Bloc logique Effectue un AND logique entre les blocs logiques. En continu sur
AND LD l'quation logique
LD Obligatoire
Bloc logique A
jusqu'

LD
Bloc logique B
jusqu'

AND LD Connexion srie entre le bloc logique A


et le bloc logique B.

OR LOAD Effectue un OR logique entre les blocs logiques. En continu sur


OR LD Bloc logique l'quation logique
LD Obligatoire
Bloc logique
Bloc logique A
jusqu'

LD
Bloc logique B
jusqu'

OR LD Connexion parallle entre le bloc logique


A et le bloc logique B.
NOT --- Inverse la condition d'excution. En continu sur
NOT l'quation logique
520 Obligatoire
CONDITION ON UP(521) met ON la condition d'excution pendant un cycle lorsque la En continu sur
UP UP(521) condition d'excution passe de OFF ON. l'quation logique
521 Obligatoire
CONDITION OFF DOWN(522) met ON la condition d'excution pendant un cycle En continu sur
DOWN DOWN(522) lorsque la condition d'excution passe de ON OFF. l'quation logique
522 Obligatoire
BIT TEST LD TST(350), AND TST(350) et OR TST(350) sont utilises dans le En continu sur
TST(350) programme comme LD, AND et OR ; la condition d'excution est ON l'quation logique
LD TST
lorsque le bit spcifi dans le mot spcifi est ON et OFF lorsque le bit Non obligatoire
350 S est OFF.
N
S : Mot source
N : Numro de bit

BIT TEST LD TSTN(351), AND TSTN(351) et OR TSTN(351) sont utilises dans En continu sur
TSTN(351) le programme comme LD NOT, AND NOT et OR NOT ; la condition l'quation logique
LD TSTN
d'excution est OFF lorsque le bit spcifi dans le mot spcifi est ON Non obligatoire
351 S et ON lorsque le bit est OFF.
N
S : Mot source
N : Numro de bit

BIT TEST LD TST(350), AND TST(350) et OR TST(350) sont utilises dans le En continu sur
TST(350) programme comme LD, AND et OR ; la condition d'excution est ON l'quation logique
AND TST
lorsque le bit spcifi dans le mot spcifi est ON et OFF lorsque le bit Obligatoire
350 S est OFF.
N
S : Mot source
N : Numro de bit
BIT TEST LD TSTN(351), AND TSTN(351) et OR TSTN(351) sont utilises dans En continu sur
AND TSTN TSTN(351) le programme comme LD NOT, AND NOT et OR NOT ; la condition l'quation logique
351 d'excution est OFF lorsque le bit spcifi dans le mot spcifi est ON Obligatoire
S et ON lorsque le bit est OFF.
N
S : Mot source
N : Numro de bit

75
Instructions de sortie des squences Chapitre 3-2

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
BIT TEST LD TST(350), AND TST(350) et OR TST(350) sont utilises dans le En continu sur
OR TST TST(350) programme comme LD, AND et OR ; la condition d'excution est ON l'quation logique
lorsque le bit spcifi dans le mot spcifi est ON et OFF lorsque le bit Obligatoire
350 S est OFF.
N
S : Mot source
N : Numro de bit
BIT TEST LD TSTN(351), AND TSTN(351) et OR TSTN(351) sont utilises dans En continu sur
TSTN(351) le programme comme LD NOT, AND NOT et OR NOT ; la condition l'quation logique
OR TSTN
d'excution est OFF lorsque le bit spcifi dans le mot spcifi est ON Obligatoire
351 S et ON lorsque le bit est OFF.
N
S : Mot source
N : Numro de bit

3-2 Instructions de sortie des squences


*1 : non prise en charge par les UC CS1D pour les systmes d'UC en duplex.
Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
OUTPUT Sort le rsultat (condition d'excution) du traitement logique vers le bit Sortie
OUT spcifi. obligatoire
!OUT*1

OUTPUT NOT Inverse le rsultat (condition d'excution) du traitement logique et le sort Sortie
OUT NOT vers le bit spcifi. obligatoire
!OUT NOT*1

KEEP Fonctionne comme un relais verrouill. Sortie


S (Dfinir) KEEP(011)
KEEP Obligatoire
B Dfinir
!KEEP*1
R (Rinitialiser)

011 B : Bit
Rini-
tialiser

Condition
d'excution S
Condition
d'excution R

Etat de B
DIFFERENTIATE DIFU(013) met le bit dsign sur ON pour un cycle lorsque la Sortie
UP DIFU(013) Obligatoire
condition d'excution passe de OFF sur ON (front montant).
DIFU B
!DIFU*1 Condition d'excution
B : Bit
013

Etat de B

Un cycle

76
Instructions de sortie des squences Chapitre 3-2

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DIFFERENTIATE DIFU(014) met le bit dsign sur ON pour un cycle lorsque la Sortie
DOWN DIFD(014) Obligatoire
condition d'excution passe de ON sur OFF (front descendant).
DIFD B
!DIFD*1
B : Bit Condition d'excution
014

Etat de B
Un cycle
SET Sortie
SET SET met le bit d'oprande sur ON lorsque la condition d'excution
SET est sur ON. Obligatoire
@SET B Condition
%SET d'excution de SET
!SET*1 B : Bit
!@SET*1
!%SET*1 Etat de B

RESET RSET met le bit d'oprande sur OFF lorsque la condition d'excution est Sortie
RSET RSET Obligatoire
sur ON.
@RSET B Condition d'excution
%RSET
*1 de RSET
!RSET B : Bit
!@RSET*1
Etat de B
!%RSET*1
MULTIPLE BIT SETA(530) met sur ON le nombre de bits conscutifs spcifi. Sortie
SET SETA(530) Obligatoire
SETA D
@SETA
530 N1 N2 bits sont mis 1
N2 (ON).

D : Mot de dbut
N1 : Bit de dbut
N2 : Nombre de
bits

MULTIPLE BIT RSTA(531) met sur OFF le nombre de bits conscutifs spcifi. Sortie
RESET RSTA(531)
Obligatoire
RSTA D
@RSTA
531 N1
N2 bits sont remis 0
N2 (OFF).

D : Mot de dbut
N1 : Bit de dbut
N2 : Nombre de
bits

SINGLE BIT SET SETB(532) met ON le bit spcifi dans le mot spcifi lorsque la Sortie
(CS1-H, CJ1-H, SETB(532) condition d'excution est ON. Obligatoire
CJ1M ou CS1D A la diffrence de l'instruction SET, SETB(532) peut tre utilise pour
uniquement) D initialiser un bit dans un mot DM ou EM.
SETB N
@SETB
*1
!SETB
D : Adresse mot
!@SETB*1 N : Numro de bit

77
Instructions de sortie des squences Chapitre 3-2

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
SINGLE BIT RSTB(533) met OFF le bit spcifi dans le mot spcifi lorsque la Sortie
RESET (CS1-H, RSTB(533) condition d'excution est ON. Obligatoire
CJ1-H, CJ1M ou A la diffrence de l'instruction RSET, RSTB(533) peut tre utilise pour
CS1D D
rinitialiser un bit dans un mot DM ou EM.
uniquement) N
RSTB
@RSTB D : Adresse mot
!RSTB*1 N : Numro de bit
!@RSTB*1
SINGLE BIT OUTB(534) sort le rsultat (condition d'excution) du traitement logique Sortie
OUTPUT (CS1-H, OUTB(534) vers le bit spcifi. Obligatoire
CJ1-H, CJ1M ou A la diffrence de l'instruction OUT, OUTB(534) peut tre utilise pour
CS1D D
contrler un bit dans un mot DM ou EM.
uniquement) N
OUTB
@OUTB
D : Adresse mot
!OUTB*1
N : Numro de bit

78
Instructions de commande des squences Chapitre 3-3

3-3 Instructions de commande des squences


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
END Indique la fin d'un programme. Sortie
END END(001) END(001) termine l'excution d'un programme pour ce cycle. Aucune Non obligatoire
001 instruction n'est crite aprs l'excution de END(001). L'excution
passe au programme correspondant au numro de tche suivant.
Lorsque le programme en cours d'excution correspond au numro
de tche le plus lev dans le programme, END(001) marque la fin
de l'ensemble du programme principal.

Tche 1 Programme A

Vers le numro de tche


suivant

Tche 2 Programme B

Vers le numro de tche


suivant

Tche n Programme Z

Fin du programme
principal

Mise jour d'E/S

NO OPERATION Cette instruction n'a aucune fonction (aucun traitement n'est effectu Sortie
NOP pour NOP(000).) Non obligatoire
000
INTERLOCK Sortie
IL(002) Verrouille toutes les sorties situes entre IL(002) et ILC(003)
IL lorsque la condition d'excution de IL(002) est sur OFF. IL(002) Obligatoire
002 et ILC(003) sont normalement utilises sous forme de paire.
Condition Condition d'excution
Condition d'excution sur ON sur OFF
d'excution

Excution Sorties
Section verrouille normale verrouilles.
du programme

79
Instructions de commande des squences Chapitre 3-3

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
INTERLOCK Toutes les sorties situes entre IL(002) et ILC(003) sont verrouilles Sortie
CLEAR ILC(003) lorsque la condition d'excution de IL(002) est OFF. IL(002) et ILC(003) Non obligatoire
ILC sont normalement utilises sous forme de paire.
003
MULTI- Lorsque la condition d'excution de MILH(517) est OFF, les sorties de Sortie
INTERLOCK MILH (517) toutes les instructions situes entre cette instruction MILH(517) et la Obligatoire
DIFFERENTIATIO
prochaine instruction MILC(519) sont verrouilles. MILH(517) et MILC(519)
N HOLD N
sont utilises sous forme de paire.
MILH
517 D Les verrouillages MILH(517)/MILC(519) peuvent tre imbriqus (exemple :
UC srie CS/CJ N : Numro de MILH(517)MILH(517)MILC(519)MILC(519)).
verrouillage
Ver. 2.0 ou D : Bit d'tat du S'il existe une instruction diffrencie (DIFU, DIFD ou une instruction avec
suprieure verrouillage
uniquement un prfixe @ ou %) entre MILH(517) et la MILC(519) correspondante, cette
instruction sera excute aprs la libration du verrouillage si la condition
de diffrenciation de l'instruction a t tablie.
MULTI- Lorsque la condition d'excution de MILR(518) est OFF, les sorties de Sortie
INTERLOCK MILR (518) toutes les instructions situes entre cette instruction MILH(518) et la Obligatoire
DIFFERENTIATIO
N prochaine instruction MILC(519) sont verrouilles. MILR(518) et MILC(519)
N RELEASE
MILR sont utilises en tant que paire.
D
518 N : Numro de
Les verrouillages MILR(518)/MILC(519) peuvent tre imbriqus (exemple :
UC srie CS/CJ verrouillage MILR(518)MILR(518)MILC(519)MILC(519)).
D : Bit d'tat du
Ver. 2.0 ou verrouillage S'il existe une instruction diffrencie (DIFU, DIFD ou une instruction avec
suprieure
uniquement un prfixe @ ou %) entre MILR(518) et la MILC(519) correspondante, cette
instruction ne sera pas excute aprs la suppression du verrouillage,
mme si la condition de diffrenciation de l'instruction a t tablie.
MULTI- Efface un verrouillage dclench par une MILH(517) ou une MILR(518) Sortie
INTERLOCK MILC (519) portant le mme numro de verrouillage. Non obligatoire
CLEAR
N Toutes les sorties situes entre MILH(517)/MILR(518) et la MILC(519)
MILC
N : Numro de correspondante, et qui portent le mme numro de verrouillage, sont
519 verrouillage
UC srie CS/CJ verrouilles lorsque la condition d'excution de MILH(517)/MILR(518) est
Ver. 2.0 ou OFF.
suprieure
uniquement
JUMP Lorsque la condition d'excution de JMP(004) est sur OFF, l'excution Sortie
JMP JMP(004) du programme passe directement au premier JME(005) du Obligatoire
004 N programme avec le mme numro de saut. JMP(004) et JME(005)
sont utilises dans des paires.
N : Numro de saut Condition d'excution
Instructions
sautes

Les instructions de cette


section ne sont pas
Instructions excutes et l'tat de la
excutes sortie est conserv. Le
temps d'excution de ces
instructions est limin.

JUMP END Indique la fin d'un saut dclench par JMP(004) ou CJP(510). Sortie
JME JME(005) Non obligatoire
005 N
N : Numro de saut

80
Instructions de commande des squences Chapitre 3-3

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
CONDITIONAL Le fonctionnement de CJP(510) est fondamentalement l'oppos de Sortie
JUMP CJP(510) celui de JMP(004). Lorsque la condition d'excution de CJP(510) est Obligatoire
CJP sur ON, l'excution du programme passe directement au premier
N
510 JME(005) du programme avec le mme numro de saut. CJP(510) et
N : Numro de saut JME(005) sont utilises dans des paires.
Condition Condition
d'excution sur OFF d'excution sur ON
Instructions
sautes

Les instructions de cette


Instructions section ne sont pas
excutes excutes et l'tat de la
sortie est conserv. Le
temps d'excution de ces
instructions est limin.

CONDITIONAL Le fonctionnement de CJPN(511) est presque identique celui de Sortie


JUMP CJPN(511) JMP(004). Lorsque la condition d'excution de CJP(004) est sur OFF, Non obligatoire
CJPN l'excution du programme passe directement au premier JME(005) du
N programme avec le mme numro de saut. CJPN(511) et JME(005)
511
sont utilises dans des paires.
N : Numro de saut
Condition Condition
d'excution sur ON d'excution sur OFF
Instructions
sautes

Les instructions de cette


Instructions section ne sont pas
excutes excutes et l'tat de la
sortie est conserv. Le
temps d'excution de ces
instructions est limin.

MULTIPLE JUMP Lorsque la condition d'excution de JMP0(515) est OFF, toutes les Sortie
JMP0 JMP0(515) instructions situes entre JMP0(515) et la prochaine JME0(516) dans Obligatoire
515 le programme sont traites en tant que NOP(000). Utilisez JMP0(515)
et JME0(516) sous forme de paire. Le nombre de paires pouvant tre
utilises dans le programme est illimit.
Condition Condition
d'excution sur ON d'excution sur OFF
Instructions
sautes
Instructions
excutes

Les instructions sautes


sont traites en tant que
Condition d'ex- Condition d'ex- NOP(000). Les temps
cution b sur ON cution b sur OFF d'excution des instructions
sont les mmes temps que
pour NOP(000).

Instructions
excutes

Instructions
sautes

MULTIPLE JUMP Lorsque la condition d'excution de JMP0(515) est OFF, toutes les Sortie
END JME0(516) instructions situes entre JMP0(515) et la prochaine JME0(516) dans Non obligatoire
JME0 le programme sont traites en tant que NOP(000). Utilisez JMP0(515)
516 et JME0(516) sous forme de paire. Le nombre de paires pouvant tre
utilises dans le programme est illimit.

81
Instructions de commande des squences Chapitre 3-3

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
FOR-NEXT Les instructions situes entre FOR(512) et NEXT(513) sont Sortie
LOOPS FOR(512) rptes un nombre de fois spcifi. FOR(512) et NEXT(513) sont Non obligatoire
FOR N utilises sous forme de paire.
512
N : Nombre de Rpt N fois
boucles

Section de programme rpte

BREAK LOOP Programm dans une boucle FOR-NEXT de faon annuler Sortie
BREAK BREAK(514) Obligatoire
l'excution de la boucle pour une condition d'excution donne. Les
514 autres instructions de la boucle sont traites comme des instructions
NOP(000).
Condition a ON
N rptitions

Fin des
rptitions
force.

Trait en tant
que NOP(000).

FOR-NEXT Les instructions situes entre FOR(512) et NEXT(513) sont rptes Sortie
LOOPS NEXT(513) un nombre de fois spcifi. FOR(512) et NEXT(513) sont utilises sous Non obligatoire
NEXT forme de paire.
513

82
Instructions de temporisation et de compteur Chapitre 3-4

3-4 Instructions de temporisation et de compteur


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
TIMER TIM/TIMX(550) effectue une temporisation dcroissante par pas de Sortie
TIM TIM 0,1 s. La plage de configuration pour la valeur de consigne (SV) va Obligatoire
(BCD) de 0 999,9 s pour les donnes BCD et de 0 65 553,5 s pour les
N donnes binaires (dcimales ou hexadcimales).
TIMX S Entre de
(Binaire) temporisation
(CS1-H, CJ1-H, N : Numro de
temporisation
CJ1M ou CS1D S : Valeur de consigne PV de SV
uniquement) temporisation
TIMX(550) Drapeau
N de fin

S
Entre de
N : Numro de temporisation
temporisation
S : Valeur de consigne PV de SV
temporisation

Drapeau
de fin

HIGH-SPEED TIMH(015)/TIMHX(551) effectue une temporisation dcroissante par pas Sortie


TIMER TIMH(015) Obligatoire
de 10 ms. La plage de configuration pour la valeur de consigne (SV) va
TIMH N de 0 99,9 s pour les donnes BCD et de 0 655,35 s pour les
015 donnes binaires (dcimales ou hexadcimales).
(BCD) S
Entre de
N : Numro de temporisation
TIMHX temporisation
PV de SV
551 S : Valeur de consigne
(Binaire) temporisation
(CS1-H, CJ1-H,
CJ1M ou CS1D TIMHX(551)
Drapeau
uniquement) N de fin
S
N : Numro de
temporisation
Entre de
S : Valeur de consigne
temporisation
PV de SV
temporisation

Drapeau
de fin

ONE-MS TIMER TMHH(540)/TMHHX(552) effectue une temporisation dcroissante par Sortie


TMHH TMHH(540) pas de 1 ms. La plage de configuration pour la valeur de consigne (SV) Obligatoire
540 va de 0 9,999 s pour les donnes BCD et de 0 65,535 s pour les
N donnes binaires (dcimales ou hexadcimales).
(BCD)
S Les tableaux de temporisation pour TMHH(540) et TMHHX(552) sont
les mmes que ceux donns ci-dessus pour TIMH(015).
TMHHX N : Numro de
552 temporisation
(BCD) S : Valeur de consigne
(CS1-H, CJ1-H,
CJ1M ou CS1D
uniquement) TMHHX(552)

N
S
N : Numro de
temporisation
S : Valeur de consigne

83
Instructions de temporisation et de compteur Chapitre 3-4

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
ACCUMULATIVE Entre de TTIM(087)/TTIMX(555) effectue une temporisation croissante par Sortie
TIMER tempo- TTIM(087) pas de 0,1 s. La plage de configuration pour la valeur de consigne Obligatoire
TTIM risation (SV) va de 0 999,9 s pour les donnes BCD et de 0 65 553,5 s
N
087 pour les donnes binaires (dcimales ou hexadcimales).
S
(BCD) Entre de
Entre de
rinitialisation
temporisation
TTIMX
PV de SV
555 N : Numro de
(Binaire) temporisation temporisation
S : Valeur de consigne La temporisation.
(CS1-H, CJ1-H,
CJ1M ou CS1D reprend
uniquement) Entre de PV conserve.
tempori- TTIMX(555)
sation
N
Drapeau
S de fin
Entre de
rinitialisation Entre de
N : Numro de rinitialisation
temporisation
S : Valeur de consigne

LONG TIMER Sortie


TIML(542) TIML(542)/TIMLX(553) effectue une temporisation dcroissante par pas
TIML de 0,1 s qui peut aller jusqu' 115 jours pour les donnes BCD et 49 710 Obligatoire
542 D1 jours pour les donnes binaires (dcimales ou hexadcimales).
(BCD)
D2 Entre de
TIMLX temporisation
S
553 SV
(Binaire) PV de
D1 : Drapeau de temporisation
(CS1-H, CJ1-H, fin
CJ1M ou CS1D D2 : Mot PV
uniquement) S : Mot SV
Drapeau de fin
(Bit 00 de D1)
TIMLX(553

D1
D2
S

D1 : Drapeau de fin
D2 : Mot PV
S : Mot SV

84
Instructions de temporisation et de compteur Chapitre 3-4

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
MULTI-OUTPUT MTIM(543)/MTIMX(554) prend en charge une temporisation base sur des incrments Sortie
TIMER MTIM(543) Obligatoire
de 0,1 s avec 8 valeurs de consigne (SV) et drapeaux de fin indpendants. La plage de
MTIM D1 configuration pour la valeur de consigne (SV) est comprise entre 0 et 999,9 s pour les
543 donnes BCD, entre 0 et 6 553,5 s pour les donnes binaires (dcimales ou
(BCD) D2 hexadcimales).
PV de temporisation
S
MTIMX
554
(Binaire) D1 : Drapeaux SV de temporisation 0
(CS1-H, CJ1-H, de fin
CJ1M ou CS1D D2 : Mot PV
uniquement) S : 1er mot SV
jusqu'
MTIMX(554) jusqu'

D1
D2 Entre de
temporisation
S
SV 7
D1 : Drapeaux de f jusqu'
D2 : Mot PV SV 2
S : 1er mot SV PV de SV 1
temporisation (D2) SV 0
0

Bit 7
Excution jusqu'
Drapeaux (D1) Bit 2

Bit 1

Bit 0

COUNTER Entre Sortie


CNT CNT/CNTX(546) prend en charge un compteur dcrmentiel. La plage
CNT comp- de configuration pour la valeur de consigne (SV) va de 0 9 999 pour Obligatoire
(BCD) tage N les donnes BCD et de 0 65 535 pour les donnes binaires (dcimales
S ou hexadcimales).
CNTX Entre Entre
546 de rinitialisation comptage
(Binaire) N : Numro de
(CS1-H, CJ1-H, compteur Entre de
CJ1M ou CS1D S : Valeur de rinitialisation
uniquement) consigne
SV
PV de
Entre CNTX(546) compteur
de
comp- N
tage
S Drapeau
Entre de fin
de rinitialisation

N : Numro de compteur
S : Valeur de consigne

85
Instructions de temporisation et de compteur Chapitre 3-4

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
REVERSIBLE Sortie
COUNTER
Entre CNTR(012) CNTR(012)/CNTRX(548) prend en charge un compteur rversible.
incr- Obligatoire
CNTR mentielle N
012 Entre S Entre incrmentielle
(BCD) dcr-
mentielle

CNTRX Entre
de rinitialisation Entre dcrmentielle
548
(Binaire)
(CS1-H, CJ1-H, N : Numro de
CJ1M ou CS1D compteur
uniquement) S : Valeur de consigne PV de compteur
Entre
incr- CNTRX(548)
mentielle
N
Entre SV
dcr- S PV de compteur
mentielle

Entre +1
de rinitialisation

N : Numro de
compteur Drapeau de fin
S : Valeur de
consigne

SV 1
PV de compteur

Drapeau de fin

RESET TIMER/ CNR(545)/CNRX(547) rinitialise les temporisations ou les compteurs Sortie


COUNTER CNR(545) dans l'intervalle des numros de temporisation et de compteur spcifi. Obligatoire
CNR Attribue la valeur de consigne (SV) la valeur maximale de 9999.
N1
@CNR
545 N2
(BCD)
N1 : Premier numro
CNRX de la plage
@CNRX N2 : Dernier numro
547 de la plage
(Binaire)
(CS1-H, CJ1-H,
CJ1M ou CS1D CNRX(547)
uniquement) N1
N2

N1 : Premier
numro de la plage
N2 : Dernier
numro de la plage

86
Instructions de comparaison Chapitre 3-5

3-5 Instructions de comparaison


*1
: non prise en charge par les UC CS1D pour les systmes d'UC en duplex.
Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
Comparaison de Les instructions de comparaison de symboles (non signes) comparent LD : non obligatoire
symboles (non Symbole et options AND, OR :
deux valeurs (constantes et/ou le contenu des mots spcifis) dans les
sign) obligatoire
S1 donnes binaires 16 bits et crent une condition d'excution ON lorsque la
LD, AND, OR + =, condition de comparaison est vraie. Il existe trois types d'instructions de
<>, <, <=, >, >= S2 comparaison symbole : LD (LOAD), AND et OR.
300 (=)
305 (<>) S1 : Donne de LD Condition d'excution sur ON lorsque
310 (<) comparaison 1 le rsultat de la comparaison est vrai.
315 (<=) S2 : Donne de <
320 (>) comparaison 2
325(>=)

Condition d'excution sur


AND ON lorsque le rsultat de
la comparaison est vrai.
<

OR

<

Condition d'excution sur ON lorsque


le rsultat de la comparaison est vrai.

Comparaison de S1 : donnes de Les instructions de comparaison de symboles (mot double, non sign) LD : non obligatoire
symboles comparaison 1 comparent deux valeurs (constantes et/ou le contenu des donnes de mots AND, OR :
(mot double, S2 : donnes de doubles spcifis) dans les donnes binaires 32 bits non signes et crent obligatoire
non sign) une condition d'excution ON lorsque la condition de comparaison est
comparaison 2 vraie. Il existe trois types d'instructions de comparaison symbole :
LD, AND, OR + =,
<>, <, <=, >, >= + LD (LOAD), AND et OR.
L
301 (=)
306 (<>)
311 (<)
316 (<=)
321 (>)
326 (>=)
Comparaison de S1 : donnes de Les instructions de comparaison de symboles (sign) comparent deux LD : non obligatoire
symboles (sign) comparaison 1 valeurs (constantes et/ou le contenu des mots spcifis) dans les AND, OR :
LD, AND, OR + =, S2 : donnes de donnes binaires 16 bits signes (4 chiffres hexadcimaux) et crent obligatoire
<>, <, <=, >, >= une condition d'excution ON lorsque la condition de comparaison est
comparaison 2 vraie. Il existe trois types d'instructions de comparaison symbole :
+S
LD (LOAD), AND et OR.
302 (=)
307 (<>)
312 (<)
317 (<=)
322 (>)
327 (>=)

87
Instructions de comparaison Chapitre 3-5

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
Comparaison de S1 : donnes de Les instructions de comparaison de symboles (mot double, sign) LD : non obligatoire
symboles (mot comparaison 1 comparent deux valeurs (constantes et/ou le contenu des donnes de AND, OR :
double, sign) S2 : donnes de mots doubles spcifis) dans les donnes binaires 32 bits signes obligatoire
LD, AND, OR + =, (8 chiffres hexadcimaux) et crent une condition d'excution ON
comparaison 2 lorsque la condition de comparaison est vraie. Il existe trois types
<>, <, <=, >, >=
+SL d'instructions de comparaison symbole : LD (LOAD), AND et OR.
303 (=)
308 (<>)
313 (<)
318 (<=)
323 (>)
328 (>=)
Comparaison de LD (LOAD) : Les instructions de comparaison de temps comparent deux valeurs de LD : non obligatoire
temps temps BCD et crent une condition d'excution ON lorsque la condition AND, OR :
LD, AND, OR + = Symbole de comparaison est vraie. obligatoire
DT, <> DT, < DT, Il existe trois types d'instructions de comparaison de temps : LD
<= DT, > DT, >= C (LOAD), AND et OR. Les valeurs de temps (anne, mois, jour, heure,
DT minute et seconde) peuvent tre masques/dmasques dans la
S1 comparaison, ce qui permet de crer facilement des fonctions de
341 (= DT) temporisation de calendrier.
342 (<> DT) S2
343 (< DT)
344 (<= DT)
345 (> DT) AND :
346 (>= DT)
(UC srie CS/CJ Symbole
Ver. 2.0 ou C
suprieure
uniquement) S1
S2

OR :
Symbole
C
S1
S2

C : Mot de contrle
S1 : 1er mot temps
prsent
S2 : 1er mot temps
de comparaison

UNSIGNED Compare deux valeurs binaires non signes (constantes et/ou le Sortie
COMPARE CMP(020)
contenu des mots spcifis) et place le rsultat dans les drapeaux Obligatoire
CMP S1 arithmtiques l'intrieur de la zone auxiliaire.
!CMP*1
S2 Comparaison de valeurs
020 binaires non signes
S1 : Donne de
comparaison 1
S2 : Donne de
comparaison 2 Drapeaux arithmtiques
(>, >=, =, <=, <, <>)

DOUBLE Compare deux valeurs binaires non signes doubles (constantes Sortie
UNSIGNED CMPL(060) et/ou le contenu des mots spcifis) et place le rsultat dans les Obligatoire
COMPARE drapeaux arithmtiques l'intrieur de la zone auxiliaire.
CMPL S1
060 Comparaison de valeurs
S2 binaires non signes
S1 : Donne de S1+1 S2+1
comparaison 1
S2 : Donne de Drapeaux arithmtiques
comparaison 2
(>, >=, =, <=, <, <>)

88
Instructions de comparaison Chapitre 3-5

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
SIGNED BINARY Compare deux valeurs binaires signes (constantes et/ou le contenu Sortie
COMPARE CPS(114) des mots spcifis) et place le rsultat dans les drapeaux Obligatoire
CPS arithmtiques l'intrieur de la zone auxiliaire.
S1
!CPS*1 Comparaison de valeurs
114 S2 binaires non signes
S1 : Donne de
comparaison 1
S2 : Donne de Drapeaux arithmtiques
comparaison 2
(>, >=, =, <=, <, <>)

DOUBLE Compare deux valeurs binaires signes doubles (constantes et/ou le Sortie
SIGNED BINARY CPSL(115) contenu des mots spcifis) et place le rsultat dans les drapeaux Obligatoire
COMPARE arithmtiques l'intrieur de la zone auxiliaire.
CPSL S1
115 Comparaison de valeurs
S2
binaires non signes
S1 : Donne de S1+1 S2+1
comparaison 1
S2 : Donne de
comparaison 2 Drapeaux arithmtiques
(>, >=, =, <=, <, <>)

MULTIPLE Compare 16 mots conscutifs avec 16 autres mots conscutifs et Sortie


COMPARE MCMP(019) Obligatoire
met sur ON le bit correspondant dans le mot de rsultat lorsque les
MCMP contenus ne sont pas gaux.
@MCMP S1
019 S2 Comparaison R
0 : Les mots
R sont gaux.
1 : Les mots
S1 : 1er mot de
ne sont pas
l'ensemble 1
gaux.
S2 : 1er mot de
l'ensemble 2
R : Mot de rsultat

TABLE Compare la donne source avec le contenu de 16 mots et met sur Sortie
COMPARE TCMP(085)
ON le bit correspondant dans le mot de rsultat lorsque les Obligatoire
TCMP S
@TCMP contenus sont gaux.
T Comparaison R
085 1 : Les donnes
R sont gales.
0 : Les donnes
S : Donne source ne sont pas
T : 1er mot de la gales.
table
R : Mot de rsultat

UNSIGNED Compare la donne source avec 16 plages (dfinies par 16 limites Sortie
BLOCK BCMP(068) Obligatoire
infrieures et 16 limites suprieures) et met sur ON le bit correspondant
COMPARE
S dans le mot de rsultat lorsque la donne source est comprise dans la
BCMP plage.
@BCMP T Plages 1 : Dans la plage
0 : En dehors
068 de la plage
R
Limite infrieure Limite suprieure R
S : Donne source T jusqu' T+1 0
T : 1er mot de la
table Donne T+2 jusqu' T+3 1
R : Mot de rsultat source
S

T+28 jusqu' T+29 14


T+30 jusqu' T+31 15

89
Instructions de comparaison Chapitre 3-5

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
EXPANDED Compare les donnes source par rapport 256 plages maximum Sortie
BLOCK BCMP2(502) (dfinies par des limites suprieure et infrieure) et met ON le bit Obligatoire
COMPARE correspondant dans le mot de rsultat lorsque les donnes sources sont
S l'intrieur d'une plage.
BCMP2
@BCMP2 T
502 1: Dans la plage
(UC CS1-H, CJ1- R T N n=255 max. 0 : En dehors de la plage
H ou CS1D Ver. D Bit
2.0 ou suprieure S : Donne source T+1 Plage 0 A Plage 0 B T+2 0
uniquement) T : 1er mot du bloc Donne
R : Mot de rsultat source T+3 Plage 1 A Plage 1 B T+4 1
UC CJ1M
(Pr-ver. 2.0 ou S
Ver. 2.0 ou
suprieure) D+15 max.
T+2N+1 Plage N A Plage N B T+2N+2

Remarque : A peut tre infrieur ou


gal B ou suprieur B.

AREA RANGE Compare la valeur binaire 16 bits non signe de CD (contenu de mot ou Sortie
COMPARE ZCP(088) constante) la plage dfinie par LL et UL, puis sort les rsultats vers les Obligatoire
ZCP drapeaux arithmtiques dans la zone auxiliaire.
CD
@ZCP
088 LL
(CS1-H, CJ1-H, UL
CJ1M ou CS1D
uniquement)
CD : Donne de
comparaison (1 mot)
LL : Limite infrieure
de la plage
UL : Limite suprieure
de la plage

DOUBLE AREA Compare la valeur binaire 32 bits non signe de CD et CD+1 (contenu Sortie
RANGE ZCPL(116) de mot ou constante) la plage dfinie par LL et UL, puis sort les Obligatoire
COMPARE rsultats vers les drapeaux arithmtiques dans la zone auxiliaire.
CD
ZCPL
@ZCPL LL
116
(CS1-H, CJ1-H, UL
CJ1M ou CS1D
uniquement) CD : Donne de
comparaison (2 mots)
LL : Limite infrieure de
la plage
UL : Limite suprieure
de la plage

90
Instructions de dplacement de donnes Chapitre 3-6

3-6 Instructions de dplacement de donnes


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
MOVE Transfre un mot de donnes vers le mot spcifi. Sortie
MOV(021)
MOV Obligatoire
@MOV S Mot source
!MOV
!@MOV D
021
S : Source
D : Destination Etat des bits
inchang.

Mot de destination

DOUBLE MOVE Transfre deux mots de donnes vers les mots spcifis. Sortie
MOVL MOVL(498) Obligatoire
S S+1
@MOVL S
498
D
Etat des bits
S : 1er mot inchang.
source
D : 1er mot D D+1
destination

MOVE NOT Transfre le complment d'un mot de donnes vers le mot spcifi. Sortie
MVN(022)
MVN Obligatoire
@MVN Mot source
S
022
D
S : Source
D : Destination Etat des bits
invers.

Mot de destination

DOUBLE MOVE Transfre le complment de deux mots vers les mots spcifis. Sortie
NOT MVNL(499)
S S+1
Obligatoire
MVNL S
@MVNL
499 D
S : 1er mot Etat des bits
source invers.
D : 1er mot D D+1
destination

MOVE BIT Transfre le bit spcifi. Sortie


MOVB MOVB(082) Obligatoire
@MOVB S
082
C
D

S : Mot ou donne
source
C : Mot de contrle
D : Mot de
destination

91
Instructions de dplacement de donnes Chapitre 3-6

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
MOVE DIGIT Sortie
MOVD(083) Transfre le ou les chiffres spcifis. (Chaque chiffre est constitu de 4 bits.)
MOVD Obligatoire
@MOVD S
083
C
D
S : Mot ou donne
source
C : Mot de contrle
D : Mot de
destination

MULTIPLE BIT Transfre le nombre de bits conscutifs spcifi. Sortie


TRANSFER XFRB(062)
Obligatoire
XFRB C
@XFRB
062 S
D
C : Mot de contrle
S : 1er mot source
D : 1er mot de
destination

BLOCK Transfre le nombre de mots conscutifs spcifi. Sortie


TRANSFER XFER(070) Obligatoire
XFER N
@XFER
070 S N mots
jusqu' jusqu'
D
S+(N 1) D+(N 1)

N : Nombre de
mots
S : 1er mot
source
D : 1er mot de
destination

BLOCK SET Copie le mme mot dans une plage de mots Sortie
BSET BSET(071) Obligatoire
@BSET S Mot source Mots de destination
071
St St

S : Mot source
St : Mot de dbut
E : Mot de fin
E

DATA Echange le contenu des deux mots spcifis. Sortie


EXCHANGE XCHG(073) Obligatoire
XCHG E1 E1 E2
@XCHG
073 E2

E1 : 1er mot
change
E2 : Second mot
change

92
Instructions de dplacement de donnes Chapitre 3-6

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DOUBLE DATA Echange le contenu d'une paire de mots conscutifs avec une autre Sortie
EXCHANGE XCGL(562) Obligatoire
paire de mots conscutifs.
XCGL E1
@XCGL E1 E1+1 E2 E2+1
562 E2

E1 : 1er mot
change
E2 : Second mot
change
SINGLE WORD Transfre le mot source vers un mot de destination calcul en Sortie
DISTRIBUTE DIST(080)
ajoutant une valeur de dcalage l'adresse de base. Obligatoire
DIST S
@DIST S Bs Of
080 Bs
Of

S : Mot source
Bs : Adresse
destination de base
Of : Dcalage
Bs+n
DATA COLLECT Transfre le mot source (calcul en ajoutant une valeur de dcalage Sortie
COLL COLL(081) Obligatoire
l'adresse de base) vers le mot de destination.
@COLL Bs
081 Bs Of
Of
D

Bs : Adresse de Bs+n
base source
Of : Dcalage
D : Mot de
destination
MOVE TO Sortie
REGISTER MOVR(560) Dfinit l'adresse mmoire E/S interne du mot, du bit ou du drapeau
de fin de temporisation/compteur spcifi dans le registre d'index Obligatoire
MOVR S spcifi. (Utilisez MOVRW(561) pour dfinir l'adresse mmoire E/S
@MOVR interne d'une PV de temporisation/compteur dans un registre
560 D d'index.)
Adresse mmoire E/S de S
S : Source (mot
ou bit voulu)
D : Destination
(registre d'index)

Registre d'index

MOVE TIMER/ Dfinit l'adresse mmoire E/S interne de la PV de Sortie


COUNTER PV TO MOVRW(561)
temporisation/compteur spcifie dans le registre d'index spcifi. Obligatoire
REGISTER (Utilisez MOVRW(560) pour dfinir l'adresse mmoire E/S interne
S
MOVRW d'un mot, d'un bit ou d'un drapeau de fin de temporisation/compteur
@MOVRW D
561 S : Source Adresse mmoire E/S de S
(numro de TC
voulu)
D : Destination PV de temporisation/
(registre d'index)
compteur uniquement

Registre d'index

93
Instructions de dcalage de donnes Chapitre 3-7

3-7 Instructions de dcalage de donnes


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
SHIFT REGISTER Entre de
Sortie
SFT donnes SFT(010) Utilise un registre dcalage Obligatoire
Entre de E St+1, St+2 St
010 dcalage St
Entre de E
rinitialisation
Perdu Etat de l'entre de
St : Mot de dbut
donnes pour chaque
E : Mot de fin
entre de dcalage

REVERSIBLE Cre un registre de dcalage qui dcale les donnes soit vers la droite Sortie
SHIFT REGISTER SFTR(084) Obligatoire
soit vers la gauche.
SFTR C
@SFTR
084 St
E St Entre de
E donnes
Sens
de
C : Mot de contrle E St dca-
St : Mot de dbut Entre de lage
E : Mot de fin donnes

ASYNCHRO- Dcale toutes les donnes de mot non nulles dans la plage de Sortie
NOUS SHIFT ASFT(017)
mots spcifie vers St ou vers E, en remplaant les donnes de Obligatoire
REGISTER
C mot 0000Hex.
ASFT
@ASFT St
017
E St Sens de dcalage
C : Mot de contrle Dcalage activ
Dcalage
St : Mot de dbut
E : Mot de fin Effacer
Dcalage

St

Donnes nulles

Donnes non nulles


E

WORD SHIFT Dcale les donnes entre St et E en units de mots. Sortie


WSFT WSFT(016) Obligatoire
@WSFT S E St
016 Perdu
St
E

S : Mot source
St : Mot de dbut
E : Mot de fin

ARITHMETIC Sortie
SHIFT LEFT ASL(025) Dcale le contenu de Wd d'un bit vers la gauche.
Obligatoire
ASL Wd
@ASL
025 Wd : Mot

94
Instructions de dcalage de donnes Chapitre 3-7

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DOUBLE SHIFT Sortie
LEFT ASLL(570) Dcale le contenu de Wd et Wd +1 d'un bit vers la gauche.
Obligatoire
ASLL Wd+1 Wd
@ASLL
Wd
570 Wd : Mot

ARITHMETIC Sortie
SHIFT RIGHT ASR(026) Dcale le contenu de Wd d'un bit vers la droite.
Obligatoire
ASR Wd
@ASR
026 Wd : Mot

DOUBLE SHIFT Dcale le contenu de Wd et Wd +1 d'un bit vers la droite. Sortie


RIGHT ASRL(571) Obligatoire
ASRL Wd Wd+1 Wd
@ASRL
571 Wd : Mot

ROTATE LEFT Dcale tous les bits Wd d'un bit vers la gauche, y compris le drapeau de pas- Sortie
ROL ROL(027) sage (CY). Obligatoire
@ROL Wd
027
Wd : Mot

DOUBLE Dcale tous les bits Wd et Wd +1 d'un bit vers la gauche, y compris le Sortie
ROTATE LEFT ROLL(572) Obligatoire
drapeau de passage (CY).
ROLL Wd
@ROLL Wd+1 Wd
572 Wd : Mot

ROTATE LEFT Sortie


WITHOUT RLNC(574) Dcale tous les bits Wd d'un bit vers la gauche, sans inclure le drapeau
de passage (CY). Obligatoire
CARRY
Wd Wd
RLNC
@RLNC
Wd : Mot
574

DOUBLE Dcale tous les bits Wd et Wd +1 d'un bit vers la gauche, sans Sortie
ROTATE LEFT RLNL(576) Obligatoire
WITHOUT inclure le drapeau de passage (CY).
CARRY Wd Wd+1 Wd
RLNL
@RLNL Wd : Mot
576
ROTATE RIGHT Dcale tous les bits Wd d'un bit vers la droite, y compris le drapeau de Sortie
ROR ROR(028) Obligatoire
passage (CY).
@ROR Wd+1 Wd
Wd
028
Wd : Mot

DOUBLE Dcale tous les bits Wd et Wd +1 d'un bit vers la droite, y compris Sortie
ROTATE RIGHT RORL(573) Obligatoire
le drapeau de passage (CY).
RORL
@RORL Wd Wd+1 Wd
573 Wd : Mot

95
Instructions de dcalage de donnes Chapitre 3-7

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
ROTATE RIGHT Dcale tous les bits Wd d'un bit vers la droite, sans inclure le drapeau Sortie
WITHOUT RRNC(575) Obligatoire
CARRY de passage (CY). Le contenu du bit le plus droite de Wd se dcale
Wd vers le bit de gauche et vers le drapeau de passage (CY).
RRNC
@RRNC
Wd : Mot
575
Wd

DOUBLE Dcale tous les bits Wd et Wd +1 d'un bit vers la droite, sans inclure le Sortie
ROTATE RIGHT RRNL(577)
drapeau de passage (CY). Le contenu du bit le plus droite de Wd +1 est Obligatoire
WITHOUT Wd
CARRY dcal vers le bit de gauche de Wd et vers le drapeau de passage (CY).
RRNL Wd+1 Wd
@RRNL Wd : Mot
577

ONE DIGIT SHIFT Dcale les donnes d'un chiffre (4 octets) vers la gauche. Sortie
LEFT SLD(074) Obligatoire
SLD U I t
St
@SLD
074 E Perdu

St : Mot de dbut
E : Mot de fin

ONE DIGIT SHIFT Sortie


RIGHT SRD(075) Dcale les donnes d'un chiffre (4 octets) vers la droite.
U I t Obligatoire
SRD St
@SRD Perdu
075 E
St : Mot de dbut
E : Mot de fin

SHIFT N-BIT Sortie


DATA LEFT NSFL(578) Dcale le nombre de bits spcifi vers la gauche.
Obligatoire
NSFL D
@NSFL
578 C
N

D : Mot de dpart Dcale un bit vers


pour le dcalage N 1 bit la gauche
C : Bit de dpart
N : Longueur du
dcalage

N 1 bit

SHIFT N-BIT Dcale le nombre de bits spcifi vers la droite. Sortie


DATA RIGHT NSFR(579) Obligatoire
NSFR D
@NSFR
579 C
N
Dcale un bit vers
D : Mot de dbut la droite
N 1 bit
pour le dcalage
C : Bit de dbut
N : Longueur du
dcalage
N 1 bit

96
Instructions de dcalage de donnes Chapitre 3-7

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
SHIFT N-BITS Dcale les 16 bits de donnes de mot spcifies vers la gauche Sortie
LEFT NASL(580)
du nombre de bits spcifi. Obligatoire
NASL D
@NASL
580 C

D : Mot dcaler
C : Mot de contrle
Dcalage
de n bits

Contenu de "a"
ou "0" introduit
Perdu par dcalage

N bits

DOUBLE SHIFT Dcale les 32 bits de donnes de mot vers la gauche du nombre de Sortie
N-BITS LEFT NSLL(582)
bits spcifi. Obligatoire
NSLL D
@NSLL
582 C

D : Mot dcaler
Dcalage de n bits
C : Mot de contrle
Contenu de
"a" ou "0"
introduit par
Perdu dcalage
N bits

SHIFT N-BITS Dcale les 16 bits de donnes de mot spcifies vers la droite du Sortie
RIGHT NASR(581) Obligatoire
nombre de bits spcifi.
NASR D
@NASR
581 C
Contenu de "a" ou
D : Mot dcaler "0" introduit par
C : Mot de contrle dcalage Perdu

N bits

DOUBLE SHIFT Dcale les 32 bits de donnes de mot spcifies vers la droite du Sortie
N-BITS RIGHT NSRL(583) Obligatoire
nombre de bits spcifi.
NSRL D
@NSRL
583 C Dcalage de n bits

D : Mot dcaler Contenu de


C : Mot de contrle "a" ou "0"
introduit par
dcalage Perdu

97
Instructions d'incrmentation/dcrmentation Chapitre 3-8

3-8 Instructions d'incrmentation/dcrmentation


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
INCREMENT Incrmente le contenu (4 chiffres hexadcimaux) du mot spcifi de 1. Sortie
BINARY ++(590) Obligatoire
++ Wd Wd
Wd
@++
590 Wd : Mot

DOUBLE Incrmente le contenu (8 chiffres hexadcimaux) des mots spcifis de 1. Sortie


INCREMENT ++L(591)
Obligatoire
BINARY
Wd Wd+1 Wd Wd+1 Wd
++L
@++L
Wd : Mot
591
DECREMENT Dcrmente le contenu (4 chiffres hexadcimaux) du mot spcifi de 1. Sortie
BINARY (592)
Obligatoire
Wd
@ Wd Wd
592 Wd : Mot

DOUBLE Incrmente le contenu (8 chiffres hexadcimaux) des mots spcifis de 1. Sortie


DECREMENT L(593)
Obligatoire
BINARY
Wd
L Wd+1 Wd Wd+1 Wd
@ L
Wd : 1er mot
593
INCREMENT Incrmente le contenu (4 chiffres BCD) du mot spcifi de 1. Sortie
BCD ++B(594) Obligatoire
++B Wd Wd Wd
@++B
594 Wd : Mot

DOUBLE Incrmente le contenu (8 chiffres BCD) des mots spcifis de 1. Sortie


INCREMENT ++BL(595)
Obligatoire
BCD
Wd
++BL Wd+1 Wd Wd+1 Wd
@++BL
Wd : 1er mot
595
DECREMENT Dcrmente le contenu (4 chiffres BCD) du mot spcifi de 1. Sortie
BCD B(596) Obligatoire
B Wd
@ B Wd 1 Wd
596 Wd : Mot

DOUBLE Dcrmente le contenu (8 chiffres BCD) des mots spcifis de 1. Sortie


DECREMENT BL(597)
Obligatoire
BCD
Wd
BL Wd+1 Wd Wd+1 Wd
@ BL
Wd : 1er mot
597

98
Instructions mathmatiques symboles Chapitre 3-9

3-9 Instructions mathmatiques symboles


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
SIGNED BINARY Ajoute 4 chiffres de donnes hexadcimales (mot unique) et/ou Sortie
ADD WITHOUT +(400) Obligatoire
des constantes.
CARRY (Binaire sign)
Au Au
+
@+ Ad Ad (Binaire sign)
400 +
R
Au : Mot 1er CY passera
terme addition ON s'il existe CY R (Binaire sign)
Ad : Mot 2me une retenue.
terme addition

DOUBLE Ajoute 8 chiffres de donnes hexadcimales (mot double) et/ou Sortie


SIGNED BINARY +L(401) des constantes. Obligatoire
ADD WITHOUT Au+1 Au (Binaire sign)
CARRY Au
+L Ad Ad+1 Ad (Binaire sign)
@+L +
401 R
CY passera
ON s'il CY R+1 R (Binaire sign)
Au : 1er mot 1er terme
existe une
de l'addition
retenue.
Ad : 1er mot 2me
terme addition
R : 1er mot de rsultat

SIGNED BINARY Ajoute 4 chiffres de donnes hexadcimales (mot unique) et/ou des Sortie
ADD WITH +C(402) Obligatoire
CARRY constantes avec le drapeau de passage (CY).
Au Au (Binaire sign)
+C
@+C Ad
402 Ad (Binaire sign)
R
Au : Mot 1er terme + CY
addition
Ad : Mot 2me CY passera
terme addition ON s'il existe CY R (Binaire sign)
R : Mot de rsultat une retenue.

DOUBLE Ajoute 8 chiffres de donnes hexadcimales (mot double) et/ou des Sortie
SIGNED BINARY +CL(403) constantes avec le drapeau de passage (CY). Obligatoire
ADD WITH
CARRY Au Au+1 Au (Binaire sign)
+CL Ad
@+CL Ad+1 Ad (Binaire sign)
403 R
Au : 1er mot 1er + CY
terme de l'addition
Ad : 1er mot 2me CY passera
terme addition ON s'il existe CY R+1 R (Binaire sign)
R : 1er mot de une retenue.
rsultat
BCD ADD Ajoute 4 chiffres de donnes BCD (mot unique) et/ou Sortie
WITHOUT +B(404) Obligatoire
CARRY des constantes. (BCD)
Au Au
+B
@+B Ad (BCD)
+ Ad
404 R
Au : Mot 1er terme CY passera
addition CY R (BCD)
Ad : Mot 2me ON s'il existe
terme addition une retenue.
R : Mot de rsultat

99
Instructions mathmatiques symboles Chapitre 3-9

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DOUBLE BCD Ajoute 8 chiffres de donnes BCD (mot double) et/ou Sortie
ADD WITHOUT +BL(405) Obligatoire
CARRY des constantes.
Au Au+1 Au (BCD)
+BL
@+BL Ad (BCD)
Ad+1 Ad
405 +
R
Au : 1er mot 1er CY passera (BCD)
terme de l'addition ON s'il existe CY R+1 R
Ad : 1er mot 2me une retenue.
terme addition
R : 1er mot de
rsultat

BCD ADD WITH Ajoute 4 chiffres de donnes BCD (mot unique) et/ou des constantes Sortie
CARRY +BC(406) Obligatoire
avec le drapeau de passage (CY).
+BC Au Au (BCD)
@+BC
406 Ad Ad (BCD)
R
Au : Mot 1er terme + CY
addition
Ad : Mot 2me terme CY passera
addition ON s'il existe
R : Mot de rsultat CY R (BCD)
une retenue.

DOUBLE BCD Ajoute 8 chiffres de donnes BCD (mot double) et/ou des constantes avec Sortie
ADD WITH +BCL(407) le drapeau de passage (CY). Obligatoire
CARRY
+BCL Au Au+1 Au (BCD)
@+BCL Ad
407 Ad+1 Ad (BCD)
R
+ CY
Au : 1er mot 1er terme
de l'addition
Ad : 1er mot 2me CY passera
ON s'il existe CY R+1 R (BCD)
terme addition
R : 1er mot de rsultat une retenue.

SIGNED BINARY Ajoute 4 chiffres de donnes hexadcimales (mot unique) et/ou Sortie
SUBTRACT (410) Obligatoire
WITHOUT des constantes.
Mi Mi (Binaire sign)
CARRY
Su
@ Su (Binaire sign)
410 R

Mi : Mot soustraire CY passera CY R (Binaire sign)


Su : Mot soustracteur ON s'il existe un
R : Mot de rsultat emprunt.

DOUBLE Sortie
SIGNED BINARY L(411) Ajoute 8 chiffres de donnes hexadcimales (mot double) et/ou
des constantes. Obligatoire
SUBTRACT
WITHOUT Mi Mi+1 Mi (Binaire sign)
CARRY Su
L Su+1 Su (Binaire sign)
@L R
411
Mi : Mot soustraire CY passera CY R+1 R (Binaire sign)
Su : Mot soustracteur ON s'il existe
R : Mot de rsultat un emprunt.

100
Instructions mathmatiques symboles Chapitre 3-9

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
SIGNED BINARY Ajoute 4 chiffres de donnes hexadcimales (mot unique) et/ou des constantes Sortie
SUBTRACT C(412) avec le drapeau de passage (CY). Obligatoire
WITH CARRY Mi (Binaire sign)
Mi
C
@C Su Su (Binaire sign)
412
R
CY
Mi : Mot soustraire CY passera ON
Su : Mot soustracteur s'il existe un
R : Mot de rsultat CY R (Binaire sign)
emprunt.

DOUBLE Sortie
SIGNED BINARY CL(413) Ajoute 8 chiffres de donnes hexadcimales (mot double) et/ou
des constantes avec le drapeau de passage (CY). Obligatoire
WITH CARRY
Mi
CL Mi+1 Mi (Binaire sign)
@CL Su
413 (Binaire sign)
R Su+1 Su

Mi : Mot soustraire CY
Su : Mot soustracteur CY passera
R : Mot de rsultat ON s'il
existe un CY R+1 R (Binaire sign)
emprunt.

BCD SUBTRACT Ajoute 4 chiffres de donnes BCD (mot unique) et/ou Sortie
WITHOUT B(414) Obligatoire
CARRY des constantes. (BCD)
Mi
Mi
B
@B Su Su (BCD)
414
R
CY passera
Mi : Mot soustraire ON s'il existe CY R (BCD)
Su : Mot soustracteur une retenue.
R : Mot de rsultat

DOUBLE BCD Sortie


SUBTRACT BL(415) Ajoute 8 chiffres de donnes BCD (mot double) et/ou Obligatoire
WITHOUT Mi des constantes.
CARRY Mi +1 Mi (BCD)
BL Su
@BL (BCD)
R Su+1 Su
415
Mi : 1er mot
soustraire CY passera (BCD)
ON s'il existe CY R+1 R
Su : 1er mot
soustracteur un emprunt.
R : 1er mot de rsultat

BCD SUBTRACT Ajoute 4 chiffres de donnes BCD (mot unique) et/ou des constantes Sortie
WITH CARRY BC(416) Obligatoire
avec le drapeau de passage (CY).
BC Mi
@BC Mi (BCD)
416 Su
Su (BCD)
R
CY
Mi : Mot soustraire
Su : Mot
soustracteur CY passera (BCD)
R : Mot de rsultat ON s'il existe un CY R
emprunt.

101
Instructions mathmatiques symboles Chapitre 3-9

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DOUBLE BCD Ajoute 8 chiffres de donnes BCD (mot double) et/ou des constantes Sortie
SUBTRACT BCL(417) avec le drapeau de passage (CY). Obligatoire
WITH CARRY
Mi Mi +1 Mi (BCD)
BCL
@BCL Su
417 Su+1 Su (BCD)
R
Mi : 1er mot CY
soustraire
Su : 1er mot
soustracteur CY passera ON (BCD)
R : 1er mot de CY R+1 R
s'il existe un
rsultat emprunt.

SIGNED BINARY Sortie


MULTIPLY *(420) Multiplie 4 chiffres de donnes hexadcimales signes et/ou
des constantes. Obligatoire
* Md Md (Binaire sign)
@*
420 Mr
x Mr (Binaire sign)
R
Md : Mot
multiplicande R +1 R (Binaire sign)
Mr : Mot
multiplicateur
R : Mot de rsultat

DOUBLE Sortie
SIGNED BINARY *L(421) Multiplie 8 chiffres de donnes hexadcimales signes et/ou
Obligatoire
MULTIPLY des constantes.
*L
Md Md + 1 Md (Binaire sign)
@*L Mr
421 x Mr + 1 Mr (Binaire sign)
R
Md : 1er mot
multiplicande
Mr : 1er mot R+3 R+2 R+1 R (Binaire sign)
multiplicateur
R : 1er mot de
rsultat

UNSIGNED Sortie
BINARY *U(422) Multiplie 4 chiffres de donnes hexadcimales non signes
Obligatoire
MULTIPLY et/ou des constantes.
*U
Md Md (Binaire non sign)
@*U Mr
422 (Binaire non sign)
R x Mr

Md : Mot
multiplicande R +1 R (Binaire non sign)
Mr : Mot
multiplicateur
R : Mot de rsultat

DOUBLE Sortie
UNSIGNED *UL(423) Multiplie 8 chiffres de donnes hexadcimales non signes et/ou
Obligatoire
BINARY des constantes.
MULTIPLY Md Md + 1 Md (Binaire non sign)
*UL Mr
@*UL
R x Mr + 1 Mr (Binaire non sign)
423
Md : 1er mot
multiplicande
Mr : 1er mot (Binaire non sign)
multiplicateur R+3 R+2 R+1 R
R : 1er mot de
rsultat

102
Instructions mathmatiques symboles Chapitre 3-9

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
BCD MULTIPLY Multiplie 4 chiffres de donnes BCD (mot unique) et/ou Sortie
*B *B(424) Obligatoire
des constantes. (BCD)
@*B Md Md
424
Mr
x Mr (BCD)
R
Md : Mot R +1 R (BCD)
multiplicande
Mr : Mot
multiplicateur
R : Mot de rsultat

DOUBLE BCD Multiplie 8 chiffres de donnes BCD (mot double) et/ou Sortie
MULTIPLY *BL(425) Obligatoire
des constantes.
*BL Md (BCD)
@*BL Md + 1 Md
425 Mr
R Mr + 1 Mr (BCD)
x
Md : 1er mot
multiplicande
Mr : 1er mot R+3 R+2 R+1 R (BCD)
multiplicateur
R : 1er mot de
rsultat

SIGNED BINARY Ajoute 4 chiffres de donnes hexadcimales signes (mot unique)


Sortie
DIVIDE /(430) Obligatoire
et/ou des constantes.
/ Dd Dd (Binaire sign)
@/
430 Dr
Dr (Binaire sign)
R
Dd : Mot
dividende R +1 R (Binaire sign)
Dr : Mot diviseur
R : Mot de rsultat Reste Quotient

DOUBLE Ajoute 8 chiffres de donnes hexadcimales signes (mot double) Sortie


SIGNED BINARY /L(431) et/ou des constantes. Obligatoire
DIVIDE Dd
/L Dd + 1 Dd (Binaire sign)
@/L Dr
431 R Dr + 1 Dr (Binaire sign)
Dd : 1er mot
dividende
Dr : 1er mot
diviseur R+3 R+2 R+1 R (Binaire sign)
R : 1er mot de
rsultat Reste Quotient

UNSIGNED Ajoute 4 chiffres de donnes hexadcimales non signes Sortie


BINARY DIVIDE /U(432) Obligatoire
(mot unique) et/ou des constantes.
/U Dd
@/U Dd (Binaire non sign)
432 Dr
R Dr (Binaire non sign)
Dd : Mot dividende
Dr : Mot diviseur
R : Mot de rsultat R +1 R (Binaire non sign)

Reste Quotient

103
Instructions de conversion Chapitre 3-10

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DOUBLE Divise 8 chiffres de donnes hexadcimales non signes (mot double) Sortie
UNSIGNED /UL(433) et/ou des constantes. Obligatoire
BINARY DIVIDE
/UL Dd Dd + 1 Dd (Binaire non sign)
@/UL Dr
433 (Binaire non sign)
R Dr + 1 Dr

Dd : 1er mot
dividende
Dr : 1er mot diviseur R+3 R+2 R+1 R (Binaire non sign)
R : 1er mot de
rsultat Reste Quotient

BCD DIVIDE Divise 4 chiffres de donnes BCD (mot unique) et/ou Sortie
/B /B(434) Obligatoire
@/B
des constantes.
Dd Dd (BCD)
434
Dr
R Dr (BCD)

Dd : Mot dividende
Dr : Mot diviseur R +1 R (BCD)
R : Mot de rsultat
Reste Quotient
DOUBLE BCD Sortie
DIVIDE /BL(435) Divise 8 chiffres de donnes BCD (mot double) et/ou
des constantes. Obligatoire
/BL Dd (BCD)
@/BL Dd + 1 Dd
435 Dr
R Dr + 1 Dr (BCD)
Dd : 1er mot
dividende
Dr : 1er mot
diviseur R+3 R+2 R+1 R (BCD)
R : 1er mot de
rsultat Reste Quotient

3-10 Instructions de conversion


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
BCD-TO-BINARY Sortie
BIN(023) Convertit des donnes BCD en donnes binaires.
BIN Obligatoire
@BIN S (BCD) (BIN)
R
023
R
S : Mot source
R : Mot de rsultat

DOUBLE BCD- Convertit des donnes BCD 8 chiffres en donnes hexadcimales Sortie
TO-DOUBLE BINL(058) Obligatoire
BINARY 8 chiffres (binaire 32 bits).
BINL
S (BCD) R (BIN)
@BINL R (BCD) R+1 (BIN)
058
S : 1er mot source
R : 1er mot de
rsultat

104
Instructions de conversion Chapitre 3-10

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
BINARY-TO-BCD Convertit un mot de donnes binaires en un mot de donnes Sortie
BCD BCD(024) Obligatoire
BCD.
@BCD S (BIN) R (BCD)
024
R
S : Mot source
R : Mot de rsultat

DOUBLE Convertit des donnes hexadcimales 8 chiffres (binaire 32 bits) Sortie


BINARY-TO- BCDL(059)
en donnes BCD 8 chiffres. Obligatoire
DOUBLE BCD
BCDL S (BIN) R (BCD)
@BCDL R (BIN) R+1 (BCD)
059
S : 1er mot source
R : 1er mot de
rsultat

2'S Sortie
COMPLEMENT NEG(160) Calcule le complment 2 d'un mot de donnes hexadcimales.
Obligatoire
NEG Complment 2
@NEG S
(Complment + 1)
160 R (S) (R)
S : Mot source
R : Mot de rsultat
DOUBLE 2'S Calcule le complment 2 de deux mots de donnes hexadcimales. Sortie
COMPLEMENT NEGL(161) Obligatoire
NEGL Complment 2
@NEGL (Complment + 1)
161 S
R (S+1, S) (R+1, R)
S : 1er mot source
R : 1er mot de
rsultat

16-BIT TO 32-BIT Dveloppe une valeur binaire de 16 bits signe de faon Sortie
SIGNED BINARY SIGN(600)
obtenir son quivalent 32 bits. Obligatoire
SIGN S MSB
@SIGN
600 R S
S : Mot source
R : 1er mot de MSB = 1 : MSB = 0 :
FFFF Hex 0000 Hex
rsultat

D+1 D
D = Contenu de S

105
Instructions de conversion Chapitre 3-10

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DATA DECODER Lit la valeur numrique dans le chiffre (ou l'octet) spcifi du mot Sortie
MLPX MLPX(076) source, met sur ON le bit correspondant dans le mot (ou la plage de Obligatoire
@MLPX S 16 mots) de rsultat et met sur OFF tous les autres bits dans le mot
076 (ou la plage de 16 mots) de rsultat.
C Conversion 4 16 bits
R C
S : Mot source
C : Mot de contrle l=1 (Convertir 2 chiffres.)
R : 1er mot de
rsultat
n=2 (Partir du deuxime chiffre.)

Dcodage de 4 16 bits
(Le bit m de R est mis sur ON.)

R
R+1

Conversion de 8 256 bits


C
l=1 (Convertir 2 octets.)

n=1 (Partir du premier octet.)

Dcodage 8 256 bits


(Le bit m de R R+15 est mis sur ON.)

R+1

R+14
R+15
R+16
R+17
Deux plages de 16 mots
sont utilises lorsque l
spcifie 2 octets.
R+30
R+31

106
Instructions de conversion Chapitre 3-10

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DATA ENCODER Recherche l'emplacement du premier ou du dernier bit sur ON dans le Sortie
DMPX DMPX(077) mot (ou la plage de 16 mots) source et crit cette valeur dans le Obligatoire
@DMPX S chiffre (ou l'octet) spcifi du mot de rsultat.
077 Conversion 16 4 bits
R C
Recherche le bit le plus droite
C (Adresse de bit la plus haute)

S : 1er mot source l=1 (Convertir


R : Mot de rsultat 2 mots.)
C : Mot de
contrle

Dcodage 16 4 bits
(L'emplacement du bit Bit le plus gauche Bit le plus droite
le plus gauche (m)
est crit dans R.)

n=2 (Partir du chiffre 2.)

Conversion 256 8 bits

l=0 (Convertir une plage de 16 mots.)

Bit le plus gauche

Recherche le bit le plus gauche


(Adresse de bit la plus haute)

Dcodage 256 8 bits


(L'emplacement du bit le plus gauche dans
la plage de 16 mots (m) est crit dans R.)

n=1 (Partir de l'octet 1.)

ASCII CONVERT Convertit les chiffres hexadcimaux 4 bits du mot source dans Sortie
ASC ASC(086) Obligatoire
leurs quivalents ASCII 8 bits.
@ASC Di
S
086
Di Premier chiffre convertir

S : Mot source
Di : Dsignateur
de chiffres
D : 1er mot de Nombre de
destination chiffres (n+1)

Gauche (1) Droite (0)

107
Instructions de conversion Chapitre 3-10

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
ASCII TO HEX Convertit jusqu' 4 octets de donnes ASCII du mot source dans Sortie
HEX HEX(162) Obligatoire
leurs quivalents hexadcimaux et crit ces chiffres dans le mot
@HEX S de destination spcifi.
162 C :0021
Di Di
D Premier octet convertir

S : 1er mot Gauche (1) Droite (0)


source
Di : Dsignateur
de chiffres
D : Mot de
destination
Nombre de chiffres (n+1)

Premier chiffre crire

COLUMN TO Convertit une colonne de bits d'une plage de 16 mots (le mme numro Sortie
LINE LINE(063)
de bit dans 16 mots conscutifs) dans les 16 bits du mot de destination. Obligatoire
LINE S
@LINE N
Bit Bit
063 N 15 00
D
S 0 0 0 1 1 1 1 0 0 0 1 0 0 0 0 1
S : 1er mot S+1 1 1 0 1 0 0 1 0 0 1 1 1 0 0 0 1
source
N : Numro de bit S+2 0 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1
D : Mot de S+3 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1
destination . . . .
. . . .
. . . .
S+15 0 1 1 0 0 0 0 1 1 0 0 0 1 0 1 0

Bit Bit
15 00

D 0 . . . 0 1 1 1
LINE TO Convertit les 16 bits du mot source en une colonne de bits Sortie
COLUMN COLM(064)
dans une plage de 16 mots de destination (le mme numro de Obligatoire
COLM S bit dans 16 mots conscutifs).
@COLM
064 D Bit Bit
15 00
N
S 0 . . . . . . . 0 1 1 1
S : Mot source
D : 1er mot de
destination
N : Numro de bit
Bit Bi Bit
15 00
D 0 0 0 0 1 1 1 0 0 0 1 0 0 0 0 1
D+1 1 1 0 1 0 0 1 0 0 1 1 1 0 0 0 1
D+2 0 0 0 1 1 0 1 1 0 0 1 0 0 1 1 1
D+3 1 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1
. . . .
. . . .
. . . .
D+15 0 1 1 1 0 0 0 1 1 0 0 0 1 0 1 0

108
Instructions de conversion Chapitre 3-10

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
SIGNED BCD- Convertit un mot de donnes BCD signes en un mot de donnes Sortie
TO-BINARY BINS(470)
binaires signes. Obligatoire
BINS C
@BINS
470 S Format BCD sign
D spcifi dans C

C : Mot de contrle BCD sign Binaire sign


S : Mot source
D : Mot de
destination

DOUBLE Convertit des donnes BCD signes doubles en donnes Sortie


SIGNED BCD- BISL(472) Obligatoire
TO-BINARY binaires signes doubles.
C
BISL
@BISL S Format BCD sign
472 spcifi dans C
D
BCD sign Binaire sign
C : Mot de BCD sign Binaire sign
contrle
S : 1er mot source
D : 1er mot de
destination

SIGNED BINARY- Sortie


TO-BCD BCDS(471) Convertit un mot de donnes binaires signes en un mot de
donnes BCD signes. Obligatoire
BCDS C
@BCDS
471 S Format BCD sign
D spcifi dans C
Binaire sign BCD sign
C : Mot de contrle
S : Mot source
D : Mot de
destination

DOUBLE Sortie
SIGNED BINARY- BDSL(473) Convertit des donnes binaires signes doubles en donnes BCD
signes doubles. Obligatoire
TO-BCD
C
BDSL
@BDSL S
473 Format BCD sign
D spcifi dans C

C : Mot de contrle Binaire sign BCD sign


S : 1er mot source Binaire sign BCD sign
D : 1er mot de
destination

GRAY CODE Convertit les donnes de code Gray du mot spcifi en donnes Sortie
CONVERSION GRY (474) binaires, donnes BCD ou donnes d'angle () la rsolution spcifie. Obligatoire
GRY C
474
(UC srie CS/CJ S
Ver. 2.0 ou D
suprieure
uniquement, y C : Mot de
compris les UC contrle
CS1-H, CJ1-H et S : Mot source
CJ1M partir du D : 1er mot de
numro de lot destination
030201)

109
Instructions logiques Chapitre 3-11

3-11 Instructions logiques


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
LOGICAL AND Effectue le AND logique des bits correspondants dans des mots Sortie
ANDW(034)
ANDW uniques de donnes de mots et/ou des constantes. Obligatoire
@ANDW I1
034 I1. I2 R
I2
I1 I2 R
R
1 1 1
I1 : Entre 1
I2 : Entre 2 1 0 0
R : Mot de rsultat 0 1 0
0 0 0

DOUBLE Effectue le AND logique des bits correspondants dans des mots Sortie
LOGICAL AND ANDL(610)
doubles de donnes de mots et/ou des constantes. Obligatoire
ANDL I1
@ANDL (I1, I1+1). (I2, I2+1) (R, R+1)
610 I2
R I1, I1+1 I2, I2+1 R, R+1
1 1 1
I1 : Entre 1
I2 : Entre 2 1 0 0
R : Mot de rsultat 0 1 0
0 0 0

LOGICAL OR Effectue le OR logique des bits correspondants dans des mots Sortie
ORW(035)
ORW uniques de donnes de mots et/ou des constantes. Obligatoire
@ORW I1
035 I1 + I2 R
I2
R I1 I2 R
1 1 1
I1 : Entre 1
I2 : Entre 2 1 0 1
R : Mot de rsultat
0 1 1
0 0 0

DOUBLE Effectue le OR logique des bits correspondants dans des mots Sortie
LOGICAL OR ORWL(611)
doubles de donnes de mots et/ou des constantes. Obligatoire
ORWL I1
@ORWL
(I1, I1+1) + (I2, I2+1) (R, R+1)
611 I2
R I1, I1+1 I2, I2+1 R, R+1
1 1 1
I1 : Entre 1
I2 : Entre 2 1 0 1
R : Mot de rsultat 0 1 1
0 0 0

EXCLUSIVE OR Effectue le OR exclusif logique des bits correspondants dans des Sortie
XORW(036)
XORW mots uniques de donnes de mots et/ou des constantes. Obligatoire
@XORW I1
036 I1. I2 + I1.I2 R
I2
R I1 I2 R
1 1 0
I1 : Entre 1
I2 : Entre 2 1 0 1
R : Mot de rsultat 0 1 1
0 0 0

110
Instructions logiques Chapitre 3-11

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DOUBLE Effectue le OR exclusif logique des bits correspondants dans des Sortie
EXCLUSIVE OR XORL(612)
mots doubles de donnes de mots et/ou des constantes. Obligatoire
XORL I1
@XORL (I1, I1+1). (I2, I2+1) + (I1, I1+1). (I2, I2+1) (R, R+1)
612 I2
R I1, I1+1 I2, I2+1 R, R+1
1 1 0
I1 : Entre 1
I2 : Entre 2 1 0 1
R : Mot de rsultat 0 1 1
0 0 0

EXCLUSIVE NOR Effectue le NOR exclusif logique des mots uniques de donnes de Sortie
XNRW(037)
XNRW mots et/ou des constantes correspondants. Obligatoire
@XNRW I1
037 I1. I2 + I1.I2 R
I2
R I1 I2 R
1 1 1
I1 : Entre 1
I2 : Entre 2 1 0 0
R : Mot de rsultat
0 1 0
0 0 1

DOUBLE Effectue le NOR exclusif logique des bits correspondants dans Sortie
EXCLUSIVE NOR XNRL(613)
des mots doubles de donnes de mots et/ou des constantes. Obligatoire
XNRL I1
@XNRL (I1, I1+1). (I2, I2+1) + (I1, I1+1). (I2, I2+1) (R, R+1)
613 I2
R I1, I1+1 I2, I2+1 R, R+1
I1 : Entre 1 1 1 1
I2 : Entre 2
R : 1er mot de 1 0 0
rsultat 0 1 0
0 0 1

COMPLEMENT Met sur OFF tous les bits sur ON et met sur ON tous Sortie
COM(029)
COM les bits sur OFF dans Wd. Obligatoire
@COM Wd Wd Wd : 1 0 et 0 1
029
Wd : Mot

DOUBLE Met sur OFF tous les bits sur ON et met sur ON tous les bits sur OFF dans Sortie
COMPLEMENT COML(614) Wd et Wd+1. Obligatoire
COML Wd (Wd+1, Wd) (Wd+1, Wd)
@COML
614 Wd : Mot

111
Instructions mathmatiques spciales Chapitre 3-12

3-12 Instructions mathmatiques spciales


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
BINARY ROOT Calcule la racine carre du contenu binaire 32 bits des mots spcifis Sortie
ROTB(620) et place la partie entire du rsultat dans le mot de rsultat spcifi.
ROTB Obligatoire
@ROTB
S
620
R
S+1 S R
S : 1er mot source
R : Mot de rsultat Donne binaire (32 bits) Donne binaire (16 bits)

BCD SQUARE Calcule la racine carre d'un nombre binaire 8 chiffres et place la Sortie
ROOT ROOT(072) Obligatoire
partie entire du rsultat dans le mot de rsultat spcifi.
ROOT
@ROOT S
072 R
S+1 S R
S : 1er mot source Donne BCD (8 chiffres) Donne BCD (4 chiffres)
R : Mot de rsultat

ARITHMETIC Calcule le sinus, le cosinus ou une extrapolation linaire des donnes Sortie
PROCESS APR(069) sources. Obligatoire
APR C La fonction d'extrapolation linaire permet d'tablir une approximation
@APR d'une relation entre X et Y avec des segments de ligne.
069 S
R
C : Mot de contrle
S : Donne source
R : Mot de rsultat

FLOATING Divise un nombre de 7 chiffres virgule flottante par un autre. Les Sortie
POINT DIVIDE FDIV(079) Obligatoire
nombres virgule flottante sont exprims dans une notation
FDIV Dd scientifique (7 chiffres pour la mantisse et 1 chiffre pour l'exposant).
@FDIV
Quotient
079 Dr
R R+1 R

Dd : 1er mot
dividende Dr+1 Dr Dd+1 Dd
Dr : 1er mot
diviseur
R : 1er mot de
rsultat
BIT COUNTER Compte le nombre total de bits sur ON dans le(s) mot(s) Sortie
BCNT BCNT(067) Obligatoire
spcifi(s).
@BCNT N
067 N mots
S Compte le nombre de
jusqu' bits sur ON.
R
S+(N1) Rsultat
N : Nombre de binaire
mots
S : 1er mot source R
R : Mot de rsultat

112
Instructions mathmatiques virgule flottante Chapitre 3-13

3-13 Instructions mathmatiques virgule flottante


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
FLOATING TO Sortie
16-BIT FIX(450) Convertit une valeur virgule flottante 32 bits en donne binaire
signe 16 bits et place le rsultat dans le mot de rsultat spcifi. Obligatoire
FIX
@FIX S
S+1 S Donne virgule
450 R
flottante (32 bits)
S : 1er mot source
R : Mot de rsultat R Donne binaire
signe (16 bits)
FLOATING TO Convertit une valeur virgule flottante 32 bits en donne binaire Sortie
32-BIT FIXL(451) Obligatoire
signe 32 bits et place le rsultat dans les mots de rsultat spcifis.
FIXL S
@FIXL S+1 S Donne virgule
451 R
flottante (32 bits)
S : 1er mot source
R : 1er mot de R+1 R Donne binaire
rsultat
signe (32 bits)
16-BIT TO Convertit une valeur binaire signe 16 bits en donne virgule Sortie
FLOATING FLT(452)
flottante 32 bits et place le rsultat dans les mots de rsultat Obligatoire
FLT S
@FLT
R S Donne binaire
452
signe (16 bits)
S : Mot source
R : 1er mot de
rsultat R+1 R Donne virgule
flottante (32 bits)
32-BIT TO Sortie
FLOATING FLTL(453) Convertit une valeur binaire signe 32 bits en donne virgule
flottante 32 bits et place le rsultat dans les mots de rsultat Obligatoire
FLTL S
@FLTL Donne binaire
S+1 S
453 R
signe (32 bits)
S : 1er mot source
R : 1er mot de R+1 R Donne virgule
rsultat
flottante (32 bits)
FLOATING- Sortie
POINT ADD +F(454) Ajoute deux nombres virgule flottante 32 bits et place le rsultat Obligatoire
+F Au dans les mots de rsultat spcifis.
@+F
Ad 1er terme de l'addition (donne
454 Au+1 Au
virgule flottante, 32 bits)
R
2me terme addition (donne
Au : 1er mot 1er
terme de l'addition + Ad+1 Ad virgule flottante, 32 bits)
AD : 1er mot 2me
terme addition Rsultat (donnes virgule
R : 1er mot de R+1 R
rsultat flottante, 32 bits)

FLOATING- Sortie
POINT F(455) Soustrait un nombre virgule flottante 32 bits d'un autre nombre et Obligatoire
SUBTRACT place le rsultat dans les mots de rsultat spcifis.
F
Mi
@F Mot soustraire (donnes
Su Mi+1 Mi
455 virgule flottante, 32 bits)
R
Soustracteur (donnes
Mi : 1er mot Su+1 Su
virgule flottante, 32 bits)
soustraire
Su : 1er mot
soustracteur
R : 1er mot de Rsultat (donnes
R+1 R
rsultat virgule flottante, 32 bits)

113
Instructions mathmatiques virgule flottante Chapitre 3-13

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
FLOATING- Sortie
POINT MULTIPLY *F(456) Multiplie deux nombres virgule flottante 32 bits et place le rsultat
Obligatoire
dans les mots de rsultat spcifis.
*F Md
@*F Md+1 Multiplicande (donnes
Md
456 Mr virgule flottante, 32 bits)
R
Md : 1er mot
x Mr+1 Mr
Multiplicateur (donnes
virgule flottante, 32 bits)
multiplicande
Mr : 1er mot
multiplicateur Rsultat (donnes virgule
R : 1er mot de R+1 R flottante, 32 bits)
rsultat

FLOATING- Sortie
POINT DIVIDE /F(457) Divise un nombre virgule flottante 32 bits par un autre et place le
Obligatoire
/F rsultat dans les mots de rsultat spcifis.
Dd
@/F Dividende (donne
Dr Dd+1 Dd
457 virgule flottante, 32 bits)
R Diviseur (donne
Dd : 1er mot Dr+1 Dr
virgule flottante, 32 bits)
dividende
Dr : 1er mot
diviseur Rsultat (donnes
R : 1er mot de R+1 R
virgule flottante, 32 bits)
rsultat

DEGREES TO Convertit un nombre de 32 bits virgule flottante de degrs en Sortie


RADIANS RAD(458) radians et place le rsultat dans les mots de rsultat spcifis. Obligatoire
RAD S
@RAD Source (degrs, donnes
458 R S+1 S
32 bits virgule flottante)

S : 1er mot source


R : 1er mot de Rsultat (radians, donnes
rsultat R+1 R
32 bits virgule flottante)

RADIANS TO Convertit un nombre de 32 bits virgule flottante de radians en Sortie


DEGREES DEG(459) Obligatoire
degrs et place le rsultat dans les mots de rsultat spcifis.
DEG S
@DEG Source (radians, donnes
459 R S+1 S
32 bits virgule flottante)
S : 1er mot source
R : 1er mot de Rsultat (degrs, donnes
rsultat R+1 R
32 bits virgule flottante)

SINE Sortie
SIN(460) Calcule le sinus d'un nombre de 32 bits virgule flottante (en
SIN Obligatoire
@SIN radians) et place le rsultat dans les mots de rsultat spcifis.
S
460 Source (donnes
R SIN S+1 S
32 bits virgule
S : 1er mot source flottante)
R : 1er mot de
rsultat Rsultat (donnes
R+1 R
32 bits virgule
flottante)

COSINE Calcule le cosinus d'un nombre de 32 bits virgule flottante (en Sortie
COS COS(461) Obligatoire
radians) et place le rsultat dans les mots de rsultat spcifis.
@COS S
461 COS Source (donnes
S+1 S
R 32 bits virgule
flottante)
S : 1er mot source
R : 1er mot de Rsultat (donnes
rsultat R+1 R 32 bits virgule
flottante)

114
Instructions mathmatiques virgule flottante Chapitre 3-13

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
TANGENT Sortie
TAN(462) Calcule la tangente d'un nombre de 32 bits virgule flottante (en
TAN radians) et place le rsultat dans les mots de rsultat spcifis. Obligatoire
@TAN S
462 Source (donnes
R TAN S+1 S 32 bits virgule
flottante)
S : 1er mot source
R : 1er mot de Rsultat (donnes
rsultat R+1 R 32 bits virgule
flottante)

ARC SINE Calcule l'arc sinus d'un nombre de 32 bits virgule flottante et place Sortie
ASIN ASIN(463) le rsultat dans les mots de rsultat spcifis (la fonction arc sinus Obligatoire
@ASIN S est l'inverse de la fonction sinus ; elle renvoie l'angle qui correspond
463 une valeur de sinus donne, comprise entre 1 et 1).
R
Source (donnes
S : 1er mot source SIN 1 S+1 S
32 bits virgule
R : 1er mot de flottante)
rsultat

R+1 R Rsultat (donnes


32 bits virgule
flottante)

ARC COSINE Calcule l'arc cosinus d'un nombre de 32 bits virgule flottante et place Sortie
ACOS(464)
ACOS le rsultat dans les mots de rsultat spcifis (la fonction arc cosinus Obligatoire
@ACOS S est l'inverse de la fonction cosinus ; elle renvoie l'angle qui donne une
464 valeur de cosinus donne, comprise entre 1 et 1).
R
Source (donnes
S : 1er mot source COS 1 S+1 S
32 bits virgule
R : 1er mot de flottante)
rsultat
Rsultat (donnes
R+1 R
32 bits virgule
flottante)

ARC TANGENT Calcule l'arc tangente d'un nombre de 32 bits virgule flottante et Sortie
ATAN(465)
ATAN place le rsultat dans les mots de rsultats spcifis (la fonction arc Obligatoire
@ATAN S tangente est l'inverse de la fonction tangente ; elle retourne l'angle qui
465 correspond une valeur de tangente donne).
R
1
Source (donnes
S : 1er mot source TAN S+1 S 32 bits virgule
R : 1er mot de flottante)
rsultat
Rsultat (donnes
R+1 R 32 bits virgule
flottante)

SQUARE ROOT Calcule la racine carre d'un nombre de 32 bits virgule flottante Sortie
SQRT(466)
SQRT et place le rsultat dans les mots de rsultat spcifis. Obligatoire
@SQRT S
466 Source (donnes
R S+1 S 32 bits virgule
flottante)
S : 1er mot source
R : 1er mot de
rsultat Rsultat (donnes
R+1 R
32 bits virgule
flottante)

115
Instructions mathmatiques virgule flottante Chapitre 3-13

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
EXPONENT Calcule l'exponentiel naturel (base e) d'un nombre 32 bits virgule Sortie
EXP(467)
EXP flottante et place le rsultat dans les mots de rsultat spcifis. Obligatoire
@EXP S
467 Source (donnes
R S+1 S 32 bits virgule
S : 1er mot source
R : 1er mot de
e flottante)

rsultat Rsultat (donnes


R+1 R 32 bits virgule
flottante)

LOGARITHM Calcule le logarithme naturel (base e) d'un nombre 32 bits virgule Sortie
LOG LOG(468) flottante et place le rsultat dans les mots de rsultat spcifis. Obligatoire
@LOG S
468 Source (donnes
R loge S+1 S 32 bits virgule
flottante)
S : 1er mot source
R : 1er mot de Rsultat (donnes
rsultat R+1 R 32 bits virgule
flottante)

EXPONENTIAL Elve un nombre 32 bits virgule flottante la puissance d'un Sortie


POWER PWR(840) Obligatoire
autre nombre 32 bits virgule flottante.
PWR B
@PWR Puissance
840 E E+1 E
R B+1 S R+1 R
B : 1er mot de base Base
E : 1er mot
exponentiel
R : 1er mot de rsultat

FLOATING Utilisation de LD : Compare les donnes simple prcision (32 bits) ou les constantes LD :
SYMBOL spcifies et cre une condition d'excution ON si le rsultat de la non obligatoire
COMPARISON Symbole, option comparaison est vrai.
(CS1-H, CJ1-H, S1 Trois sortes de symboles peuvent tre utiliss avec les instructions de AND ou OR :
CJ1M ou CS1D S2 comparaison de symbole virgule flottante : LD (Load), AND et OR. obligatoire
uniquement)
LD, AND ou OR Utilisation de AND :
+ Symbole, option
=F (329),
<>F (330), S1
<F (331), S2
<=F (332),
>F (333) Utilisation de OR :
ou >=F (334) Symbole, option

S1
S2
S1 : Donne de comparaison 1
S2 : Donne de comparaison 2

116
Instructions virgule flottante double prcision Chapitre 3-14

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
FLOATING- Convertit les donnes virgule flottante simple prcision (format Sortie obligatoire
POINT TO ASCII FSTR(448) virgule dcimale ou exponentiel 32 bits) spcifies en chane de
(CS1-H, CJ1-H, S caractres (ASCII) et place le rsultat dans le mot de destination.
CJ1M ou CS1D
uniquement) C
FSTR
@FSTR D
448
S : 1er mot source
C : Mot de
contrle
D : Mot de
destination

ASCII TO Convertit la chane de caractres (ASCII) spcifie reprsentant les Sortie obligatoire
FLOATING- FVAL(449) donnes virgule flottante simple prcision (format virgule dcimale
POINT (CS1-H, ou exponentiel) en donnes virgule flottante simple prcision 32 bits
CJ1-H, CJ1M ou S et place le rsultat dans les mots de destination.
CS1D
uniquement) D
FVAL
@FVAL S : Mot source
449 D : 1er mot de
destination

3-14 Instructions virgule flottante double prcision


Les instructions virgule flottante double prcision sont prises en charge
uniquement par les UC CS1-H, CJ1-H, CJ1M et CS1D.
Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
DOUBLE Convertit les donnes virgule flottante double prcision (64 bits) spcifies Sortie
FLOATING TO FIXD(841) en donnes binaires 16 bits signes et place le rsultat dans le mot de Obligatoire
16-BIT BINARY destination.
FIXD S
@FIXD D
841
S : 1er mot source
D : Mot de
destination

DOUBLE Convertit les donnes virgule flottante double prcision (64 bits) spcifies Sortie
FLOATING TO FIXLD(842) en donnes binaires 32 bits signes et place le rsultat dans les mots de Obligatoire
32-BIT BINARY destination.
FIXLD S
@FIXLD D
842
S : 1er mot source
D : 1er mot de
destination

16-BIT BINARY Convertit les donnes binaires 16 bits signes spcifies en donnes Sortie
TO DOUBLE DBL(843) virgule flottante double prcision (64 bits) et place le rsultat dans les mots de Obligatoire
FLOATING destination.
DBL S
@DBL D
843
S : Mot source
D : 1er mot de
destination

117
Instructions virgule flottante double prcision Chapitre 3-14

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
32-BIT BINARY Convertit les donnes binaires 32 bits signes spcifies en donnes Sortie
TO DOUBLE DBLL(844) virgule flottante double prcision (64 bits) et place le rsultat dans les Obligatoire
FLOATING mots de destination.
S
DBLL
@DBLL D
844
S : 1er mot source
D : 1er mot de
destination

DOUBLE Ajoute les valeurs virgule flottante double prcision spcifies Sortie
FLOATING- +D(845) (64 bits chacune) et place le rsultat dans les mots de rsultat. Obligatoire
POINT ADD
Au
+D
@+D Ad
845
R
Au : 1er mot 1er
terme de l'addition
Ad : 1er mot 2me
terme addition
R : 1er mot de rsultat

DOUBLE Soustrait les valeurs virgule flottante double prcision (64 bits chacune) Sortie
FLOATING- D(846) spcifies et place le rsultat dans les mots de rsultat. Obligatoire
POINT
SUBTRACT Mi
D Su
@D
846 R
Mi : 1er mot
soustraire
Su : 1er mot
soustracteur
R : 1er mot de
rsultat

DOUBLE Multiplie les valeurs virgule flottante double prcision (64 bits chacune) Sortie
FLOATING- *D(847) spcifies et place le rsultat dans les mots de rsultat. Obligatoire
POINT MULTIPLY
Md
*D
@*D Mr
847
R
Md : 1er mot
multiplicande
Mr : 1er mot
multiplicateur
R : 1er mot de
rsultat

DOUBLE Divise les valeurs virgule flottante double prcision (64 bits chacune) Sortie
FLOATING- /D(848) spcifies et place le rsultat dans les mots de rsultat. Obligatoire
POINT DIVIDE
Dd
/D
@/D Dr
848
R
Dd : 1er mot
dividende
Dr : 1er mot
diviseur
R : 1er mot de
rsultat

118
Instructions virgule flottante double prcision Chapitre 3-14

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DOUBLE Convertit les donnes virgule flottante double prcision (64 bits) spcifies Sortie
DEGREES TO RADD(849) de degrs en radians et place le rsultat dans les mots de rsultat. Obligatoire
RADIANS
S
RADD
@RADD R
849
S : 1er mot source
R : 1er mot de
rsultat

DOUBLE Convertit les donnes virgule flottante double prcision (64 bits) spcifies Sortie
RADIANS TO DEGD(850) de radians en degrs et place le rsultat dans les mots de rsultat. Obligatoire
DEGREES
S
DEGD
@DEGD R
850
S : 1er mot source
R : 1er mot de
rsultat

DOUBLE SINE Calcule le sinus de l'angle (radians) dans les donnes virgule flottante Sortie
SIND(851) double prcision (64 bits) spcifies et place le rsultat dans les mots de
SIND Obligatoire
@SIND rsultat.
S
851
R
S : 1er mot source
R : 1er mot de
rsultat

DOUBLE Calcule le cosinus de l'angle (radians) dans les donnes virgule flottante Sortie
COSINE COSD(852) double prcision (64 bits) spcifies et place le rsultat dans les mots de Obligatoire
COSD rsultat.
@COSD S
852 R
S : 1er mot source
R : 1er mot de
rsultat

DOUBLE Calcule la tangente de l'angle (radians) dans les donnes virgule flottante Sortie
TANGENT TAND(853) double prcision (64 bits) spcifies et place le rsultat dans les mots de Obligatoire
TAND rsultat.
@TAND S
853 R
S : 1er mot source
R : 1er mot de
rsultat

DOUBLE ARC Calcule l'angle (en radians) partir de la valeur du sinus dans les donnes Sortie
SINE ASIND(854) virgule flottante double prcision (64 bits) spcifies et place le rsultat dans Obligatoire
ASIND les mots de rsultat (la fonction arc sinus est l'inverse de la fonction sinus ;
@ASIND S elle retourne l'angle qui correspond une valeur de sinus donne, comprise
entre -1 et 1).
854 R
S : 1er mot source
R : 1er mot de
rsultat

DOUBLE ARC Calcule l'angle (en radians) partir de la valeur du cosinus dans les Sortie
COSINE ACOSD(855) donnes virgule flottante double prcision (64 bits) spcifies et place le Obligatoire
ACOSD rsultat dans les mots de rsultat (la fonction arc cosinus est l'inverse de
@ACOSD S la fonction cosinus ; elle retourne l'angle qui correspond une valeur de
cosinus donne, comprise entre -1 et 1).
855 R
S : 1er mot source
R : 1er mot de
rsultat

119
Instructions virgule flottante double prcision Chapitre 3-14

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DOUBLE ARC Calcule l'angle (en radians) partir de la valeur de la tangente dans les Sortie
TANGENT ATAND(856) donnes virgule flottante double prcision (64 bits) spcifies et place le Obligatoire
ATAND rsultat dans les mots de rsultat (la fonction arc tangente est l'inverse de la
@ATAND S fonction tangente ; elle retourne l'angle qui correspond une valeur de
tangente donne).
856 R
S : 1er mot source
R : 1er mot de
rsultat

DOUBLE Calcule la racine carre des donnes virgule flottante double prcision Sortie
SQUARE ROOT SQRTD(857) (64 bits) spcifies et place le rsultat dans les mots de rsultat. Obligatoire
SQRTD
@SQRTD S
857 R
S : 1er mot source
R : 1er mot de
rsultat

DOUBLE Calcule l'exponentiel naturel (base e) des donnes virgule flottante double Sortie
EXPONENT EXPD(858) prcision (64 bits) spcifies et place le rsultat dans les mots de rsultat. Obligatoire
EXPD
@EXPD S
858 R
S : 1er mot source
R : 1er mot de
rsultat

DOUBLE Calcule le logarithme naturel (base e) des donnes virgule flottante double Sortie
LOGARITHM LOGD(859) prcision (64 bits) spcifies et place le rsultat dans les mots de rsultat. Obligatoire
LOGD
@LOGD S
859 R
S : 1er mot source
R : 1er mot de
rsultat

DOUBLE Elve un nombre virgule flottante double prcision (64 bits) la puissance Sortie
EXPONENTIAL PWRD(860) d'un autre nombre virgule flottante double prcision et place le rsultat dans Obligatoire
POWER les mots de rsultat.
PWRD B
@PWRD E
860
R
B : 1er mot de base
E : 1er mot
exponentiel
R : 1er mot de rsultat

DOUBLE Utilisation de LD : Compare les donnes double prcision (64 bits) spcifies et cre une LD :
SYMBOL condition d'excution ON si le rsultat de la comparaison est vrai. non obligatoire
COMPARISON Symbole, option
Ces trois types de symboles peuvent tre utiliss avec les instructions de
LD, AND ou OR S1 comparaison symbole virgule flottante : LD (Load), AND et OR. AND ou OR :
+ S2 obligatoire
=D (335),
<>D (336), Utilisation de AND :
<D (337), Symbole, option
<=D (338), S1
>D (339),
or >=D (340) S2

Utilisation de OR :

Symbole, option

S1
S2
S1 : Donne de
comparaison 1
S2 : Donne de
comparaison 2

120
Instructions de traitement de donnes de tableaux Chapitre 3-15

3-15 Instructions de traitement de donnes de tableaux


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
SET STACK Dfinit une pile de la longueur spcifie commenant au mot spcifi Sortie
SSET SSET(630) Obligatoire
et initialise (met zro) les mots dans la zone de donnes.
@SSET TB
630 Adresse mmoire
N E/S interne
TB
TB : 1re adresse m+(N1)
TB+1
de pile N mots
TB+2
N : Nombre de Dernier dans
mots mot de
TB+3
la pile
la pile Pointeur
d'empile-
ment
m+(N1)

PUSH ONTO Sortie


STACK PUSH(632) Ecrit un mot de donnes dans la pile spcifie.
Obligatoire
PUSH TB Adresse mmoire Adresse
@PUSH E/S interne mmoire E/S
632 S interne
TB TB
TB+1 TB+1
TB : 1re TB+2 TB+2
adresse de pile TB+3 PUSH(632) TB+3
S : Mot source

LAST IN FIRST Lit le dernier mot de donnes crit dans la pile spcifie (les donnes Sortie
OUT LIFO(634) Obligatoire
de la pile les plus rcentes).
LIFO TB
@LIFO Pointeur Adresse mmoire Adresse mmoire
634 D d'empilement E/S interne E/S interne
TB : 1re TB TB
adresse de pile TB+1 Donnes TB+1
D : Mot de les plus
TB+2
destination rcentes TB+2
TB+3 TB+3 m1
Pointeur
d'empi-
lement
m 1 m 1 A reste
inchang.

Le pointeur est Dernier entr, premier sorti


dcrment.

FIRST IN FIRST Lit le premier mot de donnes crit dans la pile spcifie Sortie
OUT FIFO(633) (les donnes de la pile les plus anciennes). Obligatoire
FIFO TB Adresse mmoire Adresse mmoire
@FIFO E/S interne E/S interne
633 D TB TB
Pointeur TB+1 Donnes TB+1
TB : 1re d'empile- les plus
TB+2 anciennes TB+2
adresse de pile ment
m 1
D : Mot de TB+3 TB+3
destination Pointeur
d'empile-
ment
m 1

Premier entr, premier sorti

121
Instructions de traitement de donnes de tableaux Chapitre 3-15

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DIMENSION Dfinit une table d'enregistrements en dclarant la longueur de chaque Sortie
RECORD TABLE DIM(631)
enregistrement et le nombre d'enregistrement. Il est possible de dfinir Obligatoire
DIM N jusqu' 16 tables d'enregistrements.
@DIM Numro de table (N)
631 LR
NR Enregistrement 1
TB
Nombre
N : Numro de table
LR : Longueur de
d'enregistrements LR NR mots
chaque enregistrement
NR : Nombre
d'enregistrements
TB : 1er mot de table Enregistrement NR

SET RECORD Ecrit l'emplacement de l'enregistrement spcifi (l'adresse mmoire E/S Sortie
LOCATION SETR(635) Obligatoire
interne du dbut de l'enregistrement) dans le registre d'index spcifi.
SETR N
@SETR Adresse mmoire
635 R Numro de table (N) E/S interne
SETR(635) crit l'adresse mmoire E/S
D interne (m) du premier mot de l'enregistre-
R ment R dans le registre d'index D.
N : Numro de table
R : Numro Numro d'enre-
d'enregistrement gistrement (R)
D : Registre d'index
de destination

GET RECORD Renvoie le numro de l'enregistrement l'adresse mmoire E/S interne Sortie
NUMBER GETR(636) Obligatoire
contenue dans le registre d'index spcifi.
GETR N
@GETR
Numro de table (N) Adresse mmoire
636 IR E/S interne
D
GETR(636) crit le
N : Numro de table numro de l'enre-
IR : Registre d'index IR Numro d'enre-
gistrement (R) gistrement qui inclut
D : Mot de l'adresse mmoire
destination E/S (m) dans D.

DATA SEARCH Recherche un mot de donnes dans une plage de mots. Sortie
SRCH SRCH(181) Obligatoire
@SRCH C Adresse mmoire
181 E/S interne
R1
R1 Rechercher
Cd
C Cd
C : 1er mot de
contrle
R1 : 1er mot de
la plage R1+(C-1)
Cd : Donne de Correspondance
comparaison

122
Instructions de traitement de donnes de tableaux Chapitre 3-15

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
SWAP BYTES SWAP(637) Permute l'octet le plus gauche et l'octet le plus droite dans Sortie
SWAP tous les mots de la plage. Obligatoire
@SWAP N Permute la position des octets.
637
R1
N : Nombre de R1
mots
R1 : 1er mot de N
la plage

FIND MAXIMUM Sortie


MAX(182) Recherche la valeur maximale dans la plage.
MAX Obligatoire
@MAX Adresse mmoire
C E/S interne
182
R1 R1

D Mots C
C : 1er mot de Valeur
contrle max.
R1 : 1er mot de R1+(W-1)
la plage
D : Mot de
destination

FIND MINIMUM Recherche la valeur minimale dans la plage. Sortie


MIN MIN(183) Obligatoire
@MIN Adresse mmoire
C E/S interne
183 R1
R1
D Mots C

C : 1er mot de
contrle Valeur min.
R1 : 1er mot de R1+(W1)
la plage
D : Mot de
destination

SUM Ajoute les octets ou les mots dans la plage et place le rsultat Sortie
SUM SUM(184) Obligatoire
dans deux mots.
@SUM
C
184
R1
D R1
C : 1er mot de
contrle
R1 : 1er mot de R1+(W-1)
la plage )
D : 1er mot de
destination

FRAME Sortie
CHECKSUM FCS(180) Calcule la valeur FCS ASCII pour la plage spcifie.
Obligatoire
FCS C R1
@FCS
180 R1 Units C
D
C : 1er mot de
contrle Conversion ASCII
Calcul
R1 : 1er mot de Valeur FCS
la plage
D : 1er mot de
destination

123
Instructions de traitement de donnes de tableaux Chapitre 3-15

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
STACK SIZE Compte le nombre de donnes de pile (nombre de mots) dans la pile Sortie obligatoire
READ (CS1-H, SNUM(638) spcifie.
CJ1-H, CJ1M ou
CS1D TB
uniquement)
D
SNUM
@SNUM TB : Premire
638 adresse pile
D : Mot de
destination

STACK DATA Lit les donnes d'un lment de donnes spcifi dans la pile. La valeur Sortie obligatoire
READ (CS1-H, SREAD(639) de dcalage indique l'emplacement de l'lment de donnes voulu
CJ1-H, CJ1M ou (nombre d'lments de donnes avant la position courante du pointeur).
CS1D TB
uniquement) C
SREAD
@SREAD D
639
TB : Premire
adresse pile
C : Valeur de
dcalage
D : Mot de destinat

STACK DATA Ecrit les donnes sources dans l'lment de donnes spcifi dans la pile (en Sortie obligatoire
OVERWRITE SWRITE(640) remplaant les donnes existantes). La valeur de dcalage indique
(CS1-H, CJ1-H, l'emplacement de l'lment de donnes voulu (nombre d'lments de
CJ1M ou CS1D TB donnes avant la position courante du pointeur).
uniquement) C
SWRIT
@SWRIT S
640
TB : Premire
adresse pile
C : Valeur de dcalage
S : Donne source

STACK DATA Insre les donnes sources l'emplacement spcifi dans la pile et dcale le Sortie obligatoire
INSERT (CS1-H, SINS(641) reste des donnes de la pile vers le bas. La valeur de dcalage indique
CJ1-H, CJ1M ou l'emplacement du point d'insertion (nombre d'lments de donnes avant la
CS1D TB position courante du pointeur).
uniquement) C
SINS
@SINS S
641
TB : Premire
adresse pile
C : Valeur de dcalage
S : Donne source

STACK DATA Supprime l'lment de donnes l'emplacement spcifi dans la pile et Sortie obligatoire
DELETE (CS1-H, SDEL(642) dcale le reste des donnes de la pile vers le haut. La valeur de dcalage
CJ1-H, CJ1M ou indique l'emplacement du point de suppression (nombre d'lments de
CS1D TB donnes avant la position courante du pointeur).
uniquement) C
SDEL
@SDEL D
642
TB : Premire
adresse pile
C : Valeur de
dcalage
D : Mot de destination

124
Instructions de contrle de donnes Chapitre 3-16

3-16 Instructions de contrle de donnes


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
PID CONTROL Excute la commande PID en fonction des paramtres spcifis. Sortie
PID PID(190) Obligatoire
Paramtres (C C+8)
190 S
C
D Entre PV (S) Contrle PID

S : Mot d'entre
C : 1er mot
paramtre
D : Mot de sortie Variable manipule (D)

PID CONTROL Excute la commande PID en fonction des paramtres spcifis. Sortie obligatoire
WITH PIDAT(191) Les constantes PID peuvent tre rgles automatiquement par
AUTOTUNING PIDAT(191).
S
PIDAT
191 C
(CS1-H, CJ1-H D
ou CJ1M
uniquement)
S : Mot d'entre
C : 1er mot
paramtre
D : Mot de sortie

LIMIT CONTROL Contrle les donnes de sortie en fonction des donnes d'entre Sortie
LMT LMT(680) Obligatoire
(selon qu'elles sont comprises ou non entre les limites suprieure et
@LMT S infrieure).
680
C
D
S : Mot d'entre Limite
C : 1er mot limite suprieure C+1
D : Mot de sortie

Limite
infrieure C

DEAD BAND Contrle les donnes de sortie en fonction des donnes d'entre Sortie
CONTROL BAND(681)
(selon qu'elles sont comprises ou non dans la zone d'insensibilit). Obligatoire
BAND S Sortie
@BAND
681 C
D
Limite infrieure (C)
S : Mot d'entre
C : 1er mot limite Entre
D : Mot de sortie
Limite suprieure (C+1)

125
Instructions de contrle de donnes Chapitre 3-16

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DEAD ZONE Ajoute la pente spcifie aux donnes d'entre et sort le rsultat. Sortie
CONTROL ZONE(682)
Obligatoire
ZONE Sortie
S
@ZONE
682 C
Pente positive (C+1)
D
Entre
S : Mot d'entre
C : 1er mot limite
D : Mot de sortie
Pente ngative (C)

TIME- Entre le taux de service ou la variable manipule partir du mot spcifi, Sortie
PROPORTIONAL TPO (685) convertit le taux de service en une sortie proportionnelle au temps en Obligatoire
OUTPUT fonction des paramtres spcifis et sort le rsultat partir de la sortie
TPO
S
spcifie.
685 C
(UC srie CS/CJ
Ver. 2.0 ou R
suprieure S : Mot d'entre
uniquement) C : 1er mot
paramtre
R : Bit de sortie
d'impulsions

SCALING Convertit les donnes binaires non signes en donnes BCD non Sortie
SCL SCL(194) signes selon la fonction linaire spcifie. Obligatoire
@SCL
S
194 R (donne BCD non signe) La mise l'chelle est effectue
P1 selon la fonction linaire dfinie
par les points A et B.
R
S : Mot source Point B P (BCD)
Valeur
P1 : 1er mot P1 + 1 (BIN) convertie
paramtre Point A
P1 + 2 (BCD)
R : Mot de rsultat Valeur
P1 + 3 (BIN) convertie
S (binaire non sign)

126
Instructions de contrle de donnes Chapitre 3-16

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
SCALING 2 Convertit les donnes binaires signes en donnes BCD signes Sortie
SCL2 SCL2(486) selon la fonction linaire spcifie. Vous pouvez entrer un dcalage Obligatoire
@SCL2 en dfinissant la fonction linaire.
S
486
P1 Dcalage positif Dcalage ngatif
R (donne BCD signe) R (donne BCD signe)
R
S : Mot source
P1 : 1er mot
paramtre Y
R : Mot de rsultat
Y
Dcalage X
X

S (donne binaire signe) S (donne


Dcalage binaire signe)

Dcalage de 0000
P1 Dcalage (Donne binaire signe) R (donne BCD signe)
P1 + 1 Y (Donne binaire signe)
P1 +2 X (Donne BCD signe)

Y
Dcalage = 0000 hex
X
S (donne
binaire signe)

127
Instructions de contrle de donnes Chapitre 3-16

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
SCALING 3 Convertit les donnes BCD signes en donnes binaires signes Sortie
SCL3 SCL3(487) selon la fonction linaire spcifie. Vous pouvez entrer un dcalage Obligatoire
@SCL3 en dfinissant la fonction linaire.
S
487 Dcalage positif Dcalage ngatif
P1
R R (donne binaire signe) R (donne binaire signe)

S : Mot source Conversion max.


P1 : 1er mot Conversion
paramtre max.
R : Mot de rsultat
Y Y

X X
Dcalage Dcalage S (donne BCD signe)
Conversion
min. S (donne BCD signe)
Conversion min.

Dcalage de 0000
R (donne binaire signe)

Conversion
max.

X
S (donne BCD signe)
Conversion min.

AVERAGE Calcule la valeur moyenne d'un mot d'entre pour le nombre de Sortie
AVG AVG(195) Obligatoire
cycles spcifi.
195 S S : Mot source
N
R
S : Mot source
N : Nombre de
cycles N : Nombre de cycles
R : Mot de rsultat

R+1 Pointeur
Drapeau de moyenne valide
Moyenne
R+2

R+3

N valeurs

R+N+1

128
Instructions de sous-programme Chapitre 3-17

3-17 Instructions de sous-programme


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
SUBROUTINE Appelle le sous-programme correspondant au numro spcifi et Sortie
CALL SBS(091) Obligatoire
l'excute.
SBS N
@SBS Condition d'excution sur ON
091 N : Numro de
sous-programme

Programme
principal

Sous-
programme
(SBN(092)
RET(093))

Fin de programme

MACRO Appelle le sous-programme correspondant au numro spcifi et Sortie


MCRO MCRO(099) Obligatoire
l'excute en utilisant les paramtres d'entre inclus dans S S+3 et
@MCRO N les paramtres de sortie inclus dans D D+3.
099
S MCRO(099)

D
N : Numro de
sous-programme
S : 1er mot Excution du sous-
paramtre entre programme entre
SBN(092) et
D : 1er mot RET(093).
paramtre sortie MCRO(099)

Le sous-programme utilise
A600 A603 comme entres et
A604 A607 comme sorties.

SUBROUTINE Indique le dbut du sous-programme correspondant au numro Sortie


ENTRY SBN(092) Non obligatoire
spcifi.
SBN N
092
N : Numro de
sous-programme ou

Zone de sous-
programme

SUBROUTINE Indique la fin d'un sous-programme. Sortie


RETURN RET(093) Non obligatoire
RET
093

129
Instructions de traitement d'interruption Chapitre 3-18

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
GLOBAL Appelle le sous-programme correspondant au numro spcifi et Sortie
SUBROUTINE GSBS(750) l'excute. Non obligatoire
CALL (CS1-H,
CJ1-H, CJ1M ou N
CS1D
uniquement) N : Numro de
GSBS sous-programme
750
GLOBAL Indique le dbut du sous-programme correspondant au numro Sortie
SUBROUTINE GSBN(751) spcifi. Non obligatoire
ENTRY (CS1-H,
CJ1-H, CJ1M ou N
CS1D
uniquement) N : Numro de
GSBN sous-programme
751
GLOBAL Indique la fin d'un sous-programme. Sortie
SUBROUTINE GRET(752) Non obligatoire
RETURN (CS1-H,
CJ1-H, CJ1M ou
CS1D
uniquement)
GRET
752

3-18 Instructions de traitement d'interruption


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
SET INTERRUPT Configure le traitement des interruptions pour les interruptions E/S ou les Sortie
MASK MSKS(690)
interruptions programmes. Les tches d'interruption E/S et les tches Obligatoire
(Non prise en d'interruption programmes sont masques (dsactives) lorsque l'API
charge par les N
est mis sous tension pour la premire fois. Vous pouvez utiliser
UC CS1D pour S MSKS(690) pour afficher ou masquer les interruptions E/S et dfinir les
les systmes intervalles de temps des interruptions programmes.
d'UC en duplex.) N : Identifiant
d'interruption Cartes d'entres d'interruption 0 3
MSKS
@MSKS S : Donne
interruption Interrup-
690
tion E/S
Masquer (1) ou
dmasquer (0) les entres
d'interruption 0 7.

Intervalle
Interruption
programme Dfinir le temps
d'interruption
programme.

READ Lit les paramtres de traitement des interruptions de courant qui ont Sortie
INTERRUPT MSKR(692) t dfinis avec MSKS(690). Obligatoire
MASK
(Non prise en N
charge par les D
UC CS1D pour
les systmes N : Identifiant
UC en duplex.) d'interruption
MSKR D : Mot de
@MSKR destination
692

130
Instructions de traitement d'interruption Chapitre 3-18

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
CLEAR Remet zro ou conserve les entres d'interruption sauvegardes Sortie
INTERRUPT CLI(691)
pour les interruptions E/S ou dfinit le dlai jusqu' la premire Obligatoire
(Non prise en N interruption programme pour les interruptions programmes.
charge par les
UC CS1D pour S N=03
les systmes
UC en duplex.) N : Identifiant Entre
d'interruption Entre
CLI d'interrup- d'interrup-
@CLI S : Donne tion n
interruption tion n
691
Etat Etat
interne interne
Interruption sauvegarde Interruption sauvegarde
remise zro conserve
N=45
MSKS(690)
Excution de la tche
d'interruption programme.

Dlai jusqu' la premire


interruption programme
DISABLE Dsactive l'excution de toutes les tches d'interruption Sortie
INTERRUPTS DI(693) Obligatoire
l'exception de la tche d'interruption de mise hors tension.
DI
@DI
693

Dsactive l'excution de
toutes les tches d'interrup-
tion ( l'exception de la tche
d'interruption de mise hors
tension).

ENABLE Active l'excution de toutes les tches d'interruption qui ont t Sortie
INTERRUPTS EI(694) dsactives avec DI(693). Non obligatoire
EI
694

Dsactive l'excution de
toutes les tches
d'interruption ( l'exception
de la tche d'interruption
de mise hors tension).

Active l'excution de
toutes les tches
d'interruption
dsactives.

131
Instructions de compteur grande vitesse et de sortie d'impulsion (CJ1M-CPU21/22/23 uniquement) Chapitre 3-19

3-19 Instructions de compteur grande vitesse et de sortie


d'impulsion (CJ1M-CPU21/22/23 uniquement)
Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
MODE CONTROL INI(880) permet de dmarrer et d'interrompre la comparaison des valeurs Sortie
INI cibles, de changer la valeur actuelle (PV) d'un compteur grande vitesse, Obligatoire
INI
@INI de changer la PV d'une entre d'interruption (mode compteur), de
P changer la PV d'une sortie d'impulsion ou d'arrter la sortie d'impulsion.
880
C
NV

P : identificateur
de port
C : donnes de
contrle
NV : 1er mot avec
nouvelle PV
HIGH-SPEED PRV(881) permet de lire la valeur actuelle (PV) d'un compteur grande Sortie
COUNTER PV PRV vitesse, d'une sortie d'impulsion ou d'une entre d'interruption (mode Obligatoire
READ compteur).
P
PRV
@PRV C
881 D

P : identificateur
de port
C : donnes de
contrle
D : 1er mot de
destination
COUNTER Lit l'entre de la frquence d'impulsion sur un compteur grande vitesse Sortie
FREQUENCY PRV2 et convertit la frquence en vitesse de rotation (nombre de rvolutions) ou Obligatoire
CONVERT convertit la valeur actuelle (PV) du compteur en nombre total de tours. Le
C1 rsultat est dirig vers les mots de destination sous la forme d'un nombre
PRV2
883 C2 hexadcimal 8 chiffres. Les impulsions ne peuvent tre entres qu'
(UC CJ1M Ver. 2.0 partir du compteur grande vitesse 0.
ou suprieure D
uniquement) C1 : donnes de
contrle
C2 : impulsions/
rvolution
D : 1er mot de
destination

COMPARISON CTBL(882) permet de comparer la valeur actuelle (PV) d'un compteur Sortie
TABLE LOAD CTBL grande vitesse par rapport des plages ou des valeurs cibles. Obligatoire
CTBL P
@CTBL
882 C
TB

P : identificateur
de port
C : donnes de
contrle
TB : 1er mot du
tableau de
comparaison
SPEED OUTPUT SPED(885) permet de spcifier la frquence et excuter la sortie Sortie
SPED d'impulsion sans acclration ni dclration.
SPED Obligatoire
@SPED P
885
M
F

P : identificateur
de port
M : mode de sortie
F : 1er mot de
frquence
d'impulsion

132
Instructions de compteur grande vitesse et de sortie d'impulsion (CJ1M-CPU21/22/23 uniquement) Chapitre 3-19

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
SET PULSES PULS(886) permet de dfinir le nombre d'impulsions pour la sortie Sortie
PULS d'impulsion.
PULS Obligatoire
@PULS P
886
T
N

P : identificateur
de port
T : type d'impulsion
N : nombre
d'impulsions
PULSE OUTPUT PLS2(887) permet de dfinir la frquence d'impulsion et les taux Sortie
PLS2 d'acclration/dclration, et d'excuter la sortie d'impulsion avec
PLS2 Obligatoire
@PLS2 P acclration/dclration (avec des taux d'acclration/dclration
887 diffrents). Seul le positionnement est possible.
M
S
F

P : identificateur de
port
M : mode de sortie
S : 1er mot du
tableau des
paramtres
F : 1er mot de la
frquence de
dmarrage
ACCELERATION ACC(888) permet de dfinir la frquence d'impulsion et les taux Sortie
CONTROL ACC d'acclration/dclration, et d'excuter la sortie d'impulsion avec Obligatoire
ACC P acclration/dclration (avec le mme taux d'acclration/dclration).
@ACC Le positionnement et la vitesse peuvent tous deux tre contrls.
M
888
S

P : identificateur de
port
M : mode de sortie
S : 1er mot du
tableau des
paramtres
ORIGIN SEARCH ORG(889) permet d'excuter des recherches d'origine et des retours. Sortie
ORG
ORG Obligatoire
@ORG P
889
C

P : identificateur
de port
C : donnes de
contrle
PULSE WITH MLI(891) permet de sortir des impulsions avec un coefficient d'exploitation Sortie
VARIABLE DUTY MLI variable. Obligatoire
FACTOR P
MLI
@ F
891 D

P : identificateur
de port
F : frquence
D : coefficient
d'exploitation

133
Instructions de pas Chapitre 3-20

3-20 Instructions de pas


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
STEP DEFINE STEP(008) fonctionne de 2 faons, en fonction de sa position et selon Sortie
STEP STEP(008) qu'un bit de contrle a t spcifi ou non. Obligatoire
008 B (1)Dmarre un pas spcifique.
(2)Termine la zone de programmation pas pas (c'est--dire l'excution
B : Bit par pas).

STEP START SNXT(009) est utilise de trois faons : Sortie


SNXT SNXT(009) (1)Pour dmarrer l'excution de la programmation pas pas. Obligatoire
009 B (2)Pour passer au bit de contrle de pas suivant.
(3)Pour arrter l'excution de la programmation pas pas.
B : Bit

3-21 Instructions des cartes d'E/S standard


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
I/O REFRESH Rafrachit les mots E/S spcifis. Sortie
IORF IORF(097) Obligatoire
@IORF St Zone de bits d'E/S ou Carte E/S ou
097 zone de bits de carte carte E/S spciales
E E/S spciales

St : Mot de dbut St Mise jour


E : Mot de fin d'E/S

7-SEGMENT Convertit le contenu hexadcimal des chiffres dsigns en code Sortie


DECODER SDEC(078) d'affichage 8 bits, 7 segments et le place dans les 8 bits suprieurs Obligatoire
SDEC ou infrieurs des mots de destination spcifis.
@SDEC
S
078 Di
D Di
Nombre de chiffres
S : Mot source Premier chiffre convertir
Di : Dsignateur
de chiffres
D : 1er mot de
destination

8 bits les plus droite (0)

7 segments

134
Instructions des cartes d'E/S standard Chapitre 3-21

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DIGITAL SWITCH Lit la valeur dfinie sur un interrupteur digital externe (ou un interrupteur Sortie
INPUT DSW (210) roue codeuse) raccord une carte d'entre ou une carte de sortie et Obligatoire
DSW I enregistre les donnes BCD (4 ou 8 chiffres) dans les mots spcifis.
210
(UC srie CS/CJ O
Ver. 2.0 ou D
suprieure
uniquement) C1
C2
I : Mot d'entre de
donnes
(D0 D3)
O : Mot de sortie
D : 1er mot de
rsultat
C1: Nombre de
chiffres
C2: Mot systme
TEN KEY INPUT Lit les donnes numriques partir d'un clavier de dix touches raccord Sortie
TKY TKY (211) une carte d'entre et enregistre jusqu' 8 chiffres de donnes BCD Obligatoire
211 dans les mots spcifis.
I
(UC srie CS/CJ
Ver. 2.0 ou D1
suprieure
uniquement) D2

I: Mot d'entre
de donnes
D1 : 1er mot de
registre
D2 : Mot d'entre
touche

HEXADECIMAL Lit des donnes numriques partir d'un clavier hexadcimal raccord Sortie
KEY INPUT HKY (212) une carte d'entre et une carte de sortie, et enregistre jusqu' Obligatoire
HKY I 8 chiffres de donnes hexadcimales dans les mots spcifis.
212
(UC srie CS/CJ O
Ver. 2.0 ou
suprieure D
uniquement) C
I : Mot d'entre
de donnes
O : Mot de sortie
D : 1er mot de
registre
C : Mot systme

MATRIX INPUT Entre jusqu' 64 signaux partir d'une matrice de 8 8 connecte Sortie
MTR MTR (213) une carte d'entre et une carte de sortie (avec 8 points d'entre et Obligatoire
213 8 points de sortie) et enregistre ces donnes 64 bits dans les 4 mots de
I
(UC srie CS/CJ destination.
Ver. 2.0 ou O
suprieure
uniquement) D
C
I : Mot d'entre
de donnes
O : Mot de sortie
D : 1er mot de
destination
C : Mot systme

135
Instructions des cartes d'E/S standard Chapitre 3-21

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
7-SEGMENT Convertit les donnes source (BCD 4 chiffres ou 8 chiffres) en donnes Sortie
DISPLAY 7SEG (214) d'affichage 7 segments et place ces donnes dans le mot de sortie Obligatoire
OUTPUT S spcifi.
7SEG
214 O
(UC srie CS/CJ C
Ver. 2.0 ou
suprieure D
uniquement) S : 1er mot source
O : Mot de sortie
C : Donnes de
contrle
D : Mot systme

INTELLIGENT I/O Lit le contenu de la zone de mmoire pour la carte E/S spciales Sortie
READ IORD(222)
ou la carte de bus UC (voir remarque). Obligatoire
IORD
@IORD C S
222 S S+1
D
Numro de la carte E/S spciales
C : Donnes de
contrle
S : Source du
transfert et Nombre
nombre de mots de mots
D : Destination lus
dsign.
du transfert et
nombre de mots

Remarque Les UC srie CS/CJ Ver. 2.0 ou suprieure (y compris les


UC CS1-H, CJ1-H et CJ1M du lot numro 030418 ou
ultrieur) peuvent lire partir des cartes rseau.
INTELLIGENT I/O Sort le contenu de la zone de mmoire E/S de l'UC sur la carte Sortie
WRITE IOWR(223) Obligatoire
E/S spciales ou la carte de bus UC (voir remarque).
IOWR C
@IOWR D
223 S D+1
D
C : Donnes de Numro de la carte E/S spciales
contrle
S : Source du
transfert et
nombre de mots
D : Destination
du transfert et Nombre
nombre de mots de mots
crits
dsigns

Remarque Les UC srie CS/CJ Ver. 2.0 ou suprieure (y compris les


UC CS1-H, CJ1-H et CJ1M du lot numro 030418 ou
ultrieur) peuvent crire sur les cartes rseau.
CPU BUS UNIT Met immdiatement les E/S jour sur la carte rseau avec le numro Sortie obligatoire
I/O REFRESH DLNK(226) de carte spcifi.
(CS1-H, CJ1-H,
CJ1M ou CS1D N
uniquement)
DLNK N : Numro d'unit
@DLNK
226

136
Instructions de communications srie Chapitre 3-22

3-22 Instructions de communications srie


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
PROTOCOL Appelle et excute une squence de communication enregistre sur Sortie
MACRO PMCR(260) une carte de communication srie (srie CS ou autre). Obligatoire
PMCR
@PMCR C1 UC Carte de communication srie
260 C2 Port
S
S
R jusqu'
C1 : Mot de contrle 1
C2 : Mot de contrle 2
S : 1er mot envoy
R : 1er mot reu
R
Priphrique
jusqu' externe

TRANSMIT Sort le nombre d'octets de donnes spcifi du port RS-232C intgr Sortie
TXD TXD(236) l'UC. Obligatoire
@TXD
S
236
C
N

S : 1er mot source


C : Mot de contrle
N : Nombre d'octets
0000 0100 hex
(0 256 dcimal)

RECEIVE Lit le nombre d'octets de donnes spcifi partir du port RS-232C Sortie
RXD RXD(235) intgr l'UC. Obligatoire
@RXD
D
235
C
N
D : 1er mot de
destination
C : Mot de contrle
N : Nombre d'octets
sauvegarder 0000
0100 hex
(0 256 dcimal)

CHANGE SERIAL Change les paramtres de communication d'un port srie sur l'UC, la Sortie
PORT SETUP STUP(237) carte de communications srie (carte rseau) ou la carte de communica- Obligatoire
STUP tions srie. STUP(237) permet ainsi de changer le mode protocole pen-
@STUP
C dant le fonctionnement de l'API.
237 S

C : Mot de
contrle (port)
S : Premier mot
source

137
Instructions rseaux Chapitre 3-23

3-23 Instructions rseaux


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
NETWORK SEND Transmet les donnes un nud du rseau. Sortie
SEND(090)
SEND Obligatoire
@SEND S Nud local Nud destination
090 15 0 15 0
D
S n: D
C
Nombre n
S : 1er mot de mots
source envoys
D : 1er mot de
destination
C : 1er mot de
contrle

NETWORK Demande la transmission des donnes partir d'un nud du Sortie


RECEIVE RECV(098)
rseau et reoit les donnes. Obligatoire
RECV S
@RECV
D Nud local Nud source
098
15 0 15 0
C
D S
S : 1er mot n
m
source
D : 1er mot de
destination
C : 1er mot de
contrle

DELIVER Envoie la commande FINS et reoit la rponse Sortie


COMMAND CMND(490) Obligatoire
CMND S Nud local Nud de destination
@CMND
490 D 15 0
S
C Donnes Commande
de com-
S : 1er mot de mande
(S -1) (n octets) Interprtation
commande
D : 1er mot de + n
rponse 2
C : 1er mot de
contrle

15 0
D
Donnes Rponse
de Excution
(D -1) rponse
(m octets)
+ m
2

EXPLICIT Envoie un message explicite avec un code de service. Sortie


MESSAGE SEND EXPLT (720)
Obligatoire
EXPLT S
720
(UC srie CS/CJ D
Ver. 2.0 ou C
suprieure
uniquement) S : 1er mot envoi
message
D : 1er mot
message reu
C : 1er mot de
contrle

138
Instructions rseaux Chapitre 3-23

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
EXPLICIT GET Lit les informations d'tat avec un message explicite Sortie
ATTRIBUTE EGATR (721) (Get Attribute Single, Service Code: 0E hex).
Obligatoire
EGATR S
721
(UC srie CS/CJ D
Ver. 2.0 ou C
suprieure
uniquement) S : 1er mot envoi
message
D : 1er mot
message reu
C : 1er mot de
contrle
message

EXPLICIT SET Ecrit les informations d'tat avec un message explicite Sortie
ATTRIBUTE ESATR (722) (Set Attribute Single, Service Code : 0E hex) Obligatoire
ESATR S
722
(UC srie CS/CJ C
Ver. 2.0 ou
suprieure
uniquement) S : 1er mot envoi
message
C : Premier mot
contrle
EXPLICIT WORD Lit les donnes sur l'UC locale partir d'une UC distante dans le rseau. Sortie
READ (L'UC distante doit prendre en charge les messages explicites.) Obligatoire
ECHRD
ECHRD (723)
723
(UC srie CS/CJ S
Ver. 2.0 ou
suprieure D
uniquement)
C
S: 1er mot source
dans UC distante
D: 1er mot de
destination
dans UC locale
C: 1er mot de
contrle

EXPLICIT WORD Ecrit les donnes de l'UC locale sur une UC distante dans le rseau. Sortie
WRITE (L'UC distante doit prendre en charge les messages explicites.) Obligatoire
ECHWR
724 ECHWR (724)
(UC srie CS/CJ
Ver. 2.0 ou S
suprieure
uniquement)
D
C
S: 1er mot source
dans UC locale
D: 1er mot de des-
tination dans
UC distante
C:1er mot de
contrle

139
Instructions de mmoire de fichiers Chapitre 3-24

3-24 Instructions de mmoire de fichiers


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
READ DATA FILE Sortie
FREAD FREAD(700) Lit les donnes ou la quantit de donnes indiques du fichier de donnes Obligatoire
@FREAD spcifi l'intrieur de la mmoire de fichiers dans la zone de donnes
C spcifie sur l'UC.
700
S1 Adresse de dbut
de lecture spcifie Fichier spcifi
S2 dans S1+2 et S1+3 dans S2 UC
D
C : Mot de contrle
S1 : 1er mot source Nombre de mots
S2 : Nom de fichier spcifis dans S1
D : 1er mot de et S1+1
destination
Nombre
Carte mmoire ou de mots
mmoire de fichiers crits
EM (Spcifie par le dans D et
4me chiffre de C.) D+1.
Fichier spcifi
dans S2 UC

Nombre de
mots

Carte mmoire ou mmoire de fichiers EM


(Spcifie par le 4me chiffre de C.)

WRITE DATA Ecrase ou ajoute des donnes du fichier de donnes spcifi dans la mmoire Sortie
FILE FWRIT(701)
de fichiers avec les donnes spcifies de la zone de donnes dans l'UC. Si le Obligatoire
FWRIT C fichier spcifi n'existe pas, un nouveau fichier est cr avec ce nom.
@FWRIT
701 D1 UC Mot de dbut Fichier spcifi dans D2
spcifi dans
Adresse D1+2 et
D2 de dbut D1+3
S spcifie
dans S Nombre de mots
spcifis dans D1
C : Mot de et D1+1
contrle
D1 : 1er mot de Ecraser
destination
D2 : Nom de fichier Carte mmoire ou mmoire de fichiers EM
S : 1er mot source
(Spcifie par le 4me chiffre de C.)

UC
Fichier spcifi dans D2
Adresse Fin de
de dbut fichier Donne
spcifie s
dans S Nombre de mots
spcifis dans
D1 et D1+1

Ajouter
Carte mmoire ou mmoire de
fichiers EM
Dbut de
fichier Fichier Nouveau fichier
UC spcifi
Adresse cr
de dbut
spcifie Nombre de mots
dans S spcifis dans D1
et D1+1

Carte mmoire ou mmoire de fichiers EM


(Spcifie par le 4me chiffre de C.)

140
Instructions d'affichage Chapitre 3-25

3-25 Instructions d'affichage


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
DISPLAY Lit les seize mots d'ASCII tendu spcifis et affiche le message sur Sortie
MESSAGE MSG(046) un quipement priphrique tel qu'une console de programmation. Obligatoire
MSG N
@MSG
046 M
N : Numro du
message
M : 1er mot
message

3-26 Instructions de temporisation


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
CALENDAR ADD Sortie
CADD(730) Ajoute des donnes de temps aux donnes de calendrier
CADD Obligatoire
@CADD dans les mots spcifis.
C
730 C Minutes Secondes
T C+1 Jour Heure
R C+2 Anne Mois

C : 1er mot de
calendrier
T : 1er mot de temps
T Minutes Secondes
R : 1er mot de rsultat
T+1 Heures

R Minutes Secondes
R+1 Jour Heure
R+2 Anne Mois

CALENDAR Soustrait des donnes de temps aux donnes de calendrier dans Sortie
SUBTRACT CSUB(731)
les mots spcifis. Obligatoire
CSUB C
@CSUB C Minutes Secondes
731 T C+1 Jour Heure
R C+2 Anne Mois

C : 1er mot de
calendrier
T : 1er mot de temps
T Minutes Secondes
R : 1er mot de rsultat
T+1 Heures

R Minutes Secondes
R+1 Jour Heure
R+2 Anne Mois

141
Instructions de dbogage Chapitre 3-27

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
HOURS TO Convertit les donnes de temps au format heures/minutes/secondes Sortie
SECONDS SEC(065) Obligatoire
en un temps quivalent en secondes uniquement.
SEC S
@SEC
065 D
Minutes Secondes
S : 1er mot Heures
source
D : 1er mot de
destination

Secondes

SECONDS TO Convertit les donnes en secondes en un temps Sortie


HOURS HMS(066) Obligatoire
quivalent au format heures/minutes/secondes.
HMS S
@HMS
066 D
Secondes
S : 1er mot
source
D : 1er mot de
destination

Minutes Secondes
Heures

CLOCK Rgle le paramtre de l'horloge interne sur celui des mots sources Sortie
ADJUSTMENT DATE(735) Obligatoire
spcifis.
DATE S
@DATE UC
735 S : 1er mot
source
Horloge interne

Nouveau
Minutes Secondes
paramtre Jour Heure
Anne Mois
00 Jour de la semaine

3-27 Instructions de dbogage


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
TRACE Lorsque TRSM(045) est excut, l'tat d'un bit ou d'un mot prslectionn Sortie
MEMORY TRSM(045) est chantillonn et enregistr dans la mmoire d'enregistrement. Non obligatoire
SAMPLING TRSM(045) peut tre utilis n'importe o dans le programme, autant de
TRSM fois que vous le souhaitez.
045

142
Instructions de diagnostic d'erreur Chapitre 3-28

3-28 Instructions de diagnostic d'erreur


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
FAILURE ALARM Gnre ou efface les erreurs non fatales dfinies par l'utilisateur. Sortie
FAL FAL(006) Les erreurs non fatales n'interrompent pas le fonctionnement de l'API. Obligatoire
@FAL Gnre galement des erreurs non fatales avec le systme.
N Drapeau d'erreur FAL sur ON
006 L'excution de FAL correspondant excut
S FAL(006) Drapeau de numro sur ON
gnre une Code d'erreur crit dans A400
N :Numro FAL Code d'erreur et heure crits dans la zone
erreur non Zone de journal
S : 1er mot de fatale avec le
message ou numro FAL N.
code d'erreur Le voyant ERR clignote
gnrer
Message
affich sur la
console de
programmation

SEVERE Gnre des erreurs fatales dfinies par l'utilisateur. Les erreurs Sortie
FAILURE ALARM FALS(007)
fatales arrtent le fonctionnement de l'API. Obligatoire
FALS N Gnre galement des erreurs fatales avec le systme.
007 Drapeau d'erreur FALS sur ON
S Code d'erreur crit dans A400
L'excution de Code d'erreur et heure/date
N : Numro FALS(007) crits dans la zone du journal
FALS gnre une d'erreurs
S : 1er mot de erreur fatale
message ou avec le
code d'erreur Voyant ERR allum
numro FALS
gnrer N.
Message affich
sur la console de
programmation

FAILURE POINT Permet de diagnostiquer une erreur au niveau d'un bloc d'instruction en surveillant Sortie
DETECTION FPD(269)
le temps entre l'excution de l'instruction FPD(269) et l'excution d'un diagnostic et Obligatoire
FPD C en retrouvant l'entre qui empche une sortie d'tre mise sous tension.
269 Fonction de surveillance du temps :
T
Dmarre la temporisation lorsque la condition d'excution
R A passe ON. Gnre une erreur non fatale si la sortie B
ne passe pas ON pendant le temps de surveillance.
C : Mot de contrle
T : Temps de
surveillance Condition
R : 1er mot de d'excution A
registre
Bloc de
T traitement
d'erreur
R
(facultatif)

Prochain bloc d'instruction

Bloc de diagnostic logique*

Condition d'excution
de diagnostic logique C

Sortie de diagnostic B

La fonction de diagnostic logique dtermine


quelle entre dans C empche la sortie B
de passer ON.

143
Autres instructions Chapitre 3-29

3-29 Autres instructions


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
SET CARRY Dfinit le drapeau de passage (CY). Sortie
STC STC(040) Obligatoire
@STC
040
CLEAR CARRY Met le drapeau de passage OFF (CY). Sortie
CLC CLC(041) Obligatoire
@CLC
041
SELECT EM Change la banque EM courante. Sortie
BANK EMBC(281) Obligatoire
EMBC N
@EMBC
281 N : Numro de
banque EM

EXTEND Prolonge le temps de cycle maximum, mais seulement pour le cycle Sortie
MAXIMUM WDT(094) dans lequel cette instruction est excute. Obligatoire
CYCLE TIME
T
WDT
@WDT T : Param.
094 temporisateur
SAVE Sauvegarde l'tat des drapeaux de condition. Sortie
CONDITION CCS(282) Obligatoire
FLAGS (CS1-H,
CJ1-H, CJ1M ou
CS1D
uniquement)
CCS
@CCS
282
LOAD Lit l'tat des drapeaux de condition qui ont t sauvegards. Sortie
CONDITION CCL(283) Obligatoire
FLAGS (CS1-H,
CJ1-H, CJ1M ou
CS1D
uniquement)
CCL
@CCL
283
CONVERT Convertit une adresse mmoire d'API srie CV en une adresse Sortie
ADDRESS FROM FRMCV(284) mmoire d'API srie CS/CJ quivalente. Obligatoire
CV (CS1-H,
CJ1-H, CJ1M ou S
CS1D D
uniquement)
FRMCV
@FRMCV S : Mot contenant
l'adresse mmoire
284 srie CV
D : Registre d'index
destination

CONVERT Convertit une adresse mmoire d'API srie CS/CJ en une adresse Sortie
ADDRESS TO CV TOCV(285) mmoire d'API srie CV quivalente. Obligatoire
(CS1-H, CJ1-H,
CJ1M ou CS1D S
uniquement) D
TOCV
@TOCV S : Registre
285 d'index contenant
l'adresse mmoire
srie CS
D : Mot de
destination

144
Instructions de programmation de bloc Chapitre 3-30

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
DISABLE Dsactive le traitement des priphriques pendant l'excution du pro- Sortie
PERIPHERAL IOSP(287) gramme dans l'un des modes de traitement parallle ou dans le mode Obligatoire
SERVICING (UC prioritaire du traitement des priphriques.
CS1D pour les
systmes une
seule UC, CS1-H,
CJ1-H ou CJ1M
uniquement)
IOSP
@IOSP
287
ENABLE Active le traitement des priphriques qui a t dsactiv par IOSP(287) Sortie
PERIPHERAL IORS(288) pour l'excution du programme dans l'un des modes de traitement Non obligatoire
SERVICING (UC parallle ou dans le mode prioritaire du traitement des priphriques.
CS1D pour les
systmes une
seule UC, CS1-H,
CJ1-H ou CJ1M
uniquement)
IORS
288

3-30 Instructions de programmation de bloc


Instruction Symbole/ Fonctions Emplacement
Mnmonique Oprande Condition
Code d'excution
BLOCK Dfinition d'une zone de programmation de bloc. A chaque Sortie
PROGRAM BPRG(096) Obligatoire
BEGIN BPRG(096) doit correspondre un BEND(801).
BPRG N
096 N : Numro de
programme de bloc
Programme de bloc

Excut lorsque la condition


d'excution est sur ON.

BLOCK Dfinition d'une zone de programmation de bloc. A chaque BPRG(096) Programme de bloc
PROGRAM END doit correspondre un BEND(801). Obligatoire
BEND
801
BLOCK BPPS Mise en pause et redmarrage du programme de bloc spcifi Programme de bloc
PROGRAM (811) partir d'un autre programme de bloc. Obligatoire
PAUSE
BPPS N
811 N : Numro de
bloc programme
jusqu'

jusqu' BPPS(811) excut


pour le programme
de bloc n.

Programme de bloc n. Une fois


jusqu' en pause, ce programme de
bloc ne sera pas excut,
mme si le bit "a" est sur ON.

145
Instructions de programmation de bloc Chapitre 3-30

Instruction Symbole/ Fonctions Emplacement


Mnmonique Oprande Condition
Code d'excution
BLOCK BPRS Mise en pause et redmarrage du programme de bloc spcifi Programme de bloc
PROGRAM (812) partir d'un autre programme de bloc. Obligatoire
RESTART
BPRS N
812
N : Numro de
programme de bloc
jusqu'

jusqu' BPPS(812) excut


pour le programme de
bloc n.

Programme de bloc n. Ce programme


jusqu' de bloc sera maintenant excut tant
que le bit "a" sera sur ON.

CONDITIONAL EXIT(806) EXIT(806) sans un bit d'oprande quitte le programme si la Programme de bloc
BLOCK EXIT Obligatoire
condition d'excution est sur ON.
EXIT B : oprande bit
806 Condition Condition
d'excution d'excution
sur OFF sur ON

"A" excut. "A" excut.

Condition d'excution

"B" excut.

Bloc termin.

CONDITIONAL EXIT(806)B EXIT(806) sans un bit d'oprande quitte le programme si la Programme de bloc
BLOCK EXIT Obligatoire
condition d'excution est sur ON.
EXIT B : oprande bit
806 Bit d'oprande Bit d'oprande sur
sur OFF (ON ON (OFF pour
pour EXIT NOT) EXIT NOT)

"A" excut. "A" excut.

"B" excut.

Bloc termin.

CONDITIONAL EXIT NOT(806) B EXIT(806) sans un bit d'oprande quitte le programme si la condition Programme de bloc
BLOCK EXIT d'excution est OFF. Obligatoire
NOT
B : oprande bit
EXIT NOT
806

146
Instructions de programmation de bloc Chapitre 3-30

Instruction Symbole/ Fonctions Emplacement


Mnmonique Oprande Condition
Code d'excution
CONDITIONAL IF (802) Si la condition d'excution est sur ON, les instructions entre IF(802) et Programme de bloc
BLOCK ELSE(803) seront excutes et si la condition d'excution est sur Obligatoire
BRANCHING
OFF, les instructions entre ELSE(803) et IEND(804) seront excutes.
IF
802 Condition
Condition d'ex-
d'excution cution sur ON ?

"A" excut (entre "B" excut


IF et ELSE). (aprs ELSE).

CONDITIONAL IF (802) B Si le bit d'oprande est sur ON, les instructions entre IF(802) et Programme de bloc
BLOCK Obligatoire
BRANCHING ELSE(803) seront excutes. Si le bit d'oprande est sur OFF, les
B : oprande bit instructions entre ELSE(803) et IEND(804) seront excutes.
IF
802
Bit d'oprande
sur ON ?
IF R (IF NOT R)

"A" excut (entre "B" excut


IF et ELSE).
(aprs ELSE).

CONDITIONAL IF (802) NOT B Les instructions comprises entre IF(802) et ELSE(803) seront excutes Programme de bloc
BLOCK et, si le bit d'oprande est ON, les instructions entre ELSE(803) et Obligatoire
BRANCHING IEND(804) sont excutes si le bit d'oprande est OFF.
B : oprande bit
(NOT)
IF NOT
802
CONDITIONAL --- Si l'instruction ELSE(803) est omise et que le bit d'oprande est ON, Programme de bloc
BLOCK les instructions entre IF(802) et IEND(804) seront excutes. Obligatoire
BRANCHING
(ELSE)
ELSE
803
CONDITIONAL --- Si le bit d'oprande est OFF, seules les instructions aprs IEND(804) Programme de bloc
BLOCK seront excutes. Obligatoire
BRANCHING
END
IEND
804

147
Instructions de programmation de bloc Chapitre 3-30

Instruction Symbole/ Fonctions Emplacement


Mnmonique Oprande Condition
Code d'excution
ONE CYCLE AND WAIT(805) Si la condition d'excution est sur ON pour WAIT(805)), les autres Programme de bloc
WAIT Obligatoire
instructions du programme de bloc seront ignores.
WAIT
Condition Condition Condition
805
d'excution d'excutio d'excution
sur OFF n sur OFF sur ON
"A"
excut.

"B" excut.
Condition
d'excution

"C" "C" "C" excut.


excut. excut.

attendre

ONE CYCLE AND WAIT(805) B Si le bit d'oprande est OFF (ON pour WAIT NOT(805)), le reste des ins- Programme de bloc
WAIT tructions dans le programme de bloc sera ignor. Dans le cycle suivant, Obligatoire
WAIT B : oprande de aucun lment du programme de bloc ne sera excut, sauf pour la condi-
tion d'excution de WAIT(805) ou WAIT(805) NOT. Lorsque la condition
805 bit d'excution passera ON (OFF pour WAIT(805) NOT), l'instruction de
WAIT(805) ou WAIT(805) NOT la fin du programme sera excute.
ONE CYCLE AND WAIT(805) NOTB Si le bit d'oprande est OFF (ON pour WAIT NOT(805)), les autres ins- Programme de bloc
WAIT (NOT) tructions du programme de bloc seront ignores. Dans le cycle suivant, Obligatoire
WAIT NOT B : oprande de aucun lment du programme de bloc ne sera excut, sauf pour la condi-
tion d'excution de WAIT(805) ou WAIT(805) NOT. Lorsque la condition
805 bit d'excution passera ON (OFF pour WAIT(805) NOT), l'instruction de
WAIT(805) ou WAIT(805) NOT la fin du programme sera excute.
TIMER WAIT TIMW(813) Retarde l'excution du programme de bloc jusqu' la fin du dlai Programme de bloc
TIMW N spcifi. l'expiration de la temporisation, l'excution reprend Obligatoire
813 SV partir de l'instruction qui suit TIMW(813)/TIMWX(816).
(BCD) SV : 0 999,9 s pour des donnes BCD et
N : numro de 0 6 553,5 s pour des donnes binaires
TIMWX temporisation
816 SV : valeur de
(Binaire) consigne "A"
(CS1-H, CJ1-H, excut.
CJ1M ou CS1D TIMWX(816)
uniquement) N
SV Valeur de
consigne (SV) Temps coul.
N : numro de prdfinie.
temporisation "B" excut.
SV : valeur de
consigne
BEND
"C" excut.
C

148
Instructions de programmation de bloc Chapitre 3-30

Instruction Symbole/ Fonctions Emplacement


Mnmonique Oprande Condition
Code d'excution
COUNTER WAIT CNTW(814) Retarde l'excution du reste du programme de bloc jusqu' ce que le Programme de bloc
CNTW N nombre spcifi ait t atteint. L'excution reprendra partir de l'instruction Obligatoire
814 SV qui suit CNTW(814)/CNTWX(817) lorsque le dcompte sera termin.
(BCD) SV : 0 9 999 fois pour des donnes BCD et
0 65 535 fois pour des donnes binaires
CNTWX N : numro de
817 compteur
(Binaire) SV : valeur de
(CS1-H, CJ1-H, "A"
consigne excut.
CJ1M ou CS1D
uniquement) I : Entre de
comptage
CMTW
CNTWX(817) Valeur de
N consigne (SV)
prdfinie. Temps coul.
SV
"B" excut.

N : Numro
du compteur
"C" "C" "C" excut.
SV : valeur de
consigne excut. excut.
C
I : entre de
comptage

HIGH-SPEED TMHW(815) Retarde l'excution du reste du programme de bloc jusqu' Programme de bloc
TIMER WAIT N Obligatoire
l'expiration du dlai spcifi. l'expiration de la temporisation,
TMHW SV l'excution reprendra partir de l'instruction qui suit TMHW(815).
815 SV : 0 99,99 s pour des donnes BCD et
(BCD)
N : numro de 0 655 35 s pour des donnes binaires
temporisation
TMHWX SV : valeur de
818 consigne
(Binaire) "A"
excut.
(CS1-H, CJ1-H, TMHW(818)
CJ1M ou CS1D N
uniquement) SV
Valeur de Temps coul.
N : numro de consigne (SV)
prdfinie.
temporisation "B" excut.
SV : valeur de
consigne
BEND
"C" excut.
C

149
Instructions de programmation de bloc Chapitre 3-30

Instruction Symbole/ Fonctions Emplacement


Mnmonique Oprande Condition
Code d'excution
LOOP --- Programme de bloc
LOOP(809) dsigne le dbut du programme en boucle.
LOOP Obligatoire
809
Condition Condition Condition Condition
d'excutio d'excutio d'excutio d'excutio
n sur ON n sur n sur OFF n sur OFF

Condition d'excution

Boucle rpte

LEND LEND (810) LEND(810) ou LEND(810) NOT spcifie la fin de la boucle. Lorsque Programme de bloc
LEND LEND(810) ou LEND(810) NOT est atteint, l'excution du programme Obligatoire
se boucle sur l'instruction LOOP(809) prcdente jusqu' ce que le bit
810
d'oprande de LEND(810) ou LEND(810) NOT passe ON ou OFF
(respectivement) ou jusqu' ce que la condition d'excution de
LEND(810) passe ON.
LEND LEND (810) B Si le bit d'oprande est sur OFF pour LEND(810) (ou sur ON pour Programme de bloc
LEND LEND(810) NOT), l'excution de la boucle est rpte partir de Obligatoire
810 B : oprande bit l'instruction qui suit LOOP(809). Si le bit d'oprande est sur ON pour
LEND(810) (ou sur OFF pour LEND(810) NOT), la boucle est
interrompue et l'excution reprend partir de l'instruction qui suit
LEND(810) ou LEND(810) NOT.
Bit d'opran- Bit d'opran- Bit d'opran- Bit d'opran-
de sur ON de sur OFF de sur OFF de sur OFF

Boucle rpte

Remarque L'tat du bit d'oprande serait invers


pour LEND(810) NOT.

LEND NOT LEND(810) NOT LEND(810) ou LEND(810) NOT spcifie la fin de la boucle. Lorsque Programme de bloc
LEND NOT LEND(810) ou LEND(810) NOT est atteint, l'excution du programme se Obligatoire
boucle sur le prcdent LOOP(809) jusqu' ce que le bit d'oprande de
810 B : oprande bit LEND(810) ou LEND(810) NOT passe ON ou OFF (respectivement)
ou jusqu' ce que la condition d'excution de LEND(810) passe ON.

150
Instructions de traitement des chanes de texte Chapitre 3-31

3-31 Instructions de traitement des chanes de texte


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
MOV STRING Transfre une chane de texte. Sortie
MOV$(664)
MOV$ Obligatoire
@MOV$ S
664
D
S : 1er mot
source
D : 1er mot de
destination

CONCATENATE Sortie
STRING +$(656) Lie une chane de texte une autre chane de texte.
Obligatoire
+$ S1
@+$ +
656 S2
D
S1 : Chane 1
S2 : Chane 2
D : Premier mot
de destination

GET STRING Extrait un nombre de caractres dsign partir de la gauche Sortie


LEFT LEFT$(652)
(dbut) d'une chane de texte. Obligatoire
LEFT$ S1
@LEFT$
652 S2
D
S1 : Premier mot
de la chane
S2 : Nombre de
caractres
D : Premier mot
de destination

GET STRING Lit un nombre de caractres dsign partir de la droite (fin) d'une Sortie
RIGHT RGHT$(653)
chane de texte. Obligatoire
RGHT$
@RGHT$ S1
00
653 S2
D
S1 : Premier mot
de la chane
S2 : Nombre de
caractres
D : Premier mot
de destination

GET STRING Lit un nombre de caractres dsign partir d'une positon Sortie
MIDDLE MID$(654) Obligatoire
quelconque au milieu d'une chane de texte.
MID$
@MID$ S1
654 S2

S3
D
S1 : Premier mot
de la chane
S2 : Nombre de
caractres
S3 : Position de 3
dpart
D : Premier mot
de destination

151
Instructions de traitement des chanes de texte Chapitre 3-31

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
FIND IN STRING Recherche une chane de texte dsigne l'intrieur d'une chane Sortie
FIND$(660)
FIND de texte. Obligatoire
@FIND$ Donne trouve
S1
660
S2
D
S1 : Premier mot
de la chane source
S2 : Premier mot
de la chane de
texte trouve
D : Premier mot de
destination

STRING LENGTH Calcule la longueur d'une chane de texte. Sortie


LEN$ LEN$(650) Obligatoire
@LEN$ S 1 2
650 3 4
D 5

S : Premier mot
de la chane
D : 1er mot de
destination

REPLACE IN Remplace une chane de texte par une chane de texte dsigne Sortie
STRING RPLC$(661) Obligatoire
partir d'une position dsigne.
RPLC$
@RPLC$ S1
661 S2

S3
I
S4 NUL NUL
D
S1 : Premier mot
de la chane
S2 : Premier mot
de la chane de
remplacement
S3 : Nombre de
caractres
S4 : Position de
dpart
D : Premier mot
de destination
DELETE STRING Supprime une chane de texte dsigne au milieu d'une chane Sortie
DEL$ DEL$(658) Obligatoire
de texte. Nombre de caractres
@DEL$ S1
658 supprimer (dsign par S2).

S2
S3
G
D
S1 : Premier mot
de la chane
S2 : Nombre de
caractres
S3 : Position de
dpart
D : Premier mot
de destination

152
Instructions de traitement des chanes de texte Chapitre 3-31

Instruction Symbole/ Fonction Emplacement


Mnmonique Oprande Condition
Code d'excution
EXCHANGE Remplace une chane de texte dsigne par une autre chane de texte Sortie
STRING XCHG$(665)
dsigne. Obligatoire
XCHG$ Ex1 Ex1 Ex1
@XCHG$
665 Ex2
Ex1 : 1er mot Ex2 Ex2
change 1
Ex2 : 1er mot
change 2

CLEAR STRING Sortie


CLR$(666) Remet zro une chane de texte entire avec NUL (00 hex).
CLR$ Obligatoire
@CLR$ S S A B S
666 C D
NUL NUL
S : Premier mot
de la chane

INSERT INTO Supprime une chane de texte dsigne au milieu d'une chane de texte. Sortie
STRING INS$(657) Obligatoire
INS$
@INS$ S1
NUL
657 S2

S3
Caractres
D insrs
S1 : Premier mot de
la chane d'origine
S2 : Premier mot de
la chane insre
S3 : Position de
dpart
D : Premier mot de
destination

Comparaison de LD Les instructions de comparaison de chanes (=$, <>$, <$, <=$, >$, >=$)
chanes comparent deux chanes de texte partir du dbut, en se basant sur la LD : non obligatoire
LD, AND, OR + Symbole valeur des codes ASCII. Si le rsultat de la comparaison est vrai, une AND, OR :
=$, <>$, <$, <=$, condition d'excution ON est cre pour un LOAD, un AND ou un OR. obligatoire
>$, >=$ S1
670 (=$) S2
671 (<>$)
672 (<$)
673 (<=$) AND
674 (>$) Symbole
675 (>=$)
S1
S2

OR
Symbole
S1
S2
S1 : Chane 1
S2 : Chane 2

153
Instructions de contrle des tches Chapitre 3-32

3-32 Instructions de contrle des tches


Instruction Symbole/ Fonction Emplacement
Mnmonique Oprande Condition
Code d'excution
TASK ON Rend la tche spcifie excutable. Sortie
TKON TKON(820) Obligatoire
@TKON
N Le numro de la tche spcifie Le numro de la tche spcifie
820 est suprieur au numro de la est infrieur au numro de la tche
N : Numro de tche tche locale (m<n). locale (m>n).

Tche m Tche m

Devient
excu-
Devient table
excutable dans le
dans ce cycle
cycle. suivant.

Tche n Tche n

TASK OFF Met la tche spcifie l'tat En attente. Sortie


TKOF TKOF(821) Obligatoire
@TKOF Le numro de la tche spcifie Le numro de la tche spcifie
N est suprieur au numro de la est infrieur au numro de la
821
tche locale (m<n). tche locale (m>n).
N : Numro de tche

Tche m Tche m

l'tat l'tat En
En attente
attente pendant
pendant le cycle
ce cycle. suivant.

Tche n Tche n

154
CHAPITRE 4
Tches

Cette section dcrit le fonctionnement des tches.

4-1 Caractristiques des tches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156


4-1-1 Prsentation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
4-1-2 Tches et programmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
4-1-3 Fonctionnement de base de l'UC . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
4-1-4 Types de tches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
4-1-5 Conditions et paramtres d'excution des tches . . . . . . . . . . . . . . . 162
4-1-6 Etat des tches cycliques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
4-1-7 Transitions entre les tats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
4-2 Utilisation de tches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
4-2-1 TASK ON et TASK OFF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
4-2-2 Limites des instructions relatives aux tches . . . . . . . . . . . . . . . . . . 168
4-2-3 Drapeaux relatifs aux tches. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
4-2-4 Conception de tches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
4-2-5 Sous-programmes globaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
4-3 Tche d'interruption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
4-3-1 Types de tches d'interruption . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
4-3-2 Priorit des tches d'interruption . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
4-3-3 Drapeaux de tche d'interruption et mots . . . . . . . . . . . . . . . . . . . . . 183
4-3-4 Prcautions en matire d'application . . . . . . . . . . . . . . . . . . . . . . . . 184
4-4 Fonctionnement du priphrique de programmation pour les tches . . . . . . . 187
4-4-1 Utilisation de plusieurs tches cycliques . . . . . . . . . . . . . . . . . . . . . 187
4-4-2 Fonctionnement du priphrique de programmation . . . . . . . . . . . . 187

155
Caractristiques des tches Chapitre 4-1

4-1 Caractristiques des tches


4-1-1 Prsentation
Les oprations de contrle des API srie CS/CJ peuvent tre rparties par
fonctions, priphriques contrls, processus, dveloppeurs ou selon n'importe
quel autre critre, et chaque opration peut tre programme dans une unit
distincte appele tche . L'utilisation des tches prsente les avantages
suivants :
1,2,3... 1. Des programmes peuvent tre dvelopps simultanment par plusieurs
personnes.
Les parties des programmes conues sparment peuvent tre assembles
trs facilement pour former un programme utilisateur unique.
2. Les programmes peuvent tre standardiss dans des modules.
Plus particulirement, les fonctions de priphrique de programmation
suivantes sont combines afin de dvelopper des programmes
correspondant des modules standard autonomes plutt que des
programmes conus pour des systmes spcifiques (machines,
priphriques). Autrement dit, les programmes dvelopps sparment par
plusieurs personnes sont prts tre combins.
Programmation avec des symboles
Dsignation globale et locale des symboles
Affectation automatique de symboles locaux des adresses
3. Meilleure rponse gnrale.
La rponse gnrale est amliore car le systme est subdivis en un
programme de contrle gnral et en plusieurs programmes de contrle
individuels, ce qui permet d'excuter uniquement des programmes
spcifiques en fonction des besoins.
4. Rvision et dbogage simplifis.
Le dbogage est nettement plus efficace car les tches peuvent tre
dveloppes sparment par plusieurs personnes, puis rvises et mises
au point par une tche individuelle.
La maintenance est simple car seule la tche qui doit tre rvise sera
remanie en fonction des changements de spcification ou autres
modifications.
Le dbogage est plus efficace : en effet, il est possible de dterminer
facilement si une adresse est spcifique ou globale et il suffit de contrler
une seule fois les adresses entre les programmes pendant le dbogage
car les symboles sont dsigns globalement ou localement et les
symboles locaux sont allous automatiquement des adresses par
l'intermdiaire de priphriques de programmation.
5. Basculement ais entre les programmes.
Une instruction de contrle des tches dans le programme peut tre utilise
pour excuter des tches (programmes) spcifiques un produit lorsqu'il faut
changer d'opration.

156
Caractristiques des tches Chapitre 4-1

6. Programmes utilisateur facilement comprhensibles.


Les programmes sont structurs en blocs, ce qui simplifie considrablement
la comprhension du programme pour les sections qui seraient normalement
traites avec des instructions telles que JUMP.
Tche C Tche A

Dmarrer
tche A (Programme A)

Dmarrer
tche B

Tche B

(Programme B)

4-1-2 Tches et programmes


Vous pouvez contrler jusqu' 288 programmes (tches). Les diffrents
programmes sont affects des tches selon une relation 1:1. Les tches
sont regroupes par types, de la manire suivante :
Tches cycliques
Tches d'interruption

Remarque 1. Vous pouvez crer jusqu' 32 tches cycliques et 256 tches d'interruption,
pour un total de 288 tches maximum. Chaque tche possde son propre
numro unique, compris entre 0 et 31 pour les tches cycliques et entre 0 et
255 pour les tches d'interruption.
2. Avec les UC CS1-H, CJ1-H, CJ1M ou CS1D, vous pouvez excuter les tches
d'interruption (numros de tches d'interruption 0 255) en tant que tches
cycliques en les dmarrant avec TKON. Elles sont alors appeles tches
cycliques extra . Si vous employez des tches cycliques extra, le nombre
total de tches cycliques pouvant tre utilises est de 288.
3. Les UC CJ1 ne prennent pas actuellement en charge les tches d'interruption
d'E/S et externes. Le nombre maximal de tches pour une UC CJ1 est donc
de 35 (32 tches cycliques et 3 tches d'interruption). Le nombre total de
programmes pouvant tre crs et grs est galement de 35.
Chaque programme affect une tche doit se terminer par une instruction
END(001). La mise jour E/S ne sera effectu qu'aprs l'excution de toutes
les tches programmes dans un cycle.

157
Caractristiques des tches Chapitre 4-1

4-1-3 Fonctionnement de base de l'UC


L'UC excutera les tches cycliques (y compris les tches cycliques extra,
UC CS1-H, CJ1-H, CJ1M ou CS1D uniquement) en partant du plus petit
numro. Elle interrompra galement l'excution des tches cycliques pour
excuter une tche d'interruption, si une interruption a lieu.

Tche cyclique 0

Tche d'inter-
ruption 5
Tches excutes dans
l'ordre croissant des
numros.

Tche cyclique 1 Une


interruption
se produit.

*1: END autre que celui de la tche


finale. Efface les drapeaux ER, d'galit
et N.

Tche cyclique n

*2: END pour la tche finale. Efface les


drapeaux ER, d'galit et N, puis rafrachit
l'E/S.

Rafrachissement
d'E/S

Traitement des
priphriques

Remarque Tous les drapeaux de condition (ER, CY, Equals, AER, etc.) et les conditions
d'instruction (verrouillage ON, etc.) sont remis zro au dbut d'une tche.
Par consquent, les drapeaux de condition ne peuvent pas tre lus et les
instructions INTERLOCK/INTERLOCK CLEAR (IL/ILC), JUMP/JUMP END
(JMP/JME) ou SUBROUTINE CALL/SUBROUTINE ENTRY (SBS/SBN) ne
peuvent pas tre divises entre les deux tches.
Avec les UC CS1-H, CJ1-H, CJ1M ou CS1D, vous pouvez excuter les tches
d'interruption en tant que tches cycliques en les dmarrant avec TKON. Elles
sont alors appeles tches cycliques extra . Les tches cycliques extra
(numros de tches d'interruption 0 255) sont excutes partir du plus

158
Caractristiques des tches Chapitre 4-1

petit numro de tche, une fois que l'excution de la tche cyclique normale
(numros de tches celiac 0 31) est termine.

Tche cyclique 0

Excutes dans l'ordre partir du END


plus petit numro de tche cyclique.

Tches cycliques
normales
Tche
cyclique n

END

Tche cyclique extra 0

Excutes dans l'ordre partir du


plus petit numro de tche cyclique. END

Tches cycliques
Tche cyclique extra m extra

END

Mise jour E/S

Traitement des
priphriques

159
Caractristiques des tches Chapitre 4-1

4-1-4 Types de tches


Les tches sont globalement classes en tant que tches cycliques ou tches
d'interruption. Les tches d'interruption sont ensuite rparties entre les tches
d'interruption de mise hors tension, les tches d'interruption programmes, les
tches d'interruption d'E/S (srie CS uniquement) et les tches d'interruption
externes (srie CS uniquement). Les tches d'interruption peuvent galement
tre excutes en tant que tches cycliques extra.
Remarque Avec les UC CS1-H, CJ1-H, CJ1M ou CS1D, vous pouvez excuter les tches
d'interruption en tant que tches cycliques en les dmarrant avec TKON. Elles
sont alors appeles tches cycliques extra .
Tches cycliques
Une tche cyclique l'tat READY sera excute une fois par cycle (du dbut du
programme jusqu' l'instruction END(001)) en fonction de l'ordre numrique (en
partant de la tche correspondant au plus petit numro). Le nombre maximum de
tches cycliques est de 32 (numros de tches cycliques : 00 31).
Remarque Avec les UC CS1-H, CJ1-H, CJ1M ou CS1D, vous pouvez excuter les tches
d'interruption (numros de tches d'interruption 0 255) en tant que tches
cycliques en procdant comme pour les tches cycliques normales (numros de
tches 0 31). Si vous utilisez des tches cycliques extra, le nombre total de
tches cycliques pouvant tre utilises est de 288.
Tches d'interruption
Une tche d'interruption sera excute si une interruption a lieu, mme si une
tche cyclique (y compris des tches cycliques extra) est en cours d'excution. La
tche d'interruption sera excute n'importe quel moment du cycle, y compris
pendant l'excution du programme utilisateur, la mise jour d'E/S ou le traitement
des priphriques, lorsque la condition d'excution pour l'interruption sera remplie.
Dans le cas des UC CS1-H, CJ1-H, CJ1M ou CS1D, les tches d'interruption
peuvent tre excutes en tant que tches cycliques (les UC CS1D pour les
systmes UC en duplex ne prennent pas en charge les interruptions. Avec ces
dernires, les tches d'interruption peuvent tre utilises uniquement en tant que
tches cycliques extra).
Les entres d'interruption intgres et les entres des compteurs grande vitesse
sur une UC CJ1M peuvent tre utilises pour activer des tches d'interruption.
Pour des informations dtailles, reportez-vous au Manuel d'utilisation des E/S
intgres, srie CJ.
Tche d'interruption de La tche d'interruption de mise hors sera excute si l'alimentation de l'UC est
mise hors tension coupe. Une seule tche d'interruption de mise hors tension peut tre program-
me (numro de tche d'interruption : 1).
Remarque La tche d'interruption de mise hors tension doit s'excuter avant l'expiration du
dlai suivant, sinon la tche est automatiquement ferme.
10 ms (temps de retard de dtection de mise hors tension)
Le temps de retard de dtection de mise hors tension est dfini dans la
configuration de l'API.
Tches d'interruption Une tche d'interruption programme sera excute intervalle en fonction de la
programmes temporisation interne de l'UC. Le nombre maximum de tches d'interruption
programmes est de 2 (numros de tches d'interruption : 2 et 3).
Remarque L'instruction SET INTERRUPT MASK (MSKS(690)) permet de dfinir l'interruption
pour une tche d'interruption programme. Les dlais d'interruption peuvent tre
dfinis par incrments de 10 ms ou de 1,0 ms dans la configuration de l'API.
Tches d'interruptions Une tche d'interruption d'E/S sera excute si une entre de carte d'entre
d'E/S d'interruption passe ON. Le nombre maximum de tches d'interruption d'E/S
est de 32 (numros de tches d'interruption : 100 131). La carte d'entre
d'interruption doit tre monte sur le rack UC. Pour les UC CJ1-H, la carte doit
tre connecte comme tant l'une des cinq units (emplacements 0 4)
prsentes ct de l'UC. Pour les UC CJ1M, la carte doit tre connecte comme
tant l'une des trois units (emplacements 0 2) prsentes ct de l'UC. Les
160
Caractristiques des tches Chapitre 4-1

cartes d'interruption d'E/S installes un autre emplacement ne peuvent pas tre


utilises pour demander l'excution de tches d'interruption d'E/S.
Les interruptions d'E/S ne sont pas prises en charge par les UC CJ1.
Tches d'interruption Une tche d'interruption externe sera excute la demande d'un
externes programme utilisateur d'une carte d'E/S spciales, d'une carte rseau ou
d'une carte interne (srie CS uniquement). Les cartes d'E/S spciales et les
cartes rseau, cependant, doivent tre montes sur le rack UC. La carte
d'E/S spciales ou la carte rseau doit tre monte sur le rack UC. Pour les
UC CJ1-H, la carte doit tre connecte comme tant l'une des cinq units
(emplacements 0 4) prsentes ct de l'UC. Pour les UC CJ1M, la carte
doit tre connecte comme tant l'une des trois units (emplacements 0 2)
prsentes ct de l'UC. Les cartes installes un autre emplacement ne
peuvent pas tre utilises pour gnrer des interruptions externes.
Le nombre maximum de tches d'interruption externes est de 256 (numros
de tches d'interruption : 0 255). Si une tche d'interruption externe a le
mme numro qu'une tche d'interruption de mise hors tension, programme
ou E/S, la tche sera excute pour chaque condition (les deux conditions
fonctionneront avec la logique OR), mais fondamentalement, les numros de
tches ne doivent pas tre dupliqus.
Les interruptions d'E/S ne sont pas prises en charge par les UC CJ1.
Tches cycliques extra Une tche d'interruption peut tre excute chaque cycle, exactement
(UC CS1-H, CJ1-H, CJ1M comme une tche cyclique normale. Les tches cycliques extra (numros de
ou CS1D uniquement) tches d'interruption 0 255) sont excutes partir du plus petit numro de
tche une fois que l'excution de la tche cyclique normale (numros de
tches cycliques 0 31) est termine. Le nombre maximum de tches
cycliques extra est de 256 (numros de tches d'interruption : 0 255). Les
tches d'interruption cycliques diffrent cependant des tches cycliques
normales dans la mesure o elles sont dclenches par l'instruction
TKON(820). De plus, les instructions TKON(820) et TKOF ne peuvent pas
tre utilises dans les tches cycliques extra ; autrement dit, les tches
cycliques normales et les autres tches cycliques extra ne peuvent pas tre
contrles partir d'une tche cyclique extra.
Si une tche cyclique extra porte le mme numro qu'une tche d'interruption
de mise hors tension, programme ou E/S, la tche d'interruption sera
excute pour l'une ou l'autre condition (les deux conditions fonctionneront
avec la logique OR). N'utilisez pas de tches d'interruption la fois en tant
que tches d'interruption normales et tches cycliques extra.
Remarque 1. La tche d'interruption de mise hors tension du paragraphe 1) ci-dessus est
prioritaire et sera excute lors de la mise hors tension, mme si une autre
tche d'interruption est en cours d'excution.
2. Si une autre tche d'interruption est en cours d'excution lorsqu'une
interruption programme, E/S ou externe survient, ces tches d'interruption
ne seront pas excutes avant la fin de la tche d'interruption en cours. Si
plusieurs interruptions ont lieu simultanment, les tches d'interruption seront
excutes l'une aprs l'autre en commenant au numro de tche
d'interruption le plus petit.
3. Le tableau suivant rpertorie les diffrences entre les tches cycliques
normales et les tches cycliques extra.
Elment Tches cycliques extra Tches cycliques
normales
Activation au dmarrage Configuration impossible. Dfinies partir du
CX-Programmer
Utilisation d'instructions Impossible. Possible.
TKON/TKOF
Drapeaux de tches Non pris en charge. Pris en charge (les num-
ros de tches cycliques
00 31 correspondent
aux drapeaux de tche
TK00 TK31).

161
Caractristiques des tches Chapitre 4-1

Elment Tches cycliques extra Tches cycliques


normales
Drapeau d'excution de Non pris en charge. Pris en charge.
la tche initiale (A20015)
et drapeau de dmarrage
de tche (A20014)
Valeurs du registre Non dfinies au dmarrage Non dfinies au dbut du
d'index (IR) et du registre de la tche (comme les fonctionnement. Les
de donnes (DR) tches d'interruption norma- valeurs dfinies dans le
les). Les valeurs au dbut de cycle prcdent peuvent
chaque cycle sont indfinies. tre lues.
Dfinissez toujours les
valeurs avant de les utiliser.
Les valeurs dfinies dans le
cycle prcdent ne peuvent
pas tre lues.

4. Les UC CJ1 ne prennent pas en charge les tches d'interruption d'E/S ni


les tches d'interruption externes.

4-1-5 Conditions et paramtres d'excution des tches


Le tableau suivant dcrit les conditions d'excution des tches, les paramtres
associs et les tats.
Tche N Condition d'excution Paramtre associ
Tches cycliques 0 31 Excute une fois par cycle si Aucun
l'tat est READY (configur pour
dmarrer initialement ou dmarr
avec l'instruction TKON(820))
lorsque le droit d'excution est
obtenu.
Tches Tche d'interruption de mise Tche S'excute lorsque l'UC est mise Interruption de mise hors ten-
d'inter- hors tension d'interrup- hors tension. sion active dans la configura-
ruption tion 1 tion de l'API.
Tches d'interruption Tches S'excute chaque fois que la Le dlai d'interruption pro-
programmes 0 et 1 d'interruption priode prdfinie s'est coule gramm est dfini (0 9999)
2 et 3 en fonction de la temporisation par l'intermdiaire de l'instruc-
interne de l'UC. tion SET INTERRUPT MASK
(MSKS).
L'unit d'interruption program-
me (10 ms ou 1,0 ms) est
dfinie dans la configuration de
l'API.
Tches d'interruption d'E/S Tches S'excute lorsqu'une entre de Les masques des entres
00 31 d'interruption carte d'entre d'interruption sur le dsignes sont annuls par
100 131 rack UC passe ON. l'intermdiaire de l'instruction
SET INTERRUPT MASK
(MSKS).
Tches d'interruption exter- Tches S'excute la demande d'un pro- Aucun (toujours activ)
nes 0 255 d'interruption gramme utilisateur dans une
0 255 carte d'E/S spciales ou une
carte rseau sur le rack UC ou
la demande d'un programme utili-
sateur dans une carte interne
(srie CS uniquement).
Tches cycliques extra (CS1-H, Tches Excutes une fois par cycle si Aucun (toujours activ)
CJ1-H, CJ1M ou CS1D uniquement) d'interruption l'tat est READY (dmarr avec
0 255 l'instruction TKON(820)) lorsque
le droit d'excution est obtenu.

Remarque 1. La carte d'entre d'interruption doit tre monte sur le rack UC. Pour les UC
CJ1-H, la carte doit tre connecte comme tant l'une des cinq units
(emplacements 0 4) prsentes ct de l'UC. Pour les UC CJ1M, la carte
doit tre connecte comme tant l'une des trois units (emplacements 0 2)
prsentes ct de l'UC. Les cartes d'interruption d'E/S installes un autre
emplacement ne peuvent pas tre utilises pour demander l'excution de
tches d'interruption d'E/S.

162
Caractristiques des tches Chapitre 4-1

2. La carte d'E/S spciales ou la carte rseau doit tre monte sur le rack UC.
Pour les UC CJ1-H, la carte doit tre connecte comme tant l'une des cinq
units (emplacements 0 4) prsentes ct de l'UC. Pour les UC CJ1M, la
carte doit tre connecte comme tant l'une des trois units (emplacements
0 2) prsentes ct de l'UC. Les cartes installes un autre emplacement
ne peuvent pas tre utilises pour gnrer des interruptions externes.
3. Le nombre de tches cycliques et de tches d'interruption est limit lorsque
l'opration de remise zro de la mmoire est excute avec une console de
programmation.
Seule la tche cyclique 0 peut tre cre.
Il n'est pas possible de crer les tches cycliques 1 31 avec une console
de programmation, mais ces tches peuvent tre modifies si elles ont
dj t cres avec CX-Programmer.
Seules les tches d'interruption 1, 2, 3 et 100 131 (srie CS
uniquement) peuvent tre cres.
Les tches d'interruption 0, 4 99 et 132 255 ne peuvent pas tre
cres avec une console de programmation ( l'exception des tches 140
143 qui peuvent tre cres pour les UC CJ1M), mais ces tches
peuvent tre modifies si elles ont dj t cres avec CX-Programmer.

4-1-6 Etat des tches cycliques


Cette section dcrit les tats des tches cycliques, y compris des tches
cycliques extra (prises en charge par les UC CS1-H, CJ1-H, CJ1M ou CS1D
uniquement).
Les tches cycliques peuvent avoir quatre tats : Dsactiv, READY (prt),
RUN (excutable) et En attente (WAIT).
Etat Dsactiv (INI)
Une tche avec un tat Dsactiv n'est pas excute. Toutes les tches
cycliques ont un tat Dsactiv en mode PROGRAM. Une tche cyclique qui
est passe de cet tat un autre tat ne peut pas revenir cet tat sans
repasser en mode PROGRAM.

Etat READY
Il est possible de dfinir un attribut de tche pour contrler quel moment la
tche passera l'tat READY. L'attribut peut tre dfini pour activer la tche
avec l'instruction TASK ON ou au dmarrage de l'opration RUN.
Tches actives par Une instruction TASK ON (TKON(820)) est utilise pour faire passer une
instruction tche cyclique active par instruction de l'tat Dsactiv ou En attente l'tat
READY.
Tches actives par Une tche cyclique active par opration passe de l'tat Dsactiv l'tat
opration READY lorsque le mode de fonctionnement passe du mode PROGRAM au
mode RUN ou MONITOR. Cela s'applique uniquement aux tches cycliques
normales.
Remarque Vous pouvez, l'aide d'un priphrique de programmation, configurer une ou
plusieurs tches de telle sorte qu'elles passent l'tat READY lorsque
l'opration est dmarre pour les numros de tches 0 31. Ce paramtrage
n'est pas possible, cependant, avec les tches cycliques extra.

Etat RUN
Une tche cyclique qui est READY passe l'tat RUN et elle est excute
lorsqu'elle obtient le droit d'excution.

Etat En attente
Vous pouvez utiliser une instruction TASK OFF (TKOF(821)) pour faire passer
une tche cyclique de l'tat Dsactiv l'tat En attente.

163
Caractristiques des tches Chapitre 4-1

Remarque CX-Programmer version 4.0 (ou une version suprieure) permet d'assurer
une surveillance en ligne des programmes de tches pour les API srie
CS/CJ afin de dterminer s'ils sont en cours d'excution ou arrts. Les
indications d'tat sur CX-Programmer sont les suivantes :
Running : la tche est l'tat READY ou RUN (rien ne permet de faire la
distinction entre ces deux tats).
Stopped : la tche est l'tat INI ou WAIT (rien ne permet de faire la
distinction entre ces deux tats).

4-1-7 Transitions entre les tats


Activ au dbut de l'opration
(voir remarque 2) ou de Droit d'excution obtenu.
l'instruction TKON(820)

Etat INI (Dsactiv) Etat READY Etat RUN

Excut

Instruction TKON(820) Instruction TKOF(821)


(voir remarque 1.)

Etat En attente

Remarque 1. Une tche l'tat RUN sera mise l'tat En attente par l'instruction
TKOF(821), mme si l'instruction TKOF(821) est excute l'intrieur de
cette tche.
2. L'activation au dbut de l'opration n'est possible que pour les tches
cycliques normales. Elle n'est pas possible pour les tches cycliques extra.
L'tat En attente fonctionne exactement de la mme faon qu'un saut (JMP-JME).
L'tat de sortie associ la tche En attente sera conserv.

Etat En attente Saut

A l'tat En attente, les instructions ne seront pas excutes ; par consquent,


le temps d'excution des instructions n'augmentera pas. Vous pouvez crer la

164
Utilisation de tches Chapitre 4-2

programmation qui ne doit pas tre excute en permanence dans des


tches et lui affecter l'tat En attente pour rduire le temps de cycle.
Temps de cycle rduit
Programme conventionnel
Tche

S'excute dans
des conditions Toutes les
dfinies. instructions seront
excutes, sauf si
des sauts ou
d'autres fonctions
sont utiliss.

S'excute dans
des conditions
dfinies.

Remarque L'tat En attente signifie simplement qu'une tche sera ignore pendant
l'excution des tches. Le fait de passer l'tat En attente n'arrtera pas le
programme.

4-2 Utilisation de tches


4-2-1 TASK ON et TASK OFF
Les instructions TASK ON (TKON(820)) et TASK OFF (TKOF(821)) permettent
de faire passer une tche cyclique (y compris une tche cyclique extra) de l'tat
READY l'tat En attente et inversement partir d'un programme.
Remarque Les tches cycliques extra sont prises en charge uniquement par les UC CS1-H,
CJ1-H, CJ1M et CS1D.

N : N de Une tche passera l'tat READY


tche lorsque la condition d'excution sera sur
ON et le drapeau de tche
correspondant passera sur ON.

N : N de Une tche passera l'tat En attente

<