Vous êtes sur la page 1sur 428

Automate

Logix5000 Procdures
gnrales
1756-Lx, 1769-Lx, 1789-Lx, 1794-Lx,
PowerFlex 700

Manuel de programmation

Informations importantes
destines lutilisateur

En raison de la diversit des utilisations des produits dcrits dans le prsent


manuel, les personnes qui en sont responsables doivent sassurer que toutes les
mesures ont t prises pour que lapplication et lutilisation des produits soient
conformes aux exigences de performance et de scurit, ainsi quaux lois,
rglements, codes et normes en vigueur. La socit Rockwell Automation ne
saurait en aucun cas tre tenue pour responsable ni tre redevable des
dommages indirects ou conscutifs rsultant de lutilisation ou de lapplication
de ces produits.
Les illustrations, schmas et exemples de programmes contenus dans ce
manuel sont prsents titre indicatif seulement. En raison du nombre
important de variables et dimpratifs associs chaque installation, la socit
Rockwell Automation ne saurait tre tenue pour responsable ni tre redevable
(y compris en matire de proprit intellectuelle) des suites dutilisation relle
base sur les exemples et schmas prsents dans ce manuel.
La publication SGI-1.1, Safety Guidelines for the Application, Installation and
Maintenance of Solid-State Control (disponible auprs de votre agence
commerciale Rockwell Automation), dcrit certaines diffrences importantes
entre les quipements lectroniques et les quipements lectromcaniques, qui
devront tre prises en compte lors de lapplication de ces produits comme
indiqu dans la prsente publication.
Toute reproduction totale ou partielle du prsent manuel sans autorisation
crite de la socit Rockwell Automation est interdite.
Des remarques sont utilises tout au long de ce document pour attirer votre
attention sur les mesures de scurit prendre en compte. Les symboles
suivants et les avertissements qui les accompagnent vous aident identifier un
danger, lviter et en discerner les consquences :
AVERTISSEMENT

!
ATTENTION

!
IMPORTANT

Actions ou situations susceptibles de provoquer une


explosion en environnement dangereux et risquant
dentraner des blessures pouvant tre mortelles, des dgts
matriels ou des pertes financires.

Actions ou situations risquant dentraner des blessures


pouvant tre mortelles, des dgts matriels ou des pertes
financires.

Informations particulirement importantes dans le cadre de


lutilisation du produit.

Sommaire des modifications

Introduction

Ce document contient de nouvelles informations et des informations mises


jour.

Informations mises jour

Ce document contient les modifications suivantes :

Modification

Chapitre/Annexe

Informations supplmentaires sur la planification des tches dun projet, dont le choix du langage
de programmation appropri pour une application

Procdures supplmentaires sur le fonctionnement de la fentre dorganisation de lautomate, la


cration de tches, de programmes et de sous-programmes
Nouvelles informations sur la conception dun graphe de fonctionnement squentiel pour votre
machine ou votre procd

Nouvelles informations sur lentre et la configuration dun graphe de fonctionnement squentiel


laide du logiciel RSLogix 5000

Nouvelles informations sur lutilisation du langage de programmation en texte structur, y


compris les affectations, les expressions, les instructions, les instructions de test et les
commentaires

Informations supplmentaires sur la programmation dun diagramme de blocs fonctionnels,


notamment comment utiliser des pages, dfinir lordre dexcution, rsoudre des boucles, dfinir
la commande de programme/oprateur, entrer et configurer des lments

Informations supplmentaires sur lorganisation et lentre dune logique relais

Nouvelles informations pour savoir comment obtenir des informations sur la mmoire dun
automate

Informations mises jour sur le forage des valeurs dE/S

18

Nouvelles informations sur le forage des lments SFC et la navigation dans ces lments
Nouvelles informations sur la carte CompactFlash industrielle 1784-CF64 (mmoire non volatile
pour lautomate ControlLogix 1756-L63)

23

Procdures mises jour pour la fonction de protection de la source du sous-programme

24

2 nouveaux codes de dfaut majeur

Informations supplmentaires sur la conformit la norme CEI 61131-3 pour les langages de
programmation par graphe de fonctionnement squentiel et en texte structur

Nouvelles dfinitions portant sur les graphes de fonctionnement squentiel

Glossaire

Publication 1756-PM001E-FR-P - Aot 2002

Sommaire des modifications

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Prface

Objet de ce manuel

Ce manuel vous guide dans le dveloppement de projets pour les automates


Logix5000. Il fournit des procdures pas pas permettant deffectuer les
tches suivantes, communes tous les automates Logix5000 :

Organisation des tches, programmes et sous-programmes


Organisation des points
Conception dun graphe de fonctionnement squentiel
Programmation des sous-programmes
Test dun projet
Gestion des dfauts

Le terme automate Logix5000 fait rfrence tous les automates fonctionnant


avec le systme dexploitation Logix, tels que :
les automates CompactLogix ;
les automates ControlLogix ;
les automates FlexLogix ;
les automates SoftLogix.
Ce manuel est utiliser en conjonction avec les manuels utilisateur relatifs au
type dautomate utilis. Ces manuels utilisateur couvrent diffrentes tches,
telles que :
le placement et la configuration des E/S ;
la communication avec des quipements sur divers rseaux ;
lentretien de la pile.

A qui sadresse ce manuel

Ce manuel sadresse aux personnes charges de programmer des applications


utilisant des automates Logix5000, telles que :

les ingnieurs en logiciel ;


les automaticiens ;
les ingnieurs dapplications ;
les techniciens en instrumentation.

Publication 1756-PM001E-FR-P - Aot 2002

Prface

Quand utiliser ce manuel

Utilisez ce manuel pour :


dvelopper le code de base de votre application ;
modifier une application existante ;
soumettre votre application des tests particuliers.
Lors de lintgration de votre application aux quipements dE/S, automates et
rseaux du systme :
reportez-vous au manuel utilisateur relatif au type dautomate utilis ;
servez-vous de ce manuel comme document de rfrence chaque fois
que cest ncessaire.

Comment utiliser ce
manuel

Ce manuel est divis en chapitres consacrs aux tches de base effectuer pour
programmer un automate Logix5000.
Chaque chapitre est consacr une tche.
Les tches sont prsentes dans lordre dans lequel elles sont
gnralement effectuer.
En utilisant ce manuel, vous verrez que certains termes se distinguent du reste
du texte par leur mise en forme :

Le texte

Indique

Par exemple

Signifie

en italique

le nom dune rubrique affiche


lcran ou mentionne dans un
exemple

Cliquez avec le bouton droit de


la souris sur Dfini par
lutilisateur

Cliquez avec le bouton droit de la souris


sur la rubrique appele Dfini par
lutilisateur.

en gras

une entre du glossaire

Entrez un nom

Si vous souhaitez des informations


supplmentaires, reportez-vous nom
dans le glossaire.
Si vous visualisez le fichier PDF du
manuel, cliquez sur nom pour vous
reporter directement lentre
correspondante dans le glossaire.

en police
courier

les informations que vous devez


fournir en fonction de votre
application (une variable)

Cliquez avec le bouton droit de


la souris sur
nom_du_programme ...

Vous devez identifier le programme


particulier dans votre application. Il sagit
en gnral dun nom ou dune variable
que vous avez dfini(e).

entre parenthses

une touche du clavier

Appuyez sur [Entre].

Appuyez sur la touche Entre.

Publication 1756-PM001E-FR-P - Aot 2002

Table des matires


Chapitre 1
Gestion des fichiers de projet

Cration dun fichier de projet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1


Enregistrement des modifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3

Chapitre 2
Organisation des tches,
Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1
programmes et sous-programmes Avant de commencer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1

Comment utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1


Dfinitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
Tche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
Tche continue. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2
Tche priodique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3
Programme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4
Sous-programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4
Sous-programme principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4
Planification des tches du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4
Dfinition des fonctions du projet . . . . . . . . . . . . . . . . . . . . . . . . 2-5
Attribution de chaque fonction une tche . . . . . . . . . . . . . . . . . 2-6
Utilisation de la fentre dorganisation de lautomate. . . . . . . . . . . . . 2-7
Ouvrir et fermer un dossier. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7
Ouvrir un sous-programme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8
Cration dune tche priodique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-9
Cration dun programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10
Cration dun sous-programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-11
Configuration dun sous-programme comme sous-programme
principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12
Vrification du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12

Chapitre 3
Organisation des points

Planification des points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1


Cration dun type de donnes dfini par lutilisateur . . . . . . . . . . . . 3-7
Notes : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8
Cration dun point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9
Cration de points laide de Microsoft Excel . . . . . . . . . . . . . . 3-10

Chapitre 4
Conception dun graphe de
fonctionnement squentiel

Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


Comment utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Quest-ce quun graphe de fonctionnement squentiel ? . . . . . . . . . .
Conception dun SFC : prsentation . . . . . . . . . . . . . . . . . . . . . . . . . .
Dfinition des tches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Choix du mode dexcution du SFC . . . . . . . . . . . . . . . . . . . . . . . . . .
Dfinition des tapes du procd . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Observez les directives suivantes . . . . . . . . . . . . . . . . . . . . . . . . .

4-1
4-1
4-2
4-4
4-5
4-6
4-6
4-7

Publication 1756-PM001E-FR-P - Aot 2002

ii

Table des matires

Structure SFC_STEP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-8


Organisation des tapes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-11
Prsentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-11
Squence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13
Branche de slection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-13
Branche simultane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-15
Liaison avec une tape prcdente . . . . . . . . . . . . . . . . . . . . . . . 4-16
Ajout dactions pour chaque tape . . . . . . . . . . . . . . . . . . . . . . . . . . 4-17
Comment voulez-vous utiliser laction ?. . . . . . . . . . . . . . . . . . . 4-17
Utiliser une action non boolenne . . . . . . . . . . . . . . . . . . . . . . . 4-17
Utiliser une action boolenne . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-18
Structure SFC_ACTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-19
Description de chaque action en pseudocode . . . . . . . . . . . . . . . . . 4-20
Choix dun qualificateur pour une action . . . . . . . . . . . . . . . . . . . . . 4-21
Dfinition des conditions de transition. . . . . . . . . . . . . . . . . . . . . . . 4-22
Point de transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-24
Comment voulez-vous programmer la transition ? . . . . . . . . . . 4-24
Utiliser une expression boolenne . . . . . . . . . . . . . . . . . . . . . . . 4-24
Appeler un sous-programme. . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-25
Transition aprs un dlai prdfini . . . . . . . . . . . . . . . . . . . . . . . . . . 4-26
Arrt dun quipement la fin dune tape . . . . . . . . . . . . . . . . . . . . 4-29
Choisir une option de dernire scrutation . . . . . . . . . . . . . . . . . 4-29
Utiliser loption de non scrutation . . . . . . . . . . . . . . . . . . . . . . . 4-31
Utiliser loption de rinitialisation par programme. . . . . . . . . . . 4-32
Utiliser loption de rinitialisation automatique . . . . . . . . . . . . . 4-34
Garder un quipement actif dune tape une autre . . . . . . . . . . . . 4-35
Comment souhaitez-vous commander lquipement ? . . . . . . . 4-35
Utiliser une branche simultane . . . . . . . . . . . . . . . . . . . . . . . . . 4-36
Stocker et rinitialiser une action . . . . . . . . . . . . . . . . . . . . . . . . 4-37
Utiliser une grande tape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-39
Fin du SFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-40
Que souhaitez-vous faire la fin du SFC ?. . . . . . . . . . . . . . . . . 4-40
Utiliser un lment darrt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-40
Redmarrer (positionner) le SFC . . . . . . . . . . . . . . . . . . . . . . . . 4-41
Structure SFC_STOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-42
Imbrication dun SFC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-43
Entre ou sortie de paramtres . . . . . . . . . . . . . . . . . . . . . . . . . . 4-44
Configuration du retour au SE/JSR . . . . . . . . . . . . . . . . . . . . . . . . . 4-44
Pause ou positionnement dun SFC . . . . . . . . . . . . . . . . . . . . . . . . . 4-45
Diagrammes dexcution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-45

Chapitre 5
Programmation dun graphe de
fonctionnement squentiel

Publication 1756-PM001E-FR-P - Aot 2002

Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


Avant dutiliser cette procdure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comment utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ajout dun lment SFC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ajouter et connecter manuellement des lments . . . . . . . . . . . .
Ajouter et connecter automatiquement des lments . . . . . . . . .

5-1
5-1
5-1
5-2
5-2
5-3

Table des matires

iii

Glisser-dplacer des lments . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3


Cration dune branche simultane . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4
Commencer une branche simultane . . . . . . . . . . . . . . . . . . . . . . 5-4
Terminer une branche simultane. . . . . . . . . . . . . . . . . . . . . . . . . 5-4
Cration dune branche de slection . . . . . . . . . . . . . . . . . . . . . . . . . . 5-5
Commencer une branche de slection . . . . . . . . . . . . . . . . . . . . . 5-5
Terminer une branche de slection. . . . . . . . . . . . . . . . . . . . . . . . 5-6
Dfinition des priorits dune branche de slection . . . . . . . . . . . . . . 5-7
Retour une tape prcdente. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8
Connecter une liaison une tape. . . . . . . . . . . . . . . . . . . . . . . . . 5-8
Masquer une liaison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-9
Afficher une liaison masque . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-9
Modification du nom dune tape . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-10
Configuration dune tape . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-10
Attribuer un temps de prslection une tape . . . . . . . . . . . . . 5-10
Configurer des alarmes dans une tape. . . . . . . . . . . . . . . . . . . . 5-11
Utiliser une expression pour calculer une dure. . . . . . . . . . . . . 5-11
Modification du nom dune transition. . . . . . . . . . . . . . . . . . . . . . . . 5-13
Programmation dune transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-13
Entrer une expression boolenne . . . . . . . . . . . . . . . . . . . . . . . . 5-13
Appeler un sous-programme. . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-14
Ajout dune action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-15
Modification du nom dune action . . . . . . . . . . . . . . . . . . . . . . . . . . 5-15
Configuration dune action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-16
Changer le qualificateur dune action . . . . . . . . . . . . . . . . . . . . . 5-16
Calculer une dure prdfinie dexcution . . . . . . . . . . . . . . . . . 5-17
Marquer une action comme action boolenne . . . . . . . . . . . . . . 5-17
Programmation dune action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18
Entrer un texte structur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-18
Appeler un sous-programme. . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-19
Attribution de lordre dexcution des actions . . . . . . . . . . . . . . . . . 5-20
Documenter un SFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-21
Ajouter des commentaires de texte structur . . . . . . . . . . . . . . . 5-21
Ajouter une description de point . . . . . . . . . . . . . . . . . . . . . . . . 5-22
Ajouter une zone de texte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-23
Afficher ou masquer les zones de texte ou les descriptions
de points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-24
Afficher ou masquer les zone de texte ou les descriptions . . . . 5-24
Masquer la description dun point individuel . . . . . . . . . . . . . . . 5-25
Configuration de lexcution du SFC . . . . . . . . . . . . . . . . . . . . . . . . 5-26
Vrification du sous-programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-27

Chapitre 6
Programmation en texte structur Quand utiliser ce chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1
Syntaxe du texte structur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Affectations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Spcification dune affectation non rmanente . . . . . . . . . . . . . .
Attribution dun caractre ASCII une chane . . . . . . . . . . . . . .

6-1
6-2
6-3
6-4

Publication 1756-PM001E-FR-P - Aot 2002

iv

Table des matires

Expressions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4
Utilisation doprateurs et de fonctions arithmtiques. . . . . . . . . 6-5
Utilisation doprateurs de relation . . . . . . . . . . . . . . . . . . . . . . . . 6-7
Utilisation doprateurs logiques . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8
Utilisations doprateurs sur bits . . . . . . . . . . . . . . . . . . . . . . . . . . 6-9
Dtermination de lordre dexcution . . . . . . . . . . . . . . . . . . . . . 6-10
Instructions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-10
Instructions de test. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11
IF...THEN (SI... ALORS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-12
CASE...OF
(EN FONCTION DE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-15
FORDO (POUR FAIRE). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-18
WHILEDO
(TANT QUE FAIRE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-21
REPEATUNTIL (REPETER JUSQUA) . . . . . . . . . . . . . . . . 6-24
Commentaires. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-27

Chapitre 7
Programmation dun diagramme
de blocs fonctionnels

Publication 1756-PM001E-FR-P - Aot 2002

Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1


Avant dutiliser cette procdure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1
Comment utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1
Identification des pages du sous-programme . . . . . . . . . . . . . . . . . . . 7-2
Choix des lments de blocs fonctionnels . . . . . . . . . . . . . . . . . . . . . 7-3
Choix dun nom de point pour un lment . . . . . . . . . . . . . . . . . . . . 7-4
Dfinition de lordre dexcution. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-5
Verrouillage des donnes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-5
Ordre dexcution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-7
Rsolution dune boucle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-8
Rsolution du flux de donnes entre deux blocs . . . . . . . . . . . . 7-10
Cration dune temporisation de scrutation . . . . . . . . . . . . . . . . 7-10
Rsum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-11
Identification des connecteurs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-11
Dfinition de la commande Programme/Oprateur . . . . . . . . . . . . 7-12
Ajouter une page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-16
Ajouter un lment de bloc fonctionnel . . . . . . . . . . . . . . . . . . . . . . 7-16
Connexion dlments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-18
Afficher ou masquer une borne . . . . . . . . . . . . . . . . . . . . . . . . . 7-18
Relier des lments entre eux . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-19
Marquez une liaison avec lindicateur Assume Data
Available . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-19
Attribution dun point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-20
Crer et attribuer un nouveau point . . . . . . . . . . . . . . . . . . . . . . 7-20
Renommer le point dun bloc fonctionnel . . . . . . . . . . . . . . . . . 7-21
Attribuer un point existant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-21
Attribution dune valeur immdiate (constante) . . . . . . . . . . . . . . . . 7-22
Utiliser une IREF. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-22
Entrer une valeur dans le point dun bloc . . . . . . . . . . . . . . . . . 7-22

Table des matires

Connexion de blocs avec un connecteur OCON et un


connecteur ICON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ajouter un connecteur OCON . . . . . . . . . . . . . . . . . . . . . . . . . .
Ajouter un connecteur ICON . . . . . . . . . . . . . . . . . . . . . . . . . . .
Vrification du sous-programme . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7-23
7-23
7-23
7-24

Chapitre 8
Programmation dune logique
relais

Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1


Avant dutiliser cette procdure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1
Comment utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1
Dfinitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2
Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2
Branche. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-2
Condition de ligne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-4
Ecriture de la logique relais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-5
Choisir les instructions requises . . . . . . . . . . . . . . . . . . . . . . . . . . 8-5
Organiser les instructions dentre . . . . . . . . . . . . . . . . . . . . . . . . 8-6
Organiser les instructions de sortie . . . . . . . . . . . . . . . . . . . . . . . . 8-7
Choisir un nom de point pour un oprande. . . . . . . . . . . . . . . . . 8-8
Entre de la logique relais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-10
Ajouter un lment au niveau du curseur . . . . . . . . . . . . . . . . . . 8-10
Glisser-dplacer un lment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-11
Attribution des oprandes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-11
Crer et attribuer un nouveau point . . . . . . . . . . . . . . . . . . . . . . 8-11
Choisir un nom ou un point existant . . . . . . . . . . . . . . . . . . . . . 8-13
Faire glisser un point de la fentre des points . . . . . . . . . . . . . . 8-13
Attribuer une valeur immdiate (constante) . . . . . . . . . . . . . . . . 8-13
Vrification du sous-programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-14

Chapitre 9
Accs aux valeurs systme

Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


Comment utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Surveillance des indicateurs dtat . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Obtention et dfinition des donnes systme. . . . . . . . . . . . . . . . . . .
Informations sur la mmoire de lautomate . . . . . . . . . . . . . . . . . . . .
Obtenir des informations sur la mmoire partir
de lautomate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Choisir linformation de mmoire souhaite . . . . . . . . . . . . . . . .
Convertir des INT en DINT. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9-1
9-1
9-1
9-3
9-5
9-7
9-8
9-9

Chapitre 10
Attribution des alias

Points dalias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1


Affichage des informations dalias. . . . . . . . . . . . . . . . . . . . . . . . . . . 10-2
Attribution dun alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-3

Publication 1756-PM001E-FR-P - Aot 2002

vi

Table des matires

Chapitre 11
Attribution dune adresse
indirecte

Quand faut-il attribuer une adresse indirecte ? . . . . . . . . . . . . . . . . . 11-1


Expressions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11-3

Chapitre 12
Mise en buffer des E/S

Quand faut-il mettre les E/S dans un buffer ? . . . . . . . . . . . . . . . . . 12-1


Mise en buffer des E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1

Chapitre 13
Test dun projet

Test dun projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


Configuration dun driver de communication . . . . . . . . . . . . . . . . .
Chargement dun projet dans lautomate . . . . . . . . . . . . . . . . . . . . .
Slection dun mode pour lautomate . . . . . . . . . . . . . . . . . . . . . . . .
Correction dun dfaut majeur. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sauvegarder les modifications en ligne . . . . . . . . . . . . . . . . . . . . . . .

13-1
13-1
13-3
13-5
13-6
13-6

Chapitre 14
Communication avec un autre
automate

Publication 1756-PM001E-FR-P - Aot 2002

Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-1


Comment utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-1
Production et consommation dun point . . . . . . . . . . . . . . . . . . . . . 14-1
Ce que vous devez faire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-3
Organiser des points pour les donnes produites et
consommes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-3
Produire un point. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-4
Consommer un point produit . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-5
Produire des nombres entiers pour un automate PLC-5C . . . . 14-6
Produire des REAL pour automate PLC-5C . . . . . . . . . . . . . . . 14-7
Consommer des nombres entiers partir dun automate
PLC-5C. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-9
Rgler pour les limites de la bande passante. . . . . . . . . . . . . . . 14-10
Envoi dun message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-11
Envoi dun message vers plusieurs automates . . . . . . . . . . . . . . . . 14-13
Rgler la configuration des E/S . . . . . . . . . . . . . . . . . . . . . . . . 14-14
Dfinir les lments Source et Destination . . . . . . . . . . . . . . . 14-15
Crer le type de donnes MESSAGE_CONFIGURATION . 14-16
Crer le tableau de configuration . . . . . . . . . . . . . . . . . . . . . . . 14-17
Obtenir la taille du tableau local . . . . . . . . . . . . . . . . . . . . . . . . 14-19
Charger les proprits du message dun automate . . . . . . . . . . 14-20
Configurer le message . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-21
Passer lautomate suivant . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-22
Recommencer la squence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14-22

Table des matires

vii

Chapitre 15
Production dun tableau de grande Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15-1
Production dun tableau de grande taille . . . . . . . . . . . . . . . . . . . . . . 15-2
taille
Chapitre 16
Communication avec un
quipement ASCII

Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-1


Comment utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-1
Connexion de lquipement ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . 16-2
Configuration du port srie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-3
Configuration du protocole utilisateur . . . . . . . . . . . . . . . . . . . . . . . 16-5
Cration des types de donnes chane. . . . . . . . . . . . . . . . . . . . . . . . 16-8
Lire des caractres dans le dispositif . . . . . . . . . . . . . . . . . . . . . . . . . 16-9
Envoi de caractres vers le dispositif . . . . . . . . . . . . . . . . . . . . . . . 16-14
Saisie de caractres ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-21

Chapitre 17
Traitement des caractres ASCII

Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-1


Comment utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-1
Extraction dune partie dun code barres . . . . . . . . . . . . . . . . . . . . 17-2
Recherche dun code barres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-4
Cration du type de donnes PRODUCT_INFO . . . . . . . . . . . 17-5
Recherche des caractres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-5
Identification du numro de ligne. . . . . . . . . . . . . . . . . . . . . . . . 17-6
Rejet des mauvais caractres . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-7
Entre des identifiants produit et des numros de ligne . . . . . . 17-8
Vrification des caractres du code barres . . . . . . . . . . . . . . . . . . . 17-9
Conversion dune valeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-11
Dcodage dun message ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-13
Cration dune chane. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-17

Chapitre 18
Forage des lments de la
logique

Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


Comment utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . .
Prcautions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Activer les forages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Dsactiver ou supprimer un forage. . . . . . . . . . . . . . . . . . . . . .
Vrification de ltat du forage. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Barre doutils Online . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Voyant FORCE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instruction GSV. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Que forcer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Quand utiliser un forage dE/S . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Forcer une valeur dentre. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Forcer une valeur de sortie . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18-1
18-1
18-2
18-2
18-3
18-4
18-4
18-4
18-5
18-5
18-6
18-6
18-7

Publication 1756-PM001E-FR-P - Aot 2002

viii

Table des matires

Ajout dun forage dE/S. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-8


Quand utiliser Step Through (Passer par). . . . . . . . . . . . . . . . . . . . . 18-9
Passage par une transition ou par le forage dun chemin . . . . . . . . 18-9
Quand utiliser un forage SFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-9
Forcer une transition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-9
Forcer un chemin simultan . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-10
Ajout dun forage SFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18-12
Suppression ou dsactivation des forages . . . . . . . . . . . . . . . . . . . 18-13
Supprimer un forage particulier. . . . . . . . . . . . . . . . . . . . . . . . 18-13
Dsactiver tous les forages dE/S et SFC . . . . . . . . . . . . . . . . 18-14
Supprimer tous les forages dE/S et SFC . . . . . . . . . . . . . . . . 18-14
Dsactiver tous les forages dE/S . . . . . . . . . . . . . . . . . . . . . . 18-14
Supprimer tous les forages dE/S . . . . . . . . . . . . . . . . . . . . . . 18-14
Dsactiver tous les forages SFC . . . . . . . . . . . . . . . . . . . . . . . 18-14
Supprimer tous les forages SFC . . . . . . . . . . . . . . . . . . . . . . . 18-14

Chapitre 19
Dveloppement dun
sous-programme de gestion des
dfauts

Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


Comment utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . .
Cration du type de donnes FAULTRECORD . . . . . . . . . . . . . . .
Cration dun sous-programme de gestion des dfauts . . . . . . . . . .
Effacement dun dfaut majeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Obtenir le type et le code du dfaut . . . . . . . . . . . . . . . . . . . . . .
Recherche dun dfaut spcifique . . . . . . . . . . . . . . . . . . . . . . . .
Effacement du dfaut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Effacement dun dfaut majeur pendant la pr-scrutation. . . . . . . .
Identifier quand lautomate est en pr-scrutation. . . . . . . . . . . .
Obtenir le type et le code du dfaut . . . . . . . . . . . . . . . . . . . . . .
Recherche dun dfaut spcifique . . . . . . . . . . . . . . . . . . . . . . . .
Effacement du dfaut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Test dun sous-programme de gestion des dfauts. . . . . . . . . . . . . .

19-1
19-1
19-2
19-3
19-4
19-4
19-4
19-5
19-6
19-6
19-7
19-7
19-8
19-9

Chapitre 20
Cration dun dfaut majeur dfini Quand utiliser cette procdure ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-1
Cration dun dfaut majeur dfini par lutilisateur . . . . . . . . . . . . . 20-1
par lutilisateur
Chapitre 21
Gestion des dfauts mineurs

Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-1


Gestion des dfauts mineurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-1

Chapitre 22
Dveloppement dun
sous-programme de dmarrage

Publication 1756-PM001E-FR-P - Aot 2002

Quand utiliser cette procdure ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-1


Dveloppement dun sous-programme de dmarrage . . . . . . . . . . . 22-2

Table des matires

ix

Chapitre 23
Stockage et chargement dun
projet dans la mmoire non
volatile

Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-1


Comment utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-2
Slection dun automate avec mmoire non volatile . . . . . . . . . . . . 23-3
Prcautions dutilisation de la carte CompactFlash
industrielle 1784-CF64 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-4
Quand charger une image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-5
Stockage dun projet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-5
Configurer lopration de stockage . . . . . . . . . . . . . . . . . . . . . . . 23-5
Stocker le projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-7
Enregistrer le projet en ligne . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-7
Chargement dun projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-8
Vrification dun chargement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-10
Effacement de la mmoire non volatile . . . . . . . . . . . . . . . . . . . . . 23-11
Vrifier loption de chargement de limage active . . . . . . . . . 23-11
Changer loption de chargement de limage . . . . . . . . . . . . . . . 23-12
Effacer le projet de lautomate . . . . . . . . . . . . . . . . . . . . . . . . . 23-12
Stocker limage vide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23-12

Chapitre 24
Protection d'un projet

Quand utiliser cette procdure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-1


Utilisation de la protection de la source du sous-programme . . . . . 24-1
Choix du niveau de protection pour chaque sous-programme . 24-5
Choix du nombre de cls sources . . . . . . . . . . . . . . . . . . . . . . . . 24-5
Dfinition de la cl source des cls . . . . . . . . . . . . . . . . . . . . . . . 24-6
Choix d'un emplacement de fichier pour stocker les
cls sources. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-6
Activation de la fonction de protection de la source dans
le logiciel RSLogix 5000. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-6
Cration d'un fichier pour les cls sources . . . . . . . . . . . . . . . . . 24-7
Protection d'un sous-programme avec une cl source. . . . . . . . 24-8
Limiter l'accs un sous-programme protg . . . . . . . . . . . . . . 24-9
Dsactivation de la protection de la source d'un
sous-programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-9
Accs un sous-programme protg . . . . . . . . . . . . . . . . . . . . 24-10
Utilisation de Security Server de RSI pour protger un projet. . . . 24-12
Installation du logiciel Security Server de RSI . . . . . . . . . . . . . 24-12
Configuration de DCOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-12
Activation du logiciel Security Server pour le logiciel
RSLogix 5000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-13
Importation du fichier RSLogix5000Security.bak . . . . . . . . . . 24-14
Dfinir les actions globales pour les utilisateurs. . . . . . . . . . . . 24-15
Dfinir les actions de projet pour les utilisateurs . . . . . . . . . . . 24-16
Ajout d'utilisateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24-19
Ajout de groupes d'utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . 24-19
Attribution d'un accs global au logiciel RSLogix 5000 . . . . . . 24-20

Publication 1756-PM001E-FR-P - Aot 2002

Table des matires

Attribution des actions de projet pour les nouveaux


projets RSLogix 5000. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Protection d'un projet RSLogix 5000 . . . . . . . . . . . . . . . . . . . .
Attribution de l'accs un projet RSLogix 5000 . . . . . . . . . . .
Rafrachissement du logiciel RSLogix 5000, si ncessaire . . . .

24-21
24-22
24-23
24-24

Annexe A
Codes de dfauts

Quand utiliser cette annexe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1


Codes de dfaut majeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1
Codes de dfaut mineur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-3

Annexe B
Conformit CEI 61131-3

Glossaire
Index
Codes des caractres ASCII
Quatrime de couverture

Publication 1756-PM001E-FR-P - Aot 2002

Utilisation de cette annexe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Systme d'exploitation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Dfinitions des donnes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Langages de programmation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Jeu d'instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Portabilit des programmes CEI 61131-3. . . . . . . . . . . . . . . . . . . . . .
Tableaux de conformit CEI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

B-1
B-1
B-2
B-2
B-3
B-4
B-4
B-5

Chapitre

Gestion des fichiers de projet

Cration dun fichier de


projet

Avant de commencer programmer un automate Logix5000, vous devez crer


un projet :
1. Lancez le logiciel RSLogix 5000.
2. Dans le menu Fichier, slectionnez Nouveau.

3.
4.
5.

6.
7.
8.

42194

3. Slectionnez le type dautomate.


4. Entrez un nom pour lautomate.
5. Tapez une description des oprations effectues par lautomate
(facultatif).
6. Slectionnez le type de chssis (nombre demplacements) qui contient
lautomate (non applicable certains automates).
7. Slectionnez ou tapez le numro demplacement o est install
lautomate (non applicable certains automates).
8. Pour enregistrer le fichier dans un dossier diffrent (autre que le chemin
par dfaut indiqu sous Crer dans), cliquez sur Parcourir et slectionnez
un dossier.
9. Cliquez sur OK.

Publication 1756-PM001E-FR-P - Aot 2002

1-2

Gestion des fichiers de projet

Lorsque vous crez un projet, le nom du fichier de projet


est le mme que celui de lautomate.

nom de lautomate

arborescence de
lautomate

42371

Publication 1756-PM001E-FR-P - Aot 2002

Gestion des fichiers de projet

Enregistrement des
modifications

1-3

Enregistrez le projet au fur et mesure que vous crez la logique et effectuez


des changements de configuration.
Pour :

Faites ceci :

enregistrer vos communications

Dans le menu Fichier, slectionnez Enregistrer.

faire une copie du projet ouvert


mais conserver le nom actuel de
lautomate

A. Dans le menu Fichier, slectionnez


Enregistrer sous.
B. Tapez un nom pour le fichier de projet.
Remplacez les espaces par des traits de
soulignement [ _ ].
C. Cliquez sur Enregistrer.

faire une copie du projet et


attribuer un nom diffrent
lautomate

A. Dans le menu Fichier, slectionnez


Enregistrer sous.
B. Tapez un nom pour le fichier de projet.
Remplacez les espaces par des traits de
soulignement [ _ ].
C. Cliquez sur Enregistrer.
D. Dans la fentre dorganisation de lautomate,
cliquez avec le bouton droit de la souris sur le
dossier Automate name_of_controller
et slectionnez Proprits.
E. Tapez un nouveau nom pour lautomate.
F. Cliquez sur OK.

Les noms sont chargs dans lautomate, mais pas la documentation


(descriptions, commentaires de ligne).
Pour modifier le nom, la taille du chssis ou le numro demplacement
de lautomate :
a. Dans la fentre dorganisation de lautomate, cliquez avec le bouton
droit de la souris sur le dossier Automate name_of_controller
et slectionnez Proprits.
b. Modifiez les informations qui doivent ltre.
c. Cliquez sur OK.

Publication 1756-PM001E-FR-P - Aot 2002

1-4

Gestion des fichiers de projet

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

Organisation des tches, programmes et


sous-programmes

Quand utiliser cette


procdure

Utilisez cette procdure pour effectuer les oprations suivantes :

Avant de commencer

Pour dterminer les langages de programmation intgrs la version de votre


logiciel RSLogix 5000 :

dfinir lorganisation gnrale de votre projet ;


choisir un langage de programmation pour chaque fonction importante
de votre machine ou de votre procd ;
crer des tches, des programmes et des sous-programmes dans lesquels
programmer votre logique.

1. Lancez le logiciel RSLogix 5000.


2. Dans le menu Help (Aide), slectionnez About RSLogix 5000 (A propos
de RSLogix 5000).
Pour ajouter un langage de programmation, voir ControlLogix - Guide de slection
(publication 1756-SG001).

Comment utiliser cette


procdure

Pour organiser votre projet en tches, programmes et sous-programmes,


suivez les tapes indiques ci-dessous :
Revoir la section Dfinitions
Planification des tches du projet
Utilisation de la fentre dorganisation de lautomate
Cration dune tche priodique
Cration dun programme
Cration dun sous-programme
Configuration dun sous-programme comme sous-programme principal
Vrification du projet

Publication 1756-PM001E-FR-P - Aot 2002

2-2

Organisation des tches, programmes et sous-programmes

Avant deffectuer les procdures prsentes dans ce chapitre, familiarisez-vous


avec les dfinitions suivantes.

Dfinitions

Tche continue

Tche

Programme

Sous-programme

Tche priodique

Sous-programme

Tche
Une tche fournit des informations de planification et de priorit pour un ou
plusieurs programmes qui sexcutent en fonction de critres particuliers. Une
fois quune tche est dclenche (active), tous les programmes attribus
(planifis) la tche sont excuts dans lordre dans lequel ils sont affichs
dans la fentre dorganisation de lautomate.

Tche continue
La tche continue est excute en arrire-plan. Tout temps processeur non
allou dautres oprations (telles que commande de mouvement,
communications et tches priodiques) est utilis pour lexcution des
programmes de la tche continue.
La tche continue est excute en permanence. Lorsquelle a termin
une scrutation complte, elle recommence immdiatement.
Un projet ne requiert pas de tche continue. Le cas chant, il ne peut y
avoir quune seule tche continue.

Publication 1756-PM001E-FR-P - Aot 2002

Organisation des tches, programmes et sous-programmes

2-3

Tche priodique
Une tche priodique excute une fonction une frquence donne.
Lorsque le dlai allou une tche priodique arrive terme, celle-ci
interrompt la tche continue, est excute une fois, puis redonne la
commande la tche continue, l o cette dernire a t interrompue.
Vous pouvez configurer lintervalle d1 ms 2000 s. La valeur par dfaut
est de 10 ms.
Vous pouvez crer jusqu 32 tches priodiques et attribuer une priorit
chacune delle :
la tche ayant la priorit la plus leve interrompt toutes les tches de
moindre priorit ;
une tche de haute priorit peut interrompre plusieurs fois une tche de
moindre priorit ;
les tches de mme priorit sont excutes par intervalles d1 ms.
Lexemple suivant dcrit lexcution dun projet comportant trois tches.
Ordre dexcution des tches pour un projet comportant deux tches priodiques et une tche
continue.

EXEMPLE

Tche

Type de tche

Priorit

Temps dexcution

priodique, toutes les 20 ms

2 ms

priodique, toutes les 10 ms

10

4 ms

continue

aucune (la plus faible)

24 ms

Lgende :
La tche est en
cours dexcution.
La tche est interrompue (suspendue).

Tche 1

Tche 2

Tche 3
5

10

15

20

25

30

35

40

45

50

temps coul (ms)

Publication 1756-PM001E-FR-P - Aot 2002

2-4

Organisation des tches, programmes et sous-programmes

Programme
Un programme est une subdivision dune tche. Lorsquune tche est
dclenche, les programmes planifis de la tche sont excuts intgralement
du premier au dernier. Chaque programme contient des points, un
sous-programme principal, dautres sous-programmes et un sous-programme
de gestion des dfauts en option.

Sous-programme
Les sous-programmes fournissent le code excutable pour le projet dun
automate (semblable un fichier programme dans un automate PLC ou SLC).
Chaque sous-programme utilise un langage de programmation particulier, tel
que la logique relais par exemple.

Sous-programme principal
Lorsquun programme est excut, son sous-programme principal est excut
en premier. Utilisez le sous-programme principal pour appeler (excuter)
dautres sous-programmes (secondaires). Pour appeler un autre
sous-programme dans le programme, utilisez une instruction JSR (Saut vers
sous-programme).

Planification des tches du


projet

Pour identifier les tches, les programmes et les sous-programmes de votre


logique, vous devez effectuer les tapes suivantes :
Dfinition des fonctions du projet
Attribution de chaque fonction une tche
Ces tapes sont en principe itratives. Aprs avoir effectu certains choix
initiaux, revoyez-les mesure que vous dveloppez votre projet.

Publication 1756-PM001E-FR-P - Aot 2002

Organisation des tches, programmes et sous-programmes

2-5

Dfinition des fonctions du projet


Lun des premiers choix faire pour dvelopper un projet Logix5000 est de
dfinir les fonctions (oprations) de votre machine ou de votre procd.
1. Identifiez les fonctions (oprations) importantes de votre machine ou de
votre procd.
2. Choisissez le langage de programmation qui correspond le mieux
chacune des fonctions.
Vous devrez peut-tre revoir votre liste de fonctions pour utiliser au
mieux les diffrents langages.
Vous pouvez utiliser nimporte quelle combinaison de langages dans
un mme projet.

En gnral, si la fonction ou le groupe de fonctions reprsente

Utilisez ce langage

une excution continue ou parallle de multiples oprations (non squentielles)

logique relais

des oprations boolennes ou sur bit


des oprations logiques complexes
un traitement de messages ou de communications
un asservissement machine
des oprations que le personnel de maintenance peut avoir interprter pour
dpanner la machine ou le procd
un procd continu et une commande de variateur

diagramme de blocs fonctionnels

un contrle de boucle
des calculs de dbit
une gestion de haut niveau de multiples oprations
des squences rptitives doprations

graphe de fonctionnement
squentiel (SFC)

un processus de traitement par lots


une commande de mouvement avec du texte structur
des commandes machine
des oprations mathmatiques complexes

texte structur

des calculs sur fichiers ou en boucle


le traitement de chanes ASCII ou de protocoles

Publication 1756-PM001E-FR-P - Aot 2002

2-6

Organisation des tches, programmes et sous-programmes

Attribution de chaque fonction une tche


Une fois que vous avez dfini les fonctions (oprations) dun projet, utilisez les
diffrentes options de la tche pour lancer lexcution de chaque fonction.
1. Dterminez le dclencheur pour chaque fonction (lorsque la fonction
doit tre excute).
2. Selon le dclencheur de la fonction, choisissez une tche dans laquelle
excuter la fonction :
Si une fonction est excute

Alors

une frquence rgulire (ex. : excution


dune boucle PID toutes les 100 ms)

attribuez la fonction un sous-programme


dans une tche priodique

trs rapidement
lorsquun vnement particulier ou un
ensemble de conditions logiques se
produisent

attribuez la fonction un sous-programme


dans la tche continue (MainTask)

en permanence
lorsquil se produit un dfaut suffisamment
grave pour que lautomate sarrte

attribuez la fonction un sous-programme


de gestion des dfauts
Voir Dveloppement dun
sous-programme de gestion des dfauts ,
page 19-1.

Publication 1756-PM001E-FR-P - Aot 2002

Organisation des tches, programmes et sous-programmes

Utilisation de la fentre
dorganisation de
lautomate

2-7

La fentre dorganisation de lautomate fournit une reprsentation graphique


dun projet. Pendant le dveloppement de votre projet, vous devez effectuer
les actions courantes suivantes :
Ouvrir et fermer un dossier
Ouvrir un sous-programme

Ouvrir et fermer un dossier


La fentre dorganisation de lautomate stocke les diffrents composants dun
projet dans des dossiers. Chaque dossier peut lui-mme contenir dautres
dossiers.

Pour ouvrir un dossier et en afficher le contenu (le dvelopper),


effectuez lune des actions suivantes :
cliquez deux fois sur le dossier ;
slectionnez le dossier et appuyez sur la touche ;
cliquez sur le signe +.

Pour fermer un dossier et en masquer le contenu (le rduire),


effectuez lune des actions suivantes :
cliquez deux fois sur le dossier ;
slectionnez le dossier et appuyez sur la touche ;
cliquez sur le signe .

Publication 1756-PM001E-FR-P - Aot 2002

2-8

Organisation des tches, programmes et sous-programmes

Ouvrir un sous-programme

Pour ouvrir un sous-programme, cliquez deux fois sur ce


sous-programme. Si un sous-programme est en gris,
vous ne pouvez pas louvrir.

Si un sous-programme ne souvre pas, regardez la ligne dtat du logiciel


RSLogix 5000 :
Si la ligne dtat indique

Alors

Failed to open the routine editor not installed (Echec de


louverture de la routine lditeur nest pas install)

Lditeur pour le langage du sous-programme nest pas install. Pour obtenir la liste des logiciels
disponibles, consultez le ControlLogix - Guide de slection (publication 1756-SG001).

Source not available


(La source nest pas disponible)

Pour ouvrir le sous-programme, il vous faut la cl source. Voir Utilisation de la protection de la


source du sous-programme , page 24-1.
Vous pouvez :
excuter le sous-programme ;
afficher les proprits du sous-programme ;
identifier les rfrences croises avec la logique dans le sous-programme.

IMPORTANT

Si la source dun sous-programme nest pas disponible,


nexportez pas le projet.
Un fichier dexportation (.L5K) contient uniquement
les sous-programmes dont le code source est
disponible.
Si vous exportez un projet dont le code source nest pas
disponible pour tous les sous-programmes, vous ne
pourrez pas rcuprer la totalit du projet.

Publication 1756-PM001E-FR-P - Aot 2002

Organisation des tches, programmes et sous-programmes

2-9

Une tche priodique excute une ou plusieurs fonctions une frquence


donne.

Cration dune tche


priodique

ATTENTION

Assurez-vous que lintervalle est plus long que la somme


des dures dexcution de tous les programmes attribus
la tche. Si lautomate dtecte le dclenchement dune tche
priodique alors quune tche est dj en cours, un dfaut
mineur se produit.

1.

1. Dans la fentre dorganisation de lautomate, cliquez avec le bouton


droit de la souris sur le dossier Tasks (Tches) et slectionnez New Task
(Nouvelle tche).

2.

3.
4.

5.
6.

2. Dans le champ Name (Nom), entrez un nom pour la tche.


3. Dans la liste Type, slectionnez Periodic (Priodique) (slection par
dfaut).
4. Dans la liste Watchdog (Chien de garde), entrez la dure du chien de
garde pour cette tche.

Publication 1756-PM001E-FR-P - Aot 2002

2-10

Organisation des tches, programmes et sous-programmes

5. Dans le champ Rate (Frquence), entrez la frquence laquelle vous


voulez que la tche soit excute.
6. Dans le champ Priority (Priorit), entrez la priorit de la tche.
7. Cliquez sur

Cration dun programme

Chaque tche requiert au moins un programme. Vous pouvez crer plusieurs


programmes pour une tche.

1.

1. Dans la fentre dorganisation de lautomate, cliquez avec le bouton


droit de la souris sur la tche qui doit excuter le programme et
slectionnez New Program (Nouveau programme).

2.

2. Dans le champ Name (Nom), tapez un nom pour le programme.


3. Cliquez sur

Publication 1756-PM001E-FR-P - Aot 2002

Organisation des tches, programmes et sous-programmes

Cration dun
sous-programme

2-11

Chaque programme requiert au moins un sous-programme. Utilisez un


sous-programme pour excuter votre logique.

1.

1. Dans la fentre dorganisation de lautomate, cliquez avec le bouton


droit de la souris sur le programme qui doit excuter le sous-programme
et slectionnez New Routine (Nouvelle routine).

2.

3.

2. Dans le champ Name (Nom), tapez un nom pour le sous-programme.


3. Dans la liste Type, slectionnez le langage de programmation pour le
sous-programme.
4. Cliquez sur

Publication 1756-PM001E-FR-P - Aot 2002

2-12

Organisation des tches, programmes et sous-programmes

Configuration dun
sous-programme comme
sous-programme principal

Chaque programme requiert un sous-programme principal. Le


sous-proramme principal est excut chaque fois que le programme est
excut.

1.

1. Dans la fentre dorganisation de lautomate, cliquez avec le bouton


droit de la souris sur le programme qui doit excuter le sous-programme
et slectionnez Properties (Proprits).

2.

3.

2. Cliquez sur longlet Configuration.


3. Dans la liste Main (Principal), slectionnez le nom du sous-programme.
4. Cliquez sur

Vrification du projet

Vrifiez rgulirement votre travail pendant la programmation de votre projet :


1. Dans la barre doutils suprieure de la fentre du logiciel RSLogix 5000,
cliquez sur licne

2. Si des erreurs sont indiques au bas de la fentre :


a. appuyez sur la touche [F4] pour aller la premire erreur ou au
premier avertissement ;
b. corrigez lerreur suivant la description donne dans la fentre des
rsultats (Results) ;
c. retournez ltape 1.
3. Pour afficher la fentre des rsultats, appuyez sur les touches [Alt] + [1].

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

Organisation des points

Planification des points

Les automates Logix5000 stockent les donnes dans des points (par
opposition des fichiers de donnes fixes ayant une adresse numrique). Avec
des points, vous pouvez :
organiser vos donnes pour quelles refltent vos machines
documenter (grce des noms de point) votre application mesure de
son dveloppement
Lorsque vous crez un point, vous attribuez les proprits suivantes :
Tableau 3.A Proprits des points
Proprit :

Description :

accs

dfinit quels sous-programmes peuvent accder aux


donnes

nom

identifie les donnes (Des points ayant des accs


diffrents peuvent avoir le mme nom.)

type de donnes

dfinit lorganisation des donnes : bit, nombre entier


ou nombre virgule flottante

Le tableau suivant numre les types de donnes les plus courants et indique
quand les utiliser.
Tableau 3.B Types de donnes

Pour :

Slectionnez :

quipement analogique en mode virgule flottante

REAL

quipement analogique en mode nombre entier (pour des


frquences dchantillonnage trs rapides)

INT

caractres ASCII

chane

bit

BOOL

compteur

COUNTER

point dE/S TOR

BOOL

nombre virgule flottante

REAL

nombre entier

DINT

squenceur

CONTROL

temporisateur

TIMER

Publication 1756-PM001E-FR-P - Aot 2002

3-2

Organisation des points

Servez-vous de ce tableau pour organiser vos donnes :


Pour :

Utilisez un :

un groupe dattributs communs


plusieurs machines

type de
Reportez-vous Cration dun
donnes dfini type de donnes dfini par
par lutilisateur lutilisateur , page 3-7.

un groupe de donnes de mme tableau


type
une valeur unique
un quipement dE/S

Rfrence :

Reportez-vous Cration dun


point , page 3-9.

un point
dlment unique

Les exemples suivants illustrent les diffrents niveaux auxquels vous pouvez
organiser vos donnes :

Points lment simple, page 3-2


Tableau une dimension, page 3-3
Tableau deux dimensions, page 3-4
Type de donnes dfini par lutilisateur et qui stocke une recette,
page 3-5
Type de donnes dfini par lutilisateur et stockant les donnes requises
pour faire tourner une machine., page 3-6

EXEMPLE

Points lment simple

quipements dE/S
analogiques

valeur entire
bit de stockage
compteur
temporisateur
quipement dE/S TOR

42364

Publication 1756-PM001E-FR-P - Aot 2002

Organisation des points

EXEMPLE

3-3

Tableau une dimension


Dans cet exemple, une seule instruction de temporisation calcule la dure de plusieurs tapes.
Chaque tape requiert une valeur de prslection diffrente. Toutes ces valeurs tant des donnes
de mme type (DINT), un tableau est utilis.

Pour dvelopper un tableau


et afficher ses lments,
cliquez sur le signe +.

Pour rduire un tableau


et masquer ses lments,
cliquez sur le signe .

Ce tableau comprend
six lments de type
de donnes DINT.

lments de
timer_presets

six DINT

42367

Publication 1756-PM001E-FR-P - Aot 2002

3-4

Organisation des points

EXEMPLE

Tableau deux dimensions


Une perceuse peut percer jusqu cinq trous dans un livre. La machine requiert une valeur
correspondant la position de chaque trou partir du bord avant du livre. Pour organiser ces
valeurs en configurations, on utilise un tableau bidimensionnel. Le premier indice indique le trou
auquel correspond la valeur et le second indice indique le nombre de trous percer (un cinq).
indice de deuxime dimension
0

Description

1,5

2,5

1,25

1,25

1,25

Position du premier trou partir du bord avant du livre

8,0

5,5

3,5

3,5

Position du deuxime trou partir du bord avant du livre

9,75

7,5

5,5

Position du troisime trou partir du bord avant du livre

9,75

7,5

Position du quatrime trou partir du bord avant du livre

9,75

Position du cinquime trou partir du bord avant du livre

0
1
indice de
premire
dimension

2
3
4
5

Dans la fentre Points, les lments sont dans lordre indiqu ci-dessous.

Ce tableau comprend
une grille
bidimensionnelle
dlments, six
lments par six
lments.

42367

La dimension de droite sincrmente


jusqu sa valeur maximum puis
recommence zro.
Lorsque la dimension de droite recommence zro,
la dimension de gauche sincrmente dune unit.

Publication 1756-PM001E-FR-P - Aot 2002

Organisation des points

3-5

Type de donnes dfini par lutilisateur et qui stocke une recette

EXEMPLE

Dans un systme plusieurs rservoirs, chaque rservoir peut excuter un ventail de recettes. Dans
la mesure o la recette ncessite une combinaison de types de donnes (REAL, DINT, BOOL,
etc.), on utilise un type de donnes dfini par lutilisateur.

Nom (du type de donnes) : TANK


Nom du membre :

Type de donnes :

temp

REAL

deadband

REAL

step

DINT

step_time

TIMER

preset

DINT[6]

mix

BOOL

Un tableau bas sur ce type de donnes ressemblerait ceci :

Tableau de recettes

Ce tableau comprend
trois lments du type
de donnes TANK.

Premire recette

Membres de la
recette

42368

Publication 1756-PM001E-FR-P - Aot 2002

3-6

Organisation des points

EXEMPLE

Type de donnes dfini par lutilisateur et stockant les donnes requises pour faire tourner une
machine.
Plusieurs stations de forage ncessitant la combinaison suivante de donnes, un type de donnes
dfini par lutilisateur est cr.

Nom (du type de donnes) : STATION_DE_FORAGE


Nom du membre :

Type de donnes :

part_advance

BOOL

hole_sequence

CONTROL

type

DINT

position_des_trous

REAL

depth

REAL

total_depth

REAL

Un tableau bas sur ce type de donnes ressemblerait ceci :

Tableau de perages

Ce tableau contient
quatre lments du
type DRILL_STATION
(poste de perage).

Premier perage

Donnes de perage

42583

Publication 1756-PM001E-FR-P - Aot 2002

Organisation des points

Cration dun type de


donnes dfini par
lutilisateur

3-7

Pour crer un type de donnes dfini par lutilisateur :

42195

1. Cliquez avec le bouton droit de la souris sur Dfini par lutilisateur (User
Defined) et slectionnez Nouveau type de donnes.

2.
3.

42196

4.

5.

6.

7.

2. Entrez un nom pour le type de donnes.


3. Tapez une description (facultatif).
4. Tapez le nom du premier membre.

Publication 1756-PM001E-FR-P - Aot 2002

3-8

Organisation des points

5. Spcifiez le type de donnes pour le membre. Voir Tableau 3.B


page 3-1.
Pour un tableau, utilisez le format suivant :
type_donnes[x]
o :
x correspond au nombre dlments du tableau.
Si le membre est un tableau de six DINT, tapez
DINT[6].

EXEMPLE

6. Pour afficher la (les) valeur (s) du membre dans un structure (base de


numration) diffrent, slectionnez le style.
7. Tapez une description pour le membre (facultatif).
8. Cliquez sur Appliquer.
9. Y a-t-il dautres membres ?
Si :

Alors :

Oui

Rptez les tapes 4 8

Non

Cliquez sur OK.

Notes :
Si vous incluez des membres qui reprsentent des quipements dE/S,
vous devez utiliser la logique relais pour copier les donnes entre les
membres de la structure et les points dE/S correspondants.
Reportez-vous Mise en buffer des E/S , page 12-1.
Lorsque vous utilisez les types de donnes BOOL, SINT ou INT, listez
les membres qui utilisent le mme type lun aprs lautre :
plus performant

Publication 1756-PM001E-FR-P - Aot 2002

moins performant

BOOL

BOOL

BOOL

DINT

BOOL

BOOL

DINT

DINT

DINT

BOOL

Organisation des points

3-9

Pour crer un point (y compris un tableau) :

Cration dun point

1. Dans le menu Logique, slectionnez Modifier points.

2.

42350

3.

4.

5.

2. Slectionnez un accs pour le point :


Si vous utilisez le point :

Slectionnez :

dans plus dun programme dans le


projet

nom_de_lautomate (automate)

comme producteur ou consommateur


dans un message
dans un seul programme dans le
projet

le programme qui utilisera le point

3. Tapez un nom pour le point.


4. Tapez le type de donnes :
Si le point :

Tapez :

nest pas un tableau (fichier)

type_de_donnes

est un tableau unidimensionnel

type_donnes[x]

est un tableau bidimensionnel

type_de_donnes[x,y]

est un tableau tridimensionnel

type_de_donnes[x,y,z]

o :
type_de_donnes est le type de donnes que le point ou le tableau
stocke. Voir Tableau 3.B page 3-1.
x est le nombre dlments dans la premire dimension.
y est le nombre dlments dans la deuxime dimension.
z est le nombre dlments dans la troisime dimension.
5. Tapez une description (facultatif).

Publication 1756-PM001E-FR-P - Aot 2002

3-10

Organisation des points

Cration de points laide


de Microsoft Excel

Vous pouvez galement utiliser un tableur tel que Microsoft Excel pour crer
et modifier des points. Vous profitez ainsi des fonctions ddition du tableur.
Pour crer des points laide dExcel :
1. Ouvrez le projet RSLogix 5000.
2. Crez plusieurs points. (Ceci permet de formater la feuille de calcul
Excel.)
3. Dans le menu Outils, slectionnez Exporter les points.

Les points sont


enregistrs dans ce
dossier.

4.

5.

42361

4. Notez le nom du fichier dexportation (nom_de_projet-Points).


5. Slectionnez laccs des points exporter. Si vous slectionnez Points du
programme (Program Tags), slectionnez les points de programme
exporter.
6. Cliquez sur Exporter.

Publication 1756-PM001E-FR-P - Aot 2002

Organisation des points

3-11

7. Dans Microsoft Excel, ouvrez le fichier dexportation.

TYPE

ACCS

NOM

POINT

DESCRIPTION

en_cycle

TYPE DE
DONNES
DINT

TYPE

ACCS

NOM

POINT

Programme
principal

alarme_convoyeur

BOOL

POINT

Programme
principal

convoyeur_sous_
tension

BOOL

POINT

Programme
principal

foreuse_1

STATION_DE_
FORAGE

POINT

Programme
principal

position_des_trous

REAL[6,6]

POINT

Programme
principal

machine_sous_
tension

BOOL

8.

9.

DESCRIPTION

TYPE DE
DONNES

10.

11.

8. Entrez POINT.
9. Identifiez laccs du point :
Si laccs est :

Alors :

automate

Laissez cette cellule vide.

programme

Entrez le nom du programme

10. Entrez le nom du point.


11. Entrez le type de donnes du point.
12. Rptez les tapes 8 11 pour chaque point supplmentaire.
13. Enregistrez et fermez le fichier. (Laissez-le au format .CSV.)
14. Dans le logiciel RSLogix 5000, menu Outils, slectionnez Importer les
points.
15. Slectionnez le fichier qui contient les points et cliquez sur Importer.
Les points sont imports dans le projet. La partie infrieure de la fentre
RSLogix 5000 affiche les rsultats.

Publication 1756-PM001E-FR-P - Aot 2002

3-12

Organisation des points

Vous pouvez configurer les points de faon ce quils communiquent


directement avec dautre automates :
Pour :

Utilisez un :

envoyer des donnes sur le fond de panier et le rseau


ControlNet intervalles spcifis

point produit

recevoir des donnes dun autre automate sur le fond de


panier ou le rseau ControlNet intervalles spcifis

point consomm

Si vous envisagez dutiliser des points produits ou consomms, vous


devez respecter des consignes supplmentaires pour organiser vos
points. Reportez-vous Communication avec un autre automate ,
page 14-1.
Les types de donnes de nombres entiers suivants sont galement
disponibles :
SINT (nombre entier de 8 bits)
INT (nombre entier de 16 bits)
En principe, les instructions convertissent des SINT ou INT en un
type de donnes optimal (gnralement une valeur DINT ou
REAL) durant lexcution. Cette conversion exigeant plus de temps et
de mmoire, minimisez lusage des types de donnes SINT et INT.

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

Conception dun graphe de fonctionnement


squentiel

Quand utiliser cette


procdure

Utilisez cette procdure pour dfinir un graphe de fonctionnement


squentiel (SFC) pour votre procd ou votre systme. Un SFC est une
sorte dorganigramme de votre procd. Il dfinit les tapes ou les tats par
lesquels votre systme passe. Utilisez le SFC pour :
organiser les spcifications fonctionnelles de votre systme ;
programmer et contrler votre systme comme une srie dtapes et de
transitions.
Lutilisation dun SFC pour dfinir votre procd vous donne les avantages
suivants :
un SFC tant une reprsentation graphique de votre procd, il est plus
facile organiser et lire quune version textuelle. De plus, le logiciel
RSLogix 5000 vous permet :
dajouter des remarques qui clarifient les tapes ou donnent des
informations importantes qui pourront tre utilises plus tard ;
dimprimer le SFC pour partager ses informations avec dautres
personnes.
Les automates Logix5000 acceptant les SFC, vous navez pas besoin
dentrer les spcifications une deuxime fois. Vous programmez votre
systme en mme temps que vous le dfinissez.
Lutilisation dun SFC pour programmer votre procd vous donne les
avantages suivants :
division graphique des procds en fonction de leurs parties logiques
principales (tapes) ;
excution rpte plus rapide de parties de votre logique ;
affichage lcran plus simple ;
temps de conception et de dbogage du programme rduit ;
dpannage plus rapide et plus simple ;
accs direct au point de la logique o une machine sest mise en dfaut ;
mises jour et amliorations simples.

Comment utiliser cette


procdure

Gnralement, le dveloppement dun SFC est un procd itratif. Si vous


prfrez, vous pouvez utiliser le logiciel RSLogix 5000 pour concevoir et
affiner votre SFC. Pour les procdures particulires sur la saisie dun SFC, voir
Programmation dun graphe de fonctionnement squentiel , page 5-1.

Publication 1756-PM001E-FR-P - Aot 2002

4-2

Conception dun graphe de fonctionnement squentiel

Quest-ce quun graphe de


fonctionnement
squentiel ?

Un graphe de fonctionnement squentiel (SFC) est semblable un


organigramme. Il utilise des tapes et des transitions pour effectuer des
oprations ou des actions particulires. La Figure 4.1 et la Figure 4.2 montrent
des lments dun SFC :
Figure 4.1 Exemple de SFC
Une tape reprsente une fonction principale de votre procd.
Elle contient les actions qui se droulent un moment, une phase
ou un point particulier.
Une action est lune des fonctions excutes par
une tape.

Une transition est la condition vraie ou fausse qui indique


au SFC quand passer ltape suivante.
Un qualificateur dtermine quand une action dmarre et
quand elle se termine.

Une branche simultane excute plusieurs tapes


simultanment.

Afficher ou masquer
une action.

Linstruction JSR appelle un sous-programme.


(suite la page suivante)

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

4-3

Figure 4.2 Exemple de SFC (suite de la page prcdente)


Une branche de slection permet de choisir
entre diffrents chemins dexcution.

Une zone de texte vous permet dajouter un texte descriptif ou


des remarques dans votre SFC.

Un arrt vous permet darrter et dattendre une commande


pour redmarrer.
Une liaison relie un lment un autre nimporte o dans le graphe. Cette liaison vous emmne
ltape conveyor (convoyeur), sur la Figure 4.1 de la page prcdente.

Publication 1756-PM001E-FR-P - Aot 2002

4-4

Conception dun graphe de fonctionnement squentiel

Conception dun SFC :


prsentation

Les tapes de conception dun SFC sont les suivantes :


Dfinition des tches
Choix du mode dexcution du SFC
Dfinition des tapes du procd
Organisation des tapes
Ajout dactions pour chaque tape
Description de chaque action en pseudocode
Choix dun qualificateur pour une action
Dfinition des conditions de transition
Transition aprs un dlai prdfini
Arrt dun quipement la fin dune tape
Garder un quipement actif dune tape une autre
Fin du SFC
Imbrication dun SFC
Configuration du retour au SE/JSR
Pause ou positionnement dun SFC
Les sections suivantes de ce chapitre dcrivent en dtails comment effectuer
chacune de ces actions.

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

Dfinition des tches

4-5

La premire tape du dveloppement dun SFC consiste sparer la


configuration et la rgulation des quipements des commandes de ces
quipements. Les automates Logix5000 vous permettent de diviser votre
projet en une tche continue et plusieurs tche priodique.
1. Organisez votre projet de la faon suivante :
Ces fonctions

Vont dans

configuration et rgulation des quipements

une tche priodique

mise dun quipement dans un tat particulier

un SFC dans une tche continue

squencement de lexcution de votre procd

2. Pour les fonctions qui vont dans une tche priodique, regroupez celles
qui ont des frquences dactualisation identiques. Crez une tche
priodique pour chaque frquence dactualisation.
Par exemple, vos quipements 2 tats peuvent requrir des
actualisations plus rapides que vos boucles PID. Utilisez des tches
priodiques pour chaque frquence dactualisation.
Lexemple suivant montre un projet comportant deux tches priodiques pour
la rgulation de moteurs, de vannes et de boucles de temprature. Le projet
utilise un SFC pour commander le procd.

EXEMPLE

Dfinition des tches

Cette tche (priodique) utilise des diagrammes de blocs


fonctionnels pour dmarrer ou arrter des moteurs ou pour
ouvrir ou fermer des vannes. Le SFC dans MainTask (tche
principale) commande ltat de chaque quipement. Les
diagrammes de blocs fonctionnels activent et maintiennent
cet tat.
Cette tche (priodique) utilise des diagrammes de blocs
fonctionnels pour configurer et rguler les boucles de
temprature. Le SFC dans MainTask (tche principale)
commande les tempratures. Les diagrammes de blocs
fonctionnels activent et maintiennent ces tempratures.
Cette tche (continue) excute le graphe de fonctionnement
squentiel (SFC). Le SFC commande ltat ou la temprature
spcifique pour chaque quipement ou boucle de
temprature.

Publication 1756-PM001E-FR-P - Aot 2002

4-6

Conception dun graphe de fonctionnement squentiel

Choix du mode dexcution


du SFC

Pour excuter un SFC, configurez-le comme le sous-programme principal dun


programme ou appelez-le comme un sous-programme secondaire.
Si

Alors

le SFC est le seul sous-programme dans le


programme

Configurez le SFC comme sous-programme


principal du programme.

le SFC appelle tous les autres


sous-programmes du programme
le programme requiert que les autres
sous-programmes soient excuts
indpendamment du SFC
Le SFC utilise des actions boolennes

1. Configurez un autre
sous-programme comme le
sous-programme principal du
programme.
2. Utilisez le sous-programme principal
pour appeler le SFC comme un
sous-programme.

Si le SFC utilise des actions boolennes, les autres logiques doivent tre
excutes indpendamment du SFC et doivent surveiller les bits dtat du SFC.

Dfinition des tapes du


procd

Une tape reprsente une fonction principale de votre procd. Elle contient
les actions qui se droulent un moment, une phase ou un point particulier.

Etape
Une tape est excute en continue
jusqu ce quune transition indique
au SFC de passer ltape suivante.

Actions
Faire ceci

MIX

puis faire cela

Transition
Si vrai, passer ltape suivante.
Si faux, rpter ltape prcdente.

Une transition termine une tape. Une transition dfinit les conditions
physiques qui doivent se produire ou changer pour passer ltape suivante.

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

4-7

Observez les directives suivantes


Conformez-vous aux directives suivantes lorsque vous dfinissez les tapes de
votre procd :
Commencez par des tapes gnrales et affinez-les ensuite par passages
successifs.
premier passage

deuxime passage

troisime passage

Peinture

Transf_Entr

Transf_Entr

Peinture

Dbit_Peint

Ventilation

Nettoyage

Nettoyage

Transf_Sort

Transf_Sort

Charg_Elec

Lorsque vous ouvrez un sous-programme SFC, il contient une tape et


une transition initiales. Utilisez cette tape pour initialiser votre procd.
tape initiale

transition initiale

Pour identifier une tape, recherchez un changement physique dans


votre systme, comme une nouvelle pice en position, une temprature
atteinte, un temps prdfini atteint ou la slection dune recette. Ltape
est constitue des actions qui se produisent avant ce changement.
Arrtez lorsque vos tapes sont constitues dincrments significatifs.
Par exemple :
Cette organisation des tapes

Est

produce_solution

probablement trop
gnrale

set_mode, close_outlet, set_temperature,


open_inlet_a, close_inlet_a, set_timer,
reset_temperature, open_outlet, reset_mode

probablement trop
prcise

preset_tank, add_ingredient_a, cook, drain

probablement correcte

Publication 1756-PM001E-FR-P - Aot 2002

4-8

Conception dun graphe de fonctionnement squentiel

Structure SFC_STEP
Chaque tape utilise un point donnant des informations sur cette tape. Pour
accder ces informations, utilisez la bote de dialogue Step Properties
(Proprits de ltape) ou longlet Monitor Tags (Surveillance des points) de la
fentre Tags (Points) :
Pour

Cochez ou activez Type de


ce membre
donnes

Explication

dterminer la dure
pendant laquelle une tape
a t active (en
millisecondes)

DINT

Lorsquune tape devient active, le temporisateur (T) est rinitialis et


commence compter en millisecondes. Il continue de compter jusqu
ce que ltape devienne inactive, quelle que soit la valeur prdfinie
(PRE).

indiquer quel moment


ltape a t active pendant
une dure dtermine (en
millisecondes)

PRE

DINT

Entrez lheure dans le membre Preset (PRE). Lorsque le temporisateur


(T) atteint la valeur prdfinie (PRE), le bit de fin (DN) est activ et le
reste jusqu ce que ltape redevienne active.

indiquer si une tape na


pas t excute assez
longtemps

Vous pouvez galement entrer une expression numrique qui calcule


la dure dexcution.
DN

BOOL

Lorsque le temporisateur (T) atteint la valeur prdfinie (PRE), le bit de


fin (DN) est activ et le reste jusqu ce que ltape redevienne active.

LimitLow

DINT

Entrez la dure dans le membre LimitLow (en millisecondes).


Si ltape devient inactive avant que le temporisateur (T)
natteigne la valeur de limite basse (LimitLow), le bit dalarme
basse (AlarmLow) est activ.
Le bit dalarme haute reste activ jusqu ce que vous le
rinitialisiez.
Pour utiliser cette fonction dalarme, activez (cochez) le bit
dactivation de lalarme (AlarmEn).
Vous pouvez galement entrer une expression numrique qui calcule
la dure dexcution.

indiquer si une tape est


excute trop longtemps

AlarmEn

BOOL

Pour utiliser les bits dalarme, activez (cochez) le bit dactivation de


lalarme (AlarmEn).

AlarmLow

BOOL

Si ltape devient inactive avant que le temporisateur (T) natteigne la


valeur de limite basse (LimitLow), le bit dalarme basse (AlarmLow) est
activ.
Le bit reste activ jusqu ce que vous le rinitialisiez.
Pour utiliser cette alarme, activez (cochez) le bit dactivation
dalarme (AlarmEn).

LimitHigh

DINT

Entrez la dure dans le membre LimitHigh (en millisecondes).


Si le temporisateur (T) atteint la valeur de limite haute
(LimitHigh), le bit dalarme haute (AlarmHigh) est activ.
Le bit dalarme haute reste activ jusqu ce que vous le
rinitialisiez.
Pour utiliser cette alarme, activez (cochez) le bit dactivation de
lalarme (AlarmEn).
Vous pouvez galement entrer une expression numrique qui calcule
la dure dexcution.

AlarmEn

BOOL

Pour utiliser les bits dalarme, activez (cochez) le bit dactivation


dalarme (AlarmEn).

AlarmHigh

BOOL

Si le temporisateur (T) atteint la valeur de limite haute (LimitHigh), le


bit dalarme haute (AlarmHigh) est activ.
Le bit reste activ jusqu ce que vous le rinitialisiez.
Pour utiliser cette alarme, activez (cochez) le bit dactivation
dalarme (AlarmEn).

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

Pour

Cochez ou activez Type de


ce membre
donnes
BOOL

4-9

Explication

excuter une action


pendant que ltape est
active (y compris la
premire et la dernire
scrutation)

Le bit X est activ tant que ltape est active (en cours dexcution).

excuter une action une fois


lorsque ltape devient
active

FS

excuter une action


pendant que ltape est
active, sauf pendant la
premire et la dernire
scrutation

SA

BOOL

Le bit SA est activ lorsque ltape est active, except lors de la


premire et la dernire scrutation de ltape.

excuter une action une fois


lors de la dernire
scrutation de ltape

LS

BOOL

Le bit LS est activ lors de la dernire scrutation de ltape.

Pour ce faire, nous recommandons gnralement dutiliser une action


avec un qualificateur N Non stock.
BOOL

Le bit FS est activ lors de la premire scrutation de ltape.


Pour ce faire, nous recommandons gnralement dutiliser une action
avec un qualificateur P1 Impulsion (front montant).

Utilisez ce bit uniquement si vous faites ce qui suit : dans la bote de


dialogue Controller Properties (Proprits de lautomate), dans longlet
SFC Execution (Excution SFC), rglez la proprit Last Scan of Active
Step (Dernire scrutation de ltape active) sur Dont Scan (Ne pas
scruter) ou sur Programmatic reset (Rinitialisation par programme).
Pour ce faire, nous recommandons gnralement dutiliser une action
avec un qualificateur P0 Impulsion (front descendant).

dterminer la cible dune


instruction de
positionnement SFC (SFR)

Reset

BOOL

Une instruction de positionnement SFC (SFR) positionne le SFC une


tape ou un arrt indiqu(e) par linstruction.
Le bit de rinitialisation (Reset)indique quelle tape ou
quel arrt le SFC reprendra son excution.
Une fois que le SFC est de nouveau en cours dexcution, le bit
de rinitialisation est effac.

dterminer la dure
dactivation la plus longue
dune tape pendant lune
de ses excutions

TMax

DINT

Utilisez ceci pour effectuer des diagnostics. Lautomate efface cette


valeur seulement lorsque vous slectionnez Restart Position (Position
de redmarrage) de Restart at initial step (Redmarrer ltape
initiale) et que lautomate change de mode ou est mis hors tension
puis de nouveau sous tension.

dterminer si la valeur du
temporisateur (T) passe
une valeur ngative

OV

BOOL

Utilisez ceci pour effectuer des diagnostics.

Count

DINT

Il ne sagit pas du nombre de scrutations de ltape.


Le compteur augmente de un chaque fois que ltape devient
active.
Il augmente de nouveau seulement si ltape est devenue
inactive puis de nouveau active.
Le compteur nest rinitialis que si vous avez configur le SFC
pour quil redmarre ltape initiale. Avec cette
configuration, il est rinitialis lorsque lautomate passe du
mode Programme au mode Excution.

dterminer combien de fois


une tape est devenue
active

Publication 1756-PM001E-FR-P - Aot 2002

4-10

Conception dun graphe de fonctionnement squentiel

Pour
utiliser un point pour les
diffrents bits dtat de
cette tape

Cochez ou activez Type de


ce membre
donnes
Status

DINT

Explication
Pour ce membre

Utilisez ce bit

Reset

22

AlarmHigh

23

AlarmLow

24

AlarmEn

25

OV

26

DN

27

LS

28

SA

29

FS

30

31

Le diagramme suivant montre la relation entre les bits X, FS, SA et LS.

nom_tape.X

nom_tape.FS

nom_tape.SA

nom_tape.LS
premire scrutation

Publication 1756-PM001E-FR-P - Aot 2002

dernire scrutation

Conception dun graphe de fonctionnement squentiel

Organisation des tapes

4-11

Une fois que vous avez dfini les tapes de votre procd, organisez-les en
squences, en branches simultanes, en branches de slection ou en boucles.

Prsentation
Pour

Utilisez cette structure

Avec ces critres

excuter 1 ou plusieurs tapes en


squence :
une tape est excute de faon
rpte ;
la suivante est ensuite excute de
faon rpte.

Squence

Le SFC vrifie la transition la fin de ltape :


si vrai, le SFC passe ltape suivante ;
si faux, le SFC rpte ltape.

Choisir parmi des tapes


alternatives ou des groupes
dtapes en fonction des conditions
de la logique

Branche de slection

Il arrive quun chemin nait aucune


tape et seulement une transition. Ceci
permet au SFC de sauter la branche de
slection.
Par dfaut, le SFC vrifie de gauche
droite les transitions qui commencent
chaque chemin. Il prend le premier
chemin vrai.

Excuter une ou plusieurs tapes ou


pour sauter une ou plusieurs tapes
en fonction des conditions de la
logique

Si aucune transition nest vraie, le SFC


rpte ltape prcdente.
Le logiciel RSLogix 5000 vous permet de
changer lordre dans lequel le SFC
vrifie les transitions.
Excuter 2 tapes ou plus simultanment.
Branche simultane
Tous les chemins doivent tre termins pour
que le SFC continue.

Une seule transition termine la branche.

Revenir une tape prcdente.

Connectez la liaison ltape ou la


branche simultane laquelle vous
voulez aller.

Liaison avec une tape prcdente

Le SFC vrifie la transition de fin une


fois que la dernire tape de chaque
chemin a t excute au moins une
fois. Si la transition est fausse, le SFC
rpte ltape prcdente.

Neffectuez pas de liaison vers, partir


de ou lintrieur dune branche
simultane.

Publication 1756-PM001E-FR-P - Aot 2002

4-12

Conception dun graphe de fonctionnement squentiel

Voici quelques exemples de structures SFC pour diffrentes situations :


Exemple

Solution

Les stations 45 et 46 dune chane de montage travaillent


simultanment sur des pices. Lorsque les deux stations ont
termin, les pices descendent dune station.

Branche simultane

45

Selon le code de fabrication, une station perce ou polit.

46

Branche de slection

Percer

Pour simplifier ma programmation, je veux sparer les


communications et les blocs-transferts du reste de la logique de
commande. Tout se passe en mme temps.

Polir

Branche simultane

Contrle

Dans une zone de traitement thermique, la temprature augmente Squence


graduellement un rythme dfini, est maintenue pendant une
dure donne, puis baisse un rythme dfini.

Comm.

BT

Augmenter
Maintenir
Refroidir

A la station 12, la machine perce, taraude et boulonne une pice.


Les tapes se droulent lune aprs lautre.

Squence
Percer
Tarauder
Boulonner

Ltape 12 inspecte un procd pour vrifier que le mlange de


produits chimiques est correct.
Si le mlange est correct, passer aux tapes suivantes.
Si le mlange nest pas correct, revenir au dbut du SFC et
purger le systme.

Liaison
Dbut du SFC

Etape 12

Pas OK

Publication 1756-PM001E-FR-P - Aot 2002

OK

Conception dun graphe de fonctionnement squentiel

4-13

Squence
Une squence est un groupe dtapes excutes lune aprs lautre.
Faire ceci

PUIS ceci

PUIS ceci

Pour un diagramme dtaill de lexcution dune squence dtapes, voir la


Figure 4.5, page 4-46.
Pour contourner ltat dune transition, voir Forage des lments de la
logique , page 18-1.

Branche de slection
Une branche de slection reprsente un choix entre un chemin (tape ou
groupe dtapes) et un autre (structure OR).
Seul un chemin est excut.
Le SFC vrifie par dfaut les transitions de gauche droite :
le SFC prend le premier chemin vrai ;
le logiciel RSLogix 5000 vous permet de changer lordre dans lequel
le SFC vrifie les transitions. Voir Programmation dun graphe de
fonctionnement squentiel , page 5-1.

Publication 1756-PM001E-FR-P - Aot 2002

4-14

Conception dun graphe de fonctionnement squentiel

Ligne horizontale
unique
Chaque chemin possde
sa propre transition
Faire ceci

OU ceci

OU ceci

Ce chemin saute la
structure (ne fait rien).

Ligne horizontale
unique

Pour un diagramme dtaill de lexcution dune branche de slection, voir la


Figure 4.7, page 4-48.
Pour contourner ltat dune transition, voir Forage des lments de la
logique , page 18-1.

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

4-15

Branche simultane
Une branche simultane reprsente des chemins (tapes ou groupes dtapes)
excuts simultanment (structure AND).
Tous les chemins sont excuts.
Tous les chemins doivent tre termins pour que le SFC continue.
Le SFC vrifie la transition une fois que la dernire tape de chaque
chemin a t excute au moins une fois.

Une transition pour tous les chemins

Faire ceci

ET ceci

ET ceci

Ligne horizontale
double

Ligne horizontale
double

Pour un diagramme dtaill de lexcution dune branche simultane, voir la


Figure 4.6, page 4-47.
Pour contourner la branche et empcher lexcution dun chemin, voir
Forage des lments de la logique , page 18-1.

Publication 1756-PM001E-FR-P - Aot 2002

4-16

Conception dun graphe de fonctionnement squentiel

Liaison avec une tape prcdente


Outre relier des tapes en squences, branches simultanes et branches de
slection, vous pouvez relier une tape un point prcdent de votre SFC.
Vous pouvez ainsi :
revenir en arrire et rpter des tapes ;
revenir au dbut du SFC et recommencer.
Par exemple :

aller cette
tape

Si cette condition
est vraie

Boucle simple rptant la


totalit du SFC

Publication 1756-PM001E-FR-P - Aot 2002

Chemin dune branche de slection


revenant une tape prcdente

Conception dun graphe de fonctionnement squentiel

Ajout dactions pour


chaque tape

4-17

Utilisez les actions pour diviser une tape en diffrentes fonctions quelle
doit effectuer, comme commander un moteur, rgler ltat dune vanne ou
mettre un groupe dquipements dans un mode dfini.

Etape

Actions
Faire ceci

MIX
puis faire cela

Comment voulez-vous utiliser laction ?


Il existe deux types dactions :
Pour

Alors

excuter du texte structur directement dans le SFC

Utiliser une action non


boolenne

appeler un sous-programme
utiliser loption de rinitialisation automatique pour
rinitialiser les donnes en quittant une tape
activer seulement un bit et programmer une autre logique
pour surveiller ce bit et dterminer quand excuter

Utiliser une action boolenne

Utiliser une action non boolenne


Une action non boolenne contient la logique de laction. Elle utilise du texte
structur pour excuter des affectations et des instructions ou pour appeler un
sous-programme.
Avec des actions non boolennes, vous pouvez galement post-scrutation
(rinitialiser automatiquement) les affectations et les instructions avant de
quitter une tape :
pendant la post-scrutation, lautomate excute les affectations et les
instructions comme si toutes les conditions taient fausses ;
lautomate post-scrute le texte structur incorpor et tout
sous-programme appel par laction.
Pour rinitialiser automatiquement les affectations et les instructions, voir
Arrt dun quipement la fin dune tape , page 4-29.

Publication 1756-PM001E-FR-P - Aot 2002

4-18

Conception dun graphe de fonctionnement squentiel

Pour programmer une action non boolenne, vous avez plusieurs possibilits :
Pour
excuter votre logique sans
sous-programmes supplmentaires
utiliser des affectations, des
instructions de test et des
instructions en texte structur

Alors
Incorporez du texte structur.
Par exemple :

Lorsque ltape S_Complete_the_Batch est active, laction S_Open_Outlet est excute.


Laction rgle le point Outlet.ProgCommand sur 1, ce qui ouvre la vanne de sortie.
rutiliser la logique dans plusieurs
tapes
utiliser un autre langage pour
programmer laction, comme la
logique relais

Appelez un sous-programme.
Par exemple :

imbriquer un SFC
Lorsque ltape S_Complete_the_Batch est active, laction S_Open_Outlet est excute.
Laction appelle le sous-programme Open_Outlet.
Sous-programme Open_Outlet

Lorsque le sous-programme Open_Outlet est excut, linstruction OTE rgle le point


Outlet.ProgCommand sur 1, ce qui ouvre la vanne de sortie.

Vous ne pouvez pas rutiliser une action non boolenne dans le mme SFC,
sauf pour rinitialiser une action stocke. Une seule occurrence dune action
non boolenne est permise par SFC.

Utiliser une action boolenne


Une action boolenne ne contient pas la logique de laction. Elle ne fait
quactiver un bit dans son point (structure SFC_ACTION). Pour excuter
laction, une autre logique doit surveiller le bit et tre excute lorsque le bit est
activ.
Avec des actions boolennes, vous devez rinitialiser manuellement les
affectations et les instructions associs laction. Puisquil nexiste aucun lien
entre laction et la logique qui excutent laction, loption de rinitialisation
automatique naffecte pas les actions boolennes.

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

4-19

Voici un exemple :

Lorsque ltape S_Complete_the_Batch est active, laction S_Open_Outlet est excute.


Lorsque laction est active, son bit Q est activ.

Un sous-programme en logique relais surveille le bit Q (S_Open_Outlet.Q). Lorsque le bit Q


est activ, linstruction JSR est excute et ouvre la vanne de sortie.

Vous pouvez rutiliser une action boolenne plusieurs fois dans un mme SFC.

Structure SFC_ACTION
Chaque action (non boolenne et boolenne) utilise un point donnant des
informations sur cette action. Pour accder ces informations, utilisez la bote
de dialogue Action Properties (Proprits de laction) ou longlet Monitor Tags
(Surveillance des points) de la fentre Tags (Points) :
Pour
dterminer quand laction est
active

Cochez ou activez Type de


ce membre
donnes
Q

BOOL

Explication
Ltat du bit Q dpend de la nature de laction : boolenne ou non :
Si laction est

Le bit Q est

boolenne

activ (1) tant que laction est active, y


compris lors de la dernire scrutation de
laction

non boolenne

activ (1) lorsque laction est active, mais


dsactiv (0) lors de la dernire scrutation
de laction

Pour utiliser un bit afin de dterminer quand une action est active,
utilisez le bit Q.
A

BOOL

Le bit A est activ tant que laction est active.

dterminer la dure pendant


laquelle une action a t active
(en millisecondes)

DINT

Lorsquune action devient active, le temporisateur (T) est


rinitialis et commence compter en millisecondes. Il continue
de compter jusqu ce que laction devienne inactive, quelle que
soit la valeur prdfinie (PRE).

utiliser un de ces qualificateurs


temporels : L, SL, D, DS, SD

PRE

DINT

Entrez le dlai dans le membre Preset (PRE). Laction commence ou


sarrte lorsque le temporisateur (T) atteint la valeur prdfinie.
Vous pouvez galement entrer une expression numrique qui
calcule la dure dexcution.

Publication 1756-PM001E-FR-P - Aot 2002

4-20

Conception dun graphe de fonctionnement squentiel

Pour

Cochez ou activez Type de


ce membre
donnes

Explication

dterminer combien de fois une


action est devenue active

Count

DINT

Il ne sagit pas du nombre de scrutations de laction.


Le compteur augmente de un chaque fois que laction
devient active.
Il augmente de nouveau seulement si laction est devenue
inactive puis de nouveau active.
Le compteur nest rinitialis que si vous avez configur le
SFC pour quil recommence ltape initiale. Avec cette
configuration, il est rinitialis lorsque lautomate passe
du mode Programme au mode Excution.

utiliser un point pour les


diffrents bits dtat de cette
action

Status

DINT

Pour ce membre

Utilisez ce bit

30

31

Description de chaque
action en pseudocode

Pour organiser la logique dune action, vous devez dabord dcrire laction en
pseudocode. Si le pseudocode ne vous est pas familier, observez les directives
suivantes :
utilisez une srie dinstructions courtes qui dcrivent exactement ce qui
doit se produire ;
utilisez des termes et des symboles tels que : if, then, otherwise, until,
and, or, =, >, < (si, alors, sinon, jusqu, et, ou) ;
ordonnez les instructions en suivant lordre dans lequel elles doivent tre
excutes ;
si ncessaire, nommez les conditions vrifier en premier (quand 1re),
puis laction effectuer en deuxime (laquelle en 2e).
Entrez le pseudocode dans le corps de laction. Aprs avoir entr le
pseudocode, vous pouvez :
affiner le pseudocode pour quil excute en texte structur ;
utiliser le pseudocode pour concevoir votre logique et le laisser comme
commentaire. Tout commentaire de texte structur tant charg dans
lautomate, votre pseudocode est toujours disponible comme
documentation pour laction.
Pour convertir le pseudocode en commentaires de texte structur, ajoutez les
symboles de commentaire suivants :
Pour un commentaire

Utilisez lun des formats suivants

dune seule ligne

//commentaire

sur plusieurs lignes

(*dbut du commentaire . . .
fin du commentaire*)
/*dbut du commentaire . . .
fin du commentaire*/

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

Choix dun qualificateur


pour une action

4-21

Chaque action (boolenne ou non) utilise un qualificateur pour dterminer


quand elle dmarre et quand elle sarrte.
Le qualificateur par dfaut est Non-Stored (Non stock). Laction dmarre
lorsque ltape est active et sarrte lorsque ltape est dsactive.
Pour modifier le moment o une action dmarre ou sarrte, attribuez-lui un
qualificateur diffrent :

Tableau 4.1 Choix dun qualificateur pour une action


Si vous voulez que laction

Et

dmarre lorsque ltape est active

sarrte lorsque ltape est dsactive

Non stocke

ne soit excute quune fois

P1

Impulsion
(front
montant)

sarrte avant que ltape ne soit dsactive ou


lorsque ltape est dsactive

Limite dans
le temps

reste active jusqu ce quune action de


rinitialisation (Reset) la dsactive

Stocke

reste active jusqu ce quune action de


rinitialisation (Reset) la dsactive
ou quune dure dfinie ne ce soit coule, mme
si ltape est dsactive

SL

Stocke et
limite dans
le temps

dmarre au terme dun dlai prcis une fois


ltape active et tant que ltape est active

sarrte lorsque ltape est dsactive

Diffre

reste active jusqu ce quune action de


rinitialisation (Reset) la dsactive

DS

Diffre et
stocke

dmarre au terme dun dlai prcis une fois


ltape active, mme si ltape a t
dsactive avant lexpiration de ce dlai

reste active jusqu ce quune action de


rinitialisation (Reset) la dsactive

SD

Stocke et
diffre

soit excute une fois lorsque ltape est


active

soit excute une fois lorsque ltape est


dsactive

Impulsion

dmarre lorsque ltape est dsactive

ne soit excute quune fois

P0

Impulsion
(front
descendant)

Rinitialise

dsactive (rinitialise) une action stocke :


S Stocke
SL Stocke et limite dans le temps
DS Diffre et stocke
SD Stocke et diffre

Attribuez-lui ce
qualificateur

Ce qui
signifie

Publication 1756-PM001E-FR-P - Aot 2002

4-22

Conception dun graphe de fonctionnement squentiel

Dfinition des conditions


de transition

Une transition correspond aux conditions physiques qui doivent se produire


ou changer pour passer ltape suivante.

La transition indique au SFC quand passer


ltape suivante.

transition

Si vrai, passer ltape suivante.


Si faux, rpter ltape prcdente.

Les transitions se produisent aux endroits suivants :


Pour cette structure

Vrifiez que

squence

Une transition se trouve entre chaque tape.

tapes
transitions

branche de slection

Les transitions se trouvent entre les lignes horizontales.

transitions

branche simultane

Les transitions se trouvent en dehors des lignes horizontales.

transitions

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

4-23

Voici deux exemples de transitions :


EXEMPLE

Vous voulez :
a. dmarrer 2 compresseurs. Lorsquun compresseur
est dmarr, le bit Device1State est activ ;
b. lorsque les deux compresseurs sont dmarrs, passer
ltape suivante.
Solution :
Init
Init_Done

EXEMPLE

compressor_1.Device1State = activ (1)


et
compressor_2.Device1State = activ (1)

Vous voulez :
a. emballer le produit. Une fois le produit emball, le
bit package_done est activ.
b. emballer le produit raison de 8 ou de 16 par carton.
Solution :
Conditionnement

carton_8

carton_16
Pack_8

package_done = activ (1) et


carton_size = 8

Pack_16
package_done = activ (1) et
carton_size = 16

Pour contourner ltat dune transition, voir Forage des lments de la


logique , page 18-1.

Publication 1756-PM001E-FR-P - Aot 2002

4-24

Conception dun graphe de fonctionnement squentiel

Point de transition
Chaque transition utilise un point boolen pour reprsenter ltat vrai ou faux
de la transition.
Si la transition est

La valeur est

Et

vraie

Le SFC passe ltape suivante.

fausse

Le SFC poursuit lexcution de ltape


en cours.

Comment voulez-vous programmer la transition ?


Pour programmer la transition, vous avez plusieurs possibilits :
Pour

Alors

entrer les conditions comme expression en texte


structur

Utiliser une expression boolenne

entrer les conditions comme instructions dans un


autre sous-programme

Appeler un sous-programme

utiliser la mme logique pour plusieurs transitions

Utiliser une expression boolenne


La faon la plus simple de programmer la transition est dentrer les conditions
comme une expression boolenne en texte structur. Une expression
boolenne utilise des points boolens, des oprateurs de relation et des
oprateurs logiques pour comparer des valeurs ou vrifier si des conditions
sont vraies ou fausses. Par exemple, tag1>65.
Voici des exemples dexpressions boolennes :

bool_tag_a

Publication 1756-PM001E-FR-P - Aot 2002

bool_tag_a &
bool_tag_b

dint_tag_a > 8

Conception dun graphe de fonctionnement squentiel

4-25

Appeler un sous-programme
Pour utiliser un sous-programme afin de commander une transition, insrez
une instruction de fin de transition (EOT) dans le sous-programme.
Linstruction EOT renvoie ltat des conditions la transition, comme indiqu
ci-dessous.

3
1

- ou -

JSR

If condition_1 & condition_2 &


condition_3 then
BOOL_tag := 1;
Else
BOOL_tag := 0;
End_if;

EOT(BOOL_tag);

1. Appel dun sous-programme.


2. Vrification des conditions requises. Lorsque ces conditions sont vraies,
activation dun point BOOL.
3. Utilisation dune instruction EOT pour rgler ltat de la transition gal
la valeur du point BOOL. Lorsque le point BOOL est activ (vrai), la
transition est vraie.

Publication 1756-PM001E-FR-P - Aot 2002

4-26

Conception dun graphe de fonctionnement squentiel

Transition aprs un dlai


prdfini

Chaque tape du SFC comprend un temporisateur en millisecondes qui


fonctionne ds que ltape est active. Utilisez le temporisateur pour :
indiquer quand ltape a t excute pendant la dure requise et que le
SFC doit passer ltape suivante ;
indiquer quand ltape a t excute trop longtemps et que le SFC doit
passer une tape derreur.
Figure 4.3 Le diagramme suivant montre laction du temporisateur et des bits
associs dune tape :

nom_tape.X

nom_tape.PRE

nom_tape.T

nom_tape.DN

Description
1. Ltape devient active.
Le bit X est activ.
Le temporisateur (T) commence compter.
2. Le temporisateur atteint la valeur prdfinie (PRE) de ltape.
Le bit DN est activ.
Le temporisateur continue de compter.
3. Ltape devient inactive.
Le bit X est dsactiv.
Le temporisateur garde sa valeur.
Le bit DN reste activ.
4. Ltape devient active.
Le bit X est activ.
Le temporisateur est effac et commence compter.
Le bit DN est dsactiv.

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

4-27

Figure 4.4 Le diagramme suivant montre laction des alarmes haute et basse dune
tape :

nom_tape.AlarmEn
nom_tape.X
nom_tape.LimitHigh
nom_tape.LimitLow
nom_tape.T

nom_tape.AlarmHigh

nom_tape.AlarmLow

Description
1. Le bit AlarmEn est activ. Pour utiliser les alarmes haute et basse, activez ce bit.
Activez le bit laide de la bote de dialogue des proprits ou du point de ltape.
2. Ltape devient active.
Le bit X est activ.
Le temporisateur (T) commence compter.
3. Ltape devient inactive.
Le bit X est dsactiv.
Le temporisateur garde sa valeur.
Le temporisateur tant infrieur la limite basse (LimitLow), le bit AlarmLow est
activ.
4. Ltape devient active.
Le bit X est activ.
Le temporisateur est effac et commence compter.
Le bit AlarmLow reste activ (vous devez le dsactiver manuellement).
5. Le temporisateur atteint la valeur de limite haute (LimitHigh) de ltape.
Le bit AlarmHigh est activ.
Le temporisateur continue de compter.
6. Ltape devient inactive.
Le bit X est dsactiv.
Le temporisateur garde sa valeur.
Le bit AlarmHigh reste activ (vous devez le dsactiver manuellement).

Publication 1756-PM001E-FR-P - Aot 2002

4-28

Conception dun graphe de fonctionnement squentiel

Voici un exemple dutilisation du dlai prdfini pour une tape.


EXEMPLE

La spcification fonctionnelle indique :


a. cuire les ingrdients dans le rcipient pendant
20 secondes ;
b. vider le rcipient.
Solution :
Cuisson

Cuisson.PRE = 20 000 ms
Cuisson_termine

Cuisson.DN = activ (1)

Vider_Rcipient

Voici un exemple dutilisation de lalarme haute dune tape.


EXEMPLE

La spcification fonctionnelle indique :


a. mettre 8 quipements dans leur position de repos ;
b. si les 8 quipements ne sont pas dans leur position
de repos dans les 20 secondes, arrter le systme.
Solution :
Init

Init.LimitHigh = 20 000 ms

Init_OK

Init_Pas_OK
Etape_1

Publication 1756-PM001E-FR-P - Aot 2002

Arrt

Init.AlarmHigh

Conception dun graphe de fonctionnement squentiel

Arrt dun quipement la


fin dune tape

4-29

Lorsque le SFC quitte une tape, vous avez plusieurs options pour arrter les
quipements que ltape a dmarrs.

Rinitialisation automatique

Rinitialisation par programme

laisser lautomate
effacer
automatiquement les
donnes

utiliser la logique
pour effacer les
donnes

Pour chaque option, vous devez effectuer les choix suivants :


1. Choisir une option de dernire scrutation.
2. Suivant loption de dernire scrutation choisie, dvelopper votre logique
pour que la dernire scrutation remette les donnes aux valeurs
souhaites.

Choisir une option de dernire scrutation


A la dernire scrutation de chaque tape, vous avez plusieurs possibilits.
Loption choisie sapplique toutes les tapes de tous les SFC de cet automate.
Pour

Et la dernire scrutation dune tape

Alors

Voir

contrler les donnes


effacer

excuter uniquement les actions P et P0 et les


utiliser pour effacer les donnes requises

Utiliser loption de non scrutation

page 4-31

excuter toutes les actions et utiliser lune de Utiliser loption de rinitialisation par
ces options pour effacer les donnes requises : programme
bits dtat de ltape ou action pour
conditionner la logique ;
actions P et P0.
laisser lautomate effacer les
donnes

Utiliser loption de rinitialisation


automatique

page 4-32

page 4-34

Publication 1756-PM001E-FR-P - Aot 2002

4-30

Conception dun graphe de fonctionnement squentiel

Le tableau suivant compare les diffrentes options de traitement de la dernire


scrutation dune tape :
Caractristique

Pendant la dernire scrutation dune tape, cette option fait ce qui suit :
Dont scan
(Ne pas scruter)

Programmatic reset
Automatic reset
(Rinitialisation par programme) (Rinitialisation automatique)

excution des actions

Seules les actions P et P0 sont Toutes les actions sont


excutes en fonction de leur
excutes. Elles sont
excutes en fonction de leur logique.
logique.

Les actions P et P0 sont excutes


en fonction de leur logique.
Toutes les autres actions sont
excutes en mode post-scrutation.
Lors de la scrutation du
sous-programme la fois suivante, les
actions P et P0 sont excutes en
mode post-scrutation.

maintien des valeurs


des donnes

Toutes les donnes gardent


leurs valeurs en cours.

Toutes les donnes gardent


leurs valeurs en cours.

Les donnes reviennent leurs


valeurs pour la post-scrutation.
Les points gauche des affectations
[:=] sont mis zro.

mthode pour effacer


les donnes

Utilise les actions P et P0.

Utilise lune des options


suivantes :
les bits dtat de ltape
ou une action pour
conditionner la logique ;
les actions P et P0

Utilise lune des options suivantes :


une affectation [:=] (affectation non
rmanente)
des instructions qui effacent leurs
donnes pendant la post-scrutation

Un SFC imbriqu reste son


tape en cours.

Pour la proprit de Restart Position


(Position de redmarrage), si vous
slectionnez loption Restart at initial step
(Redmarrer ltape initiale), alors :
un SFC imbriqu est repositionn
son tape initiale ;
le bit X dun lment darrt, dans un
SFC, imbriqu est mis zro.

rinitialisation dun SFC Un SFC imbriqu reste son


imbriqu
tape en cours.

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

4-31

Utiliser loption de non scrutation


Loption par dfaut pour le traitement de la dernire scrutation dune tape est
Dont scan (Ne pas scruter). Avec cette option, toutes les donnes gardent leurs
valeurs en cours lorsque le SFC quitte ltape. Vous devez par consquent
utiliser des affectations ou des instructions supplmentaires pour effacer les
donnes que vous voulez dsactiver la fin dune tape.
Pour arrter un quipement la fin dune tape :
1. Vrifiez que loption Dont scan (Ne pas scruter) (option par dfaut) de la
proprit Last Scan of Active Steps (Dernire scrutation des tapes actives)
est slectionne.
2. Utilisez une action Impulsion P0 (front descendant) pour effacer les donnes
souhaites. Assurez-vous que laction ou les actions P0 sont les dernires
dans lordre des actions de ltape.
Pendant la dernire scrutation de ltape, loption Dont scan (Ne pas scruter)
excute uniquement les actions P et P0. Les affectations et les instructions des
actions sont excutes en fonction de leurs conditions dans la logique.
Lautomate nexcute pas de post-scrutation des affectations ou des
instructions.
Lorsque le SFC quitte ltape, toutes les donnes gardent leurs valeurs
en cours.
Lexemple suivant utilise une action pour dmarrer un convoyeur au dbut
dune tape. Une action diffrente arrte le convoyeur la fin de ltape.

EXEMPLE

Utiliser loption de non scrutation

Cette action dmarre le convoyeur. Lorsque conveyor_state est


activ, le convoyeur dmarre.
Avant que le SFC ne quitte ltape, laction P0 arrte le
convoyeur. Lors de la dernire scrutation de ltape,
conveyor_state est dsactiv, ce qui arrte le convoyeur.

Publication 1756-PM001E-FR-P - Aot 2002

4-32

Conception dun graphe de fonctionnement squentiel

Utiliser loption de rinitialisation par programme


Une autre mthode pour arrter (dsactiver) des quipements par programme
la fin dune tape consiste excuter toutes les actions pendant la dernire
scrutation de ltape. Ceci vous permet dexcuter votre logique normale et
darrter (dsactiver) les quipements la fin dune tape.
1. Slectionnez loption Programmatic reset (Rinitialisation par programme)
dans la fentre de proprits Last Scan of Active Steps (Dernire scrutation
des tapes actives).
2. Effacez les donnes requises de lune des faons suivantes :
ajoutez votre logique normale une logique qui efface les donnes
requises. Utilisez le bit LS de ltape ou le bit Q de laction pour
conditionner lexcution de la logique ;
utilisez une action Impulsion P0 (front descendant) pour effacer les
donnes requises. Assurez-vous que laction ou les actions P0 sont les
dernires dans lordre des actions de ltape.
Lors de la dernire scrutation de ltape, loption Programmatic reset
(Rinitialisation par programme) excute toutes les affectations et les
instructions en fonction des conditions de la logique.
Lautomate neffectue pas de post-scrutation des affectations ou des
instructions.
Lorsque le SFC quitte ltape, toutes les donnes gardent leurs valeurs
en cours.
Lexemple suivant utilise une seule action pour dmarrer et arrter un
convoyeur. Le bit LS de ltape conditionne lexcution de la logique. Voir
Structure SFC_STEP , page 4-8.

EXEMPLE

Utiliser loption de rinitialisation par programme et du bit LS

Tant que ltape nen est pas sa dernire scrutation


(conveyor_fwd.LS = 0), cette instruction active conveyor_state.
Lorsque conveyor_state est activ, le convoyeur dmarre.
Lors de la dernire scrutation de ltape (conveyor_fwd.LS = 1),
cette instruction dsactive conveyor_state. Lorsque
conveyor_state est dsactiv, le convoyeur sarrte.

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

4-33

Pour une action utilisant lun des qualificateurs stocks, utilisez le bit Q de
laction pour conditionner votre logique. Voir Structure SFC_ACTION ,
page 4-19.

EXEMPLE

Utiliser loption de rinitialisation par programme et du bit Q

Tant que laction nen est pas sa dernire scrutation


(conveyor_start.Q = 1), cette instruction active conveyor_state.
Lorsque conveyor_state est activ, le convoyeur dmarre.
Lors de la dernire scrutation de laction (conveyor_start.Q = 0),
cette instruction dsactive conveyor_state. Lorsque
conveyor_state est dsactiv, le convoyeur sarrte.

Vous pouvez aussi utiliser une action Impulsion P0 (front descendant) pour effacer
les donnes. Lexemple suivant utilise une action pour dmarrer un convoyeur
au dbut dune tape. Une action diffrente arrte le convoyeur la fin de
ltape.

EXEMPLE

Utiliser loption de rinitialisation par programme et dune action P0

Cette action dmarre le convoyeur. Lorsque conveyor_state est


activ, le convoyeur dmarre.
Avant que le SFC ne quitte ltape, laction P0 arrte le
convoyeur. Lors de la dernire scrutation de ltape,
conveyor_state est dsactiv, ce qui arrte le convoyeur.

Publication 1756-PM001E-FR-P - Aot 2002

4-34

Conception dun graphe de fonctionnement squentiel

Utiliser loption de rinitialisation automatique


Pour arrter (dsactiver) automatiquement un quipement la fin dune tape :
1. Slectionnez loption Automatic reset (Rinitialisation automatique) dans
la fentre de proprits Last Scan of Active Steps (Dernire scrutation des
tapes actives).
2. Pour arrter un quipement la fin dune tape, commandez ltat dun
quipement avec une affectation ou une instruction, telle que :
une affectation [:=] (affectation non rmanente) ;
une instruction dactivation de sortie (OTE) dans un
sous-programme.
Lors de la dernire scrutation de chaque tape, loption Automatic reset
(Rinitialisation automatique) :
excute des actions P et P0 en fonction de leurs conditions dans la
logique ;
efface les points situs gauche des affectations [:=] ;
excute une post-scrutation du texte structur incorpor ;
excute une post-scrutation de tout sous-programme appel par une
action au moyen dune instruction JSR (Saut vers sous-programme) ;
rinitialise tout SFC imbriqu (SFC appel par une action comme un
sous-programme).
IMPORTANT

La post-scrutation dune action a lieu lorsque laction passe


dactive inactive. Selon le qualificateur de laction, la
post-scrutation peut avoir lieu avant ou aprs la dernire
scrutation de ltape.

En rgle gnrale, la post-scrutation excute les instructions comme si toutes


les conditions taient fausses. Par exemple, linstruction dactivation de sortie
(OTE) efface ses donnes pendant la post-scrutation.
Certaines instructions ne suivent pas la rgle gnrale pendant la
post-scrutation. Pour une description du fonctionnement dune instruction
prcise pendant la post-scrutation, consultez les manuels suivants :
Automate Logix5000 - Jeu d'instructions - Manuel de rfrence
(publication 1756-RM003)
Logix5000 Controllers Process and Drives Instructions Reference Manual
(publication 1756-RM006)
Logix5000 Controllers Motion Instruction Set Reference Manual
(publication 1756-RM007)

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

4-35

Voici un exemple utilisant une affectation non rmanente pour commander un


convoyeur. Elle dmarre un convoyeur au dbut dune tape et larrte
automatiquement lorsque ltape est termine.

EXEMPLE

Effacement automatique des donnes

Cette action dmarre le convoyeur. Lorsque conveyor_state


est activ, le convoyeur dmarre.
Lorsque le SFC quitte ltape, conveyor_state est dsactiv,
ce qui arrte le convoyeur.

Garder un quipement actif Comment souhaitez-vous commander lquipement ?


dune tape une autre

Pour une commande sans -coups dun quipement plus dune fois ou dune
phase (tape), procdez comme suit :
Option

Exemple

Utiliser une branche simultane


Crez une tape spare qui commande
lquipement.

Transf_Entr

Peinture

Commande du
ventilateur

Nettoyage
Transf_Sort

Stocker et rinitialiser une action

Transf_Entr

Dmarrer le ventilateur

Notez ltape qui dmarre lquipement et celle


qui larrte.
Peinture
Dfinissez ensuite une action de stockage et de
rinitialisation pour commander lquipement.
Nettoyage
Transf_Sort

Arrter le ventilateur

Peinture

Transfrer, peindre,
nettoyer, transfrer,
commander le
ventilateur

Utiliser une grande tape


Utilisez une grande tape contenant toutes les
actions qui se droulent pendant que
lquipement est activ.

Publication 1756-PM001E-FR-P - Aot 2002

4-36

Conception dun graphe de fonctionnement squentiel

Utiliser une branche simultane


Une faon simple de commander un ou plusieurs quipements pendant une
tape ou plus consiste crer une tape spare pour les quipements et
utiliser ensuite une branche simultane pour excuter ltape pendant le reste
du procd.
Voici un exemple :

EXEMPLE

Une opration de peinture se dcompose comme suit :


1. transfert du produit dans latelier de peinture ;
2. peinture du produit avec 3 pistolets diffrents ;
3. nettoyage des pistolets.
4. transfert du produit dans ltuve.
Le systme doit commander les ventilateurs de latelier pendant toute la dure du procd.
Solution :

Transf_Entr

Dbit_Peint

Ventilation

Nettoyage
Transf_Sort

Publication 1756-PM001E-FR-P - Aot 2002

Charg_Elec

Commande du
ventilateur

Conception dun graphe de fonctionnement squentiel

4-37

Stocker et rinitialiser une action


En principe, une action sarrte (arrt de lexcution) lorsque le SFC passe
ltape suivante. Pour garder un quipement actif dune tape une autre sans
-coups, stockez laction qui commande lquipement :
1. Dans ltape qui dmarre lquipement, attribuez un qualificateur stock
laction qui commande lquipement. Pour consulter la liste des
qualificateurs stocks, voir le Tableau 4.1, page 4-21.
2. Dans ltape qui arrte lquipement, utilisez une action de
rinitialisation (Reset).
La figure suivante dcrit lutilisation dune action stocke.
S

Nom_de_laction
Action que vous souhaitez
excuter pendant
plusieurs tapes

Etape qui commence laction

Autres tapes

Etape qui arrte laction

Nom_de_laction
Mme nom que laction
stocke

Lorsque le SFC quitte ltape qui stocke laction, le logiciel RSLogix 5000
continue dindiquer laction stocke comme active (laction est entoure par
dfaut par un cadre vert). Ceci vous indique que le SFC excute la logique de
cette action.
Pour utiliser une action stocke, observez les directives suivantes :
Laction de rinitialisation (Reset) arrte uniquement laction stocke.
Elle narrte pas automatiquement les quipements de laction. Pour
arrter lquipement, faites suivre laction Reset par une autre action qui
arrte lquipement ou utilisez loption de rinitialisation automatique
(Automatic reset) dcrite page 4-34.
Faites attention lorsque vous effectuez des sauts entre une tape qui
stocke une action et une tape qui rinitialise cette action. Une fois que
vous avez rinitialis une action, elle dmarre uniquement lorsque vous
excutez ltape qui stocke cette action.

Publication 1756-PM001E-FR-P - Aot 2002

4-38

Conception dun graphe de fonctionnement squentiel

Dans lexemple suivant, les tapes 1 4 requirent un ventilateur en


fonctionnement. A la fin de ltape_4, le ventilateur est rinitialis
(arrt). Lorsque le SFC revient ltape_3, le ventilateur reste arrt.

tape_1

dmarrer le
ventilateur (stock)

tape_2

tape_3

tape_4

arrter le ventilateur
(rinitialiser)

Pour redmarrer le ventilateur, le SFC doit revenir ltape_1.

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

4-39

Utiliser une grande tape


Si vous utilisez une grande tape comportant plusieurs fonctions, utilisez une
logique supplmentaire pour ordonner les fonctions. Vous pouvez par exemple
imbriquer un SFC dans la grande tape.
Dans lexemple suivant, une tape dmarre un ventilateur, puis appelle un autre
SFC. Le SFC imbriqu ordonne les fonctions restantes de ltape. Le
ventilateur reste en fonctionnement durant toutes les tapes du SFC imbriqu.

EXEMPLE

Utiliser une grande tape


Cette action dmarre un ventilateur :
fan.ProgProgReq permet au SFC de commander
ltat du ventilateur.
fan.ProgCommand dmarre le ventilateur.
Le ventilateur reste en fonctionnement pendant toute la
dure de ltape.
Cette action appelle un autre SFC. Le SFC ordonne les
fonctions restantes de ltape.

Pour de plus amples informations sur limbrication dun SFC, voir


Imbrication dun SFC , page 4-43.

Publication 1756-PM001E-FR-P - Aot 2002

4-40

Conception dun graphe de fonctionnement squentiel

Fin du SFC

Une fois quun SFC a termin sa dernire tape, il ne redmarre pas


automatiquement la premire tape. Vous devez indiquer au SFC ce quil doit
faire lorsquil termine sa dernire tape.

Que souhaitez-vous faire la fin du SFC ?


Pour

Faire ceci

revenir automatiquement une


tape prcdente

Relier la dernire transition au dbut de ltape


laquelle vous voulez aller.
Voir Liaison avec une tape prcdente , page 4-16.

arrter et attendre une


commande pour redmarrer

Utiliser un lment darrt.


Voir Utiliser un lment darrt , page 4-40.

Utiliser un lment darrt


Llment darrt vous permet darrter lexcution de la totalit dun SFC ou
du chemin dune branche simultane et dattendre pour redmarrer. Lorsquun
SFC atteint un lment darrt, voil ce qui se produit :
le bit X de llment darrt est activ. Ce signal indique que le SFC a
atteint llment darrt ;
lexcution dune partie ou de la totalit du SFC est arrte :
Si llment darrt est la fin

Alors

dune squence

le SFC sarrte compltement

dune branche de slection


dun chemin dans une branche simultane

EXEMPLE

seul ce chemin sarrte et le reste du SFC


continue son excution

Utiliser un lment darrt

Lorsque le SFC atteint la dernire_tape


et que procd_termin est vrai,
lexcution du SFC sarrte.

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

4-41

Redmarrer (positionner) le SFC


Une fois llment darrt atteint, vous avez plusieurs possibilits pour
redmarrer le SFC :
Si le SFC est

Et si loption slectionne dans


Last Scan of Active Step
(Dernire scrutation des tapes
actives) est

Alors

imbriqu (un autre SFC appelle ce


SFC comme un sous-programme)

Automatic reset (Rinitialisation


automatique)

A la fin de ltape qui appelle le SFC imbriqu, ce dernier est


automatiquement rinitialis :
le SFC imbriqu est repositionn son tape initiale ;
le bit X de llment darrt dans le SFC imbriqu est
mis zro.

Programmatic reset (Rinitialisation


par programme)
Dont scan (Ne pas scruter)
NON imbriqu (aucun SFC
nappelle ce SFC comme un
sous-programme)

1. Utilisez une instruction de positionnement SFC (SFR)


pour redmarrer le SFC ltape souhaite.
2. Utilisez la logique pour effacer le bit X de llment
darrt.
1. Utilisez une instruction de positionnement SFC (SFR)
pour redmarrer le SFC ltape souhaite.
2. Utilisez la logique pour effacer le bit X de llment
darrt.

Lexemple suivant dcrit lutilisation dune instruction de positionnement SFC


(SFR) pour redmarrer le SFC et effacer le bit X de llment darrt.

EXEMPLE

Redmarrer (positionner) le SFC


Si SFC_a_stop.X = activ (SFC_a atteint llment darrt) et SFC_a_reset = activ (moment de
rinitialisation du SFC), alors pour une scrutation (ons[0] = activ) :
Repositionner SFC_a ltape SFC_a_Step_1
SFC_a_stop.X = 0

Publication 1756-PM001E-FR-P - Aot 2002

4-42

Conception dun graphe de fonctionnement squentiel

Structure SFC_STOP
Chaque arrt utilise un point pour fournir les informations suivantes sur
llment darrt :
Pour

Cochez ou activez Type de


ce membre
donnes

dterminer quand le SFC a


atteint llment darrt

Dtails
Lorsque le SFC atteint llment darrt, le bit X est activ.

BOOL

Le bit X est effac si vous configurez les SFC pour


redmarrer ltape initiale et si lautomate passe du
mode Programme au mode Excution.
Dans un SFC imbriqu, le bit X est galement effac si
vous configurez les SFC pour une rinitialisation
automatique et si le SFC quitte ltape qui appelle le SFC
imbriqu.

dterminer la cible dune


instruction de positionnement
SFC (SFR)

Reset

BOOL

Une instruction de positionnement SFC (SFR) positionne le SFC


une tape ou un arrt indiqu(e) par linstruction.
Le bit de rinitialisation (Reset) indique quelle tape ou
quel arrt le SFC recommencera son excution.
Une fois que le SFC est de nouveau en cours dexcution,
le bit de rinitialisation est effac.

dterminer combien de fois un


lment darrt est devenu actif

Count

DINT

Il ne sagit pas du nombre de scrutations de larrt.


Le compteur augmente de un chaque fois que larrt
devient actif.
Il augmente de nouveau seulement si larrt est devenu
inactif puis de nouveau actif.
Le compteur nest rinitialis que si vous avez configur le
SFC pour quil recommence ltape initiale. Avec cette
configuration, il est rinitialis lorsque lautomate passe
du mode Programme au mode Excution.

utiliser un point pour les


diffrents bits dtat de cet arrt

Status

DINT

Pour ce membre

Utilisez ce bit

Reset

22

31

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

4-43

Lune des mthodes pour organiser votre projet consiste crer un SFC qui
fournit une vue densemble de votre procd. Chaque tape de ce SFC appelle
un autre SFC qui excute les procdures dtailles de ltape (SFC imbriqu).

Imbrication dun SFC

La figure suivante montre une faon dimbriquer un SFC. Dans cette mthode,
loption de dernire scrutation du SFC est Programmatic reset (Rinitialisation par
programme) ou Dont scan (Ne pas scruter). Si vous configurez le SFC avec
loption Automatic reset (Rinitialisation automatique), ltape 1 nest pas
ncessaire.
SFC_a

SFC_b

3
1. Rinitialisation du SFC imbriqu :
linstruction SFR redmarre le SFC_b ltape 1 : SFC_b_Step_1.
Chaque fois que SFC_a quitte cette tape, puis y revient, vous devez
rinitialiser SFC_b ;
laction efface galement le bit X de llment darrt.
2. Appel du SFC_b.
3. Arrt du SFC_b. Ceci active le bit X de llment darrt.
4. Utilisation du bit X de llment darrt pour indiquer que le SFC_b est
termin et quil est temps de passer ltape suivante.

Publication 1756-PM001E-FR-P - Aot 2002

4-44

Conception dun graphe de fonctionnement squentiel

Entre ou sortie de paramtres


Pour faire entrer ou sortir des paramtres dans un/dun SFC, placez un
sous-programme/lment de retour dans le SFC.
Paramtres
dentre

Paramtres
de retour

Configuration du retour au
SE/JSR

SFC_b

Un SFC excute par dfaut une tape ou un groupe dtapes simultanes, puis
revient au systme dexploitation (SE) ou au sous-programme appelant (JSR).

par dfaut

Vous pouvez laisser le SFC sexcuter jusqu ce quil atteigne une transition
fausse. Si plusieurs transitions sont vraies en mme temps, cette option rduit
le temps ncessaire pour aller ltape requise.
Utilisez loption Execute until FALSE transition (Excuter jusqu une transition
FAUSSE) uniquement quand :
1. Vous navez pas besoin de mettre jour les paramtres du
sous-programme appelant avant chaque tape. Les paramtres sont mis
jour uniquement lorsque le SFC revient au sous-programme appelant.
Voir Entre ou sortie de paramtres , page 4-44.
2. Une transition fausse se produit dans le chien de garde de la tche. Si le
temps ncessaire pour revenir un sous-programme appelant et pour
terminer la tche est suprieur au chien de garde, un dfaut majeur se
produit.
Pour un diagramme dtaill de lexcution de chaque option, voir la Figure 4.9,
page 4-48.

Publication 1756-PM001E-FR-P - Aot 2002

Conception dun graphe de fonctionnement squentiel

Pause ou positionnement
dun SFC

4-45

Deux instructions vous permettent de commander plus prcisment


lexcution de votre SFC:
Pour

Utilisez cette instruction

mettre un SFC en pause

Pause SFC (SFP)

positionner un SFC une tape prcise ou larrter

Positionnement SFC (SFR)

Ces deux instructions sont disponibles dans les langages de programmation


logique relais et texte structur.
Pour de plus amples informations, utilisez lune des sources daide suivantes :
dans le menu Help (Aide) du logiciel RSLogix 5000, slectionnez
Instruction Help (Aide sur les instructions). Consultez la rubrique Program
Control Instructions (Instructions Contrle de Programme).
Voir Automate Logix5000 - Jeu d'instructions - Manuel de rfrence
(publication 1756-RM003).

Diagrammes dexcution

Les diagrammes suivants montrent lexcution dun SFC avec diffrentes


organisations dtapes ou diffrentes options dexcution. Pour bien
comprendre lexcution de votre SFC, utilisez ces diagrammes.
Pour le diagramme suivant

Voir page

Excution dune squence

4-46

Excution dune branche simultane

4-47

Excution dune branche de slection

4-48

Entre et sortie de paramtres dans un/dun SFC

4-48

Options de contrle dexcution (Execution Control)

4-48

Publication 1756-PM001E-FR-P - Aot 2002

4-46

Conception dun graphe de fonctionnement squentiel

Figure 4.5 Excution dune squence


Ceci

est excut ainsi

tape_1

tape_1

tran_1
tape_2

tran_1

faux

retour au
SE/JSR

tran_2
vrai
retour au
SE/JSR

dernire scrutation

tape_1

tape_2

tran_2

faux

retour au
SE/JSR

vrai
retour au
SE/JSR
tape_2

Publication 1756-PM001E-FR-P - Aot 2002

dernire scrutation

Conception dun graphe de fonctionnement squentiel

4-47

Figure 4.6 Excution dune branche simultane


Ceci

est excut ainsi


tape_1

tape_1

tran_1
tran_1
tape_2

faux

tape_3

retour au
SE/JSR

vrai
tran_2

retour au
SE/JSR

dernire scrutation

tape_1

tape_2

tape_3

tran_2
vrai

faux

retour au
SE/JSR
tape_2

tape_3

tran_2

faux

retour au
SE/JSR

vrai
retour au
SE/JSR
tape_2

dernire scrutation
tape_3

Publication 1756-PM001E-FR-P - Aot 2002

4-48

Conception dun graphe de fonctionnement squentiel

Figure 4.7 Excution dune branche de slection


Ceci

est excut ainsi


tape_1

tape_1
tran_2

tran_1
tape_2
tran_3

tran_1

tape_3
tran_4

faux

vrai
tran_2
retour au
SE/JSR

faux

retour au
SE/JSR

vrai
retour au
SE/JSR

tape_1

tape_1

tape_2

tape_3

tran_3

faux

retour au
SE/JSR

tran_4

vrai

vrai

retour au
SE/JSR

retour au
SE/JSR

tape_2

tape_3

Figure 4.8 Entre et sortie de paramtres dans un/dun SFC

paramtres dentre
tape_1

paramtres dentre
paramtres de retour

retour au
SE/JSR

faux

tran_1
vrai

paramtres de retour

paramtres dentre

retour au
SE/JSR
tape_1

dernire
scrutation

Figure 4.9 Options de contrle dexcution (Execution Control)

Publication 1756-PM001E-FR-P - Aot 2002

dernire
scrutation

faux

retour au
SE/JSR

dernire
scrutation

Conception dun graphe de fonctionnement squentiel

4-49

Ceci
tape_1
tran_1
tape_2
tran_2

est excut ainsi

Execute current active steps only


(Excuter uniquement les tapes actives en cours)
tape_1

tran_1

Execute until FALSE transition


(Excuter jusqu une transition FAUSSE)
tape_1

faux

retour au
SE/JSR

vrai

tran_1

faux

retour au
SE/JSR

vrai

retour au
SE/JSR
tape_1

tape_1

tape_2

tape_2

tran_2
vrai

faux

retour au
SE/JSR

tran_2

dernire
scrutation

faux

retour au
SE/JSR

vrai

retour au
SE/JSR
tape_2

tape_2

dernire
scrutation

Publication 1756-PM001E-FR-P - Aot 2002

4-50

Conception dun graphe de fonctionnement squentiel

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

Programmation dun graphe de


fonctionnement squentiel

Quand utiliser cette


procdure

Utilisez cette procdure pour entrer un graphe de fonctionnement


squentiel (SFC) dans le logiciel RSLogix 5000. Entrez le SFC mesure que
vous le concevez. Vous pouvez galement le concevoir dabord et lentrer
ensuite. Pour concevoir un SFC, voir Conception dun graphe de
fonctionnement squentiel , page 4-1.

Avant dutiliser cette


procdure

Vous devez savoir effectuer les tches suivantes :

Ouvrir et fermer un dossier

Cration dun sous-programme

Pour de plus amples informations sur lune de ces tches, voir Organisation
des tches, programmes et sous-programmes , page 2-1.

Comment utiliser cette


procdure

Les tapes de programmation dun SFC sont les suivantes :


Ajout dun lment SFC
Cration dune branche simultane
Cration dune branche de slection
Dfinition des priorits dune branche de slection
Retour une tape prcdente
Modification du nom dune tape
Configuration dune tape
Modification du nom dune transition
Programmation dune transition
Ajout dune action
Modification du nom dune action
Configuration dune action
Programmation dune action
Attribution de lordre dexcution des actions
Documenter un SFC
Afficher ou masquer les zones de texte ou les descriptions de points
Configuration de lexcution du SFC
Vrification du sous-programme

Publication 1756-PM001E-FR-P - Aot 2002

5-2

Programmation dun graphe de fonctionnement squentiel

Ajout dun lment SFC

Pour ajouter des lments SFC, utilisez la barre doutils SFC.

dbut de branche
de slection

tape et transition

dbut de branche
simultane
arrt

tape

nouveau
chemin

transition

sous-programme/retour
zone de texte

Pour ajouter un lment votre SFC, vous avez diffrentes options :


Ajouter et connecter manuellement des lments
Ajouter et connecter automatiquement des lments
Glisser-dplacer des lments

Ajouter et connecter manuellement des lments


1. Dans la barre doutils SFC, cliquez sur le bouton correspondant
llment que vous voulez ajouter.
2. Faites glisser llment vers lemplacement souhait dans le SFC.
Par exemple :

point vert

3. Pour relier (connecter) deux lments ensemble, cliquez sur la borne de


lun des lments A , puis sur celle de lautre lment B . Un point
vert indique un point de connexion valable.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun graphe de fonctionnement squentiel

5-3

Ajouter et connecter automatiquement des lments


1. Slectionnez (cliquez sur) llment auquel vous voulez connecter un
nouvel lment.
2. Llment tant toujours slectionn, cliquez sur le bouton
correspondant llment ajouter, dans la barre doutils.

Glisser-dplacer des lments


Dans la barre doutils SFC, faites glisser le bouton correspondant llment
requis vers le point de connexion souhait dans le SFC. Un point vert indique
un point de connexion valable.

point vert

Publication 1756-PM001E-FR-P - Aot 2002

5-4

Programmation dun graphe de fonctionnement squentiel

Cration dune branche


simultane

Commencer une branche simultane


1. Dans la barre doutils SFC, cliquez sur le bouton
. Faites ensuite
glisser la nouvelle branche vers lemplacement souhait.
2. Pour ajouter un chemin vers la nouvelle branche, slectionnez (cliquez
sur) la premire tape du chemin, gauche de lendroit o vous voulez
ajouter le nouveau chemin. Cliquez ensuite sur le bouton

A
B

point vert

3. Pour relier la branche simultane la transition prcdente, cliquez sur la


borne situe au bas de la transition A , puis sur la ligne horizontale de la
branche B . Un point vert indique un point de connexion valable.

Terminer une branche simultane


1. Slectionnez la dernire tape de chaque chemin de la branche. Pour
slectionner les tapes, vous pouvez :
cliquer et faire glisser le pointeur autour des tapes slectionner ;
cliquer sur la premire tape, maintenir la touche [Maj] enfonce, puis
cliquer sur les autres tapes slectionner.

2. Dans la barre doutils SFC, cliquez sur le bouton

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun graphe de fonctionnement squentiel

5-5

3. Ajoutez la transition qui suit la branche simultane.

B
A

point vert

4. Pour relier la branche simultane la transition, cliquez sur la borne


suprieure de la transition A , puis sur la ligne horizontale de la branche
B

Cration dune branche de


slection

. Un point vert indique un point de connexion valable.

Commencer une branche de slection


1. Dans la barre doutils SFC, cliquez sur le bouton
. Faites ensuite
glisser la nouvelle branche vers lemplacement souhait.
2. Pour ajouter un chemin vers la nouvelle branche, slectionnez (cliquez
sur) la premire transition du chemin gauche de lemplacement o
vous voulez ajouter le nouveau chemin. Cliquez ensuite sur le bouton
.

A
B

point vert

3. Pour relier la branche de slection ltape prcdente, cliquez sur la


borne infrieure de ltape A , puis sur la ligne horizontale de la
branche B . Un point vert indique un point de connexion valable.

Publication 1756-PM001E-FR-P - Aot 2002

5-6

Programmation dun graphe de fonctionnement squentiel

Terminer une branche de slection


1. Slectionnez la dernire transition de chaque chemin de la branche. Pour
slectionner les transitions, vous pouvez :
cliquer et faire glisser le pointeur autour des transitions
slectionner ;
cliquer sur la premire transition, maintenir la touche [Maj] enfonce,
puis cliquer sur les autres transitions slectionner.

2. Dans la barre doutils SFC, cliquez sur le bouton

3. Ajoutez ltape qui suit la branche de slection.

B
A

point vert

4. Pour relier la branche de slection ltape, cliquez sur la borne


suprieure de ltape A , puis sur la ligne horizontale de la branche B .
Un point vert indique un point de connexion valable.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun graphe de fonctionnement squentiel

Dfinition des priorits


dune branche de slection

5-7

Le SFC vrifie par dfaut de gauche droite les transitions qui commencent
une branche de slection. Si vous voulez vrifier une autre transition en
premier, attribuez une priorit chaque chemin de la branche de slection. Par
exemple, il est bon de commencer par vrifier les conditions derreur, puis de
vrifier les conditions normales.
Pour attribuer des priorits une branche de slection :
1. Cliquez avec le bouton droit de la souris sur la ligne horizontale qui
commence la branche et slectionnez Set Sequence Priorities (Dfinir les
priorits dune squence).

2.

3.
4.

2. Dsactivez (supprimez la coche) la case Use default priorities (Utiliser les


priorits par dfaut).
3. Slectionnez une transition.
4. Utilisez les boutons Move (Dplacer) pour augmenter ou diminuer la
priorit de la transition.
5. Lorsque toutes les transitions ont la priorit dsire, cliquez sur
.
Lorsque vous dsactivez (supprimez la coche) la case Use default priorities, des
nombres indiquent la priorit de chaque transition.

Publication 1756-PM001E-FR-P - Aot 2002

5-8

Programmation dun graphe de fonctionnement squentiel

Retour une tape


prcdente

Pour sauter une autre tape de votre SFC :


Connecter une liaison une tape
Masquer une liaison
Afficher une liaison masque

Connecter une liaison une tape


1. Cliquez sur la borne infrieure de la transition qui indique le saut, puis
sur la borne suprieure de ltape laquelle vous voulez aller. Un point
vert indique un point de connexion valable.
En principe, la connexion qui rsulte de cette opration soriente au
milieu de lorganigramme, ce qui la rend difficile voir.
2. Pour faciliter le lecture du saut, faites glisser la barre horizontale
au-dessus de ltape vers laquelle il est dirig. Vous devrez peut-tre
repositionner certains des lments du SFC.
Par exemple, pour aller Step_001 partir de Tran_003 :

1.

2.
Faites glisser la barre horizontale ici.
Puis cliquez ici.

Cliquez ici.

point vert

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun graphe de fonctionnement squentiel

5-9

Masquer une liaison


Si une liaison gne la lecture dautres lments de votre SFC, masquez-la pour
faciliter la lecture du SFC.
Pour masquer une liaison, cliquez sur la liaison avec le bouton droit de la souris
et slectionnez Hide Wire (Masquer la liaison).

Emplacement vers lequel va la liaison

Pour afficher llment du SFC vers lequel va la liaison, cliquez sur la grille au
niveau de la liaison.

Afficher une liaison masque


Pour afficher une liaison masque, cliquez avec le bouton droit de la souris sur
une partie visible de la liaison et slectionnez Show Wire (Afficher la liaison).

Liaison masque

Publication 1756-PM001E-FR-P - Aot 2002

5-10

Programmation dun graphe de fonctionnement squentiel

Modification du nom dune


tape

Chaque tape utilise un point pour stocker les informations sur sa


configuration et son tat. Pour renommer le point dune tape :
1. Cliquez sur le bouton

de ltape.

2. Cliquez sur longlet Tag (Point).

3.

3. Entrez le nouveau nom de ltape (point).


4. Cliquez sur

Configuration dune tape

Pour configurer une tape, vous avez diffrentes options :


Attribuer un temps de prslection une tape
Configurer des alarmes dans une tape
Utiliser une expression pour calculer une dure

Attribuer un temps de prslection une tape


1. Cliquez sur le bouton

de ltape.

2. Entrez la dure de ltape (en millisecondes).


3. Cliquez sur
Lorsque ltape est active pendant la dure prdfinie
(Timer = Preset), le bit DN de ltape est activ.
Pour calculer la dure prdfinie dexcution dune tape, voir Utiliser une
expression pour calculer une dure , page 5-11.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun graphe de fonctionnement squentiel

5-11

Configurer des alarmes dans une tape


Pour activer une alarme si une tape est excute trop ou pas assez longtemps :
1. Cliquez sur le bouton

de ltape.

2. Cochez la case AlarmEnable (Alarme active).


2.

3.
4.

3. Entrez le temps de dclenchement de lalarme haute (en millisecondes).


4. Entrez temps de dclenchement de lalarme basse (en millisecondes).
5. Cliquez sur
Pour calculer le temps de dclenchement dune alarme lors de lexcution, voir
Utiliser une expression pour calculer une dure , page 5-11.

Utiliser une expression pour calculer une dure


Pour calculer une dure sur la base des points de votre projet, entrez la dure
sous la forme dune expression numrique. Vous pouvez utiliser une
expression pour calculer les dures suivantes :
Preset (dure prdfinie)
LimitHigh (limite haute)
LimitLow (limite basse)
Pour entrer une dure comme une expression :
1. Cliquez sur le bouton

de ltape.

2. Slectionnez (cochez) la case Use Expression (Utiliser une expression).


2.

3.

Publication 1756-PM001E-FR-P - Aot 2002

5-12

Programmation dun graphe de fonctionnement squentiel

3. Cliquez sur le bouton Define (Dfinir).


rechercher un point

4.

choisir une fonction


choisir un oprateur
crer un point

5.

4. Entrez une expression numrique qui dfinit la dure.


Utilisez les boutons situs sur le ct de la bote de dialogue pour
vous aider complter lexpression.
Pour de plus amples informations sur les expressions numriques,
voir Expressions , page 6-4.
5. Cliquez sur
6. Pour fermer la bote de dialogue Step Properties (Proprits de ltape),
cliquez sur

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun graphe de fonctionnement squentiel

Modification du nom dune


transition

5-13

Chaque transition utilise un point pour stocker son tat. Pour renommer le
point dune transition :
1. Cliquez sur le bouton

de la transition.

2. Cliquez sur longlet Tag (Point).

3.

3. Entrez le nouveau nom de la transition (point).


4. Cliquez sur

Programmation dune
transition

Pour programmer une transition, vous avez diffrentes options :


Entrer une expression boolenne
Appeler un sous-programme

Entrer une expression boolenne


La faon la plus simple de programmer la transition est dentrer les conditions
sous la forme dune expression boolenne en texte structur. Pour de
plus amples informations sur les expressions boolennes, voir Expressions ,
page 6-4.
1. Cliquez deux fois sur la zone de texte de la transition.
2. Entrez lexpression boolenne qui dtermine quand la transition est
vraie ou fausse.
3. Pour fermer la fentre de saisie du texte, appuyez sur les touches
[Ctrl] + [Entre].

expression_boolenne

Publication 1756-PM001E-FR-P - Aot 2002

5-14

Programmation dun graphe de fonctionnement squentiel

Lexemple suivant montre trois transitions utilisant une expression boolenne.


EXEMPLE

Entrer une expression boolenne

Nom du point de
la transition

Expression boolenne qui commande quand


la transition est vraie ou fausse

Appeler un sous-programme
1. Cliquez sur la transition avec le bouton droit de la souris et slectionnez
Set JSR (Dfinir JSR).

2.

2. Choisissez le sous-programme contenant la logique de la transition.


3. Cliquez sur

JSR(nom_sous-programme)

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun graphe de fonctionnement squentiel

Ajout dune action

5-15

Pour ajouter une action une tape :

Cliquez avec le bouton droit de la souris sur ltape dans laquelle laction doit
tre excute et slectionnez Add Action (Ajouter une action).

Modification du nom dune


action

Pour modifier le nom dune action et lui attribuer un nom propre votre
application :
1. Cliquez sur le bouton

de laction.

2. Cliquez sur longlet Tag (Point).

3.

3. Entrez le nouveau nom de laction (point).


4. Cliquez sur

Publication 1756-PM001E-FR-P - Aot 2002

5-16

Programmation dun graphe de fonctionnement squentiel

Configuration dune action

Pour configurer une action, vous avez diffrentes options :


Changer le qualificateur dune action
Calculer une dure prdfinie dexcution
Marquer une action comme action boolenne

Changer le qualificateur dune action


Un qualificateur dtermine quand une action commence et quand elle se
termine. Le qualificateur par dfaut est N Non stock. Laction commence
lorsque ltape est active et sarrte lorsque ltape est dsactive. Pour de plus
amples informations, voir Choix dun qualificateur pour une action ,
page 4-21.
1. Cliquez sur le bouton

de laction.

2.
3.

2. Attribuez le qualificateur laction.


3. Si vous choisissez un qualificateur temporel, entrez la limite de temps ou
le dlai pour laction (en millisecondes). Les qualificateurs temporels
sont les suivants :
L Limit dans le temps
SL Stock et limit dans le temps
D Diffr
DS Diffr et stock
SD Stock et diffr
4. Cliquez sur

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun graphe de fonctionnement squentiel

5-17

Calculer une dure prdfinie dexcution


Pour calculer une valeur prdfinie sur la base des points de votre projet,
entrez la valeur sous la forme dune expression numrique.
1. Cliquez sur le bouton

de laction.

2. Slectionnez (cochez) la case Use Expression (Utiliser une expression).


2.

3.

3. Cliquez sur le bouton Define (Dfinir).


rechercher un point

4.

choisir une fonction


choisir un oprateur
crer un point

5.

4. Entrez une expression numrique qui dfinit la dure prdfinie.


Utilisez les boutons situs sur le ct de la bote de dialogue pour
vous aider complter lexpression.
Pour de plus amples informations sur les expressions numriques,
voir Expressions , page 6-4.
5. Cliquez sur
6. Pour fermer la bote de dialogue Action Properties (Proprits de laction),
cliquez sur

Marquer une action comme action boolenne


Utilisez une action boolenne pour activer un bit uniquement lorsque laction
est excute. Pour de plus amples informations, voir Utiliser une action
boolenne , page 4-18.
1. Cliquez sur le bouton

de laction.

Publication 1756-PM001E-FR-P - Aot 2002

5-18

Programmation dun graphe de fonctionnement squentiel

2.

2. Cliquez sur la case Boolean (Boolen).


3. Cliquez sur

Programmation dune
action

Pour programmer une action, vous avez diffrentes options :


Entrer un texte structur
Appeler un sous-programme

Entrer un texte structur


La faon la plus simple de programmer une action est dcrire la logique en
texte structur dans le corps de laction. Lorsque laction est active, lautomate
excute le texte structur.

1. Cliquez deux fois sur la zone de texte de laction.


2. Entrez le texte structur requis.
3. Pour fermer la fentre de saisie du texte, appuyez sur les touches
[Ctrl] + [Entre].

//commentaire
instruction;
instruction;

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun graphe de fonctionnement squentiel

5-19

Pour obtenir des informations sur le texte structur :


Pour ces informations sur le texte structur

Voir

informations gnrales sur les affectations, les oprateurs, les Programmation en texte structur , page 6-1
fonctions, les instructions ou les commentaires
Automate Logix5000 - Jeu d'instructions - Manuel de
rfrence (publication 1756-RM003)

informations sur une instruction particulire

Logix5000 Controllers Process and Drives Instructions


Reference Manual (publication 1756-RM006)
Logix5000 Controllers Motion Instruction Set Reference
Manual (publication 1756-RM007)

Appeler un sous-programme
Utilisez une instruction JSR (Saut vers sous-programme) pour excuter un
sous-programme lorsque laction est active.
1. Dans le SFC, cliquez avec le bouton droit de la souris sur la zone de
saisie du texte de laction et slectionnez Set JSR (Dfinir JSR).

2.

3.

4.

2. Choisissez le sous-programme que vous voulez appeler.


3. Pour faire entrer un paramtre dans le sous-programme, cliquez sur la
zone de texte vide Input Parameters (Paramtres dentre). Utilisez ensuite
la flche vers le bas pour slectionner le point qui contient le paramtre.
4. Pour recevoir un paramtre du sous-programme, cliquez sur la zone de
texte vide Return Parameters (Paramtres de retour). Utilisez ensuite la
flche vers le bas pour choisir le point dans lequel vous voulez stocker le
paramtre provenant du sous-programme.
5. Cliquez sur

Publication 1756-PM001E-FR-P - Aot 2002

5-20

Programmation dun graphe de fonctionnement squentiel

Attribution de lordre
dexcution des actions

Les actions sont excutes dans lordre dans lequel elles apparaissent.
Par exemple :
Lorsque Step_003 est active, ses
actions sont excutes dans lordre
suivant :
1. Action_000
2. Action_001
3. Action_002

Pour changer lordre dexcution dune action, faites glisser laction


lemplacement souhait dans la squence. Une barre verte indique que
lemplacement est valable.
Par exemple :

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun graphe de fonctionnement squentiel

Documenter un SFC
Pour

Pour documenter un SFC, vous avez diffrentes options :


Et pour

Faites ceci

ajouter des informations gnrales sur


le SFC

Ajouter une zone de texte

renseigner sur une tape

Ajouter une zone de texte


-ouAjouter une description de point

renseigner sur une transition

charger la documentation dans lautomate

Ajouter des commentaires de texte structur

pouvoir afficher ou masquer la documentation

Ajouter une zone de texte


-ouAjouter une description de point

placer la documentation nimporte o dans le


SFC
renseigner sur une action

5-21

charger la documentation dans lautomate

renseigner sur un arrt

Ajouter des commentaires de texte structur


Ajouter une zone de texte
-ouAjouter une description de point

dautres lments (ex. : branche de


slection)

Ajouter des commentaires de texte structur


Utilisez le tableau suivant pour ajouter vos commentaires :
Pour ajouter un commentaire

Utilisez lun des formats suivants

dune seule ligne

//commentaire

la fin dune ligne de texte


structur

(*commentaire*)
/*commentaire*/

dans une ligne de texte structur

(*commentaire*)
/*commentaire*/

sur plusieurs lignes

(*dbut du commentaire . . .
fin du commentaire*)
/*dbut du commentaire . . .
fin du commentaire*/

Pour de plus amples informations, voir Commentaires , page 6-27.


Pour entrer les commentaires :

Publication 1756-PM001E-FR-P - Aot 2002

5-22

Programmation dun graphe de fonctionnement squentiel

1. Cliquez deux fois sur la zone de texte de laction.


2. Entrez les commentaires.
3. Pour fermer la fentre de saisie du texte, appuyez sur les touches
[Ctrl] + [Entre].

//commentaire
instruction;
instruction;

Ajouter une description de point


1. Cliquez sur le bouton

de llment.

2. Cliquez sur longlet Tag (Point).

3.

3. Entrez la description de llment (point).


4. Cliquez sur
5. Faites glisser la zone de description lemplacement souhait dans le
SFC.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun graphe de fonctionnement squentiel

5-23

Ajouter une zone de texte


Une zone de texte vous permet dajouter des remarques qui renseignent sur la
fonction dun lment du SFC (tape, transition, arrt, etc.). Vous pouvez
galement utiliser une zone de texte pour entrer des informations que vous
utiliserez plus tard. Par exemple :

1. Cliquez sur
Une zone de texte apparat.

2. Faites glisser la zone de texte prs de llment auquel elle se rapporte.


3. Cliquez deux fois sur la zone de texte et entrez votre remarque. Appuyez
ensuite sur les touches [Ctrl] + [Entre].
4. Comment souhaitez-vous que la zone de texte se comporte quand vous
dplacez des lments dans le SFC ?
Pour que la zone de texte

Alors

reste au mme endroit

Arrtez. Vous avez termin.

se dplace avec llment auquel elle


se rapporte

Allez ltape 5.

B
A
point vert

5. Cliquez sur la petite pingle dans la zone de texte, puis cliquez sur
llment du SFC auquel vous voulez lier la zone de texte. Un point vert
indique un point de connexion valable.

Publication 1756-PM001E-FR-P - Aot 2002

5-24

Programmation dun graphe de fonctionnement squentiel

Afficher ou masquer les


zones de texte ou les
descriptions de points

Vous pouvez afficher ou masquer les zones de texte et les descriptions des
points. Si vous choisissez dafficher les descriptions, la fentre du SFC affiche
uniquement la description des tapes, des transitions et des arrts (pas celle des
actions).
Pour afficher ou masquer les zones de texte ou les descriptions, vous pouvez :
Afficher ou masquer les zone de texte ou les descriptions
Masquer la description dun point individuel

Afficher ou masquer les zone de texte ou les descriptions


1. Dans le menu Tools (Outils), slectionnez Options.

2.

2. Sous SFC Editor (Editeur SFC), slectionnez Display (Afficher).


3. Slectionnez loption souhaite.
Pour

Alors

afficher les zones de texte et les descriptions

cochez la case correspondante

masquer les zones de texte et les descriptions dsactivez (supprimez la coche) la case
correspondante

4. Cliquez sur

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun graphe de fonctionnement squentiel

5-25

Masquer la description dun point individuel


Pour masquer la description dun lment particulier tout en affichant les
autres descriptions :
1. Cliquez sur le bouton
description.

de llment dont vous voulez masquer la

2. Cochez la case Never display description in routine (Ne jamais afficher la


description dans le sous-programme).

3. Cliquez sur
Pour afficher les autres descriptions, voir Afficher ou masquer les zone de
texte ou les descriptions , page 5-24.

Publication 1756-PM001E-FR-P - Aot 2002

5-26

Programmation dun graphe de fonctionnement squentiel

Configuration de
lexcution du SFC

Longlet SFC Execution (Excution du SFC) de la fentre des proprits de


lautomate vous permet de configurer les oprations suivantes :
ce quil faut faire lorsquune transition est vraie ;
o redmarrer aprs une transition en mode Excution ou une remise
en route aprs une coupure dalimentation ;
ce quil faut faire lors de la dernire scrutation dune tape.

1.

1. Dans la barre doutils Online (ou Offline), cliquez sur le bouton des
proprits de lautomate.
2. Cliquez sur longlet SFC Execution (Excution du SFC).
2.

3.

4.

5.

3. Choisissez si le SFC doit revenir ou non au SE/JSR si une transition est


vraie.
4. Choisissez o redmarrer le SFC aprs une transition en mode
Excution ou une remise en route aprs une coupure dalimentation.
5. Choisissez ce quil faut faire la dernire scrutation dune tape.
6. Cliquez sur

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun graphe de fonctionnement squentiel

Vrification du
sous-programme

5-27

Vrifiez rgulirement votre travail pendant la programmation de votre


sous-programme :
1. Dans la barre doutils suprieure de la fentre du logiciel RSLogix 5000,
cliquez sur licne

2. Si des erreurs sont indiques au bas de la fentre :


a. appuyez sur la touche [F4] pour aller la premire erreur ou au
premier avertissement ;
b. corrigez lerreur selon la description donne dans la fentre des
rsultats (Results) ;
c. retournez ltape 1.
3. Pour afficher la fentre des rsultats, appuyez sur les touches [Alt] + [1].

Publication 1756-PM001E-FR-P - Aot 2002

5-28

Programmation dun graphe de fonctionnement squentiel

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

Programmation en texte structur

Quand utiliser ce chapitre

Utilisez ce chapitre pour crire et saisir un texte structur pour :


un sous-programme en texte structur ;
une action dun graphe de fonctionnement squentiel (SFC) ;
une transition dun graphe de fonctionnement squentiel (SFC).

Syntaxe du texte structur

Le texte structur est un langage de programmation textuel qui utilise des


instructions pour dfinir ce qui doit tre excut.
le texte structur ne fait pas de distinction entre majuscules et
minuscules ;
utilisez des tabulations et des retours chariot (lignes spares) pour
faciliter la lecture de votre texte structur : ils nont aucun effet sur
lexcution du texte structur.
Le texte structur peut contenir les composants suivants :

Terme

Dfinition

Exemples

affectation
(voir page 6-2)

Utilisez une instruction daffectation pour attribuer des valeurs des


points.
Loprateur := est loprateur daffectation.
Terminez laffectation par un point-virgule ; .

point := expression;

expression
(voir page 6-4)

Une expression fait partie dune affectation complte ou dune


commande construite. Une expression se traduit par un nombre
(expression numrique) ou par un tat vrai ou faux (expression
boolenne).
Une expression contient les lments suivants :
des points

Zone nomme de la mmoire o les donnes sont


stockes (BOOL, SINT, INT, DINT, REAL, STRING).

valeur1

des immdiats

Constante.

des oprateurs

Symbole ou mnmonique qui dfinit une opration


dans une expression.

point1 + point2
point1 >= valeur1

des fonctions

Lorsquelle est excute, une fonction donne une


valeur. Mettez loprande dune fonction entre
parenthses.

fonction(point1)

Bien que leurs syntaxes soient similaires, les


fonctions diffrent des instructions dans la mesure
o les fonctions ne peuvent tre utilises que dans
des expressions, alors que les instructions ne
peuvent pas ltre.

Publication 1756-PM001E-FR-P - Aot 2002

6-2

Programmation en texte structur

Terme

Dfinition

Exemples

une instruction
(voir page 6-10)

Instruction autonome.
Dans une instruction, les oprandes sont entre parenthses.
Suivant linstruction, il peut y avoir aucun, un ou plusieurs oprandes.
Lorsquelle est excute, une instruction donne une ou plusieurs valeurs
qui font partie dune structure de donnes.
Terminez linstruction par un point-virgule ; .

instruction();
instruction(oprande);
instruction(oprande1,
oprande2,oprande3);

Bien que leurs syntaxes soient similaires, les instructions diffrent des
fonctions dans la mesure o les instructions ne peuvent pas tre
utilises dans des expressions, alors que les fonctions ne peuvent tre
utilises que dans des expressions.
des instructions
de test
(voir page 6-11)

Instructions conditionnelles utilises pour dclencher un code en texte


structur (dautres instructions).
Terminez la construction par un point-virgule ; .

IF...THEN
CASE
FOR...DO
WHILE...DO
REPEAT...UNTIL
EXIT

des
commentaires
(voir page 6-27)

Texte expliquant ce que fait une section en texte structur.


Utilisez les commentaires pour faciliter linterprtation du texte
structur.
Les commentaires naffectent pas lexcution du texte structur.
Les commentaires peuvent apparatre nimporte o dans le texte
structur.

//commentaire

Affectations

(*dbut du commentaire . .
. fin du commentaire*)
/*dbut du commentaire . .
. fin du commentaire*/

Utilisez une affectation pour changer la valeur stocke dans un point. La


syntaxe dune affectation est la suivante :
point := expression ;
o :
Composant

Description

point

reprsente le point qui obtient la nouvelle valeur


le point doit tre de type BOOL, SINT, INT, DINT ou REAL

:=

symbole de laffectation

expression

reprsente la nouvelle valeur attribuer au point

Publication 1756-PM001E-FR-P - Aot 2002

Si point est de ce type :

Utilisez ce type
dexpression :

BOOL

expression boolenne

SINT
INT
DINT
REAL

expression numrique

termine laffectation

Programmation en texte structur

6-3

Le point garde la valeur de laffectation jusqu ce quune autre en change la


valeur.
Lexpression peut tre simple, comme une valeur immdiate ou un autre nom
de point, ou complexe et inclure plusieurs oprateurs et/ou fonctions. Pour
plus de dtails, voir la section Expressions , page 6-4.

Spcification dune affectation non rmanente


Une affectation non rmanente est diffrente de laffectation standard dcrite
ci-dessus dans la mesure o le point dans une affectation non rmanente est
remis zro chaque fois que lautomate :
passe en mode Excution (Run) ;
quitte ltape dun SFC si vous avez configur le graphe pour une
rinitialisation automatique (Automatic reset) (ceci est valable uniquement si
vous intgrez laffectation dans laction de ltape ou si vous utilisez
laction pour appeler un sous-programme en texte structur au moyen
dune instruction JSR).
La syntaxe dune affectation non rmanente est la suivante :
point [:=] expression ;
o :
Composant

Description

point

reprsente le point qui reoit la nouvelle valeur


le point doit tre de type BOOL, SINT, INT, DINT ou REAL

[:=]

symbole de laffectation non rmanente

expression

reprsente la nouvelle valeur attribuer au point

Si point est de ce type :

Utilisez ce type
dexpression :

BOOL

expression boolenne

SINT
INT
DINT
REAL

expression numrique

termine laffectation

Publication 1756-PM001E-FR-P - Aot 2002

6-4

Programmation en texte structur

Attribution dun caractre ASCII une chane


Utilisez loprateur daffectation pour attribuer un caractre ASCII un
lment DATA dune de chane de caractres. Pour attribuer un caractre,
indiquez la valeur du caractre ou le nom du point et llment DATA. Par
exemple :
Ceci est correct

Ceci nest pas correct.

string1.DATA[0]:= 65;

string1.DATA[0] := A;

string1.DATA[0]:= string2.DATA[0];

string1 := string2;

Pour ajouter ou insrer des caractres dans une chane, utilisez lune des
instructions de chane ASCII suivantes :

Expressions

Pour

Utilisez cette instruction

ajouter des caractres la fin dune chane

CONCAT

insrer des caractres dans une chane

INSERT

Une expression est un nom de point, une quation ou une comparaison. Pour
crire une expression, utilisez lun des lments suivants :
nom du point qui stocke la valeur (variable) ;
nombre entrer directement dans lexpression (valeur immdiate) ;
fonctions telles que : ABS, TRUNC ;
oprateurs tels que : +, , <, >, And, Or.
Pour crire une expression, observez les rgles gnrales suivantes :
utilisez indiffremment des majuscules et des minuscules. Par exemple,
ces trois variantes de ET sont correctes : ET, Et, et ;
pour des besoins plus complexes, utilisez des parenthses pour
regrouper des expressions dans dautres expressions. Ceci facilite la
lecture de lexpression et vous permet de vous assurer quelle sera
excute dans lordre souhait. Voir Dtermination de lordre
dexcution , page 6-10.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation en texte structur

6-5

En texte structur, on utilise deux types dexpressions :


Expression boolenne : expression qui produit la valeur boolenne 1
(vrai) ou 0 (faux).
Une expression boolenne utilise des points boolens, des oprateurs
de relation et des oprateurs logiques pour comparer des valeurs ou
vrifier si des conditions sont vraies ou fausses. Par exemple,
point1>65.
Une expression boolenne simple peut tre compose un seul point
BOOL.
Gnralement, les expressions boolennes servent conditionner
lexcution dune autre logique.
Expression numrique : expression qui calcule une valeur de nombre
entier ou virgule flottante.
Une expression numrique utilise des oprateurs et des fonctions
arithmtiques, et des oprateurs sur bits. Par exemple, tag1+5.
Une expression numrique est souvent imbrique dans une expression
de comparaison. Par exemple, (tag1+5)>65.
Utilisez le tableau suivant pour choisir les oprateurs de vos expressions :
Pour

Alors

calculer une valeur arithmtique

Utilisation doprateurs et de fonctions arithmtiques ,


page 6-5.

comparer deux valeurs ou chanes

Utilisation doprateurs de relation , page 6-7.

vrifier si des conditions sont vraies ou fausses

Utilisation doprateurs logiques , page 6-8.

comparer les bits dans des valeurs

Utilisations doprateurs sur bits , page 6-9.

Utilisation doprateurs et de fonctions arithmtiques


Vous pouvez combiner plusieurs oprateurs et fonctions dans les expressions
arithmtiques.
Les oprateurs arithmtiques calculent les nouvelles valeurs.
Pour

Utilisez cet oprateur

Type de donnes optimal

addition

DINT, REAL

soustraction/ngation

DINT, REAL

multiplication

DINT, REAL

exposant (x la puissance y)

**

DINT, REAL

division

DINT, REAL

modulo

MOD

DINT, REAL

Publication 1756-PM001E-FR-P - Aot 2002

6-6

Programmation en texte structur

Les fonctions arithmtiques effectuent des oprations mathmatiques.


Indiquez une constante, un point non boolen ou une expression pour la
fonction.
Pour

Utilisez cette fonction

Type de donnes
optimal

valeur absolue

ABS (expression_numrique)

DINT, REAL

cosinus darc

ACOS (expression_numrique)

REAL

sinus darc

ASIN (expression_numrique)

REAL

tangente darc

ATAN (expression_numrique)

REAL

cosinus

COS (expression_numrique)

REAL

radians en degrs

DEG (expression_numrique)

DINT, REAL

logarithme naturel

LN (expression_numrique)

REAL

logarithme dcimal

LOG (expression_numrique)

REAL

degrs en radians

RAD (expression_numrique)

DINT, REAL

sinus

SIN (expression_numrique)

REAL

racine carre

SQRT (expression_numrique)

DINT, REAL

tangente

TAN (expression_numrique)

REAL

troncation

TRUNC
(expression_numrique)

DINT, REAL

Par exemple :
Utilisez ce format

Exemple
Pour cette situation

Ecrivez

valeur1 oprateur valeur2

Si "gain_4" et "gain_4_adj" sont des points DINT et


si votre spcification indique : Ajouter 15
"gain_4" et stocker le rsultat dans "gain_4_adj" .

gain_4_adj :=
gain_4+15;

oprateur valeur1

Si "alarme" et "high_alarm" sont des points DINT et


si votre spcification indique : Inverser
"high_alarm" et stocker le rsultat dans "alarm" .

alarm:=
-high_alarm;

fonction
(expression_numrique)

Si "overtravel" et "overtravel_POS" sont des points


DINT et si votre spcification indique : Calculer la
valeur absolue de "overtravel" et stocker le rsultat
dans "overtravel_POS" .

overtravel_POS :=
ABS(overtravel);

valeur1 oprateur
(fonction((valeur2+valeur3)/2)

Si "adjustment" et "position" sont des points DINT,


"sensor1" et "sensor2" des points REAL et si votre
spcification indique : Trouver la valeur absolue de
la moyenne de "sensor1" et de "sensor2", ajouter
"adjustment" et stocker le rsultat dans "position" .

position :=
adjustment +
ABS((sensor1 +
sensor2)/2);

Publication 1756-PM001E-FR-P - Aot 2002

Programmation en texte structur

6-7

Utilisation doprateurs de relation


Les oprateurs de relation comparent deux valeurs ou chanes pour fournir un
rsultat vrai ou faux. Le rsultat dune opration de relation est une valeur
boolenne :
Si la comparaison est

Le rsultat est

vraie

fausse

Utilisez les oprateurs de relation suivants :


Pour cette comparaison

Utilisez cet oprateur

Type de donnes
optimal

gal

DINT, REAL, STRING

infrieur

<

DINT, REAL, STRING

infrieur ou gal

<=

DINT, REAL, STRING

suprieur

>

DINT, REAL, STRING

suprieur ou gal

>=

DINT, REAL, STRING

diffrent de

<>

DINT, REAL, STRING

Par exemple :
Utilisez ce format

Exemple
Pour cette situation

Ecrivez

valeur1 oprateur valeur2

Si "temp" est un point DINT et si votre


IF temp<100 THEN...
spcification indique : Si "temp" est infrieure
100, alors

chane_de_caractres1
oprateur
chane_de_caractres2

Si "bar_code" et "dest" sont des chanes de


IF bar_code=dest THEN...
caractres et si votre spcification indique : Si
"bar_code" est gal "dest", alors

caractre1 oprateur
caractre2

Si "bar_code" est une chane de caractres et si IF bar_code.DATA[0]=65


votre spcification indique : Si
THEN...
"bar_code.DATA[0]" est gal "A", alors

Pour entrer un caractre ASCII directement


dans lexpression, entrez la valeur
dcimale du caractre.
point_bool :=
expressions_boolennes

Si "count" et "length" sont des points DINT,


"done" un point BOOL et si votre spcification
indique : si "count" est suprieur ou gal
"length", fin du comptage .

done := (count >=


length);

Publication 1756-PM001E-FR-P - Aot 2002

6-8

Programmation en texte structur

Evaluation des chanes


Les valeurs hexadcimales des caractres ASCII dterminent si une chane est
infrieure ou suprieure une autre chane.
Lorsque les deux chanes sont tries comme dans un rpertoire
tlphonique, lordre des chanes dtermine laquelle est suprieure.

i
n
f

r
i
e
u
r
e

s
u
p

r
i
e
u
r
e

Caractres ASCII

Codes Hex.

1ab

$31$61$62

1b

$31$62

$41

AB

$41$42

$42

$61

ab

$61$62

AB < B
a>B

Les chanes sont gales si leurs caractres concordent.


Les caractres sont sensibles aux majuscules/minuscules. Un A
majuscule ($41) nest pas gal un a minuscule ($61).
Pour trouver la valeur dcimale et le code hexadcimal dun caractre,
reportez-vous la dernire page de ce manuel.

Utilisation doprateurs logiques


Les oprateurs logiques vous permettent de vrifier si plusieurs conditions
sont vraies ou fausses. Le rsultat dune opration logique est une valeur
boolenne :
Si la comparaison est

Le rsultat est

vraie

fausse

Utilisez les oprateurs logiques suivants :

Publication 1756-PM001E-FR-P - Aot 2002

Pour

Utilisez cet oprateur

Type de donnes

ET logique

&, AND

BOOL

OU logique

OR

BOOL

OU exclusif logique

XOR

BOOL

complment logique

NOT

BOOL

Programmation en texte structur

6-9

Par exemple :
Utilisez ce format

Exemple
Pour cette situation

Ecrivez

pointBOOL

Si "photoeye" est un point BOOL et si votre


spcification indique : Si "photoeye_1" est
active, alors .

IF photoeye THEN...

NOT pointBOOL

Si "photoeye" est un point BOOL et si votre


spcification indique : Si "photoeye" est
dsactive, alors .

IF NOT photoeye THEN...

expression1 & expression2

Si "photoeye" est un point BOOL, "temp" un


point DINT et si votre spcification indique :
Si "photoeye" est active et "temp" infrieure
100, alors .

IF photoeye & (temp<100)


THEN...

expression1 OR expression2

Si "photoeye" est un point BOOL, "temp" un


point DINT et si votre spcification indique :
Si "photoeye" est active ou "temp" infrieure
100, alors .

IF photoeye OR (temp<100)
THEN...

expression1 XOR expression2

Si "photoeye1" et "photoeye2" sont des points IF photoeye1 XOR


photoeye2 THEN...
BOOL et si votre spcification indique : Si :
"photoeye1" est active pendant que
"photoeye2" est dsactive, ou
"photoeye1" est dsactive pendant que
"photoeye2" est active,
alors .

pointBOOL := expression1
& expression2

Si "photoeye1", "photoeye2" et "open" sont des


points BOOL et si votre spcification indique :
Si "photoeye1" et "photoeye2" sont actives,
rgler "open" sur vrai .

open := photoeye1 &


photoeye2;

Utilisations doprateurs sur bits


Les oprateurs sur bits traitent les bits dune valeur partir de deux valeurs.
Pour

Utilisez cet oprateur

Type de donnes
optimal

ET sur bits

&, AND

DINT

OU sur bits

OR

DINT

OU exclusif sur bits

XOR

DINT

complment sur bits

NOT

DINT

Par exemple :
Utilisez ce format

Exemple
Pour cette situation

valeur1 oprateur valeur2

Ecrivez

Si "input1", "input2" et "result1" sont des points DINT result1 := input1 AND
input2;
et si votre spcification indique : Calculer le
rsultat sur bits de "input1" et "input2" et stocker le
rsultat dans "result1" .

Publication 1756-PM001E-FR-P - Aot 2002

6-10

Programmation en texte structur

Dtermination de lordre dexcution


Les oprations que vous crivez dans une expression sont excutes dans un
ordre prdfini qui nest pas ncessairement de gauche droite.
Les oprations dordre identique sont excutes de gauche droite.
Si une expression contient plusieurs oprateurs ou fonctions, groupez
les conditions entre parenthses ( ) pour vous assurer que lexcution
se fait dans lordre souhait.
Ordre

Instructions

Opration

1.

()

2.

fonction ()

3.

**

4.

(ngation)

5.

NOT

6.

*, /, MOD

7.

+, (soustraction)

8.

<, <=, >, >=

9.

=, <>

10.

&, AND

11.

XOR

12.

OR

Les instructions en texte structur peuvent galement tre des instructions.


Pour connatre la liste des instructions disponibles en texte structur,
reportez-vous au tableau de reprage au dbut de ce manuel. Une instruction
en texte structur est excute chaque fois quelle est scrute. Une instruction
en texte structur imbrique dans une instruction de test est excute chaque
fois que les conditions de cette instruction de test sont vraies. Si les conditions
de linstruction de test sont fausses, les instructions y figurant ne sont pas
scrutes. Il nexiste pas dtat de ligne ou de transition qui dclenche
lexcution.
Ceci diffre des instructions de bloc fonctionnel qui utilisent EnableIn pour
dclencher lexcution. Les instructions en texte structur sont excutes
comme si EnableIn tait toujours activ.
Ceci diffre galement des instructions de logique relais qui utilisent ltat
dentre de la ligne pour dclencher lexcution. Certaines instructions de
logique relais sont excutes uniquement lorsque ltat dentre de la ligne
passe de faux vrai. Ce sont des instructions de logique relais de transition.
En texte structur, les instructions sont excutes chaque fois quelles sont
scrutes, moins quelles ne soient imbriques dans une instruction de test.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation en texte structur

6-11

Linstruction ABL, par exemple, est une instruction de transition en logique


relais. Dans cet exemple, linstruction ABL est excute lors dune scrutation
uniquement lorsque tag_xic passe deffac activ. Linstruction ABL nest pas
excute lorsque tag_xic reste activ ou lorsque tag_xic est effac.

En texte structur, si vous crivez cet exemple comme suit :


IF tag_xic THEN ABL(0,serial_control);
END_IF;
linstruction ABL est excute chaque scrutation pendant laquelle tag_xic est
activ, et pas seulement lorsque tag_xic passe deffac activ.
Si vous souhaitez que linstruction ABL soit excute uniquement lorsque
tag_xic passe deffac activ, vous devez conditionner linstruction en texte
structur. Utilisez une instruction dexcution sur front pour dclencher
lexcution.
osri_1.InputBit := tag_xic;
OSRI(osri_1);

IF (osri_1.OutputBit) THEN
ABL(0,serial_control);
END_IF;

Instructions de test
Pour

Les instructions de test peuvent tre programmes seules ou imbriques dans


dautres instructions de test.
Utilisez cette
construction

Disponible dans ces langages

Voir page

excuter une action si ou lorsque des


conditions particulires se produisent

IF...THEN

texte structur

6-12

slectionner laction excuter en fonction


dune valeur numrique

CASE...OF

texte structur

6-15

excuter une action un certain nombre de fois


avant den excuter une autre

FOR...DO

texte structur

6-18

WHILE...DO

texte structur

6-21

REPEAT...UNTIL

texte structur

6-24

poursuivre lexcution dune action tant que


certaines conditions sont vraies
poursuivre lexcution dune action jusqu ce
quune condition soit vraie

Publication 1756-PM001E-FR-P - Aot 2002

6-12

Programmation en texte structur

IF...THEN (SI... ALORS)

Utilisez linstruction de test IFTHEN pour excuter une action si ou


lorsque des conditions particulires se produisent.

Oprandes :
Texte structur
IF expression_boolenne
THEN

Oprande

<instruction>;

Type

Format

Entrez

BOOL

point
expression

un point ou une expression boolen(ne)


qui donne une valeur boolenne
(expression boolenne)

expression_
boolenne

END_IF;

Description : La syntaxe est la suivante :


IF expression_boolenne1
THEN
<instruction >;

.
.
.
facultatif

ELSIF
expression_boolenne2 THEN
<instruction>;

.
.
.
facultatif

instructions excuter lorsque


expression_boolenne1 est
vraie

instructions excuter lorsque


expression_boolenne2 est
vraie

ELSE
<instruction>;

.
.
.

instructions excuter lorsque


les deux expressions sont
fausses

END_IF;
Pour utiliser ELSIF ou ELSE, observez les directives suivantes :
1. Pour faire une slection dans plusieurs groupes dinstructions possibles,
ajoutez une ou plusieurs instructions ELSIF.
Chaque condition ELSIF reprsente un chemin alternatif.
Indiquez autant de chemins ELSIF que ncessaires.
Lautomate excute la premire condition IF ou ELSIF vraie et saute
les autres conditions ELSIF et la condition ELSE.
2. Pour excuter une action lorsque toutes les conditions IF ou ELSIF
sont fausses, ajoutez une instruction ELSE.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation en texte structur

6-13

Le tableau suivant prsente diffrentes combinaisons de IF, THEN, ELSIF et


ELSE.
Pour

Et

Utilisez cette instruction


de test

excuter une action si ou lorsque des


conditions sont vraies

ne rien faire si les conditions sont


fausses

IFTHEN

excuter une autre action si les


conditions sont fausses

IFTHENELSE

ne rien faire si les conditions sont


fausses

IFTHENELSIF

attribuer des instructions par dfaut si


toutes les conditions sont fausses

IFTHENELSIFELSE

choisir parmi des instructions (ou


groupes dinstructions) alternatives
en fonction des conditions dentre

Indicateurs arithmtiques : non affects


Conditions de dfaut : aucune
Exemple 1 : IFTHEN
Si vous voulez ceci

Entrez ce texte structur

Si rejette > 3, alors

IF rejects > 3 THEN

convoyeur = dsactiv (0)

conveyor := 0;

alarme = active (1)

alarm := 1;
END_IF;

Exemple 2 : IFTHENELSE
Si vous voulez ceci

Entrez ce texte structur

Si contact de direction du convoyeur = avant (1), alors

IF conveyor_direction THEN

voyant = teint
Sinon voyant = allum

light := 0;
ELSE
light [:=] 1;
END_IF;

Le symbole [:=] indique lautomate deffacer light chaque fois que lautomate :
passe en mode Excution (Run) ;
quitte ltape dun SFC si vous avez configur le graphe pour une
rinitialisation automatique (Automatic reset) (ceci est valable uniquement si
vous intgrez laffectation dans laction de ltape ou si vous utilisez
laction pour appeler un sous-programme en texte structur au moyen
dune instruction JSR).

Publication 1756-PM001E-FR-P - Aot 2002

6-14

Programmation en texte structur

Exemple 3 : IFTHENELSIF
Si vous voulez ceci

Entrez ce texte structur

Si dtecteur de niveau bas du sucre = bas (activ) et


dtecteur de niveau haut du sucre = pas haut (activ),
alors

IF Sugar.Low & Sugar.High THEN

vanne dentre = ouverte (active)

Sugar.Inlet [:=] 1;

Jusqu ce que dtecteur de niveau haut du sucre = haut


(dsactiv)

ELSIF NOT(Sugar.High) THEN


Sugar.Inlet := 0;
END_IF;

Le symbole [:=] indique lautomate deffacer Sugar.Inlet chaque fois que


lautomate :
passe en mode Excution (Run) ;
quitte ltape dun SFC si vous avez configur le graphe pour une
rinitialisation automatique (Automatic reset) (ceci est valable uniquement si
vous intgrez laffectation dans laction de ltape ou si vous utilisez
laction pour appeler un sous-programme en texte structur au moyen
dune instruction JSR).

Exemple 4 : IFTHENELSIFELSE
Si vous voulez ceci

Entrez ce texte structur

Si temprature du rservoir > 100

IF tank.temp > 200 THEN

alors pompe = lente


Si temprature du rservoir > 200

pump.fast :=1; pump.slow :=0; pump.off :=0;


ELSIF tank.temp > 100 THEN

alors pompe = rapide


Sinon pompe = arrte

pump.fast :=0; pump.slow :=1; pump.off :=0;


ELSE
pump.fast :=0; pump.slow :=0; pump.off :=1;
END_IF;

Publication 1756-PM001E-FR-P - Aot 2002

Programmation en texte structur

6-15

Utilisez linstruction de test CASE pour dterminer ce quil faut faire en


fonction dune valeur numrique.

CASE...OF
(EN FONCTION DE)
Oprandes :

Texte structur
CASE expression_numrique OF
slecteur1: instruction;
slecteurN: instruction;

Oprande

Type

Format

Entrez

expression_
numrique

SINT
INT
DINT
REAL

point
expression

un point ou une expression qui donne un


nombre (expression numrique)

slecteur

SINT
INT
DINT
REAL

immdiat

ELSE
instruction;
END_CASE;

IMPORTANT

mme type que


expression_numrique

Si vous utilisez des valeurs REAL, utilisez une plage de


valeurs pour un slecteur car il est plus probable quune
valeur REAL se trouve dans une plage de valeurs quelle ne
corresponde exactement une valeur prcise.

Description : La syntaxe est la suivante :


CASE expression_numrique OF

indiquez autant de
valeurs de slecteur
alternatives (chemins)
que ncessaire

slecteur1 : <instruction>;
.
.
.

instructions excuter lorsque


expression_numrique =
slecteur1

slecteur2 : <instruction>;

instructions excuter lorsque


expression_numrique =
slecteur2

.
.
.
slecteur3 : <instruction>;

.
.
.

instructions excuter lorsque


expression_numrique =
slecteur3

ELSE
<instruction>;
facultatif

.
.
.

instructions excuter lorsque


expression_numrique
nimporte quel slecteur

END_CASE;
Pour connatre les valeurs de slecteur correctes, reportez-vous au tableau page
suivante.

Publication 1756-PM001E-FR-P - Aot 2002

6-16

Programmation en texte structur

La syntaxe pour entrer la valeur du slecteur est la suivante :


Lorsque le slecteur est

Entrez

une valeur

valeur: instruction

plusieurs valeurs
diffrentes

valeur1, valeur2, valeurN : <instruction>


Utilisez une virgule (,) pour sparer chaque valeur.

une plage de valeurs

valeur1..valeurN : <instruction>
Utilisez des points (..) pour identifier la plage.

des valeurs diffrentes plus valeura, valeurb, valeur1..valeurN : <instruction>


une plage de valeurs

Indicateurs arithmtiques : non affects


Conditions de dfaut : aucune

Publication 1756-PM001E-FR-P - Aot 2002

Programmation en texte structur

6-17

Exemple
Pour

Entrez ce texte structur

Si numro de recette = 1, alors

CASE recipe_number OF

Ingrdient A sortie 1 = ouverte (1)

1:

Ingrdient B sortie 4 = ouverte (1)

Ingredient_A.Outlet_1 :=1;
Ingredient_B.Outlet_4 :=1;

Si numro de recette = 2 ou 3, alors

2,3:

Ingrdient A sortie 4 = ouverte (1)

Ingredient_A.Outlet_4 :=1;
Ingredient_B.Outlet_2 :=1;

Ingrdient B sortie 2 = ouverte (1)


Si numro de recette = 4, 5, 6 ou 7, alors

4..7:

Ingrdient A sortie 4 = ouverte (1)

Ingredient_A.Outlet_4 :=1;
Ingredient_B.Outlet_2 :=1;

Ingrdient B sortie 2 = ouverte (1)


Si numro de recette = 8, 11, 12 ou 13, alors

8,11-13

Ingrdient A sortie 1 = ouverte (1)

Ingredient_A.Outlet_1 :=1;
Ingredient_B.Outlet_4 :=1;

Ingrdient B sortie 4 = ouverte (1)


Sinon toutes les sorties = fermes (0)

ELSE
Ingredient_A.Outlet_1 [:=]0;
Ingredient_A.Outlet_4 [:=]0;
Ingredient_B.Outlet_2 [:=]0;
Ingredient_B.Outlet_4 [:=]0;
END_CASE;

Le symbole [:=] indique lautomate deffacer galement les points de sortie


chaque fois que lautomate :
passe en mode Excution (Run) ;
quitte ltape dun SFC si vous avez configur le graphe pour une
rinitialisation automatique (Automatic reset) (ceci est valable uniquement si
vous intgrez laffectation dans laction de ltape ou si vous utilisez
laction pour appeler un sous-programme en texte structur au moyen
dune instruction JSR).

Publication 1756-PM001E-FR-P - Aot 2002

6-18

Programmation en texte structur

Utilisez la boucle FORDO (POURFAIRE) pour excuter une action un


certain nombre de fois avant den excuter une autre.

FORDO (POUR FAIRE)


Oprandes :

Texte structur
FOR comptage:=
valeur_initiale TO
valeur_finale BY incrment
DO

Oprande

Type

Format

Description

comptage

SINT
INT
DINT

point

point pour le stockage de la position du


comptage pendant lexcution de la
boucle FORDO

valeur_
initiale

SINT
INT
DINT

point
expression
immdiat

doit donner un nombre


dfinit la valeur initiale pour le
comptage

valeur_
finale

SINT
INT
DINT

point
expression
immdiat

dfinit la valeur finale du comptage, ce


qui indique quand sortir de la boucle

incrment

SINT
INT
DINT

point
expression
immdiat

(facultatif) valeur dincrmentation du


comptage chaque passage dans la
boucle

<instruction>;
END_FOR;

Si vous nindiquez pas dincrment, le


comptage seffectue de 1 en 1.

IMPORTANT

Veillez ne pas trop rpter la boucle lors dune mme scrutation.


Lautomate nexcute aucune autre instruction du sous-programme tant
quil na pas termin la boucle.
Si le temps ncessaire pour terminer la boucle est suprieur au chien de
garde de la tche, un dfaut majeur se produit.
Utilisez plutt une autre instruction de test, telle que IF...THEN.

Description : La syntaxe est la suivante :


FOR comptage := valeur_initiale
TO valeur_finale
facultatif {

BY incrment

Si vous nindiquez pas dincrment, la


boucle est incrmente de 1 en 1

DO
<instruction>;
IF expression_boolenne
THEN
EXIT;
facultatif

END_IF;

END_FOR;

Publication 1756-PM001E-FR-P - Aot 2002

Sil y a des conditions pour lesquelles vous


voulez quitter la boucle avant quelle ne
soit termine, utilisez dautres
instructions, telles quune instruction de
test IF...THEN, pour conditionner une
instruction de sortie (EXIT).

Programmation en texte structur

6-19

Les diagrammes suivants montrent comment une boucle FOR...DO est


excute et comment une instruction EXIT quitte la boucle avant que cette
dernire ne soit termine.
Excute x
fois ?

Excute x
fois ?

oui

non

non

instruction 1
instruction 2
instruction 3
instruction 4

instruction 1
instruction 2
instruction 3
instruction 4

Sortir ?

reste du sous-programme

oui

oui

non
reste du sous-programme

La boucle FORDO est excute un certain


nombre de fois.

Pour arrter la boucle avant que le comptage


natteigne la dernire valeur, utilisez une instruction
de sortie (EXIT).

Indicateurs arithmtiques : non affects


Conditions de dfaut :
Un dfaut majeur se produit si

Type de dfaut

Code de dfaut

linstruction de test est excute en


boucle trop longtemps

Exemple 1 :
Si vous voulez ceci

Entrez ce texte structur

For subscript:=0 to 31 by 1 do
Effacer les bits 0 31 dans un tableau de bits :
1. Initialiser le point "subscript" en le mettant 0.
array[subscript] := 0;
2. Effacer "array[subscript]". Par exemple, lorsque
End_for;
"subscript" = 5, effacer "array[5]".
3. Ajouter 1 "subscript".
4. Si "subscript" est 31, rpter les tapes 2 et 3.
Sinon, arrter.

Publication 1756-PM001E-FR-P - Aot 2002

6-20

Programmation en texte structur

Exemple 2 :
Si vous voulez ceci

Entrez ce texte structur

SIZE(Inventory,0,Inventory_Items);
Un type de donnes dfini par lutilisateur (structure) stocke
les informations suivantes sur un article de votre inventaire :
For position:=0 to Inventory_Items - 1 do
numro didentification du code-barres de larticle
(donnes de type STRING)
If Barcode = Inventory[position].ID then
quantit darticles de ce type en stock (donnes de
Quantity := Inventory[position].Qty;
type DINT)
Un tableau correspondant la structure ci-dessus contient
Exit;
une entre pour chaque article de votre inventaire. Vous
End_if;
voulez rechercher un article prcis (utilisez son code-barres) et
en dterminer la quantit en stock.
End_for;
1. Chercher la taille (nombre darticles) du tableau
Inventory et stocker le rsultat dans
Inventory_Items (point DINT).
2. Initialiser le point position en le mettant 0.
3. Si Barcode correspond au numro didentification dun
article dans le tableau, alors :
a. rgler le point Quantity = Inventory[position].Qty.
Ceci indique la quantit darticles de ce type en
stock ;
b. arrter.
Barcode est une chane de caractres qui stocke le
code-barres de larticle que vous recherchez. Par
exemple, lorsque position = 5, comparer Barcode
Inventory[5].ID.
4. Ajouter 1 position.
5. Si position est (Inventory_Items -1), rpter les
tapes 3 et 4. Les numros darticles commenant 0,
le numro du dernier article correspond au nombre
darticles dans le tableau moins 1.
Sinon, arrter.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation en texte structur

6-21

Utilisez la boucle WHILEDO pour poursuivre lexcution dune action tant


que certaines conditions sont vraies.

WHILEDO
(TANT QUE FAIRE)
Oprandes :

Texte structur
WHILE expression_boolenne
DO

Oprande

<instruction>;

Type

Format

Entrez

BOOL

point
expression

un point ou une expression boolen(ne)


qui donne une valeur boolenne

expression_
boolenne

END_WHILE;

IMPORTANT

Veillez ne pas trop rpter la boucle lors dune mme scrutation.


Lautomate nexcute aucune autre instruction du sous-programme tant
quil na pas termin la boucle.
Si le temps ncessaire pour terminer la boucle est suprieur au chien de
garde de la tche, un dfaut majeur se produit.
Utilisez plutt une autre instruction de test, telle que IF...THEN.

Description : La syntaxe est la suivante :


WHILE expression_boolenne1
DO
<instruction>;

instructions excuter tant que


expression_boolenne1 est vraie

IF
expression_boolenne2
THEN
facultatif

EXIT;
END_IF;

Sil y a des conditions pour lesquelles vous


voulez quitter la boucle avant quelle ne
soit termine, utilisez dautres
instructions, telles quune instruction de
test IF...THEN, pour conditionner une
instruction de sortie (EXIT).

END_WHILE;

Publication 1756-PM001E-FR-P - Aot 2002

6-22

Programmation en texte structur

Les diagrammes suivants montrent comment une boucle WHILE...DO est


excute et comment une instruction EXIT quitte la boucle avant que cette
dernire ne soit termine.
fausse

expression
boolenne
vraie

expression
boolenne
vraie

instruction 1
instruction 2
instruction 3
instruction 4

instruction 1
instruction 2
instruction 3
instruction 4

Sortir ?

reste du sous-programme

fausse

oui

non
reste du sous-programme

Tant que expression_boolenne est vraie,


lautomate excute uniquement les instructions
de la boucle WHILEDO.

Pour arrter la boucle avant que les conditions ne


soient vraies, utilisez une instruction de sortie (EXIT).

Exemple 1 :
Si vous voulez ceci

Entrez ce texte structur

La boucle WHILE...DO value dabord ses conditions. Si les


conditions sont vraies, lautomate excute les instructions de
la boucle.

pos := 0;
While ((pos <= 100) & structarray[pos].value
<> targetvalue)) do

Ceci est diffrent de la boucle REPEAT...UNTIL dans la mesure


pos := pos + 2;
o la boucle REPEAT...UNTIL excute les instructions figurant
dans linstruction de test, puis dtermine si les conditions sont
String_tag.DATA[pos] := SINT_array[pos];
vraies avant dexcuter de nouveau les instructions. Les
end_while;
instructions dune boucle REPEAT...UNTIL sont toujours
excutes au moins une fois, alors que celles dune boucle
WHILE...DO peuvent ne jamais ltre.

Indicateurs arithmtiques : non affects


Conditions de dfaut :

Publication 1756-PM001E-FR-P - Aot 2002

Un dfaut majeur se produit si

Type de dfaut

Code de dfaut

linstruction de test est excute en


boucle trop longtemps

Programmation en texte structur

6-23

Exemple 2 :
Si vous voulez ceci

Entrez ce texte structur

Dplacer des caractres ASCII dun tableau SINT dans une


chane de caractres (dans un tableau SINT, chaque lment
garde un caractre). Arrter lorsque vous atteignez le retour
chariot.
1. Initialiser Element_number en le mettant 0.
2. Compter le nombre dlments dans SINT_array
(tableau contenant les caractres ASCII) et stocker le
rsultat dans SINT_array_size (point DINT).
3. Si le caractre au niveau de
SINT_array[element_number] = 13 (valeur dcimale du
retour chariot), alors arrter.
4. Rgler String_tag[element_number] = caractre au
niveau de SINT_array[element_number].
5. Ajouter 1 element_number. Ceci permet lautomate
de vrifier le caractre suivant dans SINT_array.
6. Dfinir le membre Longueur de String_tag =
element_number (ceci enregistre le nombre de
caractres dans String_tag jusqu ce caractre).
7. Si element_number = SINT_array_size, alors arrter
(vous avez atteint la fin du tableau et il ne contient pas
de retour chariot).
8. Aller ltape 3.

element_number := 0;
SIZE(SINT_array, 0, SINT_array_size);
While SINT_array[element_number] <> 13 do
String_tag.DATA[element_number] :=
SINT_array[element_number];
element_number := element_number + 1;
String_tag.LEN := element_number;
If element_number = SINT_array_size then
exit;
end_if;
end_while;

Publication 1756-PM001E-FR-P - Aot 2002

6-24

Programmation en texte structur

Utilisez la boucle REPEATUNTIL pour poursuivre lexcution dune


action jusqu ce que des conditions soient vraies.

REPEATUNTIL
(REPETER JUSQUA)
Oprandes :

Texte structur
REPEAT

Oprande

<instruction>;
UNTIL expression_boolenne

Type

Format

Entrez

BOOL

point
expression

un point ou une expression boolen(ne)


qui donne une valeur boolenne
(expression boolenne)

expression_
boolenne

END_REPEAT;

IMPORTANT

Veillez ne pas trop rpter la boucle lors dune mme scrutation.


Lautomate nexcute aucune autre instruction du sous-programme tant
quil na pas termin la boucle.
Si le temps ncessaire pour terminer la boucle est suprieur au chien de
garde de la tche, un dfaut majeur se produit.
Utilisez plutt une autre instruction de test, telle que IF...THEN.

Description : La syntaxe est la suivante :


REPEAT
<instruction>;

instructions excuter lorsque


expression_boolenne1 est fausse

IF expression_boolenne2
THEN
EXIT;
facultatif

END_IF;

UNTIL
expression_boolenne1
END_REPEAT;

Publication 1756-PM001E-FR-P - Aot 2002

Sil y a des conditions pour lesquelles vous


voulez quitter la boucle avant quelle ne
soit termine, utilisez dautres
instructions, telles quune instruction de
test IF...THEN, pour conditionner une
instruction de sortie (EXIT).

Programmation en texte structur

6-25

Les diagrammes suivants montrent comment une boucle REPEAT...UNTIL


est excute et comment une instruction EXIT quitte la boucle avant que cette
dernire ne soit termine.
instruction 1
instruction 2
instruction 3
instruction 4

expression boolenne

instruction 1
instruction 2
instruction 3
instruction 4

Sortir ?

vraie

oui

non

fausse

expression boolenne

vraie

reste du sous-programme
fausse
reste du sous-programme

Tant que expression_boolenne est fausse,


lautomate excute uniquement les instructions de
la boucle REPEATUNTIL.

Pour arrter la boucle avant que les conditions ne


soient fausses, utilisez une instruction de sortie (EXIT).

Exemple 1 :
Si vous voulez ceci

Entrez ce texte structur

pos := -1;
La boucle REPEAT...UNTIL excute les instructions figurant
dans linstruction de test, puis dtermine si les conditions sont
REPEAT
vraies avant dexcuter de nouveau les instructions.
pos := pos + 2;
Ceci est diffrent de la boucle WHILE...DO dans la mesure o
la boucle WHILE...DO value dabord ses conditions. Si les
conditions sont vraies, lautomate excute les instructions de
la boucle. Les instructions dune boucle REPEAT...UNTIL sont
toujours excutes au moins une fois, alors que celles dune
boucle WHILE...DO peuvent ne jamais ltre.

UNTIL ((pos = 101) OR


(structarray[pos].value = targetvalue))
end_repeat;

Indicateurs arithmtiques : non affects


Conditions de dfaut :
Un dfaut majeur se produit si

Type de dfaut

Code de dfaut

linstruction de test est excute en


boucle trop longtemps

Publication 1756-PM001E-FR-P - Aot 2002

6-26

Programmation en texte structur

Exemple 2 :
Pour

Entrez ce texte structur

Dplacer des caractres ASCII dun tableau SINT dans une


chane de caractres (dans un tableau SINT, chaque lment
garde un caractre). Arrter quand vous atteignez le retour
chariot.
1. Initialiser Element_number en le mettant 0.
2. Compter le nombre dlments dans SINT_array
(tableau contenant les caractres ASCII) et stocker le
rsultat dans SINT_array_size (point DINT).
3. Rgler String_tag[element_number] = caractre au
niveau de SINT_array[element_number].
4. Ajouter 1 element_number. Ceci permet lautomate
de vrifier le caractre suivant dans SINT_array.
5. Dfinir le membre Longueur de String_tag =
element_number (ceci enregistre le nombre de
caractres dans String_tag jusqu ce caractre).
6. Si element_number = SINT_array_size, alors arrter
(vous avez atteint la fin du tableau et il ne contient pas
de retour chariot).
7. Si le caractre au niveau de
SINT_array[element_number] = 13 (valeur dcimale du
retour chariot), alors arrter.
Sinon aller ltape 3.

element_number := 0;

Publication 1756-PM001E-FR-P - Aot 2002

SIZE(SINT_array, 0, SINT_array_size);
Repeat
String_tag.DATA[element_number] :=
SINT_array[element_number];
element_number := element_number + 1;
String_tag.LEN := element_number;
If element_number = SINT_array_size then
exit;
end_if;
Until SINT_array[element_number] = 13
end_repeat;

Programmation en texte structur

Commentaires

6-27

Ajoutez des commentaires votre texte structur pour en faciliter


linterprtation.
Les commentaires vous permettent dutiliser du langage clair pour
dcrire le fonctionnement de votre texte structur.
Les commentaires naffectent pas lexcution du texte structur.
Pour ajouter des commentaires votre texte structur :
Pour ajouter un commentaire

Utilisez lun des formats suivants

dune ligne

//commentaire

la fin dune ligne de texte


structur

(*commentaire*)
/*commentaire*/

dans une ligne de texte structur

(*commentaire*)
/*commentaire*/

sur plusieurs lignes

(*dbut du commentaire . . .
fin du commentaire*)
/*dbut du commentaire . . .
fin du commentaire*/

Par exemple :
Format

Exemple

//commentaire

Au dbut dune ligne


//Vrifier la direction de la courroie du convoyeur
IF conveyor_direction THEN...
A la fin dune ligne
ELSE //Si le convoyeur reste immobile, allumer le
voyant dalarme
light := 1;
END_IF;

(*commentaire*)

Sugar.Inlet[:=]1;(*ouvrir la vanne dentre*)


IF Sugar.Low (*niveau bas LS*)& Sugar.High (*niveau
haut LS*)THEN...
(*Contrler la vitesse de la pompe de recirculation.
La vitesse dpend de la temprature dans le
rservoir.*)
IF tank.temp > 200 THEN...

/*commentaire*/

Sugar.Inlet:=0;/*fermer la vanne dentre*/


IF bar_code=65 /*A*/ THEN...
/*Chercher le nombre darticles dans le tableau
Inventory et stocker la valeur dans le point
Inventory_Items*/
SIZE(Inventory,0,Inventory_Items);

Publication 1756-PM001E-FR-P - Aot 2002

6-28

Programmation en texte structur

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

Programmation dun diagramme de blocs


fonctionnels

Quand utiliser cette


procdure

Utilisez cette procdure pour effectuer les oprations suivantes :

Avant dutiliser cette


procdure

Vous devez savoir effectuer les tches suivantes :

organiser un sous-programme de blocs fonctionnels ;


dvelopper un ou plusieurs diagrammes de blocs fonctionnels pour le
sous-programme ;
entrer les diagrammes de blocs fonctionnels dans le sous-programme.

Ouvrir et fermer un dossier

Cration dun sous-programme

Pour de plus amples informations sur lune de ces tches, voir Organisation
des tches, programmes et sous-programmes , page 2-1.

Comment utiliser cette


procdure

Les tapes de programmation dun sous-programme de blocs fonctionnels


sont les suivantes :
Identification des pages du sous-programme
Choix des lments de blocs fonctionnels
Choix dun nom de point pour un lment
Dfinition de lordre dexcution
Identification des connecteurs
Dfinition de la commande Programme/Oprateur
Ajouter une page
Ajouter un lment de bloc fonctionnel
Connexion dlments
Attribution dun point
Attribution dune valeur immdiate (constante)
Connexion de blocs avec un connecteur OCON et un connecteur
ICON
Vrification du sous-programme

Publication 1756-PM001E-FR-P - Aot 2002

7-2

Programmation dun diagramme de blocs fonctionnels

Identification des pages du


sous-programme

Pour faciliter la navigation dans un sous-programme de blocs fonctionnels,


divisez-le en pages :
les pages vous aident organiser et trouver vos blocs fonctionnels et
naffectent pas lordre dexcution des blocs fonctionnels ;
lorsque le sous-programme est excut, toutes les pages sont excutes ;
gnralement, on utilise une page pour chaque quipement (moteur,
vanne, etc.).
Lexemple suivant montre un sous-programme de blocs fonctionnels
commandant 4 moteurs.

Identification des pages du sous-programme

EXEMPLE

Sous-programme de commande de moteurs


Page 1 sur 4

moteur 1

Page 2 sur 4

moteur 2

Page 3 sur 4

moteur 3

Page 4 sur 4

moteur 4

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun diagramme de blocs fonctionnels

Choix des lments de


blocs fonctionnels
rfrence dentre (IREF)

7-3

Pour commander un quipement, utilisez les lments suivants :

bloc fonctionnel

rfrence de sortie (OREF)

connecteur de
liaison de
sortie (OCON)

connecteur de
liaison dentre
(ICON)

Utilisez le tableau suivant pour choisir vos lments de blocs fonctionnels :


Pour

Utilisez

fournir une valeur provenant dun quipement ou dun point dentre

une rfrence dentre (IREF)

envoyer une valeur vers un quipement ou un point de sortie

une rfrence de sortie (OREF)

effectuer une opration sur une ou plusieurs valeurs dentre et produire


une ou plusieurs valeurs de sortie

un bloc fonctionnel

transfrer des donnes entre des blocs fonctionnels lorsquils sont :


loigns les uns des autres sur une mme page ;
rpartis sur diffrentes pages dans le mme sous-programme.

connecteur de liaison de sortie (OCON) et connecteur de


liaison dentre (ICON)

rpartir des donnes entre plusieurs points du sous-programme

un seul connecteur de liaison de sortie (OCON) et plusieurs


connecteurs de liaison dentre (ICON)

Publication 1756-PM001E-FR-P - Aot 2002

7-4

Programmation dun diagramme de blocs fonctionnels

Choix dun nom de point


pour un lment

Chaque bloc fonctionnel utilise un point pour stocker les informations de


configuration et dtat de linstruction.
Lorsque vous ajoutez une instruction de bloc fonctionnel, le logiciel
RSLogix 5000 cre automatiquement un point pour le bloc. Vous
pouvez utiliser ce point tel quel, le renommer ou encore attribuer un
autre point.
Pour les IREF et les OREF, vous devez crer un point ou attribuer un
point existant.
Le tableau suivant dcrit le format dun nom de point :

Pour un

Indiquez

point

nom_du_point

numro du bit dun type de donne plus grand

nom_du_point.numro_du_bit

membre dune structure

nom_du_point.nom_du_membre

lment dun tableau une dimension

nom_du_point[x]

lment dun tableau deux dimensions

nom_du_point[x,y]

lment dun tableau trois dimensions

nom_du_point[x,y,z]

lment dun tableau dans une structure

nom_du_point.nom_du_membre[x]

membre dun lment dun tableau

nom_du_point[x,y,z].nom_du_membre

o :
x est lemplacement de llment dans la premire dimension ;
y lemplacement de llment dans la deuxime dimension ;
z lemplacement de llment dans la troisime dimension.
Pour une structure lintrieure dune structure, ajoutez un
.nom_de_membre supplmentaire.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun diagramme de blocs fonctionnels

7-5

Dfinissez lordre dexcution (flux de donnes) en reliant des lments


ensemble et en indiquant les liaisons dentre (retours), si ncessaire.
Lemplacement dun bloc naffecte pas lordre dexcution des blocs.

Dfinition de lordre
dexcution

les donnes vont des bornes de sortie vers les bornes dentre
borne de
sortie

liaison

borne de
borne
sortie liaison dentre

borne
dentre

Symboles de liaison :
valeur SINT, INT,
DINT ou REAL
valeur boolenne
(0 ou 1)

Verrouillage des donnes


Si vous utilisez une IREF pour indiquer les donnes dentre dune instruction
de bloc fonctionnel, les donnes dans cette IREF sont verrouilles durant la
scrutation du sous-programme de blocs fonctionnels. LIREF verrouille les
donnes des points de programme et dautomate. Lautomate actualise toutes
les donnes IREF au dbut de chaque scrutation.

IREF

Publication 1756-PM001E-FR-P - Aot 2002

7-6

Programmation dun diagramme de blocs fonctionnels

Dans cet exemple, la valeur du pointA est stocke au dbut de lexcution du


sous-programme. La valeur stocke est utilise lorsque Bloc_01 est excut.
Cette valeur est galement utilise lorsque Bloc_02 est excut. Si la valeur de
pointA change pendant lexcution du sous-programme, la valeur stocke de
pointA dans lIREF ne change pas jusqu lexcution suivante du
sous-programme.
Bloc_01

pointA

Bloc_02

Cet exemple est le mme que le prcdent. La valeur de pointA est stocke une
seule fois au dbut de lexcution du sous-programme. Le sous-programme
utilise cette valeur pour lensemble du sous-programme.
Bloc_01

pointA

Bloc_02

pointA

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun diagramme de blocs fonctionnels

7-7

Depuis la version 11 du logiciel RSLogix 5000, vous pouvez utiliser le mme


point dans plusieurs IREF et dans une OREF dans le mme sous-programme.
Les valeurs des points dans les IREF tant verrouilles par le sous-programme
chaque scrutation, les IREF utilisent toutes la mme valeur, mme si une
OREF reoit une valeur de point diffrente pendant lexcution du
sous-programme. Dans cet exemple, si pointA a une valeur de 25,4 lorsque le
sous-programme commence cette scrutation et si Bloc_01 change la valeur de
pointA en 50,9, la seconde IREF relie Bloc_02 utilise quand mme une
valeur de 25,4 lorsque Bloc_02 excute cette scrutation. La nouvelle valeur
50,9 de pointA nest utilise par aucune IREF dans ce sous-programme jusqu
la scrutation suivante.

Ordre dexcution
Le logiciel de programmation RSLogix 5000 dtermine automatiquement
lordre dexcution des blocs fonctionnels dans un sous-programme lorsque
vous :
vrifiez un sous-programme de blocs fonctionnels ;
vrifiez un projet contenant un sous-programme de blocs fonctionnels ;
chargez un projet contenant un sous-programme de blocs fonctionnels.
Si ncessaire, dfinissez lordre dexcution en reliant les blocs fonctionnels
entre eux et en indiquant le flux de donnes de chaque liaison.
Si les blocs fonctionnels ne sont pas relis entre eux, leur ordre dexcution na
pas dimportance. Il ny a pas dchange de donnes entre les blocs.

Si vous les reliez de faon squentielle, lexcution seffectue des entres vers
les sorties. Les entres dun bloc doivent tre disponibles pour que lautomate

Publication 1756-PM001E-FR-P - Aot 2002

7-8

Programmation dun diagramme de blocs fonctionnels

puisse excuter ce bloc. Par exemple, le bloc 2 doit tre excut avant le bloc 3
parce que les sorties du bloc 2 alimentent les entres du bloc 3.
1

Lordre dexcution ne concerne que les blocs relis entre eux. Lexemple
suivant est correct parce que les deux groupes de blocs ne sont pas relis entre
eux. Les blocs dun groupe particulier sont excuts dans lordre appropri par
rapport aux blocs de ce groupe.
1

Rsolution dune boucle


Pour crer une boucle de retour autour dun bloc, reliez une borne de sortie du
bloc une borne dentre du mme bloc. Lexemple suivant est correct. La
boucle contient un seul bloc, lordre dexcution na donc aucune importance.

Cette borne dentre utilise une


sortie produite par le bloc lors de
la prcdente scrutation.

Si une boucle comporte un groupe de blocs, lautomate ne peut pas dterminer


le bloc excuter en premier. En dautres termes, il ne peut pas rsoudre la
boucle.
?

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun diagramme de blocs fonctionnels

7-9

Pour identifier le bloc excuter en premier, marquez la liaison dentre qui


cre la boucle (la liaison de retour) avec lindicateur Assume Data Available
(Prendre les donnes disponibles). Dans lexemple suivant, le bloc 1 utilise la
sortie du bloc 3, qui a t produite lors de la prcdente excution du
sous-programme.
1

Cette borne dentre utilise la


sortie produite par le bloc 3 lors
de la prcdente scrutation.
Indicateur Assume Data Available

Lindicateur Assume Data Available dfinit le flux des donnes dans la boucle.
La flche indique que les donnes servent dentre au premier bloc de la
boucle.
Ne marquez pas toutes les liaisons dune boucle avec lindicateur Assume Data
Available.
Ceci est correct
1

Ceci NEST PAS correct


2

Indicateur Assume
Data Available

Lautomate ne peut pas rsoudre la boucle parce que toutes les


liaisons utilisent lindicateur Assume Data Available.

Lindicateur Assume Data Available dfinit le flux de donnes dans


la boucle.

Publication 1756-PM001E-FR-P - Aot 2002

7-10

Programmation dun diagramme de blocs fonctionnels

Rsolution du flux de donnes entre deux blocs


Si vous utilisez deux liaisons ou plus pour connecter deux blocs, utilisez les
mmes indicateurs de flux de donnes pour toutes les liaisons entre les deux
blocs.
Ceci est correct

Ceci NEST PAS correct

Une seule liaison utilise lindicateur Assume Data Available.

Aucune liaison nutilise lindicateur Assume Data Available.

indicateur Assume
Data Available
Les deux liaisons utilisent lindicateur Assume Data Available.

Cration dune temporisation de scrutation


Pour produire une temporisation de scrutation entre diffrents blocs, utilisez
lindicateur Assume Data Available. Dans lexemple suivant, le bloc 1 est excut
en premier. Il utilise la sortie du bloc 2, qui a t produite lors de la prcdente
scrutation du sous-programme.
2

Indicateur Assume Data Available

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun diagramme de blocs fonctionnels

7-11

Rsum
En rsum, un sous-programme de blocs fonctionnels est excut dans lordre
suivant :
1. Lautomate verrouille toutes les valeurs de donnes dans les IREF.
2. Lautomate excute les autres blocs fonctionnels dans lordre dtermin
par leurs liaisons.
3. Lautomate crit des sorties dans les OREF.

Identification des
connecteurs

Tout comme les liaisons, les connecteurs transfrent des donnes des bornes
de sortie aux bornes dentre. Utilisez des connecteurs lorsque :
les lments que vous voulez connecter se trouvent sur diffrentes pages
du mme sous-programme ;
il est difficile deffectuer une liaison autour dautres liaisons ou
lments ;
vous voulez rpartir des donnes dans diffrents points du
sous-programme.

Connecteur_A
donnes

Connecteur_A

Pour utiliser des connecteurs, observez les directives suivantes :


chaque connecteur OCON doit avoir un nom unique ;
chaque connecteur OCON doit correspondre un connecteur ICON
(ICON ayant le mme nom que le connecteur OCON) ;
plusieurs connecteurs ICON peuvent faire rfrence au mme
connecteur OCON. Vous pouvez ainsi rpartir les donnes dans
plusieurs points de votre sous-programme.

Publication 1756-PM001E-FR-P - Aot 2002

7-12

Programmation dun diagramme de blocs fonctionnels

Dfinition de la commande
Programme/Oprateur

Plusieurs instructions prennent en charge le concept de commande


Programme/Oprateur. Ces instructions comprennent :

Slection tendue (ESEL) ;


Totalisateur (TOT) ;
PID tendu (PIDE) ;
Rampe/Palier (RMPS) ;
Dispositif 2 tats TOR (D2SD) ;
Dispositif 3 tats TOR (D3SD).

La commande Programme/Oprateur vous permet de commander ces


instructions simultanment depuis votre programme utilisateur et depuis une
interface oprateur. En commande Programme, linstruction est commande
par les entres Programme dans linstruction ; en commande Oprateur,
linstruction est commande par les entres Oprateur dans linstruction.
La commande Programme ou Oprateur est dtermine par lutilisation des
entres suivantes :
Entre

Description

.ProgProgReq

Requte dun programme pour passer en


commande Programme.

.ProgOperReq

Requte dun programme pour passer en


commande Oprateur.

.OperProgReq

Requte dun oprateur pour passer en


commande Programme.

.OperOperReq

Requte dun oprateur pour passer en


commande Oprateur.

Pour dterminer si une instruction est en commande Programme ou


Oprateur, examinez la sortie ProgOper. Si ProgOper est active, linstruction
est en commande Programme ; si ProgOper est dsactive, linstruction est en
commande Oprateur.
La commande Oprateur est prioritaire sur la commande Programme si les
deux bits de requte dentre sont activs. Par exemple, si ProgProgReq et
ProgOperReq sont activs, linstruction passe en commande Oprateur.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun diagramme de blocs fonctionnels

7-13

Les entres de requte Programme sont prioritaires sur les entres de requte
Oprateur. Ceci permet dutiliser les entres ProgProgReq et ProgOperReq
pour verrouiller une instruction dans une commande. Supposons par
exemple quune instruction Totalisateur soit toujours utilise en commande
Oprateur et que votre programme utilisateur ne commande jamais le
fonctionnement ou larrt du Totalisateur. Dans ce cas, vous pouvez relier une
valeur littrale de 1 dans ProgOperReq, ce qui empche loprateur de mettre
le Totalisateur en commande Programme par lactivation de OperProgReq
partir dune interface oprateur.

Lentre ProgOperReq tant toujours


active, appuyer sur le bouton
Program sur la face avant (ce qui
active lentre OperProgReg) na
aucun effet. Normalement, lactivation
de OperProgReq met linstruction TOT
en commande Programme.

Relier un 1 dans ProgOperReq


signifie que le programme utilisateur
veut que linstruction TOT soit toujours
en commande Oprateur.

Publication 1756-PM001E-FR-P - Aot 2002

7-14

Programmation dun diagramme de blocs fonctionnels

De mme, lactivation permanente de ProgProgReq peut verrouiller


linstruction en commande Programme. Cest utile pour les squences de
dmarrage automatique lorsque vous voulez que le programme commande
laction de linstruction, sans avoir vous soucier dun oprateur qui prendrait
la commande de linstruction par inadvertance. Dans cet exemple, votre
programme active lentre ProgProgReq au dmarrage, puis lefface une fois le
dmarrage termin. Une fois lentre ProgProgReq efface, linstruction reste
en commande Programme jusqu ce quelle reoive une demande de
changement. Par exemple, loprateur peut activer lentre OperOperReq
partir de la face avant pour reprendre la commande de linstruction. Lexemple
suivant montre comment verrouiller une instruction en commande
Programme.

Lorsque StartupSequenceActive
est activ, linstruction PIDE
passe en commande
Programme et en mode Manuel.
La valeur StartupCV est utilise
comme sortie de boucle.

Les entres de requte Oprateur dune instruction sont toujours effaces par
linstruction lorsquelle est excute. De cette faon, les interfaces oprateur
peuvent fonctionner avec ces instructions simplement en activant le bit de
requte de mode souhait. Vous navez pas besoin de programmer linterface
oprateur pour rinitialiser les bits de requte. Par exemple, si une interface
oprateur active lentre OperAutoReq sur une instruction PIDE, lorsque cette
dernire est excute, elle dtermine la rponse approprie et efface
OperAutoReq.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun diagramme de blocs fonctionnels

7-15

En principe, les entres de requte Programme ne sont pas effaces par


linstruction, parce quelles sont gnralement relies comme entres dans
linstruction. Si linstruction efface ces entres, lentre est ractive par lentre
relie. Il peut arriver que vous souhaitiez utiliser une autre logique pour activer
les requtes Programme, de sorte que ces dernires soient effaces par
linstruction. Dans ce cas, vous pouvez activer lentre ProgValueReset et
linstruction, lors de son excution, effacera systmatiquement les entres de
requte du mode Programme.
Dans cet exemple, une ligne de logique relais dun autre sous-programme est
utilise pour verrouiller par impulsion ProgAutoReq sur une instruction
PIDE, sur activation dun bouton-poussoir. Linstruction PIDE efface
automatiquement les requtes de mode Programme, vous navez donc pas
besoin dcrire une logique relais pour effacer ProgAutoReq aprs lexcution
du sous-programme : linstruction PIDE recevra une seule requte pour passer
en mode Auto chaque fois que le bouton-poussoir sera activ.
Appuyer sur le bouton-poussoir TIC101AutoReq verrouille par impulsion ProgAutoReq sur une instruction PIDE
TIC101. TIC101 a t configur avec lentre ProgValueReset active : par consquent, lorsque linstruction
PIDE est excute, elle efface automatiquement ProgAutoReq.

Publication 1756-PM001E-FR-P - Aot 2002

7-16

Programmation dun diagramme de blocs fonctionnels

Ajouter une page

Pour ajouter une page un sous-programme de blocs fonctionnels :


1.

2.

1. Cliquez sur
2. Entrez une description de la page (50 caractres max.).

Ajouter un lment de bloc


fonctionnel

Utilisez la barre doutils Language Element (Elments du langage) pour


ajouter un lment de bloc fonctionnel votre sous-programme.

IREF

OREF ICON OCON

blocs fonctionnels

autres blocs fonctionnels

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun diagramme de blocs fonctionnels

7-17

Pour ajouter un lment :


1. Dans la barre doutils Langage Element, cliquez sur le bouton
correspondant llment que vous voulez ajouter.
2. Faites glisser llment lemplacement souhait.
Par exemple :

Vous pouvez galement faire glisser le bouton de llment directement


lemplacement souhait.
Par exemple

Publication 1756-PM001E-FR-P - Aot 2002

7-18

Programmation dun diagramme de blocs fonctionnels

Connexion dlments

Pour dfinir le flux de donnes, vous avez diffrentes options :


Afficher ou masquer une borne
Relier des lments entre eux
Marquez une liaison avec lindicateur Assume Data Available

Afficher ou masquer une borne


Lorsque vous ajoutez une instruction de bloc fonctionnel, une srie de bornes
par dfaut pour les paramtres apparat. Les autres bornes sont masques.
Pour afficher ou masquer une borne :
1. Cliquez sur le bouton

du bloc.

2.

2. Effacez ou cochez la case Vis de la borne.


Pour

Alors

masquer une borne

Effacez (supprimez la coche) la case Vis


correspondante.

afficher une borne

Cochez la case Vis correspondante.

3. Cliquez sur

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun diagramme de blocs fonctionnels

7-19

Relier des lments entre eux


Pour relier (connecter) deux lments, cliquez sur la borne de sortie du premier
lment, puis sur la borne dentre de lautre lment. Un point vert indique un
point de connexion valable.
Par exemple :
A

point vert

Marquez une liaison avec lindicateur Assume Data Available


Pour dfinir une liaison comme une entre, cliquez sur la liaison avec le bouton
droit de la souris et slectionnez Assume Data Available (Prendre les donnes
disponibles).
1

Liaison dentre

Publication 1756-PM001E-FR-P - Aot 2002

7-20

Programmation dun diagramme de blocs fonctionnels

Attribution dun point

Vous pouvez attribuer un point un lment de bloc fonctionnel de lune des


faons suivantes :
Crer et attribuer un nouveau point
Renommer le point dun bloc fonctionnel
Attribuer un point existant

Crer et attribuer un nouveau point


1. Cliquez deux fois sur la zone de loprande.
2. Entrez un nom pour le point et appuyez sur la touche Entre.
3. Cliquez sur le nom du point avec le bouton droit de la souris et
slectionnez New "tag_name" (Nouveau nom_de_point ).
4.

4. Cliquez sur le bouton

5.

6.

5. Slectionnez le type de donnes du point.


6. Si vous voulez dfinir le point comme un tableau, entrez le nombre
dlments dans chaque dimension.
7. Cliquez sur

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun diagramme de blocs fonctionnels

7-21

8.

8. Slectionnez laccs pour le point.


9. Cliquez sur

Renommer le point dun bloc fonctionnel


1. Cliquez sur le bouton

du bloc.

2. Cliquez sur longlet Tag (Point).

3.

3. Entrez le nouveau nom de point du bloc.


4. Cliquez sur

Attribuer un point existant


Bloc_01

1. Cliquez deux fois sur la zone de loprande.


2. Cliquez sur la flche .
3. Slectionnez le point :
Pour slectionner Faites ceci
un point
le numro dun bit

Cliquez deux fois sur le nom du point.


A. Cliquez sur le nom du point.
B. A droite du nom du point, cliquez sur .
C. Cliquez sur le bit requis.

4. Appuyez sur la touche [Entre] ou cliquez sur un autre point du


diagramme.

Publication 1756-PM001E-FR-P - Aot 2002

7-22

Programmation dun diagramme de blocs fonctionnels

Attribution dune valeur


immdiate (constante)

Pour attribuer une valeur constante plutt quune valeur de point un


paramtre dentre, vous avez diffrentes options :
Pour

Alors

rendre la valeur visible sur le diagramme et sur les


rapports

Utiliser une IREF

pouvoir changer la valeur en ligne sans modifier le


sous-programme

Entrer une valeur dans le point


dun bloc

Utiliser une IREF


1. Ajoutez une IREF.
2. Reliez lIREF la borne dentre qui reoit la valeur.

3.

3. Cliquez deux fois sur la zone de loprande de lIREF.


4. Entrez la valeur et appuyez sur touche Entre.

Entrer une valeur dans le point dun bloc


Pour attribuer une valeur un paramtre lorsquune liaison est connecte sa
borne :
1. Cliquez sur le bouton

du bloc.

2.

2. Entrez la valeur.
3. Cliquez sur

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dun diagramme de blocs fonctionnels

Connexion de blocs avec


un connecteur OCON et un
connecteur ICON

7-23

Pour transfrer des donnes dune page une autre ou dans des liaisons
complexes :
Ajouter un connecteur OCON
Ajouter un connecteur ICON

ICON OCON

Ajouter un connecteur OCON


1. Ajouter un connecteur de liaison de sortie (OCON) et placez-le prs de
la borne de sortie qui fournit la valeur.
2. Reliez le connecteur OCON la borne de sortie.
3. Cliquez deux fois sur la zone de loprande du connecteur OCON.
4. Entrez un nom pour identifier le connecteur et appuyez sur la touche
[Entre].

Ajouter un connecteur ICON


1. Ajoutez un connecteur de liaison dentre (ICON) et placez-le prs de la
borne dentre qui reoit la valeur du connecteur OCON
correspondant.
2. Reliez le connecteur ICON la borne dentre.
3. Cliquez deux fois sur la zone de loprande du connecteur ICON.
4. Slectionnez le nom du connecteur OCON qui fournit la valeur ce
connecteur, puis cliquez sur un endroit vide du diagramme.

Publication 1756-PM001E-FR-P - Aot 2002

7-24

Programmation dun diagramme de blocs fonctionnels

Vrification du
sous-programme

Vrifiez rgulirement votre travail pendant la programmation de votre


sous-programme :
1. Dans la barre doutils suprieure de la fentre du logiciel RSLogix 5000,
cliquez sur licne

2. Si des erreurs sont indiques au bas de la fentre :


a. pour aller la premire erreur ou au premier avertissement, appuyez
sur la touche [F4] ;
b. corrigez lerreur selon la description donne dans la fentre des
rsultats (Results) ;
c. retournez ltape 1.
3. Pour afficher la fentre des rsultats, appuyez sur les touches [Alt] + [1].

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

Programmation dune logique relais

Quand utiliser cette


procdure

Utilisez cette procdure pour effectuer les oprations suivantes :

Avant dutiliser cette


procdure

Vous devez savoir effectuer les tches suivantes :

dvelopper la logique pour un sous-programme logique relais ;


entrer la logique dans le sous-programme.

Ouvrir et fermer un dossier

Cration dun sous-programme

Pour de plus amples informations sur lune de ces tches, voir Organisation
des tches, programmes et sous-programmes , page 2-1.

Comment utiliser cette


procdure

Les tapes de programmation dun sous-programme logique relais sont les


suivantes :
Revoir les Dfinitions
Ecriture de la logique relais
Entre de la logique relais
Attribution des oprandes
Vrification du sous-programme

Publication 1756-PM001E-FR-P - Aot 2002

8-2

Programmation dune logique relais

Dfinitions

Avant dcrire ou dentrer la logique relais, revoyez les termes suivants :


Instruction
Branche
Condition de ligne

Instruction
Une logique relais est constitue de lignes sur une chelle, chaque ligne
comportant des instructions. Il existe deux types dinstructions de base :
Instruction dentre : instruction qui vrifie, compare et examine des
conditions particulires dans votre machine ou votre procd.
Instruction de sortie : instruction qui excute une action, comme
dmarrer ou arrter un quipement, copier des donnes ou calculer une valeur.

instructions dentre

instructions de sortie

Branche
Une branche est constitue de deux instructions parallles ou plus.

branche

Publication 1756-PM001E-FR-P - Aot 2002

branche

Programmation dune logique relais

8-3

Le nombre de niveaux de branches parallles que vous pouvez entrer nest pas
limit. La figure suivante montre une branche parallle cinq niveaux. La ligne
principale est le premier niveau de branche, suivi par quatre branches
supplmentaires.

instruction dentre

instruction de sortie

Vous pouvez imbriquer jusqu 6 niveaux. La figure suivante montre une


branche imbrique. Linstruction de sortie du bas est sur une branche
imbrique trois niveaux.
instruction dentre

instruction de sortie

Publication 1756-PM001E-FR-P - Aot 2002

8-4

Programmation dune logique relais

Condition de ligne
Lautomate value les instructions relais selon ltat (condition) de la ligne
prcdant linstruction (tat dentre de la ligne).
instruction dentre

tat dentre de la ligne

instruction de sortie

tat de sortie de la ligne

Seules les instructions dentre agissent sur ltat dentre de la ligne des
instructions suivantes de la ligne.
Si ltat dentre de la ligne vers une instruction dentre est vrai,
lautomate value linstruction et rgle ltat de sortie de la ligne pour
quil reflte les rsultats de lvaluation :
si linstruction est value comme vraie, ltat de sortie de la ligne est
vrai ;
si linstruction est value comme fausse, ltat de sortie de la ligne
est faux.
Une instruction de sortie ne change pas ltat de sortie de la ligne :
si ltat dentre de la ligne vers une instruction de sortie est vrai,
ltat de sortie de la ligne est rgl sur vrai ;
si ltat dentre de la ligne vers une instruction de sortie est faux,
ltat de sortie de la ligne est rgl sur faux.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dune logique relais

8-5

Pour dvelopper votre logique relais, vous devez effectuer les oprations
suivantes :

Ecriture de la logique
relais

Choisir les instructions requises


Organiser les instructions dentre
Organiser les instructions de sortie
Choisir un nom de point pour un oprande

Choisir les instructions requises


1. Sparez les conditions vrifier de laction excuter.
2. Choisissez linstruction dentre approprie pour chaque condition et
linstruction de sortie approprie pour chaque action.
Pour choisir des instructions particulires, consultez les manuels
suivants :
Automate Logix5000 - Jeu d'instructions - Manuel de rfrence
(publication 1756-RM003)
Logix5000 Controllers Process and Drives Instructions Reference Manual
(publication 1756-RM006)
Logix5000 Controllers Motion Instruction Set Reference Manual
(publication 1756-RM007)
Les exemples prsents dans ce chapitre utilisent deux instructions simples
pour vous aider apprendre comment crire une logique relais. Les rgles
que vous apprendrez pour ces instructions sont galement valables pour toutes
les autres instructions.
Symbole

Nom

Mnmonique

Description

Examiner si ferm
(Examine If Closed)

XIC

Instruction dentre qui lit un bit de donnes.

Activation de sortie
(Output Energize)

OTE

Si le bit est

Linstruction (tat de sortie


de la ligne) est

activ (1)

vraie

dsactiv (0)

fausse

Instruction de sortie qui commande un bit de donnes.


Si les instructions gauche
(tat dentre de la ligne) sont

Le bit est

vraies

activ (1)

fausses

dsactiv (0)

Publication 1756-PM001E-FR-P - Aot 2002

8-6

Programmation dune logique relais

Organiser les instructions dentre


Utilisez le tableau suivant pour organiser les instructions :
Pour vrifier plusieurs conditions dentre quand

Organiser les instructions dentre

toutes les conditions doivent tre remplies pour quune action soit
excute

en srie
condition_1

condition_2

condition_3

Par exemple, si condition_1 ET condition_2 ET condition_3


lune des conditions doit tre remplie pour quune action soit
excute

en parallle
condition_1

Par exemple, si condition_1 OU condition_2 OU condition_3


condition_2

condition_3

il y a une combinaison des possibilits prcdentes

en combinaison

Par exemple :
Si condition_1 ET condition_2
OU
Si condition_3 ET condition_2

CONSEIL

condition_1

condition_2

condition_3

Lautomate excute toutes les instructions dune ligne, quel que soit leur tat
dentre. Pour optimiser les performances dune srie dinstructions,
ordonnez-les, celle ayant la plus forte probabilit dtre fausse gauche celle
ayant la plus faible probabilit dtre fausse droite.
instruction ayant la plus
forte probabilit dtre
FAUSSE

instruction ayant la plus


faible probabilit dtre
FAUSSE

Lorsque lautomate trouve une instruction fausse, il excute les instructions


restantes de la srie avec leur tat dentre de ligne rgl sur faux. En principe,
une instruction est excute plus rapidement lorsque son tat dentre de ligne
(sa ligne) est faux.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dune logique relais

8-7

Organiser les instructions de sortie


Placez au moins une instruction de sortie droite des instructions dentre.
Vous pouvez entrer plusieurs instructions de sortie par ligne de logique,
comme indiqu ci-aprs :
Option

Exemple

Placer les instructions de sortie en squence sur la ligne (en srie).


Placer les instructions de sortie en branches (en parallle).

Placer les instructions de sortie entre des instructions dentre, pourvu


que la dernire instruction de la ligne soit une instruction de sortie.

Publication 1756-PM001E-FR-P - Aot 2002

8-8

Programmation dune logique relais

Choisir un nom de point pour un oprande


La plupart des instructions requirent un ou plusieurs des types doprandes
suivants :
nom de point (variable) ;
valeur immdiate (constante) ;
nom dun sous-programme, dune tiquette, etc.
Le tableau suivant dcrit le format dun nom de point :
Pour

Indiquez

un point

nom_du_point

le numro dun bit dun type de donne plus grand

nom_du_point.numro_du_bit

un membre dune structure

nom_du_point.nom_du_membre

un lment dun tableau une dimension

nom_du_point[x]

un lment dun tableau deux dimensions

nom_du_point[x,y]

un lment dun tableau trois dimensions

nom_du_point[x,y,z]

un lment dun tableau dans une structure

nom_du_point.nom_du_membre[x]

un membre dun lment dans un tableau

nom_du_point[x,y,z].nom_du_membre

o :
x est lemplacement de llment dans la premire dimension ;
y lemplacement de llment dans la deuxime dimension ;
z lemplacement de llment dans la troisime dimension.
Pour une structure lintrieur dune structure, ajoutez un
.nom_de_membre supplmentaire.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dune logique relais

EXEMPLE

8-9

Choisir un nom de point pour un oprande

Pour accder

Le nom du point ressemble ceci

au point machine_on

machine_on

au bit numro 1 du point one_shots

one_shots.1

au membre (bit) DN du temporisateur


running_seconds

running_seconds.DN

au membre mix du point north_tank

north_tank.mix

llment 2 du tableau recipe et


llment 1,1 du tableau tanks

llment 2 du tableau preset dans le


point north_tank

au membre part_advance de llment 1 du


tableau drill

COP
Copy File
Source recipe[2]
Dest tanks[1,1]
Length
1
CLR
Clear
Dest north_tank.preset[2]
0

drill[1].part_advance

42357

Publication 1756-PM001E-FR-P - Aot 2002

8-10

Programmation dune logique relais

Entre de la logique
relais

Un nouveau sous-programme contient une ligne prte recevoir des


instructions.
curseur (bleu)

Lorsque vous ajoutez une instruction ou une branche,


elle apparat droite du curseur.

Lorsque vous ajoutez une ligne, elle


apparat sous le curseur.

Utilisez la barre doutils Language Element (Elments du langage) pour


ajouter un lment de logique relais votre sous-programme.

niveau de branche
branche
ligne

XIC XIO OTE OTU OTL

autres instructions

Pour ajouter un lment :


Ajouter un lment au niveau du curseur
Glisser-dplacer un lment

Ajouter un lment au niveau du curseur


1. Cliquez (slectionnez) linstruction, la branche ou la ligne au-dessus ou
gauche de lendroit o vous voulez ajouter un lment.
2. Dans la barre doutils Langage Elements, cliquez sur le bouton
correspondant llment que vous voulez ajouter.

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dune logique relais

8-11

Glisser-dplacer un lment
Faites glisser le bouton de llment directement lemplacement souhait. Un
point vert indique un emplacement valable (point de dpt).
Par exemple :

Attribution des oprandes

Pour attribuer un oprande, vous avez diffrentes options :


Crer et attribuer un nouveau point
Choisir un nom ou un point existant
Faire glisser un point de la fentre des points
Attribuer une valeur immdiate (constante)

Crer et attribuer un nouveau point


1. Cliquez sur la zone de loprande de linstruction.
2. Entrez un nom pour le point et appuyez sur la touche [Entre].
3. Cliquez sur le nom du point avec le bouton droit de la souris et
slectionnez New "tag_name" (Nouveau nom_de_point ).
4.

4. Cliquez sur le bouton

Publication 1756-PM001E-FR-P - Aot 2002

8-12

Programmation dune logique relais

5.

6.

5. Slectionnez le type de donnes du point.


6. Si vous voulez dfinir le point comme un tableau, entrez le nombre
dlments dans chaque dimension.
7. Cliquez sur

8.

8. Slectionnez laccs pour le point.


9. Cliquez sur

Publication 1756-PM001E-FR-P - Aot 2002

Programmation dune logique relais

8-13

Choisir un nom ou un point existant


1. Cliquez deux fois sur la zone de loprande.
Une zone de saisie de texte apparat.
2. Cliquez sur la flche .
3. Slectionnez le nom :
Pour slectionner

Faites ceci

une tiquette, un nom de


sous-programme ou un type de
nom similaire

Cliquez sur le nom.

un point

Cliquez deux fois sur le nom du point.

le numro dun bit

A. Cliquez sur le nom du point.


B. A droite du nom du point, cliquez sur .
C. Cliquez sur le bit requis.

4. Appuyez sur la touche [Entre] ou cliquez sur un autre point du


diagramme.

Faire glisser un point de la fentre des points


1. Recherchez le point dans la fentre des points.
2. Cliquez deux ou trois fois sur le point afin de le slectionner.
3. Faites glisser le point vers son emplacement dans linstruction.

Attribuer une valeur immdiate (constante)


1. Cliquez sur la zone de loprande de linstruction.
2. Entrez la valeur et appuyez sur la touche [Entre].

Publication 1756-PM001E-FR-P - Aot 2002

8-14

Programmation dune logique relais

Vrification du
sous-programme

Vrifiez rgulirement votre travail pendant la programmation de votre


sous-programme :
1. Dans la barre doutils suprieure de la fentre du logiciel RSLogix 5000,
cliquez sur licne

2. Si des erreurs sont indiques au bas de la fentre :


a. pour aller la premire erreur ou au premier avertissement, appuyez
sur la touche [F4] ;
b. corrigez lerreur selon la description donne dans la fentre des
rsultats (Results) ;
c. retournez ltape 1.
3. Pour afficher la fentre des rsultats, appuyez sur les touches [Alt] + [1].

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

Accs aux valeurs systme

Quand utiliser cette


procdure

Utilisez cette procdure pour obtenir ou utiliser des informations dtat sur
votre automate Logix5000.

Comment utiliser cette


procdure
Pour

Voir

utiliser des mots cls spcifiques dans votre logique pour surveiller
des vnements particuliers

Surveillance des indicateurs dtat , page 9-1

obtenir ou dfinir des valeurs systme

Obtention et dfinition des donnes systme , page 9-3

obtenir des informations sur la mmoire de lautomate

Informations sur la mmoire de lautomate , page 9-5

Surveillance des
indicateurs dtat

Lautomate accepte des mots cls dtat que vous pouvez utiliser dans votre
logique pour surveiller des vnements particuliers :
les mots cls dtat ne font pas de distinction entre majuscules et
minuscules ;
les indicateurs dtat pouvant changer trs rapidement, le logiciel
RSLogix 5000 naffiche pas ltat des indicateurs (mme lorsquun
indicateur dtat est activ, une instruction qui a une rfrence cet
indicateur nest pas en surbrillance) ;
vous ne pouvez pas attribuer un alias de point un mot cl.
Vous pouvez utiliser les mots cls suivants :

Publication 1756-PM001E-FR-P - Aot 2002

9-2

Accs aux valeurs systme

Pour dterminer si

Utilisez

la valeur que vous stockez ne peut pas entrer dans la destination parce quelle est :
suprieure la valeur maximale de la destination
infrieure la valeur minimale de la destination

S: V

Important : chaque fois que S:V passe deffac activ, il gnre un dfaut mineur (type 4, code 4)
la valeur de destination de linstruction est 0

S:Z

la valeur de destination de linstruction est ngative

S:N

une opration arithmtique entrane un report ou une retenue qui essaie dutiliser des bits en dehors
du type de donnes

S:C

Par exemple :
ajouter 3 9 entrane un report de 1
soustraire 25 de 18 entrane une retenue de 10
cest la premire scrutation normale des sous-programmes dans le programme en cours

S:FS

au moins un dfaut mineur a t gnr


lautomate active ce bit lorsquun dfaut mineur se produit en raison de lexcution du
programme ;
lautomate nactive pas ce bit pour les dfauts mineurs qui ne sont pas lis lexcution du
programme, tels quune pile dcharge.

S:MINOR

Publication 1756-PM001E-FR-P - Aot 2002

Accs aux valeurs systme

Obtention et dfinition des


donnes systme

9-3

Lautomate stocke les donnes systme dans des objets. Il ny a pas de fichier
dtat comme dans lautomate PLC-5. Utilisez les instructions GSV/SSV pour
obtenir et dfinir les donnes systme de lautomate qui sont stockes dans des
objets :
linstruction GSV rcupre les informations indiques et les place dans
la destination ;
linstruction SSV dfinit lattribut indiqu avec des donnes de la source.

ATTENTION

Utilisez linstruction SSV avec prcaution. Apporter des


changements aux objets peut entraner un fonctionnement
inattendu de lautomate ou des blessures corporelles.

Pour obtenir et dfinir une valeur systme :


1. Ouvrez le projet RSLogix 5000.
2. Dans le menu Help (Aide), slectionnez Contents (Sommaire de laide).
3. Cliquez sur longlet Index.
4. Entrez gsv/ssv objects (objets gsv/ssv) et cliquez sur Display (Afficher).
5. Cliquez sur lobjet choisi.
Pour obtenir ou dfinir

Cliquez sur

laxe dun servo-module

AXIS

une tranche de temps dactivit du systme

CONTROLLER

les composants matriels dun automate

CONTROLLERDEVICE

un temps systme coordonn pour les quipements dun


chssis

CST

un driver de communication DF1 pour le port srie

DF1

lhistorique des dfauts dun automate

FAULTLOG

les attributs dune instruction de message

MESSAGE

ltat, les dfauts et le mode dun module

MODULE

un groupe daxes

MOTIONGROUP

des informations sur les dfauts ou le temps de scrutation


dun programme

PROGRAM

le numro dinstance dun sous-programme

ROUTINE

la configuration du port srie

SERIALPORT

les proprits ou le temps coul dune tche

TASK

le temps dhorloge dun automate

WALLCLOCKTIME

Publication 1756-PM001E-FR-P - Aot 2002

9-4

Accs aux valeurs systme

6. Dans la liste des attributs de lobjet, identifiez lattribut auquel vous


voulez accder.
7. Crez un point pour la valeur de lattribut :
Si le type de donnes de
lattribut est

Alors

un lment (ex. DINT)

Crez un point pour lattribut.

plus dun lment (ex. DINT[7] )

A. Crez un type de donnes utilisateur


correspondant lorganisation des
donnes utilise par lattribut.
B. Crez un point pour lattribut et
utilisez le type de donnes de
ltape A.

8. Dans votre sous-programme logique relais, entrez linstruction


approprie :
Pour

Entrez cette instruction

obtenir la valeur dun attribut

GSV

dfinir la valeur dun attribut

SSV

9. Attribuez les oprandes requis linstruction :

Publication 1756-PM001E-FR-P - Aot 2002

Pour cet oprande

Slectionnez

Nom de classe

le nom de lobjet

Nom dinstance

le nom de lobjet spcifique (ex. : le nom du


module dE/S, de la tche, du message
requis)
Tous les objets ne requirent pas
cette entre.
Pour indiquer la tche, le
programme ou le sous-programme
en cours, slectionnez THIS.

Nom dattribut

le nom de lattribut

Dest (GSV)

le point qui stocke la valeur obtenue


Si le point est un type de donnes
utilisateur ou un tableau,
slectionnez le premier membre ou
le premier lment.

Source (SSV)

le point qui stocke la valeur dfinir


Si le point est un type de donnes
utilisateur ou un tableau,
slectionnez le premier membre ou
le premier lment.

Accs aux valeurs systme

9-5

Lexemple suivant montre comment obtenir la date et lheure en cours.

EXEMPLE

Obtenir une valeur systme

Lors de la premire scrutation, rcupre lattribut DateTime de lobjet WALLCLOCKTIME et le stocke dans le
point wall_clock, qui est bas sur un type de donnes utilisateur.

42370

Pour de plus amples informations, voir Automate Logix5000 - Jeu d'instructions Manuel de rfrence (publication 1756-RM003).

Informations sur la
mmoire de lautomate

La mmoire de lautomate se compose de la mmoire dE/S et de la mmoire


dextension. Le tableau suivant montre comment lautomate utilise chaque type
de mmoire :
Ceci

Utilise ce type de
mmoire

points dE/S

mmoire dE/S

points produits
points consomms
communication par instructions de message (MSG)
communication avec des stations
communication avec les points interrogs (OPC/DDE) qui
utilisent le logiciel RSLinx(1)
points autres que les points dE/S, produits ou consomms

mmoire dextension

sous-programmes logiques
communication avec les points interrogs (OPC/DDE) qui
utilisent le logiciel RSLinx(1)
(1)

Pour communiquer avec les points interrogs, lautomate utilise la mmoire dE/S et
dextension.

Publication 1756-PM001E-FR-P - Aot 2002

9-6

Accs aux valeurs systme

Utilisez cette procdure pour obtenir les informations suivantes sur la


mmoire dun automate.
IMPORTANT

Lautomate renvoie les valeurs en mots de 32 bits. Pour voir


une valeur en octets, multipliez-la par 4.

mmoire dE/S libre


mmoire dextension libre
mmoire dE/S totale
mmoire dextension totale
plus grand bloc adjacent de mmoire dE/S
plus grand bloc adjacent de mmoire dextension

Pour obtenir des informations sur la mmoire de lautomate :


Obtenir des informations sur la mmoire partir de lautomate
Choisir linformation de mmoire souhaite
Convertir des INT en DINT

Publication 1756-PM001E-FR-P - Aot 2002

Accs aux valeurs systme

9-7

Obtenir des informations sur la mmoire partir de lautomate


Pour obtenir les informations sur la mmoire partir de lautomate, excutez
une instruction de message (MSG) configure comme suit :

Proprits du message Onglet Configuration


Pour cet lment

Entrez ou slectionnez

Ce qui
signifie

Message Type (Type de


message)

CIP Generic (Gnrique CIP)

Excuter une commande de protocole dinformation et de contrle.

Service Type (Type de service)

Custom (Personnalis)

Crer un message gnrique CIP qui nest pas disponible dans la


liste droulante.

Service Code (Code de service)

Utiliser le service GetAttributeList. Ceci vous permet de lire des


informations spcifiques sur lautomate.

Class (Classe)

72

Obtenir des informations de lobjet mmoire utilisateur

Instance

Cet objet contient une seule instance.

Attribute (Attribut)

Valeur nulle.

Source Element (Elment


source)

tableau_source de type SINT[12]


Dans cet lment

Entrez

Ce qui signifie

tableau_source[0]

Indiquer 5 attributs

tableau_source[1]

Valeur nulle

tableau_source[2]

Indiquer la mmoire libre

tableau_source[3]

Valeur nulle

tableau_source[4]

Indiquer la mmoire totale

tableau_source[5]

Valeur nulle

tableau_source[6]

Indiquer le plus grand bloc adjacent de mmoire


dextension libre supplmentaire

tableau_source[7]

Valeur nulle

tableau_source[8]

Indiquer le plus grand bloc adjacent de mmoire dE/S


libre

tableau_source[9]

Valeur nulle

tableau_source[10]

Indiquer le plus grand bloc adjacent de mmoire


dextension libre

tableau_source[11]

Valeur nulle

Source Length (Longueur de la


source)

12

Ecrire 12 octets (12 SINT).

Destination

tableau_INT de type INT[29]

Proprits du message Onglet Communication


Pour cet lment

Entrez

Path (Chemin)

1, numro_emplacement_de_lautomate

Publication 1756-PM001E-FR-P - Aot 2002

9-8

Accs aux valeurs systme

Choisir linformation de mmoire souhaite


Linstruction MSG renvoie linformation suivante tableau_INT (point
de destination de linstruction MSG):
IMPORTANT

Pour un automate 1756-L55M16, linstruction MSG


renvoie deux valeurs pour chaque catgorie de mmoire
dextension. Pour dterminer la mmoire dextension libre
ou totale dun automate 1756-L55M16, ajoutez les deux
valeurs de la catgorie.

Si vous voulez cette information

Copiez ces lments de tableau Description

quantit de mmoire dE/S libre (mots de 32 bits)

tableau_INT[3]

16 bits infrieurs de la valeur de 32 bits

tableau_INT[4]

16 bits suprieurs de la valeur de 32 bits

tableau_INT[5]

16 bits infrieurs de la valeur de 32 bits

tableau_INT[6]

16 bits suprieurs de la valeur de 32 bits

(automates 1756-L55M16 uniquement) quantit de


mmoire dextension libre supplmentaire (mots de
32 bits)

tableau_INT[7]

16 bits infrieurs de la valeur de 32 bits

tableau_INT[8]

16 bits suprieurs de la valeur de 32 bits

taille totale de la mmoire dE/S (mots de 32 bits)

tableau_INT[11]

16 bits infrieurs de la valeur de 32 bits

tableau_INT[12]

16 bits suprieurs de la valeur de 32 bits

taille totale de la mmoire dextension libre (mots de


32 bits)

tableau_INT[13]

16 bits infrieurs de la valeur de 32 bits

tableau_INT[14]

16 bits suprieurs de la valeur de 32 bits

(automates 1756-L55M16 uniquement) mmoire


dextension supplmentaire (mots de 32 bits)

tableau_INT[15]

16 bits infrieurs de la valeur de 32 bits

tableau_INT[16]

16 bits suprieurs de la valeur de 32 bits

(automates 1756-L55M16 uniquement) plus grand bloc


adjacent de mmoire dextension libre supplmentaire
(mots de 32 bits)

tableau_INT[19]

16 bits infrieurs de la valeur de 32 bits

tableau_INT[20]

16 bits suprieurs de la valeur de 32 bits

plus grand bloc adjacent de mmoire dE/S libre (mots de


32 bits)

tableau_INT[23]

16 bits infrieurs de la valeur de 32 bits

tableau_INT[24]

16 bits suprieurs de la valeur de 32 bits

plus grand bloc adjacent de mmoire dextension libre


(mots de 32 bits)

tableau_INT[27]

16 bits infrieurs de la valeur de 32 bits

tableau_INT[28]

16 bits suprieurs de la valeur de 32 bits

quantit de mmoire dextension libre (mots de 32 bits)

Publication 1756-PM001E-FR-P - Aot 2002

Accs aux valeurs systme

9-9

Convertir des INT en DINT


Linstruction MSG renvoie chaque valeur de mmoire sous forme de deux
INT distincts :
le premier INT reprsente les 16 bits infrieurs de la valeur ;
le deuxime INT reprsente les 16 bits suprieurs de la valeur.
Pour convertir les deux INT en une valeur utilisable, utilisez une instruction de
copie (COP), o :
Dans cet
oprande

Indiquez

Ce qui signifie

Source

le premier INT des 2 lments (16 bits


infrieurs)

Commencer par les 16 bits infrieurs.

Destination

point DINT dans lequel la valeur de 32 bits


est stocke

Copier la valeur dans le point DINT.

Longueur

Copier 1 fois le nombre doctets dans le type de donnes Destination.


Dans ce cas, linstruction copie 4 octets (32 bits), ce qui combine les
16 bits infrieurs et suprieurs dans une valeur de 32 bits.

Dans lexemple suivant, linstruction COP produit la valeur de 32 bits qui


reprsente la quantit de mmoire dE/S libre, en mots de 32 bits.
EXEMPLE

Convertir des INT en DINT


Llment 3 de tableau_INT reprsente les 16 bits
infrieurs de la quantit de mmoire dE/S libre.
Llment 4 reprsente les 16 bits suprieurs.
Mmoire_ES_libre est un point DINT (32 bits) dans
lequel la valeur de la quantit de mmoire dE/S libre
est stocke.
Pour copier les 32 bits, indiquez une longueur de 1
pour indiquer linstruction de copier 1 fois la taille de
la Destination (32 bits). Ceci copie les lments 3
(16 bits) et 4 (16 bits), et place les 32 bits du rsultat
dans Mmoire_ES_libre.

Publication 1756-PM001E-FR-P - Aot 2002

9-10

Accs aux valeurs systme

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

10

Attribution des alias

Points dalias

Un point dalias vous permet de crer un point qui reprsente un autre point.
Les deux points partagent la ou les mmes valeurs.
Lorsque la ou les valeurs dun des points changent, celles de lautre point
changent galement.
Utilisez les alias dans les situations suivantes :

pour programmer une logique en vue de schmas de cblage


pour attribuer un nom descriptif un dispositif dE/S
pour fournir un nom plus simple un point complexe
pour utiliser un nom descriptif pour un lment de tableau

La fentre des points affiche les informations dalias.

drill_1_depth_limit est un alias


pour Local:2:I.Data.3 (un point
dentre numrique). Lorsque
lentre est active, le point
dalias lest aussi.

drill_1_on est un alias pour


Local:0:O.Data.2 (un point de
sortie numrique). Lorsque le
point dalias est activ, le point
de sortie lest aussi.

north_tank est un alias pour


tanks[0,1].
42360

Le (C) indique que le point est un


point daccs automate.

Publication 1756-PM001E-FR-P - Aot 2002

10-2

Attribution des alias

Il est courant dutiliser les points dalias pour programmer de la logique avant
que des schmas de cblage soient disponibles :
1. Pour chaque dispositif dE/S, crez un point ayant un nom qui dcrit le
dispositif, tel que convoyeur pour le moteur du convoyeur.
2. Programmez votre logique en utilisant les noms de point descriptifs.
(Vous pouvez mme tester votre logique sans vous connecter aux E/S.)
3. Plus tard, lorsque les schmas de cblage sont disponibles, ajoutez les
modules dE/S la configuration des E/S de lautomate.
4. Pour finir, convertissez les points descriptifs en alias pour leurs points
ou canaux dE/S respectifs.
La logique suivante a t initialement programme avec des noms de points
descriptifs tels que stop et conveyor_on. Ultrieurement, les points ont t
convertis en alias pour les dispositifs dE/S correspondants.

stop est un alias pour Local:2:I.Data.1


(bouton darrt sur le panneau de
commande oprateur)

stop
<Local:2:I.Data.1>

start
<Local:2:I.Data.0>
machine_on

drill_1_on
machine_on <Local:0:O.Data.2> drill_1.part_advance

conveyor_on est un alias pour


Local:0:O.Data.0
(contacteur de dmarrage du moteur
de convoyeur)

conveyor_on
<Local:0:O.Data.0>

42351

Affichage des informations


dalias

Pour afficher (dans votre logique) le point auquel renvoie un alias :


1. Dans le menu Outils, slectionnez Options.
2. Cliquez sur longlet Affichage du schma relais.
3. Slectionnez la case Afficher informations sur alias de point.
4. Cliquez sur OK.

Publication 1756-PM001E-FR-P - Aot 2002

Attribution des alias

Attribution dun alias

10-3

Pour attribuer un point en tant que point dalias pour un autre point :
1. Dans le menu Logique, slectionnez Modifier points.

2.

42360

3.

2. Slectionnez laccs du point.


3. A droite du nom de point, cliquez sur la cellule Alias de.
La cellule affiche le symbole
4. Cliquez sur le symbole
5. Slectionnez le point que reprsentera lalias. :
Pour :

Faites ceci :

slectionner un point

Cliquez deux fois sur le nom du point.

slectionner un numro de bit

A. Cliquez sur le nom du point.


B. A droite du nom de point, cliquez sur
C. Cliquez sur le bit appropri.

6. Appuyez sur la touche Entre ou cliquez sur une autre cellule.

Publication 1756-PM001E-FR-P - Aot 2002

10-4

Attribution des alias

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

11

Attribution dune adresse indirecte

Quand faut-il attribuer une


adresse indirecte ?

Si vous voulez quune instruction ait accs divers lments dun tableau,
utilisez un point dans lindice du tableau (une adresse indirecte). En changeant
la valeur du point, vous changez llment du tableau auquel votre logique fait
rfrence.

Lorsque index est gal 1, array[index] indique ceci.


array[0]

4500

array[1]

6000

array[2]

3000

array[3]

2500

Lorsque index est gal 2, array[index] indique ceci.

Le tableau suivant dcrit un certain nombre dutilisations courantes de


ladresse indirecte.
Pour :

Utilisez un point dans lindice et :

slectionner une recette dans un tableau de Entrez le numro de la recette dans le point.
recettes
charger la configuration dune machine
spcifique partir dun tableau de
configurations possibles
charger les paramtres ou les tats partir
dun tableau, un lment la fois
enregister les codes derreur
effectuer plusieurs actions sur un lment
du tableau, puis passer llment suivant

Entrez la configuration voulue dans le point.

A. Effectuez laction requise sur le


premier lment.
B. Utilisez une instruction ADD pour
incrmenter la valeur du point et
amener le pointeur sur llment
suivant du tableau.

Publication 1756-PM001E-FR-P - Aot 2002

11-2

Attribution dune adresse indirecte

Lexemple suivant charge une srie de valeurs prdtermines dans un


temporisateur, une valeur (lment de tableau) la fois.

EXEMPLE

Parcourir un tableau

Le tableau timer_presets stocke dans la ligne suivante une srie de valeurs prdtermines pour la temporisation. Le
point north_tank.step pointe vers llment de tableau utiliser. Par exemple, lorsque north_tank.step est gal 0,
linstruction charge timer_presets[0] dans la temporisation (6 000 ms).
MOV
Move
Source timer_presets[north_tank.step]
60000
Dest
north_tank.step_time.PRE
60000
north_tank.step_time.DN
/

TON
Timer On Delay
Timer
north_tank.step_time
Preset
60000
Accum
0

EN
DN

Lorsque north_tank.step_time est termin, la ligne incrmente north_tank.step au chiffre suivant et cet lment du
tableau timer_presets est charg dans la temporisation.
north_tank.step_time.DN

ADD
Add
Source A

Source B north_tank.step
0
Dest
north_tank.step
0

Lorsque north_tank.step dpasse la taille du tableau, le ligne rinitialise le point pour quil dmarre au premier
lment du tableau. (Le tableau contient les lments 0 3.)
EQU
Equal
Source A north_tank.step
0
Source B
4

MOV
Move
Source

Dest north_tank.step
0

42358

Publication 1756-PM001E-FR-P - Aot 2002

Attribution dune adresse indirecte

Expressions

11-3

Vous pouvez galement utiliser une expression pour spcifier lindice dun
tableau.
Une expression utilise des oprateurs tels que + ou pour calculer une
valeur.
Lautomate calcule le rsultat de lexpression et lutilise en tant quindice
du tableau.
Vous pouvez utiliser les oprateurs suivants pour spcifier lindice dun tableau
:
Oprateur : Description :

Oprateur : Description :

addition

MOD

modulo

soustraction/ngation

NOT

NON sur bits

multiplication

OR

OU sur bits

division

SQR

racine carre

ABS

valeur absolue

TOD

conversion en DCB

AND

ET sur bits

TRN

troncation

FRD

Conversion en nombre
entier

XOR

OU exclusif sur bits

Formatez vos expressions comme suit :


Si loprateur requiert :

Utilisez ce format :

Exemples :

une valeur (point ou expression)

oprateur(valeur)

ABS(tag_a)

deux valeurs (points, constantes ou


expressions)

valeur_a oprateur valeur _b

tag_b + 5
tag_c AND tag_d
(tag_e ** 2) MOD (tag_f / tag_g)

Publication 1756-PM001E-FR-P - Aot 2002

11-4

Attribution dune adresse indirecte

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

12

Mise en buffer des E/S

Quand faut-il mettre les E/S


dans un buffer ?

La mise en buffer (mmoire tampon) des E/S est une technique dans laquelle
la logique ne fait pas rfrence ou ne manipule pas directement les points des
quipements dE/S rels. Au lieu de cela, la logique utilise une copie des
donnes dE/S. Mettez les E/S dans un buffer dans les situations suivantes :
Pour empcher le changement dune valeur dentre ou de sortie lors de
lexcution dun programme. (Les E/S sont mises jour de faon
asynchrone par rapport lexcution de la logique.)
Pour copier un point dentre ou de sortie dans un membre de structure
ou un lment de tableau.

Mise en buffer des E/S

Pour mettre les E/S dans un buffer, procdez comme suit :


1. Sur la ligne prcdant la logique pour la (les) fonction(s), copiez ou
dplacez les donnes des points dentre requis dans les points de buffer
correspondants.
2. Dans la logique de la (des) fonction(s), rfrencez les points de buffer.
3. Sur la ligne suivant la (les) fonction(s), copiez les donnes des points de
buffer dans les points de sortie correspondants.
Lexemple suivant copie les entres et les sorties dans les points dune structure
destine une perceuse.

Publication 1756-PM001E-FR-P - Aot 2002

12-2

Mise en buffer des E/S

EXEMPLE

Mise en buffer des E/S

Le sous-programme principal excute les sous-programmes suivants dans lordre indiqu.

JSR
Jump to Subroutine
Routine name map_inputs

JSR
Jump to Subroutine
Routine name drill

JSR
Jump to Subroutine
Routine name map_outputs

Le sous-programme map_inputs copie les valeurs des dispositifs dentre dans les points correspondants utiliss
dans le sous-programme drill.
_1791_8AC:I.Data[0].0

drill[1].depth_limit

_1791_8AC:I.Data[0].4

drill[1].home_limit

Le sous-programme drill excute la logique lie la perceuse.


drill[1].part_advance
/

one_shots.0
ONS

drill[1].depth_limit
/

drill[1].forward

drill[1].forward

drill[1].depth_limit

drill[1].home_limit
/

drill[1].retract

drill[1].retract

Le sous-programme map_outputs copie les valeurs des points de sortie du sous-programme drill dans les dispositifs
de sortie correspondants.
drill[1].forward

_1791_8AC:O.Data[0].0

drill[1].retract

_1791_8AC:O.Data[0].1

42369

Publication 1756-PM001E-FR-P - Aot 2002

Mise en buffer des E/S

12-3

Lexemple suivant utilise linstruction CPS pour copier un tableau de donnes


reprsentant les dispositifs dentres dun rseau DeviceNet.

EXEMPLE

Buffer des E/S

Local:0:I.Data stocke les donnes dentre du rseau DeviceNet connect au module 1756-DNB dans
lemplacement 0. Afin de synchroniser les entres avec lapplication, linstruction CPS copie les donnes dentre
sur input_buffer.
Pendant que linstruction CPS copie les donnes, aucune actualisation des E/S ne peut modifier les donnes.
Au cours de son excution, lapplication utilise les donnes dentre de input_buffer comme entres.
CPS
Synchronous Copy File
Source Local:0:I.Data[0]
Dest
input_buffer[0]
Length
20

42578

Publication 1756-PM001E-FR-P - Aot 2002

12-4

Mise en buffer des E/S

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

13

Test dun projet

Test dun projet

Pour vrifier un projet, procdez comme suit :

Configuration dun driver de communication


Chargement dun projet dans lautomate
Slection dun mode pour lautomate
Correction dun dfaut majeur
Sauvegarder les modifications en ligne

En outre, vous pouvez galement :


Utiliser des instructions de commande de programme pour isoler
lexcution de la logique de sous-programmes ou de lignes spcifiques
Voir Automate Logix5000 - Jeu d'instructions - Manuel de rfrence
(publication 1756-RM003).
Forcer des valeurs dentre ou de sortie. Reportez-vous Forage des
lments de la logique, page 18-1.

Configuration dun driver de


communication

Le logiciel RSLogix 5000 requiert un driver de communication pour


communiquer avec un automate. Vous configurez les drivers de
communication laide du logiciel RSLinx.
1. Lancez le logiciel RSLinx.
2. Dans le menu Communications, slectionnez Configure Drivers (configurer
drivers).
3. Dans la liste droulante Types de driver disponibles, slectionnez un
driver.

Pour ce rseau

Slectionnez ce driver
Ordinateur de bureau

Ordinateur portable

srie

Equipements DF1 RS-232

Equipements DF1 RS-232

DH+

1784-KT/KTX(D)/PKTX(D)

1784-PCMK

ControlNet

1784-KTC(X)

1784-PCC

Ethernet

Equipements Ethernet

Equipements Ethernet

DeviceNet

Drivers DeviceNet (drivers


1784-PCD/PCIDS, 1770-KFD,
SDNPT)

Drivers DeviceNet (drivers


1784-PCD/PCIDS, 1770-KFD,
SDNPT)

4. Cliquez sur Ajoruter nouveau.


5. Pour attribuer un nom descriptif au driver, changez le nom par dfaut.
1

Publication 1756-PM001E-FR-P - Aot 2002

13-2

Test dun projet

6. Choisissez OK.
7. Configurez le driver :
Pour ce driver

Faites ceci

srie

A. Dans la liste droulante Port Comm, slectionnez le port srie


de lordinateur que le driver va utiliser.
B. Dans la liste droulante Equipement, slectionnez Port srie
Logix 5550.
C. Cliquez sur Auto configurer.

ControlNet

A. Dans le champ Station Name (nom de station), entrez un nom


qui identifiera lordinateur dans la fentre RSWho.
B. Slectionnez la valeur dinterruption, ladresse mmoire et
ladresse de base des E/S.
C. Dans le champ Adresse rseau, entrez le numro de station
ControlNet que vous voulez attribuer lordinateur.

DH+

A. Dans la liste droulante Value (valeur), slectionnez le type


de carte dinterface que le driver va utiliser.
B. Dans la liste Property (proprit), slectionnez la rubrique
suivante.
C. Dans le champ Value, entrez ou slectionnez la valeur
approprie.
D. Rptez les tapes B. et C. pour les proprits restantes.

Ethernet

Pour chaque quipement Ethernet, prsent sur ce rseau, avec lequel


vous voulez communiquer (ex., chaque module 1756-ENET ou
automate PLC-5E), ajoute une entre de tableau :
A. Dans la colonne Host Name (nom dhte), tapez ladresse IP
ou le nom de lhte de lquipement Ethernet.
B. Voulez-vous communiquer avec un autre quipement
Ethernet de ce rseau ?
Si
Oui
Non

3. Cliquez sur OK.


4. Cliquez sur Close (fermer).

Publication 1756-PM001E-FR-P - Aot 2002

Alors
1. Choisissez Ajouter nouveau.
2. Allez ltape A.
Allez ltape suivante.

Test dun projet

Chargement dun projet


dans lautomate

13-3

Utilisez cette procdure pour charger un projet dans lautomate pour excuter
sa logique.
Lorsque vous chargez un projet, vous perdez le projet et les donnes
actuellement dans lautomate, si un projet sy trouve.
Si la rvision de lautomate ne correspond pas la rvision du projet,
une invite vous demande de mettre jour le firmware de lautomate. Le
logiciel RSLogix 5000 vous permet de mettre jour le firmware de
lautomate pendant la squence de chargement.
ATTENTION

!
IMPORTANT

Lorsque vous chargez un projet ou que vous mettez jour


le firmware, tous les axes asservis sont arrts. Avant de
charger un projet ou de mettre jour le firmware,
assurez-vous que ceci ne provoquera pas de mouvements
imprvus dun axe.

Pour mettre jour le firmware de lautomate, installez


dabord un kit de mise jour du firmware.
Un kit de mise jour est disponible sur un CD
supplmentaire avec le logiciel RSLogix 5000.
Pour charger un kit de mise jour, allez www.ab.com.
Slectionnez Support produit. Puis, slectionnez Mises
jour du firmware.

1. Ouvrez le projet RSLogix 5000 que vous voulez charger.


2. Dans le menu Communications, slectionnez Who Active.
3. Droulez le rseau jusqu ce que lautomate soit affich.
Pour drouler un rseau dun
niveau, effectuez lune des actions
suivantes :

Cliquez deux fois sur le


rseau.
Slectionnez le rseau et
appuyez sur la touche
.
Cliquez sur le bouton +.

Workstation

Linx Gateways, Ethernet

driver

communication module

backplane

controller

4. Slectionnez lautomate.
5. Chosissez Download (charger).

Publication 1756-PM001E-FR-P - Aot 2002

13-4

Test dun projet

6. Comment le logiciel a-t-il rpondu :


Si le logiciel indique :

Alors :

Charg vers lautomate

Allez l'tape 7.

Echec du chargement vers lautomate. Les rvisions du


Allez l'tape 9.
projet hors ligne et du firmware de lautomate ne sont pas
compatibles.

7. Chosissez Download (charger).


Le projet est charg vers lautomate et le logiciel RSLogix 5000 se met
en ligne.
8. Passez le reste de cette procdure.
9. Slectionnez Update Firmware (mettre jour le firmware).

10.

11.

43056

10. Slectionnez la rvision requise pour lautomate.


11. Slectionnez Update (mettre jour).
Une bote de dialogue vous demande de confirmer la mise jour.
12. Pour mettre jour lautomate, slectionnez Oui.
Les vnements suivants se produisent :
Le firmware de lautomate est mis jour.
Le projet est charg dans lautomate.
Le logiciel RSLogix 5000 se met en ligne.

Publication 1756-PM001E-FR-P - Aot 2002

Test dun projet

Slection dun mode pour


lautomate

13-5

Pour vrifier un projet, slectionnez un mode pour lautomate.

42627

A
42525

Pour

Slectionnez lun de ces modes


Excution

PROG
Excution

mettre les entres dans ltat


demand par la logique du projet

excuter (scruter) des tches

Programme

Test

slection RSLogix 5000 B

mettre les sorties dans ltat


configur pour le mode
programme

slection du
commutateur cl

REM

changer le mode de lautomate


par le biais du logiciel
charger un projet

planifier un rseau ControlNet

modifier le projet en ligne

envoyer des messages

envoyer et recevoir des donnes


en rponse au message dun
autre automate

produire et consommer des points

Publication 1756-PM001E-FR-P - Aot 2002

13-6

Test dun projet

Correction dun dfaut


majeur

Si lautomate passe en mode dfaut, un dfaut majeur sest produit et


lautomate a arrt dexcuter la logique.

Lautomate est en dfaut. Un dfaut


majeur sest produit et lautomate
nexcute plus sa logique.

43057

1.

Pour corriger un dfaut majeur :


1. Cliquez sur le bouton

2. Utilisez les informations de la liste Dfauts rcents pour supprimer la cause


du dfaut. Reportez-vous Codes de dfaut majeur, page A-1.
3. Cliquez sur le bouton Effacer les dfauts majeurs.

CONSEIL

Sauvegarder les
modifications en ligne

Vous pouvez galement effacer le dfaut majeur en utilisant


le commutateur cl sur lautomate. Mettez le
commutateur cl sur Prog, puis sur Run puis nouveau
sur Prog.

Si vous apportez des modifications au projet pendant que vous tes en ligne,
sauvegardez le projet pour que le fichier du projet hors ligne corresponde au
fichier du projet en ligne :
Pour

Faites ceci

enregister les modifications et les valeurs


de donnes en ligne

Dans le menu Fichier, slectionnez


Enregistrer.

enregister les modifications en ligne mais


pas les valeurs de donnes en ligne

Publication 1756-PM001E-FR-P - Aot 2002

A. Dans le menu Communications,


slectionnez Hors ligne.
B. Dans le menu Fichier, slectionnez
Enregistrer.

Chapitre

14

Communication avec un autre automate

Utilisez cette procdure pour transfrer des donnes entre des automates
(envoi ou rception de donnes). Vous pouvez transfrer des donnes en
utilisant lune des mthodes suivantes :

Quand utiliser cette


procdure

Production et consommation dun point


Envoi dun message

Comment utiliser cette


procdure

Slectionnez une mthode pour le transfert des donnes entre les automates :

Si les donnes :

Alors :

Se
reporter
la page :

doivent tre transmises rgulirement,


une frquence que vous spcifiez
(c.--d., dterministe)

Production et consommation dun point

14-1

sont envoyes lorsquune condition


spcifique surgit dans votre application

Envoi dun message

14-11

sont rassembles partir de plusieurs


automates (et que les points consomms ne
sont pas une option ou ne sont pas dsirs)

Envoi dun message vers plusieurs


automates

14-13

Production et
consommation dun point

Un point produit envoie ses donnes un ou plusieurs point


consomms (clients) sans utiliser de logique relais.

automate_1

automate_2

point produit

point
consomm

automate_3
point
consomm

automate_4
point
consomm

Publication 1756-PM001E-FR-P - Aot 2002

14-2

Communication avec un autre automate

Vous pouvez utiliser des points produits et consomms avec les combinaisons
dautomate et de rseau suivantes.
Cet automate :

Peut produire et consommer des points sur ce rseau :


Fond de panier

ControlNet

SLC 500

PLC-5

ControlLogix

Ethernet

FlexLogix

SoftLogix

Les points produits et consomms fonctionnent de la faon suivante :


Une connexion transfre les donnes entre les automates :
Plusieurs automates peuvent consommer (recevoir) les donnes.
Les donnes sont mises jour lintervalle entre trames
requis (RPI), comme configur par les points consommateurs.
Chaque point produit ou consomm utilise le nombre de connexions
suivant :
Chaque :

Utilise ce nombre de connexions :

point produit

nombre_de_consommateurs + 1

point consomm

EXEMPLE

Connexions utilises par des points produits ou


consomms
La production dun point pour 5 automates
(consommateurs) utilise 6 connexions
(5 consommateurs + 1 = 6).
La production de 4 points pour un automate utilise 8
connexions :
Chaque point utilise 2 connexions
(1 consommateur + 1 = 2).
2 connexions par point x 4 points = 8 connexions
La consommation de 4 points partir dun automate
utilise 4 connexions (1 connexion par point x 4 points
= 4 connexions).

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un autre automate

14-3

Ce que vous devez faire


Pour partager des donnes avec un ou plusieurs autres automates, procdez
comme suit :
Organiser des points pour les donnes produites et consommes
Produire un point
Consommer un point produit
Selon votre systme, vous devrez peut-tre aussi :

Produire des nombres entiers pour un automate PLC-5C


Produire des REAL pour automate PLC-5C
Consommer des nombres entiers partir dun automate PLC-5C
Rgler pour les limites de la bande passante

Organiser des points pour les donnes produites et consommes


Lorsque vous crez des points qui, par la suite, produiront ou consommeront
des donnes (partageront des donnes), conformez-vous aux directives
suivantes :
1. Crez les points avec accs automate. Vous ne pouvez partager que
des points daccs automate.
2. Utilisez un des types de donnes suivants :
DINT
REAL
tableau de DINT ou de REAL
dfini par lutilisateur
3. Pour partager un type de donnes autre que ceux lists la directive 2.,
crez un type de donnes dfini par lutilisateur contenant les donnes
requises.
4. Utilisez le mme type de donnes pour le point produit et le ou les
point (s) consomm(s) correspondant(s).
5. Pour partager des points avec un automate PLC-5C, utilisez un type de
donnes dfini par lutilisateur. Voir les sections suivantes :
Produire des nombres entiers pour un automate PLC-5C, 14-6
Produire des REAL pour automate PLC-5C, 14-7
Consommer des nombres entiers partir dun automate PLC-5C,
14-9

Publication 1756-PM001E-FR-P - Aot 2002

14-4

Communication avec un autre automate

6. Limitez la taille du point pour quil soit infrieur ou gal 500 octets. Si
vous devez transfrer plus de 500 octets, crez une logique pour
transfrer les donnes en paquets. Reportez-vous Production dun
tableau de grande taille, page 15-2.
7. Si vous produisez le point sur un rseau ControlNet, le point peut
devoir tre infrieur 500 octets. Reportez-vous Rgler pour les
limites de la bande passante, page 14-10.
8. Si vous produisez plusieurs points pour le mme automate :
Regroupez les donnes dans un ou plusieurs types de donnes dfinis
par lutilisateur. (Ceci utilise moins de connexions que le fait de
produire chaque point sparment)
Regroupez les donnes selon des vitesses dactualisation similaires.
(Pour conomiser de la bande passante rseau, utilisez un RPI
suprieur pour les donnes non critiques.)
Par exemple, vous pouvez crer un point pour des donnes critiques et
un autre pour des donnes non critiques.

Produire un point
1. Ouvrez le projet RSLogix 5000 qui contient le point que vous voulez
produire.
2. Dans le menu Logique, slectionnez Modifier points.
3. Dans le menu Accs, slectionnez nom_de_lautomate(automate).
(Seuls les points daccs automate peuvent produire des donnes.)
4. Slectionnez le point qui produira les donnes et appuyez sur les
touches ALT + Entre.

5.

6.

42352

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un autre automate

14-5

5. Slectionnez le bouton Produit.


6. Tapez ou slectionnez le nombre dautomates qui vont consommer
(recevoir) le point.
7. Cliquez sur OK.
8. Configurez un point dans un ou plusieurs autres automates pour quil
consomme le point produit. Reportez-vous Consommer un point
produit, page 14-5.

Consommer un point produit


1. Ouvrez le projet RSLogix 5000 qui va consommer le point produit.
2. Dans larborescence de lautomate, Configuration des E/S, ajoutez
lautomate qui contient le point produit.
3. Dans le menu Logique, slectionnez Modifier points.
4. Dans le menu Accs, slectionnez nom_de_lautomate(automate).
(Seuls les points daccs automate peuvent consommer dautre points.)
5. Slectionnez le point, dans cet automate, qui va consommer le point
produit et appuyez sur les touches ALT + Entre.

6.
7.
8.
9.
42353

10.

6. Slectionnez le bouton Consomm.

Publication 1756-PM001E-FR-P - Aot 2002

14-6

Communication avec un autre automate

7. Slectionnez lautomate qui contient le point produit.


8. Tapez le nom du point produit.
9. Slectionnez le mme type de donnes que pour le point produit.
10. Tapez ou slectionnez le temps prvu entre deux mises jour du point :
Utilisez la plus grande valeur admissible pour votre application.
Si lautomate consomme le point sur un rseau ControlNet, utilisez
un un multiple binaire du frquence dactualisation du rseau
(NUT) ControlNet.
Par exemple, si le temps de mise jour du rseau est de 5 ms, entrez
une frquence de 5, 10, 20, 40 ms, etc.
11. Cliquez sur OK.
12. Si vous partagez le point sur un rseau ControlNet, utilisez le logiciel
RSNetWorx pour ControlNet pour planifier le rseau.

IMPORTANT

Si une connexion de point consomm choue, tous les


autres points consomms partir de cet automate
dcentralis arrtent galement de recevoir des donnes.

Produire des nombres entiers pour un automate PLC-5C


1. Ouvrez le projet RSLogix 5000.
2. Crez un type de donnes dfini par lutilisateur qui contient un tableau
INT avec un nombre impair dlments, tel que INT[2]. (Lorsque vous
produisez des INT, vous devez en produire deux ou plus.)
3. Crez un point produit et slectionnez le type de donnes dfini par
lutilisateur cr ltape 2.
4. Lancez le logiciel RSNetWorx for ControlNet.
5. Dans la configuration ControlNet de lautomate PLC-5C cible :
a. Insrez une instruction Recevoir message planifi.
b. Pour la taille du message, entrez le nombre de nombres entiers dans
le point produit.
6. Dans le logiciel RSNetWorx for ControlNet, planifiez le rseau.

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un autre automate

14-7

Produire des REAL pour automate PLC-5C


1. Ouvrez le projet RSLogix 5000.
2. Combien de valeurs voulez-vous produire ?
Si vous produisez :

Alors :

Une seule valeur REAL

Crez un point produit et slectionnez le type de donnes


REAL.

Plusieurs valeurs REAL

A. Crez un type de donnes dfini par lutilisateur


contenant un tableau de REAL.
B. Crez un point produit et slectionnez le type de
donnes dfini par lutilisateur cr ltape A.

3. Lancez le logiciel RSNetWorx pour ControlNet.


4. Dans la configuration ControlNet de lautomate PLC-5C cible :
a. Insrez une instruction Recevoir message planifi.
b. Pour la taille du message, entrez le nombre de REAL dans le point
produit multipli par deux. Par exemple, si le point produit contient
10 REAL, entrez 20 comme taille du message.
CONSEIL

Lorsquun automate PLC-5C consomme un point produit par un


automate Logix5000, il stocke les donnes dans des nombres entiers
de 16 bits conscutifs. Le PLC-5C stocke les donnes virgule
flottante, qui requirent 32 bits, quel que soit le type de lautomate,
ainsi :
Le premier nombre entier contient les bits suprieurs de la valeur
(les plus gauche).
Le deuxime nombre entier contient les bits infrieurs de la valeur
(les plus droite).
Ce schma est valable pour toutes les valeurs virgule flottante.

Publication 1756-PM001E-FR-P - Aot 2002

14-8

Communication avec un autre automate

5. Dans lautomate PLC-5C, reconstruisez les donnes virgule flottante,


comme dcrit dans lexemple suivant :
EXEMPLE

Reconstruction dune valeur virgule flottante

Les deux instructions MOV inversent lordre des nombres entiers quand ceux-ci sont transfrs vers un nouvel
emplacement. La destination de la nouvelle instruction COP tant une adresse virgule flottante, il faut deux
nombres entiers contigus, avec un total de 32 bits, qui sont convertis en une seule valeur virgule flottante.

42354

6. Dans le logiciel RSNetWorx pour ControlNet, planifiez le rseau.

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un autre automate

14-9

Consommer des nombres entiers partir dun automate PLC-5C


1. Lancez le logiciel RSNetWorx pour ControlNet.
2. Dans la configuration de lautomate PLC-5C, insrez un message
denvoi planifi.
3. Ouvrez le projet RSLogix 5000.
4. Dans la fentre dorganisation de lautomate, ajoutez lautomate PLC-5C
la configuration des E/S.
5. Crez un type de donnes dfini par lutilisateur contenant les membres
suivants :
Type de donnes :

Description :

DINT

Etat

INT[x], o x est la taille de sortie des


donnes de lautomate PLC-5C. (Si vous
ne consommez quun seul INT, aucune
dimension nest requise.)

Donnes produites par un automate


PLC-5C

6. Crez un point consomm avec les proprits suivantes :


Pour cette proprit : Tapez ou slectionnez :
Type de point

Consomm

Automate

Le PLC-5C qui produit les donnes

Instance dcentralise

Le numro du message dans la configuration ControlNet


de lautomate PLC-5C

RPI

Une puissance de deux fois la valeur NUT du rseau


ControlNet. Par exemple, si la valeur NUT est de 5 ms,
slectionnez un RPI de 5, 10, 20, 40, etc.

Type de donnes

Le type de donnes dfini par lutilisateur que vous avez


cr ltape 5.

7. Dans le logiciel RSNetWorx pour ControlNet, planifiez le rseau.

Publication 1756-PM001E-FR-P - Aot 2002

14-10

Communication avec un autre automate

Rgler pour les limites de la bande passante


Lorsque vous partagez un point sur un rseau ControlNet, ce point doit
pouvoir passer dans la bande passante du rseau :
Lorsque le nombre de connexions sur un rseau ControlNet augmente,
plusieurs dentre elles, y compris les points produits et consomms,
peuvent avoir partager un temps de mise jour du rseau (NUT).
Un rseau ControlNet ne pouvant communiquer que 500 octets dans un
temps de mise jour du rseau (NUT), les donnes de chaque
connexion doivent tre infrieures 500 octets pour entrer dans le
NUT.
Selon la taille de votre systme, il se peut que vous nayez pas assez de bande
passante sur votre rseau ControlNet pour un point de 500 octets. Si un point
est trop grand pour le rseau ControlNet, effectuez au moins un des
ajustements suivants :
Diminuez la dure de mise jour du rseau (NUT). Avec une dure
NUT plus courte, moins de connexions doivent partager une mise
jour.
Augmentez lintervalle entre trames requis (RPI) de vos connexions.
Avec des intervalles RPI plus levs, les connexions peuvent envoyer
des donnes chacune leur tour pendant une mise jour.
Pour un module passerelle ControlNet (CNB) dans un chssis
dcentralis, slectionnez le format de communication le plus efficace
pour ce chssis.
Les modules dans le chssis
Slectionnez alors ce format de
sont-ils, pour la plupart, des modules communication pour le module
dE/S TOR sans diagnostics ?
CNB dcentralis
Oui

Natif pour rack

Non

Aucun

Le format natif pour rack utilise 8 octets supplmentaires pour chaque


emplacement dans le chssis. Les modules analogiques ou les modules
qui envoient ou reoivent des donnes de diagnostics, de fusible,
dhorodatage ou de planification requirent des connexions directes et
ne peuvent pas utiliser le format natif pour rack. La slection Aucun
rserve les 8 octets par emplacement pour dautres utilisations, telles que
points produits ou consomms.
Sparez le point en deux points, ou plus, plus petits :
Regroupez les donnes selon des vitesses dactualisation similaires.
Par exemple, vous pouvez crer un point pour des donnes critiques
et un autre pour des donnes non critiques.
Attribuez un RPI diffrent chaque point.
Crez une logique pour transfrer les donnes en sections plus petites
(trames). Reportez-vous Production dun tableau de grande taille,
page 15-2.

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un autre automate

Envoi dun message

14-11

Pour organiser vos donnes pour un message, conformez-vous aux directives


suivantes.
1. Pour chaque message, crez un point qui le commande :
Crez le point avec accs automate.
Utiliser le type de donnes MESSAGE.
Lexemple suivant illustre lutilisation du type de donnes MESSAGE :

EXEMPLE

Message vers un autre automate Logix5000

Lorsque count_send est activ, count_msg envoit les donnes.

count_send

count_msg.en
/

MSG
Type - Unconfigured
Message Control

count_msg ...

EN
DN
ER

Type : MESSAGE
Accs : Automate

42188

2. Dans le cas des points que les messages vont utiliser (points source ou
de destination), crez ces points avec accs automate.
3. Autant que possible, dans lautomate Logix5000, utilisez le type de
donnes DINT pour les nombres entiers :
Les automates Logix5000 fonctionnent de faon plus performante et
utilisent moins de mmoire lorsquils travaillent avec des nombres
entiers de 32 bits (DINT).

Publication 1756-PM001E-FR-P - Aot 2002

14-12

Communication avec un autre automate

4. Si votre message est en provenance ou destination dun automate


PLC-5 ou SLC 500 et quil transfre des nombres entiers (et non des
REAL), utilisez un buffer de nombres entiers INT :
a. Crez un buffer pour les donnes (accs automate) en utilisant le type
de donnes INT[x]
o
x correspond au nombre de nombre entiers dans le message. (Dans
le cas dun seul nombre entier, omettez [x].)
b. Utilisez le buffer dans le message.
c. Utilisez une instruction FAL pour dplacer les donnes entre le
buffer et votre application.
EXEMPLE

Ecriture de valeurs entires dans un automate PLC-5

Dplace en permanence les valeurs du dint_array dans int_buffer, ce qui convertit les valeurs en nombres entiers de 16 bits (INT).
Linstruction de message envoie ensuite int_buffer vers un automate PLC-5.
message.EN
/

fal_control
RES

FAL
File Arith/Logical
Control
fal_control
Length
?
Position
0
Mode
all
Dest
int_buffer[fal_control.pos]
??
Expression
dint_array[fal_control.pos]

EN

MSG
Type - Unconfigured
Message Control

message ...

DN

EN
DN
ER

ER

42192

Lecture de valeurs entires partir dun automate PLC-5


Lit en permanence les valeurs entires de 16 bits (INT) dun automate PLC-5 et les stocke dans int_buffer. Ensuite, linstruction FAL
dplace les valeurs dans dint_array, ce qui convertit les valeurs en nombres entiers de 32 bits (DINT) pour utilisation par dautres
instructions du projet.
message.EN
/

message.DN

MSG
Type - Unconfigured
Message Control

fal_control
RES

message ...

FAL
File Arith/Logical
Control
fal_control
Length
?
Position
0
Mode
all
Dest
dint_array[fal_control.pos]
??
Expression
int_buffer[fal_control.pos]

EN
DN
ER

EN
DN
ER

42192

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un autre automate

Envoi dun message vers


plusieurs automates

14-13

Utilisez la procdure suivante pour programmer une instruction de message


pour la communication avec plusieurs automates. Pour reconfigurer une
instruction MSG pendant le fonctionnement, crivez de nouvelles valeurs dans
les membres du type de donnes MESSAGE.
IMPORTANT

Dans le type de donnes MESSAGE, le membre


RemoteElement stocke le nom du point ou ladresse des
donnes dans lautomate qui reoit le message.
Si le message

RemoteElement est

lit des donnes

Elment Source

crit des donnes

Elment Destination

Nom du point

message
+ message.RemoteElement.
+ message.RemoteIndex.
+ message.LocalIndex.
+ message.Channel.

43052

+ message.Rack.
A

+ message.Group.
+ message.Slot.
+ message.Path.

A. Si vous utilisez un astrisque [*] pour dsigner le numro de llment du


tableau, la valeur dans B fournit le numro de llment.
B. Le champ Index nest disponible que lorsque vous utilisez un astrisque
[*] dans le champ Elment Source ou Elment Destination. Linstruction
remplace la valeur du champ Index par lastrisque [*].

Publication 1756-PM001E-FR-P - Aot 2002

14-14

Communication avec un autre automate

Pour envoyer un message plusieurs automates :

CONSEIL

Rgler la configuration des E/S


Dfinir les lments Source et Destination
Crer le type de donnes MESSAGE_CONFIGURATION
Crer le tableau de configuration
Obtenir la taille du tableau local
Charger les proprits du message dun automate
Configurer le message
Passer lautomate suivant
Recommencer la squence

Pour copier les composants ci-dessus partir dun projet dexemple, ouvrez le
dossier \RSLogix 5000\Projects\Samples .

Ouvrez ce projet.

MSG_to_Multiple_Controllers.ACD
43055

Rgler la configuration des E/S


Bien que ce ne soit pas ncessaire, il est recommand dajouter les modules de
communication et les automates dcentraliss la configuration des E/S de
lautomate. Ceci facilite la configuration du chemin de chaque automate
dcentralis.
Par exemple, aprs avoir ajout le module de communication local, le module
de communication dcentralis et lautomate de destination, le bouton Naviguer
permet de slectionner la destination.
Message Path Browser
Path:

peer_controller

peer_controller

I/O Configuration

[0] 1756-CNB/x Local_CNB

2 [0] 1756-CNB/x chassis_b


[1] 1756-L55/x peer_controller

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un autre automate

14-15

Dfinir les lments Source et Destination


Dans cette procdure, un tableau stocke les donnes lues partir de ou crites
vers chaque automate dcentralis. Chaque lments dans le tableau
correspond un automate dcentralis diffrent.
1. Utilisez le tableau de travail suivante pour organiser les noms des points
dans les automates locaux et dcentraliss :
Nom de lautomate dcentralis :

Point ou adresse des donnes dans


lautomate dcentralis :

Point dans cet automate :


local_array[0]
local_array[1]
local_array[2]
local_array[3]

2. Crez le point local_array, qui stocke les donnes dans cet automate.
Nom du point

Type

local_array

data_type [length ]
o
data_type est le type des donnes que le message
envoit ou reoit ; comme DINT, REAL ou STRING.
length est le nombre dlments dans le tableau local.

Publication 1756-PM001E-FR-P - Aot 2002

14-16

Communication avec un autre automate

Crer le type de donnes MESSAGE_CONFIGURATION


Dans cette procdure, vous crez un type de donnes dfini par lutilisateur
pour stocker les variables de configuration pour le message de chaque
automate.
Certains des membres requis du type de donnes utilisent un type de
donnes chane.
Le type de donnes chane (STRING) par dfaut stocke 82 caractres.
Si vos chemins ou vos noms ou adresses de points dcentraliss utilisent
moins de 82 caractres, vous pouvez crer un nouveau type de chane
qui stocke moins de caractres. Ceci vous permet de conserver de la
mmoire.
Pour crer un nouveau type de chane, slectionnez Fichier Nouveau
composant Type de chane
Si vous crez un nouveau type de chane, utilisez ce type la place du
type de chane de cette procdure.
Pour crer un nouveau type de donnes :

+ Controller Your_Project
+ Tasks
+ Motion Groups
Trends

Data
Types
User-Defined

Cliquez avec le bouton droit de la


souris et slectionnez Nouveau type
de donnes.

Publication 1756-PM001E-FR-P - Aot 2002

Pour stocker les variables de configuration pour le message de chaque


automate, crez le type de donnes utilisateur suivant.
Type de donnes :MESSAGE_CONFIGURATION
nom

MESSAGE_CONFIGURATION

description

Configuration properties for a message to another controller

Membres
nom

type de
donnes

+ Path

STRING

+ RemoteElement

STRING

style

description

Communication avec un autre automate

14-17

Crer le tableau de configuration


Dans cette procdure, vous stockez les proprits de la configuration de
chaque automate dans un tableau. Avant chaque excution de linstruction
MSG, votre logique charge les nouvelles proprits dans linstruction. Ceci
envoit le message vers un automate diffrent.
Figure 14.1 Chargement de nouvelles proprits de configuration dans une
instruction MSG
Tableau de configuration
Proprits du message

message_config
message_config[0]

premire excution du
message

+ message_config[0].Path

message
+ message.Path.
+ message.RemoteElement.

+ message_config[0].RemoteElement
message_config[1]

excution suivante du
message

+ message_config[1].Path

Proprits du message

+ message_config[1].RemoteElement

message
+ message.Path.
+ message.RemoteElement.

Etapes :
1. Pour stocker les proprits de configuration du message, crez le tableau
suivant :
Nom du point

Type

Accs

message_config

MESSAGE_CONFIGURATION[number ]

toute

o
number est le nombre dautomates auxquels le message est envoy.

Publication 1756-PM001E-FR-P - Aot 2002

14-18

Communication avec un autre automate

2. Dans le tableau message_config, entrez le chemin du premier automate


qui reoit le message.
Nom du point

Valeur

message_config

{}

message_config[0]

{}

Cliquez avec le bouton droit de la souris et


slectionnez Aller lditeur du chemin de
message.

+ message_config[0].Path
+ message_config[0].RemoteElement

Tapez le chemin de
lautomate
dcentralis.
ou
Naviguez jusqu
lautomate
dcentralis.

Message Path Browser


Path:
peer_controller
I/O Configuration

3. Dans le tableau message_config, entrez le nom ou ladresse du point de


donnes du premier automate qui reoit le message.
Nom du point

Valeur

message_config

{}

message_config[0]

{}

+ message_config[0].Path
+ message_config[0].RemoteElement
message_config[1]

...
{}

+ message_config[1].Path
+ message_config[1].RemoteElement

Tapez le nom ou ladresse du point des


donnes dans lautre automate.

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un autre automate

14-19

4. Entrez le chemin et llment dcentralis pour chaque automate


supplmentaire :
Nom du point

Valeur

message_config

{}

message_config[0]

{}

+ message_config[0].Path
+ message_config[0].RemoteElement
message_config[1]

{}

+ message_config[1].Path
+ message_config[1].RemoteElement

Obtenir la taille du tableau local

1.
2.
3.
43051

1. Linstruction SIZE compte le nombre dlments dans local_array.


2. Cette instruction compte le nombre dlments dans Dimension 0 du
tableau. Dans ce cas, cest la seule dimension.
3. Local_array_length stocke la taille (nombre dlments) de local_array.
Cette valeur indique une ligne ultrieure quand le message a t envoy
tous les automates et indique galement de recommencer avec le
premier automate.
Nom du point

Type

local_array_length

DINT

Publication 1756-PM001E-FR-P - Aot 2002

14-20

Communication avec un autre automate

Charger les proprits du message dun automate


1.
2.
3.

4.
5.

6.
43051

1. Cette instruction XIO indique la ligne denvoyer le message de faon


continue.
Nom du point

Type

Accs

message

MESSAGE

automate

2. Linstruction COP charge le chemin du message. La valeur de index


dtermine quel lment de linstruction est charg partir de
message_config. Voir la figure 14.1, page 14-17.
Nom du point

Type

Accs

index

DINT

toute

3. Linstruction charge 1 lment de message_config.


4. Linstruction COP charge le nom ou ladresse du point des donnes
dans lautomate qui reoit le message. La valeur de index dtermine quel
lment de linstruction est charg partir de message_config. Voir la
figure 14.1, page 14-17.
5. Linstruction charge 1 lment de message_config.
6. Instruction MSG

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un autre automate

14-21

Configurer le message
Bien que votre logique commande llment dcentralis et le chemin du
message, la bote de dialogue Proprits du message requiert une configuration
initiale.

IMPORTANT

43054

Dcochez la case Connexion cache.

Dans cet onglet

Pour

Configuration

lire (recevoir) des donnes des Type de message


autres automates
Elment Source

crire (envoyer) des donnes


vers dautres automates

Communication

Pour cet lment

Tapez ou slectionnez
le type lecture qui correspond aux autres automates
point ou adresse qui continet les donnes dans le premier
automate

Nombre dlments

Point de destination

local_array[*]

Index

Type de message

le type criture qui correspond aux autres automates

Point source

local_array[*]

Index

Nombre dlments

Elment Destination

point ou adresse qui contient les donnes dans le premier


automate

Chemin

chemin du premier automate

Connexions cache

Dcochez la case Connexion cache. Cette procdure


change continuellement le chemin du message, il est
donc plus efficace de dcocher cette case.

Publication 1756-PM001E-FR-P - Aot 2002

14-22

Communication avec un autre automate

Passer lautomate suivant


1.

2.

3.

43051

1. Aprs lenvoi du message par linstruction MSG


2. Cette instruction ADD incrmente index. Ceci permet la logique de
charger les proprits de la configuration de lautomate suivant dans
linstruction MSG.
3. Cette instruction ADD incrmente le membre LocalIndex de linstruction
MSG. Ceci permet la logique de charger la valeur de lautomate suivant
dans llment suivant de local_array.

Recommencer la squence
1.

2.

3.

43051

1. Lorsque index est gal local_array_length, lautomate a envoy le


message aux autres automates.
2. Cette instruction CLR rgle index sur 0. Ceci permet la logique de
charger les proprits de configuration du premier automate dans
linstruction MSG et recommence la squence des messages.
3. Cette instruction CLR rgle le membre LocalIndex de linstruction MSG
sur 0. Ceci permet la logique de charger la valeur du premier automate
dans le premier lment de local_array.

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

15

Production dun tableau de grande taille

Quand utiliser cette


procdure

Lautomate Logix5550 peut envoyer un maximum de 500 octets de donnes


via une seule connexion planifie. Ceci correspond 125 lments DINT ou
REAL dun tableau. Pour transfrer un tableau de plus de 125 DINT ou
REAL, utilisez un point produit/consomm de 125 lments pour crer une
trame de donnes. Vous pouvez alors utiliser la trame pour envoyer le tableau
par segments vers un autre automate.
Lorsque vous envoyez un grand tableau de donnes en trames plus petites,
vous devez vrifier que la transmission de la trame est termine avant que les
donnes ne soient transfres dans le tableau de destination, ceci pour les
raisons suivantes :
Les donnes produites sur le fond de panier ControlLogix sont
envoyes en segments de 50 octets.
La transmission des donnes est asynchrone la scrutation du
programme.
La logique contenue dans cette section utilise un mot de confirmation pour
sassurer que chaque trame contient les nouvelles donnes avant que celles-ci
ne soient transfres vers le tableau de destination. La logique utilise galement
une valeur doffset pour identifier llment de dpart de la trame dans le
tableau.
En raison de la prsence des lments doffset et de confirmation, chaque
trame transfre 123 lments de donnes du tableau, tel que dcrit ci-dessous :
Producteur

Consommateur

tableau

tableau
trame

trame

123 offset
124 confirmation

offset
confirmation

Publication 1756-PM001E-FR-P - Aot 2002

15-2

Production dun tableau de grande taille

De plus, le tableau doit contenir 122 lments supplmentaires. Cest--dire


quil doit contenir 122 lments de plus que le plus grand nombre dlments
que vous voulez transfrer.
Ces lments servent de buffer.
Puisque chaque trame contient le mme nombre dlments, le buffer
empche lautomate de copier au-del de la limite du tableau.
Sans le buffer, ceci se produirait si la dernire trame contenait moins de
123 lments de donnes relles.

Production dun tableau de


grande taille

1. Ouvrez le projet RSLogix 5000 qui va produire le tableau.


2. Dans le dossier Points de lautomate, crez les points suivants :
P:

Nom du point :

Type :

array_ack

DINT[2]

array_packet

DINT[125]

o :
array est le nom des donnes que vous envoyez.
3. Convertissez array_ack en point consomm :
Pour :

Spcifiez :

Automate

le nom de lautomate qui reoit la trame

Nom du point dcentralis array_ack


Les deux automates utilisent le mme nom pour ces
donnes partages.

Reportez-vous Consommer un point produit, page 14-5.

Publication 1756-PM001E-FR-P - Aot 2002

Production dun tableau de grande taille

15-3

4. Dans le dossier Points de lautomate ou dans le dossier des points du


programme qui contient la logique pour le transfert, crez les points
suivants :
Nom du point :

Type :

tableau

DINT[x] o x est gal au nombre dlments


transfrer plus 122 lments

array_offset

DINT

array_size

DINT

array_transfer_time

DINT

array_transfer_time_max

DINT

array_transfer_timer

TIMER

o :
array est le nom des donnes que vous envoyez.
5. Dans le point array_size, entrez le nombre dlments de donnes relles.
(La valeur de x de ltape 4. moins les
122 lments du buffer.)
6. Crez ou ouvrez un sous-programme pour la logique qui cre les trames
de donnes.
7. Entrez la logique suivante :
Calcule le temps ncessaire lenvoi de tout le tableau
TON
Timer On Delay
Timer
array_transfer_timer
Preset
10000000
Accum
0

EN
DN

Lorsque la valeur doffset dans array_ack[0] nest pas gale la valeur doffset actuelle mais array_ack[1] est gal
999, le consommateur a commenc recevoir une nouvelle trame ; la ligne dplace alors 999 dans le dernier
lment de la trame. Le consommateur attend de recevoir la valeur 999 avant de copier la trame dans le tableau. Ceci
garantit que le consommateur obtient des donnes nouvelles.
NEQ
Not Equal
Source A

array_ack[0]
0
Source B array_packet[123]
0

EQU
Equal
Source A array_ack[1]
0
Source B
-999

MOV
Move
Source

-999

Dest array_packet[124]
0

Publication 1756-PM001E-FR-P - Aot 2002

15-4

Production dun tableau de grande taille

Lorsque la valeur doffset dans array_ack[0] est gale la valeur doffset actuelle, le consommateur a copi la trame
dans le tableau ; la ligne recherche alors dautres donnes transfrer. Si la valeur doffset plus 123 est infrieure la
taille du tableau, il existe dautres donnes transfrer, la ligne augmente alors loffset de 123. Sinon, il ny a plus de
donnes transfrer, la ligne rinitialise alors la valeur doffset, enregistre la dure du transfert et rinitialise le
compteur. Dans les deux cas, la ligne utilise la nouvelle valeur doffset pour crer une nouvelle trame de donnes,
ajoute la nouvelle valeur doffset la trame et efface llment de confirmation de la trame (packet[124]).
EQU
Equal
Source A

array_ack[0]
0
Source B array_packet[123]
0
CMP
Compare
Expression (array_ack[0] + 123) < array_size

ADD
Add
Source A array_packet[123]
0
Source B
123
Dest

CMP
Compare
Expression (array_ack[0] + 123) >= array_size

array_offset
0
CLR
Clear
Dest array_offset
0

MOV
Move
Source array_transfer_timer.ACC
0
Dest
array_transfer_time
0
array_transfer_timer
RES
COP
Copy File
Source array[array_offset]
Dest
array_packet[0]
Length
123

MOV
Move
Source

array_offset
0
Dest array_packet[123]
0

CLR
Clear
Dest array_packet[124]
0

Si la dure de transfert en cours est suprieure la dure de transfert maximum, la dure de transfert maximum est
mise jour. Ceci permet de garder une trace de la dure de transfert de donnes la plus longue.
GRT
Greater Than (A>B)
Source A
array_transfer_time
0
Source B array_transfer_time_max
0

MOV
Move
Source

array_transfer_time
0
Dest array_transfer_time_max
0

42355

Publication 1756-PM001E-FR-P - Aot 2002

Production dun tableau de grande taille

15-5

8. Ouvrez le projet RSLogix 5000 qui va consommer le tableau.


9. Dans le dossier Points de lautomate, crez les points suivants :
P:

Nom du point :

Type :

array_ack

DINT[2]

array_packet

DINT[125]

o :
array est le nom des donnes que vous envoyez. Utilisez le mme nom
que dans lautomate producteur (tape 2.).
10. Convertissez array_ack en point consomm :
Pour :

Spcifiez :

Automate

le nom de lautomate qui envoie la trame

Nom du point dcentralis array_packet


Les deux automates utilisent le mme nom pour ces
donnes partages.

Reportez-vous Consommer un point produit, page 14-5.


11. Dans le dossier Points de lautomate ou dans le dossier de points du
programme qui contient la logique pour le transfert, crez les points
suivants :
Nom du point :

Type :

tableau

DINT[x] o x est gal au nombre dlments


transfrer plus 122 lments

array_offset

DINT

o :
array est le nom des donnes que vous envoyez.
12. Crez ou ouvrez un sous-programme pour la logique qui doit transfrer
les donnes des trames vers le tableau de destination.
13. Entrez la logique suivante :

Publication 1756-PM001E-FR-P - Aot 2002

15-6

Production dun tableau de grande taille

Lorsque la valeur doffset dans array_packet[123] est diffrente de la valeur doffset dans array_ack[0], lautomate a
commenc recevoir une nouvelle trame de donnes ; la ligne recherche la valeur 999 dans le dernier lment de la
trame.
Si le dernier lment de la trame est gal 999, lautomate a reu une trame entire de nouvelles donnes et
commence lopration de copie :
La valeur doffset passe de la trame array_offset.
Linstruction COP copie les donnes de la trame vers le tableau de destination, en commenant la valeur
doffset.
La valeur doffset passe array_ack[0], ce qui indique que la copie est termine.
Array_ack[1] est remis zro et attend pour signaler larrive dune nouvelle trame de donnes.
Si le dernier lment de la trame nest pas gal 999, le transfert de la trame dans lautomate peut ne pas tre
termin ; 999 passe donc array_ack[1]. Cela signale au producteur de retourner la valeur 999 dans le dernier
lment de la trame afin de vrifier la transmission de celle-ci.
NEQ
Not Equal
Source A array_packet[123]
0
Source B
array_ack[0]
0
EQU
Equal
Source A array_packet[124]
0
Source B
-999

MOV
Move
Source array_packet[123]
0
Dest
array_offset
0
COP
Copy File
Source
array_packet[0]
Dest array[array_offset]
Length
123
MOV
Move
Source array_packet[123]
0
Dest
array_ack[0]
0
CLR
Clear
Dest array_ack[1]
0

NEQ
Not Equal
Source A array_packet[124]
0
Source B
-999

MOV
Move
Source

-999

Dest array_ack[1]
0

42356

Publication 1756-PM001E-FR-P - Aot 2002

Production dun tableau de grande taille

15-7

Le transfert dun tableau de grande taille sous forme de plus petites trames
permet damliorer les performances du systme par rapport dautres
mthodes de transfert de donnes :
Cette mthode utilise moins de connexions que la mthode qui consiste
diviser les donnes en tableaux multiples et les envoyer comme
point produit. Par exemple, un tableau avec 5 000 lments ncessite
40 connexions (5 000/125 = 40) utilisant des tableaux individuels.
La dure de transmission est plus rapide quavec une instruction de
message servant envoyer le tableau entier.
Les messages ne sont pas planifis et ne sont excuts que pendant la
partie temps systme du fonctionnement du Logix5550. Par
consquent, les messages peuvent prendre un temps assez long pour
terminer le transfert des donnes.
Vous pouvez diminuer la dure du transfert en augmentant la dure
du temps systme, mais ceci diminue les performances de la tche
continue.

Publication 1756-PM001E-FR-P - Aot 2002

15-8

Production dun tableau de grande taille

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

16

Communication avec un quipement ASCII

Quand utiliser cette


procdure

Utilisez cette procdure pour changer des donnes ASCII avec un dispositif
au travers du port srie de lautomate. Par exemple, vous pouvez utiliser le port
srie pour :
lire les caractres ASCII sur un module de pesage ou un lecteur de code
barres
envoyer et recevoir des messages dun dispositif ASCII tel quun
terminal MessageView.

connexion du port srie de lautomate vers le dispositif ASCII

42237

Comment utiliser cette


procdure

Avant dutiliser cette procdure :


Configurez lquipement ASCII pour votre application
Pour excuter cette procdure, effectuer les tches suivantes :

Connexion de lquipement ASCII


Configuration du port srie
Configuration du protocole utilisateur
Cration des types de donnes chane
Lire des caractres dans le dispositif
Envoi de caractres vers le dispositif

Publication 1756-PM001E-FR-P - Aot 2002

16-2

Communication avec un quipement ASCII

Connexion de lquipement
ASCII

1. Pour le port srie du dispositif ASCII, dterminez quelles sont les


broches qui envoient des signaux et celles qui reoivent des signaux.
2. Connectez les broches dmission aux broches de rception
correspondantes et attachez les cavaliers :
Si les communications sont :

Alors, cblez les connecteurs de la faon


suivante :

change
Dispositif ASCII

Automate

1 CD

1 CD

2 RDX

2 RDX

3 TXD

3 TXD

4 DTR

4 DTR

COMMON

COMMON

6 DSR

6 DSR

7 RTS

7 RTS

8 CTS

8 CTS

42231

pas dchange
Dispositif ASCII

Automate

1 CD

1 CD

2 RDX

2 RDX

3 TXD

3 TXD

4 DTR

4 DTR

COMMON

COMMON

6 DSR

6 DSR

7 RTS

7 RTS

8 CTS

8 CTS

3. Fixez le blindage du cble aux deux connecteurs.


4. Connectez le cble lautomate et au dispositif ASCII.

Publication 1756-PM001E-FR-P - Aot 2002

42232

Communication avec un quipement ASCII

Configuration du port srie

16-3

1. Dterminez les rglages de communication suivants pour le dispositif


ASCII :
a.
b.
c.
d.

vitesse en bauds
bits de donnes
parit
bits darrt

2. Ouvrez le projet RSLogix 5000.

42627

3. Sur la barre doutils En ligne, cliquez sur le bouton de lautomate.


4. Cliquez sur longlet Port srie.

5.

6.

42251

5. Slectionnez Utilisateur.
6. Slectionnez les rglages pour le dispositif ASCII, partir de tape 1.

Publication 1756-PM001E-FR-P - Aot 2002

16-4

Communication avec un quipement ASCII

7.

8.
9.
42251

7. Slectionnez loption de ligne de commande :


Si

Et

Et il sagit de

vous nutilisez pas de


modem
vous utilisez un
modem

les deux modems sur une


liaison point point sont
en duplex intgral
le modem matre est en
duplex intgral et le
modem esclave est en
semi-duplex

Slectionnez

Alors

Pas dchange

Allez tape 10.

Duplex intgral

automate matre

Duplex intgral

automate esclave

Semi-duplex

Slectionnez la case Porteuse


continue.

Semi-duplex

Dslectionnez la case Porteuse


continue (option par dfaut).

tous les modems du


systme sont en
semi-duplex

8. Tapez le dlai (par incrments de 20 ms) entre lactivation du signal RTS


(haut) et lenvoi des donnes. Par exemple, une valeur de 4 produit un
dlai de 80 ms.
9. Tapez le dlai (par incrments de 20 ms) entre lenvoi du dernier
caractre et la dsactivation du signal RTS (bas).
10. Cliquez sur Appliquer.

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un quipement ASCII

Configuration du protocole
utilisateur

16-5

1. Cliquez sur longlet Protocole utilisateur.

2.
3.

42252

2. Slectionnez ou entrez un nombre suprieur ou gal au nombre le plus


important de caractres dune transmission. (Nous recommandons le
double du nombre de caractres.)
3. Si vous utilisez les instructions ABL ou ARL, tapez les caractres qui
marquent la fin des donnes. Pour les codes ASCII des caractres,
reportez-vous en fin de manuel.
Si le dispositif envoie Alors

Remarques

un caractre de fin

Pour les
caractres
imprimables, tels
que 1 ou A, tapez
le caractre.

deux caractres de fin

A. Dans le champ Caractre de fin 1,


tapez le code ASCII hexadcimal
du premier caractre.
B. Dans la case Caractre de fin 2,
tapez $FF.
Dans les champs Caractre de fin 1 et 2,
tapez le code ASCII hexadcimal de
chaque caractre.

Publication 1756-PM001E-FR-P - Aot 2002

16-6

Communication avec un quipement ASCII

4.
5.
6.

7.

42252

4. Si vous utilisez linstruction AWA, tapez les caractres ajouter aux


donnes Pour les codes ASCII des caractres, reportez-vous en fin de
manuel.
Pour ajouter
un caractre

deux caractres

Alors
A. Dans le champ Ajout de
caractre 1, tapez le code
ASCII hexadcimal du premier
caractre.
B. Dans la case Caractre dajout
2, tapez $FF.

Remarques
Pour les
caractres
imprimables, tels
que 1 ou A, tapez
le caractre.

Dans les champs Ajout de caractre 1


et 2, tapez le code ASCII hexadcimal
de chaque caractre.

5. Si le dispositif ASCII est configur pour le contrle de dbit


XON/XOFF, slectionnez la case cocher XON/XOFF.
6. Si le dispositif ASCII est un cran cathodique ou est prconfigur pour
la transmission en semi-duplex, slectionnez la case cocher Mode Echo.

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un quipement ASCII

16-7

7. Slectionnez le mode Effacement :


Si le dispositif ASCII est

Slectionnez

Remarques

un cran cathodique

Ecran
cathodique

Le caractre DEL ($7F) et le caractre qui le prcde ne sont pas


envoys vers la destination.
Si le mode Echo est slectionn et quune instruction ASCII lit le
caractre DEL, lcho renvoie trois caractres : EFFACEMENT
ESPACE EFFACEMENT ( $08 $20 $08).

une imprimante

Imprimante

Le caractre DEL ($7F) et le caractre qui le prcde ne sont pas


envoys vers la destination.
Si le mode Echo est slectionn et quune instruction ASCII lit le
caractre DEL, lcho renvoie deux caractres : / ($2F) suivi du
caractre qui a t effac.

ni un cran cathodique, ni
une imprimante

Ignorer

Le caractre DEL ($7F) est trait comme tout autre caractre.

8. Cliquez sur OK.

Publication 1756-PM001E-FR-P - Aot 2002

16-8

Communication avec un quipement ASCII

Vous pouvez stocker les caractres ASCII dans des points qui utilisent un type
de donnes chane.

Cration des types de


donnes chane

42811

42812

Vous pouvez utiliser le type de donnes par


dfaut STRING. Il permet de stocker
jusqu 82 caractres.

IMPORTANT

ou

Vous pouvez crer un nouveau type de donnes pour


stocker le nombre de caractres que vous dfinissez.

Faites attention lors de la cration dun nouveau type de


donnes chane. Si vous dcidez ultrieurement de modifier
la taille du type de donnes chane, vous risquez de perdre
les donnes des points qui utilisent ce type de donnes.
Si vous
rendez un type de donnes
chane plus petit
rendez un type de donnes
chane plus long

Alors
La donne est tronque.
La LEN est inchange.
Les donnes et LEN sont
rinitialises zro.

1. Voulez-vous crer un nouveau type de donnes chane ?

3.

Si

Alors

non

Allez Lire des caractres dans le dispositif la page 16-9.

oui

Allez ltape 2.

2. Dans la fentre dorganisation de lautomate, cliquez avec le bouton


droit sur Chanes et slectionnez Nouveau type de Chane
3. Entrez le nom du type de donnes.
4. Entrez le nombre maximum de caractres que peut stocker ce type de
donnes.
5. Choisissez OK.
42233

4.

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un quipement ASCII

Lire des caractres dans le


dispositif

16-9

En rgle gnrale, avant de lire le buffer, utilisez une instruction ACB ou ABL
pour vrifier que le buffer contient les caractres requis :
Une instruction ARD ou ARL continue de lire le buffer jusqu ce
quelle ait lu les caractres requis.
Pendant quune instruction ARD ou ARL lit le buffer, aucune autre
instruction de port srie ASCII, sauf ACL, ne peut sexcuter.
La vrification que le buffer contient les caractres requis empche
linstruction ARD ou ARL de retenir lexcution des autres instructions
de port srie ASCII, cependant que le dispositif dentre envoie ses
donnes.
Pour plus dinformations sur les instructions du port srie ASCII, se reporter
Automate Logix5000 Jeu dinstructions Manuel de rfrence, publication
1756-RM003.

IMPORTANT

Si vous ne savez pas comment entrer une logique relais


dans un projet RSLogix 5000, reportez-vous dabord
Programmation des sous-programmes , page 4-1.

1. Quel type de dispositif tentez-vous de lire ?


Si le dispositif est une

Alors

lecteur de code barres

Allez ltape 2.

bascule envoyant un nombre fixe de caractres


message ou terminal daffichage

Allez ltape 14.

bascule envoyant un nombre variable de caractres

2. Entrez la ligne suivante :


4.

3.

5.

42235a

3. Entrez 0. (Le port srie es le canal 0.)


4. Entrez un nom de point pour linstruction ACB et dfinissez le type de
donnes comme SERIAL_PORT_CONTROL.
5. Entrez le bit EN du point ACB. (Point de ltape 4.)

Publication 1756-PM001E-FR-P - Aot 2002

16-10

Communication avec un quipement ASCII

6. Entrez la ligne suivante :


10.

7.

8.

9.

11.

12.
42235a

7. Entrez le membre POS du point ACB. (Point de ltape 4.)


8. Entrez le nombre de caractres dans les donnes.
9. Entrez 0.
10. Entrez un nom de point pour stocker les caractres ASCII. Dfinissez le
type de donnes comme chane.
11. Entrez un nom de point pour linstruction ARD et dfinissez le type de
donnes comme SERIAL_PORT_CONTROL.
12. Entrez le nombre de caractres dans les donnes.

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un quipement ASCII

EXEMPLE

16-11

Un lecteur de code barres envoie des codes barres vers le port srie (voie 0) de lautomate.
Chaque code barres contient 24 caractres. Pour dterminer linstant o lautomate reoit un code
barres, linstruction ACB compte de faon continue les caractres dans le buffer.

bar_code_count.EN
/

ACB
ASCII Chars in Buffer
Channel
0
SerialPort Control
bar_code_count
Character Count
0

EN
DN
ER

Lorsque le buffer contient au moins 24 caractres, lautomate a reu un code barres. Linstruction
ARD dplace le code barres vers le point bag_bar_code.
ARD

GEQ
Grtr Than or Eql (A>=B)
Source A bar_code_count.pos
0
Source B
24

ASCII Read
Channel
Destination
SerialPort Control
String Length
Characters Read

EN
0
bag_bar_code
''
bar_code_read
24
0

DN
ER

42227

bar_code_read.EM

MID

13. Voulez-vous envoyer des donnes vers le dispositif ?


Si

Alors

oui

Allez Envoi de caractres vers le dispositif la page 16-14.

non

Arrtez. Vous avez termin la procdure. Pour utiliser les donnes,


allez Traitement des caractres ASCII la page 17-1.

Publication 1756-PM001E-FR-P - Aot 2002

16-12

Communication avec un quipement ASCII

14. Entrez la ligne suivante :


16. 15.
17.

42235

15. Entrez 0.
16. Entrez un nom de point pour linstruction ARD et dfinissez le type de
donnes comme SERIAL_PORT_CONTROL.
17. Entrez le bit EN du point ABL. (Point de ltape 16.)
18. Entrez la ligne suivante :
21.

20.

19.

22.

23.
42235

19. Entrez le bit FD du point ABL. (Point de ltape 16.)


20. Entrez 0.
21. Entrez un nom de point pour stocker les caractres ASCII. Dfinissez le
type de donnes comme chane.
22. Entrez un nom de point pour linstruction ARL et dfinissez le type de
donnes comme SERIAL_PORT_CONTROL.
23. Entrez 0.
Ceci permet linstruction de rgler la longueur de contrle SerialPort
sur la taille de la Destination.

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un quipement ASCII

EXEMPLE

16-13

Teste continuellement le buffer pour y trouver un message du terminal MessageView.


Dans la mesure o chaque message se termine par un retour chariot ($0D), le retour chariot est
configur comme caractre de terminaison dans la bote de dialogue Proprits de lautomate,
onglet Protocole utilisateur.
Lorsque linstruction ABL trouve un retour chariot, elle active le bit FD.

MV_line.EN
/

ABL
ASCII Test For Buffer Line
Channel
0
SerialPort Control
MV_line
Character Count
0

EN
DN
ER

Quand linstruction ABL trouve le retour chariot (MV_line.FD est activ), lautomate retire les
caractres du buffer, jusqu et y compris le retour chariot, et les place dans le point MV_msg.
MV_line.FD

ARL
ASCII Read Line
Channel
Destination
SerialPort Control
String Length
Characters Read

EN
0
MV_msg
''
MV_read
12
0

DN
ER

42226

24. Voulez-vous envoyer des donnes vers le dispositif ?


Si

Alors

oui

Allez Envoi de caractres vers le dispositif la page 16-14.

non

Arrtez. Vous avez termin la procdure. Pour utiliser les donnes,


allez Traitement des caractres ASCII la page 17-1.

Publication 1756-PM001E-FR-P - Aot 2002

16-14

Communication avec un quipement ASCII

Envoi de caractres vers le


dispositif

1. Dterminez o commencer :

Si vous

Et que vous

Alors

envoyez toujours le mme


nombre de caractres

voulez ajouter automatiquement un ou deux Allez tape 2.


caractres la fin des donnes
ne dsirez pas ajouter de caractres

envoyez diffrents nombres de


caractres

Allez tape 9.

voulez ajouter automatiquement un ou deux Allez tape 16.


caractres la fin des donnes
ne dsirez pas ajouter de caractres

Allez tape 24.

2. Entrez la ligne suivante :


5.

4.

3.

6.

7.
42236a

3. Entrez la condition dentre (s) qui dtermine linstant o les caractres


doivent tre envoys :
Vous pouvez utiliser tout type dinstruction dentre.
Linstruction doit passer de faux vrai chaque fois que les
caractres doivent tre envoys.
4. Entrez 0.
5. Entrez un nom de point pour stocker les caractres ASCII. Dfinissez le
type de donnes comme chane.
6. Entrez un nom de point pour linstruction AWA et dfinissez le type de
donnes comme SERIAL_PORT_CONTROL.
7. Entrez le nombre de caractres envoyer. Omettez les caractres qui
sont ajouts par linstruction.

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un quipement ASCII

EXEMPLE

16-15

Lorsque la temprature dpasse la limite haute (temp_high activ), linstruction AWA envoie cinq
caractres depuis le point string[1] vers un terminal MessageView.
Le $14 compte comme un caractre. Cest le code hexadcimal pour le caractre Ctrl-T.
Linstruction envoie aussi (ajoute) les caractres dfinis dans le protocole utilisateur. Dans cet
exemple, linstruction AWA envoie un retour chariot ($0D), ce qui marque la fin du message.

temp_high

AWA
ASCII Write Append
Channel
Source
SerialPort Control
String Length
Characters Sent

EN
0
string[1]
'$1425\1'
temp_high_write
5
6

DN
ER

42229

8. Allez Saisie de caractres ASCII la page 16-21.

Publication 1756-PM001E-FR-P - Aot 2002

16-16

Communication avec un quipement ASCII

9. Entrez la ligne suivante :


12.

11.

10.

13.

14.
42236b

10. Entrez la condition dentre (s) qui dtermine linstant o les caractres
doivent tre envoys :
Vous pouvez utiliser tout type dinstruction dentre.
Linstruction doit passer de faux vrai chaque fois que les
caractres doivent tre envoys.
11. Entrez 0.
12. Entrez un nom de point pour stocker les caractres ASCII. Dfinissez le
type de donnes comme chane.
13. Entrez un nom de point pour linstruction AWT et dfinissez le type de
donnes comme SERIAL_PORT_CONTROL.
14. Entrez le nombre de caractres envoyer.

EXEMPLE

Lorsque la temprature atteint la limite basse (temp_low activ), linstruction AWT envoie neuf
caractres du point string[2] vers un terminal MessageView. (Le $14 compte comme un caractre.
Cest le code hexadcimal du caractre Ctrl-T.)

temp_low

AWT
ASCII Write
Channel
Source
SerialPort Control
String Length
Characters Sent

EN
0
string[2]
'$142224\01$r'
temp_low_write
9
9

DN
ER

42229

15. Allez Saisie de caractres ASCII la page 16-21.

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un quipement ASCII

16-17

16. Entrez la ligne suivante :


19.

18.

17.

21.

22.

20.
42236c

17. Entrez la condition dentre (s) qui dtermine linstant o les caractres
doivent tre envoys :
Vous pouvez utiliser tout type dinstruction dentre.
Linstruction doit passer de faux vrai chaque fois que les
caractres doivent tre envoys.
18. Entrez 0.
19. Entrez un nom de point pour stocker les caractres ASCII. Dfinissez le
type de donnes comme chane.
20. Entrez un nom de point pour linstruction AWA et dfinissez le type de
donnes comme SERIAL_PORT_CONTROL.
21. Entrez le membre LEN du point Source. (Point de ltape 19.)
22. Entrez le membre LEN de linstruction AWA. (Point de ltape 20.)

Publication 1756-PM001E-FR-P - Aot 2002

16-18

Communication avec un quipement ASCII

EXEMPLE

Lorsque alarm est activ, linstruction AWA envoie les caractres dans alarm_msg et ajoute un
caractre de terminaison.
Comme le nombre de caractres dans alarm_msg varie, la ligne commence par faire passer la
longueur de alarm_msg (alarm_msg.LEN) la longueur de linstruction AWA (alarm_write.LEN).
Dans alarm_msg, le $14 compte comme un caractre. Cest le code hexadcimal pour le caractre
Ctrl-T.

alarm

MOV
Move
Source alarm_msg.LEN
5
Dest
alarm_write.LEN
5

AWA
ASCII Write Append
Channel
Source
SerialPort Control
String Length
Characters Sent

EN
0
alarm_msg
'$1425\1'
alarm_write
5
6

DN
ER

42229

23. Allez Saisie de caractres ASCII la page 16-21.

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un quipement ASCII

16-19

24. Entrez la ligne suivante :


27.

26.

25.

29.

30.

28.
42236d

25. Entrez la condition dentre (s) qui dtermine linstant o les caractres
doivent tre envoys :
Vous pouvez utiliser tout type dinstruction dentre.
Linstruction doit passer de faux vrai chaque fois que les
caractres doivent tre envoys.
26. Entrez 0.
27. Entrez un nom de point pour stocker les caractres ASCII. Dfinissez le
type de donnes comme chane.
28. Entrez un nom de point pour linstruction AWT et dfinissez le type de
donnes comme SERIAL_PORT_CONTROL.
29. Entrez le membre LEN du point Source. (Point de ltape 27.)
30. Entrez le membre LEN de linstruction AWT. (Point de ltape 28.)

Publication 1756-PM001E-FR-P - Aot 2002

16-20

Communication avec un quipement ASCII

EXEMPLE

Quand MV_update est activ, linstruction AWT envoie les caractres dans MV_msg.
Du fait que le nombre de caractres dans MV_msg varie, la ligne commence par dplacer la
longueur de MV_msg (MV_msg.LEN) vers la longueur de linstruction AWT (MV_write.LEN).
Dans MV_msg, le $16 compte comme un caractre. Cest le code hexadcimal du caractre
Ctrl-V.

MV_update

MOV
Move
Source MV_msg.LEN
10
Dest
MV_write.LEN
10

AWT
ASCII Write
Channel
Source

0
MV_msg
'$161365\8\1$r'
SerialPort Control
MV_write
String Length
10
Characters Sent
10

EN
DN
ER

42229

31. Allez Saisie de caractres ASCII la page 16-21.

Publication 1756-PM001E-FR-P - Aot 2002

Communication avec un quipement ASCII

Saisie de caractres ASCII

16-21

Dcidez si vous devez excuter cette tape :


Si

Alors

Vous dsirez que la logique cre la


chane.

Allez Traitement des caractres ASCII la


page 16-1.

Vous dsirez entrer les caractres.

Allez ltape 1.

IMPORTANT

La fentre Parcours de chane (String Browser) montre les


caractres jusqu la valeur du membre LEN du point de
chane. Ce point de chane peut contenir des donnes
supplmentaires que la fentre Parcours de chane ne
montre pas.

1.

42616

1. Cliquez deux fois sur la zone valeur de la Source.

Signe du dollar ($24)

2.

Guillemet simple ($27)


saut de ligne ($0A)
retour la ligne
($0D$0A)
sut de ligne ($0C)
retour chariot ($0D)
tab ($09)

42615

Nombre de caractres que vous voyez dans


la fentre. Cest le mme que le membre
LEN du point de chane.

Nombre maximum de caractres que peut


contenir le point de chane.

2. Entrez les caractres de la chane.


3. Choisissez OK.

Publication 1756-PM001E-FR-P - Aot 2002

16-22

Communication avec un quipement ASCII

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

17

Traitement des caractres ASCII

Quand utiliser cette


procdure

Utilisez cette procdure pour :


interprter un code barres et effectuer les actions en fonction de ce
code barres
utiliser un poids en provenance dune bascule lorsque ce poids est
envoy en caractres ASCII
dcoder un message partir dun quipement dclench par code
ASCII, tel quun terminal oprateur
construire une chane pour un quipement dclench par code ASCII
laide de variables partir dune application

Comment utiliser cette


procdure
IMPORTANT

Si vous ne savez pas comment entrer une logique relais


dans un projet RSLogix 5000, reportez-vous dabord
Programmation des sous-programmes , page 4-1.

En fonction de votre application, vous naurez pas ncessairement besoin


deffectuer toutes les tches de cette procdure. Utilisez le tableau suivant pour
dterminer o vous devez commencer :
Pour

Allez

Page

isoler une information spcifique dun


code barres

Extraction dune partie dun


code barres

17-2

chercher une chane de caractres


spcifique dans un tableau

Recherche dun code barres

17-4

comparer deux chanes de caractres

Vrification des caractres du


code barres

17-9

utiliser un poids provenant dune


bascule

Conversion dune valeur

17-11

dcoder un message en provenance


dun terminal oprateur

Dcodage dun message


ASCII

17-13

crer une chane envoyer vers un


terminal oprateur

Cration dune chane

17-17

Pour plus dinformations sur les instructions lies au code ASCII,


reportez-vous Automate Logix5000 Jeu dinstructions Manuel de rfrence,
publication 1756-RM003.

Publication 1756-PM001E-FR-P - Aot 2002

17-2

Traitement des caractres ASCII

Extraction dune partie dun


code barres

Utilisez les tapes suivantes pour extraire une partie dun code barres pour
effectuer des actions en fonction de sa valeur.
Par exemple, un code barres peut contenir des informations concernant une
valise sur un tapis roulant dans un aroport. Pour vrifier le numro du vol et
la destination de la valise, vous extrayez les caractres 10 18.

compagnie arienne
code barres

W A

numro du caractre

origine
H

num. vol
5
9

destination
A

date
0

10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

9 caractres

Etapes :
1. Entrez la ligne suivante :
5.

6.
3.

4.

2.

42808

2. Entrez le bit EM de linstruction ARD qui lit le code barres.


3. Entrez le point chane qui contient le code barres.
4. Entrez le nombre de caractres de la partie du code barres que vous
voulez vrifier.
5. Entrez la position du premier caractre de la partie du code barres que
vous voulez vrifier.
6. Entrez un nom de point pour stocker la partie du code barres que vous
voulez vrifier. Dfinissez le type de donnes comme une chane.

Publication 1756-PM001E-FR-P - Aot 2002

Traitement des caractres ASCII

EXEMPLE

17-3

Sur un tapis roulant daroport, chaque valise possde un code barres. Les caractres 10 18 de ce
code barres reprsentent le numro du vol et laroport de destination. Une fois le code barres lu
(bag_read.EM est activ), linstruction MID copie le numro du vol et laroport de destination dans
le point bag_flt_and_dest.

42808

Publication 1756-PM001E-FR-P - Aot 2002

17-4

Traitement des caractres ASCII

Utilisez les tapes suivantes pour trouver une information spcifique sur un
lment sur la base de son code barres.

Recherche dun code


barres

Par exemple, dans une opration de tri, un tableau de type de donnes


utilisateur cr un tableau qui indique le numro de ligne de chaque type de
produit. Pour dterminer la ligne pour acheminer un produit, lautomate
recherche le numro didentification (ID) du produit dans le tableau
(caractres du code barres qui identifient le produit).
Nom du point

Valeur

sort_table
sort_table[0]

product_id

+ sort_table[0].Product_ID

GHI

ABC

+ sort_table[0].Lane

sort_table[1]
+ sort_table[1].Product_ID

DEF

+ sort_table[1].Lane

sort_table[2]
+ sort_table[2].Product_ID

GHI

+ sort_table[2].Lane

lane

Pour rechercher un code barres :

CONSEIL

Cration du type de donnes PRODUCT_INFO


Recherche des caractres
Identification du numro de ligne
Rejet des mauvais caractres
Entre des identifiants produit et des numros de ligne

Pour copier les composants ci-dessus partir dun projet dexemple, ouvrez le
dossier \RSLogix 5000\Projects\Samples .

Ouvrez ce projet.
43039

Publication 1756-PM001E-FR-P - Aot 2002

Traitement des caractres ASCII

17-5

Cration du type de donnes PRODUCT_INFO


Pour crer un nouveau type de donnes :

+ Controller Your_Project
+ Tasks
+ Motion Groups

Crer le type de donnes utilisateur suivant.


Type de donnes :PRODUCT_INFO
Nom

PRODUCT_INFO

Description

Identifie la destination dun lment sur la base dune chane


ASCII qui identifie llment

Trends
Data

Types

Members
Nom

User
Defined

+ Product_ID

STRING

User Defined

Lane

Style

Description
Caractres ASCII qui identifient llment

DINT

Dcimal

Destination de llment, sur la base de son ID

Cliquez avec le bouton droit de la


souris et slectionnez Nouveau type
de donnes.

Recherche des caractres

1.
2.
3.

43038

1. Linstruction SIZE compte le nombre dlments dans le tableau


sort_table. Ce tableau contient lidentifiant produit (ID) de chaque
lment et le numro de ligne correspondant.
Nom du point

Type

sort_table

PRODUCT_INFO[number_of_items ]
o
number_of_items est le nombre dlments trier.

2. Linstruction SIZE compte le nombre dlments dans Dimension 0 du


tableau. Dans ce cas, cest la seule dimension.
3. Linstruction SIZE rgle la longueur de linstruction FSC suivante pour
quelle soit gale la taille du tableau sort_table. Ceci permet
linstruction FSC de rechercher la taille exacte du tableau.
Nom du point

Type

sort_table_search

CONTROL

Publication 1756-PM001E-FR-P - Aot 2002

17-6

Traitement des caractres ASCII

4.
5.
6.
43038

4. Le point sort_table_search contrle linstruction FSC, qui recherche les


caractres du code barres dans le tableau sort_table.
5. Bien que linstruction prcdente rgle la longueur de cette instruction,
le logiciel requiert une valeur initiale pour vrifier le projet.
6. Le point product_id contient les caractres de code barres qui identifie
llment. Linstruction FSC recherche chaque membre Product_ID
dans le tableau sort_table jusqu ce que linstruction trouve une
correspondance au point product_id.
Nom du point

Type

product_id

STRING

Identification du numro de ligne


1.

2.

3.

4.

43038

1. Lorsque linstruction FSC trouve lidentifiant du produit dans le tableau


sort_table, linstruction rgle le bit FD.
2. Lorsque linstruction FSC trouve une correspondance, le membre POS
indique le numro dlment de la correspondance dans le tableau
sort_table. Le membre LANE correspondant indique le numro de ligne
de la correspondance.

Publication 1756-PM001E-FR-P - Aot 2002

Traitement des caractres ASCII

17-7

3. Sur la base de la valeur POS, linstruction MOV dplace le numro de


ligne correspondant dans le point lane. Lautomate utilise la valeur de ce
point pour acheminer llment.
Nom du point

Type

lane

DINT

4. Une fois que linstruction MOV a rgl la valeur du point lane,


linstruction RES rinitialise linstruction FSC pour quelle puisse
rechercher lidentifiant du produit suivant.

Rejet des mauvais caractres


1.

2.

3.

43038

1. Si linstruction FSC ne trouve pas lidentifiant du produit dans le tableau


sort_table, linstruction active le bit DN.
2. Lorsquaucune correspondance nest trouve, linstruction MOV
dplace 999 dans le point lane. Ceci indique lautomate de rejeter ou de
racheminer llment.
3. Une fois que linstruction MOV a rgl la valeur du point lane,
linstruction RES rinitialise linstruction FSC pour quelle puisse
rechercher lidentifiant du produit suivant.

Publication 1756-PM001E-FR-P - Aot 2002

17-8

Traitement des caractres ASCII

Entre des identifiants produit et des numros de ligne


Dans le tableau sort_table, entrez les caractres ASCII qui identifient chaque
lment et le numro de ligne correspondant pour llment.
Nom du point

Valeur

sort_table

{}

sort_table[0]

{}

+ sort_table[0].Product_ID

caractres ASCII qui identifient le premier


lment

+ sort_table[0].Lane

numro de ligne de llment

sort_table[1]

Publication 1756-PM001E-FR-P - Aot 2002

{}

+ sort_table[1].Product_ID

caractres ASCII qui identifient llment


suivant

+ sort_table[1].Lane

numro de ligne de llment

Traitement des caractres ASCII

Vrification des caractres


du code barres

17-9

Dans cette tche, vous utilisez une instruction de comparaison (EQU, GEQ,
GRT, LEQ, LES, NEQ) pour rechercher des caractres spcifiques.
Les valeurs hexadcimales des caractres dterminent si une chane est
infrieure ou suprieure une autre.
Lorsque les deux chanes sont stockes comme dans un annuaire
tlphonique, lordre des chanes dtermine laquelle est suprieure.

s
u
p

r
i
e
u
r

i
n
f

r
i
e
u
r

Caractres ASCII

Codes Hex

1ab

$31$61$62

1b

$31$62

$41

AB

$41$42

$42

$61

ab

$61$62

AB < B
a>B

Etapes :
1. Entrez une ligne et une instruction de comparaison :
Pour voir si la chane est

Entrez cette instruction

gale des caractres spcifiques

EQU

diffrente de caractres spcifiques

NEQ

suprieure des caractres spcifiques

GRT

gale ou suprieure des caractres spcifiques

GEQ

infrieure des caractres spcifiques

LES

gale ou infrieure des caractres spcifiques

LEQ

2.

3.

6.

4.

42808

2. Entrez le point qui stocke la partie du code barres que vous voulez
vrifier. (Destination de Extraction dune partie dun code barres,
tape 6.)
3. Entrez un nom de point pour stocker les caractres qui serviront de base
au test. Dfinissez le type de donnes comme chane.
4. Cliquez deux fois sur la zone de valeur de Source B.

Publication 1756-PM001E-FR-P - Aot 2002

17-10

Traitement des caractres ASCII

5. Tapez les caractres ASCII qui serviront de base au test et choisissez


OK.

42615

EXEMPLE

6. Entrez la sortie requise.

Lorsque bag_flt_and_dest est gal gate[1], xfer{1] est activ. Ceci achemine la valise vers la porte
requise.

42808

7. Voulez-vous vrifier une autre partie du code barres ?

Publication 1756-PM001E-FR-P - Aot 2002

Si

Alors

oui

Allez Extraction dune partie dun code barres la page 17-2.

non

Arrtez. Vous avez termin la procdure.

Traitement des caractres ASCII

Conversion dune valeur

17-11

Utilisez les tapes suivantes pour convertir la reprsentation ASCII dune


valeur en valeur DINT ou REAL que vous pourrez utiliser dans votre
application.
Les instructions STOD et STOR sautent tout caractre de contrle
initial ou non numrique (except le signe moins devant un nombre).
Si la chane contient plusieurs groupes de nombres spars par des
sparateurs (ex., / ), les instructions STOD et STOR ne convertissent
que le premier groupe de nombres.

Etapes :
1. Quel est le type de nombre de la valeur ?
Si

Alors

virgule flottante

Allez ltape 2.

nombre entier

Allez ltape 7.

2. Entrez la ligne suivante :


4.

5.

3.

42810

3. Entrez le bit EM de linstruction ARD ou ARL qui lit la valeur.


4. Entrez le point chane qui contient la valeur.
5. Entrez un nom de point pour stocker la valeur utiliser par votre
application. Dfinissez le type de donnes comme REAL.

EXEMPLE

Aprs avoir lu le poids partir de la bascule (weight_read.EM est activ), linstruction STOR
convertit les caractres numriques qui se trouvent dans weight_ascii en valeur REAL et stocke le
rsultat dans weight.

42810

Publication 1756-PM001E-FR-P - Aot 2002

17-12

Traitement des caractres ASCII

6. Allez ltape 11.


7. Entrez la ligne suivante :
9.

10.

8.

42810

8. Entrez le bit EM de linstruction ARD ou ARL qui lit la valeur.


9. Entrez le point chane qui contient la valeur.
10. Entrez un nom de point pour stocker la valeur utiliser par votre
application. Dfinissez le type de donnes comme DINT.

EXEMPLE

Lorsque MV_read.EM est activ, linstruction STOD convertit le premier groupe de caractres
numriques dans MV_msg en valeur de nombre entier. Linstruction saute le caractre de contrle
initial ($06) et sarrte au sparateur ( \ ).

42620

11. Cette chane a-t-elle une autre valeur que vous voulez utiliser ?

Publication 1756-PM001E-FR-P - Aot 2002

Si

Alors

oui

Allez Dcodage dun message ASCII la page 17-13.

non

Arrtez. Vous avez termin la procdure.

Traitement des caractres ASCII

Dcodage dun message


ASCII

17-13

Utilisez les tapes suivantes pour extraire et convertir une valeur dun message
ASCII qui contient plusieurs valeurs.
Par exemple, un message peut ressembler ceci :
premire valeur

deuxime
valeur

troisime valeur

[Ctrl-F] num. du
message

\ touche F \ action de la [CR]


touche F

caractre de
contrle

sparateur

sparateur

caractre de fin

1. Dterminez o commencer :
Si la

Et

Alors

chane a plus dune valeur

Ceci est la premire valeur.

Allez Conversion dune valeur la page 17-11.

Ceci nest pas la valeur.

Allez ltape 2.

chane na quune valeur

Allez Conversion dune valeur la page 17-11.

2. Quel est le type de nombre de la valeur ?


Si

Alors

virgule flottante

Entrez Ligne A : Trouve et convertit une valeur virgule


flottante

nombre entier

Entrez Ligne B : Trouve et convertit une valeur de nombre


entier

Ligne A : Trouve et
convertit une valeur
virgule flottante

42810

Ligne B : Trouve et
convertit une valeur
de nombre entier

42810

Publication 1756-PM001E-FR-P - Aot 2002

17-14

Traitement des caractres ASCII

4.

5. 6.

3.

42810

8.

9.

3. Entrez le bit EM de linstruction ARL qui lit la valeur.


4. Entrez le point chane qui contient la valeur.
5. Entrez un nom de point pour stocker le sparateur qui marque le dbut
de la valeur. Dfinissez le type de donnes comme une chane.
6. Cliquez deux fois sur la zone de valeur de Recherche.

42615

7. Tapez le sparateur et choisissez OK.


8. Entrez la position dans la chane o la recherche doit commencer.
Au dpart, vous pouvez utiliser 0 pour trouver le premier sparateur.
Pour dcoder dautres donnes, augmentez cette valeur pour
rechercher le sparateur suivant.
9. Entrez un nom de point o stocker lemplacement du sparateur.
Dfinissez le type de donnes comme DINT.

Publication 1756-PM001E-FR-P - Aot 2002

Traitement des caractres ASCII

10.

17-15

11.

42810

12.

13.

10. Entrez le point chane qui contient la valeur.


11. Entrez le nombre maximum de caractres que cette valeur peut
contenir.
12. Entrez le point qui stocke la position du sparateur. (Point de ltape 9.)
13. Entrez un nom de point o stocker la valeur. Dfinissez le type de
donnes comme une chane.
14. Quel type dinstruction de conversion avez-vous utilis ?
Si

Alors

STOR

Allez ltape 15.

STOD

Allez ltape 18.

Publication 1756-PM001E-FR-P - Aot 2002

17-16

Traitement des caractres ASCII

15.

16.

42809

15. Entrez le point qui stocke la valeur. (Point de ltape 13.)


16. Entrez un nom de point pour stocker la valeur utiliser par votre
application. Dfinissez le type de donnes comme REAL.
17. Allez ltape 20.
18.

19.

42809

18. Entrez le point qui stocke la valeur. (Point de ltape 13.)


19. Entrez un nom de point pour stocker la valeur utiliser par votre
application. Dfinissez le type de donnes comme DINT.
20. La chane a-t-elle une autre valeur que vous voulez utiliser ?
Si
oui

non

Publication 1756-PM001E-FR-P - Aot 2002

Alors
A. Ajoutez 1 au rsultat de linstruction de recherche. (Point de
ltape 9.)
B. Rptez les tapes 2 19.
Arrtez. Vous avez termin la procdure.

Traitement des caractres ASCII

Cration dune chane

17-17

Utilisez les tapes suivantes pour crer une chane partir de variables dans
votre application. Vous pouvez ensuite envoyer la chane vers un quipement
dclench par code ASCII, tel quun terminal MessageView.
Dans cette procdure, vous crez une chane qui contient deux
variables. Par exemple, un terminal oprateur peut ncessiter une chane
qui ressemble ceci :
[Ctrl-F] num. du
message

\ adresse

[CR]

caractre de
contrle

sparateur

caractre de fin

Si vous avez besoin dinclure plus de variables, utilisez des instructions


INSERT ou CONCAT supplmentaires.
Si vous devez envoyer une valeur virgule flottante, utilisez une
instruction RTOS la place de linstruction DTOS.
La chane finale ninclut pas le caractre de fin. Lorsque vous envoyez la
chane, utilisez une instruction AWA pour ajouter automatiquement le
caractre de fin.

Etapes :
1. Entrez la ligne suivante :

42813

2. Entrez la ou les condition (s) dentre qui dterminent quand crer la


chane.
3. Entrez le point DINT qui contient la premire valeur de la chane.
4. Entrez un nom de point pour stocker la reprsentation ASCII de la
valeur. Dfinissez le type de donnes comme chane.

Publication 1756-PM001E-FR-P - Aot 2002

17-18

Traitement des caractres ASCII

5.

6.

8.

42813

9.

10.

5. Entrez un nom de point pour stocker les caractres de contrle et de


sparation de la chane. Dfinissez le type de donnes comme une
chane.
6. Cliquez deux fois sur la zone de valeur de Source A.

42615

2.

3.

4.

7. Tapez le caractre de contrle et le sparateur et choisissez OK.


Pour un caractre de contrle, tapez le code hexadcimal du caractre.
Pour consulter la liste des codes hex, voir la dernire page de ce manuel.
8. Entrez le point qui stocke la reprsentation ASCII de la premire valeur.
(Point de ltape 4.)
9. Entrez 2.
Ceci place la valeur aprs le premier caractre (caractre de contrle)
dans Source A.
10. Entrez un nom de point o stocker la chane partielle. Dfinissez le type
de donnes comme une chane.

Publication 1756-PM001E-FR-P - Aot 2002

Traitement des caractres ASCII

11.

17-19

13.

12.

14.

42813

15.

11. Entrez le point DINT qui contient la deuxime valeur de la chane.


12. Entrez un nom de point pour stocker la reprsentation ASCII de la
valeur. Dfinissez le type de donnes comme une chane.
13. Entrez le point qui stocke la chane partielle. (Point de ltape 10.)
14. Entrez le point qui stocke la reprsentation ASCII de la deuxime
valeur. (Point de ltape 12.)
15. Entrez un nom de point o stocker la chane complte. Dfinissez le
type de donnes comme une chane.

Publication 1756-PM001E-FR-P - Aot 2002

17-20

Traitement des caractres ASCII

EXEMPLE

Pour dclencher un message dans un terminal MessageView, lautomate envoie un message au


terminal dans le format suivant : [Ctrl-T] num. du message \ adresse [CR]
Lorsque send_msg est activ, la ligne effectue les actions suivantes :
La premire instruction DTOS convertit le numro du message en caractres ASCII.
Linstruction INSERT insre le numro du message (en ASCII) aprs le caractre de contrle
[Ctrl-T]. (Le code hexadcimal pour Ctrl-T est $14.)
La deuxime instruction DTOS convertie le numro de station du terminal en caractres ASCII.
Linstruction CONCAT met le numro de station (en ASCII) aprs la barre oblique inverse [ \ ]
et stocke la chane finale dans msg.
Pour envoyer un message, une instruction AWA envoie le point msg et ajoute un retour chariot
[CR].

42813

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

18

Forage des lments de la logique

Quand utiliser cette


procdure

Utilisez cette procdure pour ne pas tenir compte (contourner) de donnes


utilises ou produites par votre logique. Par exemple, utilisez le forage dans les
situations suivantes :
test et dbogage de votre logique ;
vrification du cblage vers un quipement de sortie ;
garder temporairement votre procd en fonctionnement lorsquun
quipement dentre est en panne.
Utilisez le forage uniquement comme mesure temporaire. Le forage nest pas
destin tre une fonction permanente de votre application.

Comment utiliser cette


procdure
Pour

Voir

connatre les prcautions prendre lorsque vous ajoutez, changez, supprimez ou dsactivez
des forages

Prcautions , page 18-2

dterminer ltat des forages en cours dans votre projet

Vrification de ltat du forage ,


page 18-4

dterminer le type dlment forcer dans votre projet

Que forcer , page 18-5

des informations gnrales sur les forages dE/S, y compris les lments que vous pouvez
forcer et voir comment un forage dE/S affecte votre projet

Quand utiliser un forage dE/S ,


page 18-6

forcer une valeur dE/S

Ajout dun forage dE/S , page 18-8

des informations gnrales sur le passage par une transition ou un chemin simultan

Quand utiliser Step Through (Passer par) ,


page 18-9

passer par une transition active

Passage par une transition ou par le


forage dun chemin , page 18-9

passer par un chemin simultan forc sur faux

des informations gnrales sur les forages SFC, y compris les lments que vous pouvez
forcer et voir comment les forages affectent lexcution de votre SFC

Quand utiliser un forage SFC , page 18-9

forcer une transition ou un chemin simultan dans un SFC

Ajout dun forage SFC , page 18-12

mettre fin un forage

Suppression ou dsactivation des


forages , page 18-13

Publication 1756-PM001E-FR-P - Aot 2002

18-2

Forage des lments de la logique

Prenez les prcautions suivantes lorsque vous utilisez des forages :

Prcautions

ATTENTION

Le forage peut entraner un mouvement imprvu des machines,


susceptible doccasionner des blessures corporelles. Avant dutiliser un
forage, dterminez comment ce forage affectera votre machine ou
votre procd et loignez le personnel de la zone des machines.
Lactivation des forages dE/S entrane un changement des
valeurs dentre et de sortie, produites et consommes.
Lactivation des forages SFC entrane un changement dtat ou de
phase de votre machine ou de votre procd.
La suppression des forages peut en laisser des activs.
Si des forages sont activs et si vous installez un forage, le
nouveau forage prend effet immdiatement.

Activer les forages


Pour quun forage fonctionne, vous devez activer les forages. Vous ne
pouvez activer ou dsactiver les forages quau niveau de lautomate.
Vous pouvez activer les forages dE/S et SFC sparment ou en mme
temps.
Vous ne pouvez pas activer ou dsactiver les forages dun module, dun
groupe de points ou dun lment de point particulier.

Si vous chargez un projet dont les forages sont activs, le


logiciel de programmation vous demande dactiver ou de
dsactiver les forages la fin du chargement.

Lorsque les forages sont effectifs (activs), une flche


llment forc.

les forages sont effectifs (activs)


tat dans lequel llment est forc

Publication 1756-PM001E-FR-P - Aot 2002

IMPORTANT

apparat ct de

Forage des lments de la logique

18-3

Dsactiver ou supprimer un forage


Pour mettre fin un forage et laisser votre projet excuter selon sa
programmation, dsactivez ou supprimez le forage.
Vous pouvez dsactiver ou supprimer les forages dE/S et SFC en
mme temps ou sparment.
Supprimer un forage dun alias dun point le supprime galement du
point dorigine.

ATTENTION

Les modifications apportes aux forages peuvent entraner un mouvement


imprvu des machines, susceptible doccasionner des blessures corporelles.
Avant de dsactiver ou de supprimer des forages, dterminez comment ce
changement affectera votre machine ou votre procd et loignez le personnel
de la zone des machines.

Publication 1756-PM001E-FR-P - Aot 2002

18-4

Forage des lments de la logique

Avant dutiliser un forage, dterminez ltat des forages de lautomate. Vous


pouvez vrifier ltat des forages comme suit :

Vrification de ltat du
forage

Pour dterminer ltat

Utilisez lune de ces mthodes


Barre doutils Online

des forages dE/S

Voyant FORCE
Instruction GSV
des forages SFC

Barre doutils Online

Barre doutils Online


La barre doutils Online indique ltat des forages. Elle montre ltat des
forages dE/S et des forages SFC sparment.

Onglet Forces (Forages)

Ceci

Signifie
Si le projet contient des forages de ce type, ils
contournent votre logique.
Si vous ajoutez un forage de ce type, le nouveau
forage prend effet immdiatement.

Enabled (Activs)

Disabled (Dsactivs)

Les forages de ce type sont dsactivs. Si le projet contient


des forages de ce type, ils ne contournent pas votre logique.

Installed (Installs)

Le projet comporte au moins un forage de ce type.

None Installed (Aucun


install)

Le projet ne contient aucun forage de ce type.

Voyant FORCE
Si votre automate comporte un voyant de forage (FORCE), utilisez ce
voyant pour dterminer ltat des forages des E/S.
IMPORTANT

Publication 1756-PM001E-FR-P - Aot 2002

Le voyant FORCE indique ltat des forages dE/S


seulement. Il nindique pas ltat des forages SFC.

Forage des lments de la logique

Si le voyant FORCE est

18-5

Alors

teint

Aucun point ne contient des valeurs de forage.


Les forages dE/S sont inactifs (dsactivs).

clignotant

Au moins un point contient une valeur de forage.


Les forages dE/S sont inactifs (dsactivs).

allum

Les forages dE/S sont actifs (activs).


Il peut exister ou non des valeurs de forage.

Instruction GSV
IMPORTANT

Lattribut ForceStatus (Etat des forages) indique ltat des


forages dE/S seulement. Il nindique pas ltat des
forages SFC.

Lexemple suivant indique comment utiliser une instruction GSV pour obtenir
ltat des forages.

o
Force_Status est un point DINT.

Que forcer

Pour dterminer si

Examiner si ce bit

Contient cette valeur

des forages sont installs

aucun forage nest install

des forages sont activs

des forages sont


dsactivs

Vous pouvez forcer les lments suivants de votre projet :

Pour

Alors

contourner une valeur dentre ou de sortie, un point produit ou consomm

Ajout dun forage dE/S

contourner une fois les conditions dune transition pour passer dune tape active ltape
suivante

Passage par une transition ou par le


forage dun chemin

contourner une fois le forage dun chemin simultan et en excuter les tapes
contourner les conditions dune transition dans un graphe de fonctionnement squentiel

Ajout dun forage SFC

excuter certains chemins (pas tous) dune branche simultane dun graphe de fonctionnement
squentiel

Publication 1756-PM001E-FR-P - Aot 2002

18-6

Forage des lments de la logique

Quand utiliser un forage


dE/S

Utilisez un forage dE/S pour excuter lune des actions suivantes :


contourner une valeur dentre dun autre automate (un point
consomm) ;
contourner une valeur dentre dun quipement dentre ;
contourner votre logique et indiquer une valeur de sortie pour un autre
automate (un point produit) ;
contourner votre logique et indiquer ltat dun quipement de sortie.

IMPORTANT

IMPORTANT

Le forage augmente la dure dexcution de la logique.


Plus vous forcez de valeurs, plus lexcution de la logique
est longue.

Les forages dE/S sont gards par lautomate et non par la


station qui les programme. Les forages restent mme si la
station qui les a programms est dconnecte.

Lorsque vous forcez une valeur dE/S :


vous pouvez forcer toutes les donnes dE/S, sauf les donnes de
configuration ;
si le point est un tableau ou une structure, tel quun point dE/S, forcez
un lment ou un membre BOOL, SINT, INT, DINT ou REAL ;
si la valeur de donne est un membre SINT, INT ou DINT, vous
pouvez forcer toute la valeur ou seulement certains bits de la valeur. Ces
bits peuvent avoir ltat de forage suivant :
aucun forage,
forage activ,
forage dsactiv.
vous pouvez galement forcer un alias dun membre de structure dE/S,
dun point produit ou dun point consomm :
un alias de point partage la mme valeur que le point dorigine ;
forcer un alias de point force donc galement son point dorigine ;
supprimer le forage dun alias de point le supprime galement du
point dorigine.

Forcer une valeur dentre


Forcer un point dentre ou consomm :
contourne la valeur, quelle que soit la valeur de lquipement physique
ou du point consomm ;
naffecte pas la valeur reue par les autres automates qui surveillent ce
point dentre ou consomm.

Publication 1756-PM001E-FR-P - Aot 2002

Forage des lments de la logique

18-7

Forcer une valeur de sortie


Forcer un point de sortie ou produit contourne la logique de lquipement
physique ou des autres automates. Les autres automates qui surveillent ce
module de sorties en mode coute seule verront galement la valeur force.

Publication 1756-PM001E-FR-P - Aot 2002

18-8

Forage des lments de la logique

Ajout dun forage dE/S


ATTENTION

Pour contourner une valeur dentre, une valeur de sortie, un point produit ou
un point consomm, utilisez un forage dE/S :
Le forage peut entraner un mouvement imprvu des machines, susceptible
doccasionner des blessures corporelles. Avant dutiliser un forage,
dterminez comment ce forage affectera votre machine ou votre procd et
loignez le personnel de la zone des machines.
Lactivation des forages dE/S entrane un changement des valeurs
dentre et de sortie, produites ou consommes.
Si des forages sont activs et si vous installez un forage, le nouveau
forage prend effet immdiatement.
1. Quel est ltat de lindicateur des forages dE/S ?
Sil

Cela signifie

teint

Il ny a pas de forage des E/S pour le moment.

clignotant Aucun forage dE/S nest actif, mais votre projet comporte au moins
un forage. Lorsque vous activez les forages dE/S, tous les forages
dE/S prennent effet.
allum

Les forages dE/S sont activs. Lorsque vous installez (ajoutez) un


forage, il prend effet immdiatement.

2. Ouvrez le sous-programme contenant le point que vous voulez forcer.


3. Cliquez sur le point avec le bouton droit de la souris et slectionnez
Monitor (Surveiller). Si ncessaire, dveloppez le point pour afficher
la valeur que vous voulez forcer (ex. : valeur boolenne dun point
DINT).
4. Installez la valeur de forage :
Pour forcer une

Faites ceci

valeur boolenne

Cliquez sur le point avec le bouton droit de la souris et


slectionnez Force ON (Forage activ) ou Force OFF (Forage
dsactiv).

valeur non
boolenne

Dans la colonne Force Mask (Masque de forage) du point,


entrez la valeur avec laquelle vous voulez forcer le point.
Appuyez ensuite sur la touche Entre.

5. Les forages dE/S sont-ils activs ? (Voir tape 1.)

Publication 1756-PM001E-FR-P - Aot 2002

Si

Alors

non

Dans le menu Logic (Logique), slectionnez I/O Forcing


Enable All I/O Forces (Forage des E/S, Activer tous les forages dE/S).
Slectionnez Yes (Oui) pour confirmer.

oui

Arrtez.

Forage des lments de la logique

Quand utiliser Step


Through (Passer par)

18-9

Pour contourner une transition fausse une fois et passer dune tape active
ltape suivante, utilisez loption Step Through (Passer par). Avec loption Step
Through :
vous navez pas besoin dajouter, dactiver, de dsactiver ou de
supprimer des forages ;
lorsque le SFC atteint la transition la fois suivante, il est excut selon les
conditions de la transition.
Cette option vous permet galement de contourner une fois le forage dun
chemin simultan sur faux. Lorsque vous passez par le forage, le SFC excute
les tapes du chemin.

Passage par une transition


ou par le forage dun
chemin

Pour passer par la transition dune tape active ou le forage dun chemin
simultan :
1. Ouvrez le sous-programme SFC.
2. Cliquez avec le bouton droit de la souris sur la transition ou sur le
chemin forc et slectionnez Step Through (Passer par).

Quand utiliser un forage


SFC

Vous pouvez contourner la logique dun SFC comme suit :


Pour

Alors

contourner les conditions dune transition


chaque fois que le SFC atteint la transition

Forcer une transition

empcher lexcution dun ou de plusieurs


chemins dune branche simultane

Forcer un chemin simultan

Forcer une transition


Pour contourner les conditions dune transition pendant plusieurs excutions
du SFC, forcez la transition. Le forage reste actif jusqu ce que vous le
supprimiez ou que vous dsactiviez les forages.
Pour

Alors

empcher le SFC de passer ltape suivante

forcer la transition sur fausse

faire passer le SFC ltape suivante quelles que soient


les conditions de transition

forcer la transition sur vraie

Publication 1756-PM001E-FR-P - Aot 2002

18-10

Forage des lments de la logique

Si vous forcez une transition dans une branche simultane sur fausse, le SFC
reste dans la branche simultane tant que le forage est actif (install et activ).
Pour quitter une branche simultane, la dernire tape de chaque chemin
doit tre excute au moins une fois et la transition sous la branche doit
tre vraie.
Forcer une transition sur vraie empche le SFC datteindre la dernire
tape dun chemin.
Lorsque vous supprimez ou dsactivez le forage, le SFC peut excuter
le reste des tapes du chemin.

Par exemple, pour sortir de cette


branche, le SFC doit pouvoir :
excuter Step_011 au moins
une fois ;
passer Tran_011 et excuter
Step_012 au moins une fois ;
dterminer que Tran_012 est
vraie.

Forcer un chemin simultan


Pour empcher lexcution dun chemin dune branche simultane, forcez le
chemin sur faux. Lorsque le SFC atteint la branche, il excute uniquement les
chemins non forcs.

Ce chemin est excut.

Publication 1756-PM001E-FR-P - Aot 2002

Ce chemin nest pas excut.

Forage des lments de la logique

18-11

Si vous forcez un chemin dune branche simultane sur faux, le SFC reste dans
la branche simultane tant que le forage est actif (install et activ).
Pour quitter une branche simultane, la dernire tape de chaque chemin
doit tre excute au moins une fois et la transition sous la branche doit
tre vraie.
Forcer un chemin sur faux empche le SFC dentrer dans un chemin et
den excuter les tapes.
Lorsque vous supprimez ou dsactivez le forage, le SFC peut excuter
les tapes du chemin.

Publication 1756-PM001E-FR-P - Aot 2002

18-12

Forage des lments de la logique

Ajout dun forage SFC


ATTENTION

Pour contourner la logique dun SFC, utilisez un forage SFC :


Le forage peut entraner un mouvement imprvu des machines, susceptible
doccasionner des blessures corporelles. Avant dutiliser un forage,
dterminez comment ce forage affectera votre machine ou votre procd et
loignez le personnel de la zone des machines.
Lactivation des forages SFC entrane un changement dtat ou de phase
de votre machine ou de votre procd.
Si des forages sont activs et si vous installez un forage, le nouveau
forage prend effet immdiatement.
1. Quel est ltat de lindicateur des forages SFC ?
Sil est

Cela signifie

teint

Il ny a pas de forage SFC.

clignotant Aucun forage SFC nest actif, mais votre projet comporte au moins un
forage. Lorsque vous activez les forages SFC, tous les forages SFC
prennent effet.
allum

Les forages SFC sont activs. Lorsque vous installez (ajoutez) un


forage, il prend effet immdiatement.

2. Ouvrez le sous-programme SFC.


3. Cliquez avec le bouton droit de la souris sur la transition ou sur le dbut
du chemin simultan que vous voulez forcer et slectionnez Force TRUE
(Forage sur vrai) (uniquement pour une transition) ou Force FALSE
(Forage sur faux).
4. Les forages SFC sont-ils activs ? (Voir ltape 1.)

Publication 1756-PM001E-FR-P - Aot 2002

Si

Alors :

non

Dans le menu Logic (Logique), slectionnez SFC Forcing


Enable All SFC Forces (Forage SFC, Activer tous les forages SFC).
Slectionnez Yes (Oui) pour confirmer.

oui

Arrtez.

Forage des lments de la logique

18-13

Suppression ou
dsactivation des forages
ATTENTION

Les modifications apportes aux forages peuvent entraner un mouvement


imprvu des machines, susceptible doccasionner des blessures corporelles. Avant
de dsactiver ou de supprimer des forages, dterminez comment ce changement
affectera votre machine ou votre procd et loignez le personnel de la zone des
machines.

Pour

Et

Alors

arrter un forage particulier

laisser les autres forages activs et


oprationnels

Supprimer un forage particulier

arrter tous les forages dE/S et SFC

laisser les forages dans le projet

Dsactiver tous les forages dE/S et SFC

supprimer les forages du projet

Supprimer tous les forages dE/S et SFC

arrter tous les forages dE/S mais laisser


tous les forages SFC activs

laisser les forages dE/S dans le projet

Dsactiver tous les forages dE/S

supprimer les forages dE/S du projet

Supprimer tous les forages dE/S

arrter tous les forages SFC mais laisser


tous les forages dE/S activs

laisser les forages SFC dans le projet

Dsactiver tous les forages SFC

supprimer les forages SFC du projet

Supprimer tous les forages SFC

Supprimer un forage particulier


ATTENTION

Si vous supprimez un forage particulier, les autres forages restent activs et


tout nouveau forage prend effet immdiatement.
Avant de supprimer un forage, dterminez comment ce changement affectera
votre machine ou votre procd et loignez le personnel de la zone des
machines.

1. Ouvrez le sous-programme contenant le forage que vous voulez


supprimer.
2. Quel est le langage du sous-programme ?
Si le langage est le suivant

Alors

SFC

Allez ltape 4.

logique relais

Allez ltape 4.

bloc fonctionnel

Allez ltape 3.

texte structur

Allez ltape 3.

Publication 1756-PM001E-FR-P - Aot 2002

18-14

Forage des lments de la logique

3. Cliquez avec le bouton droit de la souris sur le point contenant le


forage et slectionnez Monitor (Surveiller). Si ncessaire,
dveloppez le point pour afficher la valeur force (ex. : valeur boolenne
dun point DINT).
4. Cliquez avec le bouton droit de la souris sur le point ou sur llment
contenant le forage et slectionnez Remove Force (Supprimer le forage).

Dsactiver tous les forages dE/S et SFC


1. Dans la barre doutils Online, cliquez sur longlet Forces (Forages).
2. Dans longlet Forces (Forages), cliquez sur la flche et slectionnez
Disable All Forces (Dsactiver tous les forages). Slectionnez Yes (Oui)
pour confirmer.

Supprimer tous les forages dE/S et SFC


1. Dans la barre doutils Online, cliquez sur longlet Forces (Forages).
2. Dans longlet Forces (Forages), cliquez sur la flche et slectionnez
Remove All Forces (Supprimer tous les forages). Slectionnez Yes (Oui)
pour confirmer.

Dsactiver tous les forages dE/S


Dans le menu Logic (Logique), slectionnez I/O Forcing
Disable All I/O Forces (Forage des E/S, Dsactiver tous les forages dE/S).
Slectionnez Yes (Oui) pour confirmer.

Supprimer tous les forages dE/S


Dans le menu Logic (Logique), slectionnez I/O Forcing
Remove All I/O Forces (Forage des E/S, Supprimer tous les forages dE/S).
Slectionnez Yes (Oui) pour confirmer.

Dsactiver tous les forages SFC


Dans le menu Logic (Logique), slectionnez SFC Forcing
Disable All SFC Forces (Forages SFC, Dsactiver tous les forages SFC).
Slectionnez Yes (Oui) pour confirmer.

Supprimer tous les forages SFC


Dans le menu Logic (Logique), slectionnez SFC Forcing
Remove All SFC Forces (Forages SFC, Supprimer tous les forages SFC).
Slectionnez Yes (Oui) pour confirmer.

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

19

Dveloppement dun sous-programme de


gestion des dfauts

Quand utiliser cette


procdure

Si une condition de dfaut survient qui est suffisamment grave pour


dclencher larrt immdiat de lautomate, ce dernier gnre un dfaut
majeur et arrte lexcution de la logique.
Selon votre application, vous pouvez ne pas vouloir que tous les dfauts
majeurs arrtent lensemble du systme.
Dans ce cas, vous pouvez utiliser un sous-programme de gestion des
dfauts pour effacer un dfaut spcifique et laisser fonctionner au moins
une partie du systme.
EXEMPLE

Utilisez un sous-programme de gestion des dfauts.


Dans un systme qui utilise des numros de recette comme
adresses indirectes, un chiffre mal saisi peut provoquer un
dfaut majeur, par exemple de type 4, code 20.
Pour empcher larrt immdiat de tout le systme, un
sous-programme de gestion des dfauts efface tout type
de dfaut majeur de
type 4, code 20.

Comment utiliser cette


procdure

Pour dvelopper un sous-programme de gestion des dfauts :

Cration du type de donnes FAULTRECORD


Cration dun sous-programme de gestion des dfauts
Effacement dun dfaut majeur
Effacement dun dfaut majeur pendant la pr-scrutation
Test dun sous-programme de gestion des dfauts

Publication 1756-PM001E-FR-P - Aot 2002

19-2

Dveloppement dun sous-programme de gestion des dfauts

Cration du type de
donnes FAULTRECORD
Pour crer un nouveau type de donnes :

+ Controller Your_Project
+ Tasks
+ Motion Groups
Trends
Data

Types
User-Defined

Cliquez avec le bouton droit de la


souris et slectionnez Nouveau type
de donnes.

Publication 1756-PM001E-FR-P - Aot 2002

Crez le type de donnes utilisateur suivant. Il permet de stocker les


informations sur le dfaut.
Type de donnes :FAULTRECORD
Nom

FAULTRECORD

Description

Stocke les attributs MajorFaultRecord ou MinorFaultRecord de


lobjet PROGRAM.

Membres
Nom

Type de
donnes

Style

Description

Time_Low

DINT

Dcimal

32 bits infrieurs de la valeur dhorodatage du


dfaut

Time_High

DINT

Dcimal

32 bits suprieurs de la valeur dhorodatage du


dfaut

Type

INT

Dcimal

type de dfaut (programme, E/S, etc)

Code

INT

Dcimal

code du dfaut

Info

DINT[8]

Hex

informations spcifiques au dfaut

Dveloppement dun sous-programme de gestion des dfauts

Cration dun
sous-programme de gestion
des dfauts

19-3

Un sous-programme de gestion des dfauts permet dutiliser la logique relais


pour effacer des dfauts spcifiques et permettre lautomate de reprendre
lexcution. Lendroit o est plac le sous-programme dpend du type de
dfaut que vous voulez effacer.

Dans le cas dun dfaut


caus par

Faites ceci

lexcution dune instruction

Crez un sous-programme de gestion des dfauts pour le programme :


A. Dans la fentre dorganisation de lautomate, cliquez avec le bouton droit de la souris sur
nom_du_programme et slectionnez Nouveau sous-programme.
B. Dans la zone de nom, tapez un nom pour le sous-programme de gestion des dfauts
(nom_du_sous-programme_de_gestion_des_dfauts ).
C. Dans la liste droulante Type, slectionnez Relais.
D. Cliquez sur OK.
E. Cliquez avec le bouton droit de la souris sur nom_du_programme et slectionnez
Proprits.
F. Cliquez sur longlet Configuration.
G. Dans la liste droulante Dfaut, slectionnez
nom_du_sous-programme_de_gestion_des_dfauts.
H. Cliquez sur OK.

la perte dalimentation

Crez un programme et un sous-programme principal pour la gestion des dfauts de lautomate.


A. Dans la fentre dorganisation de lautomate, cliquez avec le bouton droit de la souris sur
Gestion des dfauts de lautomate et slectionnez Nouveau programme.
B. Type :
nom_du_programme
description (facultatif)
C. Cliquez sur OK.
D. Cliquez sur le signe + situ ct de Gestion des dfauts de lautomate.
E. Cliquez avec le bouton droit de la souris sur nom_du_programme et slectionnez
Nouveau sous-programme.
F. Type :
nom_du_sous-programme
description (facultatif)
G. Dans la liste droulante Type, slectionnez le langage de programmation pour le
sous-programme.
H. Cliquez sur OK.
I. Cliquez avec le bouton droit de la souris sur nom_du_programme et slectionnez
Proprits.
J. Cliquez sur longlet Configuration.
K. Dans la liste droulante Principal, slectionnez nom_du_sous-programme
L. Cliquez sur OK.

les E/S
le chien de garde de tche
le changement de mode
laxe

Publication 1756-PM001E-FR-P - Aot 2002

19-4

Dveloppement dun sous-programme de gestion des dfauts

Effacement dun dfaut


majeur

Pour effacer un dfaut majeur qui se produit pendant lexcution de votre


projet, entrez la logique suivante dans le sous-programme de gestion des
dfauts appropri. (Voir Cration dun sous-programme de gestion des
dfauts, page 19-3.)
Obtenir le type et le code du dfaut
Recherche dun dfaut spcifique
Effacement du dfaut

Obtenir le type et le code du dfaut

1.
2.
42372

1. Linstruction GSV accde lattribut MAJORFAULTRECORD de ce


programme. Cet attribut stocke les informations sur le dfaut.
2. Linstruction GSV stocke les informations sur le dfaut dans le point
major_fault_record. Lorsque vous entrez un point bas sur une structure,
entrez le premier membre du point.
Nom du point

Type

major_fault_record

FAULTRECORD

Recherche dun dfaut spcifique


1.

2.

42372

3.

Publication 1756-PM001E-FR-P - Aot 2002

4.

Dveloppement dun sous-programme de gestion des dfauts

19-5

1. Cette instruction EQU recherche un type de dfaut spcifique, tel quun


dfaut de programme ou dE/S. Dans Source B, entrez la valeur du type
de dfaut que vous voulez effacer.
2. Cette instruction EQU recherche un code de dfaut spcifique. Dans
Source B, entrez la valeur du code que vous voulez effacer.
3. Cette instruction CLR met zro la valeur du type de dfaut dans le
point major_fault_record.
4. Cette instruction CLR met zro la valeur du code de dfaut du point
major_fault_record.

Effacement du dfaut

1.
2.
42372

1. Linstruction SSV crit de nouvelles valeurs dans lattribut


MAJORFAULTRECORD de ce programme.
2. Linstruction SSV crit les valeurs contenues dans le point
major_fault_record. Puisque les membres Type et Code sont zro, le dfaut
est effac et lautomate reprend lexcution.

Publication 1756-PM001E-FR-P - Aot 2002

19-6

Dveloppement dun sous-programme de gestion des dfauts

Effacement dun dfaut


majeur pendant la
pr-scrutation

Si lautomate se met en dfaut immdiatement aprs son passage en mode


Excution, lopration de pr-scrutation est examine pour y rechercher un
dfaut. Par exemple, la pr-scrutation examine des adresses indirectes (un
point qui sert de renvoi un lment dans un tableau).
Si une adresse indirecte est initialise au moment de lexcution, elle
peut tre trop grande pour le tableau pendant la pr-scrutation.
Si lautomate trouve une adresse indirecte qui est hors des limites
pendant la pr-scrutation, un dfaut majeur se produit.
Pour laisser lautomate terminer la pr-scrutation, utilisez le
sous-programme de gestion des dfauts du programme pour reprer et
effacer le dfaut.
Pour effacer un dfaut majeur qui se produit pendant la pr-scrutation :

Identifier quand lautomate est en pr-scrutation


Obtenir le type et le code du dfaut
Recherche dun dfaut spcifique
Effacement du dfaut

Identifier quand lautomate est en pr-scrutation


Entrez la ligne suivante dans le sous-programme du programme :
1.

1.

43063

1. Entrez cette ligne comme premire ligne du sous-programme principal


du programme.
2. Le sous-programme de gestion des dfauts de ce programme utilise
ltat de ce bit pour dterminer si le dfaut sest produit pendant la
pr-scrutation ou pendant la scrutation normale de la logique :
Pendant la pr-scrutation, ce bit est dsactiv. (Pendant la
pr-scrutation, lautomate rinitialise tous les bits rfrencs par les
instructions OTE.)
Une fois que lautomate commence lexcution de la logique, ce bit
reste activ.

Publication 1756-PM001E-FR-P - Aot 2002

Nom du point

Type

CPU_scanning

BOOL

Dveloppement dun sous-programme de gestion des dfauts

19-7

Obtenir le type et le code du dfaut


Entrez la ligne dans le sous-programme de gestion des dfauts du programme :

1.
2.
43064

1. Linstruction GSV accde lattribut MAJORFAULTRECORD de ce


programme. Cet attribut stocke les informations sur le dfaut.
2. Linstruction GSV stocke les informations sur le dfaut dans le point
major_fault_record. Lorsque vous entrez un point bas sur une structure,
entrez le premier membre du point.
Nom du point

Type

major_fault_record

FAULTRECORD

Recherche dun dfaut spcifique


Entrez la ligne dans le sous-programme de gestion des dfauts du programme :
1.

2.

3.

43064

4.

5.

1. Pendant la pr-scrutation, les bits de toutes les instructions OTE sont


dsactivs et cette instruction est vraie. Une fois que lautomate
commence lexcution de la logique, cette instruction est toujours
fausse.
2. Cette instruction EQU recherche un dfaut de type 4, ce qui signifie
quune instruction de ce programme a produit le dfaut.

Publication 1756-PM001E-FR-P - Aot 2002

19-8

Dveloppement dun sous-programme de gestion des dfauts

3. Cette instruction EQU recherche un dfaut de code 20, ce qui signifie


quun indice de tableau est trop grand ou quune valeur POS ou LEN
dune structure CONTROL nest pas valide.
4. Cette instruction CLR met zro la valeur du type de dfaut dans le
point major_fault_record.
5. Cette instruction CLR met zro la valeur du code de dfaut du point
major_fault_record.

Effacement du dfaut
Entrez la ligne dans le sous-programme de gestion des dfauts du programme :
1.

2.
3.
43064

1. Pendant la pr-scrutation, les bits de toutes les instructions OTE sont


dsactivs et cette instruction est vraie. Une fois que lautomate
commence lexcution de la logique, cette instruction est toujours
fausse.
2. Linstruction SSV crit de nouvelles valeurs dans lattribut
MAJORFAULTRECORD de ce programme.
3. Linstruction SSV crit les valeurs contenues dans le point
major_fault_record. Puisque les membres Type et Code sont zro, le dfaut
est effac et lautomate reprend lexcution.

Publication 1756-PM001E-FR-P - Aot 2002

Dveloppement dun sous-programme de gestion des dfauts

Test dun sous-programme


de gestion des dfauts

19-9

Vous pouvez utiliser une instruction JSR pour tester le sous-programme de


gestion des dfauts dun programme sans crer une erreur (c.--d., simuler un
dfaut).
1. Crez un point BOOL que vous utiliserez pour introduire le dfaut.
2. Entrez la ligne suivante dans le sous-programme principal ou dans un
sous-programme du programme :

est

aaa

le point que vous allez utiliser pour introduire le dfaut (Etape1.)

bbb

le sous-programme du programme

3. Pour simuler un dfaut, rglez la condition dentre.

EXEMPLE

Test dun sous-programme de gestion des dfauts

Lorsque test_fault_routine est activ, un dfaut majeur se produit et lautomate excute


Fault_Routine.

Publication 1756-PM001E-FR-P - Aot 2002

19-10

Dveloppement dun sous-programme de gestion des dfauts

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

20

Cration dun dfaut majeur dfini par


lutilisateur

Quand utiliser cette


procdure ?

Si vous voulez interrompre (effectuer un arrt immdiat) lautomate en


fonction des conditions de votre application, crez un dfaut majeur dfini par
lutilisateur. Avec un dfaut majeur dfini par lutilisateur :
Vous dfinissez une valeur pour le code de dfaut.
Lautomate traite ce dfaut comme tous les autres dfauts majeurs :
Il passe en mode dfaut (dfaut majeur) et arrte dexcuter la
logique.
Les sorties sont mises ltat (ou la valeur) configur pour le mode
de dfaut.

EXEMPLE

Dfaut majeur dfini par lutilisateur


Lorsque input_value est suprieure 80, produire un dfaut
majeur et gnrer un code de dfaut de 999.

Cration dun dfaut majeur


dfini par lutilisateur

1. Existe-t-il dj un sous-programme de gestion des dfauts pour le


programme ?
Si :
Oui
Non

Alors :
Allez ltape 2.
Crez un sous-programme de gestion des dfauts pour le programme :
A. Dans la fentre dorganisation de lautomate, cliquez avec le
bouton droit de la souris sur nom_du_programme et
slectionnez Nouveau sous-programme.
B. Dans la zone de nom, tapez un nom pour le sous-programme de
gestion des dfauts (nom_du_sous-programme_
de_gestion_des_dfauts).
C. Dans la liste droulante Type, slectionnez Relais.
D. Cliquez sur OK.
E. Cliquez avec le bouton droit de la souris sur
nom_du_programme et slectionnez Proprits.
F. Cliquez sur longlet Configuration.
G. Dans la liste droulante Dfaut, slectionnez
nom_du_sous-programme_de_gestion_des_
dfauts.
H. Cliquez sur OK.
I. Cliquez deux fois sur
nom_du_sous-programme_de_gestion_des_
dfauts.
J. Entrez une instruction NOP (pour vrifier que le sous-programme
na pas derreur).

Publication 1756-PM001E-FR-P - Aot 2002

20-2

Cration dun dfaut majeur dfini par lutilisateur

2. Dans le sous-programme principal, entrez la ligne suivante :


JSR
Jump to Subroutine
Routine name name_of_fault_routine
Input par
x

conditions qui entranent


un arrt immdiat de
lautomate
42373

o
nom_du_sous-programme_de_gestion_des_dfauts.
x

EXEMPLE

est
le sous-programme cr ltape 1.
la valeur du code de dfaut

Cration dun dfaut majeur dfini par lutilisateur

Lorsque input_value est suprieur ou gal 80, lexcution passe nom_du_sous-programme_de_gestion_des_dfauts. Un


dfaut majeur se produit et lautomate passe en mode de dfaut. Les sorties passent leur tat de dfaut. La bote
de dialogue Proprits de lautomate, onglet Dfauts majeurs, affiche le code 999.
GEQ
Grtr Than or Eql (A>=B)
Source A
input_value
0
Source B
80

JSR
Jump to Subroutine
Routine name name_of_fault_routine
Input par
999

42373

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

21

Gestion des dfauts mineurs

Si une condition de dfaut se produit qui nest pas suffisamment grave pour
dclencher larrt immdiat de lautomate, ce dernier gnre un dfaut
mineur.

Quand utiliser cette


procdure

Lautomate continue lexcution.


Il nest pas indispensable deffacer un dfaut mineur.
Pour optimiser la dure dexcution et assurer la prcision du
programme, vous devez surveiller et corriger ces dfauts.

Utilisez la logique relais afin de saisir des informations se rapportant un


dfaut mineur :

Gestion des dfauts


mineurs
Pour rechercher un :

Faites ceci :

chevauchement dune
tche priodique

1. Entrez une instruction GSV qui obtient lobjet FAULTLOG, attribut MinorFaultBits.
2. Surveillez le bit 6.

chargement depuis la
mmoire non volatile

1. Entrez une instruction GSV qui obtient lobjet FAULTLOG, lattribut MinorFaultBits.
2. Surveiller le bit 7.

problme li au port srie

1. Entrez une instruction GSV qui obtient lobjet FAULTLOG, attribut MinorFaultBits.
2. Surveillez le bit 9.

dchargement de la pile

1. Entrez une instruction GSV qui obtient lobjet FAULTLOG, attribut MinorFaultBits.
2. Surveillez le bit 10.

problme li une
instruction

1. Crez un type de donnes dfini par lutilisateur qui stocke linformation de dfaut. Appelez le type
de donnes FaultRecord et attribuez les membres suivants :
Nom :

Type des donnes :

Type :

TimeLow

DINT

Dcimal

TimeHigh

DINT

Dcimal

Type

INT

Dcimal

Code

INT

Dcimal

Info

DINT[8]

Hexadcimal

2. Crez un point pour stocker les valeurs de lattribut MinorFaultRecord. Slectionnez le type de
donnes cr ltape 1.
3. Surveillez S:MINOR.
4. Si S:MINOR est activ, utilisez une instruction GSV pour obtenir les valeurs de lattribut
MinorFaultRecord.
5. Si vous voulez dtecter un dfaut mineur produit par une autre instruction, rinitialisez S:MINOR.
(S:MINOR reste activ jusqu la fin de la scrutation.)

Publication 1756-PM001E-FR-P - Aot 2002

21-2

Gestion des dfauts mineurs

Lexemple suivant recherche un avertissement de pile faible.

EXEMPLE

Recherche dun dfaut mineur

Minor_fault_check dure 1 minute (60 000 ms) puis redmarre automatiquement.

Chaque minute, minor_fault_check.DN est activ pour une scrutation. A ce moment-l, linstruction GSV obtient la
valeur de lobjet FAULTLOG, attribut MinorFaultBits, et la stocke dans le point minor_fault_bits. Linstruction GSV
ntant excute que chaque minute, le temps de scrutation de la plupart des scrutations est rduit.

Si minor_fault_bits.10 est activ, cela signifie que la pile est faible.

42373

Publication 1756-PM001E-FR-P - Aot 2002

Gestion des dfauts mineurs

21-3

Lexemple suivant recherche un dfaut mineur produit par une instruction


spcifique.

EXEMPLE

Recherche dun dfaut mineur produit par une instruction

Multiplie value_a par 1 000 000 et recherche un dfaut mineur, tel quun dpassement mathmatique :
Pour sassurer que ce nest pas une instruction prcdente qui a produit le dfaut, la ligne efface pralablement
S:MINOR.
Ensuite, la ligne excute linstruction de multiplication.
Si linstruction produit un dfaut mineur, lautomate active S:MINOR.
Si S:MINOR est activ, linstruction GSV obtient des informations sur le dfaut et rinitialise S:MINOR.

42373

Publication 1756-PM001E-FR-P - Aot 2002

21-4

Gestion des dfauts mineurs

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

22

Dveloppement dun sous-programme de


dmarrage

Quand utiliser cette


procdure ?

Le gestionnaire de dmarrage est une tche optionnelle qui est excute


lorsque lautomate dmarre en mode Run (excution).

42195

Utilisez le gestionnaire de dmarrage lorsque vous voulez obtenir lun des


rsultats suivants aprs une perte dalimentation suivie du rtablissement de
lalimentation :
Empcher lautomate de repasser en mode Run (excution).
Le gestionnaire de dmarrage produira un dfaut majeur, de type 1,
code 1, et lautomate passera en mode de dfaut.
Prendre certaines mesures spcifiques puis reprendre lexcution
normale de la logique.

Publication 1756-PM001E-FR-P - Aot 2002

22-2

Dveloppement dun sous-programme de dmarrage

Dveloppement dun
sous-programme de
dmarrage

La procdure de dveloppement dun sous-programme de dmarrage est la


mme que pour un sous-programme de gestion des dfauts :
1. Crez un type de donnes dfini par lutilisateur pour stocker les
informations sur le dfaut. Appelez le type de donnes FaultRecord et
attribuez les membres suivants :
Nom :

Type des donnes :

Type :

TimeLow

DINT

Dcimal

TimeHigh

DINT

Dcimal

Type

INT

Dcimal

Code

INT

Dcimal

Info

DINT[8]

Hexadcimal

2. Crez un point pour stocker les informations sur le dfaut. Slectionnez


le type de donnes FaultRecord.
3. Crez un programme pour le gestionnaire de dmarrage :
Action :

Procdure dtaille :

1. Crer un projet

A. Dans la fentre dorganisation de lautomate, cliquez avec le bouton droit de la souris


sur le dossier Gestionnaire de dmarrage et slectionnez Nouveau programme.
B. Tapez
nom_du_programme
description (facultatif)
C. Cliquez sur OK.

2. Crer et attribuer un
sous-programme principal
(premier sous-programme excut
dans le programme).

A. Cliquez sur le signe + situ ct de Gestionnaire de dmarrage.


B. Cliquez avec le bouton droit de la souris sur nom_du_programme et
slectionnez Nouveau sous-programme.
C. Tapez
nom_du_sous-programme_principal
description (facultatif)
D. Dans la liste droulante Type, slectionnez le langage de programmation pour le
sous-programme.
E. Cliquez sur OK.
F. Cliquez avec le bouton droit de la souris sur nom_du_programme et
slectionnez Proprits.
G. Cliquez sur longlet Configuration.
H. Dans la liste droulante Principal, slectionnez
nom_du_sous-programme_principal
I. Cliquez sur OK.
J. Pour ajouter dautres sous-programmes au programme, rptez les tapes B. E.

Publication 1756-PM001E-FR-P - Aot 2002

Dveloppement dun sous-programme de dmarrage

22-3

3. Comment voulez-vous grer une perte dalimentation ?


Pour :

Faites ceci :

Empcher lautomate de repasser en


mode dexcution

Vous avez termin. Lorsque lalimentation est


rtablie, un dfaut majeur, de type 1, code 1,
se produit et lautomate passe en mode de
dfaut.

Lorsque lalimentation est rtablie,


prendre des mesures spcifiques puis
retourner un fonctionnement normal

A. Ouvrez (cliquez deux fois)


nom_du_sous-programme.
B. Entrez la logique de ces actions.

4. Entrez la logique suivante pour effacer le dfaut :


Obtient les informations sur le dfaut et les stocke dans le point major_fault (structure dfinie par lutilisateur)
GSV
Get system value
CIP Object class
PROGRAM
CIP Object name
THIS
Attribute name MAJORFAULTRECORD
Dest
major_fault.TimeLow
0

Met le type et le code de dfaut dans le point major_fault zro et MAJORFAULTRECORD aux nouvelles valeurs,
ce qui efface le dfaut.
MOV
Move
Source

MOV
Move
Source

Dest major_fault.Type
0

Dest major_fault.Code
0

SSV
Set system value
CIP Object class
PROGRAM
CIP Object name
THIS
Attribute name MAJORFAULTRECORD
Source
major_fault.TimeLow
0
42375

o :
major_fault est le point cr ltape 2.

Publication 1756-PM001E-FR-P - Aot 2002

22-4

Dveloppement dun sous-programme de dmarrage

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

23

Stockage et chargement dun projet dans la


mmoire non volatile

Quand utiliser cette


procdure
IMPORTANT

La mmoire non volatile stocke le contenu de la mmoire


utilisateur lorsque vous enregistrez le projet.
Les modifications apportes aprs lenregistrement du
projet ne sont pas refltes dans la mmoire non
volatile.
Si vous modifiez le projet sans enregistrer les
changements, vous les crasez lorsque vous chargez le
projet partir de la mmoire non volatile. Si cela se
produit, vous devrez transfrer ou charger le projet
pour vous mettre en ligne.
Si vous voulez enregistrer des modifications, telles que
des ditions en ligne, des valeurs de point ou une
planification de rseau ControlNet, vous devez de
nouveau enregistrer le projet aprs avoir effectu ces
modifications.

Utilisez cette procdure pour stockage ou chargement un projet dans la


mmoire non volatile dun automate.
Si lalimentation de lautomate est coupe alors que sa pile est presque
dcharge, le projet qui se trouve dans la mmoire utilisateur est perdu.
La mmoire non volatile permet de garder une copie de votre projet
dans lautomate. Ce dernier na pas besoin dtre sous tension pour
garder cette copie.
Vous pouvez charger cette copie du projet de la mmoire non volatile
dans la mmoire utilisateur de lautomate :
chaque mise sous tension ;
chaque fois que lautomate est mis sous tension et quil ne contient
pas de projet ;
nimporte quel moment laide du logiciel RSLogix 5000.

Publication 1756-PM001E-FR-P - Aot 2002

23-2

Stockage et chargement dun projet dans la mmoire non volatile

Les paramtres de stockage et de chargement sont les suivants :


Paramtre

Stockage

Combien de temps prend un stockage ou un quelques minutes


chargement ?
Dans quel(s) mode(s) automate peut-on
stocker ou charger un projet ?

mode Programme

Peut-on se mettre en ligne avec lautomate


lors dun stockage ou dun chargement ?

non

Chargement
quelques secondes

Quel est ltat des E/S pendant un stockage les E/S restent dans leur tat configur pour
ou un chargement ?
le mode Programme

Selon votre automate, une mise jour du firmware peut ou non effacer le
projet stock dans la mmoire non volatile.
Si la mmoire non volatile est

Alors

non amovible (pas de carte CompactFlash)

Lorsque vous mettez jour le firmware de lautomate, vous


effacez le contenu de la mmoire non volatile (rvision 10.x ou
ultrieure).

amovible (carte CompactFlash)

Lorsque vous mettez jour le firmware de lautomate, le projet


reste dans la mmoire non volatile.

Comment utiliser cette


procdure
Pour

Voir

slectionner un automate contenant une mmoire non volatile

Slection dun automate avec mmoire


non volatile , page 23-3

connatre les prcautions prendre lors de lutilisation de la carte CompactFlash


industrielle 1784-CF64

Prcautions dutilisation de la carte


CompactFlash industrielle 1784-CF64 ,
page 23-4

choisir quand recharger un projet dans lautomate

Quand charger une image , page 23-5

stocker un projet dans la mmoire non volatile de lautomate

Stockage dun projet , page 23-5

remplacer le projet en cours dans lautomate par le projet stock dans la mmoire non
volatile

Chargement dun projet , page 23-8

charger le projet aprs une perte dalimentation qui a effac la mmoire parce que
lautomate ne comportait pas de pile
utiliser la logique relais pour signaler que votre projet a t charg partir de la mmoire
non volatile

Vrification dun chargement ,


page 23-10

effacer un projet de la mmoire non volatile de lautomate

Effacement de la mmoire non volatile ,


page 23-11

Publication 1756-PM001E-FR-P - Aot 2002

Stockage et chargement dun projet dans la mmoire non volatile

Slection dun automate


avec mmoire non volatile

23-3

Les automates Logix5000 suivants possdent une mmoire non volatile pour le
stockage des projets.
Type dautomate

Rfrence

Rvision du firmware

CompactLogix5320

1769-L20

10.x ou ultrieure

CompactLogix5330

1769-L30

10.x ou ultrieure

ControlLogix5555

1756-L55M22

10.x ou ultrieure

1756-L55M23

8.x ou ultrieure

1756-L55M24

8.x ou ultrieure

ControlLogix5563

1756-L63(1)

11.x ou ultrieure

DriveLogix5720

diverses

10.x ou ultrieure

FlexLogix5433

1794-L33

10.x ou ultrieure

FlexLogix5434 Srie B

1794-L34/B

11.x ou ultrieure

(1)

Requiert une carte mmoire CompactFlash industrielle 1784-CF64.

Publication 1756-PM001E-FR-P - Aot 2002

23-4

Stockage et chargement dun projet dans la mmoire non volatile

Prcautions dutilisation de
la carte CompactFlash
industrielle 1784-CF64

Si vous utilisez une carte CompactFlash industrielle 1784-CF64 dans votre


automate, observez les directives suivantes :
IMPORTANT

Une carte CompactFlash stocke uniquement votre projet


RSLogix 5000. Elle ne stocke pas le firmware de votre
automate. Les rvisions majeures et mineures du projet
doivent correspondre celles de lautomate. Sinon, un
dfaut majeur se produit lorsque vous essayez de charger le
projet partir de la carte CompactFlash.

Utilisez uniquement un automate Logix5000 pour stocker un projet sur


une carte CompactFlash. La carte CompactFlash requiert un format
spcial. Nutilisez pas de lecteur CompactFlash pour lire ou crire sur la
carte avec un ordinateur.
Stockez uniquement un projet Logix5000 (un seul) et aucune autre
donne sur une carte CompactFlash. Lorsque vous stockez un projet sur
une carte CompactFlash, vous remplacez tout le contenu de la carte. En
dautres termes, vous perdez tout ce qui se trouve sur la carte.
Avant de mettre jour le firmware de lautomate, effectuez lune des
actions suivantes :
retirez la carte CompactFlash de lautomate ;
vrifiez loption Load Image (Charger image) du projet qui se
trouve dans la mmoire non volatile de lautomate. Si cette option
est rgle sur On Power Up (A la mise sous tension) ou sur On
Corrupt Memory (Sur corruption mmoire), stockez dabord le
projet avec loption Load Image (Charger image) rgle sur User
Initiated (Initi par lutilisateur).
Si vous neffectuez pas lune des actions ci-dessus, un dfaut majeur
risque de se produire lors de la mise jour du firmware de lautomate.
Ceci se produit parce que les options On Power Up et On Corrupt Memory
indiquent lautomate de charger le projet partir de la mmoire non
volatile. La non correspondance du firmware aprs le chargement
entrane alors un dfaut majeur.
Aprs avoir mis jour le firmware de lautomate, enregistrez de nouveau
le projet dans la mmoire non volatile, pour vous assurer que la rvision
du firmware du projet en mmoire non volatile correspond bien la
rvision du firmware de lautomate.

Publication 1756-PM001E-FR-P - Aot 2002

Stockage et chargement dun projet dans la mmoire non volatile

Quand charger une image

23-5

Vous avez plusieurs options pour choisir quand (dans quelles conditions) vous
voulez recharger le projet dans la mmoire utilisateur (RAM) de lautomate.

Si vous voulez le charger

Slectionnez

Remarques

chaque fois que vous mettez le chssis sous


tension ou que vous le mettez hors tension puis
de nouveau sous tension

On Power Up
(A la mise sous tension)

Lors dune mise hors puis sous tension, vous


perdez les modifications en ligne, les valeurs de
point et la planification de rseau que vous navez
pas stockes dans la mmoire non volatile.
Vous pouvez toujours utiliser le logiciel
RSLogix 5000 pour charger le projet.

lorsquil ny a pas de projet dans lautomate et On Corrupt memory


que vous mettez le chssis sous tension ou hors (Sur corruption mmoire)
tension puis de nouveau sous tension

Vous pouvez toujours utiliser le logiciel RSLogix 5000


pour charger le projet.

uniquement au moyen du logiciel RSLogix 5000 User Initiated


(Initi par lutilisateur)

Stockage dun projet

Dans cette tche, vous stockez un projet dans la mmoire non volatile de
lautomate. Ceci remplace tout le contenu de la mmoire non volatile.
ATTENTION

Pendant le stockage, tous les axes asservis actifs sont


dsactivs. Avant de stocker un projet, assurez-vous que
ceci ne provoquera pas de mouvements imprvus dun axe.

Avant de stocker le projet :


effectuez toutes les modifications de la logique relais requises ;
chargez le projet dans lautomate.
Pour stocker un projet :
Configurer lopration de stockage
Stocker le projet
Enregistrer le projet en ligne

Configurer lopration de stockage


1. Mettez lautomate en ligne.
2. Mettez lautomate en mode Programme (Rem Program ou Program).

Publication 1756-PM001E-FR-P - Aot 2002

23-6

Stockage et chargement dun projet dans la mmoire non volatile

3.
42627

3. Dans la barre doutils Online, cliquez sur le bouton des proprits de


lautomate.
4. Cliquez sur longlet Nonvolatile Memory (Mmoire non volatile).

5.

42865

5. Cliquez sur Load/Store (Chargement/Stockage).


Projet actuellement dans la mmoire non volatile de
lautomate (si un projet sy trouve).

Projet actuellement dans la mmoire utilisateur (RAM)


de lautomate.

6.
7.
8.

1.

6. Choisissez quand (dans quelles conditions) recharger le projet dans la


mmoire utilisateur (RAM) de lautomate.

Publication 1756-PM001E-FR-P - Aot 2002

Stockage et chargement dun projet dans la mmoire non volatile

23-7

7. A ltape 6, quelle option de chargement avez-vous slectionne ?


Si

Alors

On Power Up (A la mise
sous tension)

Slectionnez le mode dans lequel vous voulez que lautomate se mette aprs le chargement :
programme distance (remote program)
excution distance (remote run)
Pour passer ce mode aprs le chargement, mettez le commutateur cl de lautomate sur la
position REM.

On Corrupt Memory (Sur


corruption mmoire)
User Initiated (Initi par
lutilisateur)

Allez ltape 8.

8. Vous pouvez entrer une remarque dcrivant le projet que vous stockez,
si vous le souhaitez.

Stocker le projet
1. Cliquez sur < Store (Stocker).
Une bote de dialogue vous demande de confirmer le stockage.
2. Pour stocker le projet, choisissez Yes (Oui).
Pendant le stockage, les vnements suivants se produisent :
le voyant OK, sur la face avant de lautomate, affiche la squence
suivante :
vert clignotant rouge vert ;
le logiciel RSLogix 5000 se met hors ligne ;
une bote de dialogue vous indique que le stockage est en cours.
3. Cliquez sur OK.
Lorsque le stockage est termin, vous restez hors ligne.

Enregistrer le projet en ligne


1. Mettez lautomate en ligne.
2. Enregistrez le projet.

Publication 1756-PM001E-FR-P - Aot 2002

23-8

Stockage et chargement dun projet dans la mmoire non volatile

Chargement dun projet

Dans cette tche, vous utilisez le logiciel RSLogix 5000 pour charger le projet
partir de la mmoire non volatile.
ATTENTION

Pendant le chargement, tous les axes asservis actifs sont


dsactivs. Avant de charger un projet, assurez-vous que
ceci ne provoquera pas de mouvements imprvus dun axe.

Etapes :
1. Mettez lautomate en ligne.
2. La bote de dialogue suivante sest-elle affiche ?

42873

Si

Alors

Non

Allez ltape 3.

Oui

Allez ltape 5.

3. Mettez lautomate en mode Programme (Rem Program ou Program).

4.
42627

4. Dans la barre doutils Online, cliquez sur le bouton des proprits de


lautomate.
5. Cliquez sur longlet Nonvolatile Memory (Mmoire non volatile).

Publication 1756-PM001E-FR-P - Aot 2002

Stockage et chargement dun projet dans la mmoire non volatile

23-9

6.
42865

6. Cliquez sur Load/Store (Chargement/Stockage).


Projet actuellement dans la mmoire non volatile de lautomate
(si un projet sy trouve).

Projet actuellement dans la mmoire utilisateur (RAM)


de lautomate.

7.

7. Cliquez sur Load > (Charger).


Une bote de dialogue vous demande de confirmer le chargement.
8. Pour charger le projet partir de la mmoire non volatile, choisissez Yes
(Oui).
Pendant le chargement, les vnements suivants se produisent :
le voyant OK, sur la face avant de lautomate, affiche la squence
suivante :
rouge vert ;
le logiciel RSLogix 5000 se met hors ligne.
Lorsque le chargement est termin, vous restez hors ligne. Si vous voulez vous
mettre en ligne, vous devez le faire manuellement.

Publication 1756-PM001E-FR-P - Aot 2002

23-10

Stockage et chargement dun projet dans la mmoire non volatile

Vrification dun
chargement

Lorsque lautomate charge un projet partir de la mmoire non volatile, il


fournit les informations suivantes :
il enregistre un dfaut mineur (type 7, code 49) ;
il active lobjet FAULTLOG, attribut MinorFaultBits, bit 7.
Si vous voulez savoir quand un projet a t charg partir de la mmoire non
volatile, utilisez la logique relais suivante :
o

est

minor_fault_bits

le point qui stocke lobjet FAULTLOG, attribut


MinorFaultBits (type de donnes DINT).

NVM_load

le point qui indique que lautomate a charg le projet


partir de sa mmoire non volatile.

Lors de la premire scrutation du projet (S:FS est activ), linstruction GSV rcupre lobjet
FAULTLOG, attribut MinorFaultBits, et stocke la valeur dans minor_fault_bits. Si le bit 7 est activ,
lautomate a charg le projet partir de sa mmoire non volatile.

42867

Publication 1756-PM001E-FR-P - Aot 2002

Stockage et chargement dun projet dans la mmoire non volatile

Effacement de la mmoire
non volatile

23-11

Pour supprimer un projet de la mmoire non volatile, procdez comme suit :


Vrifier loption de chargement de limage active
Changer loption de chargement de limage
Effacer le projet de lautomate
Stocker limage vide

Vrifier loption de chargement de limage active


1. Mettez lautomate en ligne.

2.
42627

2. Dans la barre doutils Online, cliquez sur le bouton des proprits de


lautomate.
3. Cliquez sur longlet Nonvolatile Memory (Mmoire non volatile).

4.
42865

4. Loption Load Image (Charger image) est-elle rgle sur User Initiated
(Initi par lutilisateur) ?
Si

Alors

Non

Voir Changer loption de chargement de limage , page 23-12.

Oui

Voir Effacer le projet de lautomate , page 23-12.

Publication 1756-PM001E-FR-P - Aot 2002

23-12

Stockage et chargement dun projet dans la mmoire non volatile

Changer loption de chargement de limage


1. Cliquez sur Load/Store (Chargement/Stockage).
2. Dans la liste droulante Load Image (Charger image), slectionnez User
Initiated (Initi par lutilisateur).
3. Cliquez sur <- Store (Stocker).
Une bote de dialogue vous demande de confirmer le stockage.
4. Pour stocker le projet, choisissez Yes (Oui).
Une bote de dialogue vous indique que le stockage est en cours.
5. Cliquez sur OK.
6. Attendez que le voyant OK, sur la face avant de lautomate, soit vert
fixe, ce qui indique que le stockage est termin.

Effacer le projet de lautomate


1. Dconnectez la pile de lautomate.
2. Mettez le chssis hors tension puis de nouveau sous tension.
3. Reconnectez la pile lautomate.

Stocker limage vide


1. Mettez lautomate en ligne.
La bote de dialogue Connected To Go Online (Connect pour
entrer en ligne) apparat.
2. Cliquez sur longlet Nonvolatile Memory (Mmoire non volatile).

3.

42865

3. Cliquez sur Load/Store (Chargement/Stockage).

Publication 1756-PM001E-FR-P - Aot 2002

Stockage et chargement dun projet dans la mmoire non volatile

23-13

42874

4.

4. Cliquez sur < Store (Stocker).


Une bote de dialogue vous demande de confirmer le stockage.
5. Pour stocker le projet, choisissez Yes (Oui).
Pendant le stockage, les vnements suivants se produisent :
le voyant OK, sur la face avant de lautomate, affiche la squence
suivante :
vert clignotant rouge vert ;
le logiciel RSLogix 5000 se met hors ligne ;
une bote de dialogue vous indique que le stockage est en cours.
6. Cliquez sur OK.
Lorsque le stockage est termin, vous restez hors ligne. Si vous voulez passer
en ligne, vous devez le faire manuellement.

Publication 1756-PM001E-FR-P - Aot 2002

23-14

Stockage et chargement dun projet dans la mmoire non volatile

Notes :

Publication 1756-PM001E-FR-P - Aot 2002

Chapitre

24

Protection d'un projet


Quand utiliser cette
procdure

Utilisez cette procdure pour contrler qui a accs votre projet. Les options
suivantes sont disponibles pour protger un projet :
Pour

Alors

Se reporter
la page

Empcher d'autres personnes de voir la


logique d'un ou plusieurs sous-programmes
d'un projet

Utilisation de la
protection de la source
du sous-programme

24-1

Attribuer diffrents niveaux d'accs un


projet, comme :
accs total pour les ingnieurs
modifications limits par le personnel
de maintenance
les oprateurs ne peuvent que
visualiser la logique et les donnes

Utilisation de Security
Server de RSI pour
protger un projet

24-12

Vous pouvez utiliser les deux options en mme temps.

Utilisation de la protection
de la source du
sous-programme

Pour limiter l'accs un sous-programme, utilisez le logiciel RSLogix 5000


pour lui attribuer une cl source (protection du sous-programme).
Pour protger un sous-programme, vous devez d'abord activer la
fonction de protection dans le logiciel RSLogix 5000.
Une fois le sous-programme protg, un ordinateur doit avoir la cl
source pour modifier, copier ou exporter le sous-programme.
Vous pouvez rendre un sous-programme visible ou invisible sans avoir
recourt la cl source.
Que la cl source soit disponible ou non, vous pouvez toujours charger
le projet et en excuter tous les sous-programmes.
Vous pouvez accder un sous-programme protg partir d'un
ordinateur particulier l'aide d'une des mthodes suivantes :
ajoutez le fichier de la cl source et pointez le logiciel RSLogix 5000
vers l'emplacement de ce fichier ;
crez le fichier de la cl source et entrez manuellement le nom de la
cl source.

Publication 1756-PM001E-FR-P - Aot 2002

24-2

Protection d'un projet

La fentre d'organisation de l'automate indique l'tat de protection d'un


sous-programme :

Pour ce sous-programme

Etat de protection.

Si la fentre d'organisation de
l'automate indique

Publication 1756-PM001E-FR-P - Aot 2002

Alors

Source Not Available (Source


non disponible)

Une cl source est attribue au


sous-programme.
Pour ouvrir le sous-programme, votre
ordinateur doit en avoir la cl source.

Source Not Available


(Viewable)
(Source non disponible - Visible)

Une cl source est attribue au


sous-programme.
Vous ne pouvez qu'ouvrir et visualiser le
sous-programme.
Vous ne pouvez ni modifier ni copier le
contenu du sous-programme.

Source Available (Source


disponible)

Une cl source est attribue au


sous-programme.
Vous avez un accs complet au
sous-programme.

Source Available (Viewable)


(Source disponible - Visible)

Une cl source est attribue au


sous-programme.
Vous avez un accs complet au
sous-programme.
Il est possible de visualiser le
sous-programme mme sans la cl source.

aucune des indications


prcdentes

Aucune cl source n'est attribue au


sous-programme.
Vous avez un accs complet au
sous-programme.

Protection d'un projet

IMPORTANT

24-3

Si la source d'un sous-programme n'est pas disponible,


n'exportez pas le projet.
Un fichier d'exportation (.L5K) contient uniquement
des sous-programmes pour lesquels le code source est
disponible.
Si vous exportez un projet pour lequel le code source
n'est pas disponible pour tous les sous-programmes,
vous ne pourrez pas restaurer le projet entier.

Publication 1756-PM001E-FR-P - Aot 2002

24-4

Protection d'un projet

Pour attribuer et grer les cls sources, effectuez les oprations suivantes :

Choix du niveau de protection pour


chaque sous-programme
Choix du nombre de cls sources

Dfinition de la cl source des cls

Choix d'un emplacement de fichier


pour stocker les cls sources
Activation de la fonction de
protection de la source dans le
Cration d'un fichier pour les cls
sources
Protection d'un sous-programme
avec une cl source
Limiter l'accs aux
sous-programmes protgs partir

Non

Oui
Utiliser cet ordinateur pour protger
d'autres sous-programmes ?

Oui

Non
Dsactivation de la protection de la
source d'un sous-programme

Limiter l'accs un
sous-programme protg

Fin

Option Accs un
sous-programme protg ( partir
de cet ordinateur)

Publication 1756-PM001E-FR-P - Aot 2002

Protection d'un projet

24-5

Choix du niveau de protection pour chaque sous-programme


La protection de la source protge votre projet au niveau du sous-programme.
Vous pouvez protger certains sous-programmes d'un projet tout en laissant
d'autres sous-programmes non protgs (accessibles par tous). Vous pouvez
galement protger un sous-programme tout en le laissant visible pour tous.
Tableau 24.1 Options de protection d'un sous-programme
Pour

Et

Alors
Protger le
sous-programme ?

empcher quelqu'un de faire ce qui suit


:
diter le sous-programme
changer les proprits du
sous-programme
exporter le sous-programme

Autoriser
l'affichage ?

galement empcher quelqu'un de faire ce qui


suit :
ouvrir (afficher) le sous-programme
faire une recherche dans le
sous-programme
aller des rfrences croises dans le
sous-programme
imprimer le sous-programme

oui

non

pas d'autres limitation

oui

oui

autoriser l'accs complet au


sous-programme.

non

Choix du nombre de cls sources


Pour protger un sous-programme, vous attribuez une cl source au
sous-programme. Vous pouvez rutiliser une cl source autant de fois que
vous voulez, comme indiqu ci-dessous.
Ceci :

Vous donne :

une cl source pour tous les projets

un moins grand nombre de cls sources


(plus facile grer mais moins de protection)

une cl source unique chaque projet


une cl source unique chaque
sous-programme de chaque projet

un plus grand nombre de cls sources


(plus difficile grer mais plus de protection)

Choisissez le nombre de cls sources qui correspond la fois la protection


que vous voulez et au niveau de gestion des cls sources que vous voulez.

Publication 1756-PM001E-FR-P - Aot 2002

24-6

Protection d'un projet

Dfinition de la cl source des cls


Les noms de cl source suivent les mmes rgles que les autres composants
RSLogix 5000, comme les sous-programmes, les points et les modules. Les
noms de cl source doivent respecter les rgles suivantes :
commencer par un caractre alphabtique (A-Z ou a-z) ou par un
caractre de soulignement (_) ;
ne contenir que des caractres alphabtiques, numriques et de
soulignement ;
avoir un maximum de 40 caractres ;
ne pas avoir plusieurs caractres de soulignement (_) la suite ;
pas de distinction entre majuscules/minuscules.

Choix d'un emplacement de fichier pour stocker les cls sources


Un fichier de cl source (sk.dat) stocke les cls sources. Ce fichier est spar
des fichiers de projet RSLogix 5000 (.acd). Vous pouvez stocker le fichier de
cl source dans n'importe quel rpertoire de votre choix.

Activation de la fonction de protection de la source dans le


logiciel RSLogix 5000
Pour utiliser la fonction de protection de la source du sous-programme dans le
logiciel RSLogix 5000, vous devez effectuer l'entre de registre suivante, qui
active la fonction :
Cl

Entre de la valeur

HKEY_CURRENT_USER\Software\Rockwell
Software\RSLogix 5000\ProtectedRoutine

Nom

Type

Donne

PTCRoutine

DWORD

Pour effectuer l'entre dans le registre :


1. Obtenez le CD du logiciel RSLogix 5000.
2. Excutez le fichier suivant partir du CD :
language \Tools\Source Protection Tool\Enable Protected Routine
Config.reg
o

Publication 1756-PM001E-FR-P - Aot 2002

Protection d'un projet

24-7

language est la langue de votre logiciel. Par exemple, pour le logiciel


en Anglais, ouvrez le dossier ENU.
Le fichier : Enable Protected Routine Config.reg, effectue l'entre
requise dans le registre.

Cration d'un fichier pour les cls sources


1. Ouvrez le projet RSLogix 5000 que vous voulez protger.
2. Dans le menu Tools (Outils), slectionnez Security Configure Source
Protection (Scurit, Configurer la protection de la source).
3. Le logiciel RSLogix 5000 vous invite-t-il spcifier l'emplacement pour
le fichier de la cl source ?
Si

Alors

Non

Votre ordinateur a dj le fichier de la cl source. Allez


Protection d'un sous-programme avec une cl source , page 24-8.

Oui

Allez l'tape4.

4. Choisissez Oui.

5.
7.

5. Cliquez sur
6. Slectionnez un fichier o stocker le fichier et choisissez OK.
7. Choisissez OK.
Une bote de dialogue vous demande si vous voulez crer le fichier de la
cl source (sk.dat).
8. Choisissez Oui.

emplacement du fichier de la cl
source (sk.dat)

Publication 1756-PM001E-FR-P - Aot 2002

24-8

Protection d'un projet

Protection d'un sous-programme avec une cl source


1. Ouvrez le projet RSLogix 5000 que vous voulez protger.
2. Dans le menu Tools (Outils), slectionnez Security Configure Source
Protection (Scurit, Configurer la protection de la source).

4.
3.

3. Slectionnez le ou les sous-programmes que vous voulez protger.


4. Cliquez sur Protect (Protger).

7.
5.
6.

5. Tapez un nom utiliser comme cl source. Ou slectionnez une cl


source existante dans la liste droulante.
6. Si quelqu'un n'a pas la cl source, voulez-vous l'autoriser ouvrir et
visualiser le sous-programme ?
Si

Alors

Non

Effacez (retirer la coche) la case Allow viewing of routine (Autoriser


l'affichage du sous-programme) (valeur par dfaut).

Oui

Cochez la case Allow viewing of routine (Autoriser l'affichage du


sous-programme).

7. Choisissez OK.
8. Lorsque vous avez attribu les cls sources requises au projet, cliquez
sur Close (Fermer).
9. Dans le menu File (Fichier), slectionnez Save (Sauvegarder).

Publication 1756-PM001E-FR-P - Aot 2002

Protection d'un projet

24-9

Limiter l'accs un sous-programme protg


IMPORTANT

Avant de retirer le fichier de la cl source (sk.dat) de


l'ordinateur, crire cette cl ou faire une copie du fichier et
la stocker dans un endroit scuris.

1. Ouvrez le projet RSLogix 5000 qui est protg.


2. Dans le menu Tools (Outils), slectionnez Security Configure Source
Protection (Scurit, Configurer la protection de la source).

3.

3. Cliquez sur Clear (Effacer).


Une bote de dialogue vous demande si vous voulez effacer le fichier de
la cl source (sk.dat).
4. Voulez-vous retirer le fichier de la cl source de l'ordinateur (empcher
tout accs futur au fichier) ?
Si

Alors

Oui

Choisissez Oui.

Non

Choisissez Non.

Dsactivation de la protection de la source d'un sous-programme


IMPORTANT

Avant de retirer le fichier de la cl source (sk.dat) de


l'ordinateur, crire cette cl ou faire une copie du fichier et
la stocker dans un endroit scuris.

1. Ouvrez le projet RSLogix 5000 qui est protg.


2. Dans le menu Tools (Outils), slectionnez Security Configure Source
Protection (Scurit, Configurer la protection de la source).

Publication 1756-PM001E-FR-P - Aot 2002

24-10

Protection d'un projet

4.

3. Cliquez sur Disable Ability To Configure Protected Routines (Dsactiver la


possibilit de configurer les sous-programmes protgs).
Une bote de dialogue vous demande de confirmer l'action.
4. Choisissez Oui.
Une bote de dialogue vous demande si vous voulez effacer le fichier de
la cl source (sk.dat).
5. Voulez-vous retirer le fichier de la cl source de l'ordinateur (empcher
tout accs futur au fichier) ?
Si

Alors

Oui

Choisissez Oui.

Non

Choisissez Non.

Accs un sous-programme protg


1. Ouvrez le projet RSLogix 5000 qui contient les sous-programmes
protgs.
2. Dans le menu Tools (Outils), slectionnez Security Configure Source
Protection (Scurit, Configurer la protection de la source).
3. Le logiciel RSLogix 5000 vous invite-t-il spcifier l'emplacement pour
le fichier de la cl source ?
Si

Alors

Non

Allez l'tape7.

Oui

Allez l'tape4.

4. Choisissez Oui.

Publication 1756-PM001E-FR-P - Aot 2002

Protection d'un projet

24-11

5.
7.

5. Cliquez sur
6. Cet ordinateur a-t-il dj un fichier de cl source (sk.dat) ?
Si

Alors

Oui

A. Slectionnez le rpertoire qui contient le fichier et choisissez


OK.
B. Choisissez OK.

Non

A. Slectionnez le fichier o stocker le nouveau fichier et


choisissez OK.
Une bote de dialogue vous demande si vous voulez crer le
fichier de la cl source (sk.dat).
B. Choisissez Oui.

7.

7. Cliquez sur View (Visualiser).


Si le systme vous invite slectionner un programme pour ouvrir le
fichier, slectionnez un traitement de texte, comme Notepad.
Le fichier sk.dat est ouvert.
8. Tapez le nom de la cl source. Pour entrer plusieurs cls, tapez chaque
cl sur une ligne spare.
sk.dat - Notepad
cl1
cl2
cl3

9. Enregistrez et fermez le fichier sk.dat.

Publication 1756-PM001E-FR-P - Aot 2002

24-12

Protection d'un projet

Utilisation de Security
Server de RSI pour protger
un projet

Le logiciel Security Server de RSI vous permet de contrler l'accs des


individus aux projets RSLogix 5000. Avec ce logiciel, vous pouvez
personnaliser l'accs des projets sur la base des points suivants :
utilisateurs dj connects sur la station de travail
projet RSLogix 5000 auquel l'utilisateur accde
station de travail partir de laquelle l'utilisateur accde au projet
RSLogix 5000
Avant d'utiliser le logiciel Security Server partir de projets RSLogix 5000,
configurez le logiciel :

Installation du logiciel Security Server de RSI


Configuration de DCOM
Activation du logiciel Security Server pour le logiciel RSLogix 5000
Importation du fichier RSLogix5000Security.bak
Dfinir les actions globales pour les utilisateurs
Dfinir les actions de projet pour les utilisateurs
Ajout d'utilisateurs
Ajout de groupes d'utilisateur
Attribution d'un accs global au logiciel RSLogix 5000
Attribution des actions de projet pour les nouveaux projets
RSLogix 5000

Une fois Security Server configur pour les projets RSLogix 5000, effectuez les
actions suivantes pour protger un projet :
Protection d'un projet RSLogix 5000
Attribution de l'accs un projet RSLogix 5000
Rafrachissement du logiciel RSLogix 5000, si ncessaire

Installation du logiciel Security Server de RSI


IMPORTANT

Si le logiciel RSLogix 5000 est dj sur votre ordinateur


quand vous installez Security Server, activez la scurit
pour le logiciel RSLogix 5000 lorsque vous y tes invit.

Voir Utilisation du logiciel Security Server de Rockwell Software (Edition


complte), livr avec le logiciel Security Server de RSI.

Configuration de DCOM
Voir Utilisation du logiciel Security Server de Rockwell Software (Edition
complte), livr avec le logiciel Security Server de RSI.

Publication 1756-PM001E-FR-P - Aot 2002

Protection d'un projet

24-13

Activation du logiciel Security Server pour le logiciel


RSLogix 5000
Avez-vous install Security Server avant l'installation du logiciel RSLogix 5000
?

Rockwell Software

Alors

Oui

Allez l'tape1.

Non

Allez Importation du fichier RSLogix5000Security.bak , page 24-14.

Keys.ini

Program Files

Si

1. Excutez ce fichier.

SetSecKeys.exe

RSLogix 5000

language

version

Security

est :

language

la langue de votre logiciel. Par exemple, pour le logiciel en Anglais,


ouvrez le dossier ENU.

version

la version de votre logiciel, par ex. v10

La bote de dialogue pour la recherche du fichier du projet s'ouvre. Par


dfaut, le fichier Keys.ini est dj slectionn.
2. Choisissez Open (Ouvrir).

3. Cochez la case RSLogix 5000 et


choisissez OK.
43073

Publication 1756-PM001E-FR-P - Aot 2002

24-14

Protection d'un projet

Importation du fichier RSLogix5000Security.bak


Le fichier RSLogix5000Security.bak fournit la configuration requise par
Security Server pour fonctionner avec le logiciel RSLogix 5000.
1. Ouvrez la fentre d'exploration de configuration Security
Configuration .
2. Dans le menu File (Fichier), slectionnez Import Database (Importer la
base de donnes).
3. Quelle rvision du logiciel Security Server utilisez-vous ?
Si

Alors

2.00

Cherchez dans ce dossier :

Program Files

Rockwell Software

RSLogix 5000

language

version

2.01

Security

est :

language

la langue de votre logiciel. Par exemple,


pour le logiciel en Anglais, ouvrez le
dossier ENU.

version

la version de votre logiciel, par ex. v10

Cherchez dans ce dossier :

Program Files

Rockwell Software

Security Server

System

4. Slectionnez le fichier RSLogix5000Security.bak et slectionnez Ouvrir.

Publication 1756-PM001E-FR-P - Aot 2002

Protection d'un projet

24-15

Dfinir les actions globales pour les utilisateurs


Les actions globales sont des tches qui ne sont pas attaches un projet
spcifique, comme la cration d'un projet ou la mise jour du firmware d'un
automate. Les actions globales suivantes s'appliquent au logiciel RSLogix 5000.
43077

Tableau 24.2 Actions globales


Pour permettre un utilisateur de

Il faut autoriser l'accs aux actions


suivantes

protger tout automate non protg

Protection d'un automate

crer un nouveau projet RSLogix 5000

Nouveau projet

ouvrir un fichier .L5K dans le logiciel


RSLogix 5000, ce qui cre un projet
convertir un projet PLC ou SLC en fichier
.L5K
utiliser le logiciel RSLogix 5000 pour
dmarrer le logiciel ControlFLASH et mettre
jour le firmware de l'automate

Mise jour du firmware

Utilisez le tableau suivant pour enregistrer les actions globales qui sont
autorises pour chaque groupe d'utilisateurs.
Tableau 24.3 Actions globales pour chaque groupe d'utilisateurs
Ce groupe d'utilisateurs

Requiert cet accs


Protection
d'un
automate

Nouveau
projet

Mise
jour du
firmware

Publication 1756-PM001E-FR-P - Aot 2002

24-16

Protection d'un projet

Dfinir les actions de projet pour les utilisateurs


Les actions de projet vous permettent d'effectuer des tches spcifiques sur un
projet ou un groupe de projets dtermin.

43075

Lorsque vous activez la protection pour un projet RSLogix 5000 ou que


vous crez un nouveau projet avec protection active, il devient un
membre du groupe New RSLogix 5000 Resources (Nouvelles ressources
RSLogix 5000).
Les utilisateurs qui travaillent avec les projets de ce groupe requirent
l'accs appropri.
Il est recommand d'accorder un Accs total toute personne qui a
l'autorisation de crer un projet.
Pour personnaliser l'accs un projet, dplacez-le en dehors du groupe
Nouvelles ressources RSLogix 5000 et attribuez des privilges spcifiques
ce projet.

43078

Publication 1756-PM001E-FR-P - Aot 2002

Protection d'un projet

24-17

Les actions suivantes s'appliquent un projet ou un groupe de projets


RSLogix 5000 protg.
Tableau 24.4 Actions de projet
Pour permettre un utilisateur
de
ouvrir un projet hors ligne
copier des lments d'un
projet
exporter les points d'un
projet

Et

Et

Autoriser cette action


Visualiser le projet

aller en ligne et
surveiller un projet

Aller en ligne
sauvegarder un projet
sauvegarder un projet sous forme d'un
fichier .ACD diffrent
ouvrir une rvision antrieure d'un
projet
compresser un projet
exporter un projet
charger ou transfrer un projet
changer le mode de l'automate
changer le chemin de l'automate
imprimer un rapport
effacer les dfauts
changer l'heure de l'horloge
crer, supprimer, modifier et excuter
une tendance
changer la configuration d'un module
d'E/S
changer la configuration d'une
instruction MSG
entrer, activer, dsactiver et retirer des
forages
changer les valeurs de point
mettre jour le firmware

Maintenance d'un projet

excuter toutes les actions


disponibles par le logiciel RSLogix
5000, sauf retirer la protection d'un
automate

Accs total

retirer la protection d'un automate

Accs total
et
Dprotger un automate

mettre jour le firmware d'un


automate

Mise jour du firmware

Publication 1756-PM001E-FR-P - Aot 2002

24-18

Protection d'un projet

Utilisez le tableau page 24-18 pour enregistrer les actions du projet qui sont
autorises pour chaque utilisateur ou groupe d'utilisateurs.
Tableau 24.5 Actions de projet pour les projets qui sont dans le groupe Nouvelles ressources RSLogix 5000 et pour les projets
individuels
Pour ce projet ou
groupe de projets

Cet utilisateur ou groupe


d'utilisateur

Nouvelles ressources
RSLogix 5000
Nouvelles ressources
RSLogix 5000
Nouvelles ressources
RSLogix 5000
Nouvelles ressources
RSLogix 5000

Publication 1756-PM001E-FR-P - Aot 2002

Requiert cet accs


Visualise
r le
projet

Aller en
ligne

Maintena
nce d'un
projet

Accs
total

Dprotger Mise jour


un
du
automate
firmware

Protection d'un projet

24-19

Ajout d'utilisateurs

1. Cliquez avec le bouton droit de la souris et slectionnez Nouveau.


43078

43084

2. Tapez l'information concernant l'utilisateur et choisissez OK.

Ajout de groupes d'utilisateur


Un groupe vous permet de grer plusieurs utilisateurs qui requirent des
privilges similaires.
1. Dans le menu Help (Aide), choisissez Quick Start (Dmarrage rapide).

2. Suivez les tapes pour cette tche.

43074

Publication 1756-PM001E-FR-P - Aot 2002

24-20

Protection d'un projet

Attribution d'un accs global au logiciel RSLogix 5000


Pour autoriser les utilisateurs effectuer des actions globales :

1. Dans la fentre de configuration, slectionnez le groupe


RSLOGIX 5000.
43077

2. Dans le menu Help (Aide), choisissez Quick Start (Dmarrage rapide).

3. Suivez les tapes pour cette tche. Attribuez les actions que vous
avez enregistres dans le Tableau 24.3, page 24-15.
43076

Publication 1756-PM001E-FR-P - Aot 2002

Protection d'un projet

24-21

Attribution des actions de projet pour les nouveaux projets


RSLogix 5000
Pour permettre aux utilisateurs d'effectuer des actions sur des projets qui se
trouvent dans le groupe Nouvelles ressources RSLogix 5000 :

1. Dans la fentre de configuration, slectionnez le groupe


Nouvelles ressources RSLOGIX 5000.
43075

2. Dans le menu Help (Aide), choisissez Quick Start (Dmarrage rapide).

3. Suivez les tapes pour cette tche. Attribuez les actions que vous
avez enregistres dans le Tableau 24.5, page 24-18.
43076

Publication 1756-PM001E-FR-P - Aot 2002

24-22

Protection d'un projet

Protection d'un projet RSLogix 5000


Pour les nouveaux projets, l'option de protection est disponible lorsque vous
crez le projet. Pour autoriser le logiciel Security Server protger un projet
existant, activez la protection pour le projet.
1. Ouvrez le projet RSLogix 5000.

42627

2. Cliquez sur le bouton des proprits de


l'automate.

3. Cliquez sur l'onglet Advanced (Evolu).


43069

4. Slectionnez RSI
Security Server.
5. Choisissez OK, puis Oui.
Dans le logiciel Security Server, le projet apparat comme un membre du
groupe New RSLogix 5000 Resources (Nouvelles ressources RSLogix 5000). Si le
logiciel Security Server est dj dmarr, dans son menu View (Visualiser),
slectionnez Refresh (Rafrachir).

Publication 1756-PM001E-FR-P - Aot 2002

Protection d'un projet

24-23

Attribution de l'accs un projet RSLogix 5000


Quand un projet est dans le groupe Nouvelles ressources RSLogix 5000, la
liste de surveillance d'accs de ce groupe dtermine les actions qu'un utilisateur
peut effectues sur un projet. Pour personnaliser l'accs un projet,
dplacez-le hors du groupe et attribuez-lui des actions spcifiques :

1. Dans la fentre de configuration, slectionnez le groupe New


RSLogix 5000 Resources (Nouvelles ressources RSLogix 5000).
43075

2. Cliquez sur l'onglet Group Members (Membres du groupe).

3.
43079

3. Dans la liste Member items (Membres), slectionnez le projet et cliquez sur


le bouton <<.
4. Choisissez Apply (Appliquer).

5. Dans la fentre de configuration, slectionnez le projet.


43078

6. Dans le menu Help (Aide), choisissez Quick Start (Dmarrage rapide).

7. Suivez les tapes pour cette tche. Attribuez les actions que vous
avez enregistres dans le Tableau 24.5, page 24-18.
43076

Publication 1756-PM001E-FR-P - Aot 2002

24-24

Protection d'un projet

Rafrachissement du logiciel RSLogix 5000, si ncessaire


Si un projet RSLogix 5000 est ouvert et que des changements apports dans le
logiciel RSI Security Server affectent ce projet, rafrachissez le logiciel
RSLogix 5000 :
Dans le menu Tools (Outils), choisissez Security Refresh Privileges (Protection,
Rafrachir les privilges).

Publication 1756-PM001E-FR-P - Aot 2002

Annexe

Codes de dfauts

Quand utiliser cette annexe

Utilisez cette annexe pour interprter les :


Codes de dfaut majeur
Codes de dfaut mineur

Codes de dfaut majeur

Utilisez le tableau suivant pour dterminer la cause dun dfaut majeur et


laction corrective correspondante. Le type et le code correspondent au type et
au code affichs aux endroits suivants :
bote de dialogue Controller Properties (Proprits de lautomate),
onglet Major Faults (Dfauts majeurs) ;
objet PROGRAM, attribut MAJORFAULTRECORD.

Tableau A.1 Types et codes des dfauts majeurs

Type

Code

Cause

Action corrective

Lautomate a dmarr en mode Excution.

Excutez le gestionnaire de perte dalimentation.

16

Une connexion de module dE/S ncessaire a


chou.

Vrifiez que le module dE/S est dans le chssis. Vrifiez les


impratifs du dtrompage lectronique.
Affichez longlet Major Fault (Dfaut majeur) des proprits de
lautomate et longlet Connection (Connexion) des proprits du
module pour de plus amples informations sur le dfaut.

20

Problme possible avec le chssis ControlBus.

Non rcuprable, remplacez le chssis.

23

Au moins une connexion ncessaire na pas t


tablie avant de passer en mode Excution.

Attendez que le voyant des E/S de lautomate soit vert avant de


passer en mode Excution.

16

Instruction inconnue rencontre.

Retirez linstruction inconnue. Ceci sest probablement produit en


raison dun processus de conversion de programme.

20

Indice du tableau trop grand, structure de


commande .POS ou .LEN non valide.

Ajustez la valeur pour quelle soit dans la plage valide. Ne


dpassez pas la taille du tableau ou les dimensions dfinies.

21

Structure de commande .LEN ou .POS < 0.

Ajustez la valeur pour quelle soit > 0.

31

Les paramtres de linstruction JSR ne


correspondent pas ceux de linstruction SBR ou
RET associe.

Passez le nombre appropri de paramtres. Si trop de paramtres


sont passs, ceux en trop sont ignors sans gnrer derreur.

34

Une instruction de temporisation a une valeur


prslectionne ou cumule ngative.

Rglez le programme pour quil ne charge pas une valeur ngative


dans une valeur prslectionne ou cumule.

42

Saut (JMP) vers une tiquette non existante ou


supprime.

Corrigez la cible JMP ou ajoutez ltiquette manquante.

82

Un graphe de fonctionnement squentiel (SFC) Retirez linstruction de saut vers le SFC appelant.
a appel un sous-programme qui a essay de
revenir au SFC appelant. Ceci se produit lorsque
le SFC utilise une instruction JSR ou FOR pour
appeler le sous-programme.

83

Les donnes testes ntaient pas dans les


limites requises.

Modifiez les valeurs pour quelles soient dans les limites.

Publication 1756-PM001E-FR-P - Aot 2002

A-2

Codes de dfauts

Tableau A.1 Types et codes des dfauts majeurs (suite)


Type

Code

Cause

Action corrective

84

Dpassement suprieur de pile.

Rduisez les niveaux dimbrication du sous-programme ou le


nombre de paramtres passs.

89

Dans une instruction SFR, le sous-programme


cible ne contient pas ltape cible.

Corrigez la cible SFR ou ajoutez ltape manquante.

Le chien de garde de la tche a expir.


La tche utilisateur na pas t termine
pendant la dure alloue. Une erreur de
programme a entran une boucle infinie, le
programme est trop complexe pour tre excut
dans la dure dfinie ou une tche avec une
priorit plus leve empche la tche de se
terminer.

Augmentez le chien de garde de la tche, rduisez la dure


dexcution, donnez une priorit plus leve cette tche,
simplifiez les tches avec des priorits plus leves ou dplacez
certains codes vers un autre automate.

40

Le stockage en mmoire non volatile a chou.

42

Le chargement partir de la mmoire non


volatile a chou parce que la rvision du
firmware du projet en mmoire non volatile
nest pas la mme que celle du firmware de
lautomate.

Essai de passage de lautomate en mode


Attendez que le chargement soit termin et effacez le dfaut.
Excution avec le commutateur cl pendant le
chargement.

11

La position relle a dpass la limite de


surcourse positive.

Dplacez laxe dans une direction ngative jusqu ce que la


position soit dans les limites de surcourse, puis excutez
Effacement du dfaut de laxe (Motion Axis Fault Reset).

11

La position relle a dpass la limite de


surcourse ngative.

Dplacez laxe dans une direction positive jusqu ce que la


position soit dans les limites de surcourse, puis excutez
Effacement du dfaut de laxe (Motion Axis Fault Reset).

11

La position relle a dpass la tolrance


derreur de position.

Ramenez la position dans les limites de la tolrance, puis excutez


Effacement du dfaut de laxe )Motion Axis Fault Reset).

11

La connexion des voies A, B ou Z est coupe.

Reconnectez la voie du codeur, puis excutez Effacement du dfaut


de laxe (Motion Axis Fault Reset).

11

Parasites codeur dtects ou les signaux du


codeur ne sont pas en quadrature.

Rparez le cblage du codeur, puis excutez Effacement du dfaut


de laxe (Motion Axis Fault Reset).

11

Entre de dfaut de variateur active.

Effacez le dfaut du variateur, puis excutez Effacement du dfaut


de laxe (Motion Axis Fault Reset).

11

La connexion synchrone a subi un chec.

Excutez dabord Effacement du dfaut de laxe (Motion Axis Fault


Reset). Si le problme persiste, retirez et reconnectez le
servo-module. En dernier recours, remplacez le servo-module.

11

Le servo-module a dtect un dfaut matriel


srieux.

Remplacez le module.

11

La connexion asynchrone a entran une panne. Excutez dabord Effacement du dfaut de laxe (Motion Axis Fault
Reset). Si le problme persiste, retirez et reconnectez le
servo-module. En dernier recours, remplacez le servo-module.

11

32

La tche de mouvement a subi un


chevauchement.

Publication 1756-PM001E-FR-P - Aot 2002

1. Essayez nouveau de stocker le projet en mmoire non


volatile.
2. Si le projet ne peut pas tre stock en mmoire non
volatile, remplacez la carte mmoire.
Mettez jour le firmware de l,automate pour quil ait la mme
rvision que celle du projet qui se trouve en mmoire non volatile.

La frquence de rafrachissement de la course du groupe est trop


leve pour maintenir un fonctionnement correct. Effacez le point
de dfaut du groupe, augmentez la frquence de rafrachissement
du groupe, puis effacez le dfaut majeur.

Codes de dfauts

Codes de dfaut mineur

A-3

Utilisez le tableau suivant pour dterminer la cause dun dfaut mineur et


laction corrective correspondante. Le type et le code correspondent au type et
au code affichs aux endroits suivants :
bote de dialogue Controller Properties (Proprits de lautomate),
onglet Minor Faults (Dfauts mineurs) ;
objet PROGRAM, attribut MAJORFAULTRECORD.

Tableau A.2 Types et codes des dfauts mineurs


Type

Code

Cause

Action corrective

Un dpassement suprieur arithmtique sest produit


dans une instruction.

Corrigez le programme en examinant les oprations


arithmtiques (ordre) ou en ajustant les valeurs.

Le point GSV/SSV de destination tait trop petit pour


recevoir toutes les donnes.

Corrigez la destination pour quelle ait assez despace.

35

Variable de temps PID 0.

Ajustez la variable de temps PID pour quelle soit > 0.

36

Consigne PID hors limites.

Ajustez la consigne pour quelle soit dans les limites.

51

La valeur LEN de la chane de points est suprieure la


taille DATA de la chane de point.

52

La chane de sortie est suprieure la destination.

Crez un nouveau type de donnes de chane


suffisamment grand pour la chane de sortie. Utilisez ce
nouveau type de donnes de chane comme type de
donnes pour la destination.

53

Le numro de sortie dpasse les limites du type de


donnes de la destination.

Solutions :
Rduisez la taille de la valeur ASCII.
Utilisez un type de donnes plus grand pour la
destination.

56

La valeur de Dbut ou de Quantit nest pas valide.

57

Linstruction AHL nest pas excute parce que le port


srie est rgl sur pas dchange.

Solutions :
Changez le rglage de la ligne de commande du
port srie.
Effacez linstruction AHL.

Chevauchement dune tche priodique.


Une tche priodique nest pas termine au moment de
son excution suivante.

Simplifiez le ou les programmes, augmentez la priode,


augmentez la priorit relative, etc.

49

Le projet a t charg partir de la mmoire non


volatile.

Erreur inconnue lors de lentretien du port srie.

Contactez le service GTS.

La ligne CTS nest pas correcte pour la configuration en


cours.

Dconnectez et reconnectez le cble du port srie sur


lautomate.
Vrifiez que le cble est correctement branch.

1. Vrifiez quaucune instruction n,est en cours


dcriture dans le membre LEN de la chane de
points.
2. Dans la valeur LEN, entrez le nombre de
caractres contenus dans la chane.

1. Vrifiez que la valeur de Dbut est entre 1 et la


taille DATA de la Source.
2. Vrifiez que la valeur de Dbut plus la valeur de
Quantit est infrieure ou gale la taille DATA
de la Source.

Publication 1756-PM001E-FR-P - Aot 2002

A-4

Codes de dfauts

Tableau A.2 Types et codes des dfauts mineurs (suite)


Type

Code

Cause

Cherchez les erreurs suivantes dans la liste dappel :


Erreur de liste dappel.
le nombre de station est suprieur lespace
Un problme a t dtect avec la liste dappel du
dans le point de la liste dappel ;
matre DF1, tel que spcification de plus de stations que
le nombre total de stations est suprieur 255 ;
la taille du fichier, spcification de plus de 255 stations,
lindicateur de la station courante est suprieur
essai dindexation au-del de la fin de la liste ou appel
la fin du point de la liste dappel ;
de ladresse de diffusion (STN #255).
un numro de station suprieur 254 a t
rencontr.

Dpassement de temps dappel desclave DF1


Le chien de garde dappel a dpass le temps limite
pour lesclave. Le matre na pas appel lautomate
pendant la dure indique.

Dterminez et corrigez le dlai dappel.

Le contact avec le modem a t perdu.


Les lignes de commande DCD et/ou DSR ne sont pas
reues en squence et/ou tat correct.

Corrigez la connexion du modem lautomate.

10

10

La pile na pas t dtecte ou doit tre remplace.

Installez une nouvelle pile.

Publication 1756-PM001E-FR-P - Aot 2002

Action corrective

Annexe

Conformit CEI 61131-3

Utilisation de cette annexe

Introduction

Pour les informations suivantes

Voir page

Systme d'exploitation

B-2

Dfinitions des donnes

B-2

Langages de programmation

B-3

Jeu d'instructions

B-4

Portabilit des programmes CEI 61131-3

B-4

Tableaux de conformit CEI

B-5

La Commission lectrotechnique internationale (CEI) a dvelopp une srie de


spcifications pour les automates programmables. Ces spcifications ont t
cres dans le but de promouvoir une unification internationale des
quipements et des langages de programmation utiliss dans lindustrie de la
commande. Ces spcifications sont la base des automates Logix5000 et du
logiciel de programmation RSLogix 5000.
Les spcifications de la CEI sur les automates programmables sont regroupes
en cinq parties, chacune traitant dun aspect diffrent du systme de
commande :

Partie 1 : Informations gnrales


Partie 2 : Spcifications et essais des quipements
Partie 3 : Langages de programmation
Partie 4 : Recommandations lusage de lutilisateur
Partie 5 : Communications

Dans son ensemble, lindustrie de la commande sest concentre sur la partie 3


(CEI 61131-3), Langages de programmation, parce que cette partie est la base
de lapplication des autres normes et quelle apporte lutilisateur les avantages
les plus significatifs par la rduction des cots de formation. Pour ces raisons,
nous ne traitons que cette partie de la norme CEI 61131-3 ici.

Publication 1756-PM001E-FR-P - Aot 2002

B-2

Conformit CEI 61131-3

Les spcifications de la norme CEI 61131-3 sur les langages de


programmation abordent de nombreux aspects des automates programmables,
notamment lexcution du systme dexploitation, les dfinitions des donnes,
les langages de programmation et le jeu dinstructions. Les lments de la
norme CEI 61131-3 sont regroups selon les impratifs de la spcification, des
options ou des extensions. De cette faon, la norme CEI 61131-3 fournit un
ensemble minimum de fonctionnalits qui peuvent tre tendues pour
rpondre aux besoins des applications de lutilisateur. Le ct ngatif de ce
systme est que chaque fabricant de systme de commande programmable
peut utiliser diffrents composants de la spcification ou fournir diffrentes
extensions.

Systme d'exploitation

Le systme dexploitation multitche premptif des automates Logix5000 est


conforme la dfinition donne par la norme CEI 61131-3. Dans la norme
CEI 61131-3, le systme dexploitation des automates programmables peut
contenir zro tche ou plus, pouvant excuter un ou plusieurs programmes
contenant chacun un ou plusieurs sous-programmes ou fonctions. Selon la
norme CEI 61131-3, le nombre de chacun de ces lments dpend de la mise
en application. L'automate Logix5000 fournit plusieurs tches, chacune
contenant plusieurs programmes et un nombre illimit de fonctions ou de
sous-programmes.
La norme CEI 61131-3 fournit une option pour la cration de diffrentes
classifications pour lexcution des tches. Ces tches peuvent tre configures
comme continues, priodiques et bases sur vnement. Une tche continue
na pas besoin dtre planifie dans la mesure o elle utilise tout temps de
traitement non utilis lorsque les autres tches ne sont pas excutes. Les
tches priodiques sont programmes pour tre excutes selon une priode
de temps rcurrent. La norme CEI 61131-3 ne prcise pas de dure pour la
configuration des tches priodiques. Une tche CEI 61131-3 base sur
vnement est lance au moment de la dtection du front montant dune
entre configure. Les automates Logix5000 acceptent les tches continues et
priodiques. De plus, la priode dune tche priodique est configurable avec
une dure allant jusqu 1 milliseconde (ms).

Dfinitions des donnes

Publication 1756-PM001E-FR-P - Aot 2002

La norme CEI 61131-3 donne accs la mmoire par la cration de variables


dnommes. Les noms CEI 1131-2 des variables sont constitus dun
minimum de six caractres (le logiciel de programmation RSLogix 5000
accepte un minimum de 1 caractre) commenant par un caractre de
soulignement _ ou par un caractre alphabtique (A-Z), suivi par un ou
plusieurs caractres constitus dun caractre de soulignement _ , dune
lettre (A-Z) ou dun nombre (0-9). En option, les caractres alphabtiques en
minuscule (a-z) sont acceptables sil ny a pas de diffrence
majuscule/minuscule (A = a, B = b, C = c ). Les automates Logix5000 sont
en totale conformit avec cette dfinition, ils acceptent loption des minuscules
et permettent des noms ayant jusqu 40 caractres.

Conformit CEI 61131-3

B-3

Dans la norme CEI 61131-3, les variables de donnes peuvent tre dfinies de
faon tre accessibles tous les programmes dune ressource ou dun
automate, ou de faon quun accs limit soit offert aux seules fonctions ou
sous-programmes dun programme donn. Pour passer des donnes entre
plusieurs ressources ou automates, les chemins daccs peuvent tre configurs
de faon dfinir lemplacement des donnes dans un systme. Les automates
Logix5000 sont conformes la norme parce qu'ils fournissent des donnes
internes aux programmes ou aux automates, et permettent la configuration de
chemins daccs utilisant des donnes produites/consommes.
Linterprtation de la mmoire dune variable dans la norme CEI 61131-3 est
dfinie par lutilisation dun type de donnes lmentaires ou dun type de
donnes drives en option cr partir dun groupe de types de donnes
multiples. Les automates Logix5000 acceptent lutilisation des types de
donnes lmentaires BOOL (1 bit), SINT (entier de 8 bits), INT (entier de
16 bits), DINT (entier de 32 bits) et REAL (IEEE nombre virgule flottante).
En outre, les types de donnes drives en option sont accepts travers la
cration de structures et tableaux dfinis par lutilisateur.

Langages de
programmation

La norme CEI 61131-3 dfinit cinq (5) langages de programmation diffrents


et un jeu dlments communs. Tous les langages sont dfinis comme
optionnels mais au moins un doit tre accept pour tre conforme la norme.
Les composants de langage de programmation CEI 61131-3 sont dfinis ainsi :

Elments de langage commun ;


Elments graphiques communs ;
Elments du langage de liste dinstructions (IL) ;
Elments du langage en texte structur (ST) ;
Elments du langage en diagramme relais (LD) ;
Elments du langage de graphe de fonctionnement squentiel (SFC) ;
Elments du langage de bloc fonctionnel (FBD) .

Les automates Logix5000 et le logiciel RSLogix 5000 acceptent les lments de


langage commun et les options des langages en texte structur, diagramme
relais, graphe de fonctionnement squentiel et bloc fonctionnel. En outre,
lenvironnement utilise un format dimportation/exportation ASCII bas sur
le langage en texte structur. Les fonctions dchange de jeu dinstructions et
de fichier programme sont abordes en dtails dans les sections suivantes.

Publication 1756-PM001E-FR-P - Aot 2002

B-4

Conformit CEI 61131-3

Jeu d'instructions

Le jeu dinstructions indiqu dans la norme CEI 61131-3 est entirement


optionnel. La norme indique un jeu dinstructions limit qui, sil est appliqu,
doit tre conforme lexcution indique et la reprsentation visuelle.
Cependant, la norme CEI 61131-3 ne limite pas les instructions celles qu'elle
indique. Chaque fabricant dautomates est libre dintgrer des fonctionnalits
supplmentaires sous la forme dinstructions en plus de celles donnes par la
norme. Des exemples de telles instructions tendues sont celles ncessaires
pour les diagnostics, la commande de boucle PID, la commande de
mouvement et le traitement de fichiers de donnes. Les instructions tendues
n'tant pas dfinies par la norme CEI 61131-3, il ny a aucune garantie sur leur
comptabilit d'application sur des automates de fabricants diffrents. Ainsi,
lutilisation de ces instructions peut interdire le transfert de logique entre
fabricants.
Les automates Logix5000 et le logiciel RSLogix 5000 fournissent une suite
dinstructions qui sont excutes selon la norme CEI 61131-3. La
reprsentation physique de ces instructions leur garde le mme aspect que sur
les systmes existants, de faon rduire les cots de formation associs. En
plus des instructions conformes la norme CEI 61131-3, une gamme
complte dinstructions venant de produits existants a t introduite, de sorte
quaucune fonctionnalit nest perdue.

Portabilit des programmes


CEI 61131-3

Lun des objectifs des utilisateurs qui crent des programmes dans un
environnement conforme CEI 61131-3 est le transfert ou la portabilit des
programmes entre automates dvelopps par diffrents fabricants. C'est une
faiblesse de la norme CEI 61131-3 dans la mesure o elle ne dfinit aucun
format dchange de fichier. En d'autres termes, un programme cr dans
lenvironnement dun fabricant demandera des manipulations pour tre
transfr sur le systme dun autre fabricant.
Pour minimiser leffort ncessaire la portabilit, le logiciel de programmation
RSLogix 5000, pour les automates, comporte un utilitaire complet
dexportation/importation ASCII. De plus, le format de fichier utilis par cet
outil est bas sur une dfinition hybride du langage en texte structur de la
norme CEI 61131-3. Le systme dexploitation et les dfinitions des donnes
de lautomate suivent les formats CEI 61131-3 appropris. Des extensions ont
t cres pour convertir la logique de diagramme relais en texte ASCII, ceci
ntant pas dfini par la norme CEI 61131-3.
Pour de plus amples informations sur lutilitaire dexportation et dimportation
ASCII du logiciel de programmation RSLogix 5000, voir Logix5000 Controllers
Import/Export Reference Manual (publication 1756-RM084).

Publication 1756-PM001E-FR-P - Aot 2002

Conformit CEI 61131-3

Tableaux de conformit CEI

B-5

Les automates Logix5000 et le logiciel RSLogix 5000 sont conformes aux


directives de la norme CEI 61131-3 pour les fonctions de langage suivantes :

Numro du
tableau(1)

Numro de la
fonction

Description de la fonction

Extensions et notes d'application

Lettres minuscules

Aucune

3a

Symbole de numro (#)

Utilis pour dsigner le type de donnes


valeur immdiate

4a

Symbole dollar ($)

Utilis pour dcrire et comme caractre de


commande des chanes

6a

Sparateurs d'indice ([ ])

Indices de tableau

Identificateurs utilisant des majuscules et des


chiffres

Noms de tche, de programme, de


sous-programme, de structure et de point

Identificateurs utilisant des majuscules, des


chiffres et des caractres de soulignement
intgrs

Noms de tche, de programme, de


sous-programme, de structure et de point

Identificateurs utilisant des minuscules, des


chiffres et des caractres de soulignement
intgrs

Noms de tche, de programme, de


sous-programme, de structure et de point

Commentaires

Commentaires ST, galement /* Commentaire


*/ et // Fin d'une ligne de commentaires

Entier au format littral

12, 0, -12

Rel au format littral

12,5, -12,5

Rel au format littral avec exposant

-1,34E-12, 1,234E6

Base 2 au format littral

2#0101_0101

Base 8 au format littral

8#377

Base 16 au format littral

16#FFE0

Zro et un boolens

0, 1

1A

Chane vide ''

Descriptions et diteur de chane

1b

Chane de longueur une contenant un caractre


'A'

Descriptions et diteur de chane

1C

Chane de longueur une contenant un espace ' ' Descriptions et diteur de chane

1D

Chane de longueur une contenant un caractre


de guillemet simple '$''

Descriptions et diteur de chane

1E

Chane de longueur une contenant un caractre


de guillemet double '"'

Descriptions et diteur de chane

1F

Chane de longueur deux contenant des


caractres CR (retour chariot) LF (changement
de ligne)

Descriptions et diteur de chane

1G

Chane de longueur une contenant le caractre


LF '$0A'

Descriptions et diteur de chane

1H

Chane de longueur 5 qui est imprim comme


"$1.00" utilisant '$$1.00'

Descriptions et diteur de chane

1I

Chanes quivalentes de longueur deux 'AE' et


'$C4$CB'

Descriptions et diteur de chane

Symbole dollar '$$' dans une chane

Descriptions et diteur de chane

Guillemet simple '$'' dans une chane

Descriptions et diteur de chane

Publication 1756-PM001E-FR-P - Aot 2002

B-6

Conformit CEI 61131-3

Numro du
tableau(1)

Numro de la
fonction

Description de la fonction

Extensions et notes d'application

Saut de ligne '$L' ou '$l' dans une chane

Descriptions et diteur de chane

Nouvelle ligne '$N' ou '$n' dans une chane

Descriptions et diteur de chane

Saut de page '$P' ou '$p' dans une chane

Descriptions et diteur de chane

Retour chariot '$R' ou '$r' dans une chane

Descriptions et diteur de chane

Tabulation '$T' ou '$t' dans une chane

Descriptions et diteur de chane

Guillemet double $" dans une chane

Descriptions et diteur de chane

10

Type de donnes BOOL

Dfinition de la variable de point

10

Type de donnes SINT

Dfinition de la variable de point

10

Type de donnes INT

Dfinition de la variable de point

10

Type de donnes DINT

Dfinition de la variable de point

10

10

Type de donnes REAL

Dfinition de la variable de point

10

12

Heure

Dfinition de la variable de point, structure


TIMER

10

16

Type de donnes STRING

8 bits

11

Hirarchie des types de donnes

Aucune

12

Drivation directe partir des types


lmentaires

Structures des types de donnes dfinis par


l'utilisateur

12

Types de donnes de tableau

Dfinition de la variable de point

12

Types de donnes structures

Structures des types de donnes dfinis par


l'utilisateur

13

Valeur initiale BOOL, SINT, INT, DINT, de 0

Dfinition de la variable de point

13

Valeur initiale REAL, LREAL de 0.0

Dfinition de la variable de point

13

Valeur initiale de l'heure T#0s

Dfinition de la variable de point, instruction de


rinitialisation (RES)

13

Chane vide ''

Descriptions et chanes

14

Initialisation des types drivs directement

Importation/exportation

14

Initialisation des types de donnes tableau

Importation/exportation

14

Initialisation des lments de type structur

Importation/exportation

14

Initialisation des types de donnes structures


drivs

Importation/exportation

19a

2a

Appel textuel, informel

Disponible en ST

20

Utilisation de EN et ENO

Fonction prsente dans la logique relais mais


non tiquete. Disponible en FBD

20

Utilisation sans EN et ENO

Disponible en FBD

20

Utilisation avec EN et sans ENO

Disponible en FBD

20

Utilisation sans EN et avec ENO

Disponible en FBD

21

Fonctions surcharges ADD(INT, DINT) ou


ADD(DINT, REAL)

Tous les types surchargs reconnus sont


expliqus avec chaque instruction

Publication 1756-PM001E-FR-P - Aot 2002

Conformit CEI 61131-3

B-7

Numro du
tableau(1)

Numro de la
fonction

Description de la fonction

Extensions et notes d'application

22

Fonction de conversion _TO_

Instructions RAD, DEG, conversion


radians/valeurs dcimales. Conversion
numrique de chane STOD, STOR, RTOS,
DTOS. Les autres conversions ne sont pas
ncessaires du fait de la surcharge des
instructions.

22

Fonction de conversion par troncation

Instruction TRN en LD et fonction TRUNC en ST

22

Conversion DCB en ENT

Instruction FRD en LD

22

Conversion ENT en DCB

Instruction TOD en LD

23

Valeur absolue

Instruction ABS

23

Racine carre

Instruction SQR en LD et fonctions FBD et SQRT


en ST

23

Logarithme naturel

Instruction LN

23

Logarithme dcimal

Instruction LOG

23

Sinus en radians

Instruction / fonction SIN

23

Cosinus en radians

Instruction / fonction COS

23

Tangente en radians

Instruction / fonction TAN

23

Sinus d'arc principal

Instruction ASN en LD et fonctions FBD et ASIN


en ST

23

10

Cosinus d'arc principal

Instruction ACS en LD et fonctions FBD et ACOS


en ST

23

11

Tangente d'arc principal

Instruction ATN en LD et fonctions FBD et ATAN


en ST

24

12

Addition arithmtique

Instruction ADD en LD et FBD, et + en ST

24

13

Multiplication arithmtique

Instruction MUL en LD et FBD, et * en ST

24

14

Soustraction arithmtique

Instruction SUB en LD et FBD, et - en ST

24

15

Division arithmtique

Instruction DIV en LD et FBD, et / en ST

24

16

Modulo

Instruction MOD en LD et ST

24

17

Exponentiel

Instruction XPY en LD et FBD, et ** en ST

24

18

Dplacement de valeur

Instruction MOV en LD et := en ST

25

Dcalage binaire gauche

Fonctionnalit contenue dans linstruction BSL


en LD pour un dcalage de 1

25

Dcalage binaire droite

Fonctionnalit contenue dans linstruction BSR


en LD pour un dcalage de 1

25

Rotation binaire gauche

Fonctionnalit contenue dans linstruction BSL


en LD pour un dcalage de 1

25

Rotation binaire droite

Fonctionnalit contenue dans linstruction BSR


en LD pour un dcalage de 1

26

ET

Instruction BAND en FBD et opration "&" en


ST

26

OU

Instruction BOR en FBD

26

XOR

Instruction BXOR en FBD

26

NOT

Instruction BNOT en FBD

27

Slection

Instruction SEL en FBD

Publication 1756-PM001E-FR-P - Aot 2002

B-8

Conformit CEI 61131-3

Numro du
tableau(1)

Numro de la
fonction

Description de la fonction

Extensions et notes d'application

27

2a

Slection maximum MAX

Fonctionnalit contenue dans linstruction ESEL


en FBD et en ST

27

2b

Slection minimum MIN

Fonctionnalit contenue dans linstruction ESEL


en FBD et en ST

27

Limite haute/basse LIMIT

Instruction HLL en FBD et en ST

27

Multiplexeur MUX

Instruction MUX en FBD

28

Comparaison Suprieur

Instruction GRT en LD et FBD, et > en ST

28

Comparaison Suprieur ou gal

Instruction GRE en LD et FBD, et >= en ST

28

Comparaison Egal

Instruction EQU en LD et FBD, et = en ST

28

Comparaison Infrieur

Instruction LES en LD et FBD, et < en ST

28

Comparaison infrieur ou gal

Instruction LEQ en LD et FBD, et <= en ST

28

10

Comparaison Diffrent de

Instruction NEQ en LD et FBD, et <> en ST

29

Longueur de chane LEN

Contenue comme paramtre du type de


donnes STRING

29

Copie dans une chane MID

Instruction MID en LD et en ST

29

Concatnation de chanes CONCAT

Instruction CONCAT en LD et en ST

29

Insertion dans une chane INSERT

Instruction INSERT en LD et en ST

29

Effacement dans une chane DELETE

Instruction DELETE en LD et en ST

29

Recherche de chane FIND

Instruction FIND en LD et en ST

32

Lecture d'entre

FBD et ST

32

Ecriture d'entre

FBD et ST

32

Lecture de sortie

FBD et ST

32

Ecriture de sortie

FBD et ST

34

Bascule active prioritaire

Instruction SETD en FBD et en ST

34

Bascule mise zro prioritaire

Instruction RESD en FBD et en ST

35

Dtecteur front montant

Instruction OSR en LD et instruction OSRI en


FBD et en ST

35

Dtecteur front descendant

Instruction OSF en LD et instruction OSFI en


FBD et en ST

36

1b

Compteur incrmental

Fonctionnalit contenue dans les instructions


CTU et RES en LD et dans linstruction CTUD en
FBD et en ST

37

2a

Temporisateur avec dlai lenclenchement

Fonctionnalit contenue dans linstruction TON


en LD et dans linstruction TONR en FBD et en
ST

37

3a

Temporisateur avec dlai au dclenchement

Fonctionnalit contenue dans linstruction TOF


en LD et dans linstruction TOFR en FBD et en
ST

38

Temporisation lenclenchement

Fonctionnalit contenue dans linstruction TON


en LD et dans linstruction TONR en FBD et en
ST

38

Temporisation au dclenchement

Fonctionnalit contenue dans linstruction TOF


en LD et dans linstruction TOFR en FBD et en
ST

Publication 1756-PM001E-FR-P - Aot 2002

Conformit CEI 61131-3

B-9

Numro du
tableau(1)

Numro de la
fonction

Description de la fonction

40

1a

SFC - Etape

40

1b

SFC - Etape initiale

40

2a

SFC - Etape textuelle

Importation/exportation, le nom de l'tape est


indiqu comme suit : Oprande :=
nom_tape

40

2b

SFC - Etape initiale textuelle

Importation/exportation, utilise le paramtre


InitialStep ; le nom de l'tape est indiqu
comme suit : Oprande := nom_tape

40

3a

SFC - Forme gnrale de l'indicateur d'tape

Point de retour d'une tape

40

Forme gnrale du temps coul pour une


tape

Point de retour d'une tape

41

Transition utilisant du ST

41

Forme textuelle d'une transition

Importation/exportation avec diffrents formats

41

Nom d'une transition

Point de retour d'une transition

41

7a

Transition active par LD

Point de retour d'une transition

41

7b

Transition active par FBD

Point de retour d'une transition

41

7d

Transition active par ST

Point de retour d'une transition

42

Action boolenne

Point de retour d'une action

42

3s

Reprsentation textuelle d'une action

Importation/exportation

43

Association de l'action d'une l'tape

43

Etape avec actions de concatnation

43

Corps de l'tape textuelle

Importation/exportation avec diffrents formats

43

Champ du corps de l'action

ST incorpor

44

Qualificateur de bloc d'une action

44

Nom de bloc d'une action

44

Point indicateur d'une action

Etendre ceci pour accepter DINT, INT, SINT ou


REAL en plus de BOOL

44

Action utilisant du ST

Accepte le ST incorpor et une instruction JSR


vers un sous-programme ST

44

Action utilisant du LD

Utilise une instruction JSR vers un


sous-programme LD

44

Action utilisant du FBD

Utilise une instruction JSR vers un


sous-programme FBD

45

Aucun qualificateur d'action

Le qualificateur par dfaut est N lorsque aucun


n'est explicitement entr

45

Qualificateur d'action N - Non stock

45

Qualificateur d'action R - Rinitialis

45

Qualificateur d'action S - Activ / Stock

45

Qualificateur d'action L - Limit dans le temps

45

Qualificateur d'action D - Diffr

45

Qualificateur d'action P - Impulsion

45

Qualificateur d'action SD - Stock et diffr

45

Qualificateur d'action DS - Diffr et stock

Extensions et notes d'application

Publication 1756-PM001E-FR-P - Aot 2002

B-10

Conformit CEI 61131-3

Numro du
tableau(1)

Numro de la
fonction

Description de la fonction

45

10

Qualificateur d'action SL - Stock et diffr

45

11

Qualificateur d'action P1 - Impulsion front


montant

45

12

Qualificateur d'action P0 - Impulsion front


descendant

45a

Commande de l'action

45a

Commande de l'action

46

SFC - Squence unique

46

2a

SFC - Slection de divergence de squence

46

2b

SFC - Slection de divergence de squence


avec ordre d'excution

46

SFC - Slection de convergence de squence

46

4a

SFC - Divergence de squence simultane

46

4b

SFC - Convergence de squence simultane

46

5a, b, c

SFC - Saut de squence

46

6a, b, c

SFC - Boucle de squence

46

SFC - Flche de direction de boucle

47

Reprsentation graphique d'un SFC

47

Reprsentation graphique d'un SFC

48

SFC - Impratifs minimum de conformit


d'tape

Voir les notes des tableaux individuels


ci-dessus

48

SFC - Impratifs minimum de conformit de


transition

Voir les notes des tableaux individuels


ci-dessus

48

SFC - Impratifs minimum de conformit


d'action

Voir les notes des tableaux individuels


ci-dessus

48

SFC - Impratifs minimum de conformit du


corps d'action

Voir les notes des tableaux individuels


ci-dessus

48

SFC - Impratifs minimum de conformit du


qualificateur d'action

Voir les notes des tableaux individuels


ci-dessus

48

SFC - Impratifs minimum de conformit de


branche

Voir les notes des tableaux individuels


ci-dessus

48

SFC - Impratifs minimum de conformit de


blocs de connexion

Voir les notes des tableaux individuels


ci-dessus

55

ST - Mise entre parenthses (expression)

55

Evaluation de fonction ST

55

ST - Exposant **

55

ST - Inversion -

55

ST - Ngation NOT

55

ST - Multiplication *

55

ST - Division /

Publication 1756-PM001E-FR-P - Aot 2002

Extensions et notes d'application

Utilise des connexions de ligne plutt que des


astrisques

Lorsqu'une liaison est masque

Utilisation de format informel pour l'appel de


fonctions intgres. Instruction JSR utilise
dans le langage ST pour appeler le code
dvelopp par l'utilisateur.

Conformit CEI 61131-3

Numro du
tableau(1)

Numro de la
fonction

Description de la fonction

55

ST - Modulo MOD

55

ST - Addition +

55

10

ST - Soustraction -

55

11

ST - Comparaison <, >, <=, >=

55

12

ST - Egalit =

55

13

ST - Ingalit <>

55

14

ST - ET boolen (&)

55

15

ST - ET boolen

55

16

ST - OU exclusif boolen XOR

55

17

ST - OU boolen

56

ST - Affectation :=

56

ST - Appel de bloc fonctionnel

56

ST - RETURN

56

ST - IF / ELSIF / ELSE/ END_IF

56

ST - CASE OF / ELSE / END_CASE

56

ST - FOR / END_FOR

56

ST - WHILE DO / END_WHILE

56

ST - REPEAT / UNTIL / END_REPEAT

56

ST - EXIT

56

10

ST - Instruction vide ;

57

1, 2

Ligne horizontale

Editeur LD, diteur FBD

57

3, 4

Ligne verticale

Editeur LD, diteur FBD

57

5, 6

Connexion horizontale / verticale connection

Editeur LD, diteur FBD

57

7, 8

Croisements de lignes sans connexion

Editeur FBD

57

9, 10

Coins de connexion et sans connexion

Editeur LD, diteur FBD

57

11, 12

Blocs avec connexions

Editeur LD, diteur FBD

57

13,14

Connecteurs

Editeur FBD

58

Saut inconditionnel

Instruction JMP en LD

58

Cible de saut

Instruction LBL en LD

58

Saut conditionnel

Instruction JMP en LD

58

Retour conditionnel

Instruction RET en LD

58

Retour inconditionnel

Instruction RET en LD

59

Rail dalimentation gauche

Editeur LD

59

Rail dalimentation droit

Editeur LD

60

Lien horizontal

Editeur LD

60

Lien vertical

Editeur LD

61

1, 2

Contact normalement ouvert --| |--

Instruction XIC en LD

61

3, 4

Contact normalement ferm --| / |--

Instruction XIO en LD

B-11

Extensions et notes d'application

RET( ) avec plusieurs paramtres

Publication 1756-PM001E-FR-P - Aot 2002

B-12

Conformit CEI 61131-3

Numro du
tableau(1)

Numro de la
fonction

Description de la fonction

Extensions et notes d'application

61

5, 6

Contact de dtection de transition positive


-| P |-

Instruction ONS en LD

62

Bobine --( )--

Instruction OTE en LD

62

Activer (verrouiller) bobine

Fonctionnalit figurant dans linstruction OTL


en LD

62

Rinitialiser (dverrouiller) bobine

Fonctionnalit figurant dans linstruction OTU


en LD

62

Bobine de dtection de transition positive

Instruction OSR en LD

62

Bobine de dtection de transition ngative

Instruction OSF en LD

(1)

Les tableaux associs des langages autres que le texte structur, graphe de fonctionnement squentiel, diagramme relais et diagramme de blocs fonctionnels ont t
ignors.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

accs
Dfinit le type daccs et lendroit o vous pouvez accder un jeu de points
particulier. Lorsque vous crez un point, vous laffectez comme point
dautomate ou comme point de programme pour un programme particulier,
comme dcrit ci-dessous.

points auxquels tous les


sous-programmes et quipements
externes (p. ex. dautres automates)
ont accs

points auxquels seuls les


sous-programmes du programme
principal ont accs

42195

Vous pouvez avoir plusieurs points avec le mme nom :


Chaque point doit avoir une affectation diffrente. Par exemple, un des
points peut tre un point dautomate et les autres points peuvent tre
des points de programme pour diffrents programmes. Ou, chaque
point peut-tre un point de programme pour des programmes
diffrents.
Dans un mme programme, vous ne pouvez pas faire rfrence un
point dautomate si un point avec le mme nom existe comme point de
programme pour ce programme.
Voir accs automate, accs programme.
accs automate
Donnes accessibles de nimporte o dans lautomate. Lautomate comporte
une srie de points auxquels les sous-programmes et les points dalias de
nimporte quel programme, ainsi que dautres alias daccs automate peuvent
renvoyer. accs programme.
accs programme
Donnes uniquement accessibles partir du programme en cours. Chaque
programme possde une collection de points qui ne peuvent tre rfrencs
que par les sous-programmes et points dalias dans ce programme. accs
automate.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

action
Dans un graphe de fonctionnement squentiel (SFC), une action reprsente
une division fonctionnelle dune tape. Plusieurs actions constituent une tape.
Chaque action excute une fonction particulire, comme commander un
moteur, ouvrir une vanne ou mettre un groupe dquipements dans un mode
dtermin.
Etape

Actions
Faire ceci

MIX
puis faire cela

Chaque action comprend un qualificateur. Lorsquune tape est active (en


cours dexcution), le qualificateur dtermine quand laction commence et
quand elle sarrte.
Voir graphe de fonctionnement squentiel, tape, qualificateur.
application
Combinaison de sous-programmes, programmes, tches et configuration des
E/S utilise pour dfinir le fonctionnement dun seul automate. Voir projet.
ASCII
Code 7 bits (avec un bit de parit optionnel) servant reprsenter des
caractres alphanumriques, des signes de ponctuation et des caractres de
code de commande. Pour la liste des codes ASCII, reportez-vous la fin de ce
manuel.
asynchrone
Actions qui se produisent indpendamment lune de lautre et qui nont pas de
rythme rgulier. Dans les automates Logix5000, les valeurs dE/S sont mises
jour de faon asynchrone par rapport lexcution de la logique :
les programmes dune tche accdent aux donnes dentres et de
sorties directement dans la mmoire daccs automate ;
la logique de nimporte quelle tche peut modifier les donnes daccs
automate ;
les valeurs de donnes et dE/S sont asynchrones et peuvent changer
pendant lexcution dune tche ;
une valeur dentre rfrence au dbut de lexcution dune tche peut
tre diffrente lors dun rfrencement ultrieur.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

ATTENTION

Assurez-vous que la mmoire de donnes contient les


valeurs appropries pendant lexcution. Vous pouvez
dupliquer les donnes ou les mettre en mmoire tampon au
dbut de la scrutation pour fournir des valeurs de rfrence
la logique.

automate propritaire
Automate qui cre la configuration et la connexion de communication
principales vers un module. Lautomate propritaire crit des donnes de
configuration et peut tablir une connexion avec le module. Voir connexion en
coute seule.

binaires
Valeurs dentier affiches et entres en base 2 (chaque chiffre reprsente un bit
unique). Prfixe avec 2 chiffres. Etendu la longueur du boolen ou de lentier
(1, 8, 16 ou 32 bits). A laffichage, chaque groupe de quatre chiffres est spar
par un caractre de soulignement pour la lisibilit. Voir dcimales, hexadcimales,
octales.
bit
Chiffre binaire. La plus petite unit de mmoire. Reprsent par les chiffres 0
(dsactiv) et 1 (activ).
BOOL (boolen)
Type de donnes qui stocke ltat dun bit unique, o :
0 signifie dsactiv
1 signifie activ

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

branche
Le nombre de niveaux de branches parallles que vous pouvez entrer nest pas
limit. La figure suivante montre une branche parallle cinq niveaux. La ligne
principale est le premier niveau de branche, suivi par quatre branches
supplmentaires.

instruction dentre

instruction de sortie

Vous pouvez imbriquer jusqu 6 niveaux. La figure suivante montre une


branche imbrique. Linstruction de sortie du bas est sur une branche
imbrique trois niveaux.
instruction dentre

Publication 1756-PM001E-FR-P - Aot 2002

instruction de sortie

Glossaire

chane
Groupe de types de donnes qui mmorisent des caractres ASCII.

42811

42812

Vous pouvez utiliser le type de donnes par


dfaut STRING. Il permet de stocker
jusqu 82 caractres.

ou

Vous pouvez crer un nouveau type de donnes pour


stocker le nombre de caractres que vous dfinissez.

Chaque type de donnes chane contient les membres suivants :


Nom

Type de
donnes

Description

Remarques

LEN

DINT

nombre de caractres
dans la chane

Linstruction LEN met automatiquement jour le nouveau nombre de


caractres, chaque fois que vous :
utilisez la bote de dialogue Parcours de chane (String Browser) pour
saisir des caractres
utilisez des instructions qui lisent, convertissent ou manipulent une
chane
Linstruction LEN indique la longueur de la chane courante. Le membre DATA
peut contenir danciens caractres supplmentaires qui ne figurent pas dans le
dcompte LEN.

donnes

Tableau SINT

Caractres ASCII de la
chane

Pour accder aux caractres de la chane, adressez le nom du point.


Par exemple, pour accder aux caractres du point string_1, entrez
string_1.
Chaque lment du tableau DATA contient un caractre.
Vous pouvez crer de nouveaux types de donnes chane qui stockent
moins ou plus de caractres.

Les nouveaux types de donnes chane sont utiles dans les cas suivants :
si vous avez un grand nombre de chanes de dimension fixe faisant
moins de 82 caractres, vous pouvez conserver la mmoire en crant un
nouveau type de donnes chane ;
si vous devez manipuler des chanes ayant plus de 82 caractres, vous
pouvez crer un nouveau type de donnes chane qui corresponde au
nombre de caractres requis.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

IMPORTANT

Faites attention lorsque vous crez un nouveau type de


donnes chane. Si vous dcidez ultrieurement de modifier
la taille du type de donnes chane, vous risquez de perdre
les donnes des points qui utilisent ce type de donnes.
Si vous

Alors

raccourcissez un type de
donnes chane

Les donnes sont tronques.


La LEN est inchange.

allongez un type de donnes Les donnes et LEN sont remises


chane
zro.

Lexemple qui suit montre le type de donnes STRING et un nouveau type de


donnes chane.

Ce point utilise le type de donnes


STRING par dfaut.

Ce point est un tableau de 20 lments du


type de donnes par dfaut STRING.

42234

Ce point utilise un nouveau type de donnes chane.


Lutilisateur a appel le type de donnes
chane STRING_24.
Le nouveau type de donnes chane ne stocke
que 24 caractres.

changement dtat (COS)


Tout changement dtat dun point ou dun groupe de points sur un module
dE/S.
chargement
Processus de transfert du contenu dun projet sur la station de travail vers
lautomate. Voir transfert.
chargement
Copie dun projet de la mmoire non volatile dans la mmoire utilisateur
(RAM) de lautomate. Cette opration remplace tout projet se trouvant alors
dans lautomate. Voir mmoire non volatile, stockage.
chemin

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

Le chemin dcrit la voie emprunte par un message pour atteindre la


destination. Si la configuration des E/S de lautomate contient lquipement de
destination, utilisez le bouton Browse (Parcourir) pour slectionner
lquipement : le chemin est dfini automatiquement.
Message Path Browser
Path:

peer_controller

peer_controller

I/O Configuration

[0] 1756-CNB/x Local_CNB

2 [0] 1756-CNB/x chassis_b


[1] 1756-L55/x peer_controller

peer_controller

Si la configuration des E/S ne contient pas lquipement de destination, entrez


le chemin de la destination comme suit :
port,adresse,port,adresse
o

pour

est

port

fond de panier de tout automate ou module 1756

port DF1 dun automate Logix5000

port ControlNet dun module 1756-CNB


port Ethernet dun module 1756-ENBx ou -ENET
port DH+ sur canal A dun module 1756-DHRIO
adresse

port DH+ sur canal B dun module 1756-DHRIO

fond de panier ControlLogix

numro demplacement

rseau DF1

adresse de station (0 254)

rseau ControlNet

numro de station (1 99 en dcimal)

rseau DH+

8# suivi du numro de station (1 77 en octal)


Par exemple, pour indiquer ladresse de station en octal
37, entrez 8#37.

rseau EtherNet/IP

Vous pouvez indiquer un module sur un rseau EtherNet/IP


en utilisant lun des formats suivants :
adresse IP
adresse IP:Port
nom DNS
nom DNS:Port

(ex. 130.130.130.5)
(ex. 130.130.130.5:24)
(ex. rservoirs)
(ex. rservoirs:24)

Voir connexion.
chevauchement dune tche priodique

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

Condition qui apparat lorsquune tche est en cours dexcution et que la


mme tche est redclenche. La dure dexcution de la tche est suprieure
lintervalle priodique configur pour la tche. tche priodique.
chien de garde
Dfinit la dure pendant laquelle une tche peut tre excute avant de gnrer
un dfaut majeur.
Chaque tche comporte un de chien de garde qui surveille son
excution.
La dure dun chien de garde peut aller de 1 2 000 000 ms
(2000 secondes). La valeur par dfaut est de 500 ms.
Le chien de garde commence le dcompte du temps lorsque la tche est
lance et larrte lorsque tous les programmes de la tche sont excuts.
Si la dure dexcution de la tche est suprieure la dure du chien de
garde, un dfaut majeur se produit (cette dure comprend les
interruptions par dautres tches).
Un dfaut de timeout du chien de garde (dfaut majeur) se produit
galement si une tche est dclenche de nouveau pendant son
excution (chevauchement dune tche priodique). Ceci peut arriver si
une tche de basse priorit est interrompue par une tche de priorit
plus leve, repoussant la fin de la tche de moindre priorit.
Vous pouvez utiliser le gestionnaire des dfauts de lautomate pour
corriger un dfaut de chien de garde. Si le mme dfaut de chien de
garde se reproduit pendant la mme scrutation de logique, lautomate se
met en mode dfaut, que le gestionnaire des dfauts de lautomate efface
le dfaut du chien de garde ou non.

ATTENTION

Si le chien de garde atteint une prslection configurable,


un dfaut majeur se produit. En fonction du gestionnaire
de dfaut de lautomate, lautomate peut sarrter.

Pour modifier la dure du chien de garde dune tche :


1. Ouvrez le projet RSLogix 5000.
2. Dans la fentre dorganisation de lautomate, cliquez sur
nom_de_la_tche avec le bouton droit de la souris et slectionnez
Properties (Priorits).
3. Cliquez sur longlet Configuration.
4. Dans la fentre Watchdog (Chien de garde), entrez une dure pour le
chien de garde.
5. Cliquez sur OK.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

CIP
Voir protocole de commande et dinformation
cl source
Systme qui permet de limiter laccs un sous-programme.
Vous pouvez attribuer une cl source un ou plusieurs
sous-programmes.
Les noms de cl source suivent les mmes rgles que les autres
composants RSLogix 5000, comme les sous-programmes, les points et
les modules.
Pour attribuer une cl source un sous-programme (protger le
sous-programme), utilisez le logiciel RSLogix 5000 (vous devez dabord
activer loutil).
Un fichier de cl source (sk.dat) stocke les cls sources. Ce fichier est
spar des fichiers projets RSLogix 5000 (.acd).
Pour visualiser un sous-programme protg par une cl source, il vous
faut cette cl.
Sans la cl source, vous ne pouvez pas ouvrir un sous-programme. Le
logiciel RSLogix 5000 affiche Source Not Available (Source non
disponible).
Que la cl source soit disponible ou non, vous pouvez toujours charger
le projet et en excuter tous les sous-programmes.
Voir nom.
connexion
Systme de communication entre lautomate et un autre module du systme de
commande. Le nombre de connexions dun seul automate est limit. Les
communications avec les modules dE/S, les points consomms, les points
produits et les instructions MSG utilisent des connexions pour transfrer les
donnes.

Publication 1756-PM001E-FR-P - Aot 2002

10

Glossaire

connexion bidirectionnelle
Connexion dans laquelle les donnes sont transmises dans les deux directions :
de lmetteur au rcepteur et du rcepteur lmetteur. Voir connexion, connexion
unidirectionnelle.
connexion cache
Pour laisser la connexion ouverte aprs une instruction MSG. Ceci est utile si
vous rptez souvent linstruction MSG, car initialiser la connexion chaque
fois augmente le temps de scrutation.
Le tableau suivant indique les messages qui utilisent une connexion et si vous
pouvez ou non mettre cette connexion en mmoire cache :
Ce type de message

Avec ce mode de
communication

Utilise une
connexion

Qui peut tre


mise en
mmoire
cache

lecture ou criture de table de


donnes CIP

CIP

PLC2, PLC3, PLC5 ou SLC


(tous types)

CIP
DH+

gnrique CIP

lecture ou criture de
bloc-transfert

CIP avec ID source

Seuls quelques modules cibles requirent une connexion.

Mettre en mmoire cache uniquement si le module cible requiert une


connexion.

Suivez les tapes ci-dessous pour choisir une option cache pour un message
qui peut tre mis en mmoire cache.
1. Votre logique change-t-elle le chemin dun message ? (une instruction
MSG communique-t-elle avec plusieurs quipements ?)
Si
Oui
Non

Publication 1756-PM001E-FR-P - Aot 2002

Alors
A. Dsactivez la case Cache Connection (Connexion cache).
B. Passez ltape 2.
Allez ltape 2.

Glossaire

11

2. A combien dautomates cet automate envoie-t-il de messages que vous


pouvez mettre en mmoire cache ?
Si

Alors

16 automates ou moins

Laissez la case Cache Connection slectionne (coche).

plus de 16 automates

A. Slectionnez 16 automates qui requirent les messages les plus


frquents.
B. Ce message sadresse-t-il lun de ces automates ?
Si

Alors

Oui

Laissez la case Cache Connexion slectionne.

Non

Dsactivez la case Cache Connexion .

Voir connexion, connexion non cache.


connexion en coute seule
Connexion dE/S dans laquelle un autre automate est propritaire/fournit les
donnes de configuration pour le module dE/S. Un automate utilisant une
connexion en coute seule ncrit pas de donnes de configuration et ne peut
que maintenir une connexion avec le module dE/S lorsque lautomate
propritaire commande activement le module dE/S. Voir automate propritaire.
connexion non cache
Avec linstruction MSG, une connexion non cache indique lautomate de
couper la connexion la fin de linstruction MSG. La coupure de la connexion
la rend disponible pour dautres tches de lautomate. Voir connexion,
connexion cache.
connexion unidirectionnelle
Connexion dans laquelle les donnes ne sont transmises que dans une
direction : de lmetteur au rcepteur. Voir connexion, connexion bidirectionnelle.
correspondance exacte
Mode de protection par dtrompage lectronique qui requiert que tous les
attributs (fabricant, rfrence, rvision majeure et mineure) du module
physique et du module configur dans le logiciel se correspondent pour
pouvoir tablir une connexion vers le module.
COUNTER (compteur)
Type de donnes de structure qui contient des informations dtat et de
commande pour les instructions de compteur.

Publication 1756-PM001E-FR-P - Aot 2002

12

Glossaire

dcimales
Valeurs dentier affiches et entres en base 10. Pas de prfixe. Non tendu la
longueur de lentier. Voir binaires, hexadcimales, octales.
dfaut majeur
Dfaut suffisamment srieux pour que lautomate sarrte, moins que le
dfaut ne soit limin. Lorsquun dfaut majeur se produit, lautomate :
1. active un bit de dfaut majeur ;
2. excute la logique de dfaut utilisateur, si elle existe ;
3. si la logique de dfaut utilisateur ne peut effacer le dfaut, lautomate
passe en mode dfaut ;
4. rgle les sorties selon leur tat de sortie en mode Programme ;
5. le voyant OK clignote en rouge.
Lautomate accepte deux niveaux pour le traitement des dfauts majeurs :
le sous-programme de gestion des dfauts du programme :
chaque programme peut avoir son propre sous-programme de
gestion des dfauts ;
lautomate excute le sous-programme de gestion des dfauts
lorsquun dfaut dinstruction se produit ;
si le sous-programme de gestion des dfauts du programme ne
corrige pas le dfaut, ou si un sous-programme de gestion des
dfauts nexiste pas, lautomate excute le gestionnaire des dfauts de
lautomate (sil est dfini).
gestionnaire des dfauts de lautomate :
si le gestionnaire des dfauts de lautomate nexiste pas ou ne peut
pas corriger le dfaut, lautomate se met en mode dfaut et sarrte ;
le journal FAULTLOG est alors mis jour (voir page suivante).
Tous les dfauts non lis une instruction (E/S, chien de garde de
tche, etc.) excutent le gestionnaire des dfauts de lautomate (aucun
sous-programme de gestion des dfauts du programme nest appel).
Le dfaut qui na pas t effac, et jusqu deux dfauts supplmentaires non
effacs, est enregistr dans le journal des dfauts de lautomate.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

13

un dfaut majeur
se produit

dfaut
dinstruction ?
non

oui

lautomate enregistre
le dfaut majeur
dans PROGRAM
MajorFaultRecord

oui

ss-prog. de gest.
des dfauts ?

excute le
sous-programme de
gestion des dfauts
du programme

non

oui
dfaut corrig ?

non
lexcution de la
logique continue
lautomate enregistre
le dfaut majeur dans
le gest. des dfauts de
lautomate

non

un gest. des
dfauts existe
oui
excution du
gestionnaire des
dfauts de
lautomate

oui
dfaut corrig ?

non
lexcution de la
logique continue
se met en mode
dfaut
enreg. FAULTLOG
sarrte

Voir tat de dfaut, dfaut mineur.


dfaut mineur

Publication 1756-PM001E-FR-P - Aot 2002

14

Glossaire

Dfaut qui nest pas suffisamment grave pour que lautomate sarrte :
En cas de

Lautomate

problme li une instruction

1. active S:MINOR
2. enregistre les informations relatives au
dfaut dans lobjet PROGRAM, attribut
MinorFaultRecord
3. active le bit 4 de lobjet FAULTLOG, attribut
MinorFaultBits

chevauchement dune tche


priodique

active le bit 6 de lobjet FAULTLOG, attribut


MinorFaultBits

problme li au port srie

active le bit 9 de lobjet FAULTLOG, attribut


MinorFaultBits

dchargement dune pile

active le bit 10 de lobjet FAULTLOG, attribut


MinorFaultBits

Pour effacer des dfauts mineurs :


1. Dans la fentre dorganisation de lautomate, cliquez avec le bouton
droit de la souris sur le dossier Controller (Automate)
nom_de_lautomate et slectionnez Properties (Proprits).
2. Cliquez sur longlet Minor Faults (Dfauts mineurs).
3. Utilisez les informations de la liste Recent Faults (Dfauts rcents) pour
supprimer la cause du dfaut. Reportez-vous Codes de dfaut mineur,
page A-3.
4. Cliquez sur le bouton Clear Minors (Effacer les dfauts mineurs).
Voir dfaut majeur.
dsactivation du dtrompage
Mode de protection par dtrompage lectronique qui ne requiert pas que les
attributs du module physique et du module configur dans le logiciel se
correspondent pour tablir une connexion vers le module. Voir module
compatible, correspondance exacte.
description
Texte facultatif dont vous pouvez vous servir pour mieux documenter votre
application.
Vous pouvez utiliser tout caractre imprimable, y compris le retour
chariot, la tabulation et lespace.
Les descriptions ne sont pas charges dans lautomate. Elles demeurent
dans le fichier projet hors ligne.
Les descriptions ont les limitations de longueur suivantes :
pour les points, vous pouvez utiliser jusqu 120 caractres ;
pour les autres objets (tches, programmes, modules, etc.), vous
pouvez utiliser jusqu 128 caractres.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

15

dtrompage lectronique
Fonction des E/S 1756 dans lesquelles un module peut recevoir une demande
de vrification lectronique pour assurer que le module physique corresponde
ce qui a t configur par le logiciel. Permet lutilisateur, via le logiciel,
dempcher lutilisation de modules incorrects ou de rvisions de modules
incorrectes. Voir module compatible, dsactivation du dtrompage, correspondance exacte.
dimension
Spcification de la taille dun tableau. Les tableaux peuvent avoir jusqu trois
dimensions. tableau.
DINT
Type de donnes qui stocke une valeur dentier sign de 32 bits (4 octets)
(-2 147 483 648 +2 147 483 647). Dans les automates Logix5000, utilisez des
DINT comme nombres entiers :
Les automates Logix5000 excutent de faon plus performante et
utilisent moins de mmoire lorsquils travaillent avec des nombres
entiers de 32 bits (DINT) plutt que des nombres entiers de 16 bits
(INT) ou 8 bits (SINT).
En principe, les instructions convertissent des valeurs SINT ou INT en
un type de donnes optimal (gnralement une valeur DINT ou
REAL) durant lexcution. Cette conversion exigeant plus de temps et
de mmoire, minimisez lusage des types de donnes SINT et INT.
directe (connexion)
Connexion dE/S dans laquelle lautomate tablit une connexion individuelle
avec un module dE/S. Voir native pour rack.

lment
Unit de donnes adressable qui est une sous-unit dune unit de donnes
plus grande. Une seule unit de nimporte quel tableau.
Vous indiquez un lment dans un tableau par son ou ses indices :
Pour ce tableau

Indiquez

une dimension

nom_du_tableau[indice_0]

deux dimensions

nom_du_tableau[indice_0, indice_1]

trois dimensions

nom_du_tableau[indice_0, indice_1,
indice_2]

Voir tableau.
en ligne

Publication 1756-PM001E-FR-P - Aot 2002

16

Glossaire

Visualisation et modification du projet dans un automate. hors ligne.


envoi multidestinataire
Systme permettant au module denvoyer des donnes sur un rseau qui sont
reues simultanment par plusieurs rcepteurs. Dcrit la fonction des E/S
ControlLogix qui acceptent que plusieurs automates reoivent des donnes
dentres du mme module dE/S en mme temps.
tape
Dans un graphe de fonctionnement squentiel (SFC), une tape reprsente
une fonction principale dun procd. Elle contient les vnements qui se
droulent un moment, une phase ou un point particulier.

Etape
Une tape est excute en continue
jusqu ce quune condition logique
indique lautomate de passer ltape
suivante.

Actions
Faire ceci

MIX
puis faire cela

Une tape est compose dune ou de plusieurs actions. Chaque action


excute une fonction particulire, comme commander un moteur, ouvrir
une vanne ou mettre un groupe dquipements dans un mode dtermin.

Voir action, graphe de fonctionnement squentiel, transition.


exponentielles
Valeurs relles affiches et entres en format scientifique ou exponentiel. Le
nombre est toujours affich avec un chiffre gauche de la virgule dcimale,
suivi par la partie dcimale, puis par un exposant. style.
expression boolenne
En texte structur, expression qui produit la valeur boolenne 1 (vrai) ou 0
(faux).
Une expression boolenne utilise des points boolens, des oprateurs
de relation et des oprateurs logiques pour comparer des valeurs ou
vrifier si des conditions sont vraies ou fausses. Par exemple, tag1>65.
Une expression boolenne simple peut tre un point BOOL
uniquement.
En principe, les expressions boolennes sont utilises pour conditionner
lexcution dune autre logique.
expression numrique
En texte structur, expression qui calcule une valeur dentier ou virgule
flottante.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

17

Une expression numrique utilise des oprateurs et des fonctions


arithmtiques, et des oprateurs sur bits. Par exemple, tag1+5.
Une expression numrique est souvent imbrique dans une expression
boolenne. Par exemple, (tag1+5)>65.

flottantes
Valeurs relles affiches et entres en format virgule flottante. Le nombre de
chiffres gauche de la virgule dcimale dpend de la grandeur du nombre.
style.
format de communication
Dfinit la faon dont un module dE/S communique avec lautomate. Le choix
dun format de communication dfinit :
les onglets de configuration disponibles par le logiciel de
programmation ;
la structure des onglets et la mthode de configuration.
frquence
Dans le cas dune tche priodique, frquence laquelle lautomate excute la
tche, de 1 2 000 000 ms (2000 secondes). La valeur par dfaut est de 10 ms.
frquence dactualisation du rseau (NUT)
Intervalle rptitif pendant lequel les donnes peuvent tre envoyes sur un
rseau ControlNet. Cette dure varie entre 2 ms et 100 ms.

Publication 1756-PM001E-FR-P - Aot 2002

18

Glossaire

gestionnaire de dmarrage
Tche optionnelle qui est excute lorsque lautomate dmarre en mode
Excution (Run). Pour utiliser le gestionnaire de dmarrage, vous devez crer
un programme de dmarrage et un sous-programme associ.

42195

Le gestionnaire de dmarrage est excut comme suit :

Lautomate a-t-il dmarr


en mode Excution ?

Non

Lautomate reste dans le


mode en cours.

Non

Lautomate reste en mode


Excution et excute sa
logique.

Oui

Lautomate reste en mode


Excution et excute sa
logique.

Oui
Le gestionnaire de
dmarrage contient-il un
programme ?
Oui
Dfaut majeur type 1, code
1

Le gestionnaire de
dmarrage est excut.

Le dfaut majeur est-il


effac ?
Non
Lautomate se met en mode
dfaut.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

19

gestionnaire des dfauts de lautomate


Le gestionnaire des dfauts de lautomate est une tche en option qui est
excute lorsque :
le dfaut majeur nest pas un dfaut dexcution dinstruction ;
le sous-programme de gestion des dfauts du programme :
na pas russi corriger le dfaut majeur,
est en dfaut,
nexiste pas.
Vous ne pouvez crer quun programme pour le gestionnaire des dfauts de
lautomate. Aprs avoir cr ce programme, vous devez configurer un
sous-programme comme sous-programme principal.
Le gestionnaire des dfauts de lautomate nexcute pas de
sous-programme de gestion des dfauts.
Si vous indiquez un sous-programme de gestion des dfauts pour le
programme de gestion des dfauts de lautomate, lautomate nexcute
pas ce sous-programme.
Vous pouvez crer des sous-programmes supplmentaires et les appeler
partir du sous-programme principal.
graphe de fonctionnement squentiel
Un graphe de fonctionnement squentiel (SFC) ressemble un organigramme.
Il utilise des tapes et des transitions pour commander une machine ou un
procd.
Voir action, tape, transition.

hexadcimales
Valeurs dentier affiches et entres en base 16 (chaque chiffre reprsente
quatre bits). Prfixe de 16 chiffres. Etendu la longueur du boolen ou de
lentier (1, 8, 16 ou 32 bits). A laffichage, chaque groupe de quatre chiffres est
spar par un caractre de soulignement pour la lisibilit. Voir binaires, dcimales,
octales.
horodatage
Processus ControlLogix qui enregistre un changement dans les donnes
dentres avec une rfrence de temps relative au moment auquel sest produit
ce changement.
hors ligne
Visualisation et modification dun projet qui se trouve sur le disque dur dune
station de travail. en ligne.
Publication 1756-PM001E-FR-P - Aot 2002

20

Glossaire

index
Rfrence qui renvoie un lment dans un tableau.
instruction
Lautomate value les instructions relais selon ltat de la ligne prcdant
linstruction (tat dentre de la ligne).

instruction dentre

tat dentre de la ligne

instruction de sortie

tat de sortie de la ligne

Seules les instructions dentre ont un impact sur ltat dentre de la ligne des
instructions suivantes de la ligne :
Si ltat dentre de la ligne vers une instruction dentre est vrai,
lautomate value linstruction et rgle ltat de sortie de la ligne pour
quil reflte les rsultats de lvaluation.
Si linstruction est value comme vraie, ltat de sortie de la ligne est
vrai.
Si linstruction est value comme fausse, ltat de sortie de la ligne
est faux.
Une instruction de sortie ne change pas ltat de sortie de la ligne.
Si ltat dentre de la ligne vers une instruction de sortie est vrai,
ltat de sortie de la ligne est rgl sur vrai.
Si ltat dentre de la ligne vers une instruction de sortie est faux,
ltat de sortie de la ligne est rgl sur faux.
Dans les automates Logix5000, vous pouvez entrer plusieurs instructions de
sortie par ligne de logique. Il est possible dentrer les instructions de sortie :
en squence sur la ligne (srie) ;
entre des instructions dentre, tant que la dernire instruction de la
ligne est une instruction de sortie.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

21

Lexemple suivant utilise plusieurs sorties sur une ligne.

EXEMPLE

Placer plusieurs sorties sur une ligne

Lorsque running_seconds.DN est activ, running_hours augmente dune unit et running_seconds est rinitialis.
running_seconds.DN

CTU
Count Up
Counter
Preset
Accum

running_hours
500
0

CU
DN

running_seconds
RES

Lorsque machine_on est activ, active drill_1_on. Lorsque machine_on et drill[1].part_advance sont activs, active
conveyor_on.
machine_on

drill_1_on

drill[1].part_advance

conveyor_on

42362

INT
Type de donnes qui stocke une valeur dentier de 16 bits (2 octets) (-32,768
+32,767). Minimisez lutilisation de ce type de donnes :
En principe, les instructions convertissent des valeurs SINT ou INT en
un type de donnes optimal (gnralement une valeur DINT ou
REAL) durant lexcution. Cette conversion exigeant plus de temps et
de mmoire, minimisez lusage des types de donnes SINT et INT.
intervalle entre trames requis (RPI)
Lors de la communication sur le rseau, dure maximale entre les productions
de donnes dentres.
En principe, cet intervalle est configur en microsecondes.
La production relle des donnes est limite au multiple le plus grand de
la frquence dactualisation du rseau qui est infrieure au RPI
slectionn.
Utilisez une puissance quivalent deux fois la frquence dactualisation
du rseau ControlNet.
Par exemple, si la frquence dactualisation du rseau est de 5 ms, entrez
une frquence de 5, 10, 20, 40 ms, etc.
Voir frquence dactualisation du rseau (NUT).

Publication 1756-PM001E-FR-P - Aot 2002

22

Glossaire

matre (CST)
Dans un chssis unique, un seul automate doit tre le matre du temps systme
coordonn (CST). Tous les autres modules du chssis synchronisent leurs
valeurs CST sur le matre CST.
membre
Elment dune structure qui a son propre type et nom de donnes.
Les membres peuvent galement tre des structures, crant des types de
donnes de structures imbriqus.
Chaque membre dune structure peut tre un type de donnes diffrent.
Pour faire rfrence un membre dune structure, utilisez ce format :
nom_du_point.nom_du_membre
Par exemple :
Cette adresse

Fait rfrence

timer_1.pre

la valeur PRE de la structure timer_1.

input_load comme type de donnes


load_info

au membre hauteur (height) de la


structure input_load dfinie par
lutilisateur

input_load.height

Si la structure est imbrique dans une autre structure, utilisez le nom du


point de la structure au plus haut niveau, suivi par un nom de point de
sous-structure et un nom de membre :
nom_du_point.nom_sous-structure.nom_du_membre
Par exemple :
Cette adresse

Fait rfrence

input_location comme type de donnes


location

au membre height de la structure


load_info dans la structure
input_location.

input_location.load_info.height

Si la structure dfinit un tableau, utilisez le point de tableau, suivi de la


position dans le tableau et des noms de sous-structure et de membre.
point_du_tableau[position].membre
ou
point_du_tableau[position].
nom_sous-structure.nom_du_membre

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

23

Par exemple :
Cette adresse

Fait rfrence

conveyor[10].source

au membre source du 11e lment du tableau


conveyor (les lments du tableau sont bass sur
zro).

conveyor[10].info.height

au membre height de la structure info du 11e


lment du tableau conveyor (les lments du
tableau sont bass sur zro).

Voir structure.
mmoire
Support de stockage lectronique intgr dans lautomate, utilis pour contenir
les programmes et les donnes.
mmoire non volatile
Mmoire de lautomate conservant son contenu lorsque lalimentation de
lautomate est coup ou quil na plus de batterie. Voir chargement, stockage.
mode dfaut
Lautomate a gnr un dfaut majeur quil na pas pu corriger et sest arrt.
Voir dfaut majeur.
module compatible
Mode de protection de dtrompage lectronique qui requiert que le fabricant,
la rfrence et les attributs de rvision majeure du module physique et du
module configur dans le logiciel se correspondent pour tablir une connexion
vers le module.Voir dsactivation du dtrompage, correspondance exacte.
module dinterface (IFM)
Bras de raccordement dE/S prcbl.

native pour rack (connexion)


Connexion dE/S dans laquelle le module 1756-CNB recueille les mots dE/S
dans une image de rack (similaire au 1771-ASB). Une connexion native pour
rack conomise les connexion ControlNet et la bande passante ; cependant, les
informations dtat et de diagnostic disponibles lorsque ce type de connexion
est utilis sont limites. Voir directe (connexion).
nom
Les noms identifient les automates, les tches, les programmes, les points, les
modules, etc. Les noms sont conformes la norme CEI 1131-3 :
Publication 1756-PM001E-FR-P - Aot 2002

24

Glossaire

doivent commencer par un caractre alphabtique (A-Z ou a-z) ou par


caractre de soulignement (_) ;
ne peuvent contenir que des caractres alphabtiques, numriques et de
soulignement ;
peuvent contenir jusqu 40 caractres ;
ne doivent pas comporter plusieurs caractres de soulignement (_) la
suite ;
ne font pas de distinction entre majuscules et minuscules ;
sont chargs dans lautomate.

objet
Structure de donnes qui stocke les informations dtat. Lorsque vous entrez
une instruction GSV/SSV, vous indiquez lobjet et lattribut auxquels vous
voulez accder. Dans certains cas, il y a plus dune occurrence du mme type
dobjet, vous pourrez donc ventuellement devoir galement indiquer le nom
de lobjet. Par exemple, il peut y avoir plusieurs tches dans votre application.
Chaque tche a son propre objet TASK auquel vous accdez par le nom de la
tche.
octales
Valeurs dentier affiches et entres en base 8 (chaque chiffre reprsente trois
bits). Prfixe de 8 chiffres. Etendu la longueur du boolen ou de lentier (1, 8,
16 ou 32 bits). A laffichage, chaque groupe de trois chiffres est spar par un
caractre de soulignement pour la lisibilit. Voir binaires, dcimales, hexadcimales.
octet
Unit de mmoire constitue de 8 bits.

point
Zone nomme de la mmoire de lautomate dans laquelle les donnes sont
stockes.
Les points sont les mcanismes de base pour lallocation de la mmoire,
le rfrencement des donnes de la logique et la surveillance des
donnes.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

25

Lallocation de mmoire minimum pour un point est de quatre octets.


Lorsque vous crez un point qui stocke un BOOL, SINT ou INT
(qui sont infrieurs quatre octets), lautomate alloue quatre octets
mais les donnes ne remplissent que lespace dont elles ont besoin.
Les types de donnes et les tableaux dfinis par lutilisateur stockent
les donnes en mmoire contigu et condensent les petits types de
donnes dans des mots de 32 bits.
Les exemples suivants montrent lallocation de la mmoire pour divers
points :
start, qui utilise les type de donnes BOOL :
Allocation de
mmoire
allocation

Bits
31

non utilis

0
start

station_status, qui utilise le type de donnes DINT :


Allocation de
mmoire
allocation

Bits
31

station_status

mixer, qui utilise un type de donnes dfini par lutilisateur :


Allocation de
mmoire

Bits
31

24

allocation 1

mixer.pressure

allocation 2

mixer.temp

allocation 3

mixer.agitate_time

allocation 4

non utilis

23

16

non utilis

15

8 7

non utilis

bit 0 mixer.inlet
bit 1 mixer.drain
bit 2 mixer.agitate

temp_buffer, qui utilise un tableau de quatre INT (INT[4] ) :


Allocation de
mmoire

Bits
31

16

allocation 1

temp_buffer[1]

temp_buffer[0]

allocation 2

temp_buffer[3]

temp_buffer[2]

Voir point dalias, point de base, point consomm.


point consomm

Publication 1756-PM001E-FR-P - Aot 2002

26

Glossaire

Point qui reoit les donnes diffuses par un point produit sur un rseau
ControlNet ou un fond de panier ControlLogix. Un point consomm doit
tre :
accs automate
du mme type de donnes (y compris les dimensions du tableau) que le
point dcentralis (point produit)
Voir point produit.
point de base
Point qui dfinit effectivement la mmoire dans laquelle un lment de
donnes est stock. Voir point dalias.
point dalias
Point qui renvoie un autre point. Un point dalias peut renvoyer un autre
point dalias ou un point de base. Un point dalias peut galement renvoyer
un composant dun autre point en renvoyant un membre dune structure,
un lment dun tableau ou un bit dans un point ou dans un membre Voir
point de base.
point produit
Point que lautomate met la disposition dautres automates. Les points
produits sont toujours daccs automate. point consomm.
post-scrutation
Fonction de lautomate dans laquelle la logique dun programme est examine
avant de dsactiver le programme pour rinitialiser les instructions et
les donnes.
pr-scrutation
La pr-scrutation est une scrutation intermdiaire lors du passage en mode
Excution (Run).
Lautomate effectue une pr-scrutation lorsque vous le faites passer du
mode Programme (Program) au mode Excution (Run).
La pr-scrutation examine tous les programmes et instructions, et
initialise les donnes en fonction des rsultats.
Certaines instructions sont excutes diffremment pendant la
pr-scrutation par rapport la scrutation normale.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

27

priorit
Indique la tche excuter en premier si deux tches sont dclenches en
mme temps.
La tche ayant la priorit la plus leve est excute en premier.
Les priorits vont de 1 15, 1 tant la priorit la plus leve.
Une tche avec une priorit leve interrompt toute tche avec une
priorit plus basse.
Si deux tches avec la mme priorit sont dclenches en mme temps,
lautomate passe dune tche lautre toutes les millisecondes.
programme
Ensemble de sous-programmes et de points connexes
Chaque programme contient des points de programme, un
sous-programme excutable principal, dautres sous-programmes et un
programme de gestion des dfauts en option.
Pour excuter les sous-programmes dun programme, vous attribuez
(planifiez) le programme une tche :
lorsquune tche est dclenche, les programmes planifis de la tche
sont excuts entirement du premier au dernier ;
lorsquune tche excute un programme, le sous-programme
principal est excut en premier ;
ce sous-programme peut, son tour, excuter des sous-programmes
laide dune instruction JSR.
Le dossier Unscheduled Programs (Programmes non prioritaires) contient
les programmes qui ne sont pas attribus une tche.
Si la logique du programme produit un dfaut majeur, lexcution saute
un sous-programme de gestion des dfauts configur pour le
programme.
Les sous-programmes dun programme ont accs aux points suivants :
points de programme du programme ;
points dautomate.
Les sous-programmes nont pas accs aux points de programme des
autres programmes.
Voir sous-programme, tche.

Publication 1756-PM001E-FR-P - Aot 2002

28

Glossaire

projet
Fichier sur votre station de travail (ou serveur) qui stocke la logique, la
configuration, les donnes et la documentation dun automate.
Ce fichier a une extension .ACD.
Lorsque vous crez un fichier projet, le nom du fichier est le nom de
lautomate.
Le nom de lautomate est indpendant du nom du fichier du projet. Si
vous enregistrez un fichier projet sous un autre nom, le nom de
lautomate reste inchang.
Si le nom de lautomate est diffrent de celui du fichier projet, la barre
de titre du logiciel RSLogix 5000 affiche les deux noms.
Voir application.
propritaires multiples
Configuration dans laquelle plusieurs automates ont les mmes informations
de configuration pour tre propritaires du mme module dentres
simultanment.
protocole de commande et dinformation (CIP)
Protocole dchange utilis par la gamme des quipements de contrle
industriel Logix5000 dAllen-Bradley. Protocole de communication natif
utilis sur le rseau ControlNet.

qualificateur
Dans laction dun graphe de fonctionnement squentiel (SFC), un
qualificateur dfinit quand une action commence et quand elle se termine.
Voir action, graphe de fonctionnement squentiel, tape.

REAL
Type de donnes qui stocke une valeur virgule flottante IEEE de 32 bits
(4 octets), dans la plage suivante :
-3,40282347E38 -1,17549435E-38 (valeurs ngatives)
0
1,17549435E-38 3,40282347E38 (valeurs positives)

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

29

Le type de donnes REAL stocke galement infini, NAN et -IND, mais


lcran du logiciel diffre selon le format daffichage.
Format daffichage

Equivalent

Rel

+infini
-infini
+NAN
-NAN
-indtermin

1.$
-.,$
1.#QNAN
-1.#QNAN
-1.#IND

Exponentiel

+infini
-infini
+NAN
-NAN
-indtermin

1.#INF000e+000
-1.#INF000e+000
1.#QNAN00e+000
-1.#QNAN00e+000
-1.#IND0000e+000

Le logiciel stocke et affiche galement la sous-plage IEEE :


-1,17549421E-38 -1,40129846E-45 (valeurs ngatives)
1,40129846E-45 1,17549421E-38 (valeurs positives)
retrait et insertion sous tension (RIUP)
Fonction ControlLogix qui permet lutilisateur dinstaller ou de retirer un
module avec le chssis sous tension.
rvision majeure
Les modules 1756 ont des indicateurs de rvision majeure et mineure. La
rvision majeure est mise jour chaque fois quil y a un changement
fonctionnel sur le module. Voir dtrompage lectronique, rvision mineure.
rvision mineure
Les modules de la gamme 1756 ont des indicateurs de rvision majeure et
mineure. La rvision mineure est mise jour chaque fois quil y a une
modification sur un module qui naffecte pas sa fonction ou son interface. Voir
dtrompage lectronique, rvision majeure.

SINT
Type de donnes qui stocke une valeur dentier sign de 8 bits (1 octet)
(-128 +127). Minimisez lutilisation de ce type de donnes :
En principe, les instructions convertissent des valeurs SINT ou INT en
un type de donnes optimal (gnralement une valeur DINT ou
REAL) durant lexcution. Cette conversion exigeant plus de temps et
de mmoire, minimisez lusage des types de donnes SINT et INT.

Publication 1756-PM001E-FR-P - Aot 2002

30

Glossaire

sous-programme
Jeu dinstructions logiques dans un langage de programmation unique, tel
quun diagramme relais.
Les sous-programmes fournissent le code excutable pour le projet dun
automate (similaire un fichier programme dans un automate PLC ou
SLC).
Chaque programme a un sous-programme principal :
lorsque lautomate dclenche la tche associe et excute le
programme associ, le sous-programme principal est le premier
sous-programme excut ;
pour appeler un autre sous-programme du programme, entrez une
instruction JSR dans le sous-programme principal.
Vous pouvez galement dfinir un sous-programme de gestion des
dfauts de programme en option.
si lun des sous-programmes du programme associ produit un
dfaut majeur, lautomate excute le sous-programme de gestion des
dfauts du programme
Voir programme, tche.
sous-programme principal
Premier sous-programme excut lors de lexcution dun programme. Utilisez
le sous-programme principal pour appeler (excuter) dautres
sous-programmes.
stockage
Copie dun projet dans la mmoire non volatile de lautomate. Cette opration
remplace le projet qui se trouvait dans la mmoire non volatile. Voir
chargement, mmoire non volatile.
structure
Certains types de donnes sont une structure.
Une structure stocke un groupe de donnes, dont chacune peut avoir un
type diffrent.
Au sein dune structure, chaque type de donnes est appel un
membre.
Comme les points, les membres ont un nom et un type de donnes.
Vous pouvez crer vos propres structures, appeles type de donnes
dfini par lutilisateur, laide de nimporte quelle combinaison de
points et de la plupart des autres structures.
Pour copier des donnes dans une structure, utilisez une instruction
COP. Voir la Automate Logix5000 - Jeu d'instructions - Manuel de rfrence
(publication 1756-RM003).

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

31

Les types de donnes COUNTER et TIMER sont des exemples de structures


couramment utilises.

Pour dvelopper une structure


et afficher ses membres,
cliquez sur le signe +.

Structure COUNTER
Pour rduire une
structure et masquer ses
membres, cliquez sur le
signe .

Structure TIMER

membres de
running_seconds

types de donnes des


membres

42365

Voir membre, type de donnes dfini par lutilisateur.


structure dfinie par le produit
Type de donnes de structure dfini automatiquement par le logiciel et
lautomate. En configurant un module dE/S, vous ajoutez la structure dfinie
par le produit pour ce module.
structure prdfinie
Type de donnes de structure qui stocke des informations lies pour une
instruction particulire, telle que structure TIMER pour les instructions de
temporisation. Les structures pr-dfinies sont toujours disponibles, quelle que
soit la configuration matrielle du systme. Voir structure dfinie par le produit.
style
Format dans lequel les valeurs numriques sont affiches. ASCII, binaires,
dcimales, exponentielles, flottantes, hexadcimales, octales.

Publication 1756-PM001E-FR-P - Aot 2002

32

Glossaire

tableau
Un tableau vous permet de regrouper des donnes (dun mme type de
donnes) sous un nom commun.
Un tableau est similaire un fichier.
Un ou plusieurs indices identifient chaque lment du tableau.
Un indice commence 0 et stend au nombre dlments moins 1 (base
zro).

Pour dvelopper un tableau


et afficher ses lments,
cliquez sur le signe +.

Pour rduire un tableau


et masquer ses lments,
cliquez sur le signe .

Ce tableau comprend
six lments de type
de donnes DINT.

lments de
timer_presets

six DINT

42367

Un point de tableau occupe un bloc de mmoire contigu dans


lautomate, chaque lment en squence.
Vous pouvez utiliser des instructions de tableau et de squenceur pour
manipuler ou parcourir les lments dun tableau
Un tableau peut avoir un maximum de trois dimensions. Ceci vous offre
la souplesse de pouvoir identifier un lment laide dun, deux ou trois
indices (coordonnes).

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

33

Dans un tableau deux ou trois dimensions, la dimension la plus


droite est la premire sincrmenter dans la mmoire.

Ce tableau comprend
une grille dlments
bidimensionnelle, six
lments par six
lments.

42367

Lorsque la dimension de droite


recommence zro, la dimension
de gauche sincrmente dune
unit.

La dimension de droite
sincrmente jusqu sa valeur
maximum puis recommence
zro.

Publication 1756-PM001E-FR-P - Aot 2002

34

Glossaire

Le nombre total dlments dun tableau est le produit de la taille de


chaque dimension, comme le montrent les exemples suivants :
Ce tableau

Stocke les donnes ainsi

Par exemple

une dimension

Nom du point

Type

Dimension 0

Dimension 1

Dimension 2

one_d_array

DINT[7]

--

--

nombre total dlments = 7


plage dindices corrects DINT[x] ou x=06
deux dimensions

Nom du point

Type

Dimension 0

Dimension 1

Dimension 2

two_d_array

DINT[4,5]

--

nombre total dlments = 4 5 = 20


plage dindices corrects DINT[x,y] o x=03; y=04
trois dimensions

Nom du point

Type

Dimension 0

three_d_array

DINT[2,3,4] 2

Dimension 1

Dimension 2

nombre total dlments = 2 3 4 = 24


plage dindices corrects DINT[x,y,z] o x=01; y=02, z=03

Vous pouvez modifier les dimensions dun tableau lors de la


programmation hors ligne sans perte des donnes de points. Vous ne
pouvez pas modifier les dimensions dun tableau lors de la
programmation en ligne.
tche
Systme de planification pour lexcution dun programme.
Par dfaut, chaque nouveau fichier projet contient une tche continue
prconfigure.
Vous configurez dautres tches, priodiques, si ncessaire.
Une tche fournit des informations de planification et de priorit pour
un ou plusieurs programmes qui sexcutent en fonction de critres
particuliers.
Une fois quune tche est dclenche (active), tous les programmes
attribus (planifis) la tche sont excuts dans lordre de leur affichage
dans la fentre dorganisation de lautomate.
Vous ne pouvez attribuer un programme qu une seule tche la fois.
Voir tche continue, tche priodique.
tche continue

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

35

Tche excute en continu.


La tche continue est excute en arrire-plan. La puissance de lunit
centrale non alloue dautres oprations (telles que commande de
mouvement, communications et tches priodiques) est utilise pour
lexcution des programmes de la tche continue.
La tche continue redmarre aprs la fin de son dernier programme.
Un projet ne requiert pas de tche continue.
Il ne peut y avoir quune seule tche continue.
Toutes les tches priodiques interrompent la tche continue.
Lorsque vous crez un projet, la Tche Principale par dfaut est une tche
continue. Vous pouvez laisser cette tche telle quelle ou vous pouvez
modifier ses proprits (nom, type, etc.).
Voir tche priodique.
tche priodique
Tche dclenche par le systme dexploitation intervalle rgulier.
Utilisez une tche priodique pour les fonctions qui ncessitent une
excution prcise et dterministe.
Lorsque lintervalle de temps expire, la tche est lance et ses
programmes sont excuts.
Les donnes et sorties tablies par le programme dans la tche gardent
leur valeur jusqu lexcution suivante de la tche ou jusqu ce quelles
soient manipules par une autre tche.
Vous pouvez configurer lintervalle de temps de 1 ms 2000 s. La valeur
par dfaut est 10 ms.
ATTENTION

Assurez-vous que la dure est plus longue que la somme


des dures dexcution de tous les programmes attribus
la tche. Si lautomate dtecte le dclenchement dune tche
priodique alors quune tche est dj en route, un dfaut
mineur se produit.

Les tches priodiques interrompent toujours la tche continue.


Selon le niveau de priorit, une tche priodique peut interrompre
dautres tches priodiques de lautomate.
Voir tche continue.

Publication 1756-PM001E-FR-P - Aot 2002

36

Glossaire

temps de scrutation
temps coul, temps dexcution.
temps dexcution
Dure totale ncessaire pour lexcution dun seul programme.
Le temps dexcution ne comprend que le temps utilis par ce
programme et exclut tout temps partag/utilis par des programmes
dans dautres tches effectuant dautres oprations.
En ligne, utilisez la bote de dialogue Program Properties (Proprits du
programme) pour visualiser le temps de scrutation maximum et le
dernier temps de scrutation (en s) pour le programme en cours. Ces
valeurs sont des dures dexcution pour le programme et nincluent pas
le temps pass attendre dautres programmes ou dautres tches plus
prioritaires.
Voir temps coul.
temps coul
Dure totale requise pour lexcution de toutes les oprations configures dans
une tche unique.
Si lautomate est configur pour excuter des tches multiples, le temps
coul comprend toute dure utilise/partage par dautres tches
effectuant dautres oprations.
En ligne, vous pouvez utiliser la bote de dialogue Proprits des tches
pour visualiser le temps de scrutation maximum et le dernier temps de
scrutation en ms pour la tche en cours. Les valeurs sont des dures
coules, ce qui inclut toute dure passe attendre des tches
priorits plus leves.
Voir temps dexcution.
temps systme coordonn (CST)
Valeur de 64 bits qui reprsente le nombre de microsecondes coules depuis
que lautomate matre a commenc compter.
La valeur CST est stocke en tant que tableau DINT[2], o :
le premier lment stocke les 32 bits de poids faible ;
le second lment stocke les 32 bits de poids fort.
Vous pouvez vous servir de lhorodatage CST pour comparer le temps
relatif entre les chantillons de donnes.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

37

tranche de temps systme


Indique le pourcentage de temps automate ( lexception du temps consacr
aux tches priodiques) consacr aux fonctions de communication et
darrire-plan (temps systme) :
Lautomate excute les fonctions de temps systme pendant 1 ms
maximum chaque fois.
Si lautomate termine les fonctions de temps systme en moins d1 ms, il
reprend la tche continue.
Les fonctions de communication et darrire-plan comprennent les
fonctions suivantes :
la communication avec les quipements de programmation et dIHM
(tels que le logiciel RSLogix 5000) ;
la rponse aux messages ;
lenvoi de messages, y compris des blocs-transferts ;
le rtablissement et la surveillance des connexions dE/S (comme les
conditions RIUP) ; ceci ne comprend pas les communications dE/S
normales qui se produisent pendant lexcution du programme ;
le passage des communications du port srie de lautomate vers
dautres quipements ControlLogix via le fond de panier
ControlLogix.
Si les communications ne seffectuent pas suffisamment rapidement,
augmentez la dure de tranche de temps systme.
Le tableau suivant indique le rapport entre la tche continue et les fonctions de
temps systme :
Pour cette tranche
de temps

La tche continue est excute Ensuite le temps systme dure


pendant

10 %

9 ms

1 ms

20 %

4 ms

1 ms

33 %

2 ms

1 ms

50 %

1 ms

1 ms

Publication 1756-PM001E-FR-P - Aot 2002

38

Glossaire

A la tranche de temps par dfaut de 10 %, le temps systme interrompt la


tche continue toutes les 9 ms (de temps de tche continue).
Lgende :
La tche est excute.
La tche est interrompue (mise en suspens).

1 ms

1 ms

temps systme
9 ms

9 ms

tche continue
5

10

15

20

25

temps coul (ms)

Linterruption dune tche priodique augmente le temps coul (temps


dhorloge) entre les excutions du temps systme.
1 ms

1 ms

1 ms

1 ms

tche priodique
1 ms

1 ms

temps systme
9 ms de temps de tche continue

9 ms de temps de tche continue

tche continue
5

10

15

20

25

temps coul (ms)

Si vous augmentez la tranche de temps 20 %, le temps systme interrompt la


tche continue toutes les 4 ms (de temps de tche continue).
1 ms

1 ms

1 ms

1 ms

1 ms

temps systme
4 ms

4 ms

4 ms

4 ms

4 ms

tche continue
5

10

15

20

25

temps coul (ms)

Si vous augmentez la tranche de temps 50 %, le temps systme interrompt la


tche continue toutes les ms (de temps de tche continue).
1 ms
temps systme
1 ms
tche continue
5
temps coul (ms)

Publication 1756-PM001E-FR-P - Aot 2002

10

15

20

25

Glossaire

39

Si lautomate contient une ou plusieurs tches priodiques, la valeur de tranche


de temps systme est sans effet. Le temps systme est excut tant quune
tche priodique nest pas excute.
tche priodique

temps systme
5

10

15

20

25

temps coul (ms)

Pour modifier la dure du temps systme :


1. Ouvrez le projet RSLogix 5000.
2. Dans la fentre dorganisation de lautomate, cliquez sur le dossier
Controller (Automate) nom_de_lautomate avec le bouton droit de
la souris et slectionnez Properties (Proprits).
3. Cliquez sur longlet Evolu.
4. Dans la zone de texte Tranche de temps systme, entrez ou slectionnez le
pourcentage de temps systme (10 -90 %).
5. Cliquez sur OK.
transfert
Processus consistant transfrer le contenu de lautomate dans un fichier
projet sur la station de travail.
Si vous navez pas le fichier projet dun automate, vous pouvez transfrer
partir de lautomate et crer un fichier projet. Cependant, tout ce qui est
sauvegard dans un fichier projet nest pas disponible partir de lautomate. Si
vous transfrez partir dun automate, le nouveau fichier projet ne contiendra
pas :
les commentaires de lignes ;
les descriptions des points, des tches, des programmes, des
sous-programmes, des modules ou des structures utilisateur ;
les chanes dalias (alias renvoyant dautres alias).
Les chanes dalias ne sont pas compltement reconstitues partir de
lautomate. Sil y a plusieurs noms possibles pour un lment de
donnes, le firmware et le logiciel choisissent lalias qui correspond le
mieux et ne reflte pas ncessairement la faon dont lalias a t dfini
dans le projet initial.
Voir chargement.
transition

Publication 1756-PM001E-FR-P - Aot 2002

40

Glossaire

Dans un graphe de fonctionnement squentiel (SFC), une transition est ltat


vrai ou faux dune ou de plusieurs conditions qui dtermine quand passer
ltape suivante.
type de donnes
Dfinition de la taille et de lorganisation de la mmoire qui sera alloue
lorsque vous crerez un point correspondant ce type de donnes.
type de donnes dfini par lutilisateur
Vous pouvez aussi crer vos propres structures, appeles type de donnes
dfini par lutilisateur (galement connues sous le nom de structure dfinie
par lutilisateur ). Un type de donnes dfini par lutilisateur regroupe
diffrents types de donnes dans une entit dfinie unique.
Dans un type de donnes dfini par lutilisateur, vous dfinissez les
membres.
Comme les points, les membres ont un nom et un type de donnes.
Vous pouvez inclure des tableaux et des structures.
Une fois que vous avez cr le type de donnes dfini par lutilisateur,
vous pouvez crer un ou plusieurs points utilisant ce type de donnes.
Minimisez lutilisation des types de donnes suivants car ils augmentent
gnralement lespace mmoire utilis et le temps dexcution de votre
logique :
INT
SINT
Par exemple, certaines valeurs systme utilisent les types de donnes
SINT ou INT. Si vous crez un type de donnes dfini par lutilisateur
pour stocker ces valeurs, utilisez les types de donnes SINT ou INT
correspondants.
Si vous incluez des membres qui reprsentent des dispositifs dE/S,
vous devez utiliser la logique relais pour copier les donnes entre les
membres de la structure et les points dE/S correspondants. Voir Mise
en buffer des E/S , page 12-1.
Lorsque vous utilisez les types de donnes BOOL, SINT ou INT, listez
les membres qui utilisent le mme type lun aprs lautre :
plus performant

moins performant

BOOL

BOOL

BOOL

DINT

BOOL

BOOL

DINT

DINT

DINT

BOOL

Vous pouvez utiliser des tableaux unidimensionnels.

Publication 1756-PM001E-FR-P - Aot 2002

Glossaire

41

Vous pouvez crer, modifier et effacer les types de donnes dfinis par
lutilisateur uniquement pendant la programmation hors ligne.
Si vous modifiez un type de donnes dfini par lutilisateur et que vous
en changez la taille, la valeur de tout point qui utilise ce type de donnes
est zro (0).
Pour copier des donnes dans une structure, utilisez une instruction
COP. Voir la Automate Logix5000 - Jeu d'instructions - Manuel de rfrence
(publication 1756-RM003).
Voir structure.
type de donnes optimal
Type de donnes effectivement utilis par une instruction Logix5000 (en
principe les types de donnes DINT et REAL).
Dans les manuels contenant le jeu dinstructions, un type de donnes en
caractres gras indique un type de donnes optimal.
Les instructions sont excutes plus rapidement et consomment moins
de mmoire si tous les oprandes de linstruction utilisent :
le mme type de donnes ;
un type de donnes optimal.
Si vous combinez des types de donnes et utilisez des points qui ne sont pas
du type de donnes optimal, lautomate convertit les donnes selon les
rgles suivantes.
Certains des oprandes sont-ils des valeurs REAL ?
Si

les oprandes dentre (ex. source, point dans une


expression, limite) sont convertis en

Oui

REAL

Non

DINT

Une fois linstruction excute, le rsultat (valeur DINT ou REAL)


est converti au type de donnes de destination, si ncessaire.
La conversion de donnes prenant plus de temps et de mmoire, vous
pouvez augmenter les performances de vos programmes en :
utilisant le mme type de donnes dans toute linstruction ;
minimisant lutilisation des types de donnes SINT ou INT.
Autrement dit, nutilisez que des points DINT ou des points REAL,
ainsi que des valeurs immdiates, dans vos instructions.

Publication 1756-PM001E-FR-P - Aot 2002

42

Glossaire

Le tableau suivant rsume la faon dont lautomate convertit les donnes


dun type de donnes un autre :
Conversion

Rsultat

grand nombre entier en nombre entier


plus petit

Lautomate coupe la partie suprieure du nombre entier lev et cre un dpassement suprieur.
Par exemple :
Dcimal

Binaire

DINT

65,665

0000_0000_0000_0001_0000_0000_1000_0001

INT

129

0000_0000_1000_0001

SINT

-127

1000_0001

SINT ou INT en REAL

Aucune prcision des donnes nest perdue.

DINT en REAL

Une certaine prcision des donnes peut tre perdue. Les deux types de donnes stockent les
donnes dans 32 bits, mais le type REAL utilise une partie des 32 bits pour stocker la valeur de
lexposant. Si une certain prcision est perdue, lautomate fait la coupure dans la portion la
moins significative du DINT.

REAL en nombre entier

Lautomate arrondit la partie fractionnaire et coupe la partie suprieure de la partie non


fractionnaire. Si des donnes sont perdues, lautomate active lindicateur dtat de dpassement
suprieur.
Les nombres sont arrondis ainsi :
Les nombres diffrents de x.5 sont arrondis au nombre le plus proche.
X.5 est arrondi au nombre pair le plus proche.
Par exemple :

REAL (source)

DINT
(rsultat)

-2,5

-2

-1,6

-2

-1,5

-2

-1,4

-1

1,4

1,5

1,6

2,5

valeur immdiate
Valeur relle ou dentier de 32 bits sign. Ce nest pas un point qui stocke une
valeur.

Publication 1756-PM001E-FR-P - Aot 2002

Index
A
action 5-17
ajouter 5-15
attribuer l'ordre 5-20
attribuer un qualificateur 5-16
boolenne 4-18
boolenne ou non boolenne 4-17
configurer 5-16
non boolenne 4-17
programmation 5-18
programmer 4-17
qualificateur 4-21
rinitialiser 4-37
renommer 5-15
stocker 4-37
type de donnes 4-19
utilisation du texte structur 5-18
utiliser une expression 5-17
action boolenne 4-18, 5-17
programmer 4-18
activer
forage 18-2
adresse
point

diagramme de blocs fonctionnels 7-4


logique relais 8-8, 8-11
adresse indirecte 11-1
attribuer 11-1
effacement d'un dfaut majeur 19-6
affectation
non rmanente 6-3
rmanente 6-2
alarme
graphe de fonctionnement squentiel 4-26, 5-11
alias
crer 10-3
utiliser 10-1
arrt
graphe de fonctionnement squentiel 4-40
type de donnes 4-42
arrt immdiat
automate 20-1
arrt immdiat de l'automate 20-1
ASCII
attribution de texte structur 6-4
comparaison de caractres 17-4, 17-9
configuration du port srie 16-3
configuration du protocole utilisateur 16-5
connexion d'un quipement 16-2
construction d'une chane 17-17
conversion de caractres 17-11
dcodage d'un message 17-13
criture de caractres 16-14

extraction de caractres 17-2


lecture de caractres 16-9
manipulation de caractres 17-1
organisation des donnes 16-8
rechercher des caractres 17-4
saisie de caractres 16-21
attribution
caractre ASCII 6-4
automate
arrt immdiat 20-1
charger 13-3
informations sur la mmoire 9-5
mmoire non volatile 23-3
mode 13-5
modifier les proprits 1-3

B
boucle de retour
diagramme de blocs fonctionnels 7-8
boucle non rsolue
diagramme de blocs fonctionnels 7-8
branche
graphe de fonctionnement squentiel 4-11, 5-4, 5-5
logique relais 8-2
branche de slection
attribuer des priorits 5-7
crer 5-5
prsentation 4-13
branche simultane 4-15
entrer 5-4
forage 18-9, 18-12
passer par 18-9
buffer
E/S 12-1

C
carte CompactFlash industrielle 1784-CF64 23-4
CASE 6-15
chane
comparaison de caractres 17-4, 17-9
conversion de caractres 17-11
cration 17-17
criture de caractres 16-14
valuation en texte structur 6-8
extraction de caractres 17-2
lecture de caractres 16-9
manipulation 17-1
organisation des donnes 16-8
rechercher dans un tableau de caractres 17-4
saisie de caractres 16-21
type de donnes 16-8
chargement d'un projet 23-8
charger 13-3
Publication 1756-PM001E-FR-P - Aot 2002

ii

Index

cl source 24-1
code barres

17-4

caractres de test 17-4, 17-9


extraction de caractres 17-2
codes
dfaut majeur A-1
dfaut mineur A-3
commande Programme/Oprateur
prsentation 7-12
commentaires
texte structur 6-27
communication
autres automates 14-1
comparaison
caractres ASCII 17-4, 17-9
condition de ligne 8-4
configuration
chargement partir de la mmoire non volatile 23-5,

23-8

driver 13-1
excution d'un graphe de fonctionnement squentiel

4-44

port srie pour ASCII 16-3


protocole utilisateur pour ASCII 16-5
sous-programme principal 2-12
configurer
action 5-16
alarme 5-11
tape 5-10
excution d'un graphe de fonctionnement squentiel

5-26
conformit CEI 61131-3
dfinitions des donnes B-2
introduction B-1
jeu d'instructions B-4
langage de programmation B-3
portabilit des programmes B-4
systme d'exploitation B-2
tableaux B-5
consommer
nombres entiers partir de PLC-5C 14-9
point 14-1
ControlNet
configuration de driver 13-1
produire et consommer des donnes 14-1
conversion
caractres ASCII 17-11
cration
chane 17-17
driver 13-1
programme 2-10
sous-programme 2-11
tche priodique 2-9
Publication 1756-PM001E-FR-P - Aot 2002

type de donnes STRING 16-8


crer
alias 10-3
fichier de projet 1-1
point 3-9, 8-11

diagramme de blocs fonctionnels 7-20


point l'aide d'Excel 3-10
structure 3-7
tableau 3-9
type de donnes dfini par l'utilisateur 3-7

D
dfaut
adresse indirecte 19-6
codes de dfaut majeur A-1
codes de dfaut mineur A-3
dveloppement d'un sous-programme pour effacer un
dfaut 19-1
dvelopper un sous-programme pour effacer un dfaut

22-2

effacer 13-6, 19-1


gestion des dfauts mineurs 21-1
pendant la pr-scrutation 19-6
test d'un sous-programme de gestion des dfauts 19-9
dfaut dfini par l'utilisateur
cration 20-1
dfaut majeur
codes A-1
dveloppement d'un sous-programme de gestion des
dfauts 19-1
dvelopper un sous-programme de gestion des dfauts

22-2
dfaut mineur
codes A-3
effacer 21-1
logique 21-1
dernire scrutation
graphe de fonctionnement squentiel 4-29
dsactiver
forage 18-3, 18-13
description
texte structur 6-27
diagramme de bloc fonctionnel
forcer une valeur 18-1
diagramme de blocs fonctionnels
afficher une borne 7-18
ajouter un lment 7-16
ajouter une page 7-16
applications pour 2-5
attribuer une valeur immdiate 7-22
choisir des lments 7-3
connecter des lments 7-19
crer une temporisation de scrutation 7-10

Index

masquer une borne 7-18


ordre d'excution 7-5
organiser les pages 7-2
renommer un bloc 7-21
rsoudre le flux de donnes entre des blocs 7-10
rsoudre une boucle 7-8, 7-19
verrouillage des donnes 7-5
documentation
afficher ou masquer dans un graphe de fonctionnement
squentiel 5-24
documenter
graphe de fonctionnement squentiel 5-21
texte structur 6-27
donnes
ASCII 16-8
dfinitions B-2
forage 18-6, 18-8
produire et consommer 14-1
saisie de caractres ASCII 16-21
donnes systme
accder 9-3
dossier
fermer 2-7
ouvrir 2-7
driver
configuration 13-1

E
E/S
buffer 12-1
synchroniser avec la logique 12-1
criture
caractres ASCII 16-14
effacer
dfaut majeur 13-6, 19-1
dfaut mineur 21-1
mmoire non volatile 23-11
enregistrer 1-3
enregistrer sous 1-3
entrer
action 5-15
adresse 8-11
branche de slection 5-5
branche simultane 5-4
lment de bloc fonctionnel 7-16
graphe de fonctionnement squentiel 5-2
ICON 7-23
logique relais 8-10
OCON 7-23
envoyer
caractres ASCII 16-14
tape
ajouter une action 5-15

iii

alarme 4-26
attribuer un temps de prslection 5-10
branche de slection 4-13
branche simultane 4-15
configurer 5-10
configurer une alarme 5-11
dfinition 4-6
organisation dans un graphe de fonctionnement
squentiel 4-11
renommer 5-10
squence 4-13
temporisateur 4-26
type de donnes 4-8
tat
forage 18-4
mmoire 9-5
surveiller 9-1, 9-3
Ethernet
configuration de driver 13-1
produire et consommer des points 14-1
excution
graphe de fonctionnement squentiel 4-45, 5-26
expression
expression boolenne

graphe de fonctionnement squentiel 4-24,


5-13
texte structur 6-4
expression numrique

graphe de fonctionnement squentiel 5-11,


5-17
texte structur 6-4
ordre d'excution

texte structur 6-10


texte structur

fonctions 6-5
oprateurs arithmtiques 6-5
oprateurs de relation 6-7
oprateurs logiques 6-8
oprateurs sur bits 6-9
prsentation 6-4
expression boolenne
graphe de fonctionnement squentiel 4-24, 5-13
texte structur 6-4
expression numrique 5-11, 5-17, 6-4
extraction
caractres ASCII 17-2

F
fentre d'organisation de l'automate
naviguer 2-7
ouvrir un sous-programme 2-8
fichier de projet
Publication 1756-PM001E-FR-P - Aot 2002

iv

Index

crer 1-1
fonctions
texte structur 6-5
FORDO 6-18
forage
activer 18-2
dsactiver 18-3, 18-13
graphe de fonctionnement squentiel 18-9, 18-12
options 18-5
point 18-6, 18-8
prcautions de scurit 18-2
supprimer 18-3, 18-13
surveiller 18-4
voyant 18-4

G
graphe de fonctionnement squentiel
action

appeler un sous-programme 5-19


attribuer l'ordre 5-20
configurer 5-16
entrer 5-15
prsentation 4-17
programmer 5-18
renommer 5-15
utiliser une action boolenne 4-18
action boolenne 4-18
afficher ou masquer la documentation 5-24
appeler un sous-programme 5-19
applications pour 2-5
arrt 4-40

diagrammes 4-45
pause 4-45
expression numrique 5-11, 5-17
forcer un lment 18-1, 18-9, 18-12
imbriquer 4-43
liaison 4-16
option de rinitialisation automatique 4-34
option de rinitialisation par programme 4-32
option don't scan (ne pas scruter) 4-31
organisation d'un projet 4-6
organisation des tapes 4-11
passer par

branche simultane 18-9


transition 18-9

passer par une branche simultane 18-9


passer par une transition 18-9
pause d'un SFC 4-45
positionnement

SFC 4-43, 4-45

qualificateur 4-21
redmarrer 4-41
rinitialisation

donnes 4-29
SFC 4-41

retour l'tape prcdente 5-8


squence 4-13
transition

prsentation 4-22
programmer 5-13
renommer 5-13
zone de texte 5-23

branche de slection

attribuer des priorits 5-7


crer 5-5
prsentation 4-13
branche simultane

crer 5-4
prsentation 4-15
configurer l'excution 5-26
dfinition des tches 4-5
dernire scrutation 4-29
documenter 5-21
entrer un nouvel lment 5-2
tape

configurer 5-10
dfinition 4-6
organisation 4-11
prsentation 4-6
renommer 5-10
excution

configuration 4-44

Publication 1756-PM001E-FR-P - Aot 2002

I
ICON
ajouter 7-23
choisir 7-3
entrer 7-16
IF...THEN 6-12
instruction de test
texte structur 6-11
instruction EOT 4-25
instruction SFP 4-45
instruction SFR 4-41, 4-43, 4-45
IREF
choisir 7-3
entrer 7-16
pour attribuer une valeur immdiate 7-22
verrouillage des donnes 7-5

J
jeu d'instructions B-4

Index

L
langage de programmation
choix 2-5
conformit CEI 61131-3 B-3
lecture
caractres ASCII 16-9
liaison
diagramme de blocs fonctionnels 7-5, 7-8, 7-18
graphe de fonctionnement squentiel 4-16, 5-8
logiciel Security Server 24-12
logiciel Security Server de RSI 24-12
logique relais
applications pour 2-5
attribuer une valeur immdiate 8-13
branche 8-2
condition de ligne 8-4
contourner une valeur 18-1
dvelopper 8-5
entrer 8-10
forcer une valeur 18-1
organiser les instructions d'entre 8-6
organiser les instructions de sortie 8-7

M
manipulation de chane 17-1
marquer comme boolenne 5-17
mmoire 9-5
mmoire non volatile
automates accepts 23-3
carte CompactFlash industrielle 1784-CF64 23-4
chargement d'un projet 23-8
effacer 23-11
options de chargement d'une image 23-5
prsentation 23-1
stockage d'un projet 23-5
vrification d'un chargement 23-10
message
dcodage d'une chane 17-13
vers plusieurs automates 14-13
vers un seul automate 14-11
mode
automate 13-5
mode d'excution 13-5
mode programme 13-5
mode test 13-5

N
ne pas scruter
graphe de fonctionnement squentiel 4-31
nom
nom du point 7-4, 8-8
numro d'emplacement 1-3

O
OCON
ajouter 7-23
choisir 7-3
entrer 7-16
oprateurs
ordre d'excution

texte structur 6-10


oprateurs arithmtiques
texte structur 6-5
oprateurs de relation
texte structur 6-7
oprateurs logiques
texte structur 6-8
oprateurs mathmatiques
texte structur 6-5
oprateurs sur bits
texte structur 6-9
option de rinitialisation par programme 4-32
ordre d'excution
diagramme de blocs fonctionnels 7-5
expression en texte structur 6-10
OREF
choisir 7-3
entrer 7-16
organisation
chanes 16-8
point 3-1
structure 3-1
tableau 3-1
outil de protection de la source de RSLogix 5000 24-1
ouvrir
sous-programme 2-8

P
page
ajouter 7-16
connexion 7-23
diagramme de blocs fonctionnels 7-2
passer par
branche simultane 18-9
transition 18-9
pause d'un SFC 4-45
PLC-5C
partage des donnes 14-6, 14-7, 14-9
poids
conversion 17-11
point
attribuer 8-11

diagramme de blocs fonctionnels 7-20

chane 16-8
choisir un nom 7-4, 8-8
crer 3-9, 8-11

Publication 1756-PM001E-FR-P - Aot 2002

vi

Index

crer l'aide d'Excel 3-10


crer un alias 10-3
entrer 8-11
forage 18-6, 18-8
organisation 3-1
organiser pour un message 14-11
partager avec PLC-5C 14-6, 14-7, 14-9
produire et consommer 14-1
produire tableau de grande taille 15-1
positionner un SFC 4-43, 4-45
post-scrutation
graphe de fonctionnement squentiel 4-29
texte structur 6-3
prendre les donnes disponibles 7-8, 7-10, 7-19
pr-scrutation
effacement d'un dfaut majeur 19-6
priorit
branche de slection 5-7
tche priodique 2-3
produire
point 14-1
points pour PLC-5C 14-6, 14-7
tableau de grande taille 15-1
programme
cration 2-10
portabilit B-4
sous-programme principal 2-12
programmer
action 4-17, 5-18
action boolenne 4-18
transition 5-13
projet
chargement partir de la mmoire non volatile 23-5,

23-8

charger 13-3
mmoire non volatile 23-1
protection 24-1, 24-12
restriction de l'accs 24-12
stockage dans la mmoire non volatile 23-5
transfrer 13-6
vrification 2-12
protection
projet 24-1, 24-12
sous-programme 24-1
protection de la source du sous-programme 24-1
protocole utilisateur
configuration pour ASCII 16-5

Q
qualificateur
attribuer 5-16
choix 4-21

Publication 1756-PM001E-FR-P - Aot 2002

R
rechercher un code barres 17-4
redmarrer
graphe de fonctionnement squentiel 4-41
rinitialisation
SFC 4-41
rinitialisation automatique
graphe de fonctionnement squentiel 4-34
rinitialiser
action 4-37
renommer
action 5-15
bloc fonctionnel 7-21
tape 5-10
transition 5-13
REPEATUNTIL 6-24
RSLinx
configuration 13-1

S
saisie
caractres ASCII 16-21
saut
graphe de fonctionnement squentiel 4-16
scurit
protection d'un projet 24-12
protection d'un sous-programme 24-1
srie
cblage 16-2
configuration du port pour ASCII 16-3
connexion d'un quipement ASCII 16-2
sous-programme
comme transition 4-25
configuration comme sous-programme principal 2-12
cration 2-11
imbriquer dans le graphe de fonctionnement squentiel

4-43

ouvrir 2-8
protection 24-1
restriction de l'accs 24-1
vrification 5-27, 7-24, 8-14
sous-programme principal
utilisation d'un graphe de fonctionnement squentiel 4-6
stockage
projet 23-5
stocker
action 4-37
structure
crer 3-7
organisation 3-1
SFC_ACTION 4-19
SFC_STEP 4-8
SFC_STOP 4-42

Index

structure SFC_ACTION 4-19


structure SFC_STEP 4-8
structure SFC_STOP 4-42
supprimer
forage 18-3, 18-13
surveiller les forages 18-4
symbole
crer 10-1
systme d'exploitation B-2

T
tableau
crer 3-9
organisation 3-1
parcourir 11-1
produire tableau de grande taille 15-1
tableau de donne 3-1
tableaux de conformit B-5
tche
dfinition 2-4, 4-5
tche priodique
application pour 2-6, 4-5
cration 2-9
taille du chssis 1-3
temporisation de scrutation
diagramme de blocs fonctionnels 7-10
test d'un sous-programme de gestion des dfauts 19-9
texte structur
affectation 6-2
affectation non rmanente 6-3
applications pour 2-5
attribuer un caractre ASCII 6-4
CASE 6-15
commentaires 5-21, 6-27
composants 6-1
dans une action 5-18
valuation des chanes 6-8
expression 6-4
expression numrique 6-4
fonctions 6-5
FORDO 6-18
forcer une valeur 18-1
IF...THEN 6-12
instructions de test 6-11
oprateurs arithmtiques 6-5

vii

oprateurs de relation 6-7


oprateurs logiques 6-8
oprateurs sur bits 6-9
REPEATUNTIL 6-24
WHILEDO 6-21
transfrer 13-6
transition
appeler un sous-programme 5-14
choisir le mode de programmation 4-24
dfinition 4-22
expression boolenne 4-24
forage 18-9, 18-12
instruction EOT 4-25
passer par 18-9
programmer 5-13
renommer 5-13
utilisation d'un sous-programme 4-25
type de donnes dfini par l'utilisateur
crer 3-7
type de donnes STRING
cration 16-8

V
valeur immdiate
diagramme de blocs fonctionnels 7-22
logique relais 8-13
vrification
projet 2-12
sous-programme 5-27, 7-24, 8-14
verrouillage des donnes
diagramme de blocs fonctionnels 7-5
voyant
forage 18-4

W
WHILEDO 6-21

Z
zone de texte
afficher ou masquer dans un graphe de fonctionnement
squentiel 5-24
graphe de fonctionnement squentiel 5-23

Publication 1756-PM001E-FR-P - Aot 2002

viii

Index

Publication 1756-PM001E-FR-P - Aot 2002

Codes des caractres ASCII

Caractre

Dc. Hex.

Caractre

Dc. Hex.

Caractre

Dc. Hex.

Caractre

Dc. Hex.

[ctrl-@] NUL 0

$00

&

38

$26

76

$4C

114

$72

[ctrl-A] SOH

$01

39

$27

77

$4D

115

$73

[ctrl-B] STX

$02

40

$28

78

$4E

116

$74

[ctrl-C] ETX

$03

41

$29

79

$4F

117

$75

[ctrl-D] EOT

$04

42

$2A

80

$50

118

$76

[ctrl-E] ENQ

$05

43

$2B

81

$51

119

$77

[ctrl-F] ACK

$06

44

$2C

82

$52

120

$78

[ctrl-G] BEL

$07

45

$2D

83

$53

121

$79

[ctrl-H] BS

$08

46

$2E

84

$54

122

$7A

[ctrl-I] HT

$09

47

$2F

85

$55

123

$7B

[ctrl-J] LF

10

$l ($0A)

48

$30

86

$56

124

$7C

[ctrl-K] VT

11

$0B

49

$31

87

$57

125

$7D

[ctrl-L] FF

12

$0C

50

$32

88

$58

126

$7E

[ctrl-M] CR

13

$r ($0D)

51

$33

89

$59

DEL

127

$7F

[ctrl-N] SO

14

$0E

52

$34

90

$5A

[ctrl-O] SI

15

$0F

53

$35

91

$5B

[ctrl-P] DLE

16

$10

54

$36

92

$5C

[ctrl-Q] DC1

17

$11

55

$37

93

$5D

[ctrl-R] DC2

18

$12

56

$38

94

$5E

[ctrl-S] DC3

19

$13

57

$39

95

$5F

[ctrl-T] DC4

20

$14

58

$3A

96

$60

[ctrl-U] NAK

21

$15

59

$3B

97

$61

[ctrl-V] SYN

22

$16

<

60

$3C

98

$62

[ctrl-W] ETB

23

$17

61

$3D

99

$63

[ctrl-X] CAN

24

$18

>

62

$3E

100

$64

[ctrl-Y] EM

25

$19

63

$3F

101

$65

[ctrl-Z] SUB

26

$1A

64

$40

102

$66

ctrl-[ ESC

27

$1B

65

$41

103

$67

[ctrl-\] FS

28

$1C

66

$42

104

$68

ctrl-] GS

29

$1D

67

$43

105

$69

[ctrl-^] RS

30

$1E

68

$44

106

$6A

[ctrl-_] US

31

$1F

69

$45

107

$6B

ESPACE

32

$20

70

$46

108

$6C

33

$21

71

$47

109

$6D

34

$22

72

$48

110

$6E

35

$23

73

$49

111

$6F

36

$24

74

$4A

112

$70

37

$25

75

$4B

113

$71

Assistance Rockwell
Automation

Pour obtenir une assistance technique, appelez votre reprsentant Rockwell


Automation local ou contactez Rockwell Automation de lune des faons
suivantes :
Tlphone

Internet

Etats-Unis/Canada

1.440.646.5800

Pour les autres


pays

Vous pouvez obtenir le numro de tlphone pour


votre pays par Internet :
1. Allez sur le site http://www.ab.com.
2. Cliquez sur le lien Product Support
(http://support.automation.rockwell.com).
3. Sous la rubrique Support Centers, cliquez
sur Contact Information.

1. Allez sur le site http://www.ab.com.


2. Cliquez sur le lien Product Support
(http://support.automation.rockwell.com).

Quatrime de couverture

Allen-Bradley, ControlLogix, DH+, Logix5000, PLC-5, RSLogix 5000, RSLinx, RSNetWorx et SLC sont des marques commerciales de
Rockwell Automation.
ControlNet est une marque commerciale de ControlNet International, Ltd.
Ethernet est une marque commerciale de Digital Equipment Corporation, Intel et Xerox Corporation.

Publication 1756-PM001E-FR-P - Aot 2002 1


Remplace la publication 1756-PM001D-FR-P Novembre 2001

PN 957678-88
2002 Rockwell Automation. Tous droits rservs.

Vous aimerez peut-être aussi